DataBase/SQL

[SQLD] 개념 정리 #01 시스템 카탈로그, 식별 관계/비식별 관계

반응형

지인과 함께 3/20일 sqld 자격증을 준비중이다. 노랭이 SQL 자격검정 실전문제를 풀고 모르는 개념들을 정리해나가는 식으로 공부하려고 한다. 일단 처음 보긴 하지만 그렇게 많이 어렵진 않다. 문제와 정리한 내용을 2회독 하는 것이 목표인데, 부디 합격할 수 있기를 바란다. (우선 시험비용이 5만원... 이거면 어지간한 오마카세 런치가격이자나! 절대 떨어질 수 없다.)

시스템 카탈로그 (System Catalog) 

  • 시스템 카탈로그의 의미
    • 시스템 그 자체에 관련이 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터베이스
    • 시스템 카탈로그 내의 각 테이블은 사용자를 포함하여 DBMS에서 지원하는 모든 데이터 객체에 대한 정의나 명세에 관한 정보를 유지 관리하는 시스템 테이블임
    • 카탈로그들이 생성되면 데이터 사전(Data dictionary)에 저장되기 때문에 좁은 의미로는 카탈로그를 데이터 사전이라고도 함
  • 시스템 카탈로그 저장 정보
    • 시스템 카탈로그에 저장된 정보 -> 메타 데이터 (데이터베이스 객체 정보, 사용자 정보, 테이블의 무결성 제약 조건 정보 등)
  • 카탈로그의 특징
    • 카탈로그 자체도 시스템 테이블로 구성되어 있어, 일반 이용자도 SQL을 이용하여 내용을 검색해볼 수 있음
    • Insert, delete, update문으로 카탈로그를 갱신하는 것은 허용되지 않음
    • 데이터베이스 시스템에 따라 상이한 구조를 가짐
    • 카탈로그는 DBMS가 스스로 생성하고 유지함
    • 사용자가 SQL문을 실행시켜 기본 테이블, 뷰, 인덱스 등에 변화를 주면 시스템이 자동으로 갱신하는 방식으로 갱신됨
    • 분산 시스템에서의 카탈로그는 보통의 릴레이션, 인덱스, 사용자 등의 정보를 포함할 뿐 아니라 위치 투명성 및 중복 투명성을 제공하기 위해 필요한 모든 제어 정보를 가져야 함 
  • 카탈로그/데이터 사전을 참조하기 위한 DBMS내의 모듈 시스템
    • 데이터 정의어 번역기(DDL Compiler): DDL을 메타 데이터를 갖는 테이블(카탈로그)로 변환하여 데이터 사전에 저장시킴
    • 데이터 조작어 번역기(DML Complier): 응용 프로그램에 삽입된 DML문을 주 언어로 표현한 프로시저 호출로 변환하여 질의 처리기와 상호 통신함
    • Data Directory: 
      • 데이터 사전에 수록된 데이터에 실제로 접근하는 데 필요한 정보를 유지 관리하는 시스템
      • 시스템 카탈로그는 사용자와 시스템 모두 접근할 수 있지만 데이터 디렉토리는 시스템만 접근할 수 있음
    • 질의 최적화기: 사용자의 요구를 효율적인 형태로 변환하고 질의를 처리하는 좋은 전략을 모색
    • 트랜잭션 처리기: 복수 사용자 환경에서 평행으로 동시에 일어나는 트랜잭션 문젤르 해결하여 각각의 사용자가 데이터베이스 자원을 배타적으로 이용할 수 있도록 함

 

식별 관계 / 비식별 관계 

식별 관계(Identifying Relationship)

  • 개체 A, B 사이의 관계에서 A개체의 기본키가 B개체의 외래키이면서 동시에 기본키가 되는 관계를 말함. 
  • B개체의 존재 여부가 A개체의 존재 여부에 의존적인 경우 발생
  • ER도형에서 식별 관계는 실선으로 표시함 

비식별 관계(Non-Identifying Relationship)

  • 개체 A, B 사이의 관계에서 A 개체의 기본키가 B개체의 비기본키 영역에서 외래키가 되는 관계
  • B개체의 존재 여부는 A개체의 존재 여부와 관계없음
  • ER도형에서 비식별 관계는 점선으로 표시함  
728x90
반응형