글
PGA / SGA
Database/Oracle
2020. 5. 26. 18:03
메모리는 PGA(사용자 메모리) , SGA(시스템 메모리) 로 나뉨
PGA
- 정렬 공간(Sort Area) or SQL 작업 공간(Work Area)
Order by, Group by
정렬공간만 사용 -메모리 정렬
메모리가 부족하면 디스크 이용
- 세션 정보(Session Information)
유저 프로세스의 세션 정보
- 커서 상태 정보(Cursor State)
Parsing(파싱) 정보 저장
파스 정보 저장되어 있는 공유풀의 물리적 위치 주소 저장
- 변수 저장 공간(Stack Space)
SQL에 Bind Variable(바인드 변수) 사용시 바인드 변수 저장
SGA
- 공유 풀(Shared Pool)
SGA 관리 매커니즘이 저장됨. 오라클 파라메터 정보 (session=100, process =150)
SGA를 관리하는 매커니즘, 파라메터 정보, 실행된 SQL, SQL 분석/실행 정보 및 오라클 오브젝트 정보 지정
라이브러리 캐쉬(Library Cache) | 고정 영역(Permanent Area) |
동적 영역(Dynamic Area) | |
데이터 딕셔너리 캐쉬(Data Dictionary Cache) |
- 라이브러리 캐쉬 : 유저가 생성한 SQL, 오라클 내부 SQL,(Recursive SQL), SQL에 대한 분석 정보(Parse Tree), 실행 계획(Execution Plan)
- 고정 영역 : 자동 할당 (지정 불가) / 공유 SQL 영역
- 동적 영역 : SHARED_POOL_SIZE 로 지정 / 공유 PL/SQL 영역
- 데이터 딕셔너리 캐쉬 ( = 로우 캐쉬 (row cache))
테이블, 인덱스, 함수 및 트리거 등 오라클 오브젝트 정보 및 권한
- 데이터 버퍼 캐쉬(Data buffer Cache)
가장 큰 사이즈
LRU로 관리됨
> 서버 프로세스
데이터 버퍼 캐쉬 ---------- 디스크
< DBWR
재활용<기본<고정
- 리두 로그 버퍼(Redo Log buffer)
서버 프로세스가 접근
리두 로그 버퍼 -----LGWR------>(리두 로그 파일) --> 디스크
- 대형 풀(Large Pool)
UGA
RMAN
병렬 프로세스
I/O 슬레이브 프로세스
- 자바 풀(Java Pool)
필요에 따라 지정해서 사용
자바 명령을 구문분석할 경우 사용하는 메모리 공간이므로 자바를 성치하고 사용할 경우 지정
'Database > Oracle' 카테고리의 다른 글
ETL (Extract, Transform, Load) (0) | 2020.05.15 |
---|