2. 2. 데이터베이스 관리 데이터베이스 관리
시스템 시스템
(DBMS)(DBMS) DBMS DBMS 의 발전 배경 의 발전 배경 (1) (1)
데이터베이스 관리 시스템데이터베이스 관리 시스템
(DBMS: DataBase Management System) (DBMS: DataBase Management System) P58P58
파일 중심 데이터 처리 시스템파일 중심 데이터 처리 시스템 (File system(
File system
))
- Operating System(os) - Operating System(os) 이 지원 이 지원 : : OS OS 의 의 Sub-system Sub-system
i. 각 응용 프로그램이 논리적 파일 구조를 정의하고 직접 물리적 파일 구조 로 구현
ii. 각 응용 프로그램이 물리적 데이터 구조에 대한 접근 방법을 구현 iii. 각 사용자가 데이터와 이를 처리하는 프로그램을 모두 관리 유지 iv. 응용 간의 데이터 공용이 불가능
☞ ☞ NoteNote
데이터의 종속성 (dependency) 과 중복성 (redundancy) 을 야기
DBMS DBMS 의 발전 배경 의 발전 배경 (2) (2)
파일 시스템에서 응용 프로그램과 파일과의 관계 파일 시스템에서 응용 프로그램과 파일과의 관계
1:1 의 관계
응용 프로그램 1
데이터 파일 1
응용 프로그램 2
데이터 파일 2
응용 프로그램 3
데이터 파일 3
응용 프로그램 n
데이터 파일 n ( 급여 ) ( 세금 정산 ) ( 퇴직금 ) ( 인사 )
...
...
DBMS DBMS 의 발전 배경 의 발전 배경 (3) (3)
PP42-45PP42-45
데이터 종속성 데이터 종속성 (Data Dependency) (Data Dependency)
응용 프로그램과 데이터 간의 상호 의존관계
문제점 : - 데이터의 구성 방법이나 접급 방법의 변경 시 관련 응용 프로그램도 동시에 변경해야 됨
- 응용 프로그램 관리가 곤란 ( 복잡 )
데이터 중복성 데이터 중복성 (Data Redundancy) (Data Redundancy)
한 시스템 내에 같은 내용의 데이터가 여러 파일에 중복 저장 되어 관리
문제점
일치성 (consistency) : 내부 자료간의 불일치 (inconsistency)
보안성 (security) : 중복 자료의 보안 수준 유지
경제성 (economics) : 저장공간낭비 , 중복 갱신 수행
무결성 (integrity) : 내 · 외부 자료간의 일치성
DBMS DBMS 의 발전 배경 의 발전 배경 (4) (4)
파일 관리 시스템 파일 관리 시스템 (file management system) (file management system) 과 응용 프로 과 응용 프로 그램 그램
응용 프로그램 1
데이터 파일 1
응용 프로그램 2
데이터 파일 2
응용 프로그램 3
데이터 파일 3
응용 프로그램 n
데이터 파일 n ( 급여 ) ( 세금 정산) ( 퇴직금 ) ( 인사 )
...
...
파일 관리 시스템 ( 공동 접근 루틴 )
데이터베이스 관리 시스템의 정의 데이터베이스 관리 시스템의 정의
P45P45
DBMS(Database management system) DBMS(Database management system) 이란 이란 ? ?
응용 프로그램과 데이터 사이의 중재자로서 모든 응용 프로
그램
( 사용자 )들이 데이터베이스를 공용할 수 있게 관리해 주
는 범용 소프트웨어 시스템
데이터베이스
응용 프로그램 1
응용 프로그램 2
응용 프로그램 n
데이터베이스 관리 시스템
(DBMS)
...
데이터 파일 1
데이터 파일 2
데이터 파일 3
데이터 파일 n
DBMS DBMS 의 필수 기능 의 필수 기능 (1) (1)
P46P461. 정의 1. 정의 (definition) (definition) 기능 기능 ⇒ DDL(Data D.
Lang.)
하나의 저장 구조 (storage structure) 로 여러 사용자의 요구를 지원할 수 있도록 데이터를 조직 (organize) 하는 기능
정의 기능의 요건
(1) 데이터의 논리적 구조 (logical structure) 를 명세 ( 明細 , description)
(2) 데이터의 물리적 구조 (physical structure) 를 명세
(3) 물리적 / 논리적 사상 (mapping) 을 명세
DBMS DBMS 의 필수 기능 의 필수 기능 (2) (2)
2. 조작
2.
조작(manipulation) (manipulation)
기능 기능⇒ DML(Data M. Lang.)
사용자와 데이터베이스 간의 interface 를 위한 수단
체계적 데이터베이스 접근 및 조작 : 검색 (retrieve), 갱신 (update), 삽입 (insert), 삭제 (delete)
데이터 언어로 표현 (DML)
사용하기가 쉽고 자연스러운 도구
원하는 연산의 명세 가능
효율적인 처리
3. 제어
3.
제어 (control) (control) 기능 기능⇒ DCL(Data Control Lang.)
데이터의 정확성 (correctness) 과 보안성 (security) 을 유지하는 기능
제어 기능의 요건
무결성 (integrity) 유지
보안 (security), 권한 (authority) 검사
동시성 제어 (concurrency control)
회복 / 복구 (recovery)
장점 장점
데이터 중복 (redundancy) 의 최소화
데이터의 공용 (sharing)
일관성 (consistency) 유지
무결성 (integrity) 유지
보안 (security) 보장
표준화 (standardization) 용이
기관 전체 데이터 요구의 조정
단점 단점
운영비의 overhead
특정 응용 프로그램의 복잡화
복잡한 backup 과 recovery
시스템의 취약성
DBMS DBMS 의 장단점 의 장단점
P48P48 2.5 2.5 DBMS DBMS 의 궁극적 목적 의 궁극적 목적
DBMS DBMS 의 궁극적 목적은 데이터 독립성 의 궁극적 목적은 데이터 독립성 (data (data independency)
independency)
1) 1) 논리적 데이터 독립성 논리적 데이터 독립성 (logical data independency) (logical data independency)
응용 프로그램에 영향을 주지 않고
논리적 데이터 구조의 변경이 가능
응용 프로그램의 효율적 개발이 가능
2) 2) 물리적 데이터 독립성 물리적 데이터 독립성 (physical data independency) (physical data independency)
응용 프로그램과 논리적 데이터 구조에 영향을 주지 않고 물리적 데이터 구조의 변경이 가능
저장 장치의 효율적 개발이 가능
데이터 독립성 구현 기법 데이터 독립성 구현 기법
P53P53
사상 (mapping)
데이터 구조 간의 사상과 데이터 독립성 데이터 구조 간의 사상과 데이터 독립성
응용 프로그램 1 응용 프로그램 2 응용 프로그램 n
A B C D B E F G A D
논리적 구조 사상
물리적 구조 사상 A B C D E F G H
A B C D E F G H ...
프로그램의 데이터 구조
데이터베이스의 논리적 구조
데이터베이스의 물리적 구조
...
...
...
DBMS DBMS 의 발전 과정 의 발전 과정 ( ( 역사 역사 ) )
P53P53
1. 1. 제 제 1 1 세대 세대 DBMS(first-generation DBMS) DBMS(first-generation DBMS)
IDS(Integrated Data Store)
최초의 범용 DBMS
1960 년대 초 General Electric(GE) 의 Charles Bachman 에 의 해 설계
네트워크 데이터 모델 (network data model) 의 기초
Bachman 은 또한 데이터 구조도 (data structure diagram) 도 제안
IMS(Information Management System) DBMS
1960 년대 후반 IBM 이 개발
계층 데이터 모델 (hierarchical data model) 의 기초
1970 년대 초에는 대형 컴퓨터 회사들이 DBMS 를 자체 제작 판매
▶ ▶ 2. 2. 제 제 2 2 세대 세대 DBMS DBMS
① 관계 데이터 모델 ① 관계 데이터 모델 (relational data model) (relational data model)
IBM 의 E.F.Codd 가 제안
관계형 (Relational Database) 이론의 기초
1980 년대 DBMS 의 주류가 되었고 계속 확장
② ② SQL SQL
IBM 이 관계 DBMS 의 일부 ( 질의어 ) 로 개발
세계 표준 데이터베이스 언어
③ ③ 주요 상용 주요 상용 DBMS(Commercial DBMS) DBMS(Commercial DBMS)
DB2, Oracle, Ingres, Sybase, Informix
④ ④ PC PC 기반 기반 DBMS DBMS
Access, FoxPro, dBase, Paradox, SQL Server
▶ ▶ 3. 3. 제 제 3 3 세대 세대 DBMS DBMS
① ① 사 용자의 데이터베이스 응용에 대한 사 용자의 데이터베이스 응용에 대한 복잡성 복잡성 (complexity)
(complexity) 증대 증대
Engineering
( 工學 ),images, videos, spatial
( 空間 ),time series
( 時系列 ),data mining
( 데이터 마이닝 )
② ② 사용자의 요구에 대처하기 위해 사용자의 요구에 대처하기 위해 새로운 새로운 data data model(DM)
model(DM) 을 기반으로 시스템 개발 을 기반으로 시스템 개발
객체지향 DBMS(OODBMS: Object-Oriented DBMS)
Object-oriented programming-basis
( 객체지향 프로그램 基盤 )
③ 현재 ③ 현재 : : 제 제 2 2 세대 세대 DBMS + DBMS + 제 제 3 3 세대 세대 DBMS DBMS