`

(转载)hbase轻量级中间件simplehbase v0.1简介

 
阅读更多

simplehbase尝试简化基于hbase的java应用开发。 

Simplehbase主要提供以下功能: 
1 POJO和hbase的映射。 
2 提供client,简化hbase的数据操作。 
3 提供强语义的插入和更新操作。 
  Insert操作:只有原数据不存在时,才put成功。 
  Update操作:只有原数据存在时,才put成功。 

simplehbase的代码,测试(示例)代码,文档见附件。 


看一个简单的例子: 

1 通过注解标示要保存在hbase中的POJO。该POJO对应hbase的Key-Value中的Value。 

Java代码  收藏代码
  1. @HBaseTable(defaultFamily = MyRecordConstants.ColumnFamilyName, defaultConvertor = DefaultColumnConvertor.class)  
  2. public class MyRecord {  
  3.     @HBaseColumn(qualifier = "id")  
  4.     private int id;  
  5.     @HBaseColumn(qualifier = "name")  
  6.     private String name;  
  7.     @HBaseColumn(qualifier = "date")  
  8.     private Date date;  
  9.     @HBaseVersion  
  10.     @HBaseColumn(qualifier = "version")  
  11.     private long version;  
  12. }  




2 定义RowKey,该类型对应hbase的key-value中的key。 

Java代码  收藏代码
  1. public class MyRecordRowKey implements RowKey {  
  2.   
  3.     private String row;  
  4.   
  5.     public MyRecordRowKey(String row) {  
  6.         this.row = row;  
  7.     }  
  8.   
  9.     @Override  
  10.     public byte[] toBytes() {  
  11.         return Bytes.toBytes(row);  
  12.     }  
  13.   
  14.     @Override  
  15.     public String getTableName() {  
  16.         return MyRecordConstants.TableName;  
  17.     }  
  18. }  





3 使用simplehbase的client和hbase进行交互。 

保存数据到hbase。 

Java代码  收藏代码
  1. MyRecord myRecord = new MyRecord();  
  2. myRecord.setId(0);  
  3. myRecord.setName("allen1");  
  4. myRecord.setDate(new Date());  
  5. myRecord.setVersion(0L);  
  6. MyRecordRowKey myRecordRowKey = new MyRecordRowKey("key_allen1");  
  7. simpleHbaseClient.putObject(myRecordRowKey, myRecord);  




删除数据 

Java代码  收藏代码
  1. MyRecordRowKey myRecordRowKey = new MyRecordRowKey("key_allen1");  
  2. simpleHbaseClient.deleteObject(myRecordRowKey);  





按照key查找数据 

Java代码  收藏代码
  1. MyRecord myRecord2 =  simpleHbaseClient.findObject(myRecordRowKey,  
  2.                 MyRecord.class);  





按照startKey和endKey查找列表 

Java代码  收藏代码
  1. MyRecordRowKey startRowKey = new MyRecordRowKey("key_allen1");  
  2. MyRecordRowKey endRowKey = new MyRecordRowKey("key_allen8");  
  3. List<MyRecord> list = simpleHbaseClient.findObjectList(startRowKey,  
  4.         endRowKey, MyRecord.class);  
分享到:
评论

相关推荐

    hbase轻量级中间件simplehbase v0.1简介

    NULL 博文链接:https://zhang-xzhi-xjtu.iteye.com/blog/1953939

    HBase轻量级中间件simplehbase.zip

    simplehbase是java和hbase之间的轻量级中间件。 主要包含以下功能。  数据类型映射:java类型和hbase的bytes之间的数据转换。  简单操作封装:封装了hbase的put,get,scan等操作为简单的java操作方式。  hbase ...

    hbase orm simplehbase v1.0

    simplehbase是java和hbase之间的轻量级中间件。 主要包含以下功能。 数据类型映射:java类型和hbase的bytes之间的数据转换。 简单操作封装:封装了hbase的put,get,scan等操作为简单的java操作方式。 hbase query...

    HBase轻量级框架Parrot

    NULL 博文链接:https://gao-xianglong.iteye.com/blog/2072293

    simpleHbase1.0

    java和hbase轻量级中间件的介绍,包含demo,如何用java操作hbase

    hbase-sdk是基于hbase-client和hbase-thrift的原生API封装的一款轻量级的HBase ORM框架

    hbase-sdk是基于hbase-client和hbase-thrift的原生API封装的一款轻量级的HBase ORM框架。 针对HBase各版本API(1.x~2.x)间的差异,在其上剥离出了一层统一的抽象。并提供了以类SQL的方式来读写HBase表中的数据。对...

    HBase二级索引

    本方案主要参照了华为公布的HBase二级索引实现方案。基于hadoop平台,设计了Hbase的二级索引机制。

    Hbase 二级索引方案

    Indexer 索引和搜索不会影响 HBase 运行的稳定性和 HBase 数据写入的吞吐量,因为索引和 搜索过程是完全分开并且异步的。Lily HBase Indexer 在 CDH5 中运行必须依赖 HBase、 SolrCloud 和 Zookeeper 服务。

    基于hbase的企业级大数据平台

    基于hbase的企业级大数据平台,

    360HBASE二级索引的设计与实践

    奇虎360 HBASE 二级索引的设计与实践 pdf 完整版,支持千亿级数据量

    hbase创建二级索引

    public class IndexBuilder3 extends Configured{ public static class MapperIndex extends TableMapper,Put&gt;{ private String tableName; private String columnFamily; private String[] qualifiers;...

    Hbase基本用法简介

    Hbase shell 、Hbase api、Hbase 配置

    HbaseTemplate 操作hbase

    java 利用 sping-data-hadoop HbaseTemplate 操作hbase find get execute 等方法 可以直接运行

    hadoop hbase 错误日志级解决

    3,ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times 4,ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times 这是我亲自遇到过的错误及解决过程,希望对大家...

    HortonWorks-HBase的企业级应用-Ted-Yu.zip

    HortonWorks 介绍HBase的企业级应用,以及HBase最新特性 HortonWorks 介绍HBase的企业级应用,以及HBase最新特性 HortonWorks 介绍HBase的企业级应用,以及HBase最新特性

    hbase 2级索引

    基于Solr的HBase多条件查询原理很简单,将HBase表中涉及条件过滤的字段和rowkey在Solr中建立索引,通过Solr的多条件查询快速获得符合过滤条件的rowkey值,拿到这些rowkey之后在HBASE中通过指定rowkey进行查询。

    hbase hbck2修复工具hbase-operator-tools-1.0.0.1.0.0.0-618-bin.tar.gz

    hbase hbck2修复工具hbase-operator-tools-1.0.0.1.0.0.0-618-bin.tar.gz,hbase1版本的hbck已经不支持修复命令,hbase2.1版本需要用这个新版的工具

Global site tag (gtag.js) - Google Analytics