DOC PREVIEW
Berkeley COMPSCI 294 - Flexible Update Propagation for Weakly Consistent Replication

This preview shows page 1-2-3-4-5-6 out of 17 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Flexible Update Propagation for Weakly Consistent ReplicationOutlineAnti-EntropyGoalsData StructuresOrderingsOrderings, continuedThe Algorithm (Quick Version)The Algorithm, continuedSlide 10Creation and RetirementCreation and Retirement, continuedDiscussionDiscussion, continuedPerformancePerformance, continuedP2P?Flexible Update Propagation for Weakly Consistent ReplicationKarin Petersen, Mike K. Spreitzer, Douglas B. Terry,Marvin M. Theimer and Alan J. DemersPresented by: Ryan HuebschCS294-4 P2P Systems – 10/13/03OutlineAnti-EntropyGoalsData StructuresOrderingThe AlgorithmCreation and RetirementDiscussionPerformanceP2P discussion/questionsAnti-EntropyEntropy - a process of degradation or running down or a trend to disorder.Bring 2 replicas up-to-dateThree Major Design DecisionsPairwise communication between replicasExchange of update operationsOrdered propagation of operationsGoalsSupport for arbitrary communication topologiesOperation over low-bandwidth networksIncremental progressEventual consistencyEfficient storage managementLight-weight management of dynamic replica setsArbitrary policy choicesData StructuresReplica:DatabaseWrite LogServer:ClockV, OCSN, OSN…DatabaseLogTruncatedLogTruncated(< OSN)AHighest A.Clockfor server Athat is in logB CCommitted(< CSN)AHighest A.Clock forserver A that hasbeen truncatedB COVOrderingsPrefix PropertyIf R has write Wi that was accepted by server X, it has all writes X accepted before WiStable (Committed Order)Decided by primary replicaAssigns the final CSN, which is < infinityNew CSN is propagated to nodesAccept OrderPartial order of all writes accepted by a particular serverAccept stamp – logical or real-time clockOrderings, continuedCausal-Accept OrderAccept-stamp is a logical clockClock is advanced when a write is received (through anti-entropy) that has a higher accept-stamp.Provides better chances of a node seeing the same database from different serversIf they have the same writes, even if uncommitted, will be same orderThe Algorithm (Quick Version)R is being updated by SS retrieves R.V and R.CSNSTEP 1: Decide if a full transfer is neededIF (S.OSN > R.CSN) THEN[If S does have enough log]Rollback S’s database to the state corresponding to S.O[Remove all writes that S has a log for]OutputDatabase(S.DB)OutputVector(S.O)OutputOSN(S.OSN)[R now has the same database and truncated thewrite log to the same point as S]ENDThe Algorithm, continuedStep 2: Bring R up-to-date with remaining committed writesIF R.CSN < S.CSN THEN[If R is missing committed writes] w = first write after CSNWHILE (w) DO IF w.accept-stamp <= R.V(w.server-id) THEN [Check R’s vector to see if it has the write]OutputCommitNotification(w) ELSEOutputWrite(w) END w = next commited write in S.logENDENDThe Algorithm, continuedStep 3: Bring R up-to-date with remaining uncommitted writesw = first tentative write in S.logWHILE (w) DOIF R.V(w.server-id) < w.accept-stamp THEN[Check R’s vector to see if has the write] OutputWrite(w)ENDw = next write in S.logENDStep 4: Finish UpOutputCSN(S.CSN)OutputVector(S.V)Creation and RetirementTreated just like a write (elegant)Si is trying to join via server SxSx creates a new write<infinity, Tk,i, Sk>Si is server id, <Tk,i, Sk>Si sets clock to Tk,i + 1Notice the new server id is globally unique, recursive, and could be longThe write is propagated to other nodes through anti-entropyCreation and Retirement, continuedServer S is updating server RServer S.V has an entry for server Si (<Tk,i, Sk>), while R does not.2 Cases:R has not seen the creation of SiThen R.V(Sk) < Tk,iS has not seen the retirement of SiThen R.V(Sk) >= Tk,iWhy? Creation/Deletion is recorded as a normal write, thus the prefix property will hold.Recursive naming helps too, if Sk retired, can still trace back and decide the proper state. This is explained as the virtual CompleteV in the paper.DiscussionDiscussion, continuedMost properties are not special in themselves, the combination is novelDifferent decisions are mostly independentIdeas can be applied to other systems (other than Bayou)SecurityUse certificates to insure user can make updateNot much detail givenUsed later on as an excuse for high overheadsLots of policy decisions to be madeWhen to reconcile, with whom, when to truncate logPerformance1316 bytes of update overhead520 bytes for certificateNetwork transfer most significant costPerformance, continuedHard to know if the numbers are good, nothing to compare them toWould have been nice to see a larger deployment and measure propagation delay, consistency, etc.P2P?Is Anti-Entropy applicable to P2P systems?Review the goals… arbitrary topology, low b/w, aggressive storage management…There is a centralized component (the serializer)… is this okay?Can it handle failures/churn?Security, what happens if there is a faulty


View Full Document

Berkeley COMPSCI 294 - Flexible Update Propagation for Weakly Consistent Replication

Documents in this Course
"Woo" MAC

"Woo" MAC

11 pages

Pangaea

Pangaea

14 pages

Load more
Download Flexible Update Propagation for Weakly Consistent Replication
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Flexible Update Propagation for Weakly Consistent Replication and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Flexible Update Propagation for Weakly Consistent Replication 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?