DB&SQL

오라클 데이터베이스 아키텍처

초롱불 2024. 5. 7. 12:42

학습목표 : SQL 튜닝 학습을 위해 오라클 아키텍쳐에 대한 기본적인 이해

DBA를 목표로 하는 것이 아닌 데이터를 주로 다루는 개발자로서 SQL튜닝 및 데이터베이스 관련 이슈를 처리하기 위한 능력을 향상하기 위하여 데이터베이스 아키텍쳐에 대한 학습을 하고자 한다.

 

 

1. SGA와 PGA

 

 

SGA : System Global Area, Shared GLobal Area

데이터베이스의 모든 세션과 공유되는 메모리 영역으로 데이터베이스 인스턴스가 시작될 떄 할당되면 종료될 때까지 유지

 

PGA : Program global Area

각 데이터베이스 세션에 독립적으로 할당되는 메모리 영역. 사용자 세션의 실행에 필요한 데이터와 제어정보 저장

 

 

SGA 상세:

 

 

SGA의 데이터가 PGA에 비하여 80% 이상 큰 메모리를 차지한다.

오라클은 성능향상을 위하여 캐시를 사용한다.

1. Buffer Cache : 데이터 블록을 단기간 저장하는 메모리 영역으로, 데이터베이스 성능을 향상시키기 위해 사용. 데이터베이스가 반복적으로 동일한 데이터에 접근할 때 디스크에서 매번 읽지 않고 버퍼 캐시에서 빠르게 읽어 성능을 개선

2. Redo Log Buffer : 데이터 변경 사항의 초기 상태를 기록하여 시스템 장애와 같은 예기치 않은 상황에서 원래 상태로 복구할 수 있게 함

3. Shered Pool : 라이브러리 캐시 등을 이용하여 데이터 베이스 성능 최적화와 SQL 명령어를 효율적으로 만듬

 

각각의 캐시에 대해서 다음 장에 보다 상세하게 정리하도록 하겠다.