<오라클 메모리 종류>
PGA (Program Global Area)
데이터베이스에 접속하는 모든 유저에게 할당되는 가각의 서버 프로세스가 독자적으로 사용하는 오라클 메모리 영역
**PGA의 구체적인 구조
-정렬 공간(Sort Area)
-세션 정보 (Session Information)
-커서 상태 정보 (Cursor State)
-변수 저장 공간 (Stack Space)
SGA (System Global Area)
오라클이 데이터를 읽거나 변경하기 위해 사용하는 공용 메모리 영역
공유 풀 (Shared Pool)
SGA를 관리하는 메커니즘, 파라메터 정보, 실행된 SQL, SQL 분석/실행 정보 및 오라클 오브젝트 정보를 저장하는 메모리 공간
고정 영역 (Permanent Area)
오라클이 SGA를 관리하는 메커니즘 및 오라클 파라메터 정보가 저장
동적 영역 (Dynamic Area)
-라이브러리 캐쉬
데이터베이스에 접속한 유저가 실행한 SQL, 오라클이 내부적으로 사용하는 SQL(Recursive SQL), SQL에 대한 분석 정보(Parse Tree) 및 실행 계획(Execution Paln)이 저장
-데이터 딕셔너리 캐쉬
데이터 딕셔너리 캐쉬는 로우 캐쉬(Row Cache)라고도 부름
데이터 딕셔너리 캐쉬에는 테이블, 인덱스, 함수 및 트리거 등 오라클 오브젝트 정보 및 권한 등의 정보가 저장
**LRU 알고리즘 (Least Recently Used)
최근에 가장 적게 사용한 메모리 공간을 필요시 가장 먼저 사용하는 오라클 메모리 관리 방법
**구문 분석 (Parse)
해당 SQL에 대한 분석을 통해 실행할 수 있는 단계를 만드는 것
소프트 구문 분석 (Soft Parsing) : 공유풀에 저장된 정보를 재사용
하드 구문 분석 (Hard Parsing) : 재사용하지 못하고 다시 구문 분석을 수행
데이터 버퍼 캐쉬 (Data Buffer Cache)
오라클이 데이터를 읽고 수정하기 위해 디스크에 존재하는 데이터를 읽어 저장하는 메모리 공간
리두 로그 버퍼 (Redo Log Buffer)
오브젝트 및 데이터 변경 시 생성되는 로그를 저장하는 SGA 메모리 공간
대형 풀 (Large Pool)
대형 풀을 지정하게 되면 공유 풀의 부하를 감소시키게 됨
자바 풀 (Java Pool)
자바 명령을 구문 분석할 경우 사용하는 메모리 공간
[이미지=Oracle.com] 오라클 인스턴스와 데이터베이스
공유 메모리 자동 관리 (ASMM, Automatic Shared Memory Management)
오라클 10g의 새로운 기능으로 오라클이 업무 부하를 판단하여 공유 풀, 기본 데이터 버퍼 캐쉬, 대형 풀 및 자바 풀의 크기를 조정하는 기능
참고자료 : 책 《초보자를 위한 오라클 10g》 (정보문화사)
인용 이미지 출처 : http://docs.oracle.com/cd/E28271_01/server.1111/e25789/intro.htm#autoId23
-블로거. 이세진
'Database' 카테고리의 다른 글
오라클 액세스와 시스템 뷰 (0) | 2013.08.27 |
---|---|
오라클 프로세스 (0) | 2013.08.27 |
오라클 설치 (0) | 2013.08.26 |
데이터베이스 (0) | 2013.08.26 |