The Community for Technology Leaders
Parallel and Distributed Processing Symposium, International (2004)
Santa Fe, New Mexico
Apr. 26, 2004 to Apr. 30, 2004
ISBN: 0-7695-2132-0
pp: 30b
Chunqiang Tang , University of Rochester
DeQing Chen , University of Rochester
Sandhya Dwarkadas , University of Rochester
Michael L. Scott , University of Rochester
ABSTRACT
<p>Most distributed applications require, at least conceptually, some sort of shared state: information that is nonstatic but mostly read, and needed at more than one site. At the same time, RPC-based systems such as Sun RPC, Java RMI, CORBA, and .NET have become the de facto standards by which distributed applications communicate. As a result, shared state tends to be implemented either through the redundant transmission of deep-copy RPC parameters or through ad-hoc, application-specific caching and coherence protocols. The former option can waste large amounts of bandwidth; the latter significantly complicates program design and maintenance.</p> <p>To overcome these problems, we propose a distributed middleware system that works seamlessly with RPC-based systems, providing them with a global, persistent store that can be accessed using ordinary reads and writes. Relaxed coherence models and aggressive protocol optimizations reduce the bandwidth required to maintain shared state. Integrated support for transactions allows a chain of RPC calls to update shared state atomically.</p> <p>We focus in this paper on the implementation challenges involved in combining RPC with shared state and transactions. In particular, we describe a transaction metadata table that allows processes inside a transaction to share data invisible to other processes and to exchange data modifications efficiently. Using microbenchmarks and a large-scale datamining application, we demonstrate how the integration of RPC, transactions, and shared state facilitates the rapid development of robust, maintainable code.</p>
INDEX TERMS
CITATION

S. Dwarkadas, M. L. Scott, C. Tang and D. Chen, "Integrating Remote Invocation and Distributed Shared State," Parallel and Distributed Processing Symposium, International(IPDPS), Santa Fe, New Mexico, 2004, pp. 30b.
doi:10.1109/IPDPS.2004.1302942
85 ms
(Ver 3.3 (11022016))