Ch02. 데이터베이스 개념

 

1. 데이터베이스 정의

1.1.데이터베이스 개념

◎ 용어의 등장

컴퓨터 중심의 데이터베이스 개발과 관리(Development and Management of a computer-centered Data Base)

- 미국 SDC[각주:1], 1차 심포지엄(1963.6)

 

컴퓨터 중심 데이터베이스 시스템(Computer-centered Data Base System)

- 미국 SDC, 2차 심포지엄(1965.9)

 

◎ 현대적 의미의 데이터베이스 개념 확립

IDS(Integrated Data Store) <1963. 바크만(Charles W. Bachman)>

 

◎ 데이터 베이스의 정의

조직의 응용 시스템들이 공용할 수 있도록 통합, 저장 된 운영데이타의 집합

 통합데이타 Integrated data

 효율성을 위한 최소한의 의도된 데이타 중복(redundancy)

 - 최소의 중복(Minimal redundancy)

 - 통제된 중복(Controlled redundancy)

 저장데이타 Stored data 

 컴퓨터가 접근가능한 형태의 데이타   

 운영데이타 opeational data

 조직 교유 기능 유지를 위해 반드시 유지할 데이타 

 공용데이타 shared data 

 여러 사용자가 서로다른 목적으로 데이타를 공동으로 이용 

 

2. 데이터베이스 특성

 실시간 접근성

 real-time accessibility

 수시적이고 비정형적인 query에 대하여 실시간 처리로 응답

 처리결과를 보고 다음 의사 결정에 바로 반영 가능하도록

 계속적인 변화

 continuous evolution

 데이터베이스는 삽입(Insertion), 삭제(Deletion), 갱신(Update)에 의해 항상 변화하며, 변화속에서 정확한 데이터를 유지

 동시공용

 concurrent sharing

 서로 다른 여러 사용자가 서로 다른 방법으로 동시(Concurrent)에 데이터를 공용할 수 있도록 지원

 내용에 의한 참조

 contents reference

 데이타가 가지고 있는 값(value)에 의해 참조

 

3. 데이터베이스의 구성요소

물리적 구성요소 

 파일시스템(비트 bit, 바이트 byte, 블록 block, 실린더 cylinder 등)

논리적 구성요소

 

 

 개체 entity

화일구조: 레코드(record)

 - 데이타베이스에 표현하려고 하는 유무형의 객체(object), 서로 구별

 - 단독 존재 가능

 - 하나 이상의 속성(attribute)로 구성

   

 속성 attribute

화일구조: 데이터 항목(data item), 필드(field)

 - 개체의 특성, 상태 기술

 - 이름을 가진 가장 작은 논리적 단위

 - 단독 존재 불가(정보 측면에서 의미 표현 불가)

   

 개체 인스턴스(entity instance),

 개체 어커런스(entity occurrence)

화일구조: 레코드 인스턴스(record instance), 레코드 어커런스(record occurrence)

 - 개체를 구성하고 있는 속성들이 구체적인 값을 가지면서 실체화

 - 저장되는 구체화 된 객체

     개체 집합(entity set)  - 개체 인스턴스의 집합
   

 개체 타입(entity type)

 - 속성 이름들로만 기술된 개체의 정의

 - 논리적 개념

 

 관계 relationship

 - 개체집합과 개체 집한 간에 여러가지 유형의 관계 존재

 - 개체들을 서로 연관시커 의미를 나타내기 때문에 별개의 요소로 취급

   

 속성 관계 attribute relationship

 특정 개체를 기술하는 속성들 간의 관계. 묵시적, 암시적 취급

 개체 내 관계(intra-entity relationship)

   

 개체 관계 entity relationship

 개체 집합간의 관계, 명시적 취급

 개체 간 관계(inter-entity relationship)

 

4. 데이터베이스의 구조

실제로 취급하는 데이터베이스는 어커런스(해당 값)으로 구성, 물리적 저장 장치 위에 저장 필요

저장 구조를 누구 중심으로 하느냐에 따라 데이터베이스 구조 구분

사용자 입장: 논리적 구조(Logical structure)

시스템 입장: 물리적 구조(Physical structure)

 

 

ch03. 데이터베이스 관리 시스템

 

3.1. 데이타베이스 관리 시스템의 발전 배경

파일시스템 문제점

 

 데이타 종속성 data dependency

 - 데이타 파일이 저장되는 방법, 접근하는 방법이 응용에 맞게 작성

 - 데이타 구성방법, 접근 방법 변경시 응용의 변경 필요

 

 데이타 중복성 data redundancy

 응용프로그램에서 사용하는 구조가 다르면 별도의 화일 사용 필요

  - 같은 데이타, 같은 양식, 같은 구조

  - 같은 데이터, 다른 양식, 구조

  - 부분적으로 같은 데이터 사용시

   

 데이타 일관성 data consistency

 동일성 유지의 어려움으로 데이타 불일치(모순성 inconsistency) 발생,

 

 

 보안성 data security 

 동일 내용의 여러 곳에서 동일 수준의 보안성 유지 필요, but 어렵다

 

 

 경제성 economics

 중복 데이타에 대한 저장공간의 추가 비용 발생 

     무결성 data integrity

 데이타의 정확성 유지의 어려움

 

3.2. 데이타베이스 관리 시스템의 정의

응용프로그램과 데이터의 중재자로서 모든 응용 프로그램들이 데이터베이스를 공용할 수 있게 관리해주는 시스템

데이터베이스의 구성, 접근방법, 관리 유지에 대한 모든 책임

 

3.3. 데이타베이스 관리 시스템의 필수 기능

 필수기능  
   데이타 정의 data definition

 App - DB 간 인터페이스 제공

   

 데이터 모델 data model

 DB의 논리적 구조, 특성이 DBMS가 지원하는 데이터 모델에 맞는 기술 필요

   

 물리적 구조 명세

 DB를 물리적 저장장치에 저장

   

 사상 mapping

 데이터의 논리적 - 물리적 구조 사이의 상호변환이 가능하도록 

 

 데이타 조작 data manipulation

 사용자 - DB간 인터페이스 제공

 데이터 언어(data language)를 통한 DB연산(검색, 삽입, 삭제, 갱신등) 지원

     데이터 언어 요건  사용하기 쉽고 자연스러운
 명확하고 완전한

 효율적인

 

 데이타 제어 data ocontrol

 DB 내용에 대한 정확성, 안정성 유지

 

 

 무결성(integrity) 유지 

 DB 연산이 정확하게 수행되어 무결성이 유지되도록 제어 

 

 

 보안(security) 유지

 권한(authority) 검사를 통한 정당한 허가된 사용자만 데이터 접근 보장 

 

 

 병행제어(concurrency control) 

 동시접근 처리 ▶ 정확성 유지 

 

 

3.4. 데이타베이스 관리 시스템의 장단점

 장단점

 
   장점  
   

 데이타 중복의 최소화

 성능 향상을 위해 중복은 불가피, 최소화

   

 데이타의 공용

 
   

 데이타 일관성 유지

 
   

 데이타 무경성 유지

 
     데이타 보안 보장  정당한 사용자, 허용된 데이터와 연산 등
     표준화  
     전체 데이타 요구의 조정  
 

 단점

 
   

 운영비 증대

 
     특정 응용프로그램 복잡화  
     복잡한 백업과 회복  
     시스템 취약성  

 

 

3.5. 데이타 독립성(Data Independency)

- 데이타의 논리적, 물리적 구조가 변경되더라도 응용프로그램이 영향 받지 않는 성질

- 데이터 베이스 구조간의 사상(mapping) 능력이 필요

- 논리적 데이타 독립성, 물리적 데이타 독립성

 

3.6. 데이타베이스 관리 시스템의 역사

 

1세대 DBMS

 IDS 

 Integrated Data Store, Charles Bachman(GE)

 네트워크 데이터 모델(network data model)의 기초

 IMS

 Information Management System, IBM

 계층 데이타 모델(hierarchical data model)

 2세대 DBMS

 데이터베이스 이론 완성

 새로운 데이터 표현방법인 관계데이터모델(relational data model) 제안

 관계 DBMS가 주류

 하드웨어 독립적 운영

 PC기반 DBMS 출현 

 SQL

 Structured Query Language, 세계 표준 데이터베이스 언어 

 3세대 DBMS

객체 데이터베이스

객체 관계 데이터베이스

 강력한 질의, 고기능 데이터 모델 연구

 새로운 데이터 타입(그래픽 등), 복잡한 질의 처리

 

 

ch04. 데이터베이스 시스템

4.1. 3단계 데이타베이스

- 데이터 독립성을 구현을 위한 기초 제공

- 현실적으로 엄격히 구분해서 지원하는 시스템은 드물다

 

 스키마 schema  데이타베이스의 논리적 정의, 데이타 구조와 제약조건에 대한 명세(specification)
 

 포함

 
     정의  개체 entity

 데이타 구조를 표현하는 데이타 객체(data object)

     

 속성 attribute

 개체의 특성을 표현

     

 관계 relationship

 개체, 속상간에 존재
     제약조건 constraints  정의된 데이터 구조가 지켜야 할 제약조건
 

 구별

 ANSI/SPARC 구조

 

 

 외부 스키마 external schema

 사용자 view / 외부단계 external level

 특정 응용프로그램이나 사용자에 관련된 개체와 관계만이 포함

 sub schema : 전체 데이타베이스의 한 논리적 부분이 되기 때문

 

   개념 스키마 conceptual schema

 기관전체 view / 개념단계 conceptual level (전체적이고 종합적 의미)

 schema : 하나의 데이타베이스 시스템에는 한개만 존재

    - 모든 데이타 객체(개체, 관계, 제약조건)

    - 효율적 관리를 위한 필수정보(접근권한, 보안정책, 무결성 규칙)

 

   내부 스키마 internal schema

 물리적 저장장치 view / 내부단계 internal level

 개념 스키마에 대한 저장구조 정의

    - 저장될 내부 레코드의 형식

    - 인덱스의 유무

    - 저장 데이타 항목의 표현방법

    - 내부 레코드의 물리적 순서

 

3단계 데이터베이스의 예제

prefix 필드 : 레코드 저장에 따른 제어정보(포인터, 플래그 등)

내부필드: 개념스키마의 속성 attribute과 대응관계

 

 

상(mapping)

  사상(mapping)

  내부스키마-개념스키마, 개념스키마-내부스키마 간 대응관계에 대한 정의, DBMS가 관리

 

 외부/개념 사상

 (external/conceptual mapping)

 응용 인터페이스(application interface) 

 논리적 데이터 독립성 제공

 

 개념/내부 사상

 (conceptual/internal mapping)

 저장 인터페이스(storage interface) 

 물리적 데이터 독립성 제공

 

데이타 사전(data dictionary)

시스템 카달로그(system catalog)

시스템 데이터베이스(system database)

- 데이터베이스에

 

 

 

 

4.2. 데이타 언어

 

 

4.3. 사용자

 

 

4.4. DBMS

 

 

4.5. 데이타베이스 관리자

 

 

4.6. 하드웨어

 

 

 

 

 

 

 

  1. *SDC: System Development Corporation) [본문으로]

'Computer' 카테고리의 다른 글

2019년 첫 자격증 도전. 정보보안 기사  (0) 2019.03.05
침입탐지 시스템(IDS: Intrusion Detection System)  (0) 2019.02.25
데이터베이스 학습 시작  (0) 2018.08.08
첫번째 필기.. 실패..  (0) 2017.09.29
slack space  (0) 2017.09.01

+ Recent posts