hbase shell行键过滤正则匹配

hbase shell行键过滤正则匹配

在实际运维生产环境的过程中,经常遇到需要过滤rowkey包含部分字符的场景。以下列出可行的几种操作方式。

方法一:前缀过滤器字符匹配
# 匹配主键开头是abc的数据 
hbase> scan 'xxxSpace:table1', {FILTER => "(PrefixFilter('abc')"}	   

方法二:行键过滤器字符匹配
# 匹配主键包含abc的数据
hbase> scan 'xxxSpace:table1', {FILTER => "(RowFilter(=,'substring:abc')"}
# 匹配主键不包含abc的数据
hbase> scan 'xxxSpace:table1', {FILTER => "(RowFilter(!=,'substring:abc')"}	

方法三:行键过滤器正则匹配
# 匹配主键包含abc的数据
hbase> scan 'xxxSpace:table1', {FILTER => "(RowFilter(=,'regexstring:.*abc.*')"}	
# 匹配主键不包含abc的数据
hbase> scan 'xxxSpace:table1', {FILTER => "(RowFilter(!=,'regexstring:.*abc.*')"} 

你可能感兴趣的:(hbase,数据库,大数据)