TIL - 오라클 메모리 구조

Yuni·2023년 10월 10일
0

TIL

목록 보기
7/8

SGA(System Global Area)

모든 사용자가 공유 가능

PGA(Program Global Area/Private Global Area)

사용자마다 공유하지 않고 개별적으로 사용

UGA(User Global Area)

사용자 세션과 관련된 메모리 영역, DB 서버 방식에 따라 SGA 또는 PGA 내에 존재

Dedicated server vs Shared server

두 서버 모두 PGA의 역할은 동일하나, PCA 내부 UGA 위치가 다르다.

Memory AreaDedicated ServerShared Server
Nature of session memoryPrivateShared
Location of the persistent areaPGASGA
Location of part of the runtime area for SELECT statementsPGASGA
Location of the runtime area for DML/DDL statementsPGAPGA

유저 프로세스

DB에 접속하기 위해 프로그램 실행 시 프로그램을 수행한 클라이언트에 유저 프로세스가 생성되며 해당 유저 프로세스는 DB에 접속하는 순간 모든 정보를 서버 프로세스에게 전달한다.

해당 유저 프로세스에서 특정 SQL을 수행하면 유저 프로세스는 해당 SQL과 깉나 정보를 서버 프로세스에 전달하고 서버 프로세스의 답변을 기다린다.

서버 프로세스

유저 프로세스로부터 해당 SQL과 기타 정보를 전달 받은 서버 프로세스가 요청을 수행하기 위해 필요한 작업을 수행할 때 요청 및 기타 정보를 저장하기 위해 자신만의 메모리 공간인 PGA를 이용한다.

SQL Work Area

  • 비트맵 생성 영역
  • 비트맵 병합 영역
  • 정렬 공간
  • 해쉬 공간

UGA

  • 세션 메모리

Private SQL Area

  • 영구 영역
  • 런타임 영역
profile
Look at art, make art, show art and be art. So does as code.

0개의 댓글