But if you’ve planned your app through and know beforehand you don’t need relational data, you can skip the overhead of a RDBMS.
At least that’s what I would say if I hadn’t been in this exact situation and it later turned out we do need relational data so we had relational documents.
Also working with MongoDB without ODM is pure pain.
Cache-like storage, private user-specific data, blobby or otherwise schemaless data. Stuff like that. But IMO it’s a matter of time until you find a need to operate against this data relationally, and then you regret using document storage. I’ve made this mistake twice now and do not intend to make it again. I now consider document storage architecture to be a performance optimization with significant tradeoffs, and not a choice to be made by default for nearly any scenario.
But if you’ve planned your app through and know beforehand you don’t need relational data, you can skip the overhead of a RDBMS.
At least that’s what I would say if I hadn’t been in this exact situation and it later turned out we do need relational data so we had relational documents.
Also working with MongoDB without ODM is pure pain.
Side tracking here : to me, it seems like every DB is relational, no?
What use case would a DB used and not be relational? With my minimal experience in DB, I haven’t seen any other use cases than a relational DB.
Cache-like storage, private user-specific data, blobby or otherwise schemaless data. Stuff like that. But IMO it’s a matter of time until you find a need to operate against this data relationally, and then you regret using document storage. I’ve made this mistake twice now and do not intend to make it again. I now consider document storage architecture to be a performance optimization with significant tradeoffs, and not a choice to be made by default for nearly any scenario.