- 파일시스템은 오래전부터 사용된 데이터베이스 관리 시스템이다. 쇼핑몰에서 고객관리, 주문관리 응용 프로그램에 맞게 필요한 데이터를 별도로 관리하는 것과 같이 각각의 응용 프로그램마다 필요한 데이터를 별도로 관리한다.
- 따라서 같은 데이터가 여러 파일에 중복 저장되어 데이터의 일관성과 무결성을 유지하기 어려우며, 응용 프로그램이 데이터 파일에 종속적이라는 한계가 있다. 따라서 데이터파일 구조 변경시 응용 프로그램도 다시 설계되어야 한다. 또 데이터 파일에 대한 동시 공유, 보안(데이터 중복으로 모든 파일을 같은 보안수준 유지 어려움), 회복 기능이 부족하다. 마지막으로 응용 프로그램 개발이 쉽지 않다. 데이터의 종속성 때문에 새로운 프로그램을 생성할때 기본적인 데이터 관리 기능을 각각의 응용 프로그램이 모두 포함해야 하기 때문이다.
- 파일 시스템은 데이터가 중복되므로 저장 공간의 낭비가 일어난다. 또 데이터 일관성과 무결성을 유지하기 어렵다. 한 응용프로그램에서 한 고객의 데이터가 업데이트 되었는데, 다른 응용프로그램에서 같은 고객의 업데이트 되지 않으면 무결성과 일관성이 깨진다.
- 파일 시스템에서 사용하는 파일의 구조를 변경하면 기존 응용 프로그램을 다시 변경해야 하므로 종속성 문제가 생긴다.
- 위 파일 시스템의 문제(중복성,종속성)를 해결하기 위해 데이터베이스 관리 시스템이 등장하였다. 조직에 필요한 데이터를 데이터베이스에 통합하여 저장하고 관리한다.
-DBMS는 별도의 파일에 있던 데이터를 "데이터베이스"에 통합해 저장한다. DBMS는 응용 프로그램을 대신해 데이터베이스의 데이터를 검색 삽입 수정 삭제할 수 있는 기능을 제공한다. 또 응용 프로그램들이 db를 공유해 사용하게 한다.
- DBMS의 기능은 정의, 조작, 제어기능이 있다.
- DBMS의 장단점은 다음과 같다. 장점은 중복을 통제하고 독립성을 확보(종속성 해결)하며, 동시 공유성, 보안, 무결성 유지, 표준화, 장애발생시 회복 가능, 응용프로그램을 개발하는 비용이 줄어든다.
- 단점은 db를 개발하는 비용이 많이 든다는 것이며, 또 데이터베이스에 데이터 양이 많아 장애 발생시 원인과 상태 파악이 어렵다. 따라서 백업과 회복 방법이 복잡하다. 세 번째는 모든 데이터가 db에 통합되므로 db에 장애가 발생하면 전체 시스템에 문제가 생긴다는 것이다.
- DBMS는 1세대 네트워크 DBMS(그래프 형태로 노드,간선으로 데이터 모델링),계층 DBMS(트리 형태)를 거쳤다.
- 현재까지도 사용하는 테이블 형태의 관계 DBMS로 발전되었다. 이해가 쉽다는 장점이 있다.
- 3세대 DBMS는 객체지향 DBMS와 객체관계 DBMS가 있다. 객체지향 DBMS는 객체를 이용해 데이터베이스를 구성하고 객체관계 DBMS는 객체지향 DBMS에 관계 DMBS를 합친 것이다.