데이터 독립성(Data Independence)
- 정보처리기술사/데이터베이스
- 2018. 11. 24.
데이터 독립성(Data Independence)
가. 데이터 독립성의 개념
- 하위 단계의 데이터 구조가 변경되더라도 상위 단계에 영향을 미치지 않는 속성
- 데이터베이스 구조의 변화로 인한 영향을 프로그램에 미치지 않도록 하는 것
- 데이터 표현 방법이나 저장 위치가 변하더라도 응용 프로그램에는 아무런 영향을 미치지 않는 성질
- DBMS의 궁극적인 목적으로 응용프로그램이 데이터에 종속되지 않는 것을 의미한다.
- 미국 표준 협회(ANSI) 산하의 X3 위원회(컴퓨터 및 정보 처리)의 특별 연구 분과 위원회에서 1973년 DBMS와 인터페이스를 위해 제안한 Three-Schema Architecture
나. 데이터 독립성의 필요성
각 View의 독립성 유지, 계층별 View에 영향을 주지 않고 변경
- 유지보수 비용감소 : 데이터가 독립되면 수정을 해야 될 부분이 최소화가 되고, 수정하기에 용이해져서 최종적으로는 유지보수 비용이 감소되는 효과가 있다
- 데이터 복잡도 감소 : 데이터가 독립하게 되면, 구조를 재개선하게 되어 복잡성이 줄어드는 효과가 있다
- 데이터 중복성 감소 : 마찬가지로 구조를 재개선하여 중복성도 줄어든 효과가 있다.
- 요구사항 대응 향상 : 데이터의 구조가 잘못되었을 경우, 유지보수에 대한 처리가 힘들고 비용이 많이 들지만 데이터가 독립이 되면 유지보수에 대한 처리가 수월하기에 요구사항 대응을 향상 시킬 수 있다.
데이터 독립성의 개념도 및 구성요소
source, http://www.dbguide.net
나. 데이터 독립성의 구성요소
외부 스키마(External Schema)
- 데이터베이스의 각 사용자나 응용 프로그래머가 접근하는 데이터를 정의한 것
- 개인 및 특정 응용 프로그램에 제한된 전체 데이터베이스의 논리적인 하나의 부분
- DB의 개개인 사용자나 응용 프로그래머가 접근하는 DB 정의
개념 스키마(Conceptual Schema)
- 모든 응용 시스템들이나 사용자들이 필요로 하는 데이터를 통합한, 조직 전체의 DB를 기술한 것
- 하나의 데이터베이스 시스템에는 하나의 개념 스키마만 존재
내부 스키마(Internal Schema)
- 내부단계, 내부 스키마로 구성, DB가 물리적으로 저장되는 형식
- 저장장치(Storage) 입장에서 DB 전체 저장 방법을 명세한 것
데이터 독립성의 기대효과
- DB 관리자 측면 : 하드웨어의 변환이나 갱신에 따라 개념 스키마의 변화가 필요 없어, 사용 중인 어플리케이션의 변화를 필요로 하지 않는다
- DB 설계자 측면 : 사용자 View 인 외부 스키마의 변화 및 사용 중인 어플리케이션의 변화 없이 개념 스키마를 변화시킬 수 없음
- DB 사용자 측면 : 사용자가 의식하지 못하게 데이터 베이스에 변경을 수행할 수 있어서 사용자에게 투명성 제공
'정보처리기술사 > 데이터베이스' 카테고리의 다른 글
DB의 분산처리 기법, 샤드(Shard), 샤딩(Sharding) (0) | 2020.08.14 |
---|---|
자기참조관계, 순환관계(Recursive Relationship) (0) | 2020.03.24 |
NoSQL과 NoSQL의 종류들 (0) | 2019.11.18 |
Nested Loop, Sort-Merge, Hash Join 조인연산 (0) | 2016.11.06 |
DBMS Transaction의 Isolation Level(고립화 수준) (0) | 2016.11.05 |