Pyro: a Spatial-Temporal Big-Data Storage System

Pyro: a Spatial-Temporal Big-Data Storage System

Pyro: A Spatial-Temporal Big-Data Storage System Shen Li and Shaohan Hu, University of Illinois at Urbana-Champaign; Raghu Ganti and Mudhakar Srivatsa, IBM Research; Tarek Abdelzaher, University of Illinois at Urbana-Champaign https://www.usenix.org/conference/atc15/technical-session/presentation/li_shen This paper is included in the Proceedings of the 2015 USENIX Annual Technical Conference (USENIC ATC ’15). July 8–10, 2015 • Santa Clara, CA, USA ISBN 978-1-931971-225 Open access to the Proceedings of the 2015 USENIX Annual Technical Conference (USENIX ATC ’15) is sponsored by USENIX. Pyro: A Spatial-Temporal Big-Data Storage System * * * Shen Li Shaohan Hu Raghu Ganti† Mudhakar Srivatsa† Tarek Abdelzaher * University of Illinois at Urbana-Champaign †IBM Research Abstract ments for spatial-temporal data. For example, geospa- With the rapid growth of mobile devices and applica- tial databases [2] are optimized for spatial data, but usu- tions, geo-tagged data has become a major workload for ally fall short on scalability on handling big-data appli- big data storage systems. In order to achieve scalability, cations, whereas distributed data stores [3–6] scale well existing solutions build an additional index layer above but quite often yield inefficiencies when dealing with ge- general purpose distributed data stores. Fulfilling the se- ometry queries. mantic level need, this approach, however, leaves a lot Distributed data stores, such as HBase [3], Cassan- to be desired for execution efficiency, especially when dra [4], and DynamoDB [5], have been widely used for users query for moving objects within a high resolution big-data storage applications. Their key distribution al- geometric area, which we call geometry queries. Such gorithms can be categorized into two classes: random geometry queries translate to a much larger set of range partitioning and ordered partitioning. The former ran- scans, forcing the backend to handle orders of mag- domly distributes keys into servers, while the latter di- nitude more requests. Moreover, spatial-temporal ap- vides the key space into subregions such that all keys in plications naturally create dynamic workload hotspots1, the same subregion are hosted by the same server. Com- which pushes beyond the design scope of existing solu- pared to random partitioning, ordered partitioning con- tions. This paper presents Pyro, a spatial-temporal big- siderably benefits range scans, as querying all servers in data storage system tailored for high resolution geometry the cluster can then be avoided. Therefore, existing so- queries and dynamic hotspots. Pyro understands geome- lutions for spatial-temporal big-data applications, such tries internally, which allows range scans of a geometry as MD-HBase [7], and ST-HBase [8], build index layers query to be aggregately optimized. Moreover, Pyro em- above the ordered-partitioned HBase to translate a geom- ploys a novel replica placement policy in the DFS layer etry query into a set of range scans. Then, they submit that allows Pyro to split a region without losing data those range scans to HBase, and aggregate the returned locality benefits. Our evaluations use NYC taxi trace data from HBase to answer the query source, inheriting data and an 80-server cluster. Results show that Pyro scalability properties from HBase. Although these so- reduces the response time by 60X on 1km 1km rectan- lutions fulfill the semantic level requirement of spatial- × gle geometries compared to the state-of-the-art solutions. temporal applications, moving hotspots and large geom- Pyro further achieves 10X throughput improvement on etry queries still cannot be handled efficiently. 100m 100m rectangle geometries2. × Spatial-temporal applications naturally generate mov- 1 Introduction ing workload hotspots. Imagine a million people si- multaneously whistle taxis after the New Year’s Eve at The popularity of mobile devices is growing at an un- NYC’s Times Square. Or during every morning rush precedented rate. According to the report published hour, people driving into the city central business district by the United Nations International Telecommunication search for the least congested routes. Ordered partition- Union [1], mobile penetration rates are now about equal ing data stores usually mitigate hotspots by splitting an to the global population. Thanks to positioning modules overloaded region into multiple daughter regions, which in mobile devices, a great amount of information gener- can then be moved into different servers. Nevertheless, ated today is tagged with geographic locations. For ex- as region data may still stay in the parent region’s server, ample, users can share tweets and Instagram images with the split operation prevents daughter regions from enjoy- location information with family and friends; taxi com- ing data locality benefits. Take HBase as an example. panies collect pick-up and drop-off events data with geo- Region servers in HBase usually co-locate with HDFS graphic location information as well. The abundances of datanodes. Under this deployment, one replica of all geo-tagged data give birth to a whole range of applica- region data writes to the region server’s storage disks, tions that issue spatial-temporal queries. These queries, which allows get/scan requests to be served using local which we call geometry queries, request information data. Other replicas spread randomly in the entire cluster. about moving objects within a user-defined geometric Splitting and moving a region into other servers disable area. Despite the urgent need, no existing systems man- data locality benefits, forcing daughter regions to fetch age to meet both the scalability and efficiency require- data from remote servers. Therefore, moving hotspots 1The hotspot in this paper refers to a geographic region that receives often lead to performance degradation. a large amount of geometry queries within a certain amount of time. In this paper, we present Pyro, a holistic spatial- 2The reason of using small geometries in this experiment is that the baseline solution results in excessively long delay when handling even temporal big-data storage system tailored for high reso- a single large geometry. lution geometry queries and moving hotspots. Pyro con- 1 USENIX Association 2015 USENIX Annual Technical Conference 97 column family. HBase stores the 3D table as a key-value HRegion Geometry Translator store. The key consists of row key, column family key, column qualifier, and timestamp. The value contains the B Store MemStore Store MemStore D data stored in the cell. o r y StoreFile StoreFile ... StoreFile StoreFile ... P ... In HBase, the entire key space is partitioned into re- Multi-Scan Optimizer Multi-Scan Optimizer gions, with each region served by an HRegion instance. HRegion manages each column family using a Store. Each Store contains one MemStore and multiple Store- Master Node DFS Client Files. In the write path, the data first stays in the Mem- Replica Group Group-Based Replica Placement Policy Store. When the MemStore reaches some pre-defined S Manager F D flush threshold, all key-value pairs in the MemStore are o r y P sorted and flushed into a new StoreFile in HDFS. Each StoreFile wraps an HFile, consisting of a series of data DataNode DataNode DataNode blocks followed by meta blocks. In this paper, we use meta blocks to refer to all blocks that store meta, data Modules Exist in Modules Introduced by HDFS and HBase PyroDB and PyroDFS index, or meta index. In the read path, a request first de- Figure 1: Pyro Architecture termines the right HRegions to query, then it searches all sists of PyroDB and PyroDFS, corresponding to HBase StoreFiles in those regions to find target key-value pairs. and HDFS respectively. This paper makes three ma- As the number of StoreFiles increases, HBase merges jor contributions. First, PyroDB internally implements them into larger StoreFiles to reduce the overhead of read Moore encoding to efficiently translate geometry queries operations. When the size of a store increases beyond a into range scans. Second, PyroDB aggregately mini- threshold, its HRegion splits into two daughter regions, mizes IO latencies of the multiple range scans gener- with each region handles roughly half of its parent’s key- ated by the same geometry query using dynamic pro- space. The two daughter regions initially create refer- gramming. Third, PyroDFS employs a novel DFS ence files pointing back to StoreFiles of their past parent block grouping algorithm that allows Pyro to preserve region. This design postpones the overhead of copying data locality benefits when PyroDB splits regions during region data to daughter region servers at the cost of los- hotspots dynamics. Pyro is implemented by adding 891 ing data locality benefits. The next major compaction lines of code into Hadoop-2.4.1, and another 7344 lines materializes the reference files into real StoreFiles. of code into HBase-0.99. Experiments using NYC taxi HBase has become a famous big-data storage sys- dataset [9, 10] show that Pyro reduces the response time tem for structured data [14], including data for location- by 60X on 1km 1km rectangle geometries. Pyro further based services. Many location-based services share the × achieves 10X throughput improvement on 100m 100m same request primitive that queries information about × rectangle geometries. moving objects within a given geometry, which we call The remainder of this paper is organized as follows. geometry queries. Unfortunately, HBase suffers inef- Section 2 provides background and design overview. ficiencies when serving geometry queries. All cells Then, major designs are described in Section 3. Imple- in HBase are ordered based on their keys in a one- mentations and evaluations are presented in Sections 4 dimensional space. Casting a geometry into that one- and 5 respectively. We survey related work in Section 6. dimensional space inevitably results in multiple dis- Finally, Section 7 concludes the paper. joint range scans. HBase handles those range scans individually, preventing queries to be aggregately opti- 2 Design Overview mized.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    14 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us