Personal tools
You are here: Home Events Abstract Archives 2003 Harmony: A synchronization framework for tree-structured data

Harmony: A synchronization framework for tree-structured data

Benjamin Pierce Department of Computer and Information Science University of Pennsylvania 2pm Friday 22 August 2003 Room 2511, JCMB, King's Buildings

Increased use of optimistic data replication has led to increased interest in SYNCHRONIZATION technologies. These technologies are not only a fact of life in present-day networks; they are fascinating, and they raise a host of challenging scientific questions.

The goal of the Harmony project is to develop a generic framework for synchronizing tree-structured data---i.e., a tool for propagating updates between different copies, possibly stored in different formats, of tree-shaped data structures. For example, Harmony can be used to synchronize the bookmark files of several different web browsers, allowing bookmarks and bookmark folders to be added, deleted, edited, and reorganized by users running different browsers on disconnected machines. Other Harmony instances under development include synchronizers for calendars (Palm DateBook, ical, and iCalendar formats), address books, Keynote presentations, structured documents, file systems, and generic XML and HTML.

This talk offers a guided tour of the Harmony system, touching on
- basic design issues (in particular, the tradeoffs between Harmony's ``state-based'' architecture and ``operation-based'' alternatives);
- the core synchronization engine and its properties, and
- the domain-specific programming language used to transform ``concrete data'' from the real world into abstracted forms suitable for synchronization

Harmony is joint work with Michael Greenwald, Jonathan Moore, and Alan Schmitt.

Document Actions