Oracle 오라클 데이터 구조
< 논리적 구성요소 >
- 데이터 블록
- 익스텐트
- 세그먼트
- 테이블스페이스
< 물리적 구성요소 >
- 데이터 파일
- 컨트롤 파일
- redo 로그 파일
- 매개변수 파일
- alert/trace 로그 파일
- 백업 파일
1. 데이터 블록
: 데이터가 저장되는 가장 작은 단위 (입출력 단위)
: 데이터 블록 표준 크기는 db_block_size 라는 파라미터 값에 저장
: 데이터베이스 설정 정보는 v$parameter 라는 이름의 테이블에 저장됨
2. 익스텐트(extent)
: 연속적인 여러 개의 데이터 블록들이 모여 하나의 익스텐트를 구성
3. 세그먼트(segment)
- data segment : 테이블 데이터를 저장
- index segment : 인덱스 정보를 저장
- temporary segment : 임시 데이터를 저장
- rollback segment : 트랜잭션에 의해 변경되는 데이터의 변경 전 값을 저장
4. 테이블 스페이스
: table, index, view 등 스키마 객체들을 저장
: 성격이 다른 데이터들을 서로 분리해서 저장 관리
: 테이블 스페이스는 하나 이상의 세그먼트를 포함
: 물리적으로는 하나 이상의 데이터 파일들로 구성됨
* 테이블 생성 전에 데이터베이스와 테이블스페이스가 먼저 생성이 되어 있어야 함
< 용도에 따른 테이블 스페이스 구분 >
1. 시스템 테이블 스페이스
- System : 롤백 세그먼트 포함 가능
2. 논 시스템 테이블 스페이스
- Users : 일반 사용자가 생성한 데이터 저장
- Temp : 임시 데이터
- Undo : 변경 전 값 저장
< 물리적 구성요소 >
1. 컨트롤 파일 : 데이터베이스 이름, 데이터 파일 및 redo 로그파일의 이름과 위치 정보 등 저장
2. Redo 로그 파일 : 데이터베이스 변경 내역을 저장
3. 설정 파일 : 데이터베이스 및 오라클 설정 정보 저장
4. alert/trace log file : 오류 데이터 저장
5. 데이터 파일 : 오라클이 관리하는 데이터가 실제로 저장되는 디스크 상의 파일
< 오라클 서버 인스턴스 구조 >
: 데이터베이스를 사용할 수 있게 하는 프로세스와 메모리 구조의 집합