시스템 카탈로그(System Catalog) / 데이터 사전(Data Dictionary)

반응형
  1. 시스템 카탈로그의 개념
    1. 데이터베이스 관리자(DBA)의 도구로서 데이터베이스에 저장되어 있는 모든 데이터 개체들에 대한 정의나 명세에 대한 정보를 수록한 시스템 테이블(즉, 하나의 작은 데이터베이스 데이터 사전(Data Dictionary)이라고도 함
    2. DDL의 결과로 생성되는 기본 테이블, 뷰, 인덱스,데이터베이스, 접근 권한 등의 데이터베이스 구조 및 성능 평가를 위한 통계 정보를 저장
    3. 데이터베이스의 스키마 정보, 스키마들간의 사상정보, DBMS의 특정 모듈(질의 최적화기,권한 관리 모듈 등)을 필요로 하는 정보를 저장
    4. 시스템 카탈로그에 저장된 내용을 메타 데이터(Meta Data)라고 함
         
  • 시스템 카탈로그의 내용
    • 릴레리션 관련 정보
      • 릴레이션 이름
      • 릴레이션의 속성들에 대한 속성 이름과 타입(또는 도메인)
      • 릴레이션이 저장된 파일 이름, 파일 구조, 물리적 위치
      • 릴레이션에 대해 정의된 각 인덱스의 인덱스 이름
      • 릴레이션 상에 정의된 무결성 제약 조건
      • 릴레이션의 생성자 이름
    • 인덱스 관련 정보
      • 인덱스의 이름과 구조
      • 인덱스가 정의된 속성 정보(예를 들면, B+-트리)
      • 키에 대한 정보
    • 뷰 관련 정보
      • 뷰의 이름 정의
    • 통계 정보
      • 릴레이션 카디널리티 : 각 릴레이션의 튜플 수
      • 릴레이션 크기 : 각 릴레이션에 대한 페이지 수
      • 인덱스 카디널리티 : 각 인덱스에 대한 상이한 키값 수
      • 인덱스 높이 : 각 트리 인덱스에 대한 레벨 수
      • 인덱스 범위 : 각 인덱스에 대한 최소 키값과 최대 키값
    • 사용자 정보
      • 사용자의 계정 정보(패스워드 포함)
      • 사용자의 권한 정보
    • 기타
      • 기본키, 외래키 등과 같은 제약 조건에 대한 명세
      • 성능 정보를 위한 저장 구조에 대한 명세
      • 보안 및 권한 정보 등
           
  • 시스템 카탈로그의 특징
    • 시스템 카탈로그는 데이터베이스 관리 시스템이 스스로 생성하고 유지
    • 시스템 카탈로그 그 자체도 테이블로 구성되어 있어, 일반 사용자가 SQL SELECT문을 이용해 내용을 검색해 볼 수 있음
    • 시스템 카탈로그의 갱신
      • 사용자가 SQL의 DDL문을 실행시켜 기본 테이블, 뷰, 인덱스 등에 변경을 주면 데이터베이스 관리 시스템이 자동으로 시스템 카탈로그를 변경
      • 사용자가 SQL의 INSERT, DELETE, UPDATE문으로 시스템 카탈로그를 직접 갱신하는 것은 허용되지 않음
    • 분산 시스템에서의 시스템 카탈로그는 보통의 릴레이션, 인덱스, 사용자 등의 정보를 포함할 뿐만 아니라 위치 투명성 및 중복 투명성을 제공하기 위해 필요한 모든 제어 정보도 포함하고 있음
         

※ 시스템 카탈로그(System Catalog) = 데이터 사전(Data Dictionary)

  • DBA가 사용하는 도구
  • 데이터베이스가 취급하는 모든 데이터 객체들에 대한 정의나 명세에 대한 정보를 가지고 있음
  • 사상들에 대한 정보도 가지고 있어, 데이터 관리뿐만 아니라 데이터베이스 이용에도 사용

※ 데이터 디렉토리(Data Directory)

  • 데이터 사전에 수록된 데이터를 실제로 접근하는데 필요한 정보를 가지고 있음
  • DBMS에 의해서만 접근이 가능

※ 메타 데이터(Meta Data)

  • 데이터의 데이터로서 사용자와 DBMS 모두가 사용
  • 데이터 사전과 데이터 디렉토리의 데이터

위치 투명성
데이터 저장 장소의 물리적 위치에 무관한 접근을 제공하는 것

중복 투명성

데이터의 다중 사이트 물리적 중복과 무관한 접근을 제공하는 것

반응형

'밥벌이 > 데이터베이스' 카테고리의 다른 글

관계형 데이터 연산  (0) 2010.09.03
SQL(Structured Query Language)  (0) 2010.09.03
개체-관계 모델(ER 모델)  (0) 2010.08.26
확장(Extended) ER모델  (0) 2010.08.26
UML  (0) 2010.08.26