empythy / tiny-md-hbase Goto Github PK
View Code? Open in Web Editor NEWThis project forked from shojinishimura/tiny-md-hbase
This project forked from shojinishimura/tiny-md-hbase
Tiny MD-HBase Tiny MD-HBase realizes a multi-dimensional data store on top of HBase, an ordered key-value store. The basic design is based on the MD-HBase paper[1][2]. Tiny MD-HBase is released as a toy version of MD-HBase. It focuses to provide simple working code samples of multi-dimensional data store features on HBase. Though it does not provide the complete features and highly tuned performance, I hope it helps you to understand how it works. [1] Shoji Nishimura, Sudipto Das, Divyakant Agrawal, Amr El Abbadi, "MD-HBase: A Scalable Multi-dimensional Data. Infrastructure for Location Aware Services" In the 12th International Conference on Mobile Data Management (MDM) 2011, pp 7-16. http://www.cs.ucsb.edu/~sudipto/papers/md-hbase.pdf [2] http://www.slideshare.net/nishimurashoji/mdm2011-mdh-base ******** License ******* Tiny MD-HBase is released under Apache License 2.0. *********** Compilation *********** Just run > mvn package ********** Deployment ********** Put tiny-mdhase.jar under ${HBASE_HOME}/lib ********** How to use ********** Start HBase. > cd ${HBASE_HOME} > bin/start-hbase.sh Put an entity at (x,y). > bin/hbase tiny.mdhbase.Client put x y Tiny MD-HBase only supports non-negative coordinates. Choose non-negative integers for x and y. 'put' automatically generates entityID if you omit an ID. If you want to specify entity ID, type > bin/hbase tiny.mdhbase.Client put x y id Now you put an entity at (x,y). Check entities at (x,y). > bin/hbase tiny.mdhbase.Client get x y [entityID, (x,y)] 'get' prints all entities at (x,y). In other word, 'get' is a point query that retrieves all entities at the query point. If you put many entities into the store, the store may split a bucket. Type the following command to inspect the index table. > bin/hbase tiny.mdhbase.Client index The default split threshold is 10. If you put more than 10 entities, you will observe a bucket split. Let's try multi-dimensional range queries. 'count' prints the number of points within region (xmin, ymin)-(xmax, ymax). > bin/hbase tiny.mdhbase.Client count xmin ymin xmax ymax If you want to reset all entries, drop the table. > bin/hbase tiny.mdhbase.Client drop
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.