Search

파일시스템과 비교하여 RDBMS 등장 배경

파일시스템
데이터를 파일로 관리하였고, 이를 위해 파일을 생성, 삭제, 수정, 검색하는 파일 시스템을 사용하였다.
이 파일 시스템은 통합되지 않아 프로그램마다 관리하였다.
예를 들어 고객 관리 응용 프로그램, 주문 관리 응용프로그램이 각각 고객 데이터 파일, 주문 데이터 파일을 관리하였다.

파일 시스템의 주요 문제점

데이터 중복성
같은 내용의 데이터가 여러 파일에 중복 저장되었다. 앞선 예를 살펴보면 고객 관리 프로그램에서의 고객 데이터 파일에서도 고객 id, 전화번호가 필요하고 주문 관리 프로그램의 주문 데이터 파일에서도 고객 id, 전화번호가 필요하다.
이는 데이터 무결성(데이터의 정확성과 일관성)을 유지하지 못하게 하고 저장 공간도 낭비되었다.
데이터 종속성
응용 프로그램들은 각각 관리하는 데이터 파일에 종속적(딸려 붙어 있는)이었다. 사용하는 파일의 구조를 변경하면 응용 프로그램 역시 수정해야 하는 문제가 있었다.
RDBMS
파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어 조직에 필요한 데이터를 데이터베이스에 통합하여 저장하고 관리

DBMS의 장단점

장점
데이터 중복을 통제할 수 있다. ㅡ> 일관성, 무결성 유지
데이터 독립성이 확보된다.
데이터를 동시 공유할 수 있다.
데이터 보안이 향상된다.
표준화할 수 있다.
장애 발달 시 회복이 가능하다.
응용 프로그램 개발 비용이 줄어든다.
단점
비용이 많이 든다. + 데이터 센터 등
백업과 회복 방법이 복잡하다.
중앙 집중 관리로 인한 취약점이 존재한다.

DBMS의 발전 과정

1세대 : 네트워크 DBMS, 계층 DBMS
네트워크 DBMS : 데이터베이스를 그래프 형태로 구성
예) IDS(Integrated Data Store)
계층 DBMS : 데이터베이스를 트리 형태로 구성
예) IMS(Information Management System)
2세대 : 관계 DBMS (RDBMS)
관계 DBMS : 데이터베이스를 테이블 형태로 구성
예) 오라클(Oracle), MS SQL 서버, 액세스(Access), 인포믹스(Informix), MySQL
3세대 : 객체지향 DBMS, 객체관계 DBMS
객체지향 DBMS : 객체를 이용해 데이터베이스를 구성
예) 오투(O2), 온투스(ONTOS), 젬스톤(GemStone)
객체관계 DBMS : 객체 DBMS + 관계 DBMS
4세대 : NoSQL • NewSQL DBMS
NoSQL DBMS : 비정형 데이터를 처리하는데 적합하고 확장성이 뛰어남
비정형 데이터가 증가함에 따른 시대적 패러다임에 따라 등장
안정성과 일관성 유지를 위한 복잡한 기능을 포기
데이터 구조를 미리 정해두지 않는 유연성
확장성이 뛰어나 여러 대의 서버 컴퓨터에 데이터를 분산하여 저장하고 처리 하는 환경에서 주로 사용
예) 몽고디비(MongoDB), H베이스(HBase), 카산드라(Cassandra), 레디스(Redis), 네오포제이(Neo4j), 오리엔트DB(OrientDB) 등
NewSQL DBMS: 관계 DBMS의 장점+ NoSQL의 확장성 및 유연성
예) 구글 스패너(Spanner), 볼트DB(VoltDB), 누오DB(NuoDB)