본문으로 건너뛰기

Oracle 성능 분석

exemONE Oracle Database 성능 분석 기능 상세 설명

메뉴 경로: Performance Analysis > Database > Oracle

exemONE에서 Oracle Database 성능 분석은 아래 5가지 카테고리로 구성됩니다.


1. Performance Analysis (성능 분석)

Oracle의 핵심 성능 지표를 시간/날짜 단위로 분석하는 기능 모음입니다.


1-1. SQL Summary

메뉴 경로: Performance Analysis > Database > Oracle > Performance Analysis > SQL Summary URL: /oracle/sqlSummary (toTime 기준으로 조회하며 시분초 미사용)

특정 시점의 SQL 수행 요약 정보를 분석하는 화면입니다.


1-2. Wait Summary

메뉴 경로: Performance Analysis > Database > Oracle > Performance Analysis > Wait Summary URL: /oracle/waitSummary (최소 1일, 시분초 미사용)

Oracle 대기 이벤트의 요약 정보를 분석하는 화면입니다.


1-3. Trend Analysis (트렌드 분석)

메뉴 경로: Performance Analysis > Database > Oracle > Performance Analysis > Trend Analysis URL: /oracle/trendAnalysis (최소 1일, 시분초 미사용)

날짜 별, 시간 별 성능 추이 확인이 가능한 화면으로, 특정 시점의 정밀한 성능 분석 기능을 제공합니다.

화면 구성

순번항목내용
1Search Panel버튼 클릭 시 Search Pannel을 보여줍니다.
2Search ResultSearch Pannel에서 선택한 조건은 상단에 텍스트로 표시됩니다.
3Trend Chart데이터베이스 주요 지표 Trend를 표시하며 주요 성능 지표에 대한 모니터링이 가능합니다.
4GridChart에서 클릭한 시점에 수집된 Session, Wait Summary, SQL Summary, Event, Long Session Query 정보를 보여줍니다.

1) Search Panel

순번항목내용
1ResetSearch 조건을 초기화합니다.
2InstanceInstance를 선택합니다.
3Time기간 버튼 및 달력 UI를 이용하여 조회 기간 및 시간을 설정합니다.
기간 설정 최대 범위: 90일, 최소 범위: 1일입니다.

2) Trend Chart

데이터베이스 주요 지표 Trend를 표시하며 주요 성능 지표에 대한 모니터링이 가능한 화면입니다.

순번항목내용
1ChartSearch Pannel에서 조회한 대상, 기간에 맞춰 Chart를 보여줍니다. 마우스 오버 시, Chart에 Indicator가 나타나고, Indicator가 위치한 시점의 날짜와 시간을 Tool Tip으로 보여줍니다.

3) Grid (하단 분석 탭)

Chart에서 특정 시점 클릭 시 해당 시점의 다양한 분석 데이터를 하단 Grid에서 확인할 수 있습니다.

  • Session: 해당 시점 수집된 Session 정보
  • Wait Summary: 대기 이벤트 요약
  • SQL Summary: SQL 수행 요약
  • Event: 이벤트 정보
  • Long Session Query: 장기 실행 세션 쿼리

2. SQL Analysis (SQL 분석)

Oracle DB에서 실행되는 SQL에 대한 심층 분석 기능입니다.


2-1. Top-N Analysis

메뉴 경로: Performance Analysis > Database > Oracle > SQL Analysis > Top-N Analysis URL: /oracle/topNAnalysis (최소 30분)

Stacked Area Chart를 활용하여 특정 기간 동안의 Top SQL을 조회하는 기능입니다.

Search Panel 주요 항목

항목내용
ResetSearch 조건을 초기화합니다.
InstanceInstance를 선택합니다.
Time기간 설정 최대 범위: 32일, 최소 범위: 30분
Order By정렬 기준 선택 (Elapsed Time, Executions, CPU Time, Gets 등)

2-2. Plan Analysis (플랜 분석)

메뉴 경로: Performance Analysis > Database > Oracle > SQL Analysis > Plan Analysis URL: /oracle/planAnalysis (최소 30분)

데이터베이스에서 실행되는 SQL 쿼리의 실행 계획을 시각적으로 표시하고 분석하는 화면입니다.

화면 구성

순번항목내용
1Search Panel버튼 클릭 시 Search Pannel을 보여줍니다.
2Search ResultSearch Pannel에서 선택한 조건은 상단에 텍스트로 표시됩니다.
3Plan Analysis ListSearch Pannel에서 조회한 기간 동안 Plan Hash Value 변화가 있는 SQL ID를 보여주고, Plan Count 내림차순으로 정렬됩니다.
4ChartPlan Analysis List에서 선택된 행 기준으로 SQL의 Plan Hash Value 차트를 보여줍니다.
5SQL ListPlan Analysis List에서 선택된 행의 SQL ID값의 Plan Hash Value 별 child number와 일량을 보여줍니다.
6Plan/Reason해당 정보는 로딩 마스크 처리가 되며, Click 후에 데이터가 조회됩니다. SQL List 영역에서 선택한 Plan Hash Value에 대한 Plan, Reason 정보를 보여줍니다.

Search Panel

순번항목내용
1ResetSearch 조건을 초기화합니다.
2InstanceInstance를 선택합니다.
3Time기간 설정 최대 범위: 32일, 최소 범위: 30분
4FiltersPlan Count (숫자 입력 또는 화살표 클릭), SQL ID 입력

2-3. Search SQL

메뉴 경로: Performance Analysis > Database > Oracle > SQL Analysis > Search SQL URL: /oracle/searchSql (최소 1일)

특정 조건으로 SQL을 검색하고 분석하는 화면입니다.


3. Session Analysis (세션 분석)

Oracle DB에서 실행 중인 세션의 상태를 분석하는 기능입니다.


3-1. Search Session (세션 검색)

메뉴 경로: Performance Analysis > Database > Oracle > Session Analysis > Search Session URL: /oracle/searchSession (최소 1초)

조건 입력을 통해 사용자가 원하는 Session 값을 제공하며, 5초 단위로 Session 정보를 필터링하여 특정 시점의 Session 성능 문제를 분석하는 화면입니다.

화면 구성

순번항목내용
1Search버튼 클릭 시 Search Pannel을 보여줍니다.
2Search 결과Search Pannel에서 선택한 조건은 상단에 텍스트로 표시됩니다.
3Search Session List조회 조건에 맞는 데이터를 Grid 형식으로 보여줍니다.
4Pagination페이지 이동 기능

Search Panel

순번항목내용
1ResetSearch 조건을 초기화합니다.
2InstanceInstance를 선택합니다.
3Time기간 설정 최대 범위: 1일, 최소 범위: 1초
4Filters복합 조건 입력 가능
- Operator: OR 또는 AND 조건 선택
- SID: Session 고유 식별자
- SQL ID: SQL 고유 식별자
- Schema: Schema 명
- Machine: Machine 명
- Program: 프로그램 명
- Module: Module 명

Grid 컬럼

순번항목내용
1TimeSQL 수행된 Time
2SIDSession 고유 식별자 (클릭 시 Session Detail Slide 오픈)

4. DataSpace Analysis (데이터 공간 분석)

Oracle DB의 저장 공간 사용량을 분석하는 기능입니다.


4-1. Tablespace (테이블스페이스)

메뉴 경로: Performance Analysis > Database > Oracle > DataSpace Analysis > Tablespace URL: /oracle/tablespace (최소 1일, 시분초 미사용)

Oracle 테이블스페이스 사용량을 분석하는 화면입니다.


4-2. Undo & Temp

메뉴 경로: Performance Analysis > Database > Oracle > DataSpace Analysis > Undo & Temp URL: /oracle/undoTemp (최소 1일, 시분초 미사용)

검색한 기간의 Session 별 Undo & Temp 사용량을 분석하는 화면으로, 선택된 일자들의 (Time + Session)별 Undo Usage(KB), Sort Usage(KB) 정보를 제공합니다.

화면 구성

순번항목내용
1Search Panel버튼 클릭 시 Search Pannel을 보여줍니다.
2Search ResultSearch Pannel에서 선택한 조건은 상단에 텍스트로 표시됩니다.
3Undo/Temp 탭Undo, Temp 탭을 선택하여 Session 별 사용량을 분석합니다. 선택한 탭에 따라 일자별/시간별 Undo/Temp 차트를 확인합니다.
4Session ListUndo & Temp 영역에서 선택한 일자별, 시간별 그래프 시점에 맞게 Session List를 보여줍니다. 선택된 일자와 시간이 Title 우측에 표기됩니다.

Search Panel

순번항목내용
1ResetSearch 조건을 초기화합니다.
2InstanceInstance를 선택합니다.
3Time기간 설정 최대 범위: 32일, 최소 범위: 1일

Undo & Temp 탭 상세

검색한 기간의 Session 별 Undo/Temp 사용량을 분석하며, Total Size, Used Size에 대한 일별/시간별 차트를 확인할 수 있습니다.


5. Event Analysis (이벤트 분석)

Oracle DB 이벤트, 파라미터 변경 이력 등을 분석하는 기능입니다.


5-1. Alert History (알람 이력)

메뉴 경로: Performance Analysis > Database > Oracle > Event Analysis > Alert History URL: /oracle/alertHistory (최소 7일, 시분초 미사용)

Oracle DB에서 발생한 알람 이력을 조회하는 화면입니다.


5-2. Parameter History (파라미터 이력)

메뉴 경로: Performance Analysis > Database > Oracle > Event Analysis > Parameter History URL: /oracle/parameterHistory (toTime은 base date, fromTime은 compare date에 사용하며 시분초 미사용)

Oracle DB의 파라미터 변경 이력을 비교·분석하는 화면입니다.


6. Oracle 모니터링을 위한 필요 권한

Oracle DB를 exemONE으로 모니터링하기 위해서는 다음 권한이 필요합니다.

GRANT CREATE SESSION TO exemone;
GRANT SELECT ANY dictionary TO exemone;
GRANT SELECT_CATALOG_ROLE TO exemone;
GRANT ALTER system TO exemone;

-- AWS RDS 인 경우 추가
GRANT EXECUTE ON rdsadmin.rdsadmin_util TO exemone;

SELECT ANY dictionary 권한 부여가 어려운 경우

개별 테이블/뷰에 대한 SELECT 권한으로 대체할 수 있습니다.

수집 항목필요 테이블/뷰
ActiveSessionv$session, v$sql, v$sort_usage, v$transaction, v$process, v$statname, v$sesstat, v$sqltext
ArchivedLogv$archived_log
ASMv$asm_disk, v$asm_diskgroup
DBStatv$sysstat
DBVersionv$instance, v$version
DBWaitv$system_event
EventNamev$event_name
InitSQLStatv$sqlstats, v$sql
KillSessionALTER SYSTEM KILL SESSION 권한
OSStatV$OSSTAT
Parameterv$parameter
RACStatusv$instance, v$option
Rmanv$rman_backup_job
segmentdba_segments
SessionCountv$session
SessionDetailv$transaction, v$process, v$sort_usage, v$session, v$sql
SessionMetricv$sessmetric
SessionStatMetricv$sesstat

7. Dashboard 위젯 링크를 통한 Oracle PA 연계

지원 버전: v3.0.508 이상

Dashboard 위젯에서 직접 Oracle Performance Analysis 화면으로 링크 연계가 가능합니다.

기능URL최소 조회 범위
SQL Summary/oracle/sqlSummarytoTime 기준
Top N Analysis/oracle/topNAnalysis최소 30분
Plan Analysis/oracle/planAnalysis최소 30분
Search SQL/oracle/searchSql최소 1일
Wait Summary/oracle/waitSummary최소 1일
Search Session/oracle/searchSession최소 1초
Trend Analysis/oracle/trendAnalysis최소 1일
Parameter History/oracle/parameterHistorytoTime: base date
Alert History/oracle/alertHistory최소 7일
Tablespace/oracle/tablespace최소 1일
Undo & Temp/oracle/undoTemp최소 1일

8. 기능별 메뉴 경로 요약

분류기능메뉴 경로
Performance AnalysisSQL SummaryPA > Database > Oracle > Performance Analysis > SQL Summary
Performance AnalysisWait SummaryPA > Database > Oracle > Performance Analysis > Wait Summary
Performance AnalysisTrend AnalysisPA > Database > Oracle > Performance Analysis > Trend Analysis
SQL AnalysisTop-N AnalysisPA > Database > Oracle > SQL Analysis > Top-N Analysis
SQL AnalysisPlan AnalysisPA > Database > Oracle > SQL Analysis > Plan Analysis
SQL AnalysisSearch SQLPA > Database > Oracle > SQL Analysis > Search SQL
Session AnalysisSearch SessionPA > Database > Oracle > Session Analysis > Search Session
DataSpace AnalysisTablespacePA > Database > Oracle > DataSpace Analysis > Tablespace
DataSpace AnalysisUndo & TempPA > Database > Oracle > DataSpace Analysis > Undo & Temp
Event AnalysisAlert HistoryPA > Database > Oracle > Event Analysis > Alert History
Event AnalysisParameter HistoryPA > Database > Oracle > Event Analysis > Parameter History

참고 문서 URL