열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?우리는 수십 개의 생산 시설에 배포할 수 있는(궁극적으로는 JMP Live에 게시할) 품질 모니터링 애플리케이션을 구축하고 싶습니다.
각 시설마다 매우 길고 넓은 데이터 테이블(dtBigBoy라고 부르겠습니다. 열은 1,000개 미만, 행은 10,000~100,000개)이 있는데, 이 테이블은 직접 쿼리할 수 없는 프로세스 데이터 히스토리언트에서 새로 고쳐집니다(시작/종료 타임스탬프 사이의 모든 데이터를 가져와 기존 테이블에 연결합니다). :Grade 열에는 해당 행에 대해 당시 생산 중이던 제품 이름이 포함됩니다. 열 이름은 Grade.Property.#입니다. Grade당 최소 1개의 Grade.Property.# 열이 있습니다. 사용자가 특정 Grade(예: ABCD001)에 관심이 있고 모든 부동산 데이터를 보고 싶어 하는 경우를 예로 들어 보겠습니다.
- 가장 효율적인 방법은 무엇일까요? dtBigBoy에 로컬 데이터 필터를 사용하고 관리도 등을 활용하는 것이 어떨까요?
또는 :Grade == Chosen.Grade인 행만 선택하고 열 이름에 Chosen.Grade가 포함되어 하위 집합을 생성할까요?
- :Grade 열을 읽고 :Grade의 레벨을 선택 항목으로 표시하는 선택 대화 상자를 어떻게 만드나요? 사용자 선택은 Chosen.Grade 변수에 저장됩니다.
- 이름에 Chosen.Grade가 포함된 열을 선택하는 방법은 무엇입니까?
- dtBigBoy에서 필요한 행과 열을 얻으려면 1~3을 하는 것이 더 효율적일까요, 아니면 JMP 테이블 쿼리를 사용하는 것이 더 효율적일까요?
습하고 습한 말레이시아 쿠알라룸푸르에서 미리 감사드립니다!
자동화 및 스크립팅데이터 액세스Re: 열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?확실하지는 않지만, 로컬 데이터 필터는 연결된 하위 집합과 유사할 것 같습니다. 필터링된 테이블은 테이블이 열려 있는 상태에 따라 달라집니다. 1e3행 * 1e5열 * 8바이트/숫자는 1GB 미만이므로 16GB 이상의 메모리에 적합합니다. 연결된 하위 집합은 필요한 메모리를 크게 증가시키지 않을 것입니다.
요약 플랫폼을 대화형으로 사용해 성적 열의 요약 표를 확인해 보세요. 스크립트도 여기에서 얻을 수 있습니다.
하위 집합 플랫폼도 거의 같은 방식으로 스크립팅할 수 있습니다. 하위 집합의 열을 선택하는 루프를 작성하면 됩니다.
두 가지 모두 시도해 보지 않고는 마지막 질문에 대한 답을 아는 사람은 거의 없을 것 같습니다. 둘 중 하나만 시도해도 충분히 빠를 것 같습니다.
Re: 열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?그래프 유형에 따라 다르지만, 데이터가 너무 많으면 안 됩니다. 1,000개의 열을 모두 동시에 표시하시나요? 사용자가 그 정도 데이터를 한 번에 처리할 수 있을까요? 로컬 데이터 필터(원하는 경우 조건부 사용)로 시작하고, 필요한 경우 스크립팅을 사용하는 것이 좋습니다(JMP 라이브에서는 작동하지 않을 가능성이 높음). 열 전환기에만 의존할 수 없다면 열을 변경하는 것이 가장 어려울 것입니다. 간단한 예제 데이터와 추가 설명을 제공해 주시면 도움이 될 것입니다.
400만 개 이상의 행을 처리해야 했을 때는 로컬 데이터 필터를 사용한 스크립팅에 의존해야 했습니다. 하지만 이는 단일 행 표시 속도 때문이 아니라 로컬 데이터 필터 업데이트가 너무 번거로워서였습니다. 변경 사항이 있으면 즉시 업데이트되는데, 특정 변경 사항에 대해서만 강제로 업데이트할 수는 없었습니다. 그래서 로컬 데이터 필터에 요약 테이블과 변경 함수를 사용하여 표시된 데이터를 업데이트했습니다. 목록 상자와 연결된 하위 집합을 사용하는 "완전히" 사용자 지정 필터를 사용할 수도 있습니다.
Re: 열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?크레이그: 메모리에 대한 정보와 제안 감사합니다! 한번 시도해 보겠습니다.
Re: 열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?자르모:
제안해 주셔서 감사합니다.
아니요, 모든 열을 동시에 표시하는 것이 아닙니다. Grade|Property별로 IMR 차트를 하나씩 만들고 싶습니다. 각 Grade와 Property는 서로 다른 세부 사항을 가지고 있으므로, Grade|Property별로 dt를 분할해야 합니다. 이로 인해 여러 개의 희소 열이 생성됩니다. 12개 Grade에 대한 하나의 속성에 대한 내용은 아래 스니펫을 참조하세요. 관리도 작성기는 빈 행이 있는 것을 좋아하지 않습니다.
Snippet of datatableSnippet of datatable데이터 테이블의 스니펫
Re: 열 수준을 기준으로 대용량 데이터 테이블을 쿼리하고 해당 수준이 포함된 이름을 가진 열을 반환하는 방법은 무엇입니까?2021년 이후로 상황이 바뀌었을지 모르지만 이 게시물에서는 통제 차트 작성기에서 누락된 값과 관련된 몇 가지 옵션을 설명합니다 . 누락된 데이터를 무시하는 통제 차트를 그리는 방법은 무엇일까요? (물론 스크립팅을 통해서도 다양한 옵션이 있습니다).
편집: 품질 및 프로세스 방법 > 관리도 작성기 > 관리도 작성기에서 제외 및 숨겨진 샘플