EnterpriseDB has begun running comparison tests to help Postgres users better assess the NoSQL capabilities of Postgres. The tests compare PostgreSQL (often called Postgres) with MongoDB as recent advances have significantly enhanced Postgres’ capacity to support document databases.
We are inviting an open review of our test results and our framework. We’ve made the materials available (see below for information) for the Postgres and MongoDB communities to examine the results and even duplicate our test or develop new ones. Our goal is to encourage greater participation in exploring Postgres as its NoSQL technology continues to expand to meet evolving enterprise workloads.
In testing, EDB has found that Postgres outperforms MongoDB in selecting, loading and inserting complex document data in key workloads:
- Ingestion of high volumes of data was 2.2 times faster with Postgres
- MongoDB consumed 35% more disk space
- Data inserts took three times longer with MongoDB than Postgres
- Data selection took almost three times as long with MongoDB than Postgres
The results demonstrate that the recent JSON enhancement to Postgres for unstructured data perform very well, and in our initial testing shows performance at levels better than, or on par with, the more specialized MongoDB solution. What is compelling is that these document database capabilities in Postgres simultaneously enable developers to take advantage of Postgres’ stability and ACID compliance. Our customers report that this advantage eliminates data silos and promotes easier data governance when compared to the specialized solution. Postgres provides users the technology they need to address some critical new data challenges without taking on the risks and incremental cost of a NoSQL-only solution, which can introduce a host of management and data integrity challenges.
What’s clear is that enterprises with evolving unstructured data challenges need to examine evolving capabilities in Postgres before introducing the risks and problems that NoSQL-only solutions bring to data environments.
Designed for Expansion
“The object-relational foundation of PostgreSQL means adding new capabilities is a seamless process and the database is always expanding to meet the needs of users,” said Jonathan Katz, chief technology officer of VenueBook and a PostgreSQL community organizer. “JSONB truly reflects the brilliance of the PostgreSQL community. We now have a relational database system, historically known for providing data integrity and robust functionality, that can search over non-relational data structures at speeds that rival, if not surpass, those of NoSQL database systems.”
Recent releases of Postgres have emphasized JSON capabilities. The new version due to be released this fall, PostgreSQL 9.4, will feature JSONB, which will increase Postgres’ performance on document database workloads dramatically. But building document database capabilities into Postgres is the newest initiative to enhance NoSQL capabilities in Postgres. Postgres has, in fact, had the capacity to support key-value stores since 2006 when the HStore contrib module was added, years before some of the leading NoSQL solutions were released or even developed.
Share in the Exploration
Many end users are still exploring the capacity for Postgres to support unstructured data as their needs evolve. To that end, EDB has developed and made available multiple code samples for utilizing Postgres in NoSQL use cases. EDB has also developed a white paper that demonstrates some of the NoSQL capabilities of Postgres and identifies some of the challenges posed by introducing NoSQL solutions into the data environment.
We have made available all of the materials discussed, without registration requirements, so please visit our Postgres NoSQL Resources Page.
Marc Linster is Senior Vice President, Products and Services, at EnterpriseDB.