2장. 데이터베이스 시스템 개념과 아키텍처 2.1 데이터 모델, 스키마, 인스턴스

Slides:



Advertisements
Similar presentations
CUBRID 소개 (Object 개념) 서비스 사업부 / 기술지원팀. 목차 구조 일반적 특징 객체지향 특징 ORDB 개념을 이용한 스키마 ORDB 개념을 이용한 질의.
Advertisements

데이터 베이스 (MYSQL) 장수용. MYSQL 이란 ? -MySQL 은 DBMS( 데이터베이스 관리 시스템 ) 이다. - MySQL 은 RDBMS( 관계형 데이터베이스 ) 이다. - MySQL 은 오픈소스이다. - MySQL 은 빠르고, 안정적이고.
1 일시 : 2015 년 5 월 24 일 조사한 사람 : 강수연, 신예 솔 자료정리 : 김규민, 이지훈 발표자 : 2 모둠 2.
BUILDING A SMARTER PLANET 공모전 개요 참가 자격 국내외 대학생/대학원생 개인 또는 5인 이하 팀 (멘토 지도교수님 또는 조교님 포함) 공모 내용 똑똑한 지구 테마로 개발 제안서 제출 후 애플리케이션 작성 개발 환경 학생 PC 또는 IBM 클라우드.
① 인터넷우체국 ( 을 통한 검색 새 우편번호 검색방법 ( 인터넷 ) O 다음, 네이버 등 포털서비스와 동일한 통합검색 방식 - 도로명주소, 지번주소, 건물명 등을 입력하여 검색 가능 예시 ) 도움 5 로, 어진동, 우정사업본부.
1 인사급여관리 시스템 컴퓨터응용과학부 4 학년 오 미 현오 미 현 2 업무적용 입사 신상정보 퇴직급여산정 퇴사 근무 근태상황, 급여관리 전산화.
널 (null) 의 처리 널을 검색하는 방법 형식 예 ) takes 테이블에서 아직 학점이 부여되지 않은 학생의 학번을 검색 is null is not null ( 질의 64) select stu_id from takes where grade is null.
Introduction to dATABASE
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
SQL 언어 SQL.
2016년도 제2차 서비스 자격시험 고사장 안내 시험종목: 병원서비스코디네이터, 서비스경영컨설턴트,
데이터베이스 시스템.
질의어와 SQL 기본 SQL 고급 SQL 데이타의 수정 데이타 정의 언어 내장 SQL
JDBC 개요 Section 04 JDBC 개념과 역할 JDBC 구조 애 플 리 케 이 션 오라클 DBMS MySql DBMS
Chapter 05 SQL 인젝션 공격.
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
DBMS실습(I) 데이터베이스 기본개념 2015년 1학기 동서울대학교 컴퓨터소프트웨어과.
데이터베이스 담당교수 신정식 Chapter 4 SQL(1).
 DBMS의 발전 배경(1) 화일 중심 자료처리(DP)시스템의 한계 ☞ Note
데이터베이스 와 JDBC 1.데이터베이스와 데이터베이스 관리 시스템은? 2.데이터베이스 장점?
Chapter 01 데이터베이스 시스템.
2장. E/R 데이터 모델 엔티티-관계성 (Entity-Relationship) 모델의 요소 설계 원칙
롯데마트 CRM 데이터 분석 교육 2014년 12월 > RE::VISION 전용준 리비젼컨설팅 대표
3. 데이터베이스 시스템의 구성.
Database 소개.
담당교수 : 이형원교수님 컴퓨터응용과학부 정은영
소프트웨어시스템 실험 Software Systems Lab. 데이터베이스 기초
Fundamentals of Database Systems R. A. Elmasri and S. B. Navathe
제 2 장 데이터베이스 시스템 개념과 아키텍처 Fundamentals of Database Systems
1장. 데이터베이스 시스템 컴퓨터를 사용하여 정보를 수집하고 분석하는데 데이터베이스 기술이 활용되고 있음
SQL.
YOU Youngseok 트랜잭션(Transaction) YOU Youngseok
Fundamentals of Database Systems R. A. Elmasri and S. B. Navathe
SQL (structured query language)
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
Chapter 3: Introduction to SQL
제 7 장 엔터티-관계를 사용한 개념적 데이타 모델링
설계 단계 개념적 설계 ER 다이어그램 논리적 설계
정보처리기사 8조 신원철 양진원 유민호 이기목 김다연 윤현경 임수빈 조현진.
2015. 인문소양교육.
목차 INDEX 1. 회원가입 및 로그인 2. 업체정보 3. 제조검사 신청 4. 인보이스 5. 검사진행현황(현장검사 신청)
데이터베이스 (Databases) 과목 개요 문양세 강원대학교 IT대학 컴퓨터과학전공.
데이터베이스 (Databases) 데이터베이스 소개 문양세 강원대학교 IT대학 컴퓨터과학전공.
1조 김성수 백현기 석광우 김지원 박광연.
데이터베이스 (Databases) 데이터베이스 소개 문양세 강원대학교 IT대학 컴퓨터과학전공.
데이터베이스 (Database) 데이터베이스와 데이터베이스 사용자 문양세 강원대학교 IT대학 컴퓨터과학전공.
McGraw-Hill Technology Education
Copyrightⓒ 1999 서울산업대학교 전자계산학과 석상기 교수
06. SQL 명지대학교 ICT 융합대학 김정호.
2015년 디지털컨버전스 청년취업아카데미.
○ 직 무 기 술 서 드라이빙센터 매니저 1. 주요 업무 2. 자격요건 직 무 드라이빙센터 매니저 근무형태
제 8장 데이터베이스.
데이터베이스 (Database) 과목 개요 문양세 강원대학교 IT대학 컴퓨터과학전공.
게임엔진 프로젝트 발표 상어 사냥 안 정 웅.
2015년 2학년 1반.
컴퓨터 프로그래밍 기초 - 11th : 파일 입출력 및 구조체 -
성공적인 입사지원서 작성법 제이비커리어 교육수석 소 은 선.
1. 정보처리시스템과 데이터베이스의 개념 (1) 정보 시스템 1) 정보 시스템의 정의
4. 데이타베이스 시스템의 구성.
데이터베이스 (Databases) 데이터베이스 소개 문양세 강원대학교 IT대학 컴퓨터과학전공.
Introduction to Computer System Spring, 2019
2015 교원능력개발평가 “학부모는 제2의 교원입니다” 여러분의 의견을 들려주세요.
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
제 2 장 데이타베이스 시스템 개념과 아키텍처 Fundamentals of Database Systems
책을 읽읍시다  탈향 진지하게 설명해드림 1303 김소희 1309박지호 1315이지수.
3장. 데이터베이스 시스템 데이터베이스 시스템의 정의 데이터베이스의 구조 데이터베이스 사용자 데이터 언어
2016년 제1차 운영위원회 평택시건강가정 ∙다문화가족지원센터
1 장. 데이터베이스와 데이터베이스 사용자 1.1 개요 1.2 데이터베이스의 예 1.3 데이터베이스의 특징
GB ridge 웹 모바일및 빅데이터 응용과정 3주차: 데이터베이스 프로그래밍 [경기도형 대학생 취업브리지 사업]
Presentation transcript:

2장. 데이터베이스 시스템 개념과 아키텍처 2.1 데이터 모델, 스키마, 인스턴스 2.2 3단계-스키마 아키텍처와 데이터 독립성 2.3 데이터베이스 언어와 인터페이스 2.4 데이터베이스 시스템 환경 2.5 DBMS를 위한 중앙집중식과 클라이언트/서버 아키텍처 2.6 데이터베이스 관리 시스템의 분류

2.1 데이터 모델, 스키마, 인스턴스 데이터 모델: 데이터베이스의 구조를 명시하기 위해 사용할 수 있는 개념들의 집합 저수준(물리적) 데이터 모델: 데이터가 저장되는 세부 사항(레코드 형식, 순서, 접근 경로 등)을 기술할 수 있는 개념들로 데이터베이스를 기술 고수준(개념적) 데이터 모델: 개체, 애트리뷰트, 관계 등의 개념을 이용하여 데이터베이스를 기술 예) E-R 모델

표현(구현, 레코드 기반) 데이터 모델: 컴퓨터 상에서 구현 가능한 데이터 모델. 상용 DBMS에서 많이 사용. 예) 관계 모델, 네트워크 모델, 계층 모델 데이터베이스 스키마 (또는 메타데이터) 데이터베이스에 대한 기술 데이터베이스 설계 과정에서 명시하며 자주 변경되지 않음

스키마 다이어그램 데이터베이스 스키마를 도식화 한 것 레코드 타입의 이름, 데이터 항목의 이름, 일부 제약 조건 유형들과 같은 스키마의 일부 관점만 나타냄 데이터베이스 상태 (어커런스 또는 인스턴스들의 집합) 어떤 특정 시점에 데이터베이스에 들어 있는 데이터

STORED-STUDENT LENGTH = 39 Name BYTE(4) OFFSET = 0 INDEX = … StudentNumber BYTE(30) OFFSET = 4 Class BYTE(1) OFFSET = 34 Major BYTE(4) OFFSET = 35 학생 데이터베이스의 내부 스키마

ER 스키마 다이어그램 CourseNumber CreditHours StudentNumber Class CourseName Major Department STUDENT COURSE 1 M Grade M N COURSE_SEC STUD_SEC N PREREQUISITE N SECTION SectionIdentifier Instructor Semester Year ER 스키마 다이어그램

[그림 2.1] 그림 1.2의 데이터베이스에 대한 스키마 다이어그램 STUDENT Name StudentNumber Class Major COURSE CourseName CourseNumber CreditHours Department PREREQUISITE CourseNumber PrerequisiteNumber SECTION SectionIdentifier CourseNumber Semester Year Instructor GRADE_REPORT StudentNumber SectionIdentifier Grade [그림 2.1] 그림 1.2의 데이터베이스에 대한 스키마 다이어그램

대학교 내의 작은 세계를 데이터베이스화한 예제 [그림 1.2] STUDENT Name Smith Brown StudentNumber 17 18 Class 1 2 Major CS COURSE CourseName Intro to Computer Science Data Structures Discrete Mathematics Database Course Number CS1310 CS3320 MATH2410 CS3380 CreditHours 4 3 Department CS MATH SECTION SectionIdentifier 85 92 102 112 119 135 Course Number MATH2410 CS1310 CS3320 CS3380 Semester Fall Spring Year 04 05 Instructor King Anderson Knuth Chang Stone 대학교 내의 작은 세계를 데이터베이스화한 예제 [그림 1.2]

GRADE_REPORT StudentNumber 17 18 SectionIdentifier 112 119 85 92 102 135 Grade B C A PREREQUISITE CourseNumber CS3380 CS3320 PrerequisiteNumber CS3320 MATH2410 CS1310

2.2 3단계-스키마 아키텍처와 데이터 독립성 2.2.1 3단계-스키마 아키텍처 2.2.2 데이터 독립성

2.2.1 3단계-스키마 아키텍처 사용자의 응용과 물리적 데이터베이스의 분리 3단계-스키마 아키텍처의 목적 내부단계 개념단계 외부단계 또는 뷰단계

내부단계 내부 스키마를 가지며, 내부 스키마는 물리적 데이터 모델을 사용 데이터 저장구조의 세부 사항과 데이터베이스에 대한 접근 경로를 기술 개념단계 개념 스키마를 가지며, 개념 스키마는 전체 사용자를 위한 데이터베이스의 구조를 기술 엔티티, 데이터 타입, 관계, 사용자 연산, 제약 조건들을 나타내는데 중점

외부단계 또는 뷰단계 외부 스키마나 사용자 뷰들을 포함 특정 사용자 그룹이 관심을 갖는 부분을 나타내고 나머지는 은폐함 사상 외부 스키마를 참조하여 사용자가 데이터를 요구하면 이를 데이터베이스내에서 개념 스키마에 대한 요구로 변환하고, 다시 내부 스키마에 대한 요구로 변환 과정을 거쳐 저장된 데이터베이스에 접근하여 데이터를 추출한 후 사용자의 뷰와 일치하도록 재구성하는 과정

. . . [그림 2.2] 3단계-스키마 아키텍처 외부 단계 외부/개념 사상 개념 단계 개념/내부 사상 내부 단계 외부 뷰1 외부 뷰n 최종 사용자 개념 스키마 내부 스키마 . . . 저장된 데이터베이스 외부 단계 외부/개념 사상 개념 단계 개념/내부 사상 내부 단계 [그림 2.2] 3단계-스키마 아키텍처

외부 스키마나 응용 프로그램을 변경하지 않으면서 개념 스키마를 변경하는 능력 2.2.2 데이터 독립성 논리적 데이터 독립성 외부 스키마나 응용 프로그램을 변경하지 않으면서 개념 스키마를 변경하는 능력 물리적 데이터 독립성 개념 스키마를 변경하지 않으면서 내부 스키마를 변경하는 능력

2.3 데이터베이스 언어와 인터페이스 DBMS 언어 데이터 정의어(data definition language; DDL): 데이터베이스 스키마를 정의하기 위한 언어 데이터 조작어(data manipulation language; DML):데이터를 검색, 삽입, 삭제, 수정하기 위한 조작 언어 DBMS 인터페이스 메뉴 기반 인터페이스, 그래픽 인터페이스, 형식 기반 인터페이스, 자연어 인터페이스, 초보자를 위한 인터페이스

2.4 데이터베이스 시스템 환경 2.4.1 DBMS 구성모듈 2.4.2 데이터베이스 시스템 유틸리티

데이터 정의어로 명시된 스키마 정의들을 처리. 스키마들에 대한 정보(메타데이터)를 DBMS 카탈로그 안에 저장 저장 데이터 관리자 디스크에 저장되어 있는 DBMS의 정보 (데이터베이스 또는 카탈로그)에 대한 접근을 제어 데이터 정의어 컴파일러 데이터 정의어로 명시된 스키마 정의들을 처리. 스키마들에 대한 정보(메타데이터)를 DBMS 카탈로그 안에 저장 런타임 데이터베이스 처리기(run-time database processor) 수행시 데이터베이스 접근을 처리

질의 컴파일러 대화식으로 입력된 고수준 질의들을 처리 프리컴파일러(precompiler) 호스트 프로그래밍 언어로 작성된 응용 프로그램에서 데이터 조작어 명령들을 추출 데이터 조작어 컴파일러 데이터 조작어 명령들을 데이터베이스 접근을 위한 목적 코드로 컴파일

DDL 문장 특권 명령 데이터베이스 관리자 캐주얼 사용자 응용 프로그래머 프로그램 대화식 질의 호스트 언어 컴파일러 초보 사용자 저장 데이터베이스 저장 데이터 동시성 제어/백업/ 회복 서브시스템 컴파일된 (기작성) 트랜잭션 프리컴파일러 DML 문장 DML 질의 런타임 처리기 시스템 카탈로그/ 데이터 사전 DDL 실행 A B C D E

2.4.2 데이터베이스 시스템 유틸리티 적재 : 데이터 화일을 자동적으로 데이터베이스 화일의 형식으로 변환해서 저장 백업 : 전체 데이터베이스를 테이프에 복사하여 데이터베이스의 백업 사본을 만듦 화일 재조직 : 성능 향상을 위해 데이터베이스 화일 구조를 다른 화일 구조로 재조직

성능 모니터링: 데이터베이스의 사용을 모니터해서 사용 통계를 데이터베이스 관리자에게 제공함으로써 관리자가 성능을 향상시키기 위해서 화일들을 재조직할 것인지의 의사 결정에 도움을 줌 데이터 사전 시스템: 스키마와 제약 조건들에 관한 카탈로그 정보와 설계 결정, 사용 표준, 응용 프로그램 기술, 사용자 정보 등과 같은 정보를 저장. DBMS 카탈로그와 유사하나 더 다양한 정보를 가짐. DBMS 소프트웨어보다는 주로 사용자가 접근

2.5 DBMS를 위한 중앙집중식과 클라이언트/서버 아키텍처 2.5.1 중앙집중식 DBMS 아키텍처 2.5.2 기본적인 클라이언트/서버 아키텍처 2.5.3 DBMS를 위한 2-층 클라이언트/서버 아키텍처 2.5.4 웹 응용들을 위한 3-층 클라이언트/서버 아키텍처

2.5.1 중앙집중식 DBMS 아키텍처 중앙집중식 DBMS 아키텍처 (그림 2.4 참고) 메인프레임과 터미널을 사용 터미널이 PC와 워크스테이션으로 대치됨 중앙집중식 DBMS

[그림 2.4] 물리적인 중앙집중식 아키텍처

2.5.2 기본적인 클라이언트/서버 아키텍처 클라이언트-서버 아키텍처 (그림 2.5, 2.6 참고) 특정 기능을 갖는 특별한 서버를 지정 파일 서버, 프린터 서버, 웹 서버, 전자 우편 서버 등 클라이언트: 지역 응용들을 수행하기 위한 처리 기능뿐만 아니라 서버들을 이용하기 위한 인터페이스

[그림 2.5] 논리적인 2-층 클라이언트/서버 아키텍처

[그림 2.6] 물리적인 2-층 클라이언트/서버 아키텍처

2.5.3 DBMS를 위한 2-층 클라이언트/서버 아키텍처 중앙집중식 RDBMS가 클라이언트-서버 아키텍처로 바뀌고 있음 서버: 질의와 트랜잭션 기능 질의 서버, 트랜잭션 서버, SQL 서버 클라이언트: User interface program과 App. Program 수행 ODBC(Open Database Connectivity) API, JDBC

객체지향 DBMS는 대부분 처음부터 클라이언트-서버 아키텍처로 개발됨 서버 단계: 데이타 저장, 동시성 제어와 회복, 버퍼링과 캐싱 등 클라이언트 단계: 사용자 인터페이스, 데이터 사전, 버퍼 내의 데이터로부터 복잡한 객체를 구성

2.5.4 웹 응용들을 위한 3-층 클라이언트/서버 아키텍처 3-층 클라이언트-서버 아키텍처 (그림 2.7 참고) 클라이언트와 데이터베이스 서버 사이에 응용 서버 또는 웹 서버를 추가 이 서버는 데이터베이스 서버에 저장된 비즈니스 규칙(프로시저 또는 제약조건)들을 저장함으로써 중간 역할을 수행함 비즈니스 규칙은 일반적으로 데이터를 접근하는데 사용됨

[그림 2.7] 논리적인 3-층 클라이언트/서버 아키텍처

2.6 데이터베이스 관리 시스템의 분류 DBMS의 분류 기준 데이터 모델: 관계, 네트워크, 계층, 객체지향. 객체관계 등 사용자의 수: 단일 사용자, 다수 사용자 시스템 사이트의 수: 중앙집중식, 분산 DBMS (동질 분산 DBMS 또는 이질 분산 DBMS) DBMS의 비용 , 접근 경로의 유형, 범용 또는 특수 목적용