DB) 데이터베이스 관리 시스템
데이터베이스 관리 시스템의 등장 배경
파일 시스템(file system)
- 과거에 이용하던 시스템으로 데이터를 파일로 관리하기 위하여 파일을 생성, 삭제, 수정, 검색하는 기능을 제공하는 소프트웨어
- 응용 프로그램마다 필요한 데이터를 별도의 파일로 관리함
파일 시스템의 문제점
- 같은 내용의 데이터가 여러 파일에 중복 저장된다.
데이터 중복성
- 저장 공간의 낭비는 물론
데이터 일관성
과데이터 무결성
유지가 어렵다.
- 응용 프로그램이 데이터 파일에 종속적이다.
데이터 종속성
- 사용하는 파일의 구조를 변경하면 응용 프로그램도 함께 변경해야 한다.
- 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다.
- 응용 프로그램 개발이 쉽지 않다.
데이터베이스 관리 시스템의 정의 및 특성
데이터베이스 관리 시스템(DBMS, DataBase Management System)
- 파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어
- 조직에 필요한 데이터를 데이터베이스에 통합하여 저장하고 관리한다.
데이터베이스 관리 시스템의 주요 기능
- 정의 기능 : 데이터베이스 구조를 정의하거나 수정할 수 있다.
- 조작 기능 : 데이터를 삽입, 삭제, 수정, 검색하는 연산을 할 수 있다.
- 제어 기능 : 데이터를 항상 정확하고 안전하게 유지할 수 있다.
장점
- 데이터 중복을 통제할 수 있다.
- 데이터 독립성이 확보된다.
- 데이터를 동시 공유할 수 있다.
- 데이터 보안이 향상된다.
- 데이터 무결성을 유지할 수 있다.
- 표준화할 수 있다.
- 장애 발생 시 회복이 가능하다.
- 응용 프로그램 개발 비용이 줄어든다.
단점
- (경제적, 컴퓨터 자원 포함)비용이 많이 든다.
- 백업과 회복 방법이 복잡하다.
- 중앙 집중 관리로 인한 취약점이 존재한다.
데이터베이스 관리 시스템의 발전 과정
1세대 : 네트워크 DBMS, 계층 DBMS (1960 ~ 1970)
- 네트워크 DBMS : 데이터베이스를 계층 형태로 구성
- 변경이 어렵다.
- 예) IDS(Integrated Data Store)
- 계층 DBMS : 데이터베이스를 트리 형태로 구성
- 구조변경 및 복잡한 현실세계 반영이 어렵다.
- 예) IMS(Information Management System)
2세대 : 관계 DBMS (1980 ~)
- 관계 DBMS : 데이터베이스를 테이블 형태로 구성
- 이해하기 쉽다.
- 예) 오라클(Oracle), MS SQL 서버, 액세스(Access), 인포믹스(Informix), MySQL
3세대 : 객체지향 DBMS (1980 후반 ~), 객체관계 DBMS (1990 후반 ~)
- 객체지향 DBMS : 객체를 이용해 데이터베이스 구성
- 예) 오투(O2), 온투스(ONTOS), 젬스톤(GemStone)
- 예) 오투(O2), 온투스(ONTOS), 젬스톤(GemStone)
-
객체관계 DBMS : 객체 DBMS + 관계 DBMS
- 현대에는 이해하기 쉬운 2세대 RDBMS를 주로 사용하지만 객체지향 DBMS의 점유율도 점차 높아지고 있다.