야미의 개발

DBMS 자세히 알아보기 - 파일시스템, 기능 및 장단점 본문

데이터베이스

DBMS 자세히 알아보기 - 파일시스템, 기능 및 장단점

채야미 2024. 1. 9. 15:00

앞선글에서 알아봤 듯이 데이터를 관리하기 위한 데이터 전용 소프트웨어를 DBMS라고 합니다.

그러나 과거에는 DBMS가 아닌 파일시스템(file system)이라는 소프트웨어를 사용했습니다. 

 

 

DBMS의 등장 배경과 파일 시스템

파일 시스템은 운영체제에서 하드 드라이브, SSD 또는UBS와 같은 저장 장치에 있는 파일을 구성하고 관리하는데 사용하는 구조입니다. 파일 시스템은 저장 장치에 데이터를 저장, 엑세스 및 구성하는 방법을 정의합니다. 

파일을 생성 , 삭제, 수정, 검색하는 기능을 제공하며 운영체제와 함께 설치됩니다. 파일 시스템은 응용 프로그램별로 필요한 데이터를 별도의 파일로 관리합니다. 

 

한편 파일 시스템은 별도의 구입비용이 들지 않는다는 장점이 있지만 응용프로그램마다 파일을 따로 유지하는 특성 때문에 다음과 같은 문제점을 가지고 있습니다

 

1. 중복성

같은 내용의 데이터가 여러 파일에 중복 저장

위의 그림에서와 같이 고객의 아이디, 고객명, 연락처, 주소 데이터가 고객 관리 파일과 주문 관리 파일에 모두 존재했씁니다. 이렇게 데이터가 중복되면 저장공간이 낭비될 뿐만아니라 데이터 일관성과 데이터 무결성을 유지하기 어려워집니다. 

 

 

2. 응용 프로그램이 데이터 파일에 종속적

응용 프로그램이 파일에 직접 접근해 데이터를 처리해야하므로 사용하는 파일의 데이터를 구성하는 방법이나 물리적인 저장 구조에 맞게 작성되어야합니다. 그래서 사용하는 파일의 구조를 변경하면, 응용 프로그램도 함께 변경해야하는데 이러한 특성을 데이터 종속성(data dependency)라 합니다.

파일 구조 변경 예

3. 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다

일반 파일 시스템에서는 한 응용 프로그램이 사용중인 파일을 다른 응용 프로그램이 접근하여 사용할 수 있는 동시 공유 기능을 제공하지 않습니다.

같은 내용을 파일을 여러개 만들어 응용 프로그램마다 제공할 수도 있지만 데이터 중복이 더 큰 문제를 야기할 수 있습니다.

 

파일 시스템에서는 사용자에게 보통 파일 단위로 읽기, 수정, 실행 권한을 부여하는 방식으로 데이터의 접근을 통제합니다. 하지만 데이터 보안이 더 세분화되고 잇어 파일안의 레코드나 필드과 같이 더 작은 단위에 대한 접근통제와 더 구체적인 권한 부여가 가능해야 합니다. 그리고 중복된 데이터의 보안을 같은 수준으로 유지하기도 쉽지 않습니다. 

 

파일 시스템에서는 응용 프로그램이 파일을 사용하는 도중에 장애나 오류가 발생하면 데이터를 일관된 상태로 회복하기 어렵습니다.

 

이러한 파일시스템이 가진 문제의 원인을 해결하기 위해 데이터를 통합하여 저장하고, 동시 공유, 보안, 회복등의 복잡한 기능을 제공해주는 대안이 바로 데이터베이스 관리 시스템 입니다.

 

 

 

DBMS, 즉 데이터베이스 관리 시스템

데이터베이스를 생성하고 접근하며 관리하는 일은 데이터베이스 관리 시스템이 모두 담당합니다. 사용자는 응용 프로그램을 통해 어떤 데이터를 원하는지 처리를 원하는지 DBMS에 요청하면 됩니다. 

데이터 베이스의 물리적 저장 구조나 처리방법 등을 자세히 알 필요없어 사용자의 부담이 줄어듭니다. 또한 접근 방법이 변경되거나 구조가 변경되어도 사용자나 응용 프로그램을 변경할 필요가 없어 데이터 독립성이 확보됩니다.

 

DBMS의 주요기능

정의(Definition) 기능, 조작(Manipulation) 기능, 제어(Control) 기능

 

- 정의 기능 

모든 응용 프로그램들이 요구하는 데이터 구조를 지원하기 위해 데이터 베이스에 저장될 데이터의 형(Type)과 구조에 대한 정의, 이용방식, 제약 조건 등을 명시하는 기능

 

- 조작 기능

데이터의 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 사용자와 데이터베이스 사이의 인터페이스 수단으로 제공하는 기능

 

- 제어 기능

DBMS는 데이터를 여러 사용자가 공유해도 항상 적확하고 안전하게 유지하는 기능을 제공합니다. DBMS는 삽입, 수정, 삭제 등과 같은 연산을 한 후에도 내용이 일관되면서 무결성을 유지하게하고 장애가 발생해도 회복을 가능하게 합니다. 또한 권한이 있는 사용자에게만 데이터 접근을 허용하여 보안을 유지하도록 제어합니다. 

 

 

 

 

DBMS의 장점

- 데이터의 논리적, 물리적 독립성이 보장된다.

- 데이터의 중복을 피할 수 있어 기억공간이 절약된다.

- 저장된 자료를 공동으로 이용할 수 있다.

- 데이터의 일관성을 유지할 수 있다.

- 데이터의 무결성을 유지할 수 있다.

- 보안을 유지할 수 있다.

- 데이터를 표준화할 수 있다.

- 데이터를 통합하여 관리할 수 있다.

- 항상 최신의 데이터를 유지한다.

- 데이터의 실시간 처리가 가능하다.

 

DBMS의 단점

그러나 이러한 데이터 베이스의 다양한 장점에도 불구하고 다음과 같은 단점도 존재합니다.

 

고비용

파일시스템은 운영체제와 함께 설치되어 별도의 구입비용이 없으나 DBMS는 구입비용이 많이 듭니다. 동시 사용이 허용되는 사용자 수에 따라 제품의 가격이 증가하고 다양한 기능을 제공하기 위해 컴퓨터 자원을 많이 사용합니다.

 

백업과 회복 방법의 복잡성

데이터베이스는 데이터 양이 많아 구조가 복잡하고, 여러 사용자의 동시 공유를 지원하여 장애가 발생했을 때 원인과 상태를 정확히 파악하기 어렵습니다. 따라서 장애 발생 전에 데이터를 미리 백업해놓고 장애 발생 후 데이터를 원래의 일관된 상태로 회복하는 방법이 복잡할 수밖에 없습니다.

 

 

중앙 집중 관리로 인한 취약점

중앙 집중 관리로 인해 일부 장애가 전체 시스템 마비로 이어지는 상황이 발생 할 수 있습니다.

 

 

 

참고

 

https://terms.naver.com/entry.naver?docId=3431078&cid=58430&categoryId=58430&expCategoryId=58430

 

데이터베이스 관리 시스템의 등장 배경

과거에는 데이터를 관리하기 위해 파일 시스템(file system)이라는 소프트웨어를 이용하였다. 파일 시스템은 오래 전부터 사용되어 온 정보 처리 시스템으로 데이터를 파일로 관리할 수 있도록 파

terms.naver.com

 

https://ssungkang.tistory.com/entry/DATABASE-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-VS-%ED%8C%8C%EC%9D%BC%EC%B2%98%EB%A6%AC-%EC%8B%9C%EC%8A%A4%ED%85%9C

 

[DB] 데이터베이스 VS 파일처리 시스템

데이터베이스를 알아보기 전에 파일처리 시스템을 비교해보도록 합시다. 데이터베이스가 등장하기 전에는 그 역할을 파일처리 시스템이 담당하였고 그 문제점으로 인해 데이터베이스가 등장

ssungkang.tistory.com

 

https://terms.naver.com/entry.naver?docId=3431082&cid=58430&categoryId=58430&expCategoryId=58430

 

데이터베이스 관리 시스템의 단점

데이터베이스 관리 시스템은 장점이 많지만 모든 상황에 적합한 것은 아니다. 다음과 같은 단점들도 있기 때문이다. [ ① 비용이 많이 든다] 파일 시스템은 운영체제와 함께 설치되어 별도의 구

terms.naver.com

 

Comments