Awesome Database Learning

A list of learning materials to understand databases internals, including but not limited to:

  • papers
  • blogs
  • courses
  • talks

Please submit a pull request if there is any material that you think should be included in this collection.

Table of Contents

Recommended Courses, Books and Talks

Courses

Books

Talks

Blogs

SQL & Relation Algebra

Courses:

Query Optimizer

Courses:

Blogs:

Planner Models

Blogs:

Papers:

Subquery Optimization

Blogs:

Papers:

Join Order Optimization

Papers:

Functional Dependency & Physical Properties

Thesis:

Papers:

Cost Model

Papers:

Statistics

Papers:

Books:

Query Execution

Courses:

Execution Framework

Papers:

Vectorization vs Compilization

Blogs:

Papers:

Join

Papers:

Hash Table

Courses:

Blogs:

Bloom Filter

Papers:

DDL

Relational Model

Blogs:

Codd's Rules

Blogs:

Relational Data Model

Blogs:

Relational Algebra

Blogs:

ER to Relational Model

Blogs:

SQL - Overview

Blogs:

Transaction

Isolation Levels

Blogs:

Papers:

Concurrency Control

Courses:

Papers:

Network

Courses:

Papers:

Storage

NoSQL Systems

Papers:

Buffer Management

Courses:

Papers:

Disk IO

Blogs:

Papers:

B-Tree

Blogs:

Courses:

Papers:

LSM-Tree

Papers:

Learned Indexes Structures

Papers:

Serializing & RPC

Data Partitioning

Blogs:

Papers:

Replication & Consistency

Blogs:

Papers:

Consensus

Technical report:

  • University of Cambridge Distributed consensus revised, a great paper about Consenssus especially Paxos and Paxos-Related algorithms, by Heidi Howard

Papers:

Scheduling

Blogs:

Papers:

Benchmark & Testing

Blogs:

Papers:

HTAP

Papers:

TLA+

Talks: