Oracle Server Architecture 용어 정리


오라클 데이터베이스는 크게 메모리의 영역과 Storage 부분으로 나뉜다.
Memory (메모리)
메모리부분은 SGA 와 Background Process 로 나뉜다. 이 둘은 Database 가 구동 되었을때 메모리에 존재하게 되며 이를 보고 Oracle Instance 라고 한다. 


SGA(System Global Area)
SGA는 Server Process 나 Background Process 같은 많은 Process 들이 공통적으로 사용하는 메모리 영역이다. 이 메모리 영역은 또 필수적인 Shared Pool, Database Buffer cache Redo log buffer 와 그외 Large Pool, Java Pool, Stream Pool 등이 있다.  공유 메모리라고도 한다.
  
 또 메모리에는 SGA와 다른 PGA 라는 영역이 있다. PGA는 간단히 Server Process 나 Background Process 들이 개별적으로 사용하는 메모리 영역을 PGA 라고 한다. 
예를 들어 Server Process의 PGA에는 사용자의 Session 정보등을 가지고 있다.

Background Process
필수 Background Process 는  아래와 같다. 각각의 process 별 하는 역할을 간단히 알아보자.

SMON(System Monitor) 
 Instance Crash 상태를 복구 하는 Process 이다. Instance Crash 상태는 정전과 같은 상황에서 발생하는 비정상적인 종료가 일어났을때 발생한다. 
PMON(Process Monitor) 
 User Process 의 요청을 처리해주는 Server Process 를 생성하고 관리한다.
이 프로세서는 Server Process 가 종료되지 않고 좀비 프로세스가 되는 경우에 알아서 kill 을 하는등의 관리를 한다.
DBWn(Database Writer)
 DB Buffer Cache 에 있는 Dirty Buffer 들을 Database 에 내려쓰는 역할을 한다.
내려쓰는 시점은 다음과 같다.
1. Checkpoint 신호 발생
2. Dirty Buffer 가 어느정도 찼을때
3. Time outn 이 발생했을때
4. RAC ping 이 발생했을때
5. Tablespace 가 Read only 상태로 변경될 때
6. Tablespace가 offline 될때
7. Tablespace 가 begin backup 상태가 될때
8. Drop Table이나 Truncate Table 될때

CKPT(Checkpoint)
 Checkpoint 신호를 발생시킨다.
1. Shutdown 
2. Log Switch 발생시
3. Alter system Checkpoint 명령어를 이용시
LGWR(Log Writer)
Redo log buffer 에 있는 내용을 Redo log file 로 저장한다.
1. Commit 발생시
2. 버퍼가 1/3 이 찼을때
3. 번경량이 1M가  되었을때
4. 3초마다
5. DBW 가 내려쓰기 전에

Storage (Disk)
Storage는 디스크에 존재하는 파일로 Control File, Data File, Online Redo Log File, Parameter File 등이 있다.  




'Oracle > Architecture' 카테고리의 다른 글

[Storage - 3] Segment  (0) 2012.01.27
[Storage - 2] Extent  (0) 2012.01.27
[Storage - 1] Database Block  (0) 2012.01.26
SHUTDOWN > NOMOUNT > MOUNT > OPEN  (0) 2012.01.24
[10g] Redo Log 관리  (0) 2011.10.26