Link Search Menu Expand Document

Database

Table of contents

  1. Database Basic
    1. Data and Information
    2. Data Processing
    3. Data System
    4. Database
    5. Database Features
    6. Database Users
    7. Database Disadvantages
    8. Hierarchy of databases
  2. Abstracting a database
    1. External Level
    2. Conceptual Level
    3. Internal Level
    4. Data Independence
    5. Database modeling
      1. 개념적 데이터 모델
      2. 논리적 데이터 모델
      3. 물리적 데이터 모델
  3. Reference site

Database Basic

Data and Information

  • 데이터 : 단순한 관찰이나 측정 등의 수단을 통해 현실 세계로부터 수집된 사실이나 값

  • 정보 : 데이터 중에서도 조직화되고 체계화 된 데이터로서 의사 결정권자에게 의미를 제공하는 것

★ 데이터베이스에서 데이터는 정보를 의미함

Data Processing

정보처리, 데이터에서 정보를 추출하는 과정, 방법을 나타냄

상황에 맞게 해석해 의미 있는 결과 도출

Data System

조직 운영에 필요한 데이터를 수집해 저장해 두었다가 필요할 때 유용한 정보를 만들어 주는 수단

Database

  • Data

    데이터베이스의 데이터는 정보로서의 데이터

    ▸ 수많은 데이터 중 중요하고 유용하기 때문에 사용자가 기억해야 할것 을 의미

  • Base

    기지

    ▸ 데이터는 base가 가진 체계와 규격에 맞춰진 데이터만 들어갈 수 있음

  • Database

    한 조직의 여러 응용시스템들이 공유해서 사용할 수 있도록 데이터들을 통합해 체계적으로 조직한 후 저장한 운영데이터의 집합

    ▸ 개별적인 정보 = 로우, 레코드

    ▸ 서로 구분되는 속성 = 칼럼

Database Features

  1. 데이터의 무결성 : 오류가 있어서는 안됨

  2. 데이터의 독립성 : 데이터베이스와 응용 프로그램은 서로 의존적인 관계 X (독립적 관계 + 상호보완적 관계)

  3. 데이터 중복 최소화 : 여러 군데 중복 저장되는 것 방지

  4. 보안 : 접근 허가된 사람만 접근 가능

  5. 응용 프로그램 제작 및 수정 용이 : 데이터베이스를 이용하면 통일된 방식으로 응용 프로그램 작성 가능 + 유지, 보수 쉬움

  6. 데이터의 안전성 향상 : 데이터 손상되더라도 원래의 상태로 복원 또는 복구 가능

  7. 실시간 접근 : 사용자의 데이터 요구에 실시간으로 응답 (dynamic한 특성 보장해줘야함)

  8. 계속 변화 : 데이터의 계속적인 삽입(insert), 삭제(delete), 수정(update) 통해 현재의 정확한 데이터 유지

  9. 동시 공유 : 서로 다른 데이터의 동시 사용 뿐만 아니라 같은 데이터의 동시 사용도 지원

  10. 내용 기반 참조 : 데이터가 저장된 주소나 위치가 아닌 내용(값)으로 참조

Database Users

  • 클라이언트 : 일반 사용자

  • 응용프로그래머 : 데이터베이스 전문 지식을 가지고 어플리캐이션을 개발할 목적으로 데이터베이스를 사용하는 사용자

  • 데이터베이스 관리자(DBA) : 데이터베이스를 구축, 운영, 통제하는 특별한 소수 사용자

  • DB서버 : DBMS를 사용하는 서버

Database Disadvantages

  1. 처음 구축할 때 운영에 비용과 자원이 많이 듬

  2. 데이터베이스에 있는 데이터들이 망가지지 않도록 DBMS을 사용하고 유지하는데 많은 교육과 주의가 필요함

→ 도입하는 것이 좋은지 나쁜지는 상황에 따라 다름

Hierarchy of databases

  1. 비트(Bit) : 컴퓨터에서 기억하는 상태의 가장 작은 단위, 두가지 상태를 나타낼 수 있음

  1. 바이트(Byte) : 8개의 상태를 나타낼 수 있음

  2. 필드(Field) : 바이트 몇 개를 모으면 문자나 숫자를 기억할 수 있는데, 이렇게 숫자나 문자 등 특정한 종류의 데이터를 저장하기 위한 영역

  3. 레코드(Record)

  4. 파일(File)

  5. 데이터베이스(Database) : 여러 개의 관련있는 파일을 논리적으로 연결해 필요한 부분을 적절히 찾고 활용할 수 있도록 한 것


Abstracting a database

데이터베이스의 추상화

사용자는 오직 어떻게 하면 빠르고 쉽게 데이터를 가져올 수 있는지에 관심

데이터베이스의 입장에서는 어떻게하면 안전하고 오류없이 데이터를 보관할 수 있을지에 관심

사용자와 데이터베이스의 물리적인 구조는 관심사가 전혀 다르며, 그 관심사에 따라 알아야 할 부분과 알지 않아도 될 부분이 나뉨

알지 않아도 되는 부분은 드러내지 않는데 이를 추상화라고 함

데이터베이스의 추상화를 구현한 대표적인 예

3단계 데이터베이스 구조(3-level-database architecture, =ANSI/SPARC 구조)

External Level

외부 단계

외부 단계(또는 뷰 단계)는 가장 추상화된 층으로 개별 사용자 또는 프로그램이 접근하는 층

사용자는 뷰 또는 SQL 쿼리를 통해 외부 스키마를 구성

외부스키마는 아래 단계에 위치한 개념스키마로부터 생성되거나 사용될 수 있으므로 서브스키마(Sub Schema)라고도 불림

한개의 개념스키마로부터 여러개의 서브스키마가 만들어질 수 있음

Conceptual Level

개념단계

개념스키마가 존재. 개념스키마는 논리스키마(Logical Schema)라고도 함

어떤 데이터들이 기억되어야 하는지, 그리고 그 데이터들 간에는 어떤 관계가 있는지를 정의

Internal Level

내부단계

데이터들이 실질적으로 어떻게 저장되어 있는지에 관심이 있는 층으로 내부스키마(Internal Schema)를 가짐

내부 스키마는 데이터베이스의 물리적인 저장 구조를 기술하므로 물리스키마(Physical Schema)라고도 함

Data Independence

데이터 독립성, 특정 스키마를 변경해도 상위 수준의 스키마 정의에 영향을 주지 않는 성질을 말함

3단계 계층구조로 나눠진 데이터베이스는 데이터의 독립성을 가짐

  • 논리적 데이터 독립성

    논리 스키마가 변하더라도 상위 단계에 존재하는 외부스키마가 영향을 받지 않는 성질

    → 데이터베이스에 새로운 데이터가 추가되거나 필드가 추가,삭제되는 경우 현재 사용하고 있는 응용 프로그램에서 사용자의 뷰에서 직접 관련되지 않는 부분은 영향받지 않음

  • 물리적 데이터 독립성

    물리 스키마가 바뀌더라도 개념 스키마나 사용자가 이용하는 응용프로그램은 영향을 받지 않음

    → 가끔 데이터베이스 관리 시스템의 성능 향상을 위해 시스템을 바꾸거나 물리스키마 구조를 변경하는 경우가 있음

Database modeling

데이터모델 : 현실 세계로부터 추출한 데이터의 의미, 데이터간의 관계, 제약 조건들을 기술한 것

사용자와 컴퓨터 중 어디에 초점을 맞추는 지에 따라 개념적 데이터 모델, 논리적 데이터 모델, 물리적 데이터 모델로 나눔

개념적 데이터 모델

사용자에 초점을 맞추는 데이터 모델로 사용자가 데이터를 어떻게 인식하는지에 관심

▸ 어떤 데이터들이 있고 각 데이터의 특징, 데이터 간의 관계 등을 정함

ex) ER 데이터 모델

논리적 데이터 모델

컴퓨터와 사용자 둘 다를 고려하는 데이터 모델

▸ 사용자가 이해하면서 실제로 저장 될 수 있는 구조를 설계

ex) 관계형 데이터 모델, 계층형 데이터 모델, 네트워크형 데이터 모델 등이 있음

물리적 데이터 모델

컴퓨터에 초점을 맞춘 모델로 데이터가 어떻게 컴퓨터에 저장되는지에 관심

ex) 레코드의 형식, 레코드 순서, 접근 경로 같은 정보들이 있음


Reference site


Table of contents


이 웹사이트는 jekyll로 제작되었습니다. Patrick Marsceill, Distributed by an MIT license.