2

QualifierFilterを機能させるために、hbaseシェルで次のコマンドを実行します。

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
import org.apache.hadoop.hbase.filter.QualifierFilter
import org.apache.hadoop.hbase.filter.BinaryComparator

以下のエラーが発生しました:

hbase(main):011:0>  scan 'test', { FILTER => QualifierFilter.new(CompareFilter.CompareOp.GREATER, 'dummy')}
NoMethodError: undefined method `CompareOp' for Java::OrgApacheHadoopHbaseFilter::CompareFilter:Class

誰かがbhaseシェルでhbaseQualifierFilterがどのように機能するかの例を共有できますか?

4

3 に答える 3

6

HBaseコンソールは、統計参照の代わりにJRuby-based使用する必要があります。::.

そのコマンドを試してください:

hbase(main):011:0>  scan 'test', { FILTER => QualifierFilter.new(CompareFilter::CompareOp::GREATER, 'dummy')}
于 2013-01-14T20:59:24.470 に答える
2

試す

scan 'test', { FILTER => "QualifierFilter(>, 'regexstring:dummy*')" }

その他の例については、TestParseFilter.javaを参照してください。

于 2016-01-23T11:35:43.083 に答える
0

正確な列名を検索している場合は、HBaseシェルで次の2つのコマンドを発行できます。

import org.apache.hadoop.hbase.filter.QualifierFilter
scan 'orgtable2', {FILTER => "QualifierFilter(=,'binary:lan')"}

この列を含む唯一のレコードlanのテーブルの列のみが表示されます。orgtable2

More likely, you might want to display all columns of the rows for which lan column (of column family cf1) is present. In this case use DependantColumnFilter:

import org.apache.hadoop.hbase.filter.DependentColumnFilter
scan 'orgtable2', {FILTER => "DependentColumnFilter('cf1','lan')"}

If you also want to apply a criteria on the value associated with the lan column, then use the 5-argument signature:

import org.apache.hadoop.hbase.filter.DependentColumnFilter
scan 'orgtable2', {FILTER => "DependentColumnFilter('cf1','lan',false,=,'binary:fre')"}

The previous scan will thus return all columns for the rows in which the 'lan' column is present and for which its associated value is equal to fre. The third argument is dropDependentColumn and would prevent the lan column to be displayed in the results if set to true. More details here.

于 2020-10-07T19:20:39.660 に答える