Postgres is the #1 database 35 years after the release of version 1 and 28 years after its release as open source software
In 2023 Postgres became the undisputed #1 in the Stack Overflow Developer Survey, beating MySQL for the first time. 45.55% of all respondents chose Postgres in 2023. The rising popularity of Postgres continues this year. In Stack Overflow’s 2024 survey, almost 49% of respondents picked Postgres.
Stackoverflow Developer Survey 2024: Databases
In this blog I will explore the factors that I believe contributed to this success, and why I believe that Postgres is a safe and future-proof long-term data platform for developers and application owners.
Some of those reasons can be found in early design decisions taken by Mike Stonebraker and team 35+ years ago (see Joseph Hellerstein 2019). The introduction of extensible data types through the use of an object-relational framework is key, just like the use of the POSIX framework.
While the POSIX decision doesn’t get much airtime, I believe it is key to the universal availability of Postgres. POSIX helps make sure that Postgres runs on virtually every cloud, OS, and hardware platform, as it leverages existing operating system services such as IO and storage management. That makes it possible to run Postgres on Linux, Mac, Windows, DB2, Arduino, and many other platforms.
The object-relational design, which allows for the creation of user-defined data types and user-defined functions, is widely recognized as a key driver to Postgres’ success. This is what made it possible to add geographic data types, indexes, and operations (what we know as PostGIS today), key-value data types (HSTORE), complex nested documents (JSON) and many other data types. Bruce Momjian describes well how that is accomplished in Postgres (Making Postgres Central in Your Data Center).
But GIS, JSON, key-value etc. are not the end of the line. The same approach is now being used to add AI capabilities using pgvector to create AI applications. Pgvector implements a new data type (a 2000-dimensional vector), the corresponding functions (L1/L2 distance, inner product, cosine distance) and specialized indexes (Hierarchical Navigable Small Worlds - HNSW, Inverted File with Flat Compression - IVFFlat). Since its introduction in 2021, it has been used for many AI applications, such as EDB Envoy, an intelligent co-pilot to help users adopt EDB Postgres.
You may wonder why multi-models in Postgres are such a big deal? After all, there are specialty databases for documents (MongoDB, Marklogic, etc.) and vectors (Pinecone, Weviate, etc) -- why not just use those? Several reasons:
- Developer skill set: you need skills to design and develop for multiple platforms. That’s expensive and complicated, both in the initial development and in the long-term maintenance
- Administration skills: Patching, backup, recovery, version management, and security tasks get exponentially more complex as you add more data management platforms
- License cost: Even open source costs money, if for no other reason than that you should have commercial support when you run mission critical applications.
You can use an array of specialty database software, but you won’t like it!
In Postgres, all of the above (GIS, JSON, HSTORE, pgVector, etc) speak SQL, all use the same transactional context, and all are installed/patched/upgraded/secured in the same way on the same hardware. Easy peasy!
But it’s not just the object-relational design, the POSIX platform, and a few other technical decisions that make Postgres so successful and make it a future-proof platform.
Postgres is not just a piece of software, it is also a vibrant global community of hundreds of developers and supporters, and dozens of contributing software companies that have a transparent and mature management process as described in Bruce Momjian’s article Who is in Charge of Postgres.
Dozens of public events happen around the globe, assuring rapid innovation and skills development, and facilitating an unparalleled knowledge exchange.
I hope this explains why I believe that Postgres is so successful, and why I am confident recommending it to customers as the go-forward strategic data platform.
Just use Postgres! Get Stuff Done!