Question: Im working on a project in which i got to use hbase.The project is in java based. I need to know what is the best hbase client api for java.

Answer: 
Kundera is a object-datastore mapping tool for Hbase alongwith Cassandra and MongoDB. 

Some of the salient features are:

* JPA 2.0 compliant.
* Column/ column family indexing using lucene.
* Support for entity relationships and JPA queries.
* Cross-datastore persistence

It's hosted here: 
<https://github.com/impetus-opensource/Kundera>
playOrm is a another java tool where you can annotate your entities and immediately be up and running. It is NOT JPA compliant on purpose as nosql is too different. It has methods like findAll() as you want to parallel your reads in nosql.

playOrm does add JQL but with a twist for nosql....As an example of the twist, you can partition a trillion row into 1 billion partitions and do JQL into any partition and join with other tables. It makes a transition to noSql much easier if you come from the JPA world.