在hbase的命令行中,可以直接使用filter进行scan,命令如下所示:
import org.apache.hadoop.hbase.filter.CompareFilter
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter
import org.apache.hadoop.hbase.filter.SubstringComparator
import org.apache.hadoop.hbase.util.Bytes
scan 'obd_multtrace', { COLUMNS => 'info:accessTime', FILTER =>
SingleColumnValueFilter.new
(Bytes.toBytes('info'),
Bytes.toBytes('accessTime'),
CompareFilter::CompareOp.valueOf('EQUAL'),
SubstringComparator.new('2015-12-09'))}
如果是filter是自定义的,则首先将filter的jar包复制到hbase集群的所有结点上,再重启hbase,
在命令行中使用该自定义filter时,需要给import命令后的filter类名加入引号,比如import “test.testfilter”;否则,如果使用NameError: undefined local variable or method `test’