본문 바로가기

학교수업/데이터베이스

[데이터베이스] 2. 데이터베이스 관리 시스템 (DBMS)

파일 시스템

  • 데이터를 파일로 관리하고자 파일 생성, 삭제, 수정, 검색 기능을 제공하는 전통적 소프트웨어
  • 응용프로그램마다 필요 데이터를 따로 관리  >> 데이터 중복성, 데이터 일관성과 무결성 유지 어려움
  • 응용프로그램이 데이터 파일에 종속적이다.
  • 데이터 파일에 대한 동시공유, 보안, 회복 기능 없음
  • 응용 프로그램의 개발 난이도가 높다.

 

파일 시스템의 단점을 극복하고자 데이터베이스 관리 시스템 등장

 

데이터베이스 관리 시스템(DataBase Management System)

조직에 필요한 데이터를 데이터베이스에 통합하여 저장

DBMS 이용 환경

DBMS의 주요기능

  • 정의 : 데이터베이스 구조를 정의, 수정
  • 조작 : 데이터를 삽입, 삭제, 수정, 검색 연산 가능
  • 제어 : 데이터를 항상 정확하게 유지할 수 있는 보안, 접근제어 기능

 

장점

  • 데이터 중복성 방지
  • 데이터 독립성 확보
  • 동시공유, 표준화, 데이터 무결성 유지
  • 데이터 보안 향상
  • 장애 발생시 회복 가능
  • 응용프로그램 개발 비용 감소

 

단점

  • DBMS 사용에 비용이 많이 든다
  • 백업과 회복 방법 복잡
  • 중앙 집중 관리로 인한 취약점 존재

 

 

DBMS의 발전과정

1세대: 네트워크 DBMS, 계층 DBMS

네트워크 DBMS: 데이터베이스를 그래프 형태로

계층 DBMS: 데이터베이스를 트리 형태로

1세대 DBMS

2세대: 관계 DBMS

데이터베이스가 테이블 형태로

오라클, MS SQL, MySQL 등

 

3세대: 객체지향, 객체관계 DBMS

객체지향 DBMS: 객체 이용해 데이터베이스 구성

객체관계 DBMS: 객체+관계형 DBMS

 

4세대: NoSQL, NewSQL DBMS

NoSQL DBMS

  • 비정형 데이터 처리에 적합
  • 안정성과 일관성 유지 << 복잡한 구조 포기
  • 데이터 구조를 미리 정해두지 않는 유연성
  • 확장성 GOOD >> 여러 서버 컴퓨터에 데이터 분산 저장하고 처리함
  • 몽고DB

NewSQL DBMS: 관계 DBMS의 장점+NoSQL의 유연성. 구글 스패너가 있다.