Chapter 2 데이터베이스 관리 시스템

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

    • 파일 시스템이란?
      • 과거에 데이터 관리를 위한 정보 처리 시스템.
    • 응용 프로그램별로 파일을 유지. * 장점 : 별도의 구매 비용이 들지 않는다. * 단점 1. 같은 내용의 데이터가 여러 파일에 중복 저장된다. -> 데이터의 일관성 & 무결성이 깨짐 2. 응용 프로그램이 데이터 파일에 종속적이다. -> 데이터 추가 시 문제 발생 3. 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다. 4. 응용 프로그램을 개발하기 쉽지 않다. -> 데이터를 관리하는 것이 어렵기 때문

  • 데이터베이스 관리 시스템의 정의

    • 데이터베이스 관리 시스템이란?
      • 파일 시스템의 데이터 중복과 데이터 종속 문제를 해결하기 위한 소프트웨어
      • 사용자와 관리 응용프로그램, 데이터베이스 관리 시스템을 통한 데이터베이스가 모두 분리 되어 소통한다.

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

    • 데이터베이스 관리 시스템의 장점
      1. 데이터 중복을 통제할 수 있다. ->데이터 통합 관리
      2. 데이터 독립성이 확보 된다. -> 응용프로그램이 직접 영향을 받지 않는다.
      3. 데이터를 동시 공유할 수 있다. -> 응용프로그램이 동일한 데이터를 요구할 수 있다.
      4. 데이터 보안이 향상된다. -> 중앙집중식 관리
      5. 데이터 무결성을 유지할 수 있다. -> 데이터 값의 정확성
      6. 표준화할 수 있다.
      7. 장애 발생 시 회복이 가능하다. -> 이전 상태 회복 기능 지원
      8. 응용 프로그램 개발 비용이 줄어든다. -> 데이터베이스가 수정되어도 응용프로그램은 변경될 필요가 없어서 유지 보수 비용 감소.
    • 데이터베이스 관리 시스템의 단점
      1. 비용이 많이 든다. -> 파일 시스템은 운영체제와 함께 설치, 데이터베이스 관리 시스템은 따로 구매
      2. 백업과 회복 방법이 복잡하다.
      3. 중앙 집중 관리로 인한 취약점이 존재한다. -> 데이터베이스 관리 시스템에 장애가 발생하면 전체 시스템의 업무 중단으로 이어짐

  • 데이터베이스 관리 시스템의 발전 과정

    • 1세대 : 네트워크 * 계층 DBMS
      • 1960~1970년대
      • 네트워크 DBMS : 노드와 간선, 구조 복잡, 변경 어려움 ex. IDS
      • 계층 DBMS : 트리 형태, 현실 세계 표현 어려움, 구조 변경 어려움 ex. IMS
    • 2세대 : 관계 DBMS
      • 1980년대 초반
      • 테이블 형태, 이해하기 쉬운 구조, 지금도 널리 사용
      • ex. 오라클, MS SQL서버, 액세스, 인포믹스, MySQL
    • 3세대 : 객체지향 * 객체관계 DBMS
      • 1980년대 후반
      • 객체지향 DBMS : 객체지향 데이터 모델, 응용 분야 데이터 관리 ex. 오투, 온투스, 젬스톤
      • 객체관계 DBMS : 객체DBMS + 관계DBMS
    • 4세대 : NoSQL * NewSQL DBMS
      • NoSQL은 비정형 데이터 저장하기 위해 등장.
        • 여러대의 서버 컴퓨터에 저장하기 좋음.
        • 몽고디비, H베이스, 카산드라, 레디스, 네오포제이, 오리엔트DB
      • NewSQL은 관계DBMS의 안정성과 일관성 + NoSQL의 비정형 데이터 처리를 합치기 위해 나온 것.

당분간 관계DBMS, NoSQL, NewSQL이 상호 보완하면서 공존할 것이다.

[참조] 데이터베이스개론 (저자: 김연희)