대학공부/데이터베이스 6

6. Recovery System

Failure ClssificationTransaction failureLogical errors: 내부 오류에 의해 트랜잭션이 끝나지 않음System errors: deadlock 등에 의해 데이터베이스 시스탬이 트랜잭션을 종료시킴System crash: 정전이나 하드웨어 또는 소프트웨어 오류로 인한 시스템 오류Fail-stop assumption: 비휘발성 저장 장치의 내용은 시스템 오류로 인해 망가지지 않는다고 가정Disk failure: 디스크 오류가 저장 장치를 파괴하는 상황 - 감지 가능하다고 가정 Storage Structure & Data AccessPhysical blocks: 디스크에 존재하는 블록Buffer blocks: 메인 메모리에 일시적으로 저장되는 블록디스크와 메인 메모리 간의..

5. Transactions

Transactiontransaction: a unit of progam execution that accesses and possibly updates various data items.예를 들어 A 계좌에서 B 계좌로 돈을 송금하기 위한 트랜잭션Two main issueshardware failures and system crashesconcurrent execution of multiple transactions ACID Properties데이터베이스의 데이터 무결성(integrity)을 보존하기 위해 데이터베이스 시스템이 보장해야 하는 속성들Atomicity (원자성): 모든 트랜잭션은 데이터베이스에 적절히 반영되거나 아무것도 반영되지 않아야 한다.Consistency (일관성): 독립된 트랜잭션..

4. Relational Database Design (Normalization)

Functional Dependencies (함수 종속성)legal relationslegal relations r(R)legal relations를 위한 제약 조건다른 집합의 속성 값을 유일하게 식별할 수 있는 특정 집합의 속성 값들을 필요로 한다.함수 종속성은 키 개념의 일반화functional dependenciesrelation schema R에 속하는 a, b가 있을 때 함수 종속성 a -> bR의 모든 legal relation r(R)에 대해r의 임의의 두 튜플 t1과 t2가 a에서 동일한 값을 가지면 b에서도 동일한 값을 가져야 한다.K is a superkey for R iif K -> RK is a candidate key for R iifK -> R for no a ⊂ K, a -> ..

3. Database Design and E-R Model

Systems Development Life Cycle (SDLC)  Entity-Relationship Modeling-  사용자의 요구사항을 토대로 E-R Modeling을 수행 Example사용자 요구사항 E-R DiagramE-R(Database) Modeling데이터베이스는 엔티티들과 엔티티들 간의 관계의 모음으로 모델링될 수 있다. Entity SetsEntity: 다른 객체와 구별되고 존재하는 객체개념적인 객체개념적, 물리적으로 존재요구 명세에서 보통 명사Entities have attibutesEntity set: 같은 속성을 공유하는 같은 타입의 엔티티 집합 Weak Entity Setsweak entity set: primary key를 가지지 않는 entity setidentifyin..

2. SQL

Overview Domain Types in SQL- char(n): n 길이의 문자형- varchar(n): 최대 n 길이의 문자형- int: 정수- smallint: 작은 정수- numeric(p,d): 최대 자릿수 p, 소수점 이하 자릿수 d인 고정 소수점 숫자- real, double precision: 부동 소수점 및 배정밀도 부동 소수점 숫자- float(n): 최소 자릿수 n의 정밀도를 가지는 부동 소수점 숫자- date: 4 자리 연도와 월, 일을 포함하는 날짜- time: 시, 분, 초의 시간- timestamp: 날짜와 시간- interval: 시간의 간격 - 날짜, 시간, 타임스템프에 더해질 수 있음 DDL Views전체 논리적 모델이 아닌 일부만 보고 싶은 사용자들로부터 특정 데이터..

1. Relational Model

BackgroundRelational model is based on Set Theory and Predicate Logics (First Order Logics)Predicate Logics (술어 논리): 개체, 속성, 관계를 표현하는 논리 체계Relational DBMSBasic Structuresets D1, D2, ... Dn이 주어졌을 때 relation r은 D1 x D2 x ... x Dn의 부분 집합이다.tuple은 unique해야 한다.attribute 값은 atomic해야 한다.튜플이나 속성의 순서는 상관없다. Attribute Types- relation의 각 속성은 이름이 있다.- 각 속성에 허용되는 값의 집합을 domain이라고 부른다.- 각 속성의 값은 atomic해야 한다. ..