11._Shared_Pool
2012.03.19 09:19
11. Shared Pool
Shared Pool = Dictionary Cache + Library Cache(1) 딕셔너리 캐시
오라클의 딕셔너리 정보를 저장해두는 캐시 영역으로 입출력 특성때문에 ‘row cache’라고도 부름.※ sequence cache 옵션
nocache 옵션으로 시퀀스를 운용할 경우 nextval 를 호출할 때 마다 row cache에 접근
이 부분에서도 경합이 발생할 수 있기 때문에 cache 옵션을 주어서 이 부분의 경합을 해소.
default value = 20
v$rowcache 의 hitratio 를 모니터링하여 수치가 낮게 나온다면 shared pool 사이즈를 증가시킬 것을 고려.
v$rowcache TYPE=’PARENT’ 엔트리와 v$latch_children ‘row cache objects’래치 개수를 조회하면 항상 값이 일치함. row cache에 관리되는 엔트리 각가에 대해 하나의 래치가 할당돼 있음을 짐작.
(2) 라이브러리 캐시
사용자가 실행한 SQL과 execution plan 을 저장하는 캐시 영역.hard parsing : 쿼리 구문 분석, 문법 오류 및 실행 권한 체크, 최적화, 실행계획 생성, SQL 실행 엔진이 실행할 수 있는 형태로 포매팅.
▶ 최적화가 hard parsing 중 시간이 가장 오래 걸리는 작업.
반복적인 하드파싱을 최소화하기 위해서 만든 캐시 공간.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
46 | 7._Result_캐시 | 운영자 | 2012.05.27 | 4156 |
45 | 2._Memory_vs._Disk_IO | 정찬호 | 2012.05.23 | 4166 |
44 | 10._Dynamic_SQL_사용_기준 | 남송휘 | 2012.05.07 | 4275 |
43 | 5._바인드_변수의_중요성 | 시와처 | 2012.04.23 | 4299 |
42 | 1._Call_통계 | 정찬호 | 2012.05.07 | 4310 |
41 | 5장._데이터베이스_Call_최소화_원리 | 운영자 | 2012.05.07 | 4321 |
40 | 1._Explain_Plan | 남송휘 | 2012.03.26 | 4328 |
39 | 2._User_Call_vs._Recursive_Call | 정찬호 | 2012.05.07 | 4427 |
38 | 12._데이터베이스_성능_고도화_정석_해법 | 남송휘 | 2012.04.09 | 4573 |
37 | 5._V$SYSSTAT | AskZZang | 2012.04.04 | 4598 |
36 | 6._바인드_변수의_부작용과_해법 | 시와처 | 2012.04.23 | 4645 |
35 | 1._트랜잭션_동시성_제어 | AskZZang | 2012.03.20 | 4667 |
34 | 5._Fetch_Call_최소화 [1] | 박영창 | 2012.05.15 | 4806 |
33 | 1_장._오라클_아키텍처 | AskZZang | 2012.03.02 | 4989 |
32 | 3._라이브러리_캐시_구조 | dasini | 2012.04.06 | 5232 |
31 | 8._애플리케이션_커서_캐싱 | 박영창 | 2012.04.22 | 5240 |
30 | 2장._트랜잭션과_Lock | AskZZang | 2012.03.17 | 5251 |
29 | 4._Redo | 남송휘 | 2012.03.12 | 5379 |
28 | 9._Static_vs._Dynamic_SQL | 남송휘 | 2012.05.07 | 5426 |
27 | 7._Consistent_vs._Current_모드_읽기 | 시와처 | 2012.03.18 | 5499 |