A Distributed Searchable KeyValue Store for Cloud Computing
A Distributed Searchable Key-Value Store for Cloud Computing 马振宇 1
� � � 2012: 25 -36. Robert Escriva Cornell University Bernard Wong, Emin Gun Sirer ACM. 2
论文背景 � � 一、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. 3
� � This paper presents Hyper. Dex, a novel distributed key-value store that provides a unique search primitive that enables queries on secondary attributes. An evaluation of the full system shows that Hyper. Dex is orders of magnitude faster than Cassandra and Mongo. DB for finding partially specified objects. 4
一、可行性 � 1、 Hyperspace Hashing 6
一、可行性 � � 2、 Node Layout Hyper. Dex tessellates the hyperspace into a grid of N regions in space. Zones, which we previously defined to be mutually exclusive regions belonging to one or more nodes, are created by assigning nodes to each of the tessellated regions to be responsible for all objects which hash to a coordinate within the region. 8
一、可行性 � � � 3、 Search Queries first name=‘John’ last name=‘Smith’ 10
二、高效性 � If the hyperspace is split into two zones in each dimension, the resulting tessellation will have distinct zones. 512 zones
二、高效性 subspace 13
二、高效性 � Object Distribution Over Subspaces 15
三、可靠性 � � 1、Value Dependent Chaining Because hyperspace hashing determines the location of an object by its contents, and subspace partitioning creates many object replicas, objects will be spread across multiple nodes and these nodes will change as the objects are updated. 17
三、可靠性 � � 2、 Fault Tolerance To guard against node failures, Hyper. Dex provides additional replication within each zone. 19
三、可靠性 h 1 ; h 01 ; h 2 ; h 02 ; h 3 ; h 03 If h 2 were to fail h 1 ; h 02 ; h 002 ; h 3 ; h 03 20
- Slides: 24