<데이터베이스 시스템의 개요>
1. 정보 처리 시스템
1) 데이터와 정보
- 데이터 != 정보
- 데이터 : 현실 세계로부터 관찰이나 측정을 통해 수집된 사실이나 값
- 정보 : 의사결정을 할 수있게 하는 지식으로서 데이터의 유효한 해석이나 데이터 상호관계
- Information = Process(Data)
2) 정보가 유용성을 가지기 위한 조건
- 정확성
- 현재성
3) 정보처리 시스템 : 컴퓨터가 정보를 생성하기 위해 데이터를 처리하는 작업
4) 데이터베이스 시스템 : 정보 처리 시스템이 기능을 효율적으로 수행할 수 있게 하는 도구
5) 정보 시스템 : 한 기관을 위해 데이터를 수집, 조직, 저장하고 정보를 생성, 분배하는 수단
2. 데이터 처리 시스템
1) 3V(빅데이터의 3대 요소)
① 크기(Volume) : 수십Tb 이상
② 속도(Velocity) : 실시간, 스트림 처리
③ 다양성(Variety) : 정형, 비정형, 반정형
+ 정확성(Veracity), 가치(Value)
2) 데이터 처리 단위
- 트랜잭션 : 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위
3) 분류
ⓐ 일괄 처리 : 유사한 트랜잭션을 한데 모아 한꺼번에 처리
- 장점 : 높은 시스템 성능과 낮은 처리 비용
- 단점 : 응답시간 길고 사전 준비 작업 요구
- 적용 : 순차 접근 방법 이용 업무 ex) 성적처리, 급여계산, 납세고지서
ⓑ 실시간 처리 : 유사한 데이터가 즉시 컴퓨터에 전송, 그 데이터는 처리후 원하는 장소로 보냄(사용자 중심)
- 장점 : 빠른 응답시간, 사전 준비 작업 불필요
- 단점 : 낮은 시스템 성능과 높은 처리 비용
- 적용 : 은행, 항공기 예약 시스템 등
4) 분산 처리 : 각 처리기가 클라이언트도 되고 서버가 되기도 함
- 목표
- 위치 투명성(Location Transparency) : 데이터의 논리적인 명칭만으로 액세스 가능함
- 복제 투명성(Replication Transparency) : 데이터가 중복되더라도, 사용자는 하나의 데이터가 존재하는 것처럼 사용/ 시스템은 자동으로 여러 자료에 대한 작업을 수행함
- 병행 투명성(Concurrency Transparency) : 다수의 트랜잭션들이 동시에 실행되더라도 그 트랜잭션의 결과는 영향x
- 장애 투명성(Failure Transparency) : 컴퓨터 장애가 나도 트랜잭션을 정확하게 처리함
2. 데이터 베이스
1) 정의 : 한 조직의 여러 응용 시스템들이 공용하기 위해 통합, 저장한 대용량의 운영데이터의 집합
2) 특성
- 실시간 접근성(real-time accessibilities) : 질의에 대한 실시간 처리 및 응답
- 계속적인 변화(continuous evolution) : 갱신, 삽입, 삭제 같은 동적 특성
- 동시 공용(concurrent sharing) : 여러 사용자가 동시에 사용
- 내용에 의한 참조(content reference) : 위치나 주소가 아닌 값에 따라 참조
- 지속성(presistent) : 일시적이지 않고 오래 지속됨
- 상호 관련성(inter-related) : 현실 세계를 모델로 함
3) 개념적 구성 요소
① 개체(entity) : 데이터 베이스 내에 구별할 수 있는 객체, 레코드에 해당
② 관계(relationship) : 2개 이상의 개체를 연결한 집단화로 이루어짐
- 속성 관계 : 개체 내(intra-entity) 관계
- 개체 관계 : 개체 간(inter-entity) 관계
③ 속성 : 개체 또는 관계의 기초적인 성질 나타냄, 데이터 항목 또는 필드
4) 데이터 베이스 구조
① 논리적 구조 : 사용자의 관점에서 본 데이터의 개념적 구조, 데이터의 논리적 배치, 논리적 레코드
② 물리적 구조 : 저장 관점에서 본 데이터의 물리적 배치, 데이터의 실제 구조, 물리적 레코드
5) 3단계 데이터 베이스
- 외부 스키마 : 데이터베이스의 개개 사용자나 응용 프로그래머가 접근하는 데이터베이스를 정의한 것
- 개념 스키마 : 점 기관적인 입장에서 데이터베이스를 정의한 것
- 내부 스키마 : 저장장치 입장에서 데이터베이스 전체가 저장되는 방법을 명시한것
> 외부 스키마가 논리적 구조를 가진 개념 스키마가 되고, 접근방법을 명시하면서 내부 스키마가 된다.
3. DBMS
1) 발전 배경 : 데이터 공용의 어려움/ 파일 시스템의 데이터 종속성과 중복성
2) 정의 : 데이터베이스를 공용할 수 있도록 관리하는 시스템 소프트웨어
> DBMS를 이용하면 자세한 설명 없이, 원하는 데이터와 처리 작업만을 DBMS에 요청하면 됨
3) 기능
- 정의 기능 : 다양한 형태의 데이터 요구를 지원할 수 있도록 가장 적절한 데이터베이스 구조를 정의할 수 있는 기능(DDL-Data Definition Language) ex) select, insert, delete, update
- 조작 기능 : 검색, 삽입, 삭제, 갱신같은 기능을 제공 (DML-Data Manipulation Language)
- 제어 기능 : 데이터의 정확성과 보안성을 유지하는 기능 (DCL-Data Control Language) ex) commit, rollback
4) 장단점
- 장점 : 데이터 중복 최소화/공용/일관성과 무결성 유지/보안 보장, 개발시간 단축 및 편리성 증대, 표준화
- 단점 : 운영비의 증대, 복잡한 백업과 회복, 일부 고장이 전체 시스템을 정지
5) 데이터의 독립성
- DBMS가 추구하는 궁극적인 목적
- 데이터 베이스의 구조를 변경시키더라도 기존 응용프로그램에 영향 주지 않음
- 논리적 데이터 독립성
- 물리적 데이터 독립성
* View : 하나 이상의 기본 테이블로부터 유도된 이름을 가진 가상 테이블
6) DBMS 발전과정
계층 -> 네트워크 -> 관계(오라클, MySQL) -> 객체 지향 -> 객체 관계 -> XML
7) 데이터베이스 시스템의 구성
- 데이터베이스(DB)
- 데이터베이스 관리 시스템(DBMS)
- 데이터 언어 : 정의어(DDL), 조작어(DML), 제어어(DCL)
- 사용자
- 데이터베이스 관리자(DBA)
- 데이터베이스 컴퓨터
'Major > Database' 카테고리의 다른 글
[파일 처리] 03 파일 입출력 제어 (0) | 2022.04.09 |
---|---|
[파일 처리] 02 화일 저장 장치 (0) | 2022.04.06 |
[파일 처리] 01 화일의 기본 개념 (0) | 2022.04.06 |
[데이터베이스설계] Mysql stored function 피보나치(fibonacci) (0) | 2021.11.18 |
[데이터 마이닝] WEAK 정리... (0) | 2021.10.14 |