qingping209 / awesome-dbdev

Awesome materials about database development.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Database Development

About

You want to become an awesome database developer?

That's great, me too. Being a database developer is fun and challenging. But don't panic, I have collected a lot of awesome materials for us.

Operating System

Papers

Books

Links

Storage Device

There are a lot of concepts here, I have put up a post to explain them: What You Should Know About Storage Devices

Media

Links

Videos

Interface

Links

Videos

Virtualization

Links

Videos

Storage Engine

Papers

Database Optimizer

Papers

Links

Database Transaction

Papers

  • Granularity of Locks and Degrees of Consistency in a Shared Data Base (IBM, 1975)

    The first part of this paper introduces a locking protocol that allows simultaneous locking at various granularities in a database with a hierarchical structure. The second part of this paper introduces four degrees of consistency and the relationships of the four degrees to the locking protocol.

  • The Notion of Consistency and Predicate Locks in a Database System (IBM, 1976)

    This paper proofs that two-phase locking (2PL) guarantees serializability and introduces predicate locks to address the problem of phantom reads.

  • A Critique of ANSI SQL Isolation Levels (SIGMOD, 1995)

    This paper analyzes the ambiguities of ANSI isolation levels and provides clearer phenomena definitions. It also presents a new MVCC isolation level called snapshot isolation. A transaction in snapshot isolation reads data from a snapshot of the committed data as of the time the transaction started, and checks for write-write conflicts.

  • Generalized Isolation Level Definitions (ICDE, 2000)

    This paper proposes a graph-based approach to define existing ANSI isolation levels.

  • Serializable Isolation for Snapshot Databases (SIGMOD, 2008)

    This paper presents an algorithm to achieve serializable snapshot isolation based on anti-dependencies detection.

  • A Critique of Snapshot Isolation (EuroSys, 2012)

    This paper presents a new MVCC isolation level called write-snapshot isolation. A transaction in write-snapshot isolation checks for read-write conflicts instead of write-write conflicts in snapshot isolation.

Distributed Transaction

Papers

Books

Links

Distributed Algorithm

Theorem

Papers

Links

Consensus

Papers

  • Paxos Made Simple (Lamport, 2001)

    The Paxos algorithm, when presented in plain English, is very simple.

  • Paxos Made Live - An Engineering Perspective (PODC, 2007)

    This paper presents the experience of building Chubby, a fault-tolerant storage system using the Paxos consensus algorithm.

  • There Is More Consensus in Egalitarian Parliaments (SOSP, 2013)

    This paper presents the design and implementation of Egalitarian Paxos (EPaxos), a new distributed consensus algorithm based on Paxos that achieves uniform load balancing across all replicas.

  • Paxos Quorum Leases: Fast Reads Without Sacrificing Writes (SOCC, 2014)

    This paper presents quorum leases, a technique that allows Paxos-based systems to perform consistent local reads on multiple replicas.

  • In Search of an Understandable Consensus Algorithm (USENIX, 2014)

    This paper presents Raft, a consensus algorithm for managing a replicated log. Raft produces a result equivalent to Paxos, and it is as efficient as Paxos, but its structure is different from Paxos. Raft is more understandable than Paxos and also provides a better foundation for building practical systems.

Links

Consistency

Papers

Links

Replication

Papers

Distributed System

Papers

OLTP Database

Papers

Links

OLAP Database

Papers

Books

Miscellaneous

Papers

Books

Links

About

Awesome materials about database development.