I usually describe MongoDB as a database designed for applications where the data doesn't matter very much.<p>This might sound disparaging, and we all like to think our own data matters to the Nth degree, but consider: how important is that banner that displays at the bottom of the Amazon or Ebay page, "people who looked at this thing bought this stuff"? It has to be there, but how accurate does it have to be? Are you willing to wait an extra five seconds for it to be right?<p>In the overwhelming majority of places where you might want a database to help you manage the data involved, the majority if the data does not need to be 100% right if it would make the main operations slower. For those parts of the job, MongoDB in its default configuration with default options is good enough.<p>Many of us with what we like to think of as higher standards prefer to work where everything matters, and leave the dancing penguins to others. But those others do need a database, and they have the money to buy one.<p>(Disclosure: I was fired from MongoDB right after their IPO, perhaps in part for saying stuff like the above.)
Note the tweet credited as inspiration: <a href="https://twitter.com/MBeugnet/status/1253622755049734150" rel="nofollow">https://twitter.com/MBeugnet/status/1253622755049734150</a>