Hey Rizz I thought I would create a new thread since the first one has gotten beyond my ability to keep track of. You were riffing off the discussion we had on PVTL, to look at MDB
Wulf, We’ve had some lively debate on MongoDB in the recent past. What is ur take on mdb? How pervasive is the database? Is the premium version worth what mdb charges? What line does one cross to go from the free database to the subscription? Do u use other dbs or mostly Mongo?
As you may know, I’m very positive on MDB - it is the largest position in my portfolio. I think it has totally won the NoSql db wars. That doesn’t mean it will be alone - the point of NoSql is that there are a lot of different db models now, not just Sql, and you can use what is appropriate for your use case. But Mongo actually directly supports multiple different models, and it is also the default NoSql db to use unless you have a niche use case.
First the bull case: MDB has won for standard or generic NoSql database. From an adoption point of view across the user sets that matter it is way above everything else and probably can’t be caught in this generation.
It is the top NoSql database in every tech stack where it is available - Java, NodeJS, Ruby, MEAN, Spring, Meteor, C++, and all the Javascript focused stacks.
Mongo is the top database used in startups, and it is also getting enormous growth in the enterprise space - you can go up and down from the smallest company to the largest, and it has interest and growth at all levels.
As you may know, my bank has set a target of 40% of all new data stores should be built in Mongo. The amount of buy-in required to set a target like this at a huge global bank is amazing. Now there is lots of push back from the data team which is deeply bought-in to Oracle. Getting approval from them for a Mongo data design sometimes takes months, and it is always suggested that if we did it in Oracle, they could do it in days. We’re going to miss the target this year. But this has been noticed at high levels, and heads are rolling in the data team (or bonuses are disappearing, which amounts to the same thing). They’ll have to change their policies. We are just going to see increasing adoption as the blockers get moved.
If you want to think about how Mongo is moving into enterprise companies, you can use a pattern called Master Data, which divides data stores into transactional, enterprise, and data warehouse or data lake.
Enterprise data is all the information about your company, its users, products, processes, etc. This area has exploded with the internet. It is all the information you want to put on your website and applications. Mongo is perfect for this, and this is the first area that Mongo penetrates in enterprise companies.
Data Warehouse is where you put all your data so you can do analysis, machine learning, AI, on it. There is a lot of work going on new technologies here, but Mongo is extremely common as the middle tier solution here. Actual analysis usually occurs on different systems - the top name right now is Hadoop, (which coincidentally Pivotal, which is also a Mongo partner, has enormous expertise on).
Transactional data is the last stronghold of Sql, and it will take a long time before this moves to NoSql, because Sql has built-in defences against broken transactions - like if you transfer money from checking to savings, and the computer dies when you debit checking but before you credit savings. Sql can guarantee that the transaction either all goes through or all fails - no partial failures. Even in this area, Mongo 4.0 will have ACID transactions, which means it will be just as good as Sql. But knowing the industry, it may take a while before people believe them and trust Mongo for this area.
So Mongo is the NoSql database of choice and we are at the beginning of the 20 year transition going from Sql everywhere to NoSql everywhere. And while Mongo takes market share from Sql, the over all data market is growing like crazy also. I expect Mongo to get a lot bigger than Oracle in 20 years, unless it shoots itself in the foot.
Now the cautions:
-
MongoDB is open source and anyone can download the latest community version for free. Mongo makes money either from support or from hosting via Mongo Atlas. Now the thing is, no developer wants to host databases themselves these days - it is too hard, and too scary - it’s a good way to lose your job if you screw it up (not just the developer’s job - all the way up the chain). So every enterprise is going to either go Atlas if they trust the public cloud with their data, or get Mongo support if they are going to spin up their own Mongo hosting group in their own data centre. So Mongo the company should not have problem monetizing the use of Mongo the database - unless they screw up Atlas and someone else wins in hosting Mongo. They have so many built-in advantages that they would have to screw up very badly to lose here.
-
Mongo needs to focus on selling to enterprises. They started by selling to developers and startups, and their marketing, demos, expertise, etc. is all still much better in this area. They are still transitioning from looking at enterprise platforms such as Java as a side issue - they provide much more support for niche dev stacks popular early in startups (which often later get changed to more enterprise stacks as the startups grow). Now I have seen a lot of movement in this direction since they went public (and presumably spent some of their money to bulk up their enterprise sales force).
Over all, Mongo has hypergrowth as far as the eye can see, with no real visible dangers. They can only screw it up themselves.