데이터베이스 3

[데이터베이스] 10. Concurrency Control Techniques (Ch. 21)

Reference - Fundamentals of Database Systems 7th edition Concurrency Control Techniques - two-phase locking concurrency control technique으로 two-phase locking technique이 있다. operation으로는 read_lock, write_lock, unlock이 있다. 이때 deadlock과 starvation 문제가 발생한다. deadlock은 system 차원에서 detection을 하거나, time stamp를 이용해 시간 delay를 주거나, no waiting algorithm(한 process를 바로 killed)등을 이용하여 해결한다. 이때 detection을 하면 v..

CS/Database 2023.12.09

[데이터베이스] 8. Functional Dependencies and Normalization for Relational Databases (Ch. 14)

Reference - Fundamentals of Database Systems 7th edition Relation DB design guidelines 저장 효율성을 위해, view level이 아닌, base relation level에서 schema를 살펴봐야한다. 1. 하나의 entity or relationship만 다뤄야한다. 또한 이들은 foreign key로만 join이 가능해야한다. 여러번 반복되는 attribute를 분해할 필요가 있고, 그 과정을 "정규화"라고 한다. 이때 뒤에 나올 Functional Dependencies 개념이 필요하다. 가이드라인 1. 암묵적으로, relation의 각 tuple은 하나의 entity 또는 relationship instance를 표현해야 한다..

CS/Database 2023.12.09

[데이터베이스] 7. Indexing (Ch. 17)

Reference - Fundamentals of Database Systems 7th edition Indexing structures for Files and Physical Database Design indexing을 보기에 앞서 file structure를 먼저 살펴보겠다. database는 주로 secondary storage(disk)에 저장된다. 일반적으로 저용량의 경우 SSD, 고용량의 경우 Magnetic Disk를 사용한다. 그중에서 hard disk drive의 구조를 살펴보면, 아래의 동그란 판을 디스크라 하고 이를 묶은 것을 실린더, 이 전체를 디스크 팩이라 한다. 디스크는 회전하면서 물리적으로 데이터가 저장된 위치로 움직이며, Arm이 track을 탐색한다. ssd는 전자적으로..

CS/Database 2023.12.09
loading