Architecture of a Database System

Front Cover
Database Management Systems (DBMSs) are a ubiquitous and critical component of modern computing, and the result of decades of research and development in both academia and industry. Architecture of a Database System presents an architectural discussion of DBMS design principles, including process models, parallel architecture, storage system design, transaction system implementation, query processor and optimizer architectures, and typical shared components and utilities. Successful commercial and open-source systems are used as points of reference, particularly when multiple alternative designs have been adopted by different groups. Historically, DBMSs were among the earliest multi-user server systems to be developed, and thus pioneered many systems design techniques for scalability and reliability now in use in many other contexts. While many of the algorithms and abstractions used by a DBMS are textbook material, Architecture of a Database System addresses the systems design issues that make a DBMS work. Architecture of a Database System is an invaluable reference for database researchers and practitioners and for those in other areas of computing interested in the systems design techniques for scalability and reliability that originated in DBMS research and development.
 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Selected pages

Contents

Introduction
1
The Life of a Query
2
12 Scope and Overview
7
Process Models
9
21 Uniprocessors and Lightweight Threads
12
22 DBMS Threads
19
23 Standard Practice
20
24 Admission Control
22
48 Standard Practice
68
49 Discussion and Additional Material
69
Storage Management
71
Buffering
73
53 Buffer Management
75
54 Standard Practice
77
Transactions Concurrency Control and Recovery
79
61 A Note on ACID
80

25 Discussion and Additional Material
24
Parallel Architecture Processes and Memory Coordination
25
32 SharedNothing
27
33 SharedDisk
30
34 NUMA
31
35 DBMS Threads and Multiprocessors
32
36 Standard Practice
33
37 Discussion and Additional Material
34
Relational Query Processor
37
41 Query Parsing and Authorization
38
42 Query Rewrite
40
43 Query Optimizer
43
44 Query Executor
49
45 Access Methods
54
46 Data Warehouses
57
47 Database Extensibility
63
62 A Brief Review of Serializability
81
63 Locking and Latching
83
64 Log Manager
89
65 Locking and Logging in Indexes
92
66 Interdependencies of Transactional Storage
96
67 Standard Practice
98
68 Discussion and Additional Material
99
Shared Components
101
72 Memory Allocator
102
73 Disk Management Subsystems
105
74 Replication Services
107
75 Administration Monitoring and Utilities
109
Conclusion
113
Acknowledgments
115
References
117
Copyright

Common terms and phrases

Bibliographic information