반응형
오라클 세그먼트의 개념
- 세그먼트는 테이블, 인덱스, 클러스터와 같은 데이터베이스 객체들이 저장되는 공간을 나타냄.
- 세그먼트는 데이터블록(Data Block), 익스텐트(Extent), **테이블스페이스(Tablespace)**의 계층 구조 중에서 중간에 위치하며, 익스텐트들의 집합으로 이루어짐.
오라클 저장 구조의 계층
오라클의 저장 구조는 아래와 같은 계층으로 이루어짐.
- 데이터 블록(Data Block)
오라클 데이터베이스가 데이터를 저장하는 가장 작은 단위입니다. 데이터블록은 디스크 상의 물리적인 공간과 직접 대응. - 익스텐트(Extent)
여러 데이터블록들이 모여 익스텐트를 구성함.
익스텐트는 연속된 데이터 블록들의 집합으로, 오라클이 데이터베이스 객체에 더 많은 공간이 필요할 때 익스텐트 단위로 추가 공간을 할당. - 세그먼트(Segment)
익스텐트들이 모여 세그먼트를 형성. 테이블이나 인덱스 같은 데이터베이스 객체가 데이터를 저장할 때, 이 데이터를 저장하는 공간.
세그먼트는 한 테이블이나 인덱스 등과 같은 객체마다 하나씩 존재. - 테이블스페이스(Tablespace)
세그먼트가 할당되는 논리적인 저장 공간.
테이블스페이스는 데이터베이스에서 물리적인 저장 파일을 관리하는 논리적 단위.
세그먼트의 종류
오라클에서는 다양한 유형의 세그먼트가 존재하며, 각 세그먼트는 다른 데이터베이스 객체와 연결됨:
- 데이터 세그먼트 (Data Segment)
테이블에 데이터를 저장하기 위한 세그먼트.
테이블이 생성되면 자동으로 데이터 세그먼트가 생성. - 인덱스 세그먼트 (Index Segment)
인덱스 데이터를 저장하는 세그먼트.
인덱스를 생성하면 인덱스 세그먼트가 생성. - 클러스터 세그먼트 (Cluster Segment)
클러스터 테이블에 데이터를 저장하는 데 사용되는 세그먼트. - 롤백 세그먼트 (Rollback Segment)
트랜잭션 중 데이터를 변경하기 전에 그 변경 내용을 저장하여 롤백할 수 있도록 하는 세그먼트. - 임시 세그먼트 (Temporary Segment)
정렬과 같은 작업을 수행할 때 임시로 데이터를 저장하는 데 사용되는 세그먼트.
임시 세그먼트는 작업이 완료되면 자동으로 해제.
반응형