1 / 14

VLDB Auckland, New Zealand 2008

P2P Logging and Timestamping for Reconciliation M. Tlili, W. Dedzoe, E. Pacitti, R. Akbarinia, P. Valduriez, P. Molli, G. Canals, S. Laurière. VLDB Auckland, New Zealand 2008. Outline. Motivations XWiki P2P Architecture P2P-LTR service Demonstration Conclusion. XWiki Application. XWIKI.

harper
Download Presentation

VLDB Auckland, New Zealand 2008

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. P2P Logging and Timestamping for ReconciliationM. Tlili, W. Dedzoe, E. Pacitti, R. Akbarinia, P. Valduriez, P. Molli, G. Canals, S. Laurière VLDB Auckland, New Zealand 2008

  2. Outline • Motivations • XWiki P2P Architecture • P2P-LTR service • Demonstration • Conclusion

  3. XWiki Application XWIKI XWIKI Hibernate Client Server DB • Enterprise Wiki system in OSS (LGPL) from Xpertnet, Paris • Collaborative text editing among multiple users • Client-server • Wiki-page updating (last save wins) XWiki Client server architecture

  4. Motivations • Problem: client-server architecture • Single point of failure • Hardly scalable • Low mobility • Etc. • Solution: pure P2P architecture • No central server • Scalable to millions of users • Multi-Master replication • Challenge: ensuring data consistency • Ensure convergence of copies • Support asynchronous updates, possibly disconnected

  5. XWiki P2P Application • Optimistic replication • Asynchronous reconciliation • Yields eventual consistency • Use of a DHT • Efficient data location through put and get primitives • Scalability • Fault Tolerance through the DHT stabilization layer • Handles Dynamicity (mobility) • Simplify the construction of large-scale distributed applications • Minimal change to XWiki code base • All data remain in XWiki peers • Only action logs (called patchs) are published and applied by XWiki

  6. XWiki P2P Replication • We propose a new mechanism of optimistic replication • An algorithm for data reconciliation (So61,2) • Based on operational transformation approach (OT) • P2P-LTR, an extension of KTS3,4 service • Distributed continues timestamp generation • Publishing operations (patchs) in DHT network 1 Ecoo Team-Project, LORIA, http://dev.libresource.org 2 P. Molli, G. Oster, H. Skaf-Molli, A. Imine. Using the transformational approach to build a safe and generic data synchronizer. ACM SIGGROUP Conference on Supporting Group Work, (GROUP),2003. 3 R. Akbarinia, E. Pacitti, P. Valduriez. Data Currency in replicated DHTs, SIGMOD2007. 4 M. Tlili, W. K. Dedzoe, E. Pacitti, R. Akbarinia P. Valduriez, et al. P2P Logging and Timestamping for Reconciliation, Accepted demo paper in Int. Conf. on Very Large Databases (VLDB),2008.

  7. So6 • A configuration manager • Based on OT model • Uses a central timestamper • To totally order the operations • Disadvantages • Limited scalability • Bottleneck • Etc. • Solution : P2P-LTR • Generate timestamps • In a fully distributed fashion

  8. Xwiki P2P Architecture XWiki Application XWiki Application XWiki Doc XWiki Doc XWiki Doc XWiki Application getPage applyPatch P2P Network Patch Service getPatch push getLastTS ReconcileEngine (So6) retrieve LTR Publish DHT (OpenChord)

  9. XWiki P2P services • Patch Manager • Interfaces the XWiki application with replication Service • Generates operations (Patch) • Replication Service • Performs reconciliation using OT • By retrieving consistent patches from the DHT • Publishes consistent patches using P2P-LTR • P2P-LTR • Generates timestamps in integer serial order • Stores and replicates timestamped patches in the DHT • DHT • Implements basic DHT primitives, based on Chord • Network must be reliable with known bounds to assure consistency of routing tables1,2 1 P.Linga et. al. Guaranteeing Correctness and Availability in P2P Range Indices. SIGMOD 2005 2 M. Bawa, A. Gionis, H. Garcia-Molina, R. Motwani: The Price of Validity in Dynamic Networks, SIGMOD 2004

  10. P2P-LTR for P2P editing Each XWiki document is identified by a key Xwiki peer: application Master-key: generates timestamps and publishes patches in log peers DHT Master-key succ: replaces Master-key after crash Log peer: stores timestamped patches for a key gen_Ts getLastTS Publish DHT = OpenChord

  11. Reconciliation with P2P-LTR Xwiki-Client: Post (key, patch, ts) (3): get missing patches and apply locally Reconc. Engine n Log-Peers and its successors Log (1): put(hts(key), (patch+ts)) (4): put(hts(key), (patch,Last-ts)) (5): Put(h1(key,Last-ts),patch) (2): ack / Last-ts (5): Put(h2(key,Last-ts),patch) (6)ack Master of Key (5): Put(succ,last-ts) (5): Put(h3(key,Last-ts),patch) Master-Succ

  12. Prototype DHT management XWiki document management Patch management Patch & Timestamp informations Network Monitoring LTR & DHT configurations

  13. Conclusion • XWiki P2P Architecture • Multi-Master replication • Eventual consistency • P2P-LTR • Continuous timestamp generation • Patch replication in DHT network • Demonstration • Concurrent document modification and patch publishing

  14. Thank you • Questions?

More Related