|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.filter.SingleColumnValueFilter
public class SingleColumnValueFilter
This filter is used to filter cells based on value. It takes a
CompareFilter.CompareOp
operator (equal, greater, not equal, etc), and either a byte [] value or
a WritableByteArrayComparable
.
If we have a byte [] value then we just do a lexicographic compare. For example, if passed value is 'b' and cell has 'a' and the compare operator is LESS, then we will filter out this cell (return true). If this is not sufficient (eg you want to deserialize a long and then compare it to a fixed long value), then you can pass in your own comparator instead.
You must also specify a family and qualifier. Only the value of this column will be tested. All other
To prevent the entire row from being emitted if this filter determines the
column does not pass (it should be filtered), wrap this filter with a
SkipFilter
.
To filter based on the value of all scanned columns, use ValueFilter
.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.apache.hadoop.hbase.filter.Filter |
---|
Filter.ReturnCode |
Constructor Summary | |
---|---|
SingleColumnValueFilter()
Writable constructor, do not use. |
|
SingleColumnValueFilter(byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
byte[] value)
Constructor for binary compare of the value of a single column. |
|
SingleColumnValueFilter(byte[] family,
byte[] qualifier,
CompareFilter.CompareOp compareOp,
WritableByteArrayComparable comparator)
Constructor for binary compare of the value of a single column. |
Method Summary | |
---|---|
boolean |
filterAllRemaining()
If this returns true, the scan will terminate. |
Filter.ReturnCode |
filterKeyValue(KeyValue keyValue)
A way to filter based on the column family, column qualifier and/or the column value. |
boolean |
filterRow()
Last chance to veto row based on previous Filter.filterKeyValue(KeyValue)
calls. |
boolean |
filterRowKey(byte[] rowKey,
int offset,
int length)
Filters a row based on the row key. |
void |
readFields(DataInput in)
|
void |
reset()
Reset the state of the filter between rows. |
void |
write(DataOutput out)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SingleColumnValueFilter()
public SingleColumnValueFilter(byte[] family, byte[] qualifier, CompareFilter.CompareOp compareOp, byte[] value)
family
- name of column familyqualifier
- name of column qualifiercompareOp
- operatorvalue
- value to compare column values againstpublic SingleColumnValueFilter(byte[] family, byte[] qualifier, CompareFilter.CompareOp compareOp, WritableByteArrayComparable comparator)
Use the filterIfColumnMissing flag to set whether the rest of the columns in a row will be emitted if the specified column to check is not found in the row.
family
- name of column familyqualifier
- name of column qualifiercompareOp
- operatorcomparator
- Comparator to use.Method Detail |
---|
public boolean filterRowKey(byte[] rowKey, int offset, int length)
Filter
Filter.filterKeyValue(KeyValue)
below.
filterRowKey
in interface Filter
rowKey
- buffer containing row keyoffset
- offset into buffer where row key startslength
- length of the row key
public Filter.ReturnCode filterKeyValue(KeyValue keyValue)
Filter
ReturnCode.NEXT_ROW
, it should return
ReturnCode.NEXT_ROW
until Filter.reset()
is called
just in case the caller calls for the next row.
filterKeyValue
in interface Filter
keyValue
- the KeyValue in question
Filter.ReturnCode
public boolean filterAllRemaining()
Filter
filterAllRemaining
in interface Filter
public boolean filterRow()
Filter
Filter.filterKeyValue(KeyValue)
calls. The filter needs to retain state then return a particular value for
this call if they wish to exclude a row if a certain column is missing
(for example).
filterRow
in interface Filter
public void reset()
Filter
reset
in interface Filter
public void readFields(DataInput in) throws IOException
readFields
in interface org.apache.hadoop.io.Writable
IOException
public void write(DataOutput out) throws IOException
write
in interface org.apache.hadoop.io.Writable
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |