ITPub博客

首页 > 大数据 > Hadoop > HBASE Rowkey filter

HBASE Rowkey filter

原创 Hadoop 作者:tom_fans 时间:2017-06-28 18:00:56 0 删除 编辑
HBASE通过Rowkey可以直接定位行,速度很快,在filter中,有2个API可以过滤主键:

1. RowFilter   行过滤器, 依靠行键来过滤

    Scan scan = new Scan();
    Filter rowfilter = new RowFilter(CompareOp.EQUAL, new BinaryPrefixComparator(Bytes.toBytes("A131420033-1007-9223370539574828268")));
   scan1.setFilter(rowfilter);
  
2. setRowPrefixFilter

  Scan scan = new Scan();
  scan.setRowPrefixFilter(Bytes.toBytes("A131420033-1007-9223370539574828268"));

这2者的区别差别太大,上面的rowfilter一定是走全表扫描,即使他的解释是通过行键来过滤, 而直接通过scan.setRowPrefixFilter 才是真正的走行键过滤。

HBASE的数据动辄几亿几十亿,全表扫描是觉得不可以忍受的,
HBASE如果rowkey设计不合理, 根本就不可用,除非依赖二级索引。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/17036462/viewspace-2141358/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-05-19

  • 博文量
    15
  • 访问量
    14124