<4D F736F F F696E74202D20BFC0B6F3C5AC2D31C0E52DB5A5C0CCC5CDBAA3C0CCBDBA20BDC3BDBAC5DB2E BC8A3C8AF20B8F0B5E55D>

Similar documents
슬라이드 제목 없음

02-01 데이터베이스의필요성 데이터베이스의정의와특성

Microsoft PowerPoint - 2장 (DBConcepts) [호환 모드]

금오공대 컴퓨터공학전공 강의자료

DBMS & SQL Server Installation Database Laboratory

슬라이드 제목 없음

머리말

Microsoft PowerPoint - 3장-MS SQL Server.ppt [호환 모드]

Microsoft PowerPoint - 사본 - OAS09-사무자동화 기술(DB).ppt

슬라이드 제목 없음

lecture01

슬라이드 제목 없음

<4D F736F F F696E74202D E DB0FCB0E820BBE7BBF3BFA120C0C7C7D120B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20BCB3B0E8>

PowerPoint Presentation

금오공대 컴퓨터공학전공 강의자료

슬라이드 제목 없음

MySQL-.. 1

untitled

쉽게 풀어쓴 C 프로그래밊

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

Microsoft PowerPoint - QVIZMVUMWURI.pptx

Cloud Friendly System Architecture

<4D F736F F F696E74202D20BFC0B6F3C5AC2D38C0E52DBAE4BFCD20BDC3BDBAC5DB20C4ABC5BBB7CEB1D72DBFC0B6F3C5AC2E BC8A3C8AF20B8F0B

PowerPoint 프레젠테이션

VENUS Express 사용자 매뉴얼

PowerPoint 프레젠테이션

Windows 8에서 BioStar 1 설치하기

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

[Brochure] KOR_TunA

JDBC 소개및설치 Database Laboratory

PowerPoint Template

12. 데이타베이스 설계

슬라이드 1

Microsoft PowerPoint MySQL 연동.ppt

Microsoft PowerPoint - Database.ppt

PowerPoint Presentation

Ç¥Áö

Microsoft PowerPoint - 사본 - DB06-SQL,시스템카탈로그,뷰.ppt

Microsoft PowerPoint - 10Àå.ppt

PowerPoint Presentation

Chapter 5 비즈니스인텔리젼스의기초 : 데이터베이스와정보관리

USER GUIDE

<4D F736F F F696E74202D203037C1D6C2F75F5BB1B3C0E730362C30375D5FC7CFB5E5BFFEBEEEBFCD20BCD2C7C1C6AEBFFEBEEE2CB5A5C0CCC5CDC0DABFF8B0FCB8AE>

Microsoft PowerPoint SQL 추가 기능

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint Python-DB

3 장. 데이터와경영정보시스템

TTA Journal No.157_서체변경.indd

PowerPoint 프레젠테이션

슬라이드 제목 없음

Level 학습 성과 내용 1수준 (이해) 1. 기본적인 Unix 이용법(명령어 또는 tool 활용)을 습득한다. 2. Unix 운영체계 설치을 익힌다. 모듈 학습성과 2수준 (응용) 1. Unix 가상화 및 이중화 개념을 이해한다. 2. 하드디스크의 논리적 구성 능력

DW 개요.PDF

untitled

Microsoft PowerPoint - chap01-C언어개요.pptx

항목

6장. SQL

PowerPoint 프레젠테이션

PowerPoint Template

Tablespace On-Offline 테이블스페이스 온라인/오프라인

Discrete Mathematics

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Object Oriented Analyis & Design Training Agenda

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

금오공대 컴퓨터공학전공 강의자료

제8장 자바 GUI 프로그래밍 II

ETL_project_best_practice1.ppt

FileMaker 15 ODBC 및 JDBC 설명서

<C1A4BAB8C3B3B8AE5FBBEABEF7B1E2BBE75FC7CAB1E25F E687770>

10.ppt

슬라이드 1

PowerPoint 프레젠테이션

(......).hwp

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

금오공대 컴퓨터공학전공 강의자료

Spotlight on Oracle V10.x 트라이얼프로그램설치가이드 DELL SOFTWARE KOREA

Spring Data JPA Many To Many 양방향 관계 예제

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

IP 심화 라우팅프로토콜적용시 라우팅테이블에서 이니셜이있는네트워크를설정하는것 : onnected 직접연결된네트워크를의미한다. 그러므로라우팅은 나는이런네트워크와연결되어있다. 를직접연결된라우터들에게알려주는것 1>en 1#conf t 1(config)#router rip 1


금오공대 컴퓨터공학전공 강의자료

Chap7.PDF

< D53514C2CBAE42CBDC3BDBAC5DBC4ABC5BBB7CEB1D72D3130B3E2B0A3B1E2C3E2BAD0B7F9C1FD28C5EBC7D5292E687770>

dbms_snu.PDF

MySQL-Ch10

Intra_DW_Ch4.PDF

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

소만사 소개

03-01 데이터모델링과데이터모델의개념 개체-관계모델 논리적데이터모델

초보자를 위한 ADO 21일 완성

슬라이드 제목 없음

FileMaker ODBC 및 JDBC 가이드

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

슬라이드 1

< B3E220C1A4BAB8C3B3B8AEBBEABEF7B1E2BBE B3E2B0A320B1E2C3E2B9AEC1A6C0BAC7E02E687770>

13주-14주proc.PDF

untitled

Transcription:

컴퓨터를사용하여정보를수집하고분석하는데데이터베이스기술이 활용되고있음 정보와데이터는서로다름 데이터베이스 (database) 의정의 데이터베이스는조직체의응용시스템들이공유해서사용하는운영데이터 (operational data) 들이구조적으로통합된모임이다. 데이터베이스의 구조는사용되는데이터모델에의해결정된다. 2

( 계속 ) 데이터베이스의예 대학에서는데이터베이스에학생들에관하여신상정보, 수강과목, 성적등을 기록하고, 각학과에개설되어있는과목들에관한정보를유지하고, 교수에관해서신상정보, 담당과목, 급여정보를유지한다. 항공기예약시스템에서는여행사를통해항공기좌석을예약하면모든예약 정보가데이터베이스에기록된다. 3

데이터베이스의특징 ( 계속 ) 데이터베이스는데이터의대규모저장소로서, 여러부서에속하는여러사용자에의해동시에사용됨 모든데이터가중복을최소화하면서통합됨 데이터베이스는한조직체의운영데이터뿐만아니라그데이터에관한 설명 ( 데이터베이스스키마또는메타데이터 (metadata)) 까지포함. 프로그램과데이터간의독립성이제공됨 효율적으로접근이가능하고질의를할수있음 데이터베이스관리시스템 (DBMS: Database Management System) 데이터베이스를정의하고, 질의어를지원하고, 리포트를생성하는등의작업을수행하는소프트웨어 4

1.11 데이터베이스시스템개요 데이터베이스스키마 전체적인데이터베이스구조를뜻하며자주변경되지는않음 데이터베이스의모든가능한상태를미리정의 내포 (intension) 라고부름 데이터베이스상태 특정시점의데이터베이스의내용을의미하며, 시간이지남에따라 계속해서바뀜 외연 (extension) 이라고부름 5

1.11 데이터베이스시스템개요 ( 계속 ) 데이터베이스스키마 DEPARTMENT(DEPTNO, DEPTNAME, FLOOR) EMPLOYEE(EMPNO, EMPNAME, TITLE, DNO, SALARY) 6

1.11 데이터베이스시스템개요 ( 계속 ) 데이터베이스시스템 (DBS: Database System) 의구성요소 7

1.11 데이터베이스시스템개요 ( 계속 ) 데이터베이스 조직체의응용시스템들이공유해서사용하는운영데이터들이 구조적으로통합된모임 시스템카탈로그 ( 또는데이터사전 ) 와저장된데이터베이스로 구분할수있음 시스템카탈로그 (system catalog) 는저장된데이터베이스의 스키마정보를유지 8

1.11 데이터베이스시스템개요 ( 계속 ) 9

DBMS 1.11 데이터베이스시스템개요 ( 계속 ) 사용자가새로운데이터베이스를생성하고, 데이터베이스의구조를 명시할수있게하고, 사용자가데이터를효율적으로질의하고 수정할수있도록하며, 시스템의고장이나권한이없는 사용자로부터데이터를안전하게보호하며, 동시에여러사용자가 데이터베이스를접근하는것을제어하는소프트웨어패키지 데이터베이스언어라고부르는특별한프로그래밍언어를한개 이상제공 SQL 은여러 DBMS 에서제공되는사실상의표준데이터베이스언어 10

1.11 데이터베이스시스템개요 ( 계속 ) 11

사용자 1.11 데이터베이스시스템개요 ( 계속 ) 데이터베이스사용자는여러부류로나눌수있음 하드웨어 데이터베이스는디스크와같은보조기억장치에저장되며, DBMS 에서원하는정보를찾기위해서는디스크의블록들을주기억 장치로읽어들여야하며, 계산이나비교연산들을수행하기위해 중앙처리장치가사용됨 DBMS 자체도주기억장치에적재되어실행되어야함 12

1.11 데이터베이스시스템개요 ( 계속 ) 데이터베이스시스템의요구사항 데이터독립성 효율적인데이터접근 데이터에대한동시접근 백업과회복 중복을줄이거나제어하며일관성유지 데이터무결성 데이터보안 쉬운질의어 다양한사용자인터페이스 13

1.2 화일시스템 vs. DBMS 화일시스템을사용한기존의데이터관리 화일시스템은 DBMS 가등장하지않았을때인 1960 년대부터 사용되어왔음 화일의기본적인구성요소는순차적인레코드들 한레코드는연관된필드들의모임 화일을접근하는방식이응용프로그램내에상세하게표현되므로 데이터에대한응용프로그램의의존도가높음 14

1.2 화일시스템 vs. DBMS( 계속 ) 15

1.2 화일시스템 vs. DBMS( 계속 ) 그림 1.6에서두개의코볼프로그램에는 Employee 화일의필드들이열거되어있다. 만일 Employee 화일에사원의휴대폰번호를추가로나타내려면 Employee 화일의레코드를하나씩읽어서, 휴대폰번호필드를추가한레코드를새로운 Employee 화일에기록하는프로그램을작성해야한다. 그다음에기존의 Employee 화일을사용하던모든응용프로그램들을찾아서휴대폰번호필드를추가해야한다. 16

1.2 화일시스템 vs. DBMS( 계속 ) 17

화일시스템의단점 1.2 화일시스템 vs. DBMS( 계속 ) 데이터가많은화일에중복해서저장됨 18

1.2 화일시스템 vs. DBMS( 계속 ) 화일시스템의단점 ( 계속 ) 다수사용자들을위한동시성제어가제공되지않음 검색하려는데이터를쉽게명시하는질의어가제공되지않음 보안조치가미흡 회복기능이없음 프로그램 - 데이터독립성이없으므로유지보수비용이많이소요됨 화일을검색하거나갱신하는절차가상대적으로복잡하기때문에 프로그래머의생산성이낮음 데이터의공유와융통성이부족 19

1.2 화일시스템 vs. DBMS( 계속 ) DBMS 를사용한데이터베이스관리 여러사용자와응용프로그램들이데이터베이스를공유 사용자의질의를빠르게수행할수있는인덱스등의접근경로를 DBMS 가 자동적으로선택하여수행 권한이없는사용자로부터데이터베이스를보호 여러사용자에적합한다양한인터페이스를제공 데이터간의복잡한관계를표현하며, 무결성제약조건을 DBMS 가 자동적으로유지 시스템이고장나면데이터베이스를고장전의일관된상태로회복시킴 프로그램에영향을주지않으면서데이터베이스구조를변경할수있음 프로그램 - 데이터독립성 (program-data independence) 20

1.2 화일시스템 vs. DBMS( 계속 ) 21

DBMS 의장점 1.2 화일시스템 vs. DBMS( 계속 ) 중복성과불일치가감소됨 시스템을개발하고유지하는비용이감소됨 표준화를시행하기가용이 보안이향상됨 무결성이향상됨 조직체의요구사항을식별할수있음 다양한유형의고장으로부터데이터베이스를회복할수있음 데이터베이스의공유와동시접근이가능함 22

1.2 화일시스템 vs. DBMS( 계속 ) 23

1.2 화일시스템 vs. DBMS( 계속 ) DBMS 선정시고려사항 기술적요인 DBMS 에사용되고있는데이터모델, DBMS 가지원하는사용자 인터페이스, 프로그래밍언어, 응용개발도구, 저장구조, 성능, 접근 방법등 경제적요인 소프트웨어와하드웨어구입비용, 유지보수비용, 직원들의교육지원 등 24

DBMS 의단점 1.2 화일시스템 vs. DBMS( 계속 ) 추가적인하드웨어구입비용이들고, DBMS 자체의구입비용도상당히 비쌈 직원들의교육비용도많이소요됨 비밀과프라이버시노출등의단점이존재할수있음 초기의투자비용이너무클때, 오버헤드가너무클때, 응용이단순하고 잘정의되었으며변경되지않을것으로예상될때, 엄격한실시간처리 요구사항이있을때, 데이터에대한다수사용자의접근이필요하지않을 때는 DBMS 를사용하지않는것이바람직할수있음 25

13DBMS 1.3 발전과정 데이터모델 데이터베이스의구조를기술하는데사용되는개념들의집합인구조 ( 데이터 타입과관계 ), 이구조위에서동작하는연산자들, 무결성제약조건들 사용자에게내부저장방식의세세한사항은숨기면서데이터에대한 직관적인뷰를제공하는동시에이들간의사상을제공 26

데이터모델의분류 1.3 DBMS 발전과정 ( 계속 ) 고수준또는개념적데이터모델 (conceptual data model) 사람이인식하는것과유사하게데이터베이스의전체적인논리적구조를명시 예 : 엔티티- 관계 (ER: Entity-Relationship) 데이터모델과객체지향데이터 모델 표현 ( 구현 ) 데이터모델 (representation(implementation) ( p data model) 최종사용자가이해하는개념이면서컴퓨터내에서데이터가조직되는방식과멀리떨어져있지는않음 예 : 계층데이터모델 (hierarchical data model), 네트워크데이터모델 (network data model), 관계데이터모델 (relational data model) 저수준또는물리적인데이터모델 (physical data model) 데이터베이스에데이터가어떻게저장되는가를기술 예 : Unifying, ISAM, VSAM 등 27

1.3 DBMS 발전과정 ( 계속 ) 28

계층 DBMS 1.3 DBMS 발전과정 ( 계속 ) 1960 년대후반에최초의계층 DBMS 가등장 ( 예 : IBM 사의 IMS) 트리구조를기반으로하는계층데이터모델을사용한 DBMS 계층데이터모델은네트워크데이터모델의특별한사례 장점 단점 어떤유형의응용에대해서는빠른속도와높은효율성을제공 어떻게데이터를접근하는가를미리응용프로그램에정의해야함 데이터베이스가생성될때각각의관계를명시적으로정의해야함 레코드들이링크로연결되어있으므로레코드구조를변경하기어려움 29

1.3 DBMS 발전과정 ( 계속 ) 30

네트워크 DBMS 1.3 DBMS 발전과정 ( 계속 ) 1960년대초에 Charles Bachman이하니웰 (Honeywell) 사에서최초의네트워크 DBMS인 IDS를개발 레코드들이노드로, 레코드들사이의관계가간선으로표현되는그래프를기반으로하는네트워크데이터모델을사용 네트워크 DBMS에서도레코드들이링크로연결되어있으므로레코드구조를변경하기어려움 31

1.3 DBMS 발전과정 ( 계속 ) 32

1.3 DBMS 발전과정 ( 계속 ) 관계 DBMS 1970 년에 E.F. Codd 가 IBM 연구소에서관계데이터모델을제안 미국 IBM 연구소에서진행된 System R 과캘리포니아버클리대에서진행된 Ingres 프로젝트 장점 모델이간단하여이해하기쉬움 사용자는자신이원하는것 (what) 만명시하고, 데이터가어디에있는지, 어떻게접근해야하는지는 DBMS 가결정 예 : 오라클, MS SQL Server, Sybase, DB2, Informix 등 33

1.3 DBMS 발전과정 ( 계속 ) 34

1.3 DBMS 발전과정 ( 계속 ) 객체지향 DBMS 1980년대후반들어새로운데이터모델인객체지향데이터모델이등장 객체지향프로그래밍패러다임을기반으로하는데이터모델 장점 데이터와프로그램을그룹화하고, 복잡한객체들을이해하기쉬우며, 유지와변경이용이함 예 : ONTOS, OpenODB, GemStone, ObjectStore, Versant, O2 등 객체관계 DBMS 1990 년대후반에관계 DBMS 에객체지향개념을통합한객체관계데이터 모델이제안됨 예 : 오라클, Informix Universal Server 등 35

1.3 DBMS 발전과정 ( 계속 ) 새로운데이터베이스응용 CAD 데이터베이스, 소프트웨어공학데이터베이스 ( 재사용이가능한 소프트웨어들의라이브러리 ), 게놈데이터베이스, 데이터웨어하우스, 데이터마이닝, OLAP, 멀티미디어데이터베이스, 웹데이터베이스등 36

1.3 DBMS 발전과정 ( 계속 ) 37

1.3 DBMS 발전과정 ( 계속 ) 38

1.4 DBMS 언어 데이터정의어 (DDL: Data Definition Language) 사용자는데이터정의어를사용하여데이터베이스스키마를정의 데이터정의어로명시된문장이입력되면 DBMS 는사용자가정의한스키마에대한명세를시스템카탈로그또는데이터사전에저장 데이터정의어의기본적인기능 데이터모델에서지원하는데이터구조를생성 예, SQL 에서 CREATE TABLE 데이터구조의변경 예, SQL 에서 ALTER TABLE 데이터구조의삭제 예, SQL 에서 DROP TABLE 데이터접근을위해특정애트리뷰트위에인덱스를정의 예, SQL 에서 CREATE INDEX 39

1.4 DBMS 언어 ( 계속 ) 데이터조작어 (DML: Data Manipulation Language) 사용자는데이터조작어를사용하여데이터베이스내의원하는데이터를검색하고, 수정하고, 삽입하고, 삭제 절차적언어 (procedural language) 와비절차적언어 (non-procedural language) 관계 DBMS에서사용되는 SQL은대표적인비절차적언어 대부분의데이터조작어는 SUM, COUNT, AVG와같은내장함수들을갖고 있음 데이터조작어는단말기에서대화식으로입력되어수행되거나 C, 코볼등의고급프로그래밍언어로작성된프로그램에내포되어사용됨 40

1.4 DBMS 언어 ( 계속 ) 데이터조작어의기본적인기능 데이터의검색 예, SQL 에서 SELECT 데이터의수정 예, SQL 에서 UPDATE 데이터의삭제 예, SQL 에서 DELETE 데이터의삽입 예,SQL 에서 INSERT 41

1.4 DBMS 언어 ( 계속 ) 42

1.4 DBMS 언어 ( 계속 ) 43

1.4 DBMS 언어 ( 계속 ) 데이터제어어 (DCL: Data Control Language) 사용자는데이터제어어를사용하여데이터베이스트랜잭션을명시하고권한을부여하거나취소 44

1.5 DBMS 사용자 45

1.5 DBMS 사용자 ( 계속 ) 데이터베이스관리자 (DBA: Database Administrator) 데이터베이스관리자는조직의여러부분의상이한요구를만족시키기 위해서일관성있는데이터베이스스키마를생성하고유지하는사람 ( 팀 ) 데이터베이스관리자의역할 데이터베이스스키마의생성과변경 무결성제약조건을명시 사용자의권한을허용하거나취소하고, 사용자의역할을관리 저장구조와접근방법 ( 물리적스키마 ) 정의 백업과회복 표준화시행 46

1.5 DBMS 사용자 ( 계속 ) 응용프로그래머 데이터베이스위에서특정응용 ( 예, 고객관리, 인사관리, 재고관리 등 ) 이나인터페이스를구현하는사람 고급프로그래밍언어인 C, 코볼등으로응용프로그램을개발하면서 데이터베이스를접근하는부분은내포된데이터조작어를사용 이들이작성한프로그램은최종사용자들이반복해서수행하므로기작성 트랜잭션 (canned transaction) 이라부름 47

1.5 DBMS 사용자 ( 계속 ) 최종사용자 (end user) 질의하거나갱신하거나보고서를생성하기위해서데이터베이스를 사용하는사람 최종사용자는다시데이터베이스질의어를사용하여매번다른정보를 찾는캐주얼사용자와기작성트랜잭션을주로반복해서수행하는초보 사용자로구분 데이터베이스설계자 (database designer) ERWin 등의 CASE 도구들을이용해서데이터베이스설계를담당 데이터베이스의일관성을유지하기위해서정규화를수행 오퍼레이터 DBMS 가운영되고있는컴퓨터시스템과전산실을관리하는사람 48

1.6 ANSI/SPARC 아키텍처와데이터독립성 ANSI/SPARC 아키텍처 현재의대부분의상용 DBMS 구현에서사용되는일반적인아키텍처는 1978 년에제안된 ANSI/SPARC 아키텍처 ANSI/SPARC 아키텍처의 3 단계는물리적, 개념적, 외부단계로이루어짐 외부단계 (external level): 각사용자의뷰 개념단계 (conceptual level): 사용자공동체의뷰 내부단계 (internal level): 물리적또는저장뷰 49

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 50

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 외부단계 데이터베이스의각사용자가갖는뷰 여러부류의사용자를위해동일한개념단계로부터다수의서로다른뷰가 제공될수있음 일반적으로, 최종사용자와응용프로그래머들은데이터베이스의 일부분에만관심을가짐 51

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 52

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 개념단계 조직체의정보모델로서, 물리적인구현은고려하지않으면서조직체 전체에관한스키마를포함 데이터베이스에어떤데이터가저장되어있으며, 데이터간에는어떤 관계가존재하고, 어떤무결성제약조건들이명시되어있는가를기술함 데이터베이스에대한사용자공동체의뷰를나타냄 데이터베이스마다오직한개의개념스키마가존재 53

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 내부단계 실제의물리적인데이터구조에관한스키마 데이터베이스에어떤데이터가어떻게저장되어있는가를기술함 인덱스, 해싱등과같은접근경로, 데이터압축등을기술함 데이터베이스의개념스키마에는영향을미치지않으면서성능을 향상시키기위해내부스키마를변경하는것이바람직 내부단계아래는물리적단계 물리적단계는 DBMS 의지시에따라운영체제가관리함 54

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 전체지하철노선도에대해사당동에사는학생이청량리에있는학교에통학하기위해서사당역, 동대문역, 청량리역에만관심을갖는다. 전체지하철노선도에대해양재동에사는직장인이광화문에있는사무실에 출퇴근하기위해서양재역, 종로 3 가역, 광화문역에만관심을갖는다. 55

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 56

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 스키마간의사상 DBMS 는세가지유형의스키마간의사상을책임짐 외부 / 개념사상 (external/conceptual mapping) 외부단계의뷰를사용해서입력된사용자의질의를개념단계의스키마를 사용한질의로변환 개념 / 내부사상 (conceptual/internal mapping) 이를다시내부단계의스키마로변환하여디스크의데이터베이스를접근 57

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 데이터독립성 상위단계의스키마정의에영향을주지않으면서어떤단계의스키마 정의를변경할수있음을의미 논리적인데이터독립성 (logical data independence) 물리적인데이터독립성 (physical data independence) 58

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 59

1.6 ANSI/SPARC 아키텍처와데이터독립성 ( 계속 ) 논리적데이터독립성 개념스키마의변화로부터외부스키마가영향을받지않음을의미 기존의외부스키마에영향을미치지않고, 응용프로그램을다시작성할 필요없이개념스키마에대한변화가가능해야함 물리적데이터독립성 내부스키마의변화가개념적스키마에영향을미치지않으며, 따라서외부 스키마 ( 또는응용프로그램 ) 에도영향을미치지않음을의미 내부스키마의변화의예 : 화일의저장구조를바꾸거나인덱스를생성및삭제 60

1.7 데이터베이스시스템아키텍처 61

1.7 데이터베이스시스템아키텍처 ( 계속 ) 데이터정의어컴파일러 (DDL compiler) 모듈 데이터정의어를사용하여테이블생성을요청하면테이블을파일형태로 데이터베이스에만들고, 이테이블에대한명세를시스템카탈로그에저장 질의처리기 (query processor) 모듈 데이터조작어를수행하는최적의방법을찾는모듈을통해서기계어 코드로번역 런타임데이터베이스관리기 (run-time database manager) 모듈 디스크에저장된데이터베이스를접근 트랜잭션관리 (transaction management) 모듈 동시성제어 (concurrency control) 모듈 회복 (recovery) 모듈 62

1.7 데이터베이스시스템아키텍처 ( 계속 ) 데이터베이스 API(Application Program Interface) ODBC(Open Database Connectivity) 는마이크로소프트사가주도적으로 개발한데이터베이스 API ODBC를지원하는 DBMS 간에는서로상대방의데이터베이스를접근할수있음 63

1.7 데이터베이스시스템아키텍처 ( 계속 ) 중앙집중식데이터베이스시스템 (centralized database system) 데이터베이스시스템이하나의컴퓨터시스템에서운영됨 64

1.7 데이터베이스시스템아키텍처 ( 계속 ) 분산데이터베이스시스템 (distributed database system) 네트워크로연결된여러사이트에데이터베이스자체가분산되어있으며, 데이터베이스시스템도여러컴퓨터시스템에서운영됨 사용자는다른사이트에저장된데이터베이스도접근할수있음 65

1.7 데이터베이스시스템아키텍처 ( 계속 ) 클라이언트 - 서버데이터베이스시스템 (client-server database system) PC 또는워크스테이션처럼자체컴퓨팅능력을가진클라이언트를통해 데이터베이스서버를접근 데이터베이스가하나의데이터베이스서버에저장되어있음 데이터베이스시스템의기능이서버와클라이언트에분산됨 서버는데이터베이스를저장하고 DBMS를운영하면서여러클라이언트에서온질의를최적화하고, 권한검사를수행하고, 동시성제어와회복기능을수행하고, 데이터베이스의무결성을유지하고, 데이터베이스접근을관리 클라이언트는사용자인터페이스를관리하고응용들을수행 66

1.7 데이터베이스시스템아키텍처 ( 계속 ) 67

1.7 데이터베이스시스템아키텍처 ( 계속 ) 2층모델 (2-tier model) 클라이언트와데이터베이스 서버가직접연결됨 3층모델 (3-tier model) 클라이언트와데이터베이스 서버사이에응용서버가추가됨 68

1.7 데이터베이스시스템아키텍처 ( 계속 ) 클라이언트 - 서버데이터베이스시스템의장점 데이터베이스를보다넓은지역에서접근할수있음 다양한컴퓨터시스템을사용할수있음 클라이언트 - 서버데이터베이스시스템의단점 보안이다소취약할수있음 69