Juhana on kokenut ohjelmistoprojektien vetäjä, joka on erikoistunut Lean-ajattelun ja ketterien menetelmien käyttöönottoon suurissa julkisen sektorin tietojärjestelmähankkeissa. Viime vuosina hänet on pitänyt kiireisenä mm. Trafi, Valtori (Valtiokonttori), Opetushallitus, Kela ja Liikennevirasto. Aiemmin työurallaan Juhana on toiminut myös projektipäällikkönä ja ohjelmistosuunnittelijana. Juhanan ajatuksia voi lukea lisää hänen asiantuntijablogeistaan sekä Twitteristä.
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.
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.