PostgreSQL: State of Play

PostgreSQL arguably has been somewhat overlooked by database commentators. PostgreSQL doesn’t have the mas­sive marketing machine of Oracle or Microsoft, and it lacks the “new kid on the block” appeal of MongoDB or CockroachDB. However, PostgreSQL continues to increase in importance in terms of deployments and mindshare.

This year, PostgreSQL overtook MongoDB as the “most loved” and “most wanted” database platform. Developer enthusiasm is probably the strongest leading indicator of future deployments since developers, more than anyone else, get to decide what tech­nologies are used in an application.

PostgreSQL has also consolidated a lead against MongoDB in the database rank­ing system. The two databases have been fighting for fourth place (behind Oracle, MySQL, and SQL Server) for many years, but PostgreSQL now has a solid lead over Mongo.

PostgreSQL is the oldest open-source database and one of the oldest database platforms still in everyday use. Postgres originated from the Ingres project led by Michael Stonebreaker in the early 1980s. Although it was always a relational DBMS, Postgres only adopted the SQL language in 1995, when the name PostgreSQL was adopted.

When the open-source movement started gaining ground in the late 1990s, PostgreSQL was well positioned to become a lead­ing open-source DBMS. However, open-source MySQL, though arguably less technically sophisticated, was simpler to install, use, and maintain, and dominated the open-source database market until Oracle acquired MySQL in 2010.

However, even if PostgreSQL was only marginally signifi­cant as a stand-alone database platform during the 2000s, its significance as technology was immense. Postgres was used as the basis for commercial data warehousing platforms such as Greenplum and Netezza. The use of PostgreSQL embedded within other projects continues today. Leading distributed SQL database CockroachDB implements PostgreSQL compatibil­ity, while Yugabyte incorporates the PostgreSQL SQL engine directly within its product.

Enthusiasm for MySQL waned in the open-source commu­nity following the Oracle acquisition, and while Oracle has hardly starved the project, they have been careful not to let MySQL functionality encroach on the capabilities of their flagship Ora­cle database. Meanwhile, PostgreSQL capabilities have improved relentlessly, and the mindshare and market share of PostgreSQL improved accordingly.

Successful open-source projects usually have a commercial company promoting and monetizing the technology. For the past 18 years, that role has been filled by EnterpriseDB. Since 2004, EnterpriseDB has offered certified distributions of PostgreSQL for Enterprise use. Their most significant proprietary extension provided Oracle compatibility through the provision of an Oracle stored procedure language implementation and Oracle SQL syntax.

More recently, EnterpriseDB is investing heavily in modernizing their platform to compete against the new breed of cloud-based, distributed SQL data­bases. BigAnimal is a fully managed cloud-hosted version of PostgreSQL, available on Azure and AWS, and arriving shortly on Google Cloud Services.

The EnterpriseDB Postgres operator for Kubernetes allows easy provisioning of PosgreSQL in Kubernetes clusters. Enter­priseDB has handed the operator over to the Cloud Native Com­puting Foundation with the expectation that it will become a standard part of the Kubernetes stack.

Perhaps most ambitiously, EnterpriseDB has released Enter­priseDB Postgres Distributed, which improves the capabilities of distributed PostgreSQL clusters. Initially, Postgres Distrib­uted implemented a master-master replication scheme. However, future releases will move from a “smart replication” approach to a “native distributed” mode, in which data is redundantly parti­tioned across large numbers of nodes. EnterpriseDB hopes that this will allow their PostgreSQL distribution to compete with the new breed of distributed SQL systems such as Spanner, Yugabyte, and CockroachDB.

Meanwhile, the imminent release of version 15 of the open-source distribution of PostgreSQL includes many improvements. These include performance, replication, and security enhance­ments, as well as significant extensions to SQL and stored proce­dure languages.

PostgreSQL is benefiting from a continuing enthusiasm for open-source solutions together with a renewed acceptance of SQL-based solutions. I wouldn’t be at all surprised to see Post­greSQL take over the open-source database throne from MySQL in the not-too-distant future.