数据库系统原理与实现 db_impl_course
数据库系统原理与实现是华东师范大学数据学院开设一门数据库系统课程。
授课人胡卉芪 , Github Link: https://github.com/dase314。
课程主要内容是当下数据库内核实现中的关键技术,主要包括存储,查询,事务,高可用四个方面。
Time
Content
Reading
Lab
W1
课程介绍
课程简介、系统研究关注的内容、性能指标、课程要求
Lab 1(W1):配置实验环境、编译并调试代码
W2
存储-传统数据库
KVS的接口与设计需求 ,B+tree , COW-B+tree ,Page Structure,Database Buffer , Cache Policy (i) ,ii ,Implement LRU—Cache
Lab 2-1(W2):实现数据库Drop Table功能
W3
存储-Bitcast结构
Bitcast , Log-structured store
Lab 2-2(W3):向数据库中增加DATE字段
W4
存储-LSM-tree架构存储
Skiplist-LevelDB ,LSM-tree structure & LevelDB ,More about Compaction
Lab 3-1(W4):在缓冲区中实现LRU淘汰算法 Lab 3-2(W5):实现缓存管理器
W5
存储-并发索引
Memory Consistency Model ,Concurrent Linklist(Lock coupling,Optimistic Read,Lazy Delete) ,Concurrent Index
Lab 5-1(W8):并发链表实现
W6
存储-其他
Memory Allocation ,Snapshot , Bloomfilter ,Second Index ,Compression , Design Considerations for Database storage
W7
查询-执行引擎
SQL执行过程 ,火山模型
Lab 4-1(W6): 实现多表查询功能 Lab 4-2(W7): 聚合函数
W8
查询-算子实现
Join Algorithms,Grace Join,External Sort
W9
查询-查询优化器
Query Optimization
W10
事务-异常与隔离级别
Serializablity(i) , Serializablity(ii) ,Conflict Serializable , Recoverability-Emory ,Transaction Anomaly,Isolation Levels , 分布式一致性与隔离级别的关系
W11
事务-并发控制(一)
2PL,S2PL,Basic Timestamp
Lab 5-2(W10-W11):2PL算法实现
W12
事务-并发控制(二)
OCC, MVCC,Snapshot Isolation
Lab 5-3(W12):OCC算法实现
W13
事务-日志管理
日志与缓冲区关系 ,ARIES
Final Project:实现 Order By 功能
W14
高可用-数据库备份,Raft(一)
Raft Summary ,Raft Paper
W15
高可用-Raft(二)
Reading: 见上
Lab 6(W14-W17):实现Raft算法
W16
高可用-分布式一致性与Basic Paxos(一)
Distributed consensus revised-Heidi Howard
W17
高可用-分布式一致性与Basic Paxos(二)
Reading: 见上
W18
分布式数据库主要技术扩展(MPP、分布式事务等)
Reading: 待补充
Time
Content
Reading
E1
Distributed Database Architecture
Reading: Share-noting, Share-data. Cloud Database
E2
Storage
Reading: Data Partition, Consistent Hashing
E3
Storage
Reading: More On LSM-tree
E4
Transaction
Reading: Distributed Concurrency Control
E5
Transaction
Reading: Atomic Commit
E6
Consensus
Reading: There is more on consensus
E7
Transaction+Consensus
Reading: Paxos Commit
E8
Query
Reading: Exchange, Map-Reduce, Massive Parallel Execution
PingCap整理的数据库论文:PingCap整理的数据库论文