Data Independence
데이터 독립성은 논리 구조와 물리 저장 변경의 영향을 분리하는 원칙이다
ANSI/SPARC 관점에서는 외부, 개념, 내부 계층을 나눠 한 계층의 변경이 다른 계층으로 번지는 범위를 줄인다.
분리 기준
외부
사용자나 애플리케이션이 보는 뷰와 조회 인터페이스다.
개념
전체 데이터의 논리 구조와 관계 의미를 정의한다.
내부
인덱스, 파일 배치, 저장 경로 같은 물리 구현을 다룬다.
01
논리적 독립성
개념 스키마 변경이 외부 스키마와 응용 프로그램에 덜 영향을 주게 한다.
02
예시
회원 테이블에 포인트 컬럼을 추가해도 기존 뷰가 유지되면 영향이 작다.
03
물리적 독립성
저장 위치나 인덱스 변경이 논리 테이블 의미를 바꾸지 않게 한다.
04
SQL 효과
SQL은 무엇을 원하는지 쓰고 접근 경로는 DBMS가 결정하게 한다.
영향 관리
뷰, API, 명시적 컬럼 목록은 논리 변경의 전파를 줄이는 장치다.
위험 신호
SELECT 별표나 강한 ORM 매핑은 작은 구조 변경도 크게 느끼게 한다.
시험 표현
논리 구조 변경과 물리 저장 변경을 각각 어느 계층에서 흡수하는지 말한다.