ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [한기교] SQL 활용 필기(1) - 데이터베이스의 정의, 역사
    비전공자 공부일기/:: DB - SQL 2020. 5. 2. 15:32

    한국기술교육대학교 온라인 평생교육원 강의

    https://e-koreatech.step.or.kr/page/lms

     

    SQL의 활용(교육시간 16시간)

     

    < 데이터베이스의 정의 >

    Database: 사람들이 필요로 하는 데이터를 모아놓은 것 / 관련 있는 데이터들의 집합

    --- 어느 한 조직의 다양한 응용 프로그램들이 공동으로 사용하는 데이터들을 통합하여 저장한 운영 데이터의 집합

    --- > 공동, 통합, 저장, 운영 / 데이터의 집합

    --- > 사람들이 필요로 하는 데이터를 모아둔 것

    ㅁ DB system: DB를 생성, 관리할 수 있도록 다양한 기능을 제공하는 소프트웨어 시스템

    그러나 Database라고 했을 때 DBMS를 의미할 때도 있음

     

    DBMS(Database Management System)

    - 데이터베이스를 생성 및 관리해주는 기능을 제공하는 소프트웨어 패키지 / 시스템

    - 데이터와 응용 프로그램 사이의 중계자

    - 모든 사용자와 응용 프로그램들이 데이터베이스를 공유할 수 있도록 지원해주는 범용 목적의 소프트웨어 시스템

    ㅁ 일반적으로 데이터베이스 시스템 = DB + DBMS + 응용프로그램



    < 데이터베이스 정의에 함축된 개념 >

    1) 공용데이터(Shared Data)
    - 한 조직의 여러 응용 프로그램이 공동으로 사용하는 것
    - 여러 사용자가 서로 다른 목적으로 공유함

    2) 통합된 데이터(Integrated Data)
    - 여러 부서에서 사용하는 데이터를 한 곳에 모아서 공동 관리하는 것
    - 최소한의 중복, 통제된 중복

    --- 여러 부서가 사용하는 데이터를 통합하여 중복성을 없애고 일관성을 유지함

    --- 각 부서가 데이터를 따로 가지고 있으면, 검색이나 운영 시에 편리함

    3) 저장된 데이터(Stored Data)

    - 컴퓨터가 접근할 수 있는 디스크와 같은 저장 매체에 저장된 것

     

    4) 운영 데이터(Operational Data)

    - 조직의 운영에 기본적으로 반드시 필요한 데이터를 저장하는 것

    - 조직의 고유한 기능을 수행하는 데 필수적인 데이터를 저장하는 것

     

     

    < 데이터베이스의 특징 >

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

    - 질의에 대한 실시간 처리 및 응답

     

    2. 계속적인 변화(Continuous Evolution)

    - 갱신, 삽입, 삭제: 동적 특성

     

    3. 동시 공용(Concurrent Sharing)

    - 여러 사용자가 동시에 사용함

     

    4. 내용에 의한 참조(Content References)

    - 위치나 주소가 아닌 에 따라 참조함

    --- 프로그래밍 언어에서 어떤 값을  찾으려 할 때는 '위치'에 의한 검색을 함

    --- 즉, 메모리 주소를 변수에 저장해 사용자가 검색할 수 있도록 한다.

    --- 그러나 데이터베이스는 주소가 아닌 내용에 의한 참조를 한다.

     

     

    < 데이터베이스 관리 시스템의 기능 >

    1. 데이터 정의 기능

    - 여러 사용자의 데이터를 통합하여 저장하고 공유할 수 있도록 데이터 모델에 따라서 정의하는 기능

     

    2. 데이터 조작 기능

    - 사용자와 데이터베이스 간의 의사소통

    - 데이터베이스의 접근 및 조작 기능 제공 (삽입/삭제/변경/검색)

    - 사용자가 사용하기 쉽고, 원하는 처리를 자연스럽게 표현할 수 있어야 함

     

    3. 데이터 제어 기능

    - 데이터 일관성과 무결성, 보안을 유지하는 기능

    - 백업과 파손 회복(Recovery) / 인증과 보안 (Authorization & Security) / 병행 제어(Concurrency Control)

     

    ** 데이터 변환은 필수 기능이 아니다

     

     

    < 데이터베이스 관리 시스템의 역사 >

     

    1세대 DBMS

    ㅁ  IDS (Integrated Data Store)

    - 최초의 범용 목적의 DBMS

    - 1960년대 초 GE의 Charles Bachman에 의하여 제시

    - Network Data Model 기반

     

    ㅁ IMS(Information Management System) DBMS

    - 1960년 후반 IBM에서 제시함

    - 계층적 데이터 모델에 기반함(hierarchy --> tree 형태)

    - 1970년대 초 많은 회사들이 자신들만의 DBMS를 만들기 시작함

     

    2세대 DBMS

    ㅁ Relational Data Model, SQL

    - IBM의 E.F. Codd가 최초로 제시. 현재까지 대부분의 데이터 구조에 사용됨

    --- 2차원 테이블 형태로 구성된 구조

    --- SQL: 관계형 DBMS에서 사용되는 표준 질의 언어

     

    ㅁ Commercial DBMS

    - Oracle, DB2, Ingress, Sybase, Informix

     

    3세대 DBMS

    ㅁ 데이터의 복잡성 증가

    - Image, Video 등

     

    ㅁ 새로운 데이터 모델의 대두

    - 객체지향 데이터베이스

    ---> 특수목적 DB에서 사용되고 있음. 범용적인 건 아님

    ---> 의외로(?) 2세대 RDBMS보다 성능적으로 나은 것은 아님

     

    현재 DBMS

    2세대 DBMS(관계형) + 3세대 DBMS(객체지향) --> ORDBMS (객체지향 관계형 Database)

     

     

    댓글

coding wanee