pureQuery 런타임 특성을 사용하여
pureQuery Runtime이 pureQuery 정보를 검색하고 캡처된 SQL 데이터를
저장하기 위해 사용하는 위치를 제어할 수 있습니다.
다음 시나리오는 pureQuery Runtime이 다른 스토리지 위치를 사용하는 방법을 제어하기 위해
pureQuery 런타임 특성을 사용하는 방법에 대해 설명합니다.
pureQuery 클라이언트 최적화 및 저장소를
사용하도록 애플리케이션 구성
다음 단계는
초기에 저장소를 pureQuery 클라이언트 최적화에 사용할 수 있는 방법에 대해 간략하게
설명합니다.
- 데이터베이스 관리자가 SQL 관리 저장소를 작성합니다.
- 관리자가 저장소에 하나 이상의 런타임 그룹 버전을
작성합니다.
- 애플리케이션 관리자가 런타임 그룹 버전에 대해 다음과 같은 pureQuery 런타임
특성을 설정합니다. 데이터베이스 관리자가
pureQuery 런타임 특성을 런타임 그룹 버전에 업로드합니다.
- executionMode
- 값을 DYNAMIC으로 설정합니다.
- captureMode
- 값을 ON으로 설정합니다.
- propertiesRefreshInterval
- 값을 1(1분)로 설정합니다.
필요에 따라 다른 pureQuery 런타임 특성이
애플리케이션에 대해 설정됩니다.
런타임 그룹 버전에
pureQueryXML 데이터가 포함되어 있지 않습니다.
- 데이터베이스 관리자가 런타임 그룹 버전을 활성화합니다.
- pureQuery 클라이언트 최적화를 사용하도록 구성된 애플리케이션의 경우,
애플리케이션 관리자가 SQL 관리 저장소에서 pureQuery 데이터를 검색하기 위해
다음과 같은 pureQuery 런타임 특성을 지정합니다.
- finalRepositoryProperties
- 이전에 작성된 저장소를 지정합니다.
- propertiesGroupId
- 이전에 작성된 pureQuery 런타임 그룹을 지정합니다.
- repositoryRequired
- 값을 애플리케이션 관리자가 지정한 동작으로
설정합니다.
- propertiesRefreshInterval
- 값을 1(1분)로 설정합니다.
- 애플리케이션 관리자가 애플리케이션을 시작합니다.
- 애플리케이션이 실행됩니다. pureQuery 클라이언트 최적화가 SQL 데이터를
캡처하여 저장소에 런타임 그룹 데이터의 일부로 저장합니다.
- 데이터베이스 관리자가 캡처된 SQL을 pureQuery 클라이언트 최적화에
사용할 수 있도록 준비하기 위해 다음 단계를 수행합니다.
- ManageRepository 유틸리티를 사용하여 저장소에서 캡처된 SQL 데이터 및
기타 pureQuery 데이터를 추출합니다.
- 필요한 경우, 캡처된 SQL 데이터를 단일 pureQueryXML 파일에
병합합니다.
- pureQueryXML 파일을 구성합니다.
- StaticBinder 유틸리티를 사용하여 pureQueryXML 파일에 있는 SQL문으로
애플리케이션 데이터베이스에 패키지를 작성하고 이를 데이터베이스에
바인드합니다.
- 데이터베이스 관리자가 다음 pureQuery 데이터를
기존 런타임 그룹의 새 버전에 있는 저장소에 업로드합니다.
- pureQueryXML 데이터
- 다음 pureQuery 런타임 특성
- executionMode
- 값을 STATIC으로 설정합니다.
- allowDynamicSQL
- 값을 TRUE로 설정합니다.
- captureMode
- 값을 OFF로 설정합니다. 이 특성을 ON으로 설정하여
애플리케이션에서 추가 SQL문을 캡처할 수 있습니다.
- propertiesRefreshInterval
- 1분으로 유지합니다.
- 데이터베이스 관리자가 새 런타임 그룹 버전을
활성으로 설정합니다.
- pureQuery 사용 가능 애플리케이션이
pureQuery 정보에 대한 변경사항을 점검하고 pureQuery 정보를 갱신한 후,
캡처되어 데이터베이스에 바인드된 명령문에 대한 정적 SQL문을
호출합니다.
주: WHERE CURRENT OF를 사용하는 일부 SQL문을 실행하는 데
시간이 오래 걸리는 경우, 실행 시간으로 인해 정적 SQL문 사용이 지연될 수 있습니다.
- 다른 pureQuery 기능을 테스트하기 위해 데이터베이스 관리자는
프로세스를 반복하여 애플리케이션에서 SQL 데이터 캡처 및 pureQuery 정보 갱신을
계속할 수 있습니다. 애플리케이션 서버(AS)
관리자는 데이터베이스 관리자가 테스트하는 동안 애플리케이션을 재시작할 필요가
없습니다.
저장소를 사용하도록
기존 애플리케이션 구성
pureQuery 클라이언트 최적화에
사용 가능한 기존 애플리케이션을 SQL 관리 저장소를 사용하도록
구성할 수 있습니다. 애플리케이션이 저장소의 pureQuery 데이터를
사용 중인 경우, 데이터베이스 관리자는 애플리케이션을 다시 전개하지 않고
저장소의 pureQuery 데이터를 수정할 수 있습니다.
다음 단계는
pureQuery 런타임 특성 및 pureQueryXML 데이터를 저장소에 이동하는 방법에 대해 간략하게 설명합니다. 다음 단계는
다음과 같은 환경을 가정합니다.
- 애플리케이션이 현재 pureQuery 클라이언트 최적화를 사용 중이며
정적 SQL을 실행 중입니다.
- pureQuery 특성 및 pureQueryXML이 애플리케이션의
EAR 파일 및 DataSource.pdqProperties에 있습니다.
- 애플리케이션 관리자가 애플리케이션에서 현재 사용하는 pureQuery 특성을
판별합니다.
주: 현재 특성 설정을 검증하기 위해
관리자는 JCC 추적을 사용하여 현재 특성을 표시할 수 있습니다.
- 애플리케이션 관리자가 현재 pureQueryXML 파일을 가져옵니다.
예를 들어, EAR 파일 또는 소스 코드 제어 시스템에서
파일을 추출합니다.
- 애플리케이션 관리자가 모든 현재 특성 및 값을 포함하는 pureQuery 특성 파일을
작성합니다.
주: pureQueryXml 특성은
파일에 포함되어 있지 않습니다. finalRepositoryProperties 및 propertiesGroupId 특성은
pureQueryXML 파일의 위치를 지정합니다.
- SQL 관리 저장소가 없는 경우 데이터베이스 관리자가
이를 작성합니다.
- 데이터베이스 관리자가 저장소에 런타임 그룹 버전을 작성하고
애플리케이션 관리자로부터 pureQuery 런타임 특성 파일 및
pureQueryXML 파일을 업로드합니다.
- 데이터베이스 관리자가 런타임 그룹 버전을 활성화합니다.
- 애플리케이션 관리자가 애플리케이션이 시작 시 저장소에서 pureQuery 정보를
검색하기 위해 사용하는 pureQuery 런타임 특성을 갱신합니다.
- finalRepositoryProperties
- 애플리케이션의 pureQueryXML 데이터 및 런타임 특성을 포함하는
저장소를 지정합니다.
- propertiesGroupId
- 저장소에 런타임 그룹을 지정합니다.
- repositoryRequired
- 애플리케이션 관리자가 지정한 동작으로 설정합니다.
- 애플리케이션 관리자가 pureQuery 런타임 특성을
다음 위치 중 하나에 추가합니다.
- 해당 데이터 소스를 사용하는 모든 애플리케이션이 저장소를 사용할 수 있는 경우 DataSource.pdqProperties
- 애플리케이션이 하나의 데이터 소스만 사용하는 경우 EAR 파일에 있는 pdq.appwide.properties
- EAR 파일의 pdq.targetDSName.properties. 여기서 targetDSName은
저장소 특성 및 pureQueryXML 데이터를 참조할 데이터 소스의
이름입니다.
주: EAR 파일이 변경된 경우, 애플리케이션 관리자는
갱신된 EAR 파일을 다시 전개해야 합니다.
- 애플리케이션 관리자가 애플리케이션을 다시 전개하고 시작합니다.
애플리케이션이 저장소의 런타임 그룹 버전에서 pureQuery 런타임 특성 및 pureQueryXML 데이터를
검색합니다.
캡처된 SQL 데이터와 함께
저장소에 저장된 데이터인 pureQueryXML 갱신
다음 단계는 저장소에 저장된 캡처된 SQL 데이터 사용 방법에 대해
간략하게 설명합니다. 다음 단계는 다음과 같은 환경을 가정합니다.
- pureQuery 클라이언트 최적화를 사용하도록 구성된 애플리케이션이
정적 SQL을 호출 중이고 증분 캡처가 사용 가능합니다.
- pureQuery 특성 및 캡처된 SQL 데이터가 저장소에 있고
propertiesRefreshInterval 특성의 값은
60(1시간)입니다.
데이터베이스 관리자가 다음 단계를 수행합니다.
- 저장소의 런타임 그룹에서 캡처된 SQL을 추출하고
필요한 경우 pureQueryXML 데이터 및 구성 데이터를
추출합니다. ManageRepository 유틸리티를 사용합니다.
주: 캡처된 SQL 데이터를
검색하는 동안, captureMode 특성은
ON으로 설정된 상태를 유지합니다. SQL 데이터는 계속 캡처됩니다. 그러나
ManageRepository 유틸리티는 캡처된 SQL 데이터의 완료된 세트만
추출합니다.
- Merge, Configure 및 StaticBinder 유틸리티를 사용하여
새 pureQueryXML 파일을 작성하고 pureQueryXML 파일의 SQL문을
데이터베이스에 바인드합니다.
- 새 pureQueryXML 및 pureQuery 런타임 특성을
저장소의 새 런타임 그룹 버전에 업로드합니다.
- 선택사항: pureQueryXML 파일에 병합된 캡처된 SQL 데이터를
삭제합니다.
- 새 런타임 그룹 버전을 활성으로 설정합니다.
한 시간 내에 애플리케이션에서 사용된 pureQuery Runtime이
저장소에서 갱신된 pureQuery 데이터를 점검하고 새 런타임 그룹 버전의
갱신된 pureQueryXML 데이터 및 pureQuery 특성을 사용합니다.
주: 워크벤치를 사용하는 경우,
저장소에 연결한 후 런타임 그룹 작업 사본
편집기를 사용하여 런타임 그룹 버전의 pureQuery 데이터를
관리할 수 있습니다.