데이터 모델 3단계 (스키마란?)

진환·2023년 12월 7일
post-thumbnail

스키마란?

스키마란 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것이다.

데이터 모델 3단계

데이터 모델은 다음과 같은 3단계로 이루어진다.

  • 외부 모델: 사용자가 보는 데이터베이스 구조
  • 개념 모델: DB 내의 전체 테이블 집합 (전체 DB 구조)
  • 내부 모델: 디스크 저장 구조의 세부 사항과 DB에 대한 접근 경로(인덱스)들의 집합

하나씩 자세히 알아보도록 하자.


외부 모델

  • 사용자가 보는 데이터베이스의 구조이다.
  • 사용자가 필요로 하는 "테이블의 일부(뷰)"
  • 특정 사용자의 관심 부분을 뷰로 제공하고, 나머지는 각 사용자로부터 은폐한다.
  • 사용자가 보는 데이터는 테이블 조각, 일부 이다.
  • 외부 모델 혹은 뷰를 정리해놓은 것이 외부 스키마이다.

개념 모델

  • 개념 스키마는 전체 테이블 리스트라고도 볼 수 있다.
  • 외부 모델을 내부 모델로 매핑하는 역할을 한다.
  • 외부 모델을 내부 모델로 매핑해주는 것이 개념 스키마이다.

내부 모델

  • 디스크 저장 구조를 명시하며 세부 사항과 DB에 대한 접근 경로(인덱스)들의 집합이다.
  • 내부 모델을 정리해놓은 것이 내부 스키마이다.

흐름도

스키마 흐름도
이미지 출처

사용자가 질의어를 사용하면 개념 스키마가 내부 스키마로 매핑하고 내부 스키마가 저장 장치에서 해당 데이터를 찾아와 사용자에게 전달한다.


데이터 독립성

관계형 DBMS의 3단계 모델은 뛰어난 데이터 독립성을 제공한다.

모델간 사상

  • 사용자가 외부 스키마(뷰)를 참조하여 데이터를 요구한다.
  • 데이터베이스 내에서 개념 스키마에 대한 요구로 변환한다.
  • 다시 내부 스키마에 대한 요구로의 변환 과정을 거친다.
  • 해당 디스크에 접근하여 데이터를 추출한 후 사용자에게 데이터를 다양한 형태로 제공한다.

데이터 독립성

  • 상위 수준의 스키마를 변경할 필요 없이 하위 수준의 스키마를 변경할 수 있는 성질로써 저장 구조가 변경되어도 뷰 사용자는 영향을 받지 않는 성질
  • 사용자 편의성, 응용의 안정성 등 데이터베이스의 지속적인 발전을 위해 중요한 성질

References

http://www.kocw.net/home/cview.do?cid=ac8b9a43cd972958

https://terms.tta.or.kr/dictionary/dictionaryView.do?subject=%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4+%EC%8A%A4%ED%82%A4%EB%A7%88

profile
끄적끄적

0개의 댓글