[정보처리기사 필기] 데이터 입출력 구현 - 032. 데이터베이스 개요

1. 데이터저장소

  • 소프트웨어 개발 과정에서 다루어야 할 데이터들을 논리적인 구조로 조직화하거나 물리적인 공간에 구축한 것
  • 데이터저장소의 종류
    • 논리 데이터저장소
      • 데이터 및 데이터 간의 연관성, 제약조건을 식별화하여 논리적인 구조로 조직화한 것
    • 물리 데이터저장소
      • 논리 데이터저장소에 저장된 데이터와 구조들을 소프트웨어가 운용될 환경의 물리적 특성을 고려하여 하드웨어적인 저장장치에 저장한 것을 의미
    • 논리 데이터저장소를 거쳐 물리 데이터저장소를 구축하는 과정은 데이터베이스를 구축하는 과정과 동일

2. 데이터베이스

  • 특정 조직의 업무를 수행하는데 필요한 상호 관련된 데이터들의 모임
  • 데이터의 종류
    • 통합된 데이터 Integrated Data : 자료의 중복을 배제한 데이터의 모임
    • 저장된 데이터 Stored Data : 컴퓨터가 접근할 수 있는 저장 매체에 저장된 자료
    • 운영 데이터 Operational Data : 조직의 고유한 업무를 수행하는데 존재 가치가 확실하고 없어서는 안 될 반드시 필요한 자료
    • 공용 데이터 Shared Data : 여러 응용 시스템들이 공동으로 소유하고 유지하는 자료

3. DBMS (데이터베이스 관리 시스템)

  • 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어
  • 기존의 파일 시스템의 종속성과 중복성의 문제를 해결하기 위한 시스템
  • 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리
  • 데이터베이스의 구성, 접근 방법, 유지관리에 대한 모든 책임
  • DBMS의 필수 기능
    • 정의 Delintion
      • 모든 응용 프로그램들이 요구하는 데이터 구조를 지원하기 위해 데이터베이스에 저장될 데이터의 형과 구조에 대한 정의, 이용 방식, 제약 조건 등을 명시하는 기능
    • 조작 Manipulation
      • 데이터 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능
    • 제어 Control
      • 데이터베이스를 접근하는 갱신, 삽입, 삭제 작업이 정확하게 수행되어 데이터의 무결성이 유지되도록제어해야 함
      • 정당한 사용자가 허가된 데이터만 접근할 수 있도록 보안을 유지하고 권한을 검사할 수 있어야 함
      • 여러 사용자가 데이터베이스를 동시에 접근하여 데이터를 처리할 때 처리 결과가 항상 정확성을 유지하도록 병행 제어를 할 수 있어야 함

4. DBMS의 장단점

  • 장점
    • 데이터의 논리적, 물리적 독립성이 보장
    • 데이터의 중복을 피할 수 있어 기억 공간이 절약
    • 저장된 자료를 공통으로 이용 가능
    • 데이터의 일관성, 무결성 유지
    • 보안 유지
    • 데이터를 표준화할 수 있음
    • 데이터를 통합하여 관리할 수 있음
    • 항상 최신의 데이터를 유지
    • 데이터의 실시간 처리 가능
  • 단점
    • 데이터베이스의 전문가가 부족
    • 전산화 비용 증가
    • 대용량 디스크로의 집중적인 Access로 과부하(Overhead)가 발생
    • 파일의 예비(Backup)와 회복(Recovery)이 어려움
    • 시스템이 복잡

5. 스키마

  • 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 메타데이터의 집합
  • 데이터베이스를 구성하는 데이터 개체, 속성, 관계 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관해 전반적으로 정의
  • 스키마의 종류
    • 외부 스키마
      • 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
    • 개념 스키마
      • 데이터베이스의 전체적인 논리적 구조
      • 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 중합한 조직 전체의 데이터베이스
      • 하나만 존재
      • 개체 간의 관계와 제약 조건을 나타내고 데이터베이스의 접근 권한 보안 및 무결성 규칙에 관한 명세를 정의
    • 내부 스키마
      • 물리적 저장장치의 입장에서 본 데이터베이스 구조
      • 실제로 데이터베이스에 저장될 레코드의 형식을 정의
      • 저장 데이터 항목의 표현방법, 내부 레코드의 물리적 순서 등을 나타냄

6. 데이터의 독립성

  • 논리적 독립성
    • 응용 프로그램과 데이터베이스를 독립시킴으로써, 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 변경되지 않음
  • 물리적 독립성
    • 물리적 장치를 독립시킴으로서 데이터 베이스 시스템의 성능 향상을 위해 새로운 디스크를 도입하더라도 응용 프로그램에는 영향을 주지 않고 데이터의 물리적 구조만을 변경