기존 파일 시스템(file system)의 문제점
- 데이터 종속성(data dependency)과 데이터 중복성(data redundancy)
데이터 종속성(Data Dependency)
- 응용 프로그램은 데이터의 구성이나 접근방법에 맞게 작성되어야 함
- 데이터의 구성이나 접근방법을 변경할 때는 해당되는 응용 프로그램도 같이 변경되어야 함
데이터 중복성(Data Redundancy)
- 같은 내용의 데이터 일지라도 각 응용 프로그램마다 별도의 파일로 만들어 중복되는 경우가 많이 생김
- 이와 같이 중복되게 저장 관리되는 것을 데이터 중복성이라 함
데이터 중복성이 나쁜 이유
일관성(consistency)
- 일관성이 없다. = 데이터 간의 불일치를 의미
보안성(security)
- 같은 데이터에 대해 같은 수준의 보안 유지가 어렵다.
경제성(economics)
- 추가적인 저장 공간, 비싼 갱신 비용(인건비)
무결성(integrity)
- 데이터의 정확성을 유지하기 어렵다.
- 정확성 - 전화번호 예시) 010-4134-34QF -> integrity error
DBMS란
- 파일 시스템에서 야기되는 데이터 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템
- 응용 프로그램들이 데이터베이스를 이용하기 위해서는 DBMS를 통해서만 가능
- 데이터베이스의 구성, 접근 방법, 관리 유지에 대한 모든 책임을 DBMS가 지고 있음
DBMS의 필수 기능
정의(definition) 기능
- DDL(Data Definition Language) 사용
- 데이터베이스 구조를 정의할 수 있는 기능
조작(manipulation) 기능
- DML(Data Manipulation Language) 사용
- 데이터베이스를 접근하고 조작할 수 있는 기능
제어(control) 기능
- DCL(Data Control Language) 사용
- 정확성과 안전성을 유지할 수 있는 기능
- 갱신을 정확하게 수행, ★보안(허용된 데이터 연산만 진행), 병행 제어(concurrency control)
DBMS의 장단점
장점
- 데이터 중복의 최소화
- 데이터의 공용
- 데이터의 일관성 유지
- 데이터의 무결성 유지
- 데이터의 보안 보장
- 표준화 용이
- 데이터의 독립성 제공
단점
- 운영비의 증대
- 자료 처리 방법이 복잡
- 백업과 회복 기법이 어렵다
- 시스템의 취약성
데이터 독립성
- 데이터의 논리적인 구조나 물리적인 구조가 변경되더라도 응용 프로그램에는 영향을 주지 않는 것
논리적 데이터 독립성(logical data independency)
- 논리적 구조를 변경시키더라도 기존 응용 프로그램들에는 영향을 주지 않는 것
물리적 데이터 독립성(physical data independency)
- 저장 장치나 새로운 접근 기법의 개발로 성능 개선을 위해 물리적 구조를 변경하더라도 이를 이용하는 응용 프로그램들에는 영향을 주지 않는 능력,
- 저장 장치의 효율적 개발이 가능
하나의 논리적 구조로부터 여러 가지 다양한 물리적 구조를 지원할 수 있는 사상(mapping) 능력이 있어야 가능
DBMS의 발전 과정
제 1세대 DBMS(first-generation DBMS)
- IDS(Integrated Data Store)
- 최초의 범용 DBMS
- 네트워크 데이터 모델 (network data model)의 기초
- IMS(Information Management System) DBMS
- 계층 데이터 모델(hierarchical data model)의 기초
제 2세대 DBMS(second-generation DBMS)
- 관계형 데이터 모델(relational data model), SQL
- 상용 RDBMS: Oracle, SQL-Server, MySQL, DB2, Informix, Sybase
제 3세대 DBMS(third-generation DBMS)
- 객체지향 DBMS(OODBMS: Object-Oriented DBMS)
- 객체 관계형 DBMS(O-RDBMS: Object-Relational DBMS)
참고
- 데이터베이스 시스템 개론과 MySQL 실습, 이용주 지음, 도서출판 홍릉, 2022