pureQuery 클라이언트 최적화를 사용한 SQL문 캡처의 권장사항

최상의 결과를 위해서는, 개발 단계의 마지막이나 테스트 단계 도중에 pureQuery 클라이언트 최적화로 SQL 데이터 캡처를 수행하십시오. 캡처되는 SQL 데이터를 제어하도록 pureQuery Runtime 특성을 적절하게 설정하고 SQL 데이터를 캡처한 후 애플리케이션을 종료하십시오.
캡처 활동의 환경
  • SQL 데이터 캡처를 수행하기 좋은 최상의 시간은 개발 주기의 마지막이나 테스트 주기 도중입니다. 잠재적 성능 저하를 피하려면 프로덕션에서의 SQL 데이터 캡처를 피하십시오.

    SQL 데이터를 캡처하고 pureQuery 클라이언트 최적화를 테스트하는 데 사용되는 테스트 환경은 프로덕션 환경과 가능하면 밀접하게 일치해야 합니다.

  • 프로덕션 환경에서 SQL 데이터를 캡처하려면 데이터베이스의 저장소를 사용하십시오.
SQL 데이터 캡처를 제어할 특성 설정
  • 적절한 캡처 레벨을 선택하십시오.
    • WebSphere® 환경에서는 애플리케이션 내에 사용되는 데이터 소스 레벨에서 캡처하고 동일한 데이터 소스를 사용하여 기타 애플리케이션에 영향을 미치지 않도록 하십시오.

      둘 이상의 애플리케이션이 데이터 소스를 공유하며 SQL문을 애플리케이션 레벨에서 캡처해야 하는 경우에는 애플리케이션별 pureQuery Runtime 특성을 설정하십시오. 애플리케이션의 특성을 쉽게 관리할 수 있도록 이 애플리케이션별 특성은 데이터베이스의 저장소를 가리킬 수 있습니다.

    • WebSphere를 사용하지 않는 환경에서는 애플리케이션 내에 사용되는 연결 URL 레벨에서 캡처하십시오.
  • SQL 데이터를 캡처할 때 적절한 pureQuery Runtime 특성 파일 세분화 단위 및 범위를 선택하십시오. 필요 이상으로 캡처하지는 마십시오.

    pureQuery Runtime 특성을 적절한 레벨(연결, 데이터 소스, 애플리케이션별 또는 전역)에서 설정하고 있는지 확인하십시오. 예를 들어, pureQuery Runtime 특성을 WebSphere 설치의 전역 레벨에서 캡처하도록 설정하면 모든 애플리케이션이 동일한 파일에 쓰게 됩니다.

  • SQL 데이터를 캡처할 때 필요에 따라 pureQuery Runtime 특성을 사용자 정의하십시오.

    예를 들어, pureQueryXML 파일 크기를 최소화하고 처리 속도를 올리려면 필요하지 않은 경우 스택 추적 정보 캡처 기능을 사용하지 않을 수 있습니다.

  • pureQuery Runtime 특성 maxStackTracesCaptured 또는 특성 stackTraceDepth에 -1 값을 지정해서 모든 스택 추적이나 모든 스택 추적 요소를 캡처하지는 마십시오.

    pureQuery Runtime 특성 packagePrefixExclusion으로 스택 추적의 컨텐츠를 필터링해서 최소 크기의 스택 추적을 수집할 수 있습니다.

  • 애플리케이션이 리터럴 값을 포함하는 SQL문을 실행하면 pureQuery SQL 리터럴 대체 기능을 사용할 것을 고려하십시오.

    애플리케이션이 동일한 구문을 공유하며 포함하는 리터럴 값만 다른 많은 SQL문을 실행하는 경우에는, 리터럴 값의 매개변수 표시문자를 대체해서 pureQuery Runtime이 이 명령문을 캡처 및 통합할 수 있습니다.

  • 문제가 있는 경우에만 추적 사용

    pureQuery Runtime이 잠재적 정적 SQL 실행 문제를 보고하도록 하려면 IBM® Data Server Driver for JDBC and SQLJ 추적을 사용하고 pureQuery 추적을 FINER 레벨로 설정하십시오.

캡처한 SQL 데이터가 포함된 파일
SQL 데이터를 디스크의 파일에 캡처한 후 캡처 조작이 완료되면 pureQuery Runtime이 파일에 데이터 쓰기를 완료하도록 애플리케이션을 종료하십시오. Merge 또는 Configure 유틸리티를 실행하기 전에 캡처 파일을 완료하고 닫아야 합니다.

이 사례는 특히 pureQuery Runtime이 캡처한 SQL 데이터를 디스크의 파일에 쓰고 있을 때 WebSphere 애플리케이션에 필요합니다.

pureQuery Runtime이 데이터베이스에 작성된 저장소에 캡처한 SQL 데이터를 저장하는 경우에는 애플리케이션을 종료할 필요가 없습니다. 캡처한 SQL 데이터는 저장소의 레코드에 기록됩니다. 데이터를 추출할 때 pureQuery ManageRepository 유틸리티는 데이터를 캡처하는 데 여전히 사용 중인 레코드로부터는 pureQueryXML 파일을 작성하지 않습니다.


피드백