7 ms·
there is still transaction in one shard beyond SQL. I believe that ACID is the main benefit comparing with NoSQL store
by baibaichen 12y ago
there is still transaction in one shard beyond SQL. I believe that ACID is the main benefit comparing with NoSQL store
- h1karu 12y agoMy NoSQL store of choices gives me document-level ACID semantics along with eventual consistency, MapReduce, and replication. Here's an example that explains how to get transaction-like guarantees from this kind of NoSQL data-store: http://guide.couchdb.org/editions/1/en/recipes.html http://guide.couchdb.org/editions/1/en/recipes.html https://en.wikipedia.org/wiki/BigCouch https://en.wikipedia.org/wiki/BigCouch
- baibaichen 12y agoInteresting, that isn't transaction, it is just a workaround, and I don't think you can design your app like that which treat document as a transaction log. And then using view to generate the real information.
- h1karu 12y agothat's exactly how I design the parts of my app that need a transactional nature. Map/reduce views make it a breeze to query for a consistent aggregate view of the world. This is not something new it's a well established technique from the relational world called "event sourcing" http://www.martinfowler.com/eaaDev/EventSourcing.html http://www.martinfowler.com/eaaDev/EventSourcing.html when everything is a write you don't have to worry about conflicts or locks, so that's nice, plus couch is really good at scaling write thoughput with small documents.
- deleted 12y ago[deleted]