파일시스템과 데이터베이스

하늘아래·2023년 7월 5일
0

데이터엔지니어링

목록 보기
1/6

데이터를 저장하는 방법에는 여러가지 존재하지만 과거에는 파일시스템으로 저장을 했었어.


파일 시스템은 파일(데이터의 모임)을 저장 장치에 저장하고 사용하기 위한 일종의 규칙이나 체계를 뜻해.

파일의 이름을 붙이고, 쉽게 파일에 접근할 수 있도록 배치를 신경 쓰는 등 파일과 관련된 기능을 수행하는 시스템이지

파일의 기본적인 구성요소는 순차적인 레코드들이고, 레코드는 파일을 다룰 때 실제로 읽고 쓰는 단위로서 사용되는 데이터 단위를 뜻하지.

이와 같은 파일시스템에는 특징들이 있어
파일 시스템에서는 파일에 접근하는 방식이 응용 프로그램 내에 표현되기 때문에 응용 프로그램과 데이터 간의 의존관계가 존재하게 되지.

그래서 데이터의 구조, 접근 방법이 변경되면 기존의 프로그램과 데이터를 함께 변경해야만 하지. 즉, 데이터 정의가 응용 프로그램에 내포되어 있다는 거야.
또, 프로그램에서 데이터를 접근하고 조작하는 것 이외에 별도의 제어가 없어

위와 같은 파일 시스템의 요인이 여러 문제들을 발생시켜

데이터 간 불일치가 발생할 수 있다.
중복된 데이터의 변경을 제어하는 것이 어렵기 때문에 여러 개의 중복 데이터 중 일부의 데이터만 변경된다고 하면, 중복된 데이터 간에 불일치가 발생할 수 있습니다.
다수 사용자를 위한 동시성 제어가 제공되지 않는다.
두 사용자가 동시에 파일에 접근할 때 각 사용자가 혼자서 데이터베이스를 접근하는 것처럼 인식하도록 하는 동기화가 되지 않습니다.
쉬운 질의어가 제공되지 않는다.
SQL 같은 쉬운 질의어가 제공되지 않는다.
보안 기능이 미흡하다.
파일 시스템에서는 파일 단위로만 검색, 갱신, 실행 권한을 부여할 수 있어서 사용자의 권한에 따른 세밀한 접근 제어(레코드 단위)를 시행하기 어렵다.
회복 기능이 없다.
응용 프로그램에서 파일 내의 데이터를 수정하는 도중에 강제로 파일이 닫히는 등의 사고가 발생했을 때 데이터를 복구하는 기능이 없습니다.
데이터 독립성이 없어 유지보수 비용이 크다.
파일의 구조가 응용 프로그램에 반영되어 있기 때문에 파일의 구조가 바뀌면 영향을 받는 모든 응용 프로그램들을 수정해야 한다.
또한 응용 프로그램의 기능을 확장하려면 파일의 구조에 대한 요구 사항이 바뀌므로 파일을 재조직해야 한다.
유지보수에 대한 비용이 상당히 높다.
데이터 모델링 개념이 부족하다.
단순히 순차적인 레코드만으로 나타내기 때문에 데이터의 의미와 데이터 간의 상호 관계를 나타내기 힘들다.
데이터 무결성을 유지하기가 어렵다.
파일 내의 데이터가 만족시켜야 하는 무결성 제약조건들을 명시하려면 프로그래머가 직접 프로그래밍 언어를 사용하여 일일이 프로그램에 표현해야 하므로 데이터 무결성을 유지하기가 어렵다.
또한 새로운 제약조건들을 추가하거나 기존의 제약조건을 수정하는 것도 어렵다.
생산성이 낮다.
각 응용 프로그램마다 프로그래머가 새로운 파일 형식과 설명을 설계하는 과정부터 시작한 후 새로운 응용 프로그램을 위한 파일 접근 논리를 작성해야 하기 때문에 개발 시간이 오래 걸린다.
프로그래머는 자바, C 등의 프로그래밍 언어로 원하는 데이터 및 원하는 데이터를 찾는 방법을 상세하게 구현해야 한다.
데이터 공유가 잘 되지 않는다.
각 응용 프로그램마다 파일들을 갖고 있으며 데이터를 접근하는 응용 프로그램들이 여러 가지 프로그래밍 언어들로 작성되어 데이터 공유가 제한된다.

이렇게 많은 단점들을 보완하기 위해 데이터베이스 시스템이 등장해
파일 시스템의 단점을 보완하면서 나온게 데이터베이스 시스템이라 위와 같은 단점들을 해결한게 데이터베이스의 장점이라고 볼 수 있어.

무조건 데이터베이스 시스템을 사용해야하진 않아
데이터베이스 시스템의 소프트웨어의 규모가 크고 복잡해서 파일방식보다 많은 하드웨어 자원을 필요로 하므로 추가적인 하드웨어 구입 비용이 들 수도 있고, DBMS 자체의 구입 비용과 유지, 보수 비용도 상당히 비싼 편이야.
또, DBMS가 자동적으로 데이터베이스의 일관성을 유지하기 위해서 컴퓨터의 자원을 많이 필요로 하므로 응답 시간이 많이 걸릴 수도 있어.

profile
내 머릿 속에 뭐가 들어있는지 알 수 있는 공간

0개의 댓글

관련 채용 정보