Absolutely. My characterization of Mongo is that it's the back end choice of front end developers. The only possible justification for it could be time to MVP (and that's being kind). It's bad for all of the reasons that back-end people make back-end choices - non-functional requirements like operability, clustering, etc.
Hopefully this is the start of it being removed from any infrastructure uses. I spun up an openstack instance the other day and was horrified to find Mongo in there.
Actually the NFRs are one of the best parts of MongoDB.
It is by far one of the easiest databases to administer, clustering is orders of magnitude easer than say PostgreSQL and it can be the fastest database by far for certain use cases e.g. cell level updates. Can you be more specific about what in particular is deficient ?
And if you look at their customers most of them aren't using it for front end work. Likewise I find it to be quite popular in the Data Analytics/Science space as a store of analytical features and for 360 entity views.
Agreed to an extent. It does have its' place and is definitely very easy to use if you have a limited number of collections, mostly distinct in use and have deeply structured objects.
The ease of clustering is pretty nice for either replica sets or basic sharding, but sharding + redundancy isn't great, and if you happen to have a majority of nodes offline it may never catch/sync up right again which may require bringing on/off new nodes or the whole thing down and restoring from backup.
About 4-5 years ago when a bulk of Azure went down, I experienced this, and it wasn't fun to say the least. Fortunately it was mainly a replica of primary data source for search/display for mostly-read scenarios and was easier to re-replicate the records from SQL in the end. If I were to do it again, I'd probably reach for Elastic first.
It can be very good for some use cases and less than good for others. The clustering is absolutely easier than anything but RethinkDB (in the box) and SQL Server (break out your checkbook) in my opinion.
The only time it was recommended to me was by a new NodeJS developer, I then explained ACID concepts around multiple transactions, they were floored. This was about 4 years ago, maybe mongo has matured?