본문 바로가기
Database

[24/365]Oracle 메모리 구조

by 알 수 없는 사용자 2022. 4. 15.

안녕하세요! BTC 24/365입니다!!

오늘부터는 특정 DB에 관련된 내용을 전달해볼 예정이며,
이번 게시글에서는 DB 시장 점유율 1위의 'Oracle'에 대해서 알아보도록 하겠습니다!!


목차

1. PGA
2. SGA
3. Backgroud Process


우선 'Oracle'의 메모리 구조에 대해서 알아보겠습니다!

오라클의 메모리 구조는 크게 'PGA', 'SGA'로 구성되어 있습니다.

1. PGA (Program Global Area)
- 각각의 유저에 붙어서 공유되지 않고, private 하게 사용되는 메모리 공간
- Stack space & User Global Area로 구성
- Stack space : SQL 문장에 bind 변수를 사용 시 저장하는 공간
- UGA : 1. Sort area : order by, group by 등의 정렬을 수행하기 위한 공간
           2. Session information : 유저 IP 등의 유저에 대한 정보가 저장되는 공간

 

2. SGA (System Global Area)
- 모든 사용자가 공유하여 사용 가능한 메모리 공간
- 크게는 Shared Pool, Database Buffer Cache, Redo log buffer로 나뉜다

- Shared Pool : library cache와 dictionary cache가 있는 공간으로써 여러 구성요소를 저장
- Database Buffer Cache : 데이터 블록이 존재하는 공간
- Redo log buffer : 변경된 로그 정보가 들어 있는 공간

 

3. Backgroud process
- 오라클 서버가 시작되면 자동으로 시작되어 운영과 유지를 담당하는 프로세스
- Background process는 여러 종류가 있으며, 수시로 기존의 process가 없어지고 새로운 process가 생겨나기도 합니다.
- 오늘은 가장 중요하고 기본적인 process에 대해서 간략히 알아볼게요!!
(process와 메모리가 복잡하게 이어져 있기 때문에 상세한 설명은 추후에 하겠습니다!! 오늘은 기본적인 이론만!)

- DBWn : DB buffer cachedatadatafile로 저장시키는 프로세스
- LGWR : Redo log buffelogredo log file에 기록하는 프로세스
- ARCn :
Redo log buffelogredo log file에 기록하는 프로세스
- CKPT : DBWndatafile data를 저장하였는지 확인하는 프로세스
- Pmon :
Background process가 잘 돌아가는지 모니터링하는 프로세스
- Smon :
DB instance 전체 모니터링, crash recover를 위해 control, log, data 파일의 SCN 확인하여 recovery 진행
- RECO : 리커버리를 위한 프로세스

 





 

 

'Database' 카테고리의 다른 글

RDB에 대해서  (0) 2022.04.22
[24/365]Parsing의 정의와 종류  (0) 2022.04.22
DB의 종류와 특징  (0) 2022.04.14
데이터베이스 개요  (0) 2022.04.08
[24/365] 데이터 베이스 기초  (0) 2022.04.08

댓글