【发布时间】:2020-11-08 13:15:02
【问题描述】:
我有一个 HBase 表,其中一些信息被编码在限定符名称中。 像这样的:
row1: col1_1, col2_1
row2: col1_1, col3_1
row3: col1_2, col3_2
row4: col1_3, col2_2, col3_1
我需要找到具有特定限定符前缀的所有行(包含所有列)。
在上面的示例中,如果我查找col2,我只想查找row1 和row4。
因为我需要所有列,所以不能使用ColumnPrefixFilter - 它会过滤不匹配的列。
使用SingleColumnValueFilter 也是有问题的——确切的限定符是未知的。后缀范围虽然有限,但太大而无法有效地创建具有所有可能值(>50k 变体)的 FilterList。查询只是超时或比获取所有行并在应用程序中过滤它们慢。
我知道自定义过滤器是一种选择,但我更愿意避免走这条路(使用托管 HBase)。
有没有办法用标准过滤器实现我想要做的事情?
【问题讨论】: