My Log

[정보처리기사 데이터베이스] #1. 데이터베이스 개념 본문

자격증 기록/정보처리기사

[정보처리기사 데이터베이스] #1. 데이터베이스 개념

My Log 2019. 9. 12. 17:07

1. 데이터베이스 정의

     - 통합된 데이터 (최소의 중복, 통제된 중복)

     - 저장된 데이터

     - 운영 데이터

     - 공용 데이터

 

 

2. 데이터베이스 특징

     - 실시간 접근성

     - 계속적인 변화

     - 동시 공용

     - 내용에 의한 참조 

 

 

3. 데이터베이스 시스템

     - 데이터베이스를 이용하여 자료를 저장하고 관리하여, 정보를 얻어내는 데 필요한 컴퓨터 중심의 시스템을 말함

 

     - 데이터베이스 시스템의 구성

 

 

4. 데이터베이스 관리 시스템(DBMS; DataBase Management System)

     가. 정의

            1) DBMS란 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는

              소프트웨어이다.

            2) 파일 시스템이 갖는 데이터 종속성과 중복성의 문제를 해결하고자 제안된 시스템이다.

                * 종속성으로 인한 문제 : 데이터의 논리적 구조 또는 데이터 접근방법, 저장방법 등을 변경할 때 응용 프로그램도 같이

                                                             변경해야 함.

         * 중복성으로 인한 문제 : 데이터의 일관성, 무결성, 보안성, 경제성 측면의 문제가 발생.

            3) 데이터의 논리적, 물리적 독립성이 보장된다.

                * 논리적 독립성 : 응용 프로그램과 데이터베이스를 독립시킴으로써, 데이터의 논리적 구조를 변경시키더라도

                                                응용 프로그램은 변경되지 않음

         * 물리적 독립성 : 응용 프로그램과 물리적 장치를 독립시킴으로써, 새로운 디스크를 도입하더라도 응용 프로그램에는

                                                영향을 주지 않고 물리적 구조만을 변경할 수 있음

 

     나. 기능

            - 정의 기능 : 데이터의 형과 구조, 제약조건 등을 정의하는 기능

            - 조작 기능 : 검색, 갱신, 삽입, 삭제 등의 인터페이스 제공

            - 제어 기능 : 데이터의 무결성 유지, 보안 및 권한 검사, 병행제어 등의 제어기능

 

 

5. 스키마(Schema)

     가. 정의

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

            - 데이터 개체, 속성, 관계 및 제약조건 등에 관해 전반적으로 정의한다.

            - 스키마는 데이터 사전(시스템 카탈로그)에 저장된다.

 

 

 

 

     나. 스키마의 3계층

            1) 외부 스키마 = 서브 스키마 = 사용자 뷰

                 - 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 논리적 구조를 정의한 것

                 - 하나의 데이터베이스 시스템에는 여러 개의 외부 스키마가 존재할 수 있으며, 여러 사용자가 공용할 수 있다.

                 - 실세계에 존재하는 데이터들을 어떤 형식, 구조, 배치로 화면을 통해 사용자에 보여줄 것인가?

 

            2) 개념 스키마 = 스키마 = 전체적인 뷰

                 - 데이터베이스의 전체적인 논리적 구조

                 - 개체 간의 관계와 제약조건, 접근 권한, 보안 및 무결성 규칙에 관한 명세를 정의

                 - 데이터베이스에 하나만 존재하며, 단순히 스키마라고 하면 개념 스키마를 의미하는 것이다.

                 - 데이터베이스에 실제로 '어떤' 데이터가 저장되었으며 데이터 간의 관계는 어떻게 되는가?

 

            3) 내부 스키마 = 저장 스키마

                 - 물리적 저장장치의 입장에서 본 데이터베이스의 구조

                 - 실제로 데이터베이스에 저장될 레코드의 물리적 구조를 정의하고, 내부 레코드의 물리적 순서 등을 나타낸다.

                 - 디스크에는 어떤 구조로 저장할 것인가?

 

 

6. 데이터베이스 언어

     - 데이터베이스 언어는 데이터베이스를 구축하고, 이용하기 위한 데이터베이스 시스템과의 통신 수단이다.

     - DBMS를 통해 사용하며, 기능과 목적에 따라 DDL, DML, DCL로 나뉜다.

 

     가. 데이터 정의 언어(DDL; Data Definition Language)

           - DB를 구축하거나 수정할 목적으로 사용하는 언어

           - 결과가 데이터 사전에 여러 개의 테이블로서 저장된다.

 

     나. 데이터 조작 언어(DML; Data Manipulation Language)

           - 사용자가 DB의 데이터를 실질적으로 조작할 수 있도록 하는 도구

           - 사용자(응용 프로그램)와 DBMS 간의 인터페이스를 제공한다.

           - 질의어는 비절차적 데이터 언어이다.

              * 비절차적 언어란 필요한 데이터만 명시하고 어떻게 구현하는지는 명시하지 않는 언어로서,

                 배우기 쉽고 사용하기 쉬우나 효율성 면에서 비효율적인 언어이다.

 

     다. 데이터 제어 언어(DCL; Data Control Language)

           - 무결성, 보안 및 권한 제어, 회복 등을 하기 위한 언어

           - 데이터를 보호하고 관리하는 목적으로 사용된다.

Comments