본문 바로가기
Database

[24/365] 논리적 물리적 구조

by BTC_김태훈 2022. 5. 2.

안녕하세요, BTC 24/365팀입니다.

이번 포스팅에서는 Oracle DB의 논리적 물리적 구조에 대해 알아보도록 하겠습니다.

 


1. Oracle DB 논리적 물리적 저장구조

2. Tablespace

3. Segment

4. Extent

5. Block


1. Oracle DB 논리적 물리적 저장구조

- DB 시스템마다 내부적으로 파일을 저장하고 관리하는 방식이 다르다.

- Oracle은 Tablespace, Segment, Extent, Data Block 형태로 나누어 관리한다.

2. Tablespace

- 여러 Segment들의 모임

- Tablespace는 DB의 논리적 저장 구조 중 가장 포괄적이고 넓은 범위를 가진 형태로서
   실제 DB 각각의 물리적 파일들은 Tablespace에 N:1 형태로 연결되어 있다.

- 여러 Segment들의 모임

- Tablespace와 물리적 파일이 1:1이면 Big Size Tablespace

- Tablespace와 물리적 파일이 1:N이면 Small Size Tablesapce

- 논리적 저장 구조와 실제 저장되는 경로나 파일이름 등의 물리적 저장 구조는 서로 영향을 미치지 않는다.

 

3. Segment

- 여러 Extent들의 모임

- Segmetn는 테이블에 해당하며 Data Segment, Index Segment, Temporary Segment,
  Undo Segment 종류로 나눠진다.

- Temporary Segment는 대용량 SQL문의 실행을 위해 임시 작업 여역이 필요할때 생성되며,
   SQL문이 실행되면 사라지며, 사용자가 지정할 수 있다.

- Undo Segment는 변경되기 전 데이터를 기록해두었다가 롤백시 되돌리는 역할을 한다.

 

4. Extent

- 하나 이상의 연속된 데이터 블록의 모임

- Segment에 대한 공간 할당 단위

- Extent는 반드시 하나의 Data File에만 존재 할 수 있다.

- Extent는 Segment의 생성이나 확장 등의 경우에 새로운 Extent가 할당되고, Segment가
  삭제되거나 Truncate 명령을 실행했을 때, 또는 수동 해제시 할당 해제된다.

 

5. Data Block

- Block은 오라클의 기본 I/O 단위로서 모든 데이터는 Block 단위로 이루어져 있다.

- DB에서 데이터를 검색할 때 아주 작은 데이터 하나만 찾기 위해서도 최소한 하나의
  Block을 읽어야한다.

- 데이터 블록 안에는 헤더 정보와 데이터 정보가 저장되어있다.

'Database' 카테고리의 다른 글

[24/365] Oracle DB 논리적 구조  (0) 2022.05.09
E-R 다이어그램  (0) 2022.05.04
RDB에 대해서  (0) 2022.04.22
[24/365]Parsing의 정의와 종류  (0) 2022.04.22
[24/365]Oracle 메모리 구조  (0) 2022.04.15

댓글