sql_tuning
Section4. 오라클 메모리 구조 및 SGA 개요
오쉬
2023. 11. 17. 17:35
728x90
반응형
[출처: 오라클 성능 분석과 인스턴스 튜닝 핵심 가이드]
Oracle Memory Structure
- Shared Memory
- 매우 많은 서버 프로세스가 동시에 메모리 자원을 공유 (SGA: Shared Global Area)
- Non Shared Memory
- 각 서버 프로세스가 개별 메모리 할당 (PGA: Program Global Area)
- 오라클의 메모리 활용 전략
- Disk I/O를 최대한으로 줄일 수 있는가?
- 동시에 많은 프로세스에서 최대한 효율적으로 자원할당을 할 것인가?
- 시스템 안정성을 어떻게 유지할 것 인가?
Oracle SGA 의 개요
- Database Buffer Cache: Disk I/O의 영향도를 줄이기 위해 데이터 파일의 데이터 블록을 메모리로 Copy
- Shared Pool: 사용자들간에 SQL 및 SQL 실행 계획을 공유하기 위한 메모리 공간
- Redo Log Buffer: 데이터 변경사항 (DML 발생 시) 정보를 가지며 Redo Log File에 Write 되기 이전에 Memory에 먼저 Write 되는 영역
- Large Pool: Parallel Query 메시징 또는 대용량의 메모리 할당이 필요한 경우 사용 됨.
- Java Pool: Java Object 에 대한 메모리 영역
- Stream Pool: Data 복제 등을 위한 Stream 사용 영역
Instance 와 Database 에 대한 용어 정의
- Instance란?
- Background Process와 SGA 메모리 영역을 일컫는다. 따라서 Instance를 시작하게 되면 SGA 영역을 할당하고 Background Process 를 구동시키게 된다.
- Database란?
- 데이터베이스를 저장하는 물리적 영역이라고 할 수 있다. dbf 파일, control 파일, log 파일 등 데이터를 저장되어 있는 물리적 공간이라고 생각하면 된다.
728x90
반응형