ExoSnap: a Modular Approach to Semantic Synchronization and Snapshots
Download:
pdf,
``ExoSnap: a Modular Approach to Semantic Synchronization and Snapshots"
by
Liuba Shrira (Brandeis),
and Dong Siying(Microsoft).
Position paper for the 2nd ACM Eurosys Workshop on Dependable Distributed Data Management,
(Eurosys 2008 workshop WDDDM ),
Glasgow, UK, March 2008.)
Abstract
Type-specific synchronization and consistent snapshot queries
are well-known approaches for reducing contention for long-running transactions.
Current approaches suffer from a limitation that precludes the use
of generic ``commodity'' servers because they
require to run the type-specific synchronization code at the servers.
This is a problem for systems that must rely on generic servers.
We describe an approach that overcomes the limitation.
Our approach modularizes the long-running transaction system in a new different way.
We run the type-specific transaction synchronization code outside the server, on the client side.
The problem is, that for performance reasons, transactionally consistent snapshots must be created in the server
but snapshot consistency depends on the type-specific transaction synchronization.
Our approach decouplea the type-specific part of the snapshot system from the generic part
and integrates the type-specific part with the type-specific client-side synchronization code.
This way, the generic part of the snapshot system runs efficiently on the server side capturing
snapshots that include inconsistencies and the client side snapshot system running the type-specific code
``corrects'' the snapshots when queries access them.
The result is a modular system that allows to reduce transaction contention in a type-specific way without modying the servers,
allowing to use generic commodity servers.
BibTeX entry:
@miscellanious{exosnap-wdddm08,
author = {Liuba Shrira and Siying Dong},
title = {ExoSnap: a Modular Approach to Semantic Synchronization and Snapshots},
booktitle = {2nd ACM Workshop on Dependable Distributed Data Management (WDDDM 08)},
address = {Glasgow, UK},
month = March,
year = {2008}
}