AWR_DB_보고서_분석

Download Report

Transcript AWR_DB_보고서_분석

AWR DB 보고서 분석
0
1. AWR DB 보고서
1. 개요
■ 요약 보고서
– AWR 수행 정보 및 인스턴스 환경, 상태를 요약해서 보여주며, 이
를 통해 문제 파악 및 해결 방향을 빠르게 설정할 수 있다.
■ 상세 보고서
–DB 상태를 각 항목별로 상세히 보여주며, 이를 통해 문제에 대한
상세 분석을 할 수 있다.
1
1. 요약 보고서
1. 개요
항목
보고서
DB 환경
처음부터 Cache Size 단위 보고서 전까지 부분
메모리
Cache Size, Instance Efficiency Percentages (Target
100%),
부하 발생
Load Profile
대기 이벤트
Top 5 Timed Events
RAC
Global Cache Load Profile, Global Cache Efficiency
Percentages (Targetlocal+remote 100%),
Global Cache and Enqueue Services - Workload
Characteristics,
Global Cache and Enqueue Services - Messaging
Statistics
■ 스냅샷 구간의 인스턴스 정보 및 문제 발생 여부의 빠른 파악
■ 문제 해결 방향 설정
2
1. 요약 보고서
2. 인스턴스 정보
■ AWR DB 보고서에서 가장 처음 나오는 부분이며 스냅샷이 수행된
인스턴스 정보가 표시된다. 데이터베이스의 가장 기초적인 정보를
파악할 수 있다.
3
1. 요약 보고서
3. AWR 스냅샷 정보
■ AWR 스냅샷 구간 정보를 보여줌
4
1. 요약 보고서
4. Cache Size
■ 시작 및 종료 스냅샷 수행 시 SGA 설정 값이다. 버퍼 캐시와 공유
풀의 크기는 SGA 자동관리 기능을 사용하는 경우 시작 스냅샷의 값
과 종료 스냅샷의 값이 틀려질 수 있다.
5
1. 요약 보고서
5. Load Profile
■ Load Profile 단위 보고서는 스냅샷 구간 중 DB에 발생한 부하에
대한 정보를 보여준다.
■ 이 보고서에 나타난 수치는 DB 튜닝 필요성 유무를 판단하기 보다는
해당 구간에 발생한 부하량 파악 및 비 정상적인 구간과의 비교를 위해
사용된다.
6
1. 요약 보고서
5. Load Profile
■ 1st Per Sec: 베이스 라인 구간
2nd Per Sec: 문제 발생 구간
■ 문제 원인: 전체 발생 부하 증가 및 이로 인한 데이터 변경 과 I/O 발
생량 증가
7
1. 요약 보고서
6. Instance Efficiency Percentages (Target 100%)
■ 스냅샷 구간 중 메모리 사용 효율을 보여준다
8
1. 요약 보고서
7. Top 5 Timed Events
■ Wait Events 단위 보고서에 CPU 사용시간을 포함한 값으로 각 이
벤트 별 소요 시간 기준으로 상위 5개를 보여준다
■ 수행시간 = CPU 사용시간 + 대기시간
■ 성능 저하 원인
- CPU 경합으로 인한 CPU 처리시간 지연
- CPU 경합 외의 경합으로 대기시간 증가
9
1. 요약 보고서
7. Top 5 Timed Events
■ CPU 경합으로 인한 CPU 처리시간 지연
10
1. 요약 보고서
7. Top 5 Timed Events
■ CPU 경합으로 인한 CPU 처리시간 지연
- UNIX 명령으로 CPU 대기열 길이를 확인
■ CPU 경합 발생 시 해결 방법
- OS 튜닝
- DB 튜닝
- SQL 튜닝
- CPU 증설
11
1. 요약 보고서
7. Top 5 Timed Events
■ CPU 경합으로 인한 CPU 처리시간 지연
12
1. 요약 보고서
8. RAC Statistics
■ RAC 관련 요약 보고서가 시작되는 부분이다. 통계가 수집된 DB의
정보와 수집된 스냅샷 구간을 보여준다
13
1. 요약 보고서
9. Global Cache Load Profile
■ RAC 환경에서 인스턴스간 주고 받은 트래픽 양을 파악할 수 있다
■ 인스턴스 트래픽양은 인스턴스간 주고받은 메모리 블록과 메시지의
수의 총합이다.
14
1. 요약 보고서
10. Global Cache Efficiency Percentages (Target local+remote 100%)
■ RAC 환경에서 버퍼 캐시 적중률 파악 가능
15
1. 요약 보고서
11. Global Cache and Enqueue Services - Workload Characteristics
■ 이 단위 보고서로 RAC 트래픽 중 메모리 블록의 전송 속도를 확인할
수 있다
16
1. 요약 보고서
11. Global Cache and Enqueue Services - Workload Characteristics
■ 항목별 오라클 RAC 전송 권장치
항목
권장치 (ms)
Avg global enqueue get time (ms)
30 이하
Avg global cache cr block send time (ms)
10 이하
Avg global cache cr block receive time (ms)
12 이하
Avg global cache current block send time (ms)
23 이하
Avg global cache current block receive time (ms)
30 이하
17
1. 요약 보고서
12. Global Cache and Enqueue Services - Messaging Statistics
■ RAC 트래픽 중 메시지 전송에 대한 성능 수치를 보여준다
18
2. 상세 보고서
1. 개요
항목
보고서
대기 이벤트
Wait Class, Waits Events, Background Wait Events
자원 사용
Time Model Statistics, Operating System Statistics, Service Statistics, Service Wait Class Stat, Instance
Activity Stats, Instance Activity Stats - Absolute ValuesDB/Inst, Instance Activity Stats - Thread
ActivityDB/Inst, Resource Limit Stats
SQL
SQL ordered by Elapsed Time, SQL ordered by CPU Time, SQL ordered by Gets, SQL ordered by Reads,
SQL ordered by Executions, SQL ordered by Parse Calls, SQL ordered by Sharable Memory, SQL ordered
by Version Count, SQL ordered by Cluster Wait Time
I/O
Tablespace IO Stats, File IO Stats
메
모
리
SGA
Buffer Pool Statistics, Buffer Pool Advisory, Shared Pool Advisory, SGA Target Advisory, Streams Pool
Advisory, Java Pool Advisory, Buffer Wait Statistics, Dictionary Cache Stat, Dictionary Cache Stats (RAC),
Library Cache Activity, Library Cache Activity (RAC), SGA Memory Summary, SGA breakdown difference,
PGA
PGA Aggr Summary, PGA Aggr Target Stats, PGA Aggr Target Histogram, PGA Memory Advisory, Process
Memory Summary,
컨트롤 파일
Instance Recovery Stats
락
Enqueue Activity, Latch Activity, Latch Sleep Breakdown, Latch Miss Sources, Parent Latch Statistics,
Child Latch Statistics
언두
Undo Segment Summary, Undo Segment Stats
세그먼트
Segments by Logical Reads, Segments by Physical Reads, Segments by Row Lock Waits, Segments by
ITL Waits, Segments by Buffer Busy Waits, Segments by Global Cache Buffer Busy, Segments by CR
Blocks Received, Segments by Current Blocks Received
스트림즈
Streams CPU/IO Usage, Streams Capture, Streams Apply, Buffered Queues, Buffered Subscribers, Rule
Set
환경설정
init.ora Parameters
RAC
Global Enqueue Statistics, Global CR Served Stats, Global CURRENT Served Stats, Global Cache Transfer
Stats
19
2. 상세 보고서
1. Time Model Statistics
■ Time Model Statistics 단위 보고서는 다음 두 부분으로 나뉜다.
- 오라클 백그라운드 프로세스가 DB를 사용한 시간
- 오라클 서버 프로세스가 DB를 사용한 시간
20
2. 상세 보고서
1. Time Model Statistics
■ DB Time
21
2. 상세 보고서
1. Time Model Statistics
■ DB Time 구성 요소
22
2. 상세 보고서
2. Wait Class
■ 스냅샷 구간 중 발생한 대기 이벤트의 수치를 클래스별로 파악할 수 있다
■ 이는 대략적인 튜닝 포인트를 설정하는데 도움을 준다
23
2. 상세 보고서
3. Wait Event
■ 스냅샷 구간 중 발생한 대기 이벤트의 수치를 파악할 수 있다
■ 성능 문제 발생 지점을 파악하는데 도움을 준다
24
2. 상세 보고서
4. Operating System Statistics
■ 오라클이 OS를 사용하며 발생시킨 OS 통계정보를 보여준다
■ 스냅 구간 사이의 OS사용 추세를 볼 수 있어 성능 분석 시 참고자료로 사
용할 수 있다
25
2. 상세 보고서
5. Service Statistics
■ 리스너를 이용하여 DB에 접속한 경우
– SERVICE_NAMES 초기화 파라미터 및 TNESNAMES.ORA 파일
의 SERVICE_NAME 값에 의해 설정
■ 텔넷 등을 사용하여 DB에 직접 접속한 경우
– SYS$USERS로 설정
■ 백그라운드 프로세스
– SYS$BACKGROUND로 설정
26
2. 상세 보고서
6. Service Wait Class Stats
■ 서비스 별 발생한 대기 이벤트를 이벤트 클래스별로 보여준다
27
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ 스냅샷 구간 중 수행된 SQL에 대하여 9가지 측면의 보고서를 제공
- 단위 SQL 수행 정보 파악
- 문제 유발 SQL 파악
- SQL 추세 파악
■ 문제 SQL
- 해당 SQL을 사용하는 어플리케이션의 응답 속도가 목표 수준보다 낮
은 경우
- 다른 SQL의 수행 속도 및 자원사용에 악영향을 미치는 경우
28
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ 해당 SQL을 사용하는 어플리케이션의 응답 속도가 목표 수준보다 낮
은 경우
- SQL 튜닝
- DB 오브젝트 튜닝
- 어플리케이션 로직 수정
- 어플리케이션 목표 시간 변경
■ SQL 튜닝
- SQL 수행속도 점검만으로 문제 원인 파악 및 해결 가능
■ SQL 튜닝 적용 못하는 경우
- 처리하는 데이터가 많은 경우
- 복잡한 데이터 가공을 하는 경우
■ 오브젝트 튜닝
- 파티션, Materialized View 적용 등등
29
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ 어플리케이션 로직 수정
- 1개 이상의 SQL이 모여서 하나의 트랜잭션을 이루는 경우
- 명시적 커서를 오픈 시켜서 반복적인 페치로 데이터 처리
- 어플리케이션 명령어로 특정 SQL 반복 수행
30
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ 자신의 목표 수행 시간은 만족 시키나, 다른 SQL의 수행시간에 영향을 주
는 경우
- 과도하게 CPU를 점유하여 CPU 과부하를 초래하는 경우
- 과도하게 버퍼 캐시 I/O를 발생 시켜 읽어서 버퍼 캐시 사용 경합을 발
생시키는 경우
- 과도하게 디스크 I/O를 유발 시켜서 디스크 I/O속도와 버퍼 캐시 적중
률을 저하 시키는 경우
■ 해결 방법
- SQL 튜닝
- 문제 SQL 수행 시간 조정
- 시스템 증설
31
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL 추세 분석
- 시간의 경과가 SQL 수행에 미치는 영향도 파악
32
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Elapsed Time
■ 점검 항목
- Elap per Exec (s)
- Elapsed Time (s) 값과 CPU Time (s) 값의 차이
- Executions 과 % Total DB Time
33
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by CPU Time
■ 점검 항목
- CPU Time (s)
- CPU per Exec (s)
34
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Gets
■ 점검 항목
- Get per Exec
- Executions와 % Total
35
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Reads
■ 점검 항목
- Reads per Exec
- Executions와 % Total
36
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Executions
■ 점검 항목
- Executions
- Rows per Exec
37
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Parse Calls
38
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Sharable Memory
■ 점검 항목
- Sharable Mem (b)
39
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Version Count
■ 점검 항목
- Version Count
40
2. 상세 보고서
7. SQL 수행정보 단위 보고서
■ SQL ordered by Cluster Wait Time
■ 점검 항목
- CWT% of Elapsd Tim CWT% of Elapsd Tim
41
2. 상세 보고서
8. Instance Activity Stats
■ Instance Activity Stats 단위 보고서는 스냅샷 구간 중 DB에 수집된
통계 정보 수치를 보여준다
■ 통계 정보는 인스턴스 운영 시 특정 작업이 수행되면 작업과 관련된 통계
수치가 증가하며, 그러므로 스냅샷 구간의 인스턴스 상태 분석 시 사용
42
2. 상세 보고서
9. Instance Activity Stats - Absolute Values
■ 통계 정보 중 특정 파라미터와 관련된 통계에 대한 수치를 보여준다
43
2. 상세 보고서
10. Instance Activity Stats - Thread Activity
■ 리두 로그 스위치 횟수를 보여준다
■ 로그 스위치 발생 시 쓰레드 체크포인트가 발생
■ 쓰레드 체크포인트는 체크포인트 큐와 파일 큐에 링크된 더티 버퍼를 내려
쓰고, 모든 데이터 파일의 헤더를 갱신 시키므로 많은 I/O가 발생하게 된다
■ 너무 잦은 로그 스위치 발생은 I/O 경합으로 이어질 수 있다.
44
2. 상세 보고서
10. Instance Activity Stats - Thread Activity
■ 리두 로그 버퍼 관련 대기 이벤트
- log buffer space
- log file sync
- log file switch completion
- log file parallel write
45
2. 상세 보고서
11. Tablespace IO Stats
■ 특정 테이블스페이스 I/O 성능이 낮게 나온다면 다음을 점검
- 테이블스페이스를 구성하는 데이터 파일들이 특정 볼륨 그룹으로 집중되어
있는가?
- 테이블스페이스를 구성하는 데이터 파일들의 논리 볼륨은 스트라이핑 구성
을 가지는가?
- 업무 특성상 해당 테이블스페이스에 존재하는 세그먼트들의 디스크 I/O
비중이 높은가?
- 테이블스페이스에 저장된 세그먼트에 경합이 발생하고 있는가?
46
2. 상세 보고서
12. File IO Stats
■ 테이블스페이스의 I/O 집중은 크지 않은데 특정 데이터 파일에 대해서만
I/O 가 집중되는 경우
→ 물리적인 I/O 발생이 높은 세그먼트의 익스텐트가 특정 데이터 파일에
집중적으로 할당 되어 있기 때문인 것으로 보아야 한다
47
2. 상세 보고서
12. File IO Stats
48
2. 상세 보고서
13. Buffer Pool Statistics
■ 각 버퍼 풀의 크기의 적절성을 판단하고 각 버퍼 풀 영역이 효율적으로 사용
되고 있는 지를 확인
■ 100 X (1 – (PHYSICAL_READS / (DB_BLOCK_GETS +
CONSISTENT_GETS)))
■ 버퍼 캐시 적중률 개선 방안
- 적절한 버퍼 캐시 크기 설정
- I/O 발생량이 높은 SQL 튜닝
49
2. 상세 보고서
13. Buffer Pool Statistics
■ 버퍼 캐시 관련 이벤트
- buffer busy wait, read by other sessions
- 해결 방법
○ 핫 블록 경합 해결
○ 자동 세그먼트 공간 관리(ASSM) 사용
50
2. 상세 보고서
13. Buffer Pool Statistics
■ 버퍼 캐시 관련 이벤트
- gc buffer busy
- buffer busy waits 및 read by other session 과 동일한 원인
- free buffer waits, write complete waits
- 해결 방법
○ DBWR 수 증가
○ 디스크 성능 개선
51
2. 상세 보고서
14. Instance Recovery Stats
■ 인스턴스 복구 관련 정보를 보여준다
52
2. 상세 보고서
15. Buffer Pool Advisory
■ 버퍼 캐시 크기 변경에 따른
영향도를 파악
53
2. 상세 보고서
16. PGA Aggr Summary
■ 스냅 구간 중 PGA 사용 효율을 보여준다
54
2. 상세 보고서
17. PGA Aggr Target Stats
■ 스냅샷 시작과 끝 시점의 PGA 사용 정보를 보여준다
55
2. 상세 보고서
18. PGA Aggr Target Histogram
■ 스냅샷 구간 중 SQL 작업 영역의 사용 현황을 파악할 수 있게 해준다
56
2. 상세 보고서
19. PGA Memory Advisory
■ PGA 크기 변경 시 예상되는 사용 효율을 나타낸다
57
2. 상세 보고서
19. PGA Memory Advisory
■ 500 ~ 900MB 사이가 비용 대비 효과가 가장 크다
58
2. 상세 보고서
20. Shared Pool Advisory
■ 공유 풀 크기에 따른 영향도를 보여준다
59
2. 상세 보고서
21. SGA Target Advisory
■ SGA 크기에 따른 영향도를 보여준다
60
2. 상세 보고서
22. Java Pool Advisory
■ Java Pool 크기에 따른 영향도를 보여준다
61
2. 상세 보고서
23. Buffer Wait Statistics
■ 데이터 블록 클래스별로 경합이 발생한 대기 이벤트가 발생한 횟수를 보여
준다
62
2. 상세 보고서
23. Buffer Wait Statistics
■ 블록 클래스 별 해결 방법
- data block
- segment header
- 1st level bmb, 2nd level bmb, 3rd level bmb
- undo header block
- undo block
63
2. 상세 보고서
24. Enqueue Activity
■ 엔큐 락 수행 통계를 타입 별로 보여준다
■ Wait Stat 단위 보고서에서도 확인할 수 있다
64
2. 상세 보고서
24. Enqueue Activity
■ Wait Events 단위 보고서에서 엔큐 관련 대기 이벤트가 상위에 위치 함
■ 엔큐 관련 통계 및 대기 이벤트 수치가 정상일 때와 비교하여 높은 수치로
증가
■ 특정 SQL 수행 시 엔큐 관련 대기 이벤트가 높은 수치로 발생
65
2. 상세 보고서
24. Enqueue Activity
■ HW-Segment High Water Mark (enq: HW – contention)
- HWM 이동 시 락 경합 발생
- 해결 방법
○ 자동 세그먼트 공간 관리 사용
○ 익스텐트 크기를 크게 설정
○ 익스텐트 수동 할당
■ TM-DML (enq: TM – contention)
- 기본/외래 키가 설정한 테이블에서 외래 키에 인덱스가 생성되지 않은 경우
- DML을 수행하려고 하는 테이블에 병렬 DML 및 DIRECT INSERT를 수행
- LOCK 명령으로 사용자가 명시적으로 테이블 락 적용
- 인덱스 생성, 테이블 변경 등 세그먼트 변경 작업 수행
- 해결방법
○ 문제 원인 세션의 작업이 종료 될 때까지 대기
○ 문제 원인 세션 KILL
66
2. 상세 보고서
24. Enqueue Activity
■ TX-Transaction (row lock contention) (enq: TX - row lock
contention)
- 서로 다른 세션이 같은 데이터를 UPDATE, DELETE 하려는 경우
- 유니크 인덱스가 설정된 칼럼에 서로 다른 세션이 같은 데이터를 INSERT 하
려는 경우
- 비트맵 인덱스가 설정된 칼럼에 과도한 DML 부하가 발생하는 경우
- 해결 방법
○ 행 락을 획득하고 있는 세션 KILL
○ 다른 세션의 트랜잭션 완료 시까지 대기
○ 비트맵 인덱스 문제 해결
67
2. 상세 보고서
24. Enqueue Activity
■ TX-Transaction (index contention) (enq: TX - index
contention)
- B*Tree 인덱스 구조
68
2. 상세 보고서
24. Enqueue Activity
■ TX-Transaction (index contention) (enq: TX - index
contention)
- B*Tree 인덱스 INSERT
69
2. 상세 보고서
24. Enqueue Activity
■ TX-Transaction (index contention) (enq: TX - index
contention)
- 발생 원인
○ 인덱스 분기
○ Right Growing Index
- 해결 방법
○ 인덱스 블록 크기 확장
○ 파티션 적용
○ 더미 데이터 INSERT 후 삭제
○ 역 방향 키 인덱스(Reverse Key Index)로 전환
○ 해시 파티션 적용
○ 인덱스 칼럼 추가
70
2. 상세 보고서
24. Enqueue Activity
■ TX-Transaction (allocate ITL entry) (enq: TX - allocate ITL
entry)
- 해결 방법
○ INITRANS 옵션 조정
■ US-Undo Segment (enq: US – contention)
■ WF-AWR Flush (enq: WF – contention)
71
2. 상세 보고서
25. Undo Segment Summary
■ 언두 세그먼트 사용 통계를 보여 준다
■ 언두 세그먼트 튜닝 목표
- ORA-1555 snapshot too old 에러 발생 최소화
- 트랜잭션 양에 맞는 충분한 언두 테이블스페이스 확보
- 언두 관련 대기 이벤트 최소화
72
2. 상세 보고서
26. Latch Activity
■ 렛치 사용과 관련된 통계 정보를 보여준다
■ 렛치 실패 영향도
- 렛치 획득 실패로 인한 성능 저하
- CPU 경합 유발
73
2. 상세 보고서
27. Latch Sleep Breakdown
■ 렛치 통계 정보를 스핀 발생량 기준으로 보여준다
■ 렛치 경합 해결 방법
- _SPIN_COUNT 조정
- 렛치 경합 원인 해결
74
2. 상세 보고서
27. Latch Sleep Breakdown
■ 렛치 경합 원인 해결
- cache buffers chains (latch : cache buffers chains)
- cache buffers lru chain (latch : cache buffers lru chain)
- In-memory undo (latch: In-memory undo)
- library cache (latch: library cache)
- shared pool (latch: shared pool)
- row cache object (latch: row cache objects)
- redo allocation (latch : redo allocation)
- redo copy (latch : redo copy)
- redo writing (latch : redo writing)
75
2. 상세 보고서
28. Latch Miss Sources
■ 렛치 획득을 실패한 정확한 위치를 보여준다
76
2. 상세 보고서
29. Parent Latch Statistics
■ 부모 렛치의 통계 정보를 보여준다
77
2. 상세 보고서
30. Child Latch Statistics
■ 자식 렛치의 통계 정보를 보여준다
78
2. 상세 보고서
31. Segments by Logical Reads
■ 버퍼 캐시 I/O 발생 상위 오브젝트를 보여준다
79
2. 상세 보고서
32. Segments by Physical Reads
■ 디스크 I/O 발생 상위 오브젝트를 보여준다
80
2. 상세 보고서
33. Segments by Row Lock Waits
■ 행 락 발생 상위 오브젝트를 보여준다
81
2. 상세 보고서
34. Segments by ITL Waits
■ enq: TX - allocate ITL entry 대기 이벤트를 발생시키는 행락 발생
상위 오브젝트를 보여준다
82
2. 상세 보고서
35. Segments by Buffer Busy Waits
■ buffer busy waits 대기 이벤트 발생 관련 오브젝트를 보여준다
83
2. 상세 보고서
36. Segments by Global Cache Buffer Busy
■ gc buffer busy 대기 이벤트 발생 관련 오브젝트를 보여준다
84
2. 상세 보고서
37. Segments by CR Blocks Received
■ 글로벌 읽기 일관성 버퍼 캐시의 수신 횟수로 내림차순 정렬하여 보여준다
85
2. 상세 보고서
38. Segments by Current Blocks Received
■ 글로벌 현재 버퍼 캐시의 수신 횟수로 내림차순 정렬하여 보여준다
86
2. 상세 보고서
39. Dictionary Cache Stats
■ 공유 풀의 로우 캐시 영역
사용 통계정보를 보여준다
■ 공유 캐시 영역을 확장하기
위해서는 공유 풀 전체 크기
를 늘려줘야 한다
■ 우선 하드 파스 문제를 해결
하고 공유 풀 크기를 늘려가
면서 로우 캐시의 적중률을
기준으로 공유 풀의 크기를
결정하여야 한다
87
2. 상세 보고서
40. Dictionary Cache Stats (RAC)
■ RAC 관련 로우 캐시 영역 사용 통계정보를 보여준다
88
2. 상세 보고서
41. Library Cache Activity
■ 라이브러리 캐시의 통계 정보를 보여준다
■ 라이브러리 캐시에 저장된 오브젝트 타입에 따라서 네임스페이스가 분류된다
■ OLTP 시스템에서는 Miss 율은 5% 이하의 최대한 낮은 값을 가져야 한다
■ 리아브러리 캐시 관련 이벤트
- library cache lock, library cache pin
89
2. 상세 보고서
42. Library Cache Activity (RAC)
■ 라이브러리 캐시의 통계 정보를 보여준다
■ 라이브러리 캐시에 저장된 오브젝트 타입에 따라서 네임스페이스가 분류된다
■ OLTP 시스템에서는 Miss 율은 5% 이하의 최대한 낮은 값을 가져야 한다
■ 리아브러리 캐시 관련 이벤트
- library cache lock
- library cache pin
90
2. 상세 보고서
43. Process Memory Summary
■ 프로세스 카테고리별로 할당 받은 PGA 메모리의 크기를 확인할 수 있다
91
2. 상세 보고서
44. SGA Memory Summary
■ SGA의 각 영역 크기 확인
92
2. 상세 보고서
45. SGA breakdown difference
■ SGA 각 풀 영역에 대한
free memory 뿐만 아니
라 각 세부 영역별로 할당된
크기를 확인할 수 있다
93
2. 상세 보고서
46. Resource Limit Stats
■ 최대 사용 리소스 개수가 한계 리소스 개수의 80%이상 사용된 리소
스를 보여준다
94
2. 상세 보고서
47. init.ora Parameters
■ 초기화 파리미터 설정값을 보여준다
95
2. 상세 보고서
47. Global Enqueue Statistics
■ RAC 앤큐 락 관련 통계 수치를 보여준
96
2. 상세 보고서
48. Global CR Served Stats
■ 읽기 일관성 블록의 캐시 퓨전 관련 통계 정보를 보여준다
97
2. 상세 보고서
49. Global CURRENT Served Stats
■ 현재 블록의 캐시 퓨전 관련 통계 정보를 보여준다
98
2. 상세 보고서
99. Global Cache Transfer Stats
■ 캐시 퓨전관련 통계 수치를 보여준다
99
AWR DB 보고서 분석 사례
연구
100
2. 상세 보고서
INSERT 과부하로 SQL 성능 저하 발생
■ 성능 저하 어플리케이션을 정확히 파악하고 있음
■ enqueue 렛치 경합이 발생함
■ 특정 시간대에만 렛치 경합이 발생하며 성능이 저하 됨
101
2. 상세 보고서
INSERT 과부하로 SQL 성능 저하 발생
■ 성능 저하 어플리케이션을 정확히 파악하고 있음
■ enqueue 렛치 경합이 발생함
■ 특정 시간대에만 렛치 경합이 발생하며 성능이 저하 됨
102
2. 상세 보고서
INSERT 과부하로 SQL 성능 저하 발생
103
2. 상세 보고서
INSERT 과부하로 SQL 성능 저하 발생
104
2. 상세 보고서
SQL PLAN 변경으로 버퍼 캐시 I/O가 대량 발생하며 성능 저하
105
2. 상세 보고서
SQL PLAN 변경으로 버퍼 캐시 I/O가 대량 발생하며 성능 저하
106
2. 상세 보고서
SQL PLAN 변경으로 버퍼 캐시 I/O가 대량 발생하며 성능 저하
107
2. 상세 보고서
SQL PLAN 변경으로 버퍼 캐시 I/O가 대량 발생하며 성능 저하
108
2. 상세 보고서
SQL PLAN 변경으로 버퍼 캐시 I/O가 대량 발생하며 성능 저하
109
2. 상세 보고서
서로 다른 배치 작업 동시 수행으로 인한 성능 저하
110
2. 상세 보고서
서로 다른 배치 작업 동시 수행으로 인한 성능 저하
111
2. 상세 보고서
서로 다른 배치 작업 동시 수행으로 인한 성능 저하
112
2. 상세 보고서
서로 다른 배치 작업 동시 수행으로 인한 성능 저하
■ 상위 10개 테이블에 로우 캐시 렛치 경합이 집중되고 있음
■ 일 배치 SQL에서 로우 캐시 렛치 경합 집중적으로 발생하고 있음
■ 일 배치 SQL은 로우 캐시 렛치 경합이 집중해서 발생하는 상위 10개
테이블(이하 상위 10개 테이블)을 검색 하거나 DML작업을 발생 시킴
■ 일 배치 SQL이 검색 및 변경하는 테이블의 데이터의 증가 폭은 크지
않음
이벤트가 집중되는 상위 10개 테이블의 특성을 파악하기 위해 각 어플리
케이션 담당자에게 물어 본 결과 다음과 같은 특징을 찾아냄
■ 해당 테이블들은 업무시간 중 DML이 빈번히 발생하는 주요 테이블임
.
■ 최근 들어서 데이터의 증가로 한 트랜잭션이 50 ~ 200건 이상 변경
시키는 경우가 많이 증가하였음
113
2. 상세 보고서
서로 다른 배치 작업 동시 수행으로 인한 성능 저하
114
2. 상세 보고서
지연된 블록 크린 아웃으로 인한 배치 작업 성능 저하
115
2. 상세 보고서
지연된 블록 크린 아웃으로 인한 배치 작업 성능 저하
116
2. 상세 보고서
지연된 블록 크린 아웃으로 인한 배치 작업 성능 저하
■ 상위 10개 테이블에 로우 캐시 렛치 경합이 집중되고 있음
■ 일 배치 SQL에서 로우 캐시 렛치 경합 집중적으로 발생하고 있음
■ 일 배치 SQL은 로우 캐시 렛치 경합이 집중해서 발생하는 상위 10개
테이블(이하 상위 10개 테이블)을 검색 하거나 DML작업을 발생 시킴
■ 일 배치 SQL이 검색 및 변경하는 테이블의 데이터의 증가 폭은 크지
않음
또한 이벤트가 집중되는 상위 10개 테이블의 특성을 파악하기 위해 각
어플리케이션 담당자에게 물어 본 결과 다음과 같은 특징을 찾아 내었다.
■ 해당 테이블들은 업무시간 중 DML이 빈번히 발생하는 주요 테이블임
.
■ 최근 들어서 데이터의 증가로 한 트랜잭션이 50 ~ 200건 이상 변경
시키는 경우가 많이 증가하였음
117
2. 상세 보고서
지연된 블록 크린 아웃으로 인한 배치 작업 성능 저하
118