Exploiting virtual synchrony in distributed systems
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Distributed programming in Argus
Communications of the ACM
Coda: A Highly Available File System for a Distributed Workstation Environment
IEEE Transactions on Computers
Implementation and performance of Munin
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Experience with transactions in QuickSilver
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Transactional memory: architectural support for lock-free data structures
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
Lightweight recoverable virtual memory
ACM Transactions on Computer Systems (TOCS) - Special issue on operating systems principles
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Unreliable failure detectors for reliable distributed systems
Journal of the ACM (JACM)
ACM Transactions on Computer Systems (TOCS)
Distributed systems (2nd Ed.)
OceanStore: an architecture for global-scale persistent storage
ACM SIGPLAN Notices
Group communication specifications: a comprehensive study
ACM Computing Surveys (CSUR)
Chained Declustering: A New Availability Strategy for Multiprocessor Database Machines
Proceedings of the Sixth International Conference on Data Engineering
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Total order broadcast and multicast algorithms: Taxonomy and survey
ACM Computing Surveys (CSUR)
Awarded Best Student Paper! - Pond: The OceanStore Prototype
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
From Set Membership to Group Membership: A Separation of Concerns
IEEE Transactions on Dependable and Secure Computing
Consensus on transaction commit
ACM Transactions on Database Systems (TODS)
Scalable, distributed data structures for internet service construction
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Boxwood: abstractions as the foundation for storage infrastructure
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
MapReduce: simplified data processing on large clusters
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Stasis: flexible transactional storage
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
Bigtable: a distributed storage system for structured data
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
The Chubby lock service for loosely-coupled distributed systems
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
A Formal Model of Crash Recovery in a Distributed System
IEEE Transactions on Software Engineering
The Bayou Architecture: Support for Data Sharing Among Mobile Users
WMCSA '94 Proceedings of the 1994 First Workshop on Mobile Computing Systems and Applications
A practical scalable distributed B-tree
Proceedings of the VLDB Endowment
A formal characterization of SI-based ROWA replication protocols
Data & Knowledge Engineering
Scalable transactions in the cloud: partitioning revisited
OTM'10 Proceedings of the 2010 international conference on On the move to meaningful internet systems: Part II
Using Paxos to build a scalable, consistent, and highly available datastore
Proceedings of the VLDB Endowment
Online migration for geo-distributed storage systems
USENIXATC'11 Proceedings of the 2011 USENIX conference on USENIX annual technical conference
Fast crash recovery in RAMCloud
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Transactional storage for geo-replicated systems
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Don't settle for eventual: scalable causal consistency for wide-area storage with COPS
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Proceedings of the 14th Communications and Networking Symposium
Minuet: a scalable distributed multiversion B-tree
Proceedings of the VLDB Endowment
A look to the old-world_sky: EU-funded dependability cloud computing research
ACM SIGOPS Operating Systems Review
Granola: low-overhead distributed transaction coordination
USENIX ATC'12 Proceedings of the 2012 USENIX conference on Annual Technical Conference
Surviving congestion in geo-distributed storage systems
USENIX ATC'12 Proceedings of the 2012 USENIX conference on Annual Technical Conference
Stronger semantics for low-latency geo-replicated storage
nsdi'13 Proceedings of the 10th USENIX conference on Networked Systems Design and Implementation
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Transaction chains: achieving serializability with low latency in geo-distributed storage systems
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Consistency-based service level agreements for cloud storage
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Hi-index | 0.00 |
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.