nosql - Handling quorum writies fail on Cassandra -


according datastax documentation atomicity in cassandra: quorum write succeeded on 1 node not rolled (check atomicity chapter there:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_transactions_c.html). when performing quorum write on cluster rf=3 , 1 node fails, write error status , 1 successful write on node. produces 2 cases:

  1. write propagated other nodes when became online;
  2. write can lost if node accepted write broken before propagation.

what best ways deal such kind of fails in let hypothetical funds transfer logging?

when quorum write fails "timedout" exception, don't know if write succeeded or not. should retry write, , treat if failed. if have multiple writes need grouped together, should place them in "batch", batch succeeds or fails together.

in either case, want doing quorum reads if care consistent results coming back. if had rf=3, , quorum write got on 1 node, first time quorum read succeeds includes new value, repaired on 1 of other nodes, , quorum read give new value. if value written @ one, successive quorum reads never see value go in time.


Comments

Popular posts from this blog

css - Which browser returns the correct result for getBoundingClientRect of an SVG element? -

gcc - Calling fftR4() in c from assembly -

Function that returns a formatted array in VBA -