Why MongoDB Didn’t Conquer the World: Part 1

5.9.2017

Juhana Huotarinen

Juhana Huotarinen

Juhana Huotarinen is a lead consultant of software development at Gofore. Juhana’s background is in software engineering and lately, he has taken part in some of the biggest digitalisation endeavours in Finland. His blogs focus on current topics, involving agile transformation, software megatrends, and work culture. Juhana follows the ‘every business is a software business’ motto.

In 2015 MongoDB, Inc. published a press release that its influence has grown more than 163% in the past two years and has overtaken PostgreSQL in the DB-Engines database ranking. In addition, 27 of the Fortune 100 companies used MongoDB in their business in 2013. However, in the database management system (DBMS) league you’re only as good as your last game.

Based on the same DB-Engines database ranking, MongoDB hasn’t gained popularity in 2017. On the contrary, its influence has started to sink in the past months. Why didn’t MongoDB win the DBMS market after all?

Not a One-Hit Wonder

MongoDB’s story started in 2007 when the team behind DoubleClick created a database for their scalability and agility needs. MongoDB was one of the first document-oriented database and quickly got the developers’ attention. MongoDB seemed fresh and exciting.

MongoDB simplified development, because documents map to object-oriented programming languages naturally and remove complex object-relational mapping (ORM) layer. MongoDB’s dynamic schema model likewise meant that a database schema can evolve with business requirements. MongoDB also scaled with no downtime and without application changes, which is a huge advantage if data volume and throughput significantly grow.

MongoDB’s popularity growth had a strong bond to the emergence of JavaScript in the late 2000s. MongoDB and JavaScript use the same JavaScript Object Notation (JSON) standard for representing data structures. For the first time, it was possible to create an enterprise web application without impedance mismatch and data conversion.

The global startup movement also gave a boost to MongoDB. Startups work with proof-of-concepts, how to decrease time-to-market, and dynamic business models. Startups often needed a software to implement their product, and MongoDB was an effortless choice with its quick deployment and dynamic schema model.

When the term NoSQL was reintroduced in early 2009, MongoDB was almost a synonym of a NoSQL-database. However, NoSQL defines all kinds of non-relational databases, not only document-oriented databases. MongoDB even established “MongoDB University” where certifications and multiple online courses are available for everybody.

Return of PostgreSQL

One of MongoDB’s rival enemies is PostgreSQL. Unlike MongoDB, PostgreSQL was a traditional relational database created in the 20th century. PostgreSQL gained popularity over the years, but it had the same weaknesses as other relational databases.

PostgreSQL released version 9.4 in the end of 2014. This version contained support for HStore and JSON, which actually turned PostgreSQL into a document-capable database. On top of that, PostgreSQL 9.4 outperforms MongoDB its own backyard —in performance tests.

This changed the game between these two competitors. In a new project, it was safer to choose PostgreSQL over MongoDB, because PostgreSQL supported relational and document databases features. For the same reason, switching from PostgreSQL to MongoDB in an existing project wasn’t a topic anymore. The result was that PostgreSQL overcame MongoDB in the DB-Engines database ranking in 2017.

My latter blog post continues analysing the reasons of MongoDB’s recession and offers a glimpse in the future of the DBMS market.