Linux, UNIX 및 Windows용 DB2에서 실행되는 쿼리 워크로드를 작성하기 위한 SQL문을 캡처할 수 있는 위치

많은 위치에서 SQL문을 캡처할 수 있습니다.

캡처에 필요한 공통 전제조건

캡처하는 각 위치에 대해 다음 전제조건이 충족되어야 합니다. 일부 위치에는 추가적인 전제조건이 있습니다.

SQL문을 캡처할 수 있는 위치

SQL Editor 또는 루틴 편집기
튜닝하려는 명령문을 강조 표시하고 마우스 오른쪽 단추를 클릭한 후 튜닝 시작을 선택하십시오.
참고: 루틴 편집기로부터 캡처하는 명령문에 로컬 변수가 포함되어 있으면 캡처 프로세스 동안 해당 변수가 입력된 매개변수 표시문자로 변환됩니다.

Linux, UNIX 및 Windows용 DB2 버전 9.7.4 이상의 경우: 루틴 편집기에서 SQL 스토어드 프로시저를 실행하는 경우 실행 창에서 스토어드 프로시저의 명령문에 대한 액세스 플랜의 실제 런타임 정보를 수집할 수 있습니다. 데이터베이스에서 성능 정보 수집 옵션을 선택한 후 데이터베이스에서 실제 액세스 플랜 정보 수집 옵션을 선택하십시오. 프로파일링 데이터 뷰에서 CTRL 키를 누른 상태에서 명령문을 클릭하여 튜닝할 명령문을 선택하십시오. 선택사항을 마우스 오른쪽 단추로 클릭하고 튜닝 시작을 클릭하십시오.

데이터 소스 탐색기
다음 오브젝트를 마우스 오른쪽 단추로 클릭하고 튜닝 시작을 선택하십시오.
  • 패키지
  • SQL 스토어드 프로시저
  • 컴파일된 SQL문을 사용하는 트리거. 즉, 패키지와 연관된 트리거
    참고: z/OS용 DB2 10 이상의 경우: 트리거에서 캡처되는 SQL문은 액세스 플랜 그래프 생성 또는 액세스 플랜 탐색기에서 보기를 위한 충분한 EXPLAIN 정보를 포함하고 있습니다. 액세스 플랜 그래프를 생성하거나 액세스 플랜 탐색기를 실행하기 전에 명령문을 다시 Explain할 필요가 없습니다. 사실, 많은 경우에 z/OS용 DB2의 트리거로부터 캡처되는 SQL문은 NEW, OLD, NEW_TABLE, OLD_TABLE 같은 원시 트리거 구문 때문에 Explain될 수 없습니다.
  • 컴파일된 SQL문을 사용하는 사용자 정의 함수(UDF). 즉, 패키지와 연관된 UDF
Linux, UNIX 및 Windows용 DB2® 및 기타 위치

다음 소스로부터 SQL을 캡처하려면 먼저 다음 단계에 따라 워크플로우 도움자를 열어야 합니다.

  1. 데이터 소스 탐색기에서 마우스 오른쪽 단추로 데이터 서버를 클릭한 다음 분석 및 튜닝 > 튜닝 시작을 선택하십시오. 워크플로우 보조 프로그램에서 캡처 섹션이 열립니다.
  2. 캡처 섹션 왼쪽에서 조정할 SQL문의 위치를 선택하십시오.
다음 위치로부터 캡처할 수 있습니다.
명령문에 입력하거나 붙여넣으십시오.
캡처 섹션의 왼쪽에서 텍스트 입력을 선택하십시오.
파일
캡처 섹션의 왼쪽에서 파일을 선택하십시오.
쿼리 워크로드를 정의하는 XML 파일
사용자가 연결된 데이터베이스 또는 서브시스템에서 전체 튜닝 기능 세트가 활성화되지 않은 경우에도 쿼리 워크로드의 정의 내에 있는 SQL문을 튜닝할 수 있습니다.
InfoSphere® Optim™ Performance Manager 저장소
이 소스에서 캡처하기 위한 전제조건 및 지시사항은 Optim Performance Manager에서 쿼리 워크로드 작성을 참조하십시오.
Linux, UNIX 및 Windows용 DB2 내의 소스
  • 패키지 캐시

    명령문이 위치하는 패키지가 EXPLAIN이 YES로 설정되어 바인드된 경우, 실제 액세스 플랜에 대한 정보도 함께 캡처됩니다.

    지정된 패키지에서 발생하는 캡처된 모든 명령문은 이 유형의 소스에서 쿼리 워크로드를 작성할 때 저장됩니다. 캡처된 명령문의 EXPLAIN 정보 저장 옵션을 선택하면 명령문이 발생할 때마다 EXPLAIN 정보도 저장됩니다.

  • 패키지

    명령문이 위치하는 패키지가 EXPLAIN이 YES로 설정되어 바인드된 경우, 실제 액세스 플랜에 대한 정보도 함께 캡처됩니다.

    지정된 패키지에서 발생하는 캡처된 모든 명령문은 이 유형의 소스에서 쿼리 워크로드를 작성할 때 저장됩니다. 캡처된 명령문의 EXPLAIN 정보 저장 옵션을 선택하면 명령문이 발생할 때마다 EXPLAIN 정보도 저장됩니다.

  • EXPLAIN 테이블

    캡처한 직후 명령문을 마우스 오른쪽 단추로 클릭하고 액세스 플랜 그래프 표시를 선택하여 해당 명령문의 실제 액세스 플랜을 볼 수 있습니다.

    정적 명령문의 경우: 캡처된 명령문이 지정된 패키지에서 두 번 이상 발생하는 경우, 이 유형의 소스에서 쿼리 워크로드를 작성할 때 최근에 발생한 명령문의 EXPLAIN 정보만 저장됩니다. 패키지 이름, 패키지 스키마, 섹션 번호, 명령문 번호 및 명령문 텍스트가 동일한 경우 명령문은 중복된 것으로 간주됩니다. 이 옵션을 선택하지 않는 경우에도 최근에 발생한 각 명령문만 쿼리 워크로드에 저장됩니다.

  • 이벤트 모니터 테이블

    이 유형의 소스에서 캡처하려면 먼저 ACTIVITIES 이벤트 모니터를 작성하고 실행하여 데이터베이스에서 런타임 활동을 수집해야 합니다. 캡처한 직후 명령문을 마우스 오른쪽 단추로 클릭하고 액세스 플랜 그래프 표시를 선택하여 해당 명령문의 실제 액세스 플랜을 볼 수 있습니다.

    지정된 패키지에서 캡처된 명령문이 두 번 이상 발생하는 경우, 이 유형의 소스에서 쿼리 워크로드를 작성할 때 최근에 발생한 명령문의 EXPLAIN 정보만 저장됩니다. 실행할 수 있는 ID가 동일한 경우 명령문은 중복된 것으로 간주됩니다. 이 옵션을 선택하지 않는 경우에도 최근에 발생한 각 명령문만 쿼리 워크로드에 저장됩니다.

  • SQL 스토어드 프로시저

피드백