스피커
|
성적 증명서
|
| Georg Raming (Siltronic AG) |
모두들 안녕. |
| |
오늘 저는 분산되고 복잡한 소스에서 데이터를 수집하기위한 전략과 예제에 대해 이야기하고 싶습니다. |
| |
제 이름은 Georg Raming이고 제 직업은 ???의 프로세스 개발입니다. Siltronic에서 성장한 단결정. 통계적 평가 및 처리 경험이 있습니다. |
| |
및 제품 데이터 및 통계 교육. 또한 Siltronic의 JMP 소프트웨어와 수백 명의 사용자를위한 교육 활동을 담당하고 있습니다. |
| |
Siltronic은 고도로 전문화 된 초순수 실리콘 웨이퍼를 생산하는 세계 최고의 제조업체 중 하나입니다. |
| |
몇 가지 기술적 힌트. 그래서 저는이 프레젠테이션에서 데이터베이스 대신 데이터 테이블을 사용하고 있지만 여기에 표시된 개념은 원래 ODBC 연결을 통해 관계형 데이터베이스에서 데이터를 가져 오는 데 사용되었습니다. |
| |
그리고 JMP Query Builder는 JMP 데이터 테이블과 데이터베이스 테이블에 대해 유사한 방식으로 작동합니다. |
| |
오늘 발표의 목표는 무엇입니까? 데이터베이스에서 데이터를 쉽고 효율적으로 JMP 또는 JMP 테이블로 가져 오는 몇 가지 방법을 설정하는 것입니다. |
| |
먼저 빌딩 블록에 대해 이야기합시다. |
| |
따라서 하나는 JMP 데이터 테이블 일 수 있습니다. |
| |
따라서 데이터베이스 쿼리에서 데이터 테이블을 생성 한 경우 다음과 같을 수 있습니다. 그래서 여기에서 JMP, Big Class의 유명한 샘플 테이블을 가져 왔고 JMP Query Builder를 통해 데이터를 쿼리했습니다. 테이블과 함께 제공되는 모든 스크립트를 삭제했습니다. |
| |
그리고 당신은 찾을 것입니다 |
| |
JMP Query Builder, 여러 스크립트 및 테이블 변수로 쿼리하는 경우이 데이터 테이블에 대해. |
| |
그래서 그 변수 안에서 SQL을 볼 수 있습니다. 따라서 데이터 테이블의 정의는 테이블 또는 데이터베이스에서 가져옵니다. |
| |
그리고 이러한 스크립트가 있습니다. |
| |
이와 같은 원본 데이터 테이블의 다른 사본을 가져옵니다. 여기에서 원본 스크립트도 볼 수 있지만 JMP 쿼리 작성기의 이러한 스크립트도 있습니다. |
| |
JMP 데이터 테이블에서이 쿼리를 편집하고 실행할 수있는 쿼리 수정 스크립트도 있습니다. |
| |
그리고 데이터베이스에서 업데이트에 대한 쿼리가 있습니다. 따라서 데이터 테이블의 데이터를 변경하면 |
| |
또는 데이터 테이블에 새 데이터가있는 경우이 버튼을 눌러 데이터를 업데이트 할 수 있습니다. |
| |
이렇게. 여기에도 스크립트가 샘플 테이블에서 다시 왔습니다. |
| |
자, 다음 빌딩 블록은 JMP Query Builder입니다. |
| |
따라서 데이터베이스에 하나 또는 여러 개의 테이블이 있으면 여기와 같은 쿼리를 작성하고 싶습니다. JMP 샘플 테이블에서 Big Class 및 Big Class Families를 가져 왔습니다. |
| |
디렉토리와 같은 JMP Query Builder를 사용하십시오. |
| |
여기 테이블에. JMP 쿼리 작성기. |
| |
JMP는 이러한 열린 테이블을 확인합니다. |
| |
기본 필드에도 하나가 있고 이와 같은 보조 테이블을 추가 할 수 있습니다. 그러면 JMP가 자동으로 두 테이블간에 조인을 생성합니다. 그래서 그들이 어떻게 결합되는지. 그리고이 조인을 편집 할 수 있습니다. |
| |
이렇게. |
| |
여기에서 세부 정보를 볼 수 있습니다. |
| |
그런 다음 쿼리 작성을 계속할 수 있습니다. |
| |
이렇게. 여기에 두 개의 테이블이 있습니다. |
| |
여기에서 조인을 다시 편집 할 수도 있습니다. |
| |
그리고 모두 추가하고 싶을 수도 있습니다. |
| |
열, |
| |
이렇게. |
| |
필터를 넣고 싶을 수도 있습니다. |
| |
이렇게. |
| |
그리고 쿼리를 실행하십시오. 그럼 또 |
| |
이 결과 테이블을 |
| |
여기에 필요하지 않은 샘플 테이블. |
| |
나는 그들을 삭제합니다. 그리고 이것들은 JMP Query Builder에서 작성한 스크립트, 스크립트 및 변수입니다. |
| |
전에 사용했던 것처럼 요. 그리고 다시 여기에서 |
| |
이 쿼리를 편집하십시오. 쿼리에 대한 스크립트는 이전에 여기에서 정의한 것처럼이 결과 테이블에 저장됩니다. |
| |
이것이 JMP Query Builder의 작동 방식입니다. |
| |
그리고 앞에서 언급했듯이 JMP 샘플 테이블에서 작동하는 것과 동일한 방식으로 데이터베이스 테이블에서 작동합니다. |
| |
다음 건물 ... 여기에 몇 가지 스크립트를 넣었고 항상 시각적 쿼리 작성기에서 전환 할 수 있습니다. |
| |
사용자 지정 SQL에 |
| |
질문. 그래서 이것은 여기서 작동합니다. 또 다른 빨간색 삼각형 메뉴. |
| |
사용자 지정 SQL로 변환하고 여기에서 시각적으로 정의한 내용은 |
| |
여기 텍스트 SQL 쿼리에서 정의 할 수 있습니다. |
| |
실행할 수 있습니다. |
| |
여기이 쿼리를 보거나 쿼리 수정 버튼을 누르면 |
| |
텍스트 쿼리가 표시됩니다. 그래서 이것은 한 가지 방법 일뿐입니다. |
| |
시각적 쿼리에서 사용자 지정 SQL 쿼리로 변환. |
| |
그러니 정리하겠습니다 |
| |
일부 테이블. 괜찮아. |
| |
다음 빌딩 블록은 데이터베이스에서 데이터를 가져 오는 것이며 해당 데이터 소스에 대한 ODBC 연결이 필요합니다. |
| |
그리고 일반적으로 ODBC 데이터 원본과 드라이버는 IT 관리자가 설정합니다. 따라서 Windows에서는 |
| |
ODBC 데이터 원본 관리자에서 이러한 연결. |
| |
그리고 데이터베이스 소스의 비트는 JMP에 맞아야한다는 점을 명심하십시오. 이 경우에는 64 비트 JMP 응용 프로그램이 있으므로 64 비트 드라이버가 필요합니다. |
| |
그리고 사용자 소스는 직접 설정할 수 있습니다. |
| |
그리고 시스템 DSN은 관리자가 설정하고 다른 유형의 데이터베이스에 대한 드라이버도 관리자가 설정합니다. |
| |
문제 해결의 경우이 탭을 사용하여 추적 할 수 있습니다. |
| |
쿼리가 어디로 가고 무엇이 문제 일 수 있습니다. |
| |
그리고 내 쪽의 팁은 이러한 데이터 소스에서 연결이 제대로 작동하는지 확인하는 것입니다. 따라서 구성 및 데이터 원본 관리자를 누르면 자격 증명을 제공 한 후 특정 원본에 대한 연결 테스트를들을 수 있습니다. |
| |
모든 것이 괜찮다면 시스템은 |
| |
연결이 성공했습니다. |
| |
쿼리가 작동하지 않는 것은 Windows의 문제가 아닙니다. |
| |
기타 세부 사항은 문서의 JMP 매뉴얼에서 찾을 수 있습니다. 예를 들어 JMP 사용, 3 장, 여기에서 찾을 수 있습니다. |
| |
도움말 메뉴 |
| |
및 JMP 문서 라이브러리. 그리고 이러한 모든 도구를 사용하는 방법이 잘 문서화되어 있습니다. |
| |
자, 스크립팅과 JSL에는 스크립팅 언어로 이러한 SQL 데이터베이스 쿼리를 스크립팅하는 세 가지 방법이 있습니다. 첫 번째는 이전에 이미 사용했던 새로운 SQL 쿼리입니다. 따라서 JMP 테이블에 대한 JMP 쿼리 작성기, 테이블 아래의 JMP 메뉴에 있습니다. |
| |
또는 데이터베이스의 경우 여기 데이터베이스 쿼리 작성기에서 찾을 수 있습니다. |
| |
그리고 New SQL Query는 가장 강력한 명령입니다. 따라서 새로운 질의 객체를 생성하고 자신을 JMP 질의 파일로 저장할 수 있습니다. 이전에 소스 수정 및 업데이트 스크립트에서 보았던 것처럼 데이터 테이블을 직접 생성 할 수 있으며 데이터의 출처를 매우 잘 제공합니다. |
| |
데이터베이스에서 데이터를 쿼리하는 JSL의 또 다른 명령은 open database 명령입니다. 스크립팅 색인에서도 이러한 모든 명령에 대한 문서를 찾을 수 있습니다. 여기처럼 |
| |
내가 입력하면 |
| |
열다 |
| |
데이터 베이스, |
| |
여기에서 모든 명령에 대해 어떻게 작동하는지 찾을 수 있습니다. |
| |
그리고 데이터베이스에 연결하고 쿼리를 입력하는 세 번째 방법은 데이터베이스 연결입니다. |
| |
그리고 세 단계가 필요합니다. 첫 번째는 데이터베이스 연결을 만드는 것입니다. 두 번째는 하나 또는 여러 개의 쿼리를 데이터베이스에 넣는 것입니다. 그리고 완료하려면 데이터베이스 연결을 닫아야합니다. |
| |
마지막으로 멋진 스크립트를 작성했다면. |
| |
귀하 또는 동료가 액세스 할 수 있도록해야하며 최소한 두 가지 방법이 있습니다. 따라서 하나는 추가 기능에 넣어 다른 사람에게도 쉽게 제공 할 수 있도록하는 것입니다. 또 다른 가능성은 여기에서했던 것처럼 사용자 지정 메뉴에 넣는 것입니다. |
| |
그리고 당신은 그것을 찾을 수 있습니다 |
| |
메뉴에 여기 이렇게 내 시스템에 두 개의 추가 기능이 설치되어 있습니다. |
| |
그리고 여기 내 개인 |
| |
맞춤 메뉴. |
| |
그럼 ... 우리는 빌딩 블록을 완성했습니다. 예를 들어 보겠습니다. |
| |
첫 번째 예는 테이블 스크립트를 사용하여 테이블 레이아웃과 쿼리를 저장하는 것입니다. |
| |
그래서 이렇게 보일 수 있습니다. 제공되는 데이터 테이블이있는 경우 |
| |
데이터베이스에서 멋진 그래프를 만들기 위해 스크립트를 넣습니다. |
| |
매일 사용하고 싶을 수도 있습니다. 그리고 여기에 좋은 가능성이 있습니다 |
| |
즉, 데이터없이 테이블 스크립트를 복사합니다. |
| |
그리고이 스크립트를 사용할 수 있습니다. |
| |
새 스크립트를 만들고 싶습니다. 죄송합니다. |
| |
그리고 스크립트 창에 붙여 넣습니다. |
| |
그리고 스크립트 실행 버튼을 누르기 만하면 새 테이블이 나타납니다. |
| |
그리고 그것은 데이터없이 ???로 온다. 예를 들어이 스크립트를 메뉴에 저장하고 데이터를 가져 오려면 엄청난 양의 데이터가 될 수 있습니다. 데이터베이스에서 업데이트 버튼을 누르기 만하면 테이블이 데이터베이스 또는 다른 곳의 모든 데이터로 채워집니다. |
| |
그래서 이것은 좋은 가능성입니다 |
| |
단순히 스크립트를 사용하려면 |
| |
데이터베이스에서 데이터를 가져옵니다. |
| |
두 번째 예 |
| |
테이블 내부에서 쿼리를 사용하는 것입니다. |
| |
이렇게. 데이터 테이블이 있고 현재 테이블의 내용에 따라 일부 추가 데이터를 쿼리하려는 경우. |
| |
그래서 보여 드리겠습니다. |
| |
일부 행을 삭제합니다. |
| |
이 세 가지 이름을 사용하여 데이터를 가져 오기 위해 다른 테이블로 이동하고 싶습니다. |
| |
그리고 그것은이 스크립트에 의해 이루어집니다. |
| |
그리고 여기이 테이블에서 볼 수 있습니다. 이름을 얻고 쿼리를 만들었습니다. |
| |
Big Class Families의 다른 테이블에서 데이터를 쿼리합니다. |
| |
그리고 어떻게 작동합니까? |
| |
이 스크립트에서 찾을 수 있습니다. |
| |
아주 짧습니다. 여기에서 이름은 여기와 같이 정의 된대로 첫 번째 테이블 쿼리에서 가져옵니다. |
| |
이름은 쿼리로 대체됩니다. |
| |
그리고 여기서 쿼리는 Big Class Families 테이블에 배치됩니다. |
| |
좋아요,이 테이블도 닫아야합니다. |
| |
이것은 그래픽 사용자 인터페이스가있는 사용자 정의 쿼리 스크립트입니다. 예를 들어 데이터베이스에 대용량 데이터 테이블이 있고 종종 소량이 필요한 경우 |
| |
물론 모든 데이터를 가져올 수 있지만 잘 필터링 된 데이터를 가져 오는 것이 더 유연하고 효율적일 수 있습니다. 그래서 이렇게 작동합니다. |
| |
데이터 필터링을위한 하나의 테이블과 빅 데이터 테이블의 모든 열이있는 하나의 테이블. 여기에서 그래픽으로 필터링 할 수 있습니다. 여성과 나이가 있다고 가정 해 보겠습니다. 필터링에 단 두 개의 열만 사용했습니다. |
| |
이렇게 12 살, 13 살이에요. |
| |
그리고 모든 열을 가지거나 하나의 열만 제거 할 수 있습니다. |
| |
나는 그것을 쿼리 |
| |
그리고 여기에 이러한 제한으로 적절한 결과를 얻습니다. 여기에서 볼 수 있듯이 소스 스크립트 또는 SQL에서 |
| |
제한은 여기에 있습니다 |
| |
정의 된 그래픽 사용자 인터페이스에서. |
| |
그리고 어떻게 |
| |
스크립팅 작업이 작동합니까? 조금 |
| |
물론 더 복잡합니다. 그래서 필터 쿼리가 있습니다. |
| |
열 쿼리입니다. |
| |
다음은 스크립트입니다. |
| |
데이터 필터 조건을 SQL 조건으로 변환합니다. |
| |
이것은 GUI 부분, 그래픽 사용자 인터페이스입니다. |
| |
그리고 마지막으로 그래픽 사용자 인터페이스 결과를 평가하여이 사용자 지정 스크립트에 넣습니다. |
| |
다음 예는 2 단계 쿼리입니다. 따라서 먼저 일부 배치 ID를 쿼리해야한다고 가정 해 보겠습니다. |
| |
그리고 이러한 ID를 다른 쿼리로 가져 가거나 추가 데이터를 얻기 위해 다른 데이터 테이블로 가져 가려면 |
| |
이렇게 할 수 있습니다. 그래서 여기에서는 Big Class 데이터 테이블을 필터로 사용했습니다. 그래서 남성 만 걸러 내 |
| |
과 |
| |
13 세 미만의 학생. |
| |
그리고이 이름을 사용하여 Big Class Families, 모든 행을 쿼리했습니다. 여기에서 볼 수 있습니다. |
| |
과 |
| |
두 테이블은 여기에서 볼 수 있듯이 가상 조인을 통해 연결됩니다. |
| |
그래서 |
| |
이 테이블은 이름을 통해 필터 테이블에 대한 다른 테이블을 참조합니다. 그리고 나는 사용할 수 있습니다 |
| |
이 테이블에있는 필터 테이블의 열은 마치 |
| |
이 테이블에서. |
| |
따라서 이것은 여러 테이블을 가지고 하나의 테이블에서 콘텐츠를 사용하는 좋은 방법입니다. |
| |
그리고 마지막 예는 |
| |
백그라운드에서 두 개 또는 여러 개의 쿼리를 병렬로 실행하는 방법. 그래서 여기에는 예가 없습니다. JMP 커뮤니티에서 논의됩니다. 그리고 관심이 있으시면 살펴볼 수 있습니다. |
| |
이제 예제를 마쳤으며 저널 및 프레젠테이션 자료 스크립트를 온라인으로 볼 수 있습니다. |
| |
훌륭한 토론에 대해 커뮤니티와이 훌륭한 소프트웨어를 구축하고 유지 관리 해준 JMP 개발자에게 감사드립니다. 마지막으로 관심을 가져 주셔서 감사합니다. |