Exploiting schemas in data synchronization

  • Authors:
  • J. Nathan Foster;Michael B. Greenwald;Christian Kirkegaard;Benjamin C. Pierce;Alan Schmitt

  • Affiliations:
  • University of Pennsylvania, Philadelphia, PA 19104, USA;Bell Labs, Lucent Technologies, Murray Hill, NJ 07974, USA;BRICS, University of Aarhus, DK-8000 Aarhus C, Denmark;University of Pennsylvania, Philadelphia, PA 19104, USA;INRIA Rhône-Alpes, 38330 Montbonnot, France

  • Venue:
  • Journal of Computer and System Sciences
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Increased reliance on optimistic data replication has led to burgeoning interest in tools and frameworks for synchronizing disconnected updates to replicated data. But good data synchronizers are challenging both to specify and to build. We have implemented a generic synchronization framework, called Harmony, that can be used to build 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 conflicts-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, using simple address books as a case study, how it can be used to synchronize trees representing a variety of specific forms of application data, including sets, records, tuples, and relations.