Access the full text.
Sign up today, get DeepDyve free for 14 days.
N. Shavit, D. Touitou (1995)
Software transactional memoryDistributed Computing, 10
S. Frenz, R. Goeckelmann, M. Schoettner, P. Schulthess
Project Tetropolis - Application of Grid Computing to Interactive Virtual 3D Worlds
Y. Amir (2007)
The Spread Wide Area Group Communication System
Michael Olson (1993)
The Design and Implementation of the Inversion File System
M. Herlihy, Victor Luchangco, Mark Moir, William Scherer (2003)
Software transactional memory for dynamic-sized data structures
Sean Rhea, Patrick Eaton, Dennis Geels, Hakim Weatherspoon, Ben Zhao, J. Kubiatowicz (2003)
Awarded Best Student Paper! - Pond: The OceanStore Prototype
Kai Li (1988)
IVY: A Shared Virtual Memory System for Parallel Computing
(1992)
Mime: A high performance storage device with strong recovery guarantees
G. Chockler, I. Keidar, R. Vitenberg (2001)
Group communication specifications: a comprehensive studyACM Comput. Surv., 33
M. Satyanarayanan, H. Mashburn, Puneet Kumar, D. Steere, James Kistler (1993)
Lightweight recoverable virtual memory
C. Ellis, O. Babaoglu (2007)
ACM Transactions on Computer Systems
Muthu Dayalan (2004)
MapReduce: simplified data processing on large clustersCommun. ACM, 51
P. Mehra, S. Fineberg (2004)
Fast and flexible persistence: the magic potion for fault-tolerance, scalability and performance in online data stores18th International Parallel and Distributed Processing Symposium, 2004. Proceedings.
L. Lamport (1998)
The part-time parliamentACM Trans. Comput. Syst., 16
C. Amza, A. Cox, S. Dwarkadas, P. Keleher, Honghui Lu, R. Rajamony, Weimin Yu, W. Zwaenepoel (1996)
ThreadMarks: Shared Memory Computing on Networks of WorkstationsComputer, 29
Frank Schmuck, J. Wyllie (1991)
Experience with transactions in QuickSilver
P. Ferreira, M. Shapiro, X. Blondel, Olivier Fambon, J. Garcia, S. Kloosterman, N. Richer, Marcus Roberts, F. Sandakly, G. Coulouris, J. Dollimore, P. Guedes, D. Hagimont, S. Krakowiak (1999)
PerDiS: Design, Implementation, and Use of a PERsistent DIstributed Store
K. Birman, T. Joseph (1987)
Exploiting virtual synchrony in distributed systems
T. Harris, K. Fraser (2003)
Language support for lightweight transactions
B. Liskov, M. Castro, L. Shrira, A. Adya (1999)
Providing Persistent Objects in Distributed Systems
Sean Rhea, Patrick Eaton, Dennis Geels, Hakim Weatherspoon, Ben Zhao, J. Kubiatowicz (2003)
Pond: The OceanStore Prototype
X. Défago, A. Schiper, P. Urbán (2003)
Total order broadcast and multicast algorithms: Taxonomy and surveyACM Comput. Surv., 36
M. Satyanarayanan, James Kistler, Puneet Kumar, Maria Okasaki, E. Siegel, D. Steere (1989)
Coda: a highly available file system for a distributed workstation environmentProceedings of the Second Workshop on Workstation Operating Systems
J. Carter, J. Bennett, W. Zwaenepoel (1991)
Implementation and performance of Munin
S. Ghemawat, H. Gobioff, Shun-Tak Leung (2003)
The Google file system
Navin Budhiraja, K. Marzullo, F. Schneider, S. Toueg (1993)
The primary-backup approach
R. Sears, E. Brewer (2006)
Stasis: flexible transactional storage
Partha Dasgupta, Richard LeBlanc, M. Ahamad, U. Ramachandran (1991)
The Clouds distributed operating systemComputer, 24
D. Skeen, M. Stonebraker (1983)
A Formal Model of Crash Recovery in a Distributed SystemIEEE Transactions on Software Engineering, SE-9
Marcos Aguilera, Wojciech Golab, Mehul Shah (2008)
A practical scalable distributed B-treeProc. VLDB Endow., 1
S. Gribble, E. Brewer, J. Hellerstein, D. Culler (2000)
Scalable, Distributed Data Structures for Internet Service Construction
(1987)
Camelot: A flexible and efficient distributed transaction processing facility for Mach and the Internet—An status report
T. Chandra, S. Toueg (1996)
Unreliable failure detectors for reliable distributed systemsJ. ACM, 43
A. Demers, K. Petersen, M. Spreitzer, D. Terry, M. Theimer, B. Welch (1994)
The Bayou Architecture: Support for Data Sharing Among Mobile Users1994 First Workshop on Mobile Computing Systems and Applications
Fay Chang, J. Dean, S. Ghemawat, Wilson Hsieh, D. Wallach, M. Burrows, Tushar Chandra, Andrew Fikes, R. Gruber (2006)
Bigtable: A Distributed Storage System for Structured DataACM Trans. Comput. Syst., 26
S. Ghemawat, H. Gobioff, Shun-Tak Leung (2003)
The Google file systemOperating Systems Review
B. Liskov (1988)
Distributed programming in ArgusCommun. ACM, 31
M. Aguilera, A. Merchant, Mehul Shah, Alistair Veitch, C. Karamanolis (2007)
Sinfonia: a new paradigm for building scalable distributed systems
J. Kubiatowicz, D. Bindel, Yan Chen, S. Czerwinski, Patrick Eaton, Dennis Geels, R. Gummadi, Sean Rhea, Hakim Weatherspoon, Westley Weimer, C. Wells, Ben Zhao (2000)
OceanStore: an architecture for global-scale persistent storage
Maurice Herlihy, J. Moss (1993)
Transactional Memory: Architectural Support For Lock-free Data StructuresProceedings of the 20th Annual International Symposium on Computer Architecture
(2008)
Received December
J. MacCormick, Nick Murphy, Marc Najork, C. Thekkath, Lidong Zhou (2004)
Boxwood: Abstractions as the Foundation for Storage Infrastructure
B. Fleisch (2006)
The Chubby lock service for loosely-coupled distributed systems
J. Gray, L. Lamport (2004)
Consensus on transaction commitACM Trans. Database Syst., 31
Hui-I Hsiao, D. DeWitt (1990)
Chained declustering: a new availability strategy for multiprocessor database machines[1990] Proceedings. Sixth International Conference on Data Engineering
A. Schiper, S. Toueg (2006)
From set membership to group membership: a separation of concernsIEEE Transactions on Dependable and Secure Computing, 3
We propose a new paradigm for building scalable distributed systems. Our approach does not require dealing with message-passing protocols, a major complication in existing distributed systems. Instead, developers just design and manipulate data structures within our service called Sinfonia. Sinfonia keeps data for applications on a set of memory nodes, each exporting a linear address space. At the core of Sinfonia is a new minitransaction primitive that enables efficient and consistent access to data, while hiding the complexities that arise from concurrency and failures. Using Sinfonia, we implemented two very different and complex applications in a few months: a cluster file system and a group communication service. Our implementations perform well and scale to hundreds of machines.
ACM Transactions on Computer Systems (TOCS) – Association for Computing Machinery
Published: Nov 1, 2009
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.