com.flipkart.hbaseobjectmapper.HBRecord Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hbase-object-mapper Show documentation
Show all versions of hbase-object-mapper Show documentation
HBase ORM is a light-weight, thread-safe and performant library that enables:
[1] object-oriented access of HBase rows (Data Access Object) with minimal code and good testability.
[2] reading from and/or writing to HBase tables in Hadoop MapReduce jobs.
This can also be used as an ORM for Bigtable.
The newest version!
package com.flipkart.hbaseobjectmapper;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* Entities that need to be mapped to HBase tables need to implement this generic interface
*
* @param Data type of row key, which must be '{@link Comparable} with itself' and must be {@link Serializable}
* (e.g. {@link String}, {@link Long}, {@link Integer}, {@link BigDecimal} etc. or your own POJO)
*/
public interface HBRecord> extends Serializable {
/**
* Composes the row key required for HBase from class variables
*
* @return Row key
*/
R composeRowKey();
/**
* Assigns the class variables from row key string (from HBase) provided
*
* @param rowKey Row key
*/
void parseRowKey(R rowKey);
}