Database Systems Reading List
These papers should help the reader better appreciate the design and implementation of modern database management systems (DBMSs). By design, this reading list only contains papers that were published atleast 10 years ago. If you would like to add a paper to this reading list, submit a pull request.
- Case Studies
- Access Methods
- Query Optimization
- Query Processing
- Concurrency Control
- Recovery
- Data Models
- Distributed Data Processing
- Parallel Data Processing
- Operating System Issues
- Data Storage
- Main Memory DBMSs
- Optimizing for Hardware
- Self-Tuning DBMSs
- Triggers and Streams
Case Studies
- A History and Evaluation of System R
- A Relational Model of Data for Large Shared Data Banks
- The Design of the POSTGRES Storage System
- Architecture of a Database System
Access Methods
- The Ubiquitous B-Tree
- R-Trees: A Dynamic Index Structure for Spatial Searching
- Improved Query Performance with Variant Indexes
Query Optimization
- Access Path Selection in a Relational Database Management System
- An Overview of Query Optimization in Relational Systems
- R* Optimizer Validation and Performance Evaluation for Distributed Queries
Query Processing
- Query Evaluation Techniques for Large Databases
- Join Processing in Database Systems with Large Main Memories
- Data Cube : A Relational Aggregation Operator Generalizing Group By, Cross Tab, and Sub Totals
- An Overview of Data Warehousing and OLAP Technology
Concurrency Control
- Efficient Locking for Concurrent Operations on B-Trees
- On Optimistic Methods for Concurrency Control
- Granularity of Locks and Degrees of Consistency in a Shared Data Base
- A Critique of ANSI SQL Isolation Levels
Recovery
- ARIES: A Transaction Recovery Method Supporting Fine Granularity Locking and Partial Rollbacks Using Write Ahead Logging
- Why Do Computers Stop And What Can Be Done About It ?
Data Models
Distributed Data Processing
- Transaction Management in the R* Distributed Database Management System
- A Case for Fractured Mirrors
- Consensus on Transaction Commit
- Mariposa: A Wide-Area Distributed Database System
Parallel Data Processing
- Parallel Database Systems: The Future of High Performance Database Systems
- Encapsulation of Parallelism in the Volcano Query Processing System
- The GAMMA Database Machine Project
Operating System Issues
- Operating System Support for Database Management
- An Evaluation of Buffer Management Strategies for Relational Database Systems
Data Storage
- Data Morphing: An Adaptive, Cache-Conscious Storage Technique
- A Case for Redundant Arrays of Inexpensive Disks
Main Memory DBMSs
Optimizing for Hardware
- DBMSs on a Modern Processor: Where Does Time Go?
- Database Architecture Optimized for the New Bottleneck: Memory Access