vix.ing · top · new · best · stats · spec

Looking Back at Postgres

Postgres pioneered extensible, object-relational database features that led to the world's most popular independent open-source database.

2019/01/07 by Joseph M. Hellerstein, Hellerstein, Joseph M. · 17 voices · 1 citation
#cs.DB

paper · pdf · doi:10.48550/arxiv.1901.01973

Abstract

This is a recollection of the UC Berkeley Postgres project, which was led by Mike Stonebraker from the mid-1980's to the mid-1990's. The article was solicited for Stonebraker's Turing Award book, as one of many personal/historical recollections. As a result it focuses on Stonebraker's design ideas and leadership. But Stonebraker was never a coder, and he stayed out of the way of his development team. The Postgres codebase was the work of a team of brilliant students and the occasional university "staff programmers" who had little more experience (and only slightly more compensation) than the students. I was lucky to join that team as a student during the latter years of the project. I got helpful input on this writeup from some of the more senior students on the project, but any errors or omissions are mine. If you spot any such, please contact me and I will try to fix them.

Summary

The paper reviews the history and technical architecture of Postgres, highlighting its focus on extensibility and object-relational features. It argues that the system's success stems from a sound architectural core that allowed it to survive as a widely adopted open-source project and a foundation for numerous commercial products.

machine-generated · gemma4:31b

In simple words

A long time ago, a man named Michael Stonebraker made a tool for storing data. He wanted it to make many different kinds of things work well together. This tool became very popular because people could add new parts to it easily. Many companies used his ideas to make money and billions of dollars were spent to buy those companies.

machine-generated · gemma4:31b

Outline

machine-generated · gemma4:31b

Argument

  1. Postgres was designed as an extensible 'object-relational' system to handle complex data types beyond simple rows and columns.
    Design papers from 1986 and 1991, and the implementation of ADTs and R-trees.
  2. This architectural focus on extensibility allowed Postgres to incorporate new features (like JSON/XML) without requiring a full re-architecture.
    The evolution of PostgreSQL's support for nested data types over time.
  3. The system provided a foundation that was robust enough for both an open-source community to maintain and commercial vendors to fork.
    The existence of PostgreSQL as a top-ranked DBMS and the list of acquisitions (Illustra, Netezza, etc.) totaling over 2.6 billion.
  4. Postgres's success proves that a broad, general-purpose architecture can be more sustainable than highly specialized systems.
    Comparison between 'Berkeley Stonebraker' (general purpose) and 'MIT Stonebraker' (specialized).

machine-generated · gemma4:31b

Assumptions

machine-generated · gemma4:31b

Claims

machine-generated · gemma4:31b

Cited by

Discussions

Related