공부기록
데이터베이스 정리 본문
데이터베이스
DB의 개요
- 데이터베이스가 제공하는 기능
- 데이터베이스의 이점
데이터 추상화와 데이터 모델
- 스키마와 인스턴스
- 데이터 추상화 레벨
- 데이터 독립성
- 트랜잭션 관리
관계형 데이터 모델
- 관계형 데이터베이스의 표현 방법
- 속성이 원자값?
- 관계 스키마, 관계 인스턴스
- key
- 참조무결성
관계 대수
- 종류, 문법
추가 관계 대수
- 종류, 문법
SQL
- 기능적 관념의 분류
- 각 분류별로 하는 기능과 어떤 예약어가 있는지?
- 표현되는 방식에서의 분류
DDL
- DDL의 기능
- Drop vs Delete
DML
- DML의 기능
- SQL Execution Model?
View
- view?
- view 정의하는 방법
- view가 항상 최신 데이터를 보유하는 이유?
- view가 다른 view를 사용할 수 있는지?
- view를 통한 질의 과정
- view의 변경이 가능한지?
- 어떤 조건을 가져야 하는가?
- with check option이 어떤 의미?
- view 제약
데이터 무결성
- 데이터 무결성?
- 데이터 무결성의 종류
- on delete cascade, set null?
- on update cascade, set null?
- check?
- trigger?
권한
- 데이터베이스에서의 권한?
- 어떤 권한들을 가질 수 있는지?
- Grant
- Revoke
- cascade와 restrict
ER 데이터 모델링
- ER 데이터 모델링?
- 구성
- 개체?
- 관계?
- 관계성 집합 차수?
- 속성?
- 구분방법
- 카디날리티 제약
정규화
- 이상현상의 종류와 예시?
- 함수 종속성과 종류?
- 정규화의 정의?
- 정규화의 종류?
ORM
- ORM?
- 장점과 단점
트랜잭션 이론
- 트랜잭션?
- ACID?
- Serializable?
- 트랜잭션 동시성 오류
- Conflict Serializable?
- View Serializable?
- recoverable?
- cascadeless?
- 우리가 원하는 트랜잭션은?
동시성 제어
Lock mode와 호환성
2PL?
Tree-based Lock?
Dead Lock Handling 방법들
Phantom Phenomena?
- 해결 방법
Index에 2PL 안되는 이유
Crabbing?
Degree-two Consistency?
Transaction Isolation Level in SQL?
회복
- 장애의 종류
- 회복이 필요한 이유
- Stable Storage
- Data가 있을 수 있는 곳과 각각 영역에서의 연산
- 로깅?
- 간단 로깅에서의 평상시
- 간단 로깅에서의 회복
- 회복 알고리즘이 지켜야하는 프로토콜?
- 회복 알고리즘 실행 과정
Index
- 인덱스가 무엇인지?
- 인덱스 평가요소 중요한 것 한가지
- primary index vs secondary index
- dense index vs sparse index
- multilevel index
- B+Tree
- 특징
- leaf, non-leaf 각각 의 특징
- add과정
- delete과정
- Extendable Hash Index
- 특징
- 구조
- add과정
- delete 과정
- Bitmap Index
- 특징