Apache HBase with an Avro service definition and Java server implementation
Java Ruby Shell JavaScript C++ PHP Python
Pull request Compare This branch is 1151 commits ahead of blues:trunk.


In this fork I hope to define and Avro "gateway" interface to HBase as well as provide a Java service implementation.

I'd like the implementation to use the new Get/Put/Delete/Scan APIs available in trunk. The scope of the work encompasses both HBASE-2400 and HBASE-1744.

To use, first we compile and start HBase and the Avro server:

$ git clone git@github.com:hammer/hbase-trunk-with-avro.git hbase-trunk-with-avro
$ cd hbase-trunk-with-avro
$ export HBASE_HOME=${PWD}
$ mvn -DskipTests install
$ bin/start-hbase.sh
$ bin/hbase avro start

In another terminal, we download the Avro Python client and manipulate our HBase installation:

$ sudo pip install pyhbase
$ pyhbase-cli create_table t1 cf1
$ pyhbase-cli describe_table t1
$ pyhbase-cli put t1 r1 cf1:c1 fromavro
$ pyhbase-cli get t1 r1