在hbase中使用多行键筛选器扫描表

x8diyxa7  于 2021-06-09  发布在  Hbase
关注(0)|答案(2)|浏览(445)

我已经尝试了单行键,它的工作正常,但我无法获取多行键扫描。

scan 'LPV',{FILTER =>"(PrefixFilter('174','194')"}

获取错误,查找筛选器以支持扫描多行键范围,但未找到是否可能?我想根据多个行键获取多个记录。任何帮助,谢谢。

u91tlkcl

u91tlkcl1#

你只需要一个或两个前置过滤器

scan 'LPV',{FILTER =>"(PrefixFilter('174') OR PrefixFilter('194')"}
pqwbnv8z

pqwbnv8z2#

我不确定hbase shell中是否有多前缀筛选器的解决方案。但是您可以编写一个脚本来逐个执行多个prefixfilter。例如,将密钥前缀逐行放入文件a1.txt;

a1.txt
-------
pref1
pref2
pref3

然后运行这样的脚本(我不擅长shell脚本)。你可以做得更好)

cat a1.txt | while read LINE; do echo "scan 'LPV',{FILTER=>\"PrefixFilter('$LINE')\"} " | hbase shell;done

相关问题