• 검색 결과가 없습니다.

데이터 모델

N/A
N/A
Protected

Academic year: 2022

Share "데이터 모델"

Copied!
15
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

데이터베이스 시스템 개념과

Chap. 2

아키텍처

(2)



데이터 모델



데이터베이스 인터페이스

내 용



DBMS 구조



데이터베이스 아키텍처



데이터베이스 유틸리티

(3)



실세계 데이터를 어떤 구조로 저장하고, 어떤 연산으로 관리할 것인가 ? 데이터 모델 = 저장구조와 연산을 의미함



이 강좌에서는 관계형 모델을 가정함

데이터 모델

학생(학번, 이름, 전화, 학과, 키, ) 학과(학과명, 전화, 사무실위치, )

실세계 정보

학과(학과명, 전화, 사무실위치, ) 도서(도서명, 출판사, 저자, )

학생

학과

학과명 전화번호

이름

학생

학과

저자 도서

관계형모델 테이블 구조 계층형모델 망형모델

SQL 연산

(4)



외부모델 (외부 뷰)

– 각 사용자가 필요로 하는 “테이블의 일부 (뷰)”

예: 인사과 직원은 인사관련 테이블 (인사-뷰) 사용 자재과 직원은 자재관련 테이블 (자재-뷰) 사용



개념모델

데이터 모델 – 3단계

대리점 최종 사용자

개념모델

– DB 내의 전체 테이블 집합 (전체 DB 구조) – 외부모델을 내부모델로 매핑하는 역할



내부모델 (저수준 또는 물리적 데이터 모델)

– 디스크 저장구조를 명시함

예: 학생 테이블은 1번 시스크 300번지부터

12000번지까지 저장되며, 이름 필드는 1번 디스크 500번지부터 550번지까지 저장되어 있음

자동차 공장 대리점 정비소

(5)

• 외부 모델 혹은 뷰

특정 사용자의 관심부분을 뷰로 제공 나머지는 각 사용자로부터 은폐함

데이터 모델 – 3단계

외부스키마

•개념 모델

데이터베이스 내 전체 테이블들의 집합

• 내부 모델

디스크 저장구조의 세부 사항과 DB에 대한 접근 경로(인덱스)들의 집합

(데이터 저장위치, 검색도구 등)

(6)



관계형 DBMS의 3단계 모델은 뛰어난 데이터 독립성을 제공함



모델간 사상

– 사용자가 외부 스키마 (뷰)를 참조하여 데이터를 요구하면 이를 데이터베이스 내에서 개념 스키마에 대한 요구로 변환하고, 다시 내부 스키마에 대한 요구로의 변환 과정을 거쳐 해당 디스크에 접근하여 데이터를 추출한 후 사용자에게 뷰의

데이터 모델 - 데이터 독립성

형태로 제공하는 과정



데이터 독립성 - 정의

– 상위 수준의 스키마를 변경할 필요 없이 하위 수준의 스키마를 변경할 수 있는 성질로써 저장구조가 변경되어도 뷰 사용자는 영향을 받지 않는 성질

– 사용자 편의성, 응용의 안정성 등 데이터베이스의 지속적인 발전을 위해 중요한 성질임

– 파일 시스템의 경우 파일의 구조가 변경되면 이를 사용하는 응용 프로그램에서 심각한 영향을 받게 됨 (DB 출현의 동기)

(7)



데이터베이스 언어

– 데이터 정의어(DDL: Data Definition Language)

• 테이블이나 인덱스 및 뷰를 생성하고 삭제하는 명령어

– 데이터 조작어(DML: Data Manipulation Language)

• 데이터를 삽입, 삭제, 수정하기 위한 조작 언어

데이터베이스 인터페이스

– 질의어 (Query)

• SQL (Structured Query Language)

Database

DBMS

DDL

DML

(SQL)

SQ

L

(8)



GUI 인터페이스

– 브라우징을 위한 메뉴 기반 인터페이스 – 폼 기반 인터페이스

– 그래픽 사용자 인터페이스

데이터베이스 인터페이스

– 그래픽 사용자 인터페이스 – 자연어 인터페이스

– 초보자를 위한 인터페이스

– 데이터베이스 관리자를 위한 인터페이스

(9)

데이터베이스 인터페이스 - GUI

• MS ACCESS GUI (테이블 만들기)

(10)

데이터베이스 인터페이스 – 예 (폼 보고서)

(11)



저장 데이터 관리자

– 디스크에 저장되어 있는 DB(데이터베이스 또는 카탈로그)에 대한 접근을 제어



데이터 정의어 컴파일러

– 데이터 정의어로 명시된 스키마 정의들을 처리

– 스키마들에 대한 정보(메타 데이터)를 DBMS 카탈로그 안에 저장



런타임 데이터베이스 처리기 (run-time database processor)

– 수행시 데이터베이스 접근을 처리

DBMS 구성모듈

– 수행시 데이터베이스 접근을 처리



질의 컴파일러

– 대화식으로 입력된 고수준 질의들을 처리



프리 컴파일러

(precompiler)

– 호스트 프로그래밍 언어로 작성된 응용 프로그램에서 데이터 조작어 명령들을 추출



데이터 조작어 컴파일러

– 데이터 조작어 명령들을 데이터베이스 접근을 위한 목적 코드로 컴파일

(12)

DBMS 구성모듈

질의처리기

저장관리기

(13)



Client-Server 아키텍처

– 사용자수가 많아지면 서버의 성능이 급격하게 저하됨

– 서버 측에서 모든 사용자의 연결정보를 가지고 있어야 하며, 연결상태를 유지해야 함 (부담)

– 예: 수강신청 DB와 수강신청 프로그램 및 사용자 화면(client)

데이터베이스 아키텍처

응용 서버 DB 서버

Database

PC WS … PC

서버

(응용 프로그램 서버와 데이터베이스 서버)

GUI / 자료입출력 / 간단한 계산 등

(14)



3-tier Architecture

– 서버를 기능에 따라 분리함 (응용서버, DB서버)

– 응용서버를 여러 개 둘 수 있으며, DB는 필요할 때만 (클라이언트가 모르게) 연결하므로 보안강화, 성능향상 (대용랑 DB, 사용자가 많을 때 사용)

데이터베이스 아키텍처

Gui Web GUI

Gui Web GUI

물건을 배송하는 문제로 비유하면, 직접 내가 배달 할 수도 있고

(클라이언트/서버방식)

택배 회사를 통해서 배달 할 수도 있다

(3-tier 방식)

물건 수량이 적고 그 횟수가 적다면 직접 배달하는 것이 빠르고 저렴한 방법이겠지만, 물건량이 많고 횟수가 빈번하다면

택배회사와 계약을 맺는 것이 빠르고 비용절감

(15)



유틸리티는 데이터베이스 관리자의 시스템 운영을 도와주는 SW – 적재 (loading)

• 데이터 화일을 자동적으로 데이터베이스 테이블 형식으로 변환해서 저장함

– 백업 (backup)

• 전체 데이터베이스를 테이프에 복사하여 백업 사본을 만듦

데이터베이스 유틸리티

– 화일 재조직 (reorganization)

• 성능 향상을 위해 데이터베이스 화일 구조를 다른 화일 구조로 재조직함

– 성능 모니터링 (performance monitoring)

• 데이터베이스의 사용을 모니터해서 사용 통계를 데이터베이스 관리자에게 제공함

• 이 정보는 관리자가 데이터베이스 성능을 향상시키기 위해서

화일들을 재조직할 것인지를 결정하는데 사용됨

참조

관련 문서

본 논문은 헬스 케어 서비스가 헬스 데이터에 대한 연속성, 클라이언트에 대한 확장성, 긴급한 헬스 데이터를 클라이언트들이 빠르게 액세스할 수 있는 유연한 서비스를 제공할

GSS는 GES로부터 광역 지오센서가 유무선 네트워크 를 통해 생성하는 공간 데이터 스트림의 입력을 수집하 는 Input Stream Adaptor, 수집된 공간 데이터를 이용하여

1) 다양한 서비스들간의 데이터 교환이 가능해야 한다. 이를 위해, 다양한 서비스에 대한 인터페이스를 위한 방법을 제공하 거나 관련 표준을 따라 데이터를 교환하는

대부분의 데이터를 기반으로 한 분석 서비스들은 해당 분야의 데이터 분류와 특성에 대한 정 확한 이해를 바탕으로 기획되는데, 학습 분석도 수집 대상이 되 는

ODI 프레임워크를 이용하면 기관이나 기업이 소유한 데이터를 원시 데이터 형태 가 아니라 제한적인 형태로 공유할 수 있으며 개인의 아이디어 를 판매할 수 있는 데이터

빈번하게 발생하는 대용량 데이터를 처리하기 위해 일반적인 데 이터 처리 관리 시스템은 데이터를 각각의 저장소에 저장하고 질의 에 대해 최적화 작업을 하며, 질의에

본 논문에서는 국내 및 전세계적으로 활용도 및 기여도가 매우 높은 Physionet에서 제공하는 다양한 생체신호 데이터베이스의 지원에도 불구 하고 실제로 많은 연구자가

□ 데이터 혁명은 기존의 공식 통계에 더해 새로운 통계를 이용가능하게 함에 따라 보다 유용한 데이터를 만들 수 있는 기회를 제공하며, 다양한 이해관계자의 데이터