Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Modern database systems
Managing update conflicts in Bayou, a weakly connected replicated storage system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
STOC '97 Proceedings of the twenty-ninth annual ACM symposium on Theory of computing
The Grid File: An Adaptable, Symmetric Multikey File Structure
ACM Transactions on Database Systems (TODS)
Multidimensional binary search trees used for associative searching
Communications of the ACM
Chord: A scalable peer-to-peer lookup service for internet applications
Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications
A scalable content-addressable network
Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications
A class of data structures for associative searching
PODS '84 Proceedings of the 3rd ACM SIGACT-SIGMOD symposium on Principles of database systems
R-trees: a dynamic index structure for spatial searching
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
The Universal B-Tree for Multidimensional Indexing: general Concepts
WWCA '97 Proceedings of the International Conference on Worldwide Computing and Its Applications
Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems
Middleware '01 Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg
A design framework and a scalable storage platform to simplify internet service construction
A design framework and a scalable storage platform to simplify internet service construction
MAAN: A Multi-Attribute Addressable Network for Grid Information Services
GRID '03 Proceedings of the 4th International Workshop on Grid Computing
Mercury: supporting scalable multi-attribute range queries
Proceedings of the 2004 conference on Applications, technologies, architectures, and protocols for computer communications
One torus to rule them all: multi-dimensional queries in P2P systems
Proceedings of the 7th International Workshop on the Web and Databases: colocated with ACM SIGMOD/PODS 2004
Querying peer-to-peer networks using P-trees
Proceedings of the 7th International Workshop on the Web and Databases: colocated with ACM SIGMOD/PODS 2004
SWAM: a family of access methods for similarity-search in peer-to-peer data networks
Proceedings of the thirteenth ACM international conference on Information and knowledge management
Enabling Flexible Queries with Guarantees in P2P Systems
IEEE Internet Computing
Supporting Multi-Dimensional Range Queries in Peer-to-Peer Systems
P2P '05 Proceedings of the Fifth IEEE International Conference on Peer-to-Peer Computing
Chain replication for supporting high throughput and availability
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Bigtable: a distributed storage system for structured data
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
The Chubby lock service for loosely-coupled distributed systems
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Queue - Object-Relational Mapping
A practical scalable distributed B-tree
Proceedings of the VLDB Endowment
PNUTS: Yahoo!'s hosted data serving platform
Proceedings of the VLDB Endowment
FAWN: a fast array of wimpy nodes
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Benchmarking cloud serving systems with YCSB
Proceedings of the 1st ACM symposium on Cloud computing
ZooKeeper: wait-free coordination for internet-scale systems
USENIXATC'10 Proceedings of the 2010 USENIX conference on USENIX annual technical conference
Transactional consistency and automatic management in an application data cache
OSDI'10 Proceedings of the 9th USENIX conference on Operating systems design and implementation
Using Paxos to build a scalable, consistent, and highly available datastore
Proceedings of the VLDB Endowment
An efficient multi-tier tablet server storage architecture
Proceedings of the 2nd ACM Symposium on Cloud Computing
SILT: a memory-efficient, high-performance key-value store
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Fast crash recovery in RAMCloud
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
Arpeggio: metadata searching and content sharing with chord
IPTPS'05 Proceedings of the 4th international conference on Peer-to-Peer Systems
LazyBase: trading freshness for performance in a scalable database
Proceedings of the 7th ACM european conference on Computer Systems
Cache craftiness for fast multicore key-value storage
Proceedings of the 7th ACM european conference on Computer Systems
Actors and publish/subscribe: an efficient approach to scalable distribution in data centers
Proceedings of the 2012 ACM conference on CoNEXT student workshop
Large-scale computation not at the cost of expressiveness
HotOS'13 Proceedings of the 14th USENIX conference on Hot Topics in Operating Systems
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
Log-structured memory for DRAM-based storage
FAST'14 Proceedings of the 12th USENIX conference on File and Storage Technologies
MICA: a holistic approach to fast in-memory key-value storage
NSDI'14 Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation
Hi-index | 0.00 |
Distributed key-value stores are now a standard component of high-performance web services and cloud computing applications. While key-value stores offer significant performance and scalability advantages compared to traditional databases, they achieve these properties through a restricted API that limits object retrieval---an object can only be retrieved by the (primary and only) key under which it was inserted. This paper presents HyperDex, a novel distributed key-value store that provides a unique search primitive that enables queries on secondary attributes. The key insight behind HyperDex is the concept of hyperspace hashing in which objects with multiple attributes are mapped into a multidimensional hyperspace. This mapping leads to efficient implementations not only for retrieval by primary key, but also for partially-specified secondary attribute searches and range queries. A novel chaining protocol enables the system to achieve strong consistency, maintain availability and guarantee fault tolerance. An evaluation of the full system shows that HyperDex is 12-13x faster than Cassandra and MongoDB for finding partially specified objects. Additionally, HyperDex achieves 2-4x higher throughput for get/put operations.