[데이터 모델링] 06. 데이터 모델링에서 데이터 독립성의 이해
06. 데이터 모델링에서 데이터 독립성의 이해
가. 데이터독립석의 필요성
- 유지보수 비용 증가
- 데이터 중복성 증가
- 데이터 복잡도 증가
- 요구사항 대응 저하
※ 데이터 독립성 확보 시 효과
- 각 View의 독립성을 유지하고 계층별 View에 영향을 주지 않고 변경이 가능
- 단계별 Schema에 따라 데이터 정의어(DDL)와 데이터 조작어(DML)가 다름을 제공
나. 데이터베이스 3단계 구조
ANSI/SPARC의 3단계 구성의 데이터 독립성 모델은 외부단계
, 개념적 단계
, 내부적 단계
로 구성된 서로 간섭되지 않는 모델을 제시
- 외부단계 : 사용자와 가까운 단계, 사용자 개개인이 보는 자료에 대한 관점과 관련이 있는 부분
- 개념단계 : 사용자가 처리하는 데이터 유형의 공통적인 사항을 처리하는 통합된 뷰를 스키마 구조로 디자인한 형태
- 내부적단계 : 데이터가 물리적으로 저장된 방법에 대한 스키마 구조
다. 데이터독립성 요소
항목 |
내용 |
비고 |
외부스키마 (External Schema) |
- View 단계 여러 개의 사용자 관점으로 구성, 즉 개개 사용자 단계로서 개개 사용자가 보는 개인적 DB 스키마 - DB의 개개 사용자나 응용프로그래머가 접근하는 DB 정의 |
사용자 관점 접근하는 특성에 따른 스키마 구성 |
개념스키마 (Conceptual Schema) |
- 개념단계 하나의 개념적 스키마로 구성 모든 사용자 관점을 통합한 조직 전체의 DB를 기술하는 것 - 모든 응용시스템들이나 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 DB를 기술한 것으로 DB에 저장되는 데이터와 그들간의 관계를 표현하는 스키마 |
통합관점 |
내부스키마 (Internal Schema) |
- 내부단계, 내부 스키마로 구성, DB가 물리적으로 저장된 형식 - 물리적 장치에서 데이터가 실제적으로 저장되는 방법을 표현하는 스키마 |
물리적 저장구조 |
라. 두 영역의 데이터 독립성
독립성 |
내용 |
특징 |
논리적 독립성 |
-개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원하는 것 -논리적 구조가 변경되어도 응용 프로그램에 영향 없음 |
-사용자 특성에 맞는 변경가능 -통합 구조 변경가능 |
물리적 독립성 |
-내부스키마가 변경되어도 외부/개념 스키마는 영향을 받지 않도록 지원하는 것 -저장장치의 구조변경은 응용프로그램과 개념스키마에 영향 없음 |
-물리적 구조 영향 없이 개념구조 변경가능 -개념구조 영향 없이 물리적인 구조 변경가능 |
마. 사상(Mapping)
사상 |
내용 |
예 |
외부적/개념적 사상 (논리적 사상) |
- 외부적 뷰와 개념적 뷰의 상호 관련성을 정의함 |
사용자가 접근하는 형식에 따라 다른 타입의 필드를 가질 수 있음. 개념적 뷰의 필드 타입은 변화가 없음 |
개념적/내부적 사상 (물리적 사상) |
- 개념적 뷰와 저장된 데이터베이스의 상호관련성을 정의함 |
만약 저장된 데이터베이스 구조가 바뀐다면 개념적/내부적 사상이 바뀌어야 함. 그래야 개념적 스키마가 그대로 남아있게 됨 |