The Design of the POSTGRES Storage System

Abstract : This paper presents the design of the storage system for the POSTGRES data base system under construction at Berkeley. It is novel in several ways. First, the storage manager supports transaction management but does so without using a conventional write ahead log (WAL). In fact, there is no code to run at recovery time, and consequently recovery from crashes is essentially instantaneous. Second, the storage manager allows a user to optionally keep the entire past history of data base objects by closely integrating an archival storage system to which historical records are spooled. Lastly, the storage manager is consciously constructed as a collection of asynchronous processes. Hence, a large monolithic body of code is avoided and opportunities for parallelism can be exploited. The paper concludes with a analysis of the storage system which suggests that it is performance competitive with WAL systems in many situations.

[1]  Irving L. Traiger,et al.  System R: A Relational Approach to Data Base Management , 1976, Berkeley Workshop.

[2]  Michael Stonebraker,et al.  The design and implementation of INGRES , 1976, TODS.

[3]  Guy M. Lohman,et al.  Differential files: their application to the maintenance of large databases , 1976, TODS.

[4]  Irving L. Traiger,et al.  System R: relational approach to database management , 1976, TODS.

[5]  Jim Gray,et al.  Notes on Data Base Operating Systems , 1978, Advanced Course: Operating Systems.

[6]  Philip A. Bernstein,et al.  The correctness of concurrency control mechanisms in a system for distributed databases (SDD-1) , 1980, TODS.

[7]  Philip A. Bernstein,et al.  Concurrency control in a system for distributed databases (SDD-1) , 1980, TODS.

[8]  David Maier,et al.  Making smalltalk a database system , 1984, SIGMOD '84.

[9]  Antonin Guttman,et al.  R-trees: a dynamic index structure for spatial searching , 1984, SIGMOD '84.

[10]  Michael Stonebraker,et al.  Implementation techniques for main memory database systems , 1984, SIGMOD '84.

[11]  Miron Livny,et al.  Models for studying concurrency control performance: alternatives and implications , 1985, SIGMOD Conference.

[12]  Nick Roussopoulos,et al.  Direct spatial search on pictorial databases using packed R-trees , 1985, SIGMOD Conference.

[13]  Jeffrey Scott Vitter,et al.  An efficient I/O interface for optical disks , 1985, TODS.

[14]  James R. Larus,et al.  Design Decisions in SPUR , 1986, Computer.

[15]  David J. DeWitt,et al.  Object and File Management in the EXODUS Extensible Database System , 1986, VLDB.

[16]  Michael Stonebraker,et al.  The design of POSTGRES , 1986, SIGMOD '86.

[17]  Michael Stonebraker,et al.  Inclusion of new types in relational data base systems , 1986, 1986 IEEE Second International Conference on Data Engineering.

[18]  Michael Stonebraker,et al.  The design of the POSTGRES rules system , 1987, 1987 IEEE Third International Conference on Data Engineering.