시스템 카탈로그와 메타데이터
1. 시스템 카탈로그의 정의
- 데이터베이스 시스템 내의 다양한 데이터 객체들에 대한 정보를 포함하고 관리하는 특별한 데이터베이스.
- DBMS에서 사용하는 시스템 테이블로, 데이터베이스 구조, 객체의 속성, 사용자 정보, 무결성 제약 조건 등을 포함.
2. 시스템 카탈로그의 특징
- 내용:
- 데이터베이스 객체 정보 (테이블, 인덱스, 뷰 등).
- 사용자 정보 (ID, 권한, 역할 등).
- 무결성 제약 조건 정보 (기본 키, 외래 키, NOT NULL 등).
- 프로시저, 함수, 트리거 등과 관련된 정보.
- 읽기 전용:
- 사용자는 시스템 카탈로그를 조회 가능하지만, 직접 수정할 수 없음.
- 데이터 정의 언어(DDL) 명령에 의해 DBMS가 자동으로 수정.
- 데이터 사전(Data Dictionary):
- 시스템 카탈로그는 데이터 사전으로 불리며, 데이터베이스 메타데이터가 저장됨.
- 저장 위치:
- 데이터베이스에 저장되며, 사용자는 이를 활용해 데이터베이스 구조 및 설정을 확인 가능.
- 정의: 데이터를 설명하는 데이터.
- 예: 데이터베이스의 테이블, 속성, 인덱스, 사용자 권한 등에 대한 정보.
- 유형:
- 데이터베이스 객체 정보:
- 테이블, 인덱스, 뷰 등의 구조와 통계 정보.
- 사용자 정보:
- 무결성 제약 조건 정보:
- 기본 키, 외래 키, NOT NULL, UNIQUE 등.
- 프로시저 및 트리거 정보:
- 저장된 프로시저, 함수, 트리거의 정의와 관련된 정보.
4. 시스템 카탈로그와 메타데이터의 역할
- 데이터베이스 관리 지원:
- 테이블, 인덱스, 뷰 등의 구조를 확인.
- 데이터 무결성을 유지하는 제약 조건 관리.
- 사용자 관리:
- 성능 최적화:
- 테이블 및 인덱스 통계 정보를 활용해 쿼리 성능을 향상.
5. 데이터 디렉토리
- 정의:
- 시스템 카탈로그와 유사하지만, 데이터베이스에 접근하는 데 필요한 정보를 관리하고 유지.
- 특징:
- 시스템만 접근 가능: 사용자는 직접 접근 불가.
- 역할: 데이터베이스가 데이터를 저장하고 관리하는 데 필요한 정보 제공.
6. 요약
- 시스템 카탈로그:
- 데이터베이스 객체와 구조에 대한 정보를 포함한 시스템 테이블.
- 사용자와 시스템 모두 접근 가능하며, 사용자는 읽기만 가능.
- 메타데이터:
- 시스템 카탈로그에 저장된 데이터베이스 객체에 대한 정보.
- 데이터를 설명하는 데이터.
- 데이터 디렉토리:
- 시스템 내부에서 데이터베이스 접근과 관련된 정보를 관리하는 시스템 구성 요소로, 시스템만 접근 가능.
7. 학습 포인트
- 시스템 카탈로그: 데이터베이스 객체와 사용자, 제약 조건 정보를 담고 있는 시스템 테이블.
- 메타데이터: 시스템 카탈로그에 저장된 데이터를 설명하는 데이터.
- 데이터 디렉토리: 시스템 내부에서 데이터베이스 접근을 관리하며 시스템 전용.
정확한 개념과 용어를 숙지하고, 각 용도의 차이를 이해하는 것이 중요합니다.