과거에는 데이터를 관리하기 위해 파일 시스템이라는 소프트웨어를 이용하였다.
파일 시스템은 별도의 구매 비용이 들지 않는다는 장점이 있지만, 응용 프로그램마다 파일을 따로 유지하는 특징 때문에 다음과 같은 문제가 발생한다.
- 같은 내용의 데이터가 여러 파일에 중복적으로 저장된다. = 데이터 중복성, 데이터 일관성, 데이터 무결성을 유지하기 어려워진다.
- 응용 프로그램이 데이터 파일에 종속적이다. :
파일의 구조를 변경하면 응용 프로그램도 함께 변경해야 함 -> 데이터 종속성 - 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다.
- 응용 프로그램을 개발하기 쉽지 않다.
DBMS : 데이터베이스 관리 시스템
- 파일 시스템의 데이터 중복과 데이터 종속 문제를 해결하기 위해 제시된 소프트웨어이다.
- 데이터베이스 관리 시스템은 필요한 데이터를 데이터베이스에 통합하여 저장하고 이에 대한 관리를 집중적으로 담당한다.
- 데이터베이스 관리 시스템은 응용 프로그램을 대신하여 데이터베이스에 들어 있는 데이터를 삽입,삭제,수정,검색하고 모든 응용프로그램이 데이터베이스를 공유할 수 있게 해준다.
데이터베이스 관리 시스템의 장점
- 데이터 중복을 통제할 수 있다 :
데이터베이스 관리 시스템은 데이터베이스에 데이터를 통합하여 관리하므로 데이터 중복 문제를 해결할 수 있다. 또한 효율성 때문에 데이터 중복을 허용하는 경우(DB-1)에도 통제 가능하도록 중복을 최소화 하므로 데이터 일관성도 유지할 수 있다. - 데이터 독립성이 확보된다 :
파일 시스템에서는 파일 구조가 바뀌면 응용 프로그램도 함께 수정해야 하는 데이터 종속 문제 발생. 데이터베이스 관리 시스템은 응용 프로그램을 대신하여 데이터베이스에 접근하고 이를 관리하기 때문에 데이터베이스 구조가 변경되어도 응용 프로그램이 영향을 받지 않는 데이터 독립성이 확보된다. - 데이터를 동시 공유할 수 있다 :
데이터베이스 관리 시스템은 데이터베이스에 통합된 데이터를 여러 응용 프로그램이 공유하여 같은 데이터에 동시 접근할 수 있도록 지원한다. - 데이터 보안이 향상된다 :
데이터베이스 관리 시스템은 데이터베이스를 이용해 데이터를 중앙 집중식으로 관리한다. (효율적인 접근제어 가능)
권한이 없는 사용자의 접근, 허용되지 않은 데이터와 연산에 대한 요청을 사전에 차단할 수 있음. 또한 사용자별로 접근 가능한 데이터베이스 영역을 제한하거나 접근 수준을 차별화 할 수 있음. - 데이터 무결성을 유지할 수 있다 :
데이터베이스 관리 시스템은 데이터에 대하 관리를 집중적으로 수행하면서 데이터에 대한 연산이 수행될 때마다 유효성을 검사하여 데이터 무결성을 유지할 수 있게 해준다.
무결성 = 저장된 데이터 값의 정확성을 의미한다. - 표준화 할 수 있다 :
데이터에 대한 모든 접근이 데이터베이스 관리 시스템에 의해 이루어지므로 데이터에 접근하는 방법, 데이터 형식 등과 구조 등을 표준화하기 쉽다. - 장애 발생시 회복이 가능하다 :
데이터베이스 관리 시스템은 장애가 발생하더라도 데이터 일관성과 무결성을 유지하면서 데이터를 장애가 발생하기 이전 상태로 복구하는 회복 기능을 지원한다. - 응용 프로그램 개발 비용이 줄어든다 :
데이터에 대한 모든 관리를 데이터베이스 관리 시스템이 담당하기 때문에 개발 비용이 적게 든다. 또한 데이터베이스의 구조가 변경되어도 응용 프로그램은 변경할 필요가 없어 유지 보수 비용이 파일 시스템을 사용할 때보다 줄어든다.
데이터베이스 관리 시스템의 단점
- 비용이 많이 든다 :
파일 시스템은 운영체제와 함께 설치되어 구매 비용이 들지 않으나, 데이터베이스 관리 시스템은 따로 설치해야 하므로 비용이 많이 든다. 또한 데이터베이스 관리 시스템은 복잡하고 다양한 기능을 제공하기 위해 컴퓨터 자원(리소스)를 많이 이용한다. - 백업과 회복 방법이 복잡하다 :
데이터베이스는 데이터 양이 많아 복잡하고, 여러 사용자의 동시 공유를 지원하므로 장애가 발생하면 그 원인과 상태를 정확히 파악하기 어렵다. - 중앙 집중 관리로 인한 취약점이 존재한다 :
모든 데이터가 데이터베이스에 통합되어 있고, 이에 대한 관리 책임이 DBMS에 집중되어 데이터베이스나 데이터베이스 관리 시스템이 발생하면 업무 처리가 중단된다.
'DB' 카테고리의 다른 글
DB-6 관계 데이터 연산 (0) | 2019.10.10 |
---|---|
DB-5 관계 데이터 모델 (0) | 2019.10.08 |
DB-4 데이터 모델링 (0) | 2019.10.01 |
DB-3 데이터베이스 시스템 (0) | 2019.09.29 |
DB-1 데이터베이스 기본 개념 (0) | 2019.09.17 |