728x90
반응형

1. System Global Area 

 

Database Budder Cache : Disk I/O의 영향도를 줄이기 위해 Data File의 Data Block을 메모리에 가져다 놓는다.

Shared Pool : SQL 및 SQL 실행계획을 공유해서 같은 SQL의 Parsing은 권한 확인만 수행 하도록 만들어서 실행 속도를 높이도록 만든다. (Data Dictionary Cache를 활용해서 실행계획을 만들고 저장해서 공유한다.)

Redo Log Budder : 데이터 변경사항 (DML발샐시)정보를 가지며 Redo log file에 Write되기 이전에 Memory에 먼저 Write되는 영역 

Large Pool : Parallel Query 메시징 or 대용량의 메모리 할당이 필요한 경우 사용된다.

Java Pool : Java Object에 대한 메모리 영역 

Stream Pool : Data 복제 등을 위한 Stream 사용 영역 

 

2. Program Global Area

SQL Work Area : 정렬에 관련된 작업 Sort by, Group by 같은 정렬이 필요할 경우 or Hash join시 디스크 I/O를 감소 

Private SQL Area : SQL Runtime Memory Structure로서 Cursor & Data Fetch 및 SQL 바인드 변수 

 

 

 

 

 

반응형
728x90
반응형

1.프로세스 종류 

 

User Process : 우리가 SQL을 작성하기 위해서 Orange,Sqldeveloper 툴로 연결하는 프로세스를 말한다.

 

Orace Server Process : User Process가 Listener에 접속을 하고 이때 접속에 성공하면 Oracle Server Process가

하나 생성된다. 쉽게 생각해서 User Process와 Oracle Server Process는 1:1 관계로 생성된다.

 

Oracle Backgound Process : SMON,PMON,DBWR,CKPT,RECO,LGWR 등 매우 많은 프로세스가 존재한다.

 

2. 메모리 종류 

 

PGA (Program Global Area) : User Process의 연결로 생성된 Server Process에서 사용되는 Non Shared Memoey 

SGA (System Global Area) : 모든 Server Process가 접근할 수 있는 Shared Memory 

 

3. 데이터베이스 파일 

 

Datafile : 오라클 DB를 구성하는 주요 파일로서 주로 사용자 데이터가 저장된다.

Redo Log File : DML과 같은 데이터의 변경사항을 실시간 기록한다.

Control File : 오라클 Structure 주요 변경사항을 기록한다.

 

실행순서 및 동작 알아보기 

 

User Process : 집 PC에서 DB접속을 한다. 여러가지 DB 툴이나 애플리케이션 서버의 접속도 User Process를 생성한다.

Listener : 비밀번호등 여러 권한을 체크한다.

Server Process : 2번에서 이상이 없었다면 Server Process가 하나 만들어진다.(User Process와 Server Process는 1:1)

User Process : 사용자가 SELECT SQL을 만들어서 질의한다.

Server Process : Server Process는 우선 SGA에서 해당 SQL이 있는지 확인하고 있다면 실행계획을 다시 만들지 않고 바로 사용하며 Buffer Cache에 조회하려는 Data Block이 있다면 Data file에 접근 하지않고 메모리에서 결과를 바로 return 한다.

 

참고 : https://debaeloper.tistory.com/47?category=1019750

반응형

'IT > DB' 카테고리의 다른 글

[ORACLE] SGA와 PGA  (0) 2022.09.21
[DB] 문자열 타입 및 SQL문 예시 및 연습  (0) 2022.01.13
[DB]데이터타입과 키 타입  (0) 2022.01.07
데이터베이스의 기본 개념  (0) 2022.01.03
[SQL] SUBQUERY,NESTED SUBQUERY  (0) 2021.11.30

+ Recent posts