- 🎥 CMU 15-445 Intro to Database Systems (A Pavlo 2019)
- 🎥 CMU 15-721 Advanced Database Systems (A Pavlo 2020)
- 📖 Database Internals (A Petrov 2019)
- 📖 Designing Data-Intensive Applications (M Kleppmann 2017)
- 📄 Readings in Database Systems (P Bailis, JM Hellerstein, M Stonebraker) "The Red Book"
- 📄 Architecture of a Database System (JM Hellerstein, M Stonebraker, J Hamilton 2007)
- 📖 Data and Reality (W Kent, S Hoberman 2012)
- 📖 Database System Concepts (A Silberschatz, HF Korth, S Sudarshan 2019)
- 📖 Fundamentals of Database Systems (R Elmasri, SB Navathe 2015)
- 📖 Making Databases Work: the Pragmatic Wisdom of Michael Stonebraker (ML Brodie 2018)
- 🎥 UC Berkeley CS186 Introduction to Database Systems (J Hellerstein 2012)
- 📄 What's Really New with NewSQL? (A Pavlo, M Aslett 2016)
- 📄 A Critique of ANSI SQL Isolation Levels (H Berenson et al 1995)
- 🔗 Consistency Models (Jepsen 2016)
- 📄 Generalized Isolation Level Definitions (A Adya, B Liskov, P ONeil 2000)
- 📖 Transaction Processing: Concepts and Techniques (J Gray, A Reuter 1992)
- 📄 A Critique of Snapshot Isolation (DG Ferro, M Yabandeh 2012)
- 📄 ACIDRain: Concurrency-Related Attacks on Database-Backed Web Applications (P Bailis, T Warszawski 2017)
- 📄 An Empirical Evaluation of In-Memory Multi-Version Concurrency Control (Y Wu et al 2017)
- 📄 Building Consistent Transactions with Inconsistent Replication (I Zhang et al 2015)
- 📄 Calvin: Fast Distributed Transactions for Partitioned Database Systems (DJ Abadi et al 2012) "The Calvin paper"
- 📄 Consistency in Non-Transactional Distributed Storage Systems (P Viotti, M Vukolić 2016)
- 📄 Highly Available Transactions: Virtues and Limitations (P Bailis, JM Hellerstein et al 2013)
- 📄 Lazy State Determination: More concurrency for contending linearizable transactions (TM Vale et al 2020)
- 📄 Naming and Synchronization in a Decentralized Computer System (DP Reed 1978) "The MVCC paper"
- 📄 Rethinking Serializable Multiversion Concurrency Control (JM Faleiro, DJ Abadi 2015)
- 📄 Scalable Atomic Visibility with RAMP Transactions (P Bailis et al 2014)
- 📄 Serializable Isolation for Snapshot Databases (MJ Cahill, U Röhm, AD Fekete 2008)
- 💬 What Does Write Skew Look Like (J Jaffray 2018)
- 📄 Access Path Selection in a Relational Database Management System (PG Selinger et al 1979)
- 📄 Access Path Selection in Main-Memory Optimized Data Systems: Should I Scan or Should I Probe? (MS Kester, M Athanassoulis, S Idreos 2017)
- 📄 Adaptive Execution of Compiled Queries (A Kohn, V Leis, T Neumann 2018)
- 📄 An Overview of Query Optimization in Relational Systems (S Chaudhuri 1998)
- 📖 Building Query Compilers (G Moerkotte 2014)
- 📄 Compilation in the Microsoft SQL Server Hekaton Engine (C Freedman, E Ismert, PA Larson 2014)
- 📄 Don’t Hold My Data Hostage – A Case For Client Protocol Redesign (M Raasweldt, H Mühleisen 2017)
- 📄 Efficiently Compiling Efficient Query Plans for Modern Hardware (T Neumann 2011)
- 📄 Efficient Implementation of Sorting on Multi-Core SIMD CPU Architecture (J Chhugani, W Macy, A Baransi 2008)
- 📄 Generating Code for Holistic Query Evaluation (K Krikellas, SD Viglas, M Cintra 2010)
- 📄 How to Architect a Query Compiler, Revisited (RY Tahboub, GM Essertel, T Rompf 2018)
- 📄 Micro Adaptivity in Vectorwise (B Raducanu, P Boncz, M Zukowski 2013)
- 📄 Modelling Costs for a MM-DBMS (S Listgarten, MA Neimat 1996)
- 📄 Optimization of Queries with User-Defined Predicates (S Chaudhur, K Shim 1999)
- 📄 Sort vs. Hash Revisited: Fast Join Implementation on Modern Multi-Core CPUs (C Kim, E Sedlar, J Chhugani 2009)
- 📄 The Cascades Framework for Query Optimization (G Graefe 1995)
- 🎥 The Cascades Framework for Query Optimization at Microsoft (N Bruno, C Galindo-Legaria 2020)
- 📄 The Adaptive Radix Tree: ARTful Indexing for Main-Memory Databases (V Leis, A Kemper, T Neumann 2013)
- 📄 Aries: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging (C Mohan et al 1992)
- 📄 bLSM: A General Purpose Log Structured Merge Tree (R Sears, R Ramakrishnan 2012)
- 📄 Building a Bw-Tree Takes More Than Just Buzz Words (Z Wang et al 2018)
- 📄 Constant Time Recovery in Azure SQL Database (P Antonopoulos et al 2019)
- 📄 Enabling Efficient OS Paging for Main-Memory OLTP Databases (R Stoica, A Ailamaki 2013)
- 📄 An Introduction to Bε-trees and Write-Optimization (MA Bender et al 2015)
- 📄 Jungle: Towards Dynamically Adjustable Key-Value Store by Combining LSM-Tree and Copy-On-Write B+-Tree (JS Ahn et al 2019)
- 📄 Larger-than-Memory Data Management on Modern Storage Hardware for In-Memory OLTP Database Systems (L Ma et al 2016)
- 📄 The Bw-Tree: A B-tree for New Hardware Platforms (JJ Levandoski, DB Lomet, S Sengupta 2013)
- 📄 The Log-Structured Merge Tree (P O'Neil, E Cheng, D Gawklik, E O'Neil 1996)
- 📄 The Ubiquitous B-Tree (D Comer 1979)
- 📄 WiscKey: Separating Keys from Values in SSD-Conscious Storage (L Lu, TS Pillai, AC Arpaci-Dusseau, RH Arpaci-Dusseau 2016)
- 🎥 Black-box Isolation Checking with Elle (K Kingsbury 2020)
- 🎥 SQLancer: Finding Logic Bugs in Database Management Systems (M Rigger 2020)
- 📄 Torturing Databases for Fun and Profit (M Zheng et al 2014)
- 🔗 Architecture Overview
- 🎥 CockroachDB: Architecture of a Geo-Distributed SQL Database (P Mattis 2019)
- 📄 CockroachDB: The Resilient Geo-Distributed SQL Database (R Taft et al 2020)
- 🎥 CockroachDB's Query Optimizer (R Taft 2020)
- 🔗 Design Document
- 💬 CockroachDB's Consistency Model (A Matei 2019)
- 💬 Consensus, Made Thrive (T Grieger 2016)
- 💬 How CockroachDB Does Distributed, Atomic Transactions (M Tracy 2015)
- 💬 How We Built a Cost-Based SQL Optimizer (A Kimball 2018)
- 💬 Living Without Atomic Clocks (S Kimball 2016)
- 💬 Parallel Commits: An Atomic Commit Protocol For Globally Distributed Transactions (N VanBenschoten 2019)
- 💬 Pipelining Consensus Writes to Speed Up Distributed SQL Transactions (N VanBenschoten 2019)
- 💬 Serializable, Lockless, Distributed: Isolation in CockroachDB (M Tracy 2016)
- 📄 FaunaDB: An Architectural Overview (M Freels 2018)
- 💬 NewSQL database systems are failing to guarantee consistency, and I blame Spanner (DJ Abadi 2018)
- 💬 Spanner vs. Calvin: Distributed Consistency at Scale (DJ Abadi 2017)
- 💬 Time-Traveling Databases: Exploring Temporality in FaunaDB (M Freels 2016)
- 💬 Unifying Relational, Document, Graph, and Temporal Data Models (C Anderson 2018)
- 📄 Bigtable: A Distributed Storage System for Structured Data (F Chang et al 2006) "The Bigtable paper"
- 📄 F1: A Distributed SQL Database That Scales "The F1 paper"
- 📄 Online, Asynchronous Schema Change in F1 (I Rae et al 2013)
- 📄 Spanner: Google's Globally-Distributed Database (J Corbett et al 2012) "The Spanner paper"
- 📄 Spanner: Becoming a SQL System (DF Bacon et al 2017)
- 📄 Spanner, TrueTime & The CAP Theorem (E Brewer 2017)
- 📄 Looking Back at Postgres (JM Hellerstein 2019)
- 💬 How Postgres Makes Transactions Atomic (B Leach 2017)
- 📄 Serializable Snapshot Isolation in PostgreSQL (DRK Ports, K Grittner 2012)
- 📖 The Internals of PostgreSQL (H Suzuki 2015)
- 🎥 YugabyteDB: Bringing Together the Best of Amazon Aurora and Google Spanner (K Ranganathan 2020)