본문 바로가기

Backend/Database

[Oracle] 오라클의 구조

728x90

# 논리적 구성요소
- 데이터 블록(data block)
- 익스텐트(extent)
- 세그먼트(segment)
- 테이블스페이스(tablespace)

# 물리적 구성요소
- 데이터파일
- 컨트롤 파일
- redo 로그 파일
- 설정 파일
- alert/trace 로그 파일
- 백업파일


<논리적 구성요소>

1) 데이터 블록(data block)

- 데이터가 저장되는 가장 작은 단위

- 저장해야 할 데이터가 늘어나면 데이터 블록의 배수로 저장 공간을 확보하여 저장한다.

- 데이터 블록 크기는 db_block_size라는 설정 값에 저장됨.

- 블록 크기 확인 명령 

 SQL > show parameter db_block_size 

 

데이터블록 크기 확인

 # 블록 크기를 확인하는 다른 방법 

 - 설정 정보는 특정 테이블에 저장되는데 그 테이블 이름이 v$parameter이다. 여기서 확인이 가능하다.

 

 SQL > desc v$parameter

 SQL > select name, value from v$parameter where name ='db_block_size';

데이터 블록 크기 확인 2

2) 익스텐트(extent)

- 데이터 블록 다음 단계의 논리적 데이터 저장 공간

- 연속적인 여러 개의 데이터 블록이 모여서 하나의 익스텐트를 구성함.

- 익스텐트가 모여 "세그먼트"를 구성함.

 

3) 세그먼트(sement)

- 여러 개의 익스텐트들이 모여 하나의 세그먼트를 구성

- 하나의 세그먼트에는 같은 종류의 데이터가 저장됨.

- 하나의 세그먼트는 하나의 테이블 스페이스에 저장됨.

- 하나의 세그먼트를 구성하는 익스텐트들은 디스크상 연속적이지 않을 수 있음.

 

# 데이터 세그먼트 : 테이블이 저장되는 세그먼트

# 인덱스 세그먼트 : 인덱스(index)의 정보가 저장되는 세그먼트

 

데이트블록, 익스텐트, 세그먼트의 관계

4) 테이블 스페이스 (table space)

- 하나의 데이터베이스는 "오라클" 의 논리적 저장 단위인 "테이블 스페이스" 들로 구성된다.

- 하나의 테이블 스페이스에는 하나 이상의 세그먼트를 포함한다.

 


<물리적 구성요소>

 

1) 데이터 파일 (datafile)

 

데이터파일과 테이블스페이스의 관계

 

- 오라클에서 관리하는 데이터가 실제로 저장되는 디스크 상의 파일

 

- Oracle -> oradata/orcl 폴더의 데이터 파일들이 있다.

물리적 데이터 파일

 

# orcl폴더의 데이터 파일의 역할 

SYSAUX01.DBF, SYSTEM01.DBF : 오라클 시스템 관리를 위해 만들어진 데이터 파일

TEMP01.DBF : 임시 데이터들을 저장하기 위한 데이터 파일

USER01.DBF : 사용자 계정을 위해 만들어진 데이터 파일

EXAMPLE01.DBF : 예제 테이블들을 저장하고 있는 데이터 파일

UNDOTBS01.DBF : 데이터에 문제가 발생했을 때 복구를 위한 정보가 있는 데이터 파일

 

2) 컨트롤 파일 (control file)

- 데이터베이스의 물리적 구조, 데이터베이스 이름, redo 로그파일들의 위치정보, 데이터베이스 생성 시간, 현재 로그 번호, 체크포인트 정보 등이 저장된 파일.

 

3) Redo 로그파일

- 데이터베이스의 변경 내역을 저장하는 파일

- 데이터 변경 과정에서 장애가 발생하여 변경내용이 데이터베이스에 반영되지 못했을 경우 온라인 redo 로그 파일을 이용하여 복구한다.

 

4) 설정 파일 (parameter file)

- 데이터베이스와 데이터베이스 서버와 관련된 설정 정보 등이 저장됨.

 

5) alert/trace 로그 파일

- 오라클 서버 내부에서 오류가 발생할 경우 그 오류에 대한 정보나 메시지를 저장하는 파일이다.

- 오라클 오류가 발생할 경우 오류에 대한 정보나 메시지를 저장하는 파일을 trace 파일이라고 한다.

- trace 파일에 저장된 오류나 메시지를 발생 시간 순서별로 저장한 것을 alert 로그 파일이라고 한다.

 

 

# 참고 문서

book.interpark.com/amway/product/BookDisplay.do?_method=detail&sc.shopNo=0000400000&sc.prdNo=265835926www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788993163230

 

Understanding of Database(데이터베이스의 이해) - 교보문고

▶ 이 책은 데이터베이스에 대해 다룬 이론서입니다. 데이터베이스의 기초적이고 전반적인 내용을 학습할 수 있도록 구성했습니다.

www.kyobobook.co.kr

 

728x90