阅读本文之前,你需要对hbase有一个基本的了解,比如知道hbase的namespace,family,qualifier的概念。
hbase本身有开放给java客户端的接口,但在平常的项目中使用起来也稍有不便,所以进行了封装。
大致的思路是这样的:
????? 1.将hbase的表抽象为java对象,每一个qualifier代表一个java对象属性
????? 2.采用注解+反射,实现一次编写多次使用,使代码更加灵活
????? 3.对注解的解析采用简单缓存,提高性能。
优点:
???? 1.在java中使用更加灵活
?????2.减少代码量以及学习成本(无须知道hbase的具体原理,当作一个普通表使用)
???? 3.适合小数据量查询展示
缺点:
???? 1.不适合大数据量的处理(由于反射,你懂的)
?????2.字段扩展不是很灵活,表进行字段扩展时需要修改java实体类
?
???? 3.不支持同一个表中的同一个字段如果有多种类型的数据组成
使用场景(有点鸡肋,但是在java中使用起来还是蛮方便):
???? 做小数据量展示;小数据量处理
?
代码:
?github: https://github.com/alleyZ/Java-HBase.git
?附件也可以下载。
?
不足之处或者可改观之处请指点。
?
?
?
原文:http://290434409.iteye.com/blog/2254738