자격증/IT / / 2021. 3. 11. 22:30

정보처리산업기사(필기) - 데이터베이스 : 데이터베이스의 개념

728x90
반응형

정보 시스템

자료(Data) : 가공되지 않은 단순한 사실 또는 결과값

정보(Information) : 자료를 가공하여 얻은 결과 (의사 결정에 도움을 줌)

 

정보 시스템 : 자료를 수집 및 저장했다가, 필요시 정보를 생성하고 분배하는 수단

 

자료 처리 시스템

일괄 처리 시스템 : 일정 시간/량의 데이터를 모아서 한 번에 처리하는 시스템

- 시스템 중심 자료처리방법

- 반환 시간(Turn Around Time)이 늦지만, CPU 가 낭비하는 시간이 줄어듦

- 순차 접근 방법 업무에 적합 (e.g. 테이프)

- 트랜잭션(컴퓨터의 처리 단위 작업)당 처리 비용이 적음

 

온라인 실시간 처리 시스템 : 데이터 처리 요구 즉시 처리하여 결과를 산출하는 시스템

- 사용자 중심 처리 방식

- 처리 시간 단축, 처리 비용 절감

 

분산 처리 시스템 : 분산된 여러 프로세서를 통신 회선으로 연결하여 논리적인 하나의 시스템처럼 운영하는 시스템

- 각 컴퓨터 시스템은 고유 OS, CPU, 메모리 존재

- 구축 및 운영이 복잡하지만, 신뢰성이 높고 확장이 용이

 

데이터베이스의 개념

데이터베이스의 정의

- 통합된 데이터 (Integrated Data) : 중복을 배제

- 저장된 데이터 (Stored Data) : 저장매체에 저장

- 운영 데이터 (Operational Data) : 업무 수행에 중요

- 공용 데이터 (Shared Data) : 여러 시스템이 공동 소유

 

데이터베이스의 특징

- 실시간 접근성 (Real-Time Accessibility)

- 계속적인 변화 (Continuous Evolution) : 데이터베이스는 동적이므로 삽입, 삭제, 갱신으로 최신상태유지

- 동시 공용 (Concurrent Sharring) : 다수 사용자가 동시 같은 내용을 이용가능

- 내용에 의한 참조 (Content Reference) : 데이터참조 시 주소 및 위치가 아닌 요구 데이터의 내용으로 참조

 

데이터베이스 시스템 : 데이터베이스를 이용한 컴퓨터 시스템

데이터베이스 시스템 구성요소 : 

- 데이터 베이스

- 스키마

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

- 데이터베이스 언어

- 데이터베이스 컴퓨터

- 데이터베이스 사용자

 

DBMS의 기능

DBMS : DataBase Management System. 데이터베이스 관리 시스템

 

DBMS의 발전 배경

기존 파일 처리방식 : 데이터 중복성과 데이터 종속성을 초래하는 단점 발생

- 중복성 문제

  일관성 : 중복 데이터 간 내용 불일치

  보안성 : 중복 데이터의 동등한 보안수준이 어려움

  경제성 : 저장공간 낭비

  무결성 : 제어의 분산으로 데이터 정확성 유지 힘듦

- 종속성 문제 : 응용 프로그램과 데이터 파일 사이 상호의존 관계에서 데이터 파일 저장 및 접근 방법 변경 시, 응용 프로그램도 변경되어야 함

 

데이터베이스 도입에서의 데이터 구성

각종 업무 <---> DBMS <---> 데이터베이스 (업무 자료)

 

DBMS의 필수 기능

  • 정의(Definition) 기능
    - 데이터의 형과 구조 등 명시
    - 데이터 간 관계와 데이터 연산이 명시 가능해야함
  • 조작(Manipulation) 기능
    - 검색, 삽입, 삭제 등 인터페이스 제공
  • 제어(Control) 기능
    - 조작 기능에 의한 무결성 유지
    - 권한(Authority) 검사
    - 여러 사용자의 동시 접근에서 병행(Concurrency Control) 제어

DBMS의 장단점

  • 장점
    - 데이터의 독립성 보장
    - 중복성 해결로 공간 절약
    - 자료 공동 이용
    - 데이터의 일관성 및 무결성 유지
    - 보안 유지
    - 데이터 표준화 및 통합관리 
    - 최신 데이터 유지 및 실시간 처리 가능
  • 단점
    - 전문가 부족
    - 전산화 비용 증가
    - 대용량 디스크로의 집중접근으로 과부화(Overhead)
    - 파일 백업 및 회복이 어려움
    - 시스템 복잡

스키마(Schema)

스키마 : 데이터베이스 구조와 조건에 관한 명세(Specification)를 기술(Description)한 메타데이터(Meta-Data)의 집합

- 데이터 개체(Entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작 시 제약조건에 관해 정의한다

- 사용자 관점에 따라 외부 스키마, 개념 스키마, 내부 스키마로 나뉜다

 

스키마의 특징

  • 데이터 사전(Data Dictionary)에 저장되며, 메타 데이터라고도 함
  • 특정 데이터 모델을 이용해서 제작
  • 시간에 따라 불변
  • 데이터의 구조적 특성이며, 인스턴스(속성에 대한 구체적인 데이터 값)에 의해 규정

스키마의 3계층

- 외주 스키마에 따른 요구를 개념적 스키마에 적합하게 변경하고, 이를 내부적 스키마에 적합한 형태로 변환

 

외부 스키마(External Schema) = 서브 스키마 = 사용자 뷰(View)

  • 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
  • 전체의 한 논리적 부분이므로 서브 스키마(Sub Schema)라고도 함
  • 하나의 DBMS에 여럿 존재할 수 있고, 각각을 여러 응용 프로그램이나 사용자가 공용할 수 있음
  • 같은 데이터에 대해서 다른 관점을 정의 가능
  • 일반 사용자는 질의어(SQL)을 통해 사용가능
  • 응용 프로그래머는 COBOL, C 등의 언어로 접근

개념 스키마(Conceptual Schema) = 전체적인 뷰(View)

  • 데이터베이스의 전체적인 논리적 구조로서 하나만 존재
  • 개체간 관계, 제약 조건 및 데이터베이스의 접근 권한, 보안, 무결성 규칙에 대한 명세 정의
  • DB 파일에 저장되는 데이터의 형태이므로 단순이 스키마(Schema)라 했을때 이를 말함
  • 기관이나 조직체 관점에서 정의
  • DB 관리자(DBA)에 의해 구성

내부 스키마(Internal Schema) = 저장 스키마(Storage Schema)

  • 물리적 입장에서의 DB 구조로 물리적 저장장치와 밀접
  • 데이터베이스에 저장될 레코드의 물리적 구조 정의
  • 시스템 프로그래머나 시스템 설계자의 관점

데이터베이스 언어

- DBMS에서 데이터베이스를 이용하기 위한 수단

 

데이터 정의 언어(DDL : Data Definition Language)

  • DB를 구축 및 수정하기 위해 사용
  • 결과는 데이터 사전에 테이블로 저장

데이터 정의 언어의 기능

  • 외부 스키마 명세 정의
  • 논리적, 물리적 구조 및 구조간 사상 정의
  • 스키마의 제약 조건에 대한 명세 정의
  • 데이터 물리적 순서 규정

데이터 조작 언어(DML : Data Manipulation Language) = 서브 언어

  • 사용자가 데이터를 처리하게 하는 도구로, 인터페이스 제공
  • 사용자가 DB를 조적하도록 호스트 언어에 DB기능를 추가하여 제작
  • 대표적으로 질의어(SQL)가 있음

데이터 조작어의 형태

  • 절차적 조작 언어 : 필요한 데이터의 구하는 절차를 명시
  • 비절차적 조작 언어 : 필요 여부만을 명시하고 구하는 절차는 명시안함. 쉽지만 비효율적

데이터 조작어의 조건

  • 사용하기 쉽고 자연 언어와 유사
  • 데이터의 연산 및 관계를 정확하게 명시 가능
  • 데이터 언어의 효율적 구현 지원 (데이터 언어가 DBMS의 연산과 관련 있도록)

데이터 제어 언어 (DCL : Data Control Language)

  • 무결성, 보안 및 권한제어, 회복 등을 위함
  • 데이터 보호 및 관리 목적

데이터 제어 언어의 기능

  • 데이터 보안
  • 무결성 유지
  • 시스템 장애 대비 데이터 회복 및 병행수행 제어

데이터베이스 사용자

DBA(DataBase Administrator) : 데이터베이스 시스템의 관리자

데이터 베이스 설계와
조작에 대한 책임
- 데이터베이스 구성요소 결정
- 개념 스키마 및 내부스키마 저으이
- 데이터베이스 저장구조 및 접근 방법 정의
- 보안 및 권한 부여 정책 수립
- 백업 및 데이터 회복 전략 수립
- 무결성을 위한 제약 조건의 지정
- 데이터 사전 구성 및 유지 관리
- 변화 요구 및 성능 향상을 위한 DB 재구성
행정 책임 - 사용자 요구 해결
- 데이터 표현 방법 표준화
- 문서화 기준 설정
- DB 사용 교육
시스템 감시 및
성능 분석
- 변화 요구 및 성능 향상 감시
- 시스템 감시 및 성능 분석
- 자원 사용도 및 병목 현상 조사
- 데이터 사용과 관련된 통계 종합 및 분석

응용 프로그래머

  • 일반 호스트 언어로 프로그램 작성 시 데이터 조작어(DML) 삽입으로 인터페이스를 제공

일반 사용자

  • 질의어 및 응용프로그램으로 데이터베이스 자원을 사용
728x90
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유