 Riak allows both of the approaches offered by Voldemort and Cassandra. CouchDB provides a hybrid: it identifies a conflict and allows users to query for conflicted keys for manual repair, but deterministically picks a version to return to users until conflicts are repaired. Read Repair If R replicas return non-conflicting data to a coordinator, the coordinator can safely return the non-conflicting data to the application. The coordinator may still notice that some of the replicas are out of sync. The Dynamo paper suggests, and Cassandra, Riak, and Voldemort implement, a technique called read repair for handling such situations. When a coordinator identifies a conflict on read, even if a consistent value has been returned to the user, the coordinator starts conflict-resolution protocols between conflicted replicas. This proactively fixes conflicts with little additional work. Replicas have already sent their version of the data to the coordinator, and faster conflict resolution will result in less divergence in the system. Hinted Handoff Cassandra, Riak, and Voldemort all employ a technique called hinted handoff to improve write performance for situations where a node temporarily becomes unavailable. If one of the replicas for a key does not respond to a write request, another node is selected to temporarily take over its write workload. Writes for the unavailable node are kept separately, and when the backup node notices the previously unavailable node become available, it forwards all of the writes to the newly available replica. The Dynamo paper utilizes a'sloppy quorum' approach and allows the writes accomplished through hinted handoff to count toward the W required write acknowledgments. Cassandra and Voldemort will not count a hinted handoff against W, and will fail a write which does not have W confirmations from the originally assigned replicas. Hinted handoff is still useful in these systems, as it speeds up recovery when an unavailable node returns. Anti-Entropy When a replica is down for an extended period of time, or the machine storing hinted handoffs for an unavailable replica goes down as well, replicas must synchronize from one-another. In this case, Cassandra and Riak implement a Dynamo-inspired process called anti-entropy. In anti-entropy, replicas exchange Merkle Trees to identify parts of their replicated key ranges which are out of sync. A Merkle tree is a hierarchical hash verification: if the hash over the entire keyspace is not the
Riak allows both of the approaches offered by Voldemort and Cassandra. CouchDB provides a loanblend: it identify a conflict and allows drug user to question for conflicted keys for manual repair, but deterministically picks a adaptation to return to users until conflict are repaired. Read Repair If radius replicas return non - at odds data to a coordinator, the coordinator can safely return the non - at odds data to the lotion. The coordinator may even notice that some of the replicas are out of sync. The Dynamo paper hint, and Cassandra, Riak, and Voldemort implement, a technique called read haunt for handling such situation. When a coordinator identifies a conflict on read, even if a consistent value has been returned to the user, the coordinator begin conflict - resolution protocols between conflicted replicas. This proactively fixes conflicts with short additional work. Replicas have already sent their version of the data to the coordinator, and faster conflict resolution will result in less divergence in the arrangement. Hinted Handoff Cassandra, Riak, and Voldemort all employ a technique call hint handoff to better write performance for situations where a lymph node temporarily becomes unavailable. If one of the replica for a key does not respond to a write request, another node is choose to temporarily take over its write workload. Writes for the unavailable node are kept separately, and when the backup node notices the previously unavailable lymph node become available, it forwards all of the writes to the newly available replica. The Dynamo paper utilizes a'sloppy quorum' approach and allows the writes accomplished through hinted handoff to count toward the W necessitate write acknowledgments. Cassandra and Voldemort will not count a hinted handoff against W, and will fail a write which does not have W confirmations from the primitively assigned replicas. Hinted handoff is still useful in these system, as it accelerate up recovery when an unavailable node returns. Anti - Entropy When a replica is down for an elongated period of time, or the car storing hinted handoffs for an unavailable replica goes down equally well, replicas must synchronize from one - another. In this case, Cassandra and Riak implement a Dynamo - prompt process called anti - entropy. In anti - entropy, replicas substitution Merkle Trees to name parts of their replicated key range which are out of sync. A Merkle tree is a hierarchical hash verification: if the hash over the integral keyspace is not the
 Riwk allows both of the apkroaches offered yt Voldxmort ahd Cassavdra. CouchDB provides a hybrmd: ir idebtifies a conflict and allows uders to wuerb for conflicted keys fov manhwl rzpeir, but determikistically [icks a versiot go return to users until conflicts arq repaitef. Read Repair Yf R wepljbaw return non-conflicting data fo a comrdinator, the coordinator can safely rehurn the non-conflictinh data to tye a[plication. Thd coordinauox may still notice that some of the replicxs arz out of sybc. Thf Dynamo papxr sugdests, and Cassandra, Siak, anc Voldemort imilemeit, a technique called reav repair for handlind such siductions. When a coordinqtir idgntifhes x covfljcv oh read, evxn if a conaistent valye has been returnec ei the user, ths coorqigator starts conflict-resolution protocons getween conflicted replucas. This proactively fixes cogflicts with little additional work. Replicas have alreedh stnb gyelr version of the data to the coordinator, and raxtvr conflict resolmtion will result on lrfs divergence in thz sgstem. Hinted Handovf Casswndra, Riak, and Volcemort all employ a techniqye called hiutee handoff to improre write peryormanve fot situations where a nobe temlorarily befomes unabxilable. If one ow tme seplicas for a key does noe respond to c write fequgst, anoeher node ls selected to temporaripy tane over its arite workload. Writes for the uievailable nodg ase nept sepcrateln, and when the fackup node nojices the prevkously unanailable iode become wvailable, it xlrwards all mf the wwitew to the neduy available rrplica. Thv Bynamo paper utilizes a'slopiy quudum' approach anb qllows the writrs xccjmilixhqg through hitted havcoff go counu tidard the W required writa acinowledgments. Casssnqra and Coldemore will not coint a hinted handovf ageinst X, and eilj fail a write which does not gave W cojfivmations from the originally cssigned replicas. Hinted handoff is stilo useful in these wystems, as it speedx up recoverb when an unavahlable node returns. Qnti-Entropy When s replica is down for an exdendef period of time, or the machine storing hinted handoffs for an unavailablw replmcw goes down as eell, gepjncas muft sbnrhronize from one-snother. In this case, Cassandra end Riak ikpjement a Dynamo-inspired procrsr called anti-gntropy. In anti-entropy, repmicas exvhange Merkle Trees to identify parts of their replicatcd key rabges shich are uut of sync. A Merkke trez is a hierarxhicwl hash verifkcayiln: if the hasi orer the entire keyspace is not thw
Riak allows both of the approaches offered and CouchDB provides hybrid: it identifies to for conflicted keys manual repair, but picks a version to return to until conflicts are repaired. Read Repair If R replicas return non-conflicting data to coordinator, the coordinator can safely return the non-conflicting data to the application. The may notice some the replicas are out of sync. The Dynamo paper suggests, and Cassandra, Riak, and Voldemort implement, technique called read repair for handling such situations. a coordinator identifies a on read, even if a value been returned the the starts conflict-resolution protocols conflicted replicas. This proactively fixes conflicts with little additional work. Replicas have already sent their version of data to and faster resolution result less divergence in Hinted Handoff Cassandra, Riak, and Voldemort technique called hinted handoff to improve write performance situations where node temporarily becomes unavailable. If one the replicas for a key does not respond a write request, another node is selected to temporarily take over its write workload. Writes unavailable node are kept and when the node the unavailable become available, forwards all of the writes to the newly available replica. The paper utilizes a'sloppy quorum' approach and allows the writes accomplished handoff count toward the required write acknowledgments. Cassandra Voldemort not count a hinted W, will which not W confirmations from the assigned replicas. Hinted handoff is useful in these systems, when an unavailable node returns. Anti-Entropy When a is down for an extended period of or the machine storing hinted handoffs for an unavailable replica goes down well, replicas from one-another. In this case, Cassandra and Riak a Dynamo-inspired process called In anti-entropy, replicas exchange Merkle Trees to identify parts their key ranges are out of A Merkle tree a hierarchical hash the hash the keyspace
 Riak allows both of the approaChes offereD by VoLdeMorT aNd CaSsanDra. CouchDB provIDes a Hybrid: it identifies a conFlict AnD AlloWS uSers tO query fOR cONFliCtEd KeyS fOR mAnual RepAir, but dEterministIcaLlY picks a versiON tO return to uSerS until confliCts Are repAiRed. rEad RePaiR If R rEplicaS Return Non-confliCtINg data TO a coordINAtOr, thE coordinator can saFElY Return the non-coNflictInG DaTA To tHe aPplication. thE coorDInator mAY sTILL noTIce that some of The replicas ARe oUt of syNc. the dYnamo pAper sUgGEstS, and CassandRa, RiAk, and VoldEmort iMPlement, A TechniqUe callEd rEad RepaIR fOr HanDlINg sUCh SitUAtiOns. When a CoOrDinatOr idENTIFies A coNfliCt on rEad, even if a conSisTent VAluE has bEen reTurnEd To the User, thE coorDiNator starts confLict-ResolutioN prOtOcoLs BetweEN conflIctEd rEplicas. this proACtiVeLY FIxEs conflicts with litTlE ADdItional wOrk. RepLIcAs HAve alreaDy SenT theIR VersiOn of THe Data to thE coordINaToR, and fasTeR conflIcT reSolUtion WIll rEsult iN less divErgenCE in the system. HiNTed Handoff CasSAnDRA, RIAk, anD VoLdemort all eMploY A tecHniqUE cAllED hintEd hanDoFF tO Improve write performAnCe for sItuatIons where a nodE temporariLY BEcomes unAvaiLAbLE. If one of the repLicas For a key doeS Not respoNd to a Write reqUest, anothER Node is seLecTed To tEmpORArIly take over itS WRite WoRkload. WRitEs for thE unAvaIlaBle NoDe are kept SeparateLy, AnD wHeN thE backUP node notIcEs tHe PreViousLY unavaIlablE nodE bEcOMe aVailablE, It FORwarDs AlL of tHe wRiTes to The nEWly AvailabLe replica. the dYnamO pApEr utiliZes a'sloppy quoRuM' approach aNd AllOws the WRItes accoMplished through hinted haNDoff to cOunT towaRd thE W requireD wrIte ackNowLEdgmenTs. CassAndra AnD VoLDEmort WILl Not CoUnt a hinted HANdoFf agaInSt W, aNd will fAil a write which does NOt hAve W confirmatIonS froM THe OriGInALly AsSIgnED Replicas. Hinted hAndoff is stIlL UsEful in thesE SysTeMs, as it sPeeds up RecovERy when aN unavailaBle node reTuRns. ANTI-EnTropy When a Replica iS down for aN ExtenDEd PerioD of Time, or ThE maChine StorinG HinTed haNdoffs FoR an unaVailaBlE replica Goes down as well, replicas mUst synChronIze From one-anOthER. In This case, CAssaNdra and RiaK imPleMent a dynAMo-insPireD PrOceSS callEd anTI-entropy. IN AnTi-eNTRoPy, replicas eXCHAngE MerkLe TREes to iDentIfy parts of their rePLicated key rangEs whICH arE ouT Of syNc. a Merkle tree is a HieRaRCHical hasH vErification: If the hasH oVEr the Entire KeyspaCe is not THE
 Riak allows both of the a pproachesoffer edbyVo ldem ortand Cassandra. Couc hDB provides a hybrid:  it i de n tifi e sa con flict a n da l low sus ers  t o  q ueryfor  confli cted keysfor  m anual repair ,  b ut determi nis tically pick s a  versi on  to retur n t o use rs unt i l conf licts are  r e paired .  Read R e p ai r If  R replicas retur n  n o n-conflictingdata t oa  c o o rdi nat or, the co or dinat o r can s a fe l y ret u rn the non-co nflicting d a tato the  a ppl i cation . The  c o ord inator maystil l noticethat s o me of t h e repli cas ar e o utof s y nc .The  D y nam o  p ape r  su ggests,an dCassa ndra , R i ak,and  Vol demor t implement,a t echn i que  call ed re ad r ep air f or han dling  s uch situations.  Whe n a coord ina to r i de ntifi e s a co nfl ict  on rea d, even ifac o n si stent value has be en r et urned to  the u s er ,t he coord in ato r st a r ts co nfli c t- resoluti on pro t oc ol s betwe en  confl ic ted  re plica s . Th is pro actively  fixe s  conflicts wit h  little addit i on a l  w o rk.Rep licas havealre a dy s entt he irv ersio n ofth e  d a ta to the coordinat or , andfaste r conflict re solution w i l l  resultin l e ss divergence inthe s ystem. Hin t ed Hando ff Ca ssandra,  Riak, an d Voldemor t a llemp loy a  t echnique call e d  hin te d hando ffto impr ove  wr ite  pe rf ormance f or situa ti on swh ere  a no d e tempor ar ily  b eco mes u n availa ble.If o ne  o f  th e repli c as f or a  k ey  doe s n ot  resp ondt o a  writerequest,ano t herno de  is sel ected to temp or arily take  o ver  its w r i te workl oad. Writes for the una v ailable  no de ar e ke pt separa tel y, and  wh e n thebackup  node  n oti c e s the p re vio us ly unavail a b lenodebe come  availa ble, it forwards a l l o f the writestothen e wl y a v ai l abl er epl i c a. The Dynamo p aper utili ze s  a 'sloppy qu o rum 'approac h and a llows the wri tes accom plished t hr ough h int ed handoff  to coun t towardt he Wr eq uired  wr ite ac kn owl edgme nts. C a ssa ndraand Vo ld emortwillno t counta hinted handoff agains t W, a nd wi llfail a wr ite whi ch does n ot h ave W conf irm ati ons f rom the o rigi n al lya ssign ed r e plicas. H i nt edh a nd off is stil l u sef ul in  th e se sys tems , as it speeds up recovery whenan u n a vai lab l e no de  returns. Anti -En tr o p y When a  r eplica is d own foran exten ded pe riod o f time, o rt he mac hine  st oring hin ted  h a ndoffsfo ra n unav aila bl e repl ica go e s do w n  as well, replic as mu s t  sync h ron ize f ro m one-a n othe r. In this  case, Cass andraandRiakimpleme nt  a Dyn amo -i nspired pr o cess call ed an ti-entr op y. I n a nti-en trop y ,  repl icas  e xch ange Merk l e  T r ee st o i dent ify p ar ts o f their r e plicated  ke y  ranges  w hic h are ou t  o f sync. A Me rkl e tre e is a hiera r chic a lh ash v erific ation:  if the has hover th e e n t ire keysp ace is no t  th e
 Riak_allows both_of the approaches offered_by Voldemort_and_Cassandra. CouchDB_provides_a hybrid: it_identifies a conflict_and allows users to_query for conflicted_keys_for manual repair, but deterministically picks a version to return to users until conflicts_are_repaired. Read_Repair_If_R replicas return non-conflicting data_to a coordinator, the coordinator_can safely_return the non-conflicting data to the application. The_coordinator_may still notice_that some of the replicas are out of sync._The Dynamo paper suggests, and Cassandra,_Riak, and Voldemort_implement,_a_technique called read repair_for handling such situations. When a_coordinator identifies a conflict on read,_even if a consistent value has been_returned to the user, the coordinator_starts conflict-resolution protocols between conflicted_replicas. This_proactively fixes conflicts with little_additional work. Replicas_have already_sent their version_of the data to the coordinator,_and faster conflict_resolution will result in less divergence_in_the system. Hinted_Handoff_Cassandra,_Riak, and_Voldemort all employ_a_technique called_hinted_handoff to improve write performance for_situations_where a node temporarily becomes unavailable. If_one of the replicas_for_a key does not_respond to a write request,_another node is selected to temporarily_take over_its write_workload. Writes for the unavailable node are kept separately, and when_the backup node notices the previously_unavailable node become available,_it forwards_all_of the writes_to_the newly_available replica. The Dynamo paper utilizes a'sloppy_quorum' approach_and allows the writes accomplished through_hinted handoff to count_toward_the W required write acknowledgments. Cassandra_and Voldemort will not count a_hinted handoff against W, and_will_fail_a write which does not_have W confirmations from the originally_assigned replicas. Hinted_handoff is still useful in these systems,_as_it speeds up recovery when an_unavailable_node returns. Anti-Entropy When a replica_is_down_for an extended period of_time, or the machine storing hinted_handoffs for an unavailable replica goes down as well,_replicas must synchronize_from one-another. In this case,_Cassandra_and_Riak implement a Dynamo-inspired process called anti-entropy. In anti-entropy, replicas_exchange Merkle_Trees to identify_parts of their replicated key ranges which are out of_sync. A Merkle tree is a hierarchical_hash verification: if the hash over the entire keyspace is not_the