Title and Author of Paper
Architecture of a Database System. Joseph M. Hellerstein, Michael Stonebraker, James Hamilton.
Architecture of a Database System provides an explanation of how to implement a relational database. It begins with an architectural overview of the main parts of a database system as viewed through the life of an SQL query. This includes how the query is received, parsed and optimized and how the resulting data is returned from storage as part of a transaction.
Following the introductory overview, the paper dedicates a section to each of the main relational database components.
What are the motivations for this work?
The practical implementation of database systems uncovers solutions to problems that may not be covered in academic literature. This paper aims to document the art of implementing databases in a practical environment and serves to document the gap between academic research and practical implementation.
What is the proposed solution?
This paper does not provide any prescribed solution to database architecture. Rather, it is a survey paper describing the state of both the research and implementation of database systems. At the time of writing, the relational database was the clear academic and industrial standard and the focus of this paper is strictly on the architecture of relational databases. Although this may sound limiting, the architectural ideas still largely apply to modern systems.
What are the contributions?
This paper is required reading for anyone attempting to implement a database system. By taking the time to understand the relational architecture and appreciate its dominance in the field you may be able to build something that can improve upon it.
The rise in NoSQL systems has led to a lot of alternative architectures but these newer systems can still benefit from working with the general architecture described in this paper. For example, concurrency control and transaction management are on-going concerns in modern databases.
What are future directions for this research?
The explosion of NoSQL database implementations dates some of the material in this paper. Particularly, column storage is becoming the de facto storage method for database systems. Distributing data and providing strong consistency and availability guarantees is a large topic of research that is unfortunately not covered by this paper.
What questions are you left with?
The paper discusses the both master-slave replication and read-replica distributed database architectures. These architectures are still relevant to database design but a discussion of some of the broader issues in distributed databases would be appreciated.
What is your take-away message from this paper?
Any database implementation can follow some of the guiding principles in this paper — whether or not they are implemented exactly as presented. At the very least, readers of this paper will appreciate the design issues that must be considered for a successful implementation and will be able to dive deeper into the topics of interest using the provided sources.