공부용 블로그

DataBase 아키텍처(오라클) 본문

설계/RDBMS

DataBase 아키텍처(오라클)

tomato212 2018. 11. 4. 16:13


크게 프로세스 / 디스크 영역(파일 구조) / 메모리 구조 로 나뉨




1. 프로세스


클라이언트와 통신하면서 클라의 각종 명령어를 처리하는 프로세스


서버 프로세스 + 백그라운드 프로세스



서버 프로세스


1) 전용 서버


2) 공유 서버 




백그라운드 프로세스 


서버 프로세스가 하는 일 외에 데이터 파일을 읽어서 DB 버퍼 캐시에 적재하는 일. Dirty 블록을 캐시에서 제거해 free 블록을 확보하는 일. Redo 로그 버퍼를 비우는 일 등 내부적으로 DB시스템이 잘 돌아가도록 해주는 프로세스




2. 디스크 영역 (파일 구조)


데이터 파일 + 임시 데이터 파일 + 로그 파일 



물리적으로 디스크 영역에는 데이터 베이스가 여러 데이터 파일들로 구성되어 있다. 


각각 데이터 데이터 파일은 여러개의 Block(단위)으로 구성되어 있다. 



table space (땅) - segment (건물) - extent (건물의 어느 한 층) - block (건물 어느 한 층의 사무실)


데이터베이스에서는 I/O를 블록 단위로 한다. 





3. 공유 메모리 영역 (메모리 구조)


공유 메모리 영역 + 프로세스 전용 메모리 영역 



공유 메모리 영역


공유 메모리 영역은 여러 프로세스가 동시에 액세스 할 수 있는 메모리 영역


SGA(System Global Area) 이라고 하며, DB 버퍼 캐시, 공유 풀, 로그버퍼, Large 풀, 자바 풀 등이 여기에 속해있다. 


- DB 버퍼 캐시



- 공유 풀(shared pool)


딕셔너리 캐시 (테이블 메타데이터 등) + 라이브러리 캐시 (SQL문, 실행 계획, 저장 프로시저 등)





프로세스 영역


프로세스 영역은 서버 프로세스가 가진 자신만의 메모리 영역으로 PGA(Process Global Area)라고 부르며, 


데이터를 정렬하고 세션과 커서에 대한 상태 정보를 저장하는 용도로 쓰인다. 













'설계 > RDBMS' 카테고리의 다른 글

In-Data Computing  (0) 2018.11.05
페이지 알고리즘  (0) 2018.11.04
DataBase가 생겨나게 된 배경  (0) 2018.11.03
RDBMS 후보군 검토 중 이해안가는 부분 - ing  (0) 2018.11.03
RDBMS 개념 익히기  (0) 2018.10.31