파일 시스템의 한계

데이터 종속성은 저장 구조 변경이 응용 코드까지 번지는 문제입니다

파일 시스템에서는 프로그램이 파일 형식과 컬럼 위치를 직접 알고 있는 경우가 많습니다. DBMS는 스키마, 뷰, 질의 계층을 사이에 두어 변경 영향이 퍼지는 범위를 줄입니다.

파일 시스템

파일 형식을 코드가 직접 알면 변경이 프로그램마다 전파됩니다

프로그램마다 파일 구조를 해석하는 코드가 있으면 컬럼 추가, 순서 변경, 타입 변경이 모두 코드 수정과 재배포로 이어질 수 있습니다.

DBMS

스키마와 질의 계층이 변경 충격을 완충합니다

컬럼명을 명시한 질의나 호환 뷰는 그대로 유지될 수 있습니다. 다만 모든 변경이 자동으로 안전한 것은 아니며, 컬럼 수와 순서에 기대는 코드는 여전히 영향을 받을 수 있습니다.

물리적 독립성 저장 방식, 인덱스, 파일 배치 변경

같은 스키마를 유지한다면 내부 저장 방법이 바뀌어도 응용 코드 영향이 작습니다.

논리적 독립성 일부 컬럼 추가와 호환 뷰

컬럼명을 명시한 질의는 유지될 수 있지만 SELECT *나 INSERT VALUES(...)는 깨질 수 있습니다.

주의할 변경 삭제, 타입 변경, 의미 변경, 새 제약

기존 의미를 깨는 변경은 DBMS를 써도 마이그레이션과 응용 로직 검토가 필요합니다.

1 종속성의 원인

데이터의 물리 구조와 프로그램 로직이 강하게 묶이면 작은 형식 변경도 코드 변경이 됩니다.

2 독립성의 장치

DBMS는 스키마, 뷰, 질의어로 구조와 응용 프로그램 사이에 완충층을 둡니다.

3 운영상의 효과

프로그램 수가 많고 변경이 잦을수록 수정 범위와 장애 위험을 줄이는 효과가 커집니다.