通过hbase外壳的行键?
我正在使用通过hbase外壳的行键?,hbase,Hbase,我正在使用 scan 'table_name', { COLUMNS => 'column_family:column_qualifier', LIMIT => 2 } 在hbase表中列出2行,但我想知道是否可以使用hbase shell实现以下目标: 问题 是否通过hbase外壳列出所有行键 仅列出其行键中包含特定单词的行 A1hbase(主):015:0>计数“表名”,间隔=>1 A2。将RowKey过滤器与SubstringComparator一起使用 用法: hbase
scan 'table_name', { COLUMNS => 'column_family:column_qualifier', LIMIT => 2 }
在hbase表中列出2行,但我想知道是否可以使用hbase shell实现以下目标:
问题
RowKey
过滤器与SubstringComparator
一起使用
用法:
hbase(main):003:0> import org.apache.hadoop.hbase.filter.CompareFilter
hbase(main):005:0> import org.apache.hadoop.hbase.filter.SubstringComparator
hbase(main):006:0> scan 'test', {FILTER => org.apache.hadoop.hbase.filter.RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'),SubstringComparator.new("word_by_which_you_want_to_search"))}
早期的解决办法是:
scan 'test', {
COLUMNS => ['col_family_name:col_name'],
FILTER => "RowFilter(=, 'substring:the_string_to_be_compared')"
}
KeyOnlyFilter-不接受任何参数。返回每个键值对的键部分
语法:KeyOnlyFilter()A1。工作完美。非常感谢。A2。出现错误:NameError:uninitialized constant CompareFilter导入了吗?“导入org.apache.hadoop.hbase.filter.CompareFilter”抱歉,我没有首先导入。这很有魅力。谢谢你的帮助。是否可以只列出列族和列限定符中具有特定单词的行?扫描“test”{FILTER=>org.apache.hadoop.hbase.FILTER.QualifierFilter.new(CompareFilter::CompareOp.valueOf('EQUAL')、SubstringComparator.new(“substring”)}扫描“test”{FILTER=>org.apache.hadoop.hbase.FILTER.FamilyFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'),SubstringComparator.new('substring'))你能解释得更好一点吗?你说的“更早的解决方案”也是什么意思?我假设“更容易”的意思(而不是“更早”).也就是说,除了
子字符串:
…啊,.这个方法检索“rowkey”吗?只是给一个明确的例子:扫描“table1”{STARTROW=>“STARTROW”,FILTER=>“KeyOnlyFilter()”,LIMIT=>10}