|
|
|
|
|
by imtringued
1499 days ago
|
|
>Hold on, doesn’t one-database-per-user totally absolve all ACID guarantees? No it doesn't. What gave you that idea? You still have all "ACID guarantees" within each database. >You can’t do cross-database transactions (to my knowledge), That's true of most databases. If you have two apps and they use two different databases you won't have transactions across those two apps. >which means you can end up with corrupted data during aggregations. No, aggregations within each database work as you would expect. >What am I missing? As others have said, you use this pattern only if you don't intend to cross databases. By the way, in NoSQL databases like MongoDB, every document is its own little database so having a per user database is a massive upgrade over NoSQL. |
|
- I was talking about ACID guarantees across databases (ie across users) - I was talking about aggregations across databases (ie across users)
Of course working inside one database works as you would expect it to. My point was that this pattern of database-per-user seems to be a totally different design than people have used with traditional n-tier designs.
Good point about NoSQL! But, wasn’t part of the reason MongoDB fell out of favor because it was lacking consistency?