On 6/21/2011 3:36 PM, Stephen Connolly wrote:

writes are not atomic.

the first side can succeed at quorum, and the second side can fail completely... you'll know it failed, but now what... you retry, still failed... erh I'll store it somewhere and retry it later... where do I store it?

the consistency level is about tuning whether reads and writes are replicated/checked across multiple of the replicates... but at any consistency level, each write will either succeed or fail _independently_

you could have one column family which is kind of like a transaction log, you write a json object of all the mutations you will make, then you go and make the mutations, when they succeed you write a completed column to the transaction log... them you can repeat that as often as need

you could have transactions posted as columns in a row, and to get the balance you iterate all the columns adding the +'s and -'s

by processing the transaction log, you could establish the highest complete timestamp, and add summary balance columns being the running total up to that point, so that you don't have to iterate everything

- Stephen


Yeah, it's all more than I want to do.  But, I just rediscovered Dominic's Cages.   Has anyone tried it?

---
Sent from my Android phone, so random spelling mistakes, random nonsense words and other nonsense are a direct result of using swype to type on the screen

On 21 Jun 2011 22:04, "AJ" <aj@dude.podzone.net> wrote: