Database system-architecture

Sumin Kim·2022년 10월 19일
1

✔ Database

목록 보기
2/4

데이타 모델

: 데이터 타입, 관계, 제약조건들을 명시하기 위해 사용할 수 있는 개념들의 집합

데이터 모델의 분류

  1. 저수준 또는 물리적 데이터모델
    • 어떻게 데이터가 저장되는지의 세부사항을 명시하는 개념을 제공
  2. 표현 데이터 모델 (구현데이터모델)
    • 고수준 모델과 저수준 모델 사이에 존재
    • 일반 사용자가 이해할 수 있는 개념을 제공
    • DBMS 가 보여주는 모델
  3. 고수준 또는 개념적 데이터모델
    • 사용자들이 데이터를 인식 하는 방식에 대한 개념을 제공

스키마, 인스턴스 , 데이터베이스 상태

  • 데이터베이스 스키마 (또는 메타데이터)
    • 데이터베이스에 대한 기술
    • 자주 변경되지 않음 (설계과정에서 명시)
  • 스키마 다이어그램
    • 데이터베이스의 스키마를 도식화 한 것
      image
    • 내포 (intension)

  • 데이터베이스 상태
    • instance 들의 집합
    • 시간이 지남에 따라 계속 바뀜(갱신연산이 수행될때마다)
    • 외연 (extension)

3단계 스키마 아키텍처

목적 : 사용자의 응용과 물리적 데이터베이스의 분리

  1. 내부단계
    • 내부 스키마를 가짐
      • 내부스키마 : DB의 물리적인 구조를 정의, 물리적 데이터 모델을 사용
    • 데이터 저장구조의 세부사항과 데이터베이스에 대한 접근 경로를 기술
  2. 개념단계
    • 개념 스키마를 가짐
      • 개념스키마 : 하나만 존재, 전체적인 데이터베이스 구조를 기술함
    • 엔티티, 데이터타입, 관계, 연산, 제약조건 들을 나타내는데 중점
  3. 외부단계
    • 외부 스키마나 사용자 뷰들을 포함
    • 데이터 추상화의 최상위 단계
  • 사상(Mapping)
    • 외부스키마를 참조하여 사용자가 데이타를 요구하면 이를 데이터베이스내에서 개념스키마에 대한 요구로 변환하고, 다시 내부 스키마에 대한 요구로 변환 과정을 거쳐 사용자의 뷰와 일치하도록 재구성하는 과정
    • 외부 → 개념 → 내부 → DB 접근

데이터의 독립성

  • 논리적 데이터 독립성
    : 외부스키마나 응용프로그램을 변경하지 않으면서 개념스키마를 변경할 수 있는 능력(성질)
  • 물리적 데이터 독립성
    : 개념 스키마를 변경하지 않으면서 내부스키마를 변경할 수 있는 능력(성질)

DBMS 언어

  • 데이터 정의어 (DDL)
    • 개념 스키마와 내부스키마를 정의
  • 저장구조 정의와 뷰정의어
    • 저장구조 정의어를 사용하여 내부스키마를 나타냄
    • 뷰정의어를 사용하여 뷰를 명시하거나 개념스키마 사이의 사상을 나타냄
  • 데이터 조작어
    • 데이터를 검색, 삽입, 삭제, 수정하기 위한 조작언어
    • 범용 프로그래밍언어에 삽입되어 사용될 수 있는데, 범용프로그래밍어를 호스트언어(=주인어)라하고 삽입된 명령어를 데이터부속어라고 함

DBMS 를 위한 아키텍처

  • 중앙집중식 DBMS 아키텍처
  • 2층-클라이언트-서버 아키텍처
  • 3층-클라이언트-서버 아키텍처

0개의 댓글