TOPCIT

[TOPCIT][02] I. 데이터와 데이터베이스의 이해 (에센스 정리 요약)

옐그멍이 2023. 3. 28. 12:00

학습 목표

1. 정보화시대의 데이터, 정보, 지식에 대한 개념과 특징을 설명할 수 있다.

2. 데이터처리 유형의 개념과 특징을 설명할 수 있다.

3. 파일처리 시스템의 개념과 특징을 설명할 수 있다.

4. 데이터베이스의 개념과 특징을 설명할 수 있다.

5. 데이터베이스 시스템의 개념과 구성요소를 설명할 수 있다.

6. ANSI-SPARC의 3-level Database Architecture를 설명할 수 있다.

7. 데이터 독립성에 대하여 설명할 수 있다.

8. 데이터베이스 관리자(DBA)의 역할과 데이터아키텍트(DA)의 개념을 설명할 수 있다.

9. DBMS(Database Management System)의 개념과 기능을 설명할 수 있다.

 

핵심 키워드

- 데이터, 정보, 지식

- 데이터베이스

- 일괄처리

- 온라인처리

- 분산처리

- DBMS

- 데이터 독립성

- ANSI-SPARC

- 3-level Database Architecture

01 데이터의 이해

데이터, 정보, 지식에 대한 개념과 특징

1. 데이터

- 현실세계에서 발견, 조사, 수집, 창작을 통한 기초자료인 수집 자원의 형태 그대로의 것

- 인간의 가치와 판단이 들어가 있지 않은 상태

- 자연 상태 그대로를 뜻하는 사실과 관련있음

 

2. 정보

- 다양한 데이터를 목적에 맞게 일정한 규칙에 따라 정리하고 분류하여 체계화한 형태

- 데이터를 일정한 양식으로 처리, 가공하면 특정 목적을 달성하는데 필요한 정보가 생산됨

 

3. 지식

- 수많은 구체화된 정보로부터 일반화된 사항

- 정보화된 데이터의 의미와 관계를 해석하고 연구하는 과정에서 생성됨

- 지식은 정보화된 데이터의 이미 부여와 관계의 해석, 인간의 가치와 판단에 따라 매우 다양할 수 있음

 

데이터 처리 유형의 개념과 특징

1. 일괄처리시스템(Batch Processing System)

- 데이터를 일정기간 또는 일정량을 모아서 한꺼번에 처리하는 방식

- 시스템 중심 처리방법(낮은 처리비용과 높은 시스템 성능 요구)

- 사전준비작업 필요(원시데이터 수집, 분류, 정리-> 파일에 수록)

- 대기시간 필요(즉시 처리 불가능)

- 파일이 일괄적으로 처리될 때까지 변동 내용의 수정 절차가 복잡하고 어려움

- ex) 급여처리 시스템, 성적 처리 시스템 등

 

2. 온라인처리시스템(On-line Processing System)

- 데이터가 컴퓨터로 전송되면 컴퓨터는 즉시 데이터를 처리하는 방식(실시간 처리 시스템)

- 사용자 중심 처리방법(높은 처리비용과 낮은 시스템 성능 요구)
- 사전준비작업 불필요

- 데이터의 현재성 유지

- 유지, 보수, 회복의 어려움

- ex) 항공, 철도 등의 좌석 예약 처리 시스템, 은행 예금 처리 시스템 등

 

3. 분산처리시스템

- 지리적으로 분산되어 있는 처리기와 데이터베이스를 네트워크로 연결하여 처리하는 방식

- 클라이언트/서버 시스템 형태로 운영

- 연산속도 및 신뢰성 향상

- 자원의 효율적 이용 증대

- 소프트웨어 개발 난이도, 보안 수준, 설계 복잡성 등이 상대적으로 높음

 

02 데이터베이스의 이해

파일처리시스템의 개념

- 물리적인 디스크에서 사용자가 기록한 데이터를 배치하고 관리하기 위한 체계

- 일반적으로 디렉토리 구조의 계층적 파일 시스템이 사용됨

- 각 개별 응용프로그램이 자신이 처리할 개별적인 파일을 접근하여 검색, 입력, 삭제 및 수정을 하는 것

 

파일처리시스템의 특징

- 응용 프로그램은 응용 프로그래머가 생각하는 논리적 파일 구조를 직접 물리적 파일 구조로 구현해야 함

- 응용 프로그래머는 물리적 데이터구조에 대해 잘 알고 있어야만 데이터에 대한 접근 방법을 응용 프로그램 속에 구현시킬 수 있음

 

파일처리시스템의 문제점

- 데이터 독립성 보장 미흡 : 프로그램 의존적

- 데이터 일관성 보장 문제 : 파일의 시간 의존성

- 데이터 무결성 보장 문제 : 의미적으로 같은 값은 동일하게 유지되어야 함

- 공유성, 사용 편의성 저조 : 낮은 경제성, 보안관리 저조 

 

데이터베이스의 개념

- 통합되고, 운영되고, 저장되고, 공유되는 특징이 있음

- 중복된 데이터를 한 군데 집약시켜서 최대한 중복을 배제한 상태에서 관리함

 

데이터베이스의 특징

구분 내용
실시간 접근성 (Real-time Accessibilities) 수시적이고 비정형적인 질의(Query)에 대해 실시간 응답
계속적인 변화 (Continuous Evolution) 갱신, 삽입, 삭제: 동적 특성 (이러한 변화 속에서 항상 현재의 상태를 정확히 유지)
동시 공용 (Concurrent Sharing) 동일 데이터를 여러 사람이 다른 방법으로 동시에 공용할 수 있도록 지원
내용에 의한 참조 (Contents Reference) 위치나 주소가 아닌, 사용자가 요구하는 데이터의 내용, 즉 값(Value)에 따라 참조

 

03 데이터베이스 시스템의 이해

데이터베이스 시스템(DBS)의 개념

- 데이터를 Database에 저장하고 관리해서 필요한 정보를 생성하는 컴퓨터 중심의 시스템

 

DBS 구성요소

구분 내용
데이터베이스 한 조직의 여러 응용시스템이 공유하기 위해 최소의 중복으로 통합, 저장된 운영 데이터의 집합
데이터베이스 언어 (Database Language) 사람과 시스템의 인터페이스를 제공하는 도구
사용자 데이터베이스 관리자, 데이터베이스 응용 프로그래머, 데이터베이스 사용자
데이터베이스 관리시스템 (DBMS) 데이터베이스를 구축하고 이용하는 기능을 제공하는 시스템 SW

 

데이터독립성

- 끊임없이 요구되는 사용자 요구사항에 대해 화면과 DB간에 서로 독립성을 유지하기 위한 목적으로 데이터독립성 개념이 출현

 

ANSI-SPARC의 3-level Database Architecture

항목 내용 비고
외부스키마 (External Schema) - View 단계 여러 개의 사용자 관점으로 구성
- DB의 개인 사용자나 응용프로그래머가 접근하는 DB 정의
- 사용자 관점
- 접근하는 특성에 따른 스키마 구성
개념스키마 (Conceptual Schema) - 개념단계 하나의 개념적 스키마로 구성 모든 사용자 관점을 통합한 조직 전체의 DB를 기술하는 것
- 모든 응용시스템들이나 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 DB를 기술한 것으로 DB에 저장되는 Data와 그들 간의 관계를 표현하는 스키마
- 통합 관점
내부스키마 (Internal Schema) - 내부단계, 내부 스키마로 구성, DB가 물리적으로 저장된 형식
- 물리적 장치에서 Data가 실제적으로 저장되는 방법을 표현하는 스키마
- 물리적 저장구조

 

두 영역의 데이터 독립성

종류 내용 특징
논리적 독립성 - 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원하는 것
- 논리적 구조가 변경되어도 응용 프로그램에 영향 없음
- 사용자 특성에 맞는 변경가능
- 통합 구조 변경 가능
물리적 독립성 - 내부스키마가 변경되어도 외부/개념 스키마는 영향을 받지 않도록 지원하는 것
- 저장장치의 구조변경은 응용 프로그램과 개념스키마에 영향 없음
- 물리적 구조 영향 없이 개념구조 변경가능
- 개념 구조 영향 없이 물리적인 구조 변경 가능

 

DBMS(Database Management System)의 개념

- 파일시스템의 문제점인 종속성과 중복성의 문제를 해결하고자 고안된 시스템

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

 

DBMS의 기능

- 다 사용자 간의 데이터 공유

- 권한 없는 사용자의 데이터 접근 통제

- 다양한 사용자에게 다양한 형태의 인터페이스 제공

- 데이터 사이에 존재하는 복잡한 관련성을 표현

- 데이터베이스의 무결성을 보장

 

DBMS의 개념도와 주요기능

DBMS의 구성요소

구성요소 설명
DDL 컴파일러 - DDL로 명세된 스키마를 내부 형태 즉, 메타데이터로 처리하여 시스템 카탈로그에 저장
- 모든 DBMS 모듈들은 필요 시에 이 카탈로그 정보를 접근해서 이용함
질의어 처리기 일반 사용자가 제출한 고급 질의문을 처리함. 즉, 이것은 검사하고 파싱해서 컴파일함. 그리고 DB 접근코드를 생성한 뒤, 실행을 위해 런타임 DB 처리기에 보내짐
DML 예비 컴파일러 응용 프로그램에 삽입된 DML 명령문을 추출하고, 추출된 DML명령문은 DB접근을 위한 목적코드로 컴파일 되도록 DML 컴파일러에 보내짐
DML 컴파일러 넘겨받은 DML 명령어를 파싱하고 컴파일하여 목적 코드를 생성함
런타임 데이터베이스 처리기 실행시간에 DB 접근을 관리함. 즉, 검색이나 갱신과 같은 DB 연산을 저장하고 데이터 관리자를 통해 DB에 실행시킴
트랜잭션 관리자 - DB에 접근하는 과정에서 무결성 제약조건의 만족여부, 사용자의 권한 검사 등 체크
- 트랜잭션의 병행제어나 장애발생 시의 회복작업 등을 수행함
저장 데이터관리자 디스크에 저장되어 있는 사용자 DB나 카탈로그 접근을 책임짐
728x90