27
1 데데데데데데 데 1 데 데데데데데데 데데 데데 2. 데데데데데데 데데 3. 데데데 데데 데데데 4. 데데 데데 데데데 vs. 데데데데데데 데데 데데데 5. 데데데데데데 데데데 데데 1. 데데

제 1 장 데이터베이스 기본 개념

  • Upload
    garret

  • View
    130

  • Download
    1

Embed Size (px)

DESCRIPTION

제 1 장 데이터베이스 기본 개념. 1. 개요. 2. 데이터베이스 정의. 3. 데이터 처리 시스템. 4. 파일 관리 시스템 vs. 데이터베이스 관리 시스템. 5. 데이터베이스 시스템 역사. 컴퓨터. 정보. 데이터. 1.1 데이터와 정보. 데이터 (data) : - 현실 세계로부터 관찰이나 측정 등의 수단을 통하여 수집한 사실 (facts) 이나 값 (values) 정보 (information) : - 데이터를 가공한 결과를 의미함 . - PowerPoint PPT Presentation

Citation preview

Page 1: 제  1  장 데이터베이스 기본 개념

1

데이터베이스

제 1 장 데이터베이스 기본 개념제 1 장 데이터베이스 기본 개념

2. 데이터베이스 정의2. 데이터베이스 정의

3. 데이터 처리 시스템3. 데이터 처리 시스템

4. 파일 관리 시스템 vs. 데이터베이스 관리 시스템4. 파일 관리 시스템 vs. 데이터베이스 관리 시스템

5. 데이터베이스 시스템 역사5. 데이터베이스 시스템 역사

1. 개요1. 개요

Page 2: 제  1  장 데이터베이스 기본 개념

2

데이터베이스

데이터 (data) :

- 현실 세계로부터 관찰이나 측정 등의 수단을 통하여 수집한 사실 (facts) 이나 값 (values)

정보 (information) :

- 데이터를 가공한 결과를 의미함 .

- 특정 상황에 대한 의사 결정을 내릴 수 있는 유용한 해석이나 데이터 상호간의 관계를 의미함.

1.1 데이터와 정보1.1 데이터와 정보

데이터데이터 정보정보

컴퓨터

데이터 (Data) vs. 정보 (Information)데이터 (Data) vs. 정보 (Information)

Page 3: 제  1  장 데이터베이스 기본 개념

3

데이터베이스

고객번호 이름 모델 년식 주소000000001000000002000000003000000004000000005000000006000000007000000008000000009000000010000000011000000012

.

.

.

김길자이종삼김장미최창호이춘화전청화길기태장준화김미희이재창백삼호주용식

.

.

.

소나타 I아반테

EF 소나타에쿠스

소나타 II다이너스티

엑셀엑센트

소나타 II그랜져 XG

아토스티뷰론

.

.

.

199019951999200019981997199219971994199819971996

.

.

.

서울제주인천강능제주서울서울수원인천대구대전광주

.

.

.

고객번호 이름 모델 년식 주소000000001000000002000000007000000009

.

.

.

김길자이종삼길기태김미희

.

.

.

소나타 I아반테엑셀

소나타 II...

1990199519921994

.

.

.

서울제주서울인천

.

.

.

고객번호 이름 모델 년식 주소

000000001000000007

.

.

.

김길자길기태

.

.

.

소나타 I엑셀

.

.

.

19901992

.

.

.

서울서울

.

.

.

차량 구입시기가 5

년이 경과한 차주를 찾자 !

서울에 거주하는 차주에 대한

정보를 찾자 !

자동차 회사 고객 데이터베이스자동차 회사 고객 데이터베이스 1 차 정보1 차 정보

2 차 정보2 차 정보

데이터를 가공하여 정보를 추출하는 과정데이터를 가공하여 정보를 추출하는 과정

Page 4: 제  1  장 데이터베이스 기본 개념

4

데이터베이스

1.2 메타데이터1.2 메타데이터

메타데이터 (Metadata) :

- 데이터에 대한 데이터를 의미함

- 데이터의 구조 (structure) 나 제약사항 (constraints) 등과 같은 속성 (properties) 이나 특성(characteristics) 을 기술하는 것

이름

고객번호

이름

모델

년식

주소

유형

integer

character

varchar

integer

varchar

길이

9

5

10

4

30

제약사항

1 고객번호

현재년도년식

의미

고객을 유일하게 식별할 수 있는 속성 값

고객의 이름

고객이 소유하고 있는 자동차 모델

고객이 소유하고 있는 생산년도

고객의 주소

자동차 회사 고객 데이터베이스의 메타 데이터자동차 회사 고객 데이터베이스의 메타 데이터

Page 5: 제  1  장 데이터베이스 기본 개념

5

데이터베이스

1.3 데이터와 지식1.3 데이터와 지식

데이터 vs 지식

기준 데이터갱신 빈도 동적

저장되는 양 대량구조적인 복잡성 단순한 구조

지식정적소량

복잡한 구조일반화 수준 상세화 일반화

Page 6: 제  1  장 데이터베이스 기본 개념

6

데이터베이스

데이터 (Data) vs. 지식 (Knowledge)데이터 (Data) vs. 지식 (Knowledge)

Education Experience Data

Knowledge Information

Decision-making

Actions

Data Knowledge

1. Detail2. Voluminous3. Lower levels of the enterprise for verification4. Change rapidly

1. Not to change as frequently2. Complex3. Generalizations(refer to entity types rather than to entity instances)

Function ofKnowledge and Data

in Enterprises

Page 7: 제  1  장 데이터베이스 기본 개념

7

데이터베이스

데이터베이스란 ? (DB: DataBase)

- 특정 조직 내에서 다수의 사용자들이 공유 (share) 할

수 있도록 통합 (integrate) 시키고 컴퓨터 저장

장치에 저장 (store) 시킨 운영 (operation) 데이터의

집합이다 .

2. 데이터베이스의 정의와 특성 - 2.1 데이터베이스의 정의2. 데이터베이스의 정의와 특성 - 2.1 데이터베이스의 정의

Page 8: 제  1  장 데이터베이스 기본 개념

8

데이터베이스

실시간 접근 (real-time accessibility)

계속적인 변화 (continuous evolution)

동시 공유 (concurrent sharing)

내용에 의한 참조 (content reference)

2.2 데이터베이스 특성2.2 데이터베이스 특성

Page 9: 제  1  장 데이터베이스 기본 개념

9

데이터베이스

일괄 처리 시스템 (batch processing system)

- 일정 기간동안 데이터를 모아서 일시에 작업을 처리하는 시스템

온라인 처리 시스템 (on-line processing system)

- 작업 처리 요구가 발생하면 즉시 시스템에서 처리함 .

DataProcessing

System

Batchprocessing

system

On-lineprocessing

system

On-lineprocessing

system

Off-lineprocessing

system

Centralizedprocessing

system

Distributedprocessing

system

실시간성

저장장치접근성

데이터집중

3. 데이터 처리 시스템 – 3.1 일괄 처리 시스템 vs 온라인 처리 시스템3. 데이터 처리 시스템 – 3.1 일괄 처리 시스템 vs 온라인 처리 시스템

데이터 처리 시스템의 분류데이터 처리 시스템의 분류

Page 10: 제  1  장 데이터베이스 기본 개념

10

데이터베이스

오프라인 처리 시스템 (off-line processing system)

- 특정 작업을 처리하는 도중에 저장 데이터에 접근할 수 없는 시스템

온라인 처리 시스템 (on-line processing system)

- 작업 처리 중 저장 테이터를 접근하여 사용할 수 있는 시스템

3.2 오프라인 처리 시스템 vs. 온라인 처리 시스템3.2 오프라인 처리 시스템 vs. 온라인 처리 시스템

3.3. 중앙집중 처리 시스템 vs 분산 처리 시스템3.3. 중앙집중 처리 시스템 vs 분산 처리 시스템

중앙집중 처리 시스템 (centralized processing system)

- 중앙 컴퓨터에 데이터를 집중시켜 처리하는 시스템

분산 처리 시스템 (distributed processing system)

- 지역적으로 떨어져 있는 컴퓨터에 데이터를 분산시켜 처리하는 시스템

Page 11: 제  1  장 데이터베이스 기본 개념

11

데이터베이스

파일 관리 시스템 (file management system)

- 파일을 생성검색 , 조작할 수 있는소프트웨어 시스템을 말함

파일 관리 시스템의 특성으로 인한 문제점

- 데이터의 중복 (data redundancy) 이 심각하게 발생

- 데이터의 불일치 (data inconsistency) 가 발생

- 응용 프로그램이 파일의 형식에 종속

- 프로그래밍 언어마다 파일의 형식이 다름

4. 파일 관리 시스템 vs 데이터베이스 관리 시스템 – 4.1 파일 관리 시스템4. 파일 관리 시스템 vs 데이터베이스 관리 시스템 – 4.1 파일 관리 시스템

Page 12: 제  1  장 데이터베이스 기본 개념

12

데이터베이스

강좌번호학번이름학과전화번호우편번호주소점수성적

등록 파일

학번이름학과학년전화번호우편번호주소지도교수생년월일

학생 파일

학생 파일 처리응용 프로그램

등록 파일 처리응용 프로그램

중복

파일 관리 시스템 이용 환경파일 관리 시스템 이용 환경

Page 13: 제  1  장 데이터베이스 기본 개념

13

데이터베이스

데이터베이스 관리 시스템 (DBMS : Database Management System)

- 파일 관리 시스템의 단점을 개선하여 데이터를 통합적으로 관리하는 소프트웨어 시스템을 말함 .

데이터베이스 관리 시스템 장점 - 데이터의 중복이 줄어듬

- 데이터의 불일치 (data inconsistency) 를 피할 수 있음

- 응용 프로그램과 데이터의 독립성이 유지됨

- 응용 프로그램과 데이터 형식의 표준화를 기함

- 데이터의 접근의 보안과 무결성 유지가 용이함

4.2 데이터베이스 관리 시스템4.2 데이터베이스 관리 시스템

데이터베이스 관리 시스템 단점 - 시스템을 이용하는 비용이 발생함 - 파일관리 시스템을 이용하는 것보다 상대적으로 속도가 느림

Page 14: 제  1  장 데이터베이스 기본 개념

14

데이터베이스

학번이름지도교수생년월일

학생 파일

강좌번호학번점수성적

등록 파일

학생 파일 처리응용 프로그램

등록 파일 처리응용 프로그램

학과학년전화번호우편번호주소

DBMS

공유

데이터베이스 관리 시스템 이용 환경데이터베이스 관리 시스템 이용 환경

Page 15: 제  1  장 데이터베이스 기본 개념

15

데이터베이스

데이터베이스발전 이슈

대형 소형 시스템

데이터베이스 모델 기본 부가 기능

클라이언트 - 서버 응용 중앙집중 분산 응용

크기

기능

분산

모델

부하

5. 데이터베이스 시스템 역사 - 데이터베이스 시스템 발전 이슈 -5. 데이터베이스 시스템 역사 - 데이터베이스 시스템 발전 이슈 -

Page 16: 제  1  장 데이터베이스 기본 개념

16

데이터베이스

5. 데이터베이스 시스템 역사 - 트랜잭션의 특징 -5. 데이터베이스 시스템 역사 - 트랜잭션의 특징 -

원자성 (Atomicity) : 트랜잭션의 처리는

완전히 끝마치지 않을 경우에는 전혀

이루어지지 않은 것과 같아야 한다 .

이러한 특성을 갂 ll or Nothing" 이라 한다 .

일관성 (Consistency) : 트랜잭션들간의

영향이 한 방향으로만 전달되어야 한다 .

고립성 (Isolation) : 트랜잭션의 부분적인

상태를 다른 트랜잭션에 제공해서는 안된다 .

지속성 (Durability) : 성공적인 트랜잭션의

수행 후에는 반드시 데이터베이스

( 디스크 ) 에 반영하여야 한다 .

Page 17: 제  1  장 데이터베이스 기본 개념

17

데이터베이스

1960 년대 ( 초창기 )

- DBMS 는 메인 프레임 컴퓨터에 탑재되는 제품들을 중심으로 발전

1980 년대

- 개인용 컴퓨터에 탑재 가능한 DBMS 개발됨

1980 년대 이후

- GUI 환경을 채택한 제품들이 출시됨

5.1 대형시스템에서 소형 시스템으로5.1 대형시스템에서 소형 시스템으로

Page 18: 제  1  장 데이터베이스 기본 개념

18

데이터베이스

개인용 데이터베이스

워크그룹 데이터베이스

크기에 따른 데이터베이스 분류크기에 따른 데이터베이스 분류

부서 데이터베이스 전사적 데이터베이스

Page 19: 제  1  장 데이터베이스 기본 개념

19

데이터베이스

초창기

- 사용자가 필요로 하는 대부분을 직접 프로그래밍하여 사용함

그 이후

- DBMS 개발 업체의 증가로 인하여 사용자의 편의의 기능이 추가되어 제공됨

- DBMS 판매 업체들이 부가적인 도구 형태로 지원함

- DBMS 에서 WWW 과 연동이 가능한 다양한 기능을 제공하는 데 주력함

5.2 데이터베이스 시스템의 제공 기능 추가5.2 데이터베이스 시스템의 제공 기능 추가

Page 20: 제  1  장 데이터베이스 기본 개념

20

데이터베이스

Database ServerI-ConnectEnterprise ReplicationExtensibilityDataBlade Developer Kit (DbDk)

IDS.2000

J/Foundation

Active/X & COM

Web DataBlade

Text DataBlade

Informix Office Connect

“Java-in-the-Server”

Active X and COM in the server

Web-Enable the Database

Full text search & retrieval

Excel spreadsheet add-in

InformixDynamicServer.2000

InformixInternetFoundation.2000

OLTP 전용DBMS

Internet 지원DBMS 부가 기능

기능이 확장된 InformixTM 구조기능이 확장된 InformixTM 구조

Page 21: 제  1  장 데이터베이스 기본 개념

21

데이터베이스

초창기

- 중앙집중 처리 시스템의 형태

그 이후

- 분산 데이터베이스 처리 응용이 개발됨

- 분산 데이터베이스는 논리적으로 통합된 형태의 서비스를 지원함

5.3 분산 데이터베이스 응용의 등장5.3 분산 데이터베이스 응용의 등장

Page 22: 제  1  장 데이터베이스 기본 개념

22

데이터베이스

분산 데이터베이스 시스템

분산 데이터베이스 vs. 분산 처리분산 데이터베이스 vs. 분산 처리

분산 처리 시스템

Page 23: 제  1  장 데이터베이스 기본 개념

23

데이터베이스

분산 데이터베이스 DBMS

분산 DBMS 가 물리적으로 분산되어 있는 데이터베이스를 논리적으로 하나의 시스템과 같이 동작하도록 지원

지역 DBMS

분산 데이터베이스 시스템을 구성하는 각 사이트 ( 컴퓨터 시스템 ) 의 데이터베이스를 관리

데이터 통신 시스템

분산 데이터베이스 시스템을 구성하는 각 사이트들이 상호간에 통신을 할 수 있도록 각종 정보 (예 , 사이트 통신 주소 , 통신 회선 속도 등 ) 를 관리

전역 시스템 카탈로그

분산 데이터베이스 시스템에 분산 저장된 데이터에 관한 정보 관리

분산 데이터베이스 시스템의 주요 구성요소분산 데이터베이스 시스템의 주요 구성요소

Page 24: 제  1  장 데이터베이스 기본 개념

24

데이터베이스

장점

성능 향상

신뢰성 향상

지역 시스템 단위의 용이한 확장성

현실세계 조직 체계와 유사성

단점

복잡성 증가

구축 비용 증가

보안성 확보의 어려움

분산 데이터베이스 적용 시 장단점분산 데이터베이스 적용 시 장단점

Page 25: 제  1  장 데이터베이스 기본 개념

25

데이터베이스

클라이언트 - 서버 - 클라이언트 (Client): 단일 사용자 컴퓨터로서 표현 , 계산 ,연결 , 데이터베이스 서비스 등을

자체적으로

수행함

- 서버 (Server) : 다중 사용자 컴퓨터로 공유 메모리를 포함하여 계산 ,연결 , 데이터베이스 서비스 등을

제공함

클라이언트 - 서버 컴퓨팅 모델의 기대효과 - 응용 프로그램의 부하 (load) 를 분산시킴

- 시스템의 성능을 향상시킬 수 있음

- 소프트웨어의 유지보수 비용 절감 및 이식성 증가

5.4 클라이언트 – 서버 응용의 등장5.4 클라이언트 – 서버 응용의 등장

클라이언트 - 서버 컴퓨팅 모델의 출현 배경 - 컴퓨터 관련 기술의 급격한 발전

- 컴퓨터 통신 기술 이용의 보편화

- 호스트 컴퓨터에서 과부하 발생의 단점 극복

Page 26: 제  1  장 데이터베이스 기본 개념

26

데이터베이스

파일 서버 구조

파일 서버 구조 vs. 데이터베이스 서버 구조파일 서버 구조 vs. 데이터베이스 서버 구조

데이터베이스 서버 구조

파일 서버 구조의 단점 네트워크 트래픽이 증가한다 .

클라이언트 컴퓨터는 fat client 이어야 한다 .

파일 서버가 관리하는 데이터베이스의 무결성 유지가 어렵다 .

Page 27: 제  1  장 데이터베이스 기본 개념

27

데이터베이스

초창기 데이터베이스 모델

- 계층 데이터 모델 (hierarchical data model)

- 네트워크 데이터 모델 (network data model)

1980 년대에서 최근

- 관계 데이터 모델 (relational data model)

현재

- 객체 지향 데이터모델 (object-oriented data model)

- 객체 - 관계 데이터모델 (object-relational data model)

5.5 데이터베이스 모델의 발전5.5 데이터베이스 모델의 발전