데이터베이스 관리시스템이란

johan1103·2023년 1월 25일
post-thumbnail

본 포스팅은 kocw의 데이터베이스의 원리와 응용 강의를 수강하고 정리한 자료입니다.

1. 데이터베이스 시스템

데이터와 정보의 차이

  • 데이터 현실 세계에서 단순히 관찰하거나 측정에 수집한 사실이나 값 가공하기 전의 순수한 수치들
  • 정보 의사 결정에 유용하게 활용할 수 있도록 데이터를 처리한 결과물 유의미하게 가공한 데이터

참고

정보의 계층(DIKW)

  • Wisdom (지혜)
  • Knowledge (지식)
  • Information (정보)
  • Data (데이터)

데이터베이스의 정의와 특성

데이터베이스는 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합을 뜻합니다.

데이터베이스의 개념

  • 통합 데이터 데이터를 통합하는 개념. 각자 사용하던 데이터의 중복을 최소화하여 중복으로 인한 데이터 불일치를 제거
  • 저장 데이터 문서로 보관된 데이터가 아닌, 컴퓨터 저장장치에 저장된 데이터
  • 공유 데이터 한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 사용되는 데이터를 의미
  • 운영 데이터 조직의 주요 기능을 수행하기 위해 지속적으로 유지해야 하는 데이터

데이터베이스의 특성

  • 실시간 접근 사용자의 데이터 요구에 실시간으로 응답한다. 사용자가 데이터를 요청하면 수 초 내에 결과를 서비스한다.
  • 계속 변화 데이터베이스에 저장된 내용은 한 순간의 상태이지만, 데이터 값은 시간에 따라 항상 바뀔 수 있다.
  • 내용 기반 참조 데이터가 저장된 주소나 위치가 아닌 내용으로 참조한다. 몇번째 행, 메모리주소의 위치가 아닌, 정보의 내용으로 데이터를 검색한다.
  • 동시 공유 서로 다른 데이터의 동시 사용 뿐만 아니라 같은 데이터의 동시 사용도 지원

예를 들어, 우리가 어떤 게시글 사이트에서 게시글 목록을 확인하고자 할 때, 우리는 실시간으로 수초내의 게시물들을 확인할 수 있습니다. (실시간 접근) 또 게시물의 업데이트 시간이라는 정보는 계속 존재하지만, 업데이트 시간의 값은 업데이트를 할 때마다 갱신됩니다. (계속 변화) 또 우리는 게시글의 제목을 검색할 때, 제목이 컴퓨터 내부의 어느 위치의 메모리에 들어있는지는 몰라도 단어 혹은 문장으로 찾을 수 있습니다. (내용 기반 참조)

데이터베이스 관리 시스템

데이터 관리를 하는 방법 (파일시스템 vs 데이터베이스 관리 시스템)

  • 파일 시스템
    과거에는 데이터를 관리하기 위해서 파일로 관리하기 위해 파일을 생성 삭제 수정 검색하는 기능을 제공하는 소프트웨어를 사용 응용 프로그램마다 필요한 데이터를 별도의 파일로 관리함 💡문제점
    • 같은 내용의 데이터가 여러 파일에 중복 저장된다. → 데이터 중복성 저장 공간의 낭비는 물론 데이터 일관성과 데이터 무결성을 유지하기 어렵다.
    • 응용 프로그램이 데이터 파일에 종속적이다. → 데이터 종속성 사용하는 파일의 구조를 변경하면 파일 시스템도 같이 변경해야 한다.
    • 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다.
    • 응용 프로그램 개발이 쉽지 않다.
  • 데이터베이스 관리 시스템

    검색 삽입 삭제 수정을 매우 효율적으로 만든것이 데이터베이스 관리 시스템이다. 데이터들을 통합적으로 관리할 수 있다.
    • 장점 데이터 중복을 통제할 수 있다. 데이터 독립성이 확보된다. (응용 프로그램이 영향을 받지 않는다.) 데이터를 동시 공유할 수 있다. 데이터 보안이 향상된다. 데이터의 무결성을 유지할 수 있다. 표준화할 수 있다. 장애 발생 시 회복이 가능하다. 응용 프로그램 개발 비용이 줄어든다.
    • 단점 비용이 많이든다. 백업과 회복 방법이 복잡하다. 중앙 집중 관리로 인한 취약점이 존재한다.

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

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

  • 네트워크 DBMS : 데이터베이스를 그래프 형태로 구성 수정이 어렵다.
    • IDS
  • 계층 DBMS : 데이터베이스를 트리 형태로 구성
    • IMS

2세대 : 관계 DBMS

  • 관계 DBMS : 데이터베이스를 테이블 형태로 구성
    • 오라클, MS SQL, MySQL등

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

  • 객체지향 DBMS : 객체를 이용해 데이터베이스를 구성
    • 오투(O2), 온투스(ONTOS), 젬스톤(GemStone)

데이터베이스 시스템 구성

  • 사용자
  • 데이터 언어
  • 데이터베이스
  • 데이터베이스 관리 시스템

데이터베이스 시스템의 정의

데이터베이스에 데이터를 저장하고, 이를 관리하여 조직에 필요한 정보를 생성해주는 시스템

데이터베이스의 구조

  • 스키마와 인스턴스
    • 스키마
      데이터베이스에 저장되는 데이터 구조와 제약 조건을 정의한 것.
      데이터 타입, 컬럼 이름등을 정의한 틀
    • 인스턴스 스키마에 따라 데이터베이스에 실제로 저장된 값
  • 3단계 데이터베이스 구조 데이터베이스를 쉽게 이해하고 이용할 수 있도록 하나의 데이터베이스를 관점에 따라 세 단계로 나눈 것
    • 외부 단계 : 개별 사용자 관점
    • 개념 단게 : 조직 전체의 관점
    • 물리적 단계 : 물리적 관점

0개의 댓글