RavenSong's CS log

파일 시스템 vs DBMS 본문

데이터베이스

파일 시스템 vs DBMS

RavenS0ng 2024. 4. 6. 00:57
파일 시스템

데이터를 프로그램과 분리하여 별도의 파일에 저장하는 방법으로 파일은 프로그램과 분리되어 컴퓨터의 디스크에 저장되며, 컴퓨터가 꺼진 상태에서도 데이터값을 유지한다

 

 

DBMS

사용자와 데이터베이스를 연결해 주는 소프트웨어로, 데이터베이스 사용자가 데이터베이스를 생성, 공유, 관리할 수 있도록 지원해 주는 총체적인 역할을 한다

 

 

파일 시스템의 단점

 

1. 데이터 일관성의 부재

-파일에 저장된 데이터를 서로 공유하지 않기 떄문에 데이터가 중복 저장될 위험이 있어, 데이터의 일관성에 문제가 생김

(1000개 파일에 같은 정보가 저장되어있다면, 한 파일 정보만 수정되어도 나머지 999개 파일의 데이터도 전부 수정해줘야함. 이 과정에서 데이터의 일관성에 문제가 생길 수 있다)

-> 무결성 보장 X

 

2. 프로그램 - 데이터 간 독립성의 부재

-파일에 데이터 값, 프로그램에 데이터 정의를 포함하므로 데이터 값이 바뀌면 프로그램에 변경이 없지만, 데이터 구조가 바뀌면 프로그램을 다시 컴파일해야 함

 

3. 동시성 제어 기능의 부재

-파일 하나를 두 프로그램이 공유하는 것은 운영체제의 도움 없이는 불가능하다

-만약 두 프로그램이 데이터를 동시에 필요로한다면, 한 프로그램이 사용을 끝내기전까지 다른 프로그램은 파일을 사용할 수 없다

-> 가용성 보장 X

 

4. 프로그래머의 직접 관리

-파일 시스템으로 구축된 응용 프로그램은 데이터가 저장될 파일을 정의하고 직접 관리하기 때문에 프로그램 개발 시 파일을 다루어야 하는 부담이 있다

 

DBMS의 장점

 

1. 데이터의 정의 및 관리

-데이터의 정의 및 관리를 DBMS에 맡기기 떄문에 프로그램이 훨씬 간단함

-> 프로그램 개발 생산성이 높다

 

2. 데이터의 일관성 유지

-DBMS는 데이터베이스 정의 시 정보를 한 번만 정의하여 공유하기 때문에 데이터의 일관성 유지 가능

 

3. 프로그램 - 데이터 간 독립성 유지

-응용 프로그램 입장에선 데이터 정의와 관리를 맡지 않으므로 데이터 구조가 변경되어도 데이터의 독립성 유지 가능

 

4. 보안 유지 기능

-DBMS는 스스로 데이터를 복구하는 기능이 있다

-> 보안 유지

 

데이터 중복 최소화 DBMS를 이용하여 데이터를 공유하므로 중복 가능성이 낮음
데이터 일관성 유지 중복 제거로 데이터의 일관성이 유지됨
데이터 독립성 유지 데이터 정의와 프로그램 간의 독립성을 유지할 수 있음
관리 기능 제공 데이터 복구, 보안, 동시성 제어, 데이터 관리 기능 등을 수행함
프로그램 개발 생산성 향상 짧은 시간에 큰 프로그램 개발 가능
기타 데이터 무결성 유지, 표준 준수가 용이함

 

 

DBMS의 단점

 

1. 컴퓨터 자원 사용

-CPU와 주기억장치 등의 컴퓨터 자원을 파일 시스템에 비해 더 많이 사용한다

 

2. 비용 문제

-부가적 하드웨어 구입 비용

-DBMS 자체 가격도 비싼편

 

-> 데이터에 대한 다수 사용자의 접근이 필요하지 않거나, 응용이 단순하고 자주 변경되지 않을 것으로 예상되는 데이터베이스 관리에는 DBMS의 사용을 고려하지 않는다