[정보처리산업기사] 66강 데이터베이스 개요

DongHo Im·2022년 1월 27일
0

정보처리산업기사

목록 보기
66/86

1. 데이터저장소

소프트웨어 개발 과정에서 다루어야 할 데이터들을 논리적인 구조로 조직화하거나, 물리적인 공간에 구축하는 것을 의미한다.

  • 데이터저장소는 논리 데이터저장소물리 데이터저장소로 구분

  • 논리 데이터저장소는 데이터 및 데이터 간의 연관성, 제약조건을 식별하여 논리적인 구조로 조직화

  • 물리 데이터저장소는 논리 데이터저장소에 저장된 데이터와 구조들을 소프트웨어가 운용될 환경의 물리적 특성을 고려하여 하드웨어적인 저장장치에 저장

  • 논리 데이터저장소를 거쳐 물리 데이터저장소를 구축하는 과정은 데이터베이스를 구축하는 과정과 동일


2. 데이터베이스의 정의

특정 조직의 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임

  • 통합된 데이터(Integrated Data) : 자료의 중복을 배제한 데이터의 모임

  • 저장된 데이터(Stored Data) : 컴퓨터가 접근할 수 있는 저장 매체에 저장된 자료

  • 운영 데이터(Operational Data) : 조직의 고유한 업무를 수행하는 데 존재 가치가 확실하고 없어서는 안 될 반드시 필요한 자료

  • 공용 데이터(Shared Data) : 여러 응용 시스템들이 공동으로 소유하고 유지하는 자료


3. 데이터베이스의 특징

  • 실시간 접근성(Real-Time Accessibility) : 수시적이고 비정형적인 조회에 대하여 실시간 처리에 의한 응답이 가능해야 한다.

  • 계속적인 변화(Continuous Evolution) : 상태는 동적이다. 즉 삽입, 삭제, 갱신으로 항상 최신의 데이터를 유지해야하한다.

  • 동시 공용(Concurrent Sharing) : 서로 다른 목적을 가진 여러 응용자들을 위한 것이므로 다수의 사용자가 동시에 같은 내용의 데이터를 이용할 수 있어야한다.


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

사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어

  • DBMS는 기존 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위한 시스템, 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리

  • DBMS는 데이터베이스의 구성, 접근 방법, 유지관리에 대한 모든 책임을 진다.

  • DBMS의 필수 기능

    • 정의(Definition) 기능 : 모든 응용 프로그램들이 요구하는 데이터 구조를 지원하기 위해 데이터베이스에 저장될 데이터의 형(Type)과 구조에 대한 정의, 이용 방식, 제약 조건 등을 명시

    • 조작(Manipulation) 기능 : 데이터 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 사용자와 데이터베이스 사이의 인터페이스 수단을 제공하는 기능

    • 제어(Control) 기능

      • 데이터베이스를 접근하는 갱신, 삽입, 삭제 작업이 정확하게 수행되어 데이터의 무결성이 유지되도록 제어
      • 정당한 사용자가 허가된 데이터만 접근할 수 있도록 보안(Security)을 유지하고 권한(Authority)을 검사할 수 있어야 함
      • 여러 사용자가 데이터베이스를 동시에 접근하여 데이터를 처리할 때 처리 결과가 항상 정확성을 유지하도록 병행 제어(Concurrency Control)를 할 수 있어야 함

4. DBMS의 장ㆍ단점

장점

  • 논리적, 물리적 독립성 보장

  • 중복을 피할 수 있어 기억 공간 절약

  • 저장된 자료를 공동으로 이용할 수 있음

  • 데이터의 일관성 유지

  • 데이터의 무결성 유지

  • 보안 유지

  • 데이터를 표준화할 수 있음

  • 데이터를 통합하여 관리할 수 있음

  • 항상 최신의 데이터를 유지

  • 데이터의 실시간 처리가 가능

단점

  • 데이터베이스 전문가 부족

  • 전산화 비용 증가

  • 대용량 디스크로의 집중적인 Access로 과부하(Overhead) 발생

  • 파일의 예비(Backup)와 회복(Recovery)이 어려움

  • 시스템이 복잡함


데이터의 독립성

  • 데이터의 독립성은 종속성에 대비되는 말, DBMS의 궁극적 목표이기도 함
  • 논리적 독립성 : 응용 프로그램과 데이터베이스를 독립, 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 변경되지 않음
  • 물리적 독립성 : 응용 프로그램과 보조기억장치 같은 물리적 장치를 독립, 데이터베이스 시스템 성능 향상을 위해 새로운 디스크를 도입하더라도 응용 프로그램에는 영향을 주지 않고 데이터의 물리적 구조만을 변경

6. 스키마(Schema)

스키마는 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 메타데이터의 집합이다.

  • 데이터베이스를 구성하는 데이터 개체(Entity)와 속성(Attribute), 관계(Relationship) 및 데이터 조작(DML) 시 데이터 값들이 갖는 제약 조건 등에 관해 전반적으로 정의한다.

  • 스키마 종류

    • 외부 스키마
      • 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적인 구조를 정의한 것이다.
    • 내부 스키마
      • 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타낸다.
      • 실제 데이터베이스가 기억장치 내에 저장되어 있어 저장 스키마라고도 불린다.
    • 개념 스키마
      • 개체 간의 관계와 제약 조건을 나타내고, 접근 권한, 보안 및 무결성 규칙에 관한 명세를 정의한다.
profile
[DATABASE] 비전공자 출신의 개발 도전!

0개의 댓글