PingCAP, Awesome Database Learning: https://github.com/pingcap/awesome-database-learning
PingCAP, How do we build TiDB: https://pingcap.com/zh/blog/how-do-we-build-tidb
TiDB Talent Plan: https://tidb.net/talent-plan
TinySQL: https://github.com/talent-plan/tinysql
TinyKV: https://github.com/talent-plan/tinykv
-
1995, A Critique of ANSI SQL Isolation Levels, SIGMOD
-
Peng D, Dabek F. Large-scale incremental processing using distributed transactions and notifications[J]. 2010. (Google Percolator)
-
CMU-15-445/645(fall 2020), Lecture #16: Concurrency Control Theory
-
CMU-15-445/645(fall 2020), Lecture #17: Two-Phase Locking Concurrency Control
-
CMU-15-445/645(fall 2020), Lecture #18: Timestamp Ordering Concurrency Control
-
CMU-15-445/645(fall 2020), Lecture #19: Multi-Version Concurrency Control
-
CMU-15-721(spring 2020), Multi-Version Concurrency Control (Design Decisions)
-
CMU-15-721(spring 2020), Multi-Version Concurrency Control (Protocols)
-
CMU-15-721(spring 2020), Multi-Version Concurrency Control (Garbage Collection)
-
一致性模型, siddontang @简书
-
PingCAP Doc, TiDB 事务隔离级别
-
PingCAP, 事务前沿研究丨事务并发控制
-
PingCAP, Large Transactions in TiDB
-
PingCAP, TiKV 事务模型概览,Google Spanner 开源实现
-
PingCAP, Percolator 和 TiDB 事务算法
-
PingCAP, Optimized Percolator
-
PingCAP, Async Commit 原理介绍丨 TiDB 5.0 新特性
-
PingCAP, TiDB 5.0 两阶段提交
-
PingCAP Doc, TiDB 乐观事务模型
-
PingCAP, TiDB 最佳实践系列(三)乐观锁事务
-
PingCAP Doc, TiDB 悲观事务模式
-
PingCAP, TiDB 新特性漫谈:悲观事务
-
PingCAP, TiDB 4.0 新特性前瞻(二)白话“悲观锁”
-
PingCAP, TiDB 悲观锁实现原理
-
PingCAP, TiKV 源码解析系列文章(十一)Storage - 事务控制层
-
PingCAP, TiKV 源码解析系列文章(十二)分布式事务
-
CockroachDB分布式事务解密(一):CockroachDB & HLC, by 百度DBA
-
CockroachDB分布式事务解密(二):事务模型, by 百度DBA
-
论文解读:CockroachDB 事务处理, by PolarDB-X @知乎
- PingCAP, Spanner - CAP, TrueTime and Transaction
- PingCAP, 线性一致性和 Raft
- PingCAP, TiKV 功能介绍 - Raft 的优化
- PingCAP, TiKV 功能介绍 - Lease Read
- PingCAP, 基于 Raft 构建弹性伸缩的存储系统的一些实践
- PingCAP, TiDB 新特性漫谈:从 Follower Read 说起
- PingCAP, 中心化还是去中心化?揭秘 TiDB 5.0 事务分布式授时模块
- 分布式数据库中的一致性与时间戳, by PolarDB-X @知乎
B-Tree/LSM-Tree
LevelDB/RocksDB
行存/列存
- PingCAP, TiKV 是如何存取数据的
-
M.A. Soliman, et al., Orca: A Modular Query Optimizer Architecture for Big Data, in SIGMOD, 2014
-
Waas F, Galindo-Legaria C., Counting, enumerating, and sampling of execution plans in a cost-based query optimizer, SIGMOD, 2000
-
CMU-15-445/645(fall 2022), Lecture #14: Query Planning & Optimization
-
CMU-15-445/645(fall 2019), Query Planning & Optimization I
-
CMU-15-445/645(fall 2019), Query Planning & Optimization II
-
CMU-15-721(spring 2020), Optimizer Implementation (Overview)
-
CMU-15-721(spring 2020), Optimizer Implementation (Top-Down vs. Bottom-Up)
-
Cascades Optimizer, by hellocode @知乎
-
SQL 查询优化原理与 Volcano Optimizer 介绍, by 张茄子 @知乎
-
PingCAP, TiDB 源码阅读系列文章(七)基于规则的优化
-
PingCAP, TiDB 源码阅读系列文章(二十一)基于规则的优化 II
-
CMU-15-445/645(fall 2022), Lecture #12: Query Execution I
-
CMU-15-445/645(fall 2022), Lecture #13: Query Execution II
-
三种常见的数据库查询引擎执行模型, by Hubble @知乎
-
数据库内核月报 - 2017 / 01, PgSQL · 引擎介绍 · 向量化执行引擎简介
-
数据库查询引擎的进化之路, by OceanBase @知乎
-
2013, Online, Asynchronous Schema Change in F1, VLDB
-
理解 Google F1: Schema 变更算法: https://disksing.com/understanding-f1-schema-change/