Top SQL 비교
이 문서는 Oracle 모니터 링 V2를 기준으로 작성했습니다. Oracle 모니터링 V1 문서는 다음 문서를 참조하세요.
홈 화면 > 프로젝트 선택 > 분석 > Top SQL 비교
특정 날짜를 기준으로 설정된 시간대의 SQL의 추이를 비교할 수 있습니다. 사용자는 여러 기준을 선택하여 SQL의 성능을 비교하고 Summary Chart를 통해 시계열 그래프로 확인할 수 있습니다. 또한, 화면 아래에 테이블 목록에서는 기준 날짜와 비교 날짜의 Top SQL 순위와 등락을 비교할 수 있습니다.
-
SQL 성능 파악: 사용자는 Top SQL 비교 메뉴를 통해 SQL의 성능을 쉽게 파악할 수 있습니다. SQL의 실행 횟수, 최대 경과 시간, 총 경과 시간, 대기 시간 등을 비교함으로써 시스템의 성능 문제를 신속하게 감지할 수 있습니다.
-
시간별 추이 확인: Summary Chart를 통해 시간에 따른 SQL의 성능 변화를 시각적으로 확인할 수 있습니다. 이를 통해 사용자는 시스템의 부하가 발생한 시간대나 성능 저하가 발생한 구간을 빠르게 파악하여 대응할 수 있습니다.
-
Top SQL 비교: 화면 아래에 테이블 목록에서는 기준 날짜와 비교 날짜의 Top SQL 순위를 비교할 수 있습니다. 이를 통해 사용자는 SQL의 성능 변화를 확인하고, 비교하여 성능 개선에 필요한 조치를 취할 수 있습니다.
Top SQL 비교하기
화면 위에서 Top SQL 비교를 위한 조건들을 설정한 다음 버튼을 선택하세요.
-
기준 시간: 비교를 위한 기준 시간을 설정하세요. 최대 24시간까지 설정할 수 있습니다. 녹색 버튼을 클릭하면 조회 시간을 선택할 수 있는 옵션을 표시됩니다. 사용자가 원하는 시간을 직접 설정하려면 날짜 및 시간 영역을 선택하세요.
노트최대 조회할 수 있는 시간 범위는 24시간입니다.
-
비교: 기준 시간에서 설정한 시간과 비교할 날짜 또는 시간을 선택하세요. 원하는 조건을 선택한 다음 확인 버튼을 선택하세요.
일자 시간 -
인스턴스: SQL 비교를 위해 인스턴스 대상을 선택하세요.
-
조회 기준: 비교 기준을 선택하세요. 선택한 항목에 따라 차트를 생성하고 순위를 정렬합니다.
-
excute count: 실행 횟수를 기준으로 조회 결과를 정렬합니다.
-
elapsed max: 최대 경과 시간을 기준으로 조회 결과를 정렬합니다.
-
elapsed time: 총 경과 시간을 기준으로 조회 결과를 정렬합니다.
-
elapsed wait: 대기 시간을 기준으로 조회 결과를 정렬합니다.
-
-
조회 건수: 화면 아래에 SQL 순위 테이블 목록에 표시되는 개수를 설정하세요.
Summary Chart
Summary Chart에서는 기준 날짜와 비교 날짜의 SQL 추이를 비교할 수 있는 시계열 그래프를 제공합니다. 이를 통해 사용자는 시간에 따른 SQL의 성능 변화를 쉽게 파악할 수 있습니다.
-
◼︎ 파란색 그래프: 기준 날짜를 의미하면 오른쪽의 수치는 평균값을 의미합니다.
-
◼︎ 회색 그래프: 비교 날짜를 의미하며 오른쪽의 수치는 평균값을 의미합니다.
SQL 순위 비교하기
화면 아래에 SQL 순위 테이블에서는 상위 SQL 목록이 표시됩니다. 표시되는 개수는 화면 위에 조회 건수에서 설정할 수 있습니다.
왼쪽에 배치된 테이블은 기준 날짜에 해당하는 SQL 순위가, 오른쪽에는 비교 날짜에 해당하는 SQL 순위가 표시됩니다. 기준 날짜 테이블의 ranck changed 컬럼을 통해 비교 날짜 대비 변화된 등락을 확인할 수 있습니다.
예를 들어, 사용자가 elapsed time(경과 시간)을 기준으로 비교했을 때, 비교 날짜 대비 기준 날짜에 같은 SQL 문의 경과 시간이 더 늘어났다면 해당 SQL 문의 성능을 검토해볼 필요가 있습니다. 쿼리 최적화 또는 인덱스를 사용해 성능을 최적화해보세요.
쿼리 미리보기
SQL 순위 테이블에서 query 컬럼 항목에 마우스를 오버하면 해당 SQL 문의 쿼리를 확인할 수 있습니다.
자세한 SQL 정보를 확인하려면 SQL 순위 테이블의 query 컬럼 항목을 선택하세요. SQL 상세 창이 나타납니다. SQL 쿼리문과 Plan 정보를 확인할 수 있습니다.
- SQL 통계 보기: 해당 SQL 쿼리문과 관련한 통계 정보를 확인할 수 있는 SQL 통계 메뉴로 이동할 수 있습니다.
-
Runtime Plan: 선택된 SQL 쿼리의 실행 계획과 런타임 정보를 제공합니다. 실행 횟수, 평균 실행 시간, 평균 물리적 읽기 등 세부 정보를 제공합니다.
-
Explain Plan: 옵티마이저가 예측한 실행 계획을 보여줍니다. 비용, 작업, 객체 이름, 카디널리티 등의 정보를 제공합니다.
-
Plan History: 데이터베이스에서 실행된 SQL 쿼리의 실행 계획에 대한 이력을 확인할 수 있습니다.
-
Bind Capture: 데이터베이스에서 실행된 SQL 쿼리에 사용된 바인드 변수의 값을 확인할 수 있습니다. 이를 통해 쿼리 실행의 실제 내용을 확인할 수 있습니다.
노트실시간 실행된 bind 값이 아닌 데이터베이스에 캡처된 값(
v$sql_bind_capture
)입니다. 건수가 많으면 100개까지 표시합니다.