入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

HBase有感(二)

创建时间:2013-09-04 投稿人: 浏览次数:1383

1.当使用复合行键作为rowkey时,其中某个组成部分是变长部分可以使用散列处理,生成固定的长度的值,如MD5算法

2.时间戳可以乘以-1,便于返回最新数据

3.通过对用户id部分的最后字符加1来生成停止键,扫描器返回包括起始键但不包括停止键的记录

byte[] userHash = Md5Utils.md5sum(user);
byte[] startRow = Bytes.padTail(userHash, longLength);
byte[] stopRow = Bytes.padTail(userHash, longLength);
stopRow[Md5utils.MD5_Length-1]++;
4.扫描器缓存Hbase.client.scanner.caching属性可以设置,默认是1

5.过滤器是在Hbase服务器端上而不是在客户端执行判断动作,

需要实现org.apache.hadoop.hbase.filter.filter接口

可以结合RegexStringComparator使用ValueFilter

Scan s = new Scan();
s.addColumn(Bytes.toBytes("twits"),
Bytes.toBytes("twit"));
Filter f = new ValueFilter(
CompareOp.EQUAL,
new RegexStringComparator(".*TwitBase.*"));
s.setFilter(f);


声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像