HBase有感(二)
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。
- 上一篇:没有了
- 下一篇:没有了