小编Abh*_*bhi的帖子

多个colummnFamily和qualifierRange上的Hbase过滤器返回0行

单列上的过滤列表家庭工作,但多个columnFamily返回0行.问题陈述与如何将多个QualifierFilter应用于HBase中的行相同

但我不能使用SingleColumnValueFilter,因为列限定符是时间戳.所以我的过滤器看起来像:

    val master_filter_list = new FilterList()

    val outer_fl_A = new FilterList()
    val cf_filter = new FamilyFilter (CompareOp.EQUAL, new BinaryComparator("ac".getBytes))
    val qualifier_range = new ColumnRangeFilter(Bytes.toBytes(fromDate.getMillis), true, Bytes.toBytes(toDate.getMillis), true)
    val ac_fl = new ValueFilter(comparison_operator, new BinaryComparator(Bytes.toBytes(value.toString.toInt)))
    outer_fl_A.addFilter(cf_filter)
    outer_fl_A.addFilter(qualifier_range)
    outer_fl_A.addFilter(ac_fl)
master_filter_list.addFilter(outer_fl_A)

    val outer_fl_B = new FilterList()
    val cf_filter = new FamilyFilter (CompareOp.EQUAL, new BinaryComparator("t".getBytes))
    val qualifier_range = new ColumnRangeFilter(Bytes.toBytes(fromDate.getMillis), true, Bytes.toBytes(toDate.getMillis), true)
    val ts_fl = new ValueFilter(comparison_operator, new BinaryComparator(value.toString.getBytes))
    outer_fl_B.addFilter(cf_filter)
    outer_fl_B.addFilter(qualifier_range)
    outer_fl_B.addFilter(ts_fl)
    master_filter_list.addFilter(outer_fl_B)
Run Code Online (Sandbox Code Playgroud)

只从表中获得具有outer_fl_A AND outer_fl_B的行的正确方法是什么?

hbase

6
推荐指数
1
解决办法
189
查看次数

标签 统计

hbase ×1