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

설정

트랙백

댓글