Schema-Directed Data Synchronization

Increased reliance on optimistic data replication has led to burgeoning interest in tools and frameworks for synchronizing disconnected updates to replicated data. We have implemented a generic, synchronization framework, called Harmony, that can be instantiated to yield state-based synchronizers for a wide variety of tree-structured data formats. A novel feature of this framework is that the synchronization process—in particular, the recognition of situations where changes are in conflict—is driven by the schema of the structures being synchronized. We formalize Harmony’s synchronization algorithm, prove that it obeys a simple and intuitive specification, and illustrate how it can be used to synchronize a variety of specific forms of application data—sets, records, tuples, and relations.

[1]  Mahadev Satyanarayanan,et al.  Coda: A Highly Available File System for a Distributed Workstation Environment , 1990, IEEE Trans. Computers.

[2]  Gregory D. Abowd,et al.  Giving Undo Attention , 1992, Interact. Comput..

[3]  Atul Prakash,et al.  A framework for undoing actions in collaborative systems , 1994, TCHI.

[4]  Prasun Dewan,et al.  A flexible object merging framework , 1994, CSCW '94.

[5]  John S. Heidemann,et al.  Resolving File Conflicts in the Ficus File System , 1994, USENIX Summer.

[6]  Jennifer Widom,et al.  Change detection in hierarchically structured information , 1996, SIGMOD '96.

[7]  Serge Abiteboul,et al.  Querying Semi-Structured Data , 1997, Encyclopedia of Database Systems.

[8]  Marvin Theimer,et al.  Designing and implementing asynchronous collaborative applications with Bayou , 1997, UIST '97.

[9]  Peter L. Reiher,et al.  Rumor: Mobile Data Access Through Optimistic Peer-to-Peer Replication , 1998, ER Workshops.

[10]  Alberto O. Mendelzon,et al.  Database techniques for the World-Wide Web: a survey , 1998, SGMD.

[11]  Benjamin C. Pierce,et al.  What is a file synchronizer? , 1998, MobiCom '98.

[12]  Tim Howes,et al.  A MIME Content-Type for Directory Information , 1998, RFC.

[13]  Ashish Goel,et al.  Perspectives on optimistically replicated, peer‐to‐peer filing , 1998, Softw. Pract. Exp..

[14]  Chengzheng Sun,et al.  Operational transformation in real-time group editors: issues, algorithms, and achievements , 1998, CSCW '98.

[15]  Gordon V. Cormack,et al.  Operation transforms for a distributed shared spreadsheet , 1998, CSCW '98.

[16]  Tova Milo,et al.  Using Schema Matching to Simplify Heterogeneous Data Translation , 1998, VLDB.

[17]  Catriel Beeri,et al.  Schemas for Integration and Translation of Structured and Semi-structured Data , 1999, ICDT.

[18]  Alon Y. Halevy,et al.  Theory of answering queries using views , 2000, SGMD.

[19]  Erhard Rahm,et al.  A survey of approaches to automatic schema matching , 2001, The VLDB Journal.

[20]  Antony I. T. Rowstron,et al.  The IceCube approach to the reconciliation of divergent replicas , 2001, PODC '01.

[21]  Erhard Rahm,et al.  Generic Schema Matching with Cupid , 2001, VLDB.

[22]  Norman Ramsey,et al.  An algebraic approach to file synchronization , 2001, ESEC/FSE-9.

[23]  Pedro M. Domingos,et al.  Reconciling schemas of disparate data sources: a machine-learning approach , 2001, SIGMOD '01.

[24]  Alon Y. Halevy,et al.  Updating XML , 2001, SIGMOD '01.

[25]  Marc Shapiro,et al.  Efficient semantics-aware reconciliation for optimistic write sharing , 2002 .

[26]  Marc Shapiro,et al.  Replication: Optimistic Approaches , 2002 .

[27]  Bruno Richard,et al.  Clique: A transparent, Peer-to-Peer collaborative file sharing system , 2002 .

[28]  Abdelsalam Helal,et al.  Format-Independent Change Detection and Propagation in Support of Mobile Computing , 2002, SBBD.

[29]  Hala Skaf-Molli,et al.  Using the transformational approach to build a safe and generic data synchronizer[24] (abstract only) , 2003, SIGG.

[30]  Hala Skaf-Molli,et al.  Using the transformational approach to build a safe and generic data synchronizer , 2003, GROUP.

[31]  Michaël Rusinowitch,et al.  Proving Correctness of Transformation Functions in Real-Time Groupware , 2003, ECSCW.

[32]  Jens Lechtenbörger,et al.  The impact of the constant complement approach towards view updating , 2003, PODS.

[33]  Hala Skaf-Molli,et al.  Safe Generic Data Synchronizer , 2003 .

[34]  Tancred Lindholm XML three-way merge as a reconciliation engine for mobile data , 2003, MobiDe '03.

[35]  Benjamin C. Pierce,et al.  What's in Unison? A Formal Specification and Reference Implementation of a File Synchronizer , 2004 .

[36]  Peter L. Reiher,et al.  The Bengal Database Replication System , 2001, Distributed and Parallel Databases.

[37]  Nate Foster,et al.  Combinators for bi-directional tree transformations: a linguistic approach to the view update problem , 2005, POPL '05.