DBA급 개발자로 시리즈는 데이터베이스를 더 깊게 학습하고 싶은 개발자들을 위한 시리즈입니다. 해당 시리즈는 Youtube의 CMU Database Group 강의를 기반으로 작성됐습니다.
목차
1. Relational Model
2022.08.31 - [Database] - [Database] DBA급 개발자로 - #1 Relational Model
- Relational model
- Tuple VS Record
2. Intermediate SQL
2022.08.31 - [Database] - [Database] DBA급 개발자로 - #2 Intermediate SQL
- Aggregation functions
- Window functions
- CTE(Common Table Expressions)
3. Database Storage 1/2
2022.09.01 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #3 Database Storage 1/2
- 데이터가 저장되는 원리
- File layout
- Page layout
- Tuple layout
- Log structured file organization
4. Database Storage 2/2
2022.09.03 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #4 Database Storage 2/2
- Tuple in detail
- Metadata
- Column store database
5. Buffer Pools
2022.09.03 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #5 Buffer Pools
- Buffer pool
- Locks vs Latches
- Page directory vs Page table
- Buffer pool 최적화
- Buffer replacement 정책
6. Hash Table
2022.09.04 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #6 Hash Table
- Static hash table
- Dynamic hash table
7. B+Tree
2022.09.06 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #7 B+Tree
- B+Tree 검색, 삽입, 최적화 등
8. Index Concurrency Control
2022.09.07 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #8 Index Concurrency Control
- Latch
- os mutex
- test-and-set spin latch
- reader-writer latch
- Hash table latching
- page latch
- slot latch
- B+Tree concurrency
- latch crabbing / coupling
9. Sorting & Aggregation
2022.09.09 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #9 Sorting & Aggregation
- Externel merge sort
- Aggregation
10. Join Algorithm
2022.09.11 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #10 Join Algorithm
- Nested loop join
- simple nested loop join
- block nested loop join
- Index
- Sort merge join
- Hash join
11. Query Processing 1/2
2022.09.12 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #11 Query Processing 1/2
- Query processing model
- iterator model
- materialization model
- vectorized / batch model
- Access methods
- sequential scan
- index scan
- multi-index / bitmap scan
12. Query Processing 2/2
2022.09.13 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #12 Query Processing 2/2
- Process model
- process per DBMS worker
- process poll
- thread per DBMS worker
- Operator Parallelism
- intra-operator parallelism
- inter-operator parallelism
- bushy parallelism
- I/O Parallelism
- multi-disk parallelism
- database partitioning
- horizontal partitioning
- vertical partitioning
13. Rule Based 쿼리 최적화
2022.09.15 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #13 Rule based 쿼리 최적화
- Query optimization
- relational algebra equivalance
- predicate pushdown
- logical query optimization
- split conjunctive predicate
- replace cartesian products
- projection pushdown
- nested sub-queries
- rewrite nested sub-queries
- decompose nested sub-queries
- expression rewriting
- relational algebra equivalance
14. 비용 기반 쿼리 최적화
2022.11.01 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #14 비용 기반 쿼리 최적화
- Cost model component
- Join result estimaation
- Cost estimation
- Query planning
15. Concurrency Control
2022.11.01 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #15 Concurrency Control
- Transaction concurrency control
- transaction interleaving
- interleaved execution anomalies
- R-W conflict
- W-R conflict
- W-W conflict
- schedule serializabillity
- conflict serializability
16. Two Phase Locking
2022.11.06 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #16 Two-Phase Locking
- 2PL 동작 원리
- growing
- shrinking
- Strong strict 2PL
- 2PL deadlock
- deadlock detection
- deadlock prevention
17. Timestamp Ordering Concurrency Control
- Basic timestamp ordering
- Optimistic concurrency control
18. Multi-Version Concurrency Control
2022.11.14 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #18 Mutli-Version Concurrency Control
- MVCC
- Design principles
- version storage
- append only
- time travel
- delta
- version storage
- InnoDB MVCC
19. Database Logging
2022.12.04 - [분류 전체보기] - [Database] DBA급 개발자로 - #19 Database Logging
- Steal policy
- Force policy
- No-steal && Force
- Steal && No-force
20. Database Recovery
2022.12.05 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #20 Database Recovery
- Write ahead logging
- Checkpoint
- ARIES
21. Distributed Database 1/3
2022.12.09 - [Database] - [Database] DBA급 개발자로 - #21 Distributed Database 1/3
- System architecture
- shared memory
- shared disk
- shared nothing
- Database design
- homogenous nodes
- heterogenous nodes
- Distributing data
- partitioning
- sharding
- key based sharding
- range based sharding
- hash based sharding
- consistent hashing
- Distributed transaction
22. Distributed Database 2/3
2022.12.10 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #22 Distributed Database 2/3
- 2 phase commit
- Paxos
- Replication
- k-safety
- propagation timing
- propagation scheme
- active vs passive
- CAP theorem
23. Distributed Database 3/3
2022.12.16 - [Database/DBA급 개발자로] - [Database] DBA급 개발자로 - #23 Distributed Database 3/3
- OLAP
- Query execution model
- etc
'Database > DBA급 개발자로' 카테고리의 다른 글
[Database] DBA급 개발자로 - #23 Distributed Database 3/3 (0) | 2022.12.16 |
---|---|
[Database] DBA급 개발자로 - #22 Distributed Database 2/3 (2) | 2022.12.10 |
[Database] DBA급 개발자로 - #21 Distributed Database 1/3 (0) | 2022.12.09 |
[Database] DBA급 개발자로 - #20 Database Recovery (0) | 2022.12.05 |
[Database] DBA급 개발자로 - #19 Database Logging (0) | 2022.12.04 |