정보처리기사/데이터베이스 활용
시스템 카탈로그 (System Catalog)
glorypang
2025. 10. 4. 00:59
728x90
반응형
SMALL
1. 정의
- DBMS가 데이터베이스 자체에 관한 데이터(=메타데이터) 를 저장해두는 특수한 테이블 집합.
- 데이터 딕셔너리(Data Dictionary)라고도 부름.
- DBMS가 자동으로 생성·관리하며, 사용자가 직접 접근·조회 가능(수정은 불가).
2. 저장하는 내용
시스템 카탈로그에는 DB 객체와 제약조건, 권한 등 DB 전체 구조와 관리 정보가 들어 있음.
- 테이블 정보: 테이블 이름, 속성명, 데이터 타입, 길이 등
- 뷰(View) 정보: 뷰 정의, 기반 테이블 정보
- 인덱스(Index) 정보: 인덱스 이름, 속성, 유형
- 제약조건(Constraints): 기본키, 외래키, 유일성, 도메인 제약 등
- 사용자 및 권한: 사용자 계정, 권한, 접근 제어 정보
- 통계 정보: 레코드 개수, 접근 경로, 저장 공간 사용량 등
3. 특징
- DBMS 내부 테이블 → 일반 사용자가 임의로 변경 불가
- 자동 갱신: DDL(테이블 생성, 인덱스 추가 등) 실행 시 DBMS가 시스템 카탈로그를 자동 수정
- 메타데이터 관리: DBMS 스스로 DB 객체를 관리하기 위한 “뇌” 역할
- 쿼리 가능: 일반 SQL로 조회 가능
(예: Oracle의 USER_TABLES, MySQL의 INFORMATION_SCHEMA)
4. 예시
사용자가 테이블 생성:
CREATE TABLE Student (
sid CHAR(5) PRIMARY KEY,
name VARCHAR(20),
dept VARCHAR(20)
);
→ DBMS는 시스템 카탈로그에 다음 정보를 자동 등록:
- 테이블 이름 = Student
- 속성 = sid, name, dept
- sid 속성: CHAR(5), Primary Key
- name 속성: VARCHAR(20)
- dept 속성: VARCHAR(20)
5. 활용
- DBMS 내부 최적화: 실행계획 세울 때 시스템 카탈로그의 통계 정보를 참조
- 관리자 조회: 사용자 권한, 테이블 구조, 제약조건 확인
- 보안 및 무결성: 참조 무결성, 도메인 제약 등 시스템 카탈로그 기반으로 검증
728x90
반응형
LIST