public static final class RowFilter.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder> implements RowFilterOrBuilder
Takes a row as input and produces an alternate view of the row based on specified rules. For example, a RowFilter might trim down a row to include just the cells from columns matching a given regular expression, or might return all the cells of a row but not their values. More complicated filters can be composed out of these components to express requests such as, "within every column of a particular family, give just the two most recent cells which are older than timestamp X." There are two broad categories of RowFilters (true filters and transformers), as well as two ways to compose simple filters into more complex ones (chains and interleaves). They work as follows: * True filters alter the input row by excluding some of its cells wholesale from the output row. An example of a true filter is the `value_regex_filter`, which excludes cells whose values don't match the specified pattern. All regex true filters use RE2 syntax (https://github.com/google/re2/wiki/Syntax) in raw byte mode (RE2::Latin1), and are evaluated as full matches. An important point to keep in mind is that `RE2(.)` is equivalent by default to `RE2([^\n])`, meaning that it does not match newlines. When attempting to match an arbitrary byte, you should therefore use the escape sequence `\C`, which may need to be further escaped as `\\C` in your client language. * Transformers alter the input row by changing the values of some of its cells in the output, without excluding them completely. Currently, the only supported transformer is the `strip_value_transformer`, which replaces every cell's value with the empty string. * Chains and interleaves are described in more detail in the RowFilter.Chain and RowFilter.Interleave documentation. The total serialized size of a RowFilter message must not exceed 4096 bytes, and RowFilters may not be nested within each other (in Chains or Interleaves) to a depth of more than 20.Protobuf type
google.bigtable.v2.RowFilter| Modifier and Type | Method and Description |
|---|---|
RowFilter.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
RowFilter |
build() |
RowFilter |
buildPartial() |
RowFilter.Builder |
clear() |
RowFilter.Builder |
clearApplyLabelTransformer()
Applies the given label to all cells in the output row.
|
RowFilter.Builder |
clearBlockAllFilter()
Does not match any cells, regardless of input.
|
RowFilter.Builder |
clearCellsPerColumnLimitFilter()
Matches only the most recent N cells within each column.
|
RowFilter.Builder |
clearCellsPerRowLimitFilter()
Matches only the first N cells of each row.
|
RowFilter.Builder |
clearCellsPerRowOffsetFilter()
Skips the first N cells of each row, matching all subsequent cells.
|
RowFilter.Builder |
clearChain()
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.Builder |
clearColumnQualifierRegexFilter()
Matches only cells from columns whose qualifiers satisfy the given RE2
regex.
|
RowFilter.Builder |
clearColumnRangeFilter()
Matches only cells from columns within the given range.
|
RowFilter.Builder |
clearCondition()
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.Builder |
clearFamilyNameRegexFilter()
Matches only cells from columns whose families satisfy the given RE2
regex.
|
RowFilter.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field) |
RowFilter.Builder |
clearFilter() |
RowFilter.Builder |
clearInterleave()
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) |
RowFilter.Builder |
clearPassAllFilter()
Matches all cells, regardless of input.
|
RowFilter.Builder |
clearRowKeyRegexFilter()
Matches only cells from rows whose keys satisfy the given RE2 regex.
|
RowFilter.Builder |
clearRowSampleFilter()
Matches all cells from a row with probability p, and matches no cells
from the row with probability 1-p.
|
RowFilter.Builder |
clearSink()
ADVANCED USE ONLY.
|
RowFilter.Builder |
clearStripValueTransformer()
Replaces each cell's value with the empty string.
|
RowFilter.Builder |
clearTimestampRangeFilter()
Matches only cells with timestamps within the given range.
|
RowFilter.Builder |
clearValueRangeFilter()
Matches only cells with values that fall within the given range.
|
RowFilter.Builder |
clearValueRegexFilter()
Matches only cells with values that satisfy the given regular expression.
|
RowFilter.Builder |
clone() |
String |
getApplyLabelTransformer()
Applies the given label to all cells in the output row.
|
com.google.protobuf.ByteString |
getApplyLabelTransformerBytes()
Applies the given label to all cells in the output row.
|
boolean |
getBlockAllFilter()
Does not match any cells, regardless of input.
|
int |
getCellsPerColumnLimitFilter()
Matches only the most recent N cells within each column.
|
int |
getCellsPerRowLimitFilter()
Matches only the first N cells of each row.
|
int |
getCellsPerRowOffsetFilter()
Skips the first N cells of each row, matching all subsequent cells.
|
RowFilter.Chain |
getChain()
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.Chain.Builder |
getChainBuilder()
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.ChainOrBuilder |
getChainOrBuilder()
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
com.google.protobuf.ByteString |
getColumnQualifierRegexFilter()
Matches only cells from columns whose qualifiers satisfy the given RE2
regex.
|
ColumnRange |
getColumnRangeFilter()
Matches only cells from columns within the given range.
|
ColumnRange.Builder |
getColumnRangeFilterBuilder()
Matches only cells from columns within the given range.
|
ColumnRangeOrBuilder |
getColumnRangeFilterOrBuilder()
Matches only cells from columns within the given range.
|
RowFilter.Condition |
getCondition()
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.Condition.Builder |
getConditionBuilder()
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.ConditionOrBuilder |
getConditionOrBuilder()
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter |
getDefaultInstanceForType() |
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
String |
getFamilyNameRegexFilter()
Matches only cells from columns whose families satisfy the given RE2
regex.
|
com.google.protobuf.ByteString |
getFamilyNameRegexFilterBytes()
Matches only cells from columns whose families satisfy the given RE2
regex.
|
RowFilter.FilterCase |
getFilterCase() |
RowFilter.Interleave |
getInterleave()
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.Interleave.Builder |
getInterleaveBuilder()
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.InterleaveOrBuilder |
getInterleaveOrBuilder()
Applies several RowFilters to the data in parallel and combines the
results.
|
boolean |
getPassAllFilter()
Matches all cells, regardless of input.
|
com.google.protobuf.ByteString |
getRowKeyRegexFilter()
Matches only cells from rows whose keys satisfy the given RE2 regex.
|
double |
getRowSampleFilter()
Matches all cells from a row with probability p, and matches no cells
from the row with probability 1-p.
|
boolean |
getSink()
ADVANCED USE ONLY.
|
boolean |
getStripValueTransformer()
Replaces each cell's value with the empty string.
|
TimestampRange |
getTimestampRangeFilter()
Matches only cells with timestamps within the given range.
|
TimestampRange.Builder |
getTimestampRangeFilterBuilder()
Matches only cells with timestamps within the given range.
|
TimestampRangeOrBuilder |
getTimestampRangeFilterOrBuilder()
Matches only cells with timestamps within the given range.
|
ValueRange |
getValueRangeFilter()
Matches only cells with values that fall within the given range.
|
ValueRange.Builder |
getValueRangeFilterBuilder()
Matches only cells with values that fall within the given range.
|
ValueRangeOrBuilder |
getValueRangeFilterOrBuilder()
Matches only cells with values that fall within the given range.
|
com.google.protobuf.ByteString |
getValueRegexFilter()
Matches only cells with values that satisfy the given regular expression.
|
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
RowFilter.Builder |
mergeChain(RowFilter.Chain value)
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.Builder |
mergeColumnRangeFilter(ColumnRange value)
Matches only cells from columns within the given range.
|
RowFilter.Builder |
mergeCondition(RowFilter.Condition value)
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
RowFilter.Builder |
mergeFrom(com.google.protobuf.Message other) |
RowFilter.Builder |
mergeFrom(RowFilter other) |
RowFilter.Builder |
mergeInterleave(RowFilter.Interleave value)
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.Builder |
mergeTimestampRangeFilter(TimestampRange value)
Matches only cells with timestamps within the given range.
|
RowFilter.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
RowFilter.Builder |
mergeValueRangeFilter(ValueRange value)
Matches only cells with values that fall within the given range.
|
RowFilter.Builder |
setApplyLabelTransformer(String value)
Applies the given label to all cells in the output row.
|
RowFilter.Builder |
setApplyLabelTransformerBytes(com.google.protobuf.ByteString value)
Applies the given label to all cells in the output row.
|
RowFilter.Builder |
setBlockAllFilter(boolean value)
Does not match any cells, regardless of input.
|
RowFilter.Builder |
setCellsPerColumnLimitFilter(int value)
Matches only the most recent N cells within each column.
|
RowFilter.Builder |
setCellsPerRowLimitFilter(int value)
Matches only the first N cells of each row.
|
RowFilter.Builder |
setCellsPerRowOffsetFilter(int value)
Skips the first N cells of each row, matching all subsequent cells.
|
RowFilter.Builder |
setChain(RowFilter.Chain.Builder builderForValue)
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.Builder |
setChain(RowFilter.Chain value)
Applies several RowFilters to the data in sequence, progressively
narrowing the results.
|
RowFilter.Builder |
setColumnQualifierRegexFilter(com.google.protobuf.ByteString value)
Matches only cells from columns whose qualifiers satisfy the given RE2
regex.
|
RowFilter.Builder |
setColumnRangeFilter(ColumnRange.Builder builderForValue)
Matches only cells from columns within the given range.
|
RowFilter.Builder |
setColumnRangeFilter(ColumnRange value)
Matches only cells from columns within the given range.
|
RowFilter.Builder |
setCondition(RowFilter.Condition.Builder builderForValue)
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.Builder |
setCondition(RowFilter.Condition value)
Applies one of two possible RowFilters to the data based on the output of
a predicate RowFilter.
|
RowFilter.Builder |
setFamilyNameRegexFilter(String value)
Matches only cells from columns whose families satisfy the given RE2
regex.
|
RowFilter.Builder |
setFamilyNameRegexFilterBytes(com.google.protobuf.ByteString value)
Matches only cells from columns whose families satisfy the given RE2
regex.
|
RowFilter.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
RowFilter.Builder |
setInterleave(RowFilter.Interleave.Builder builderForValue)
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.Builder |
setInterleave(RowFilter.Interleave value)
Applies several RowFilters to the data in parallel and combines the
results.
|
RowFilter.Builder |
setPassAllFilter(boolean value)
Matches all cells, regardless of input.
|
RowFilter.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
int index,
Object value) |
RowFilter.Builder |
setRowKeyRegexFilter(com.google.protobuf.ByteString value)
Matches only cells from rows whose keys satisfy the given RE2 regex.
|
RowFilter.Builder |
setRowSampleFilter(double value)
Matches all cells from a row with probability p, and matches no cells
from the row with probability 1-p.
|
RowFilter.Builder |
setSink(boolean value)
ADVANCED USE ONLY.
|
RowFilter.Builder |
setStripValueTransformer(boolean value)
Replaces each cell's value with the empty string.
|
RowFilter.Builder |
setTimestampRangeFilter(TimestampRange.Builder builderForValue)
Matches only cells with timestamps within the given range.
|
RowFilter.Builder |
setTimestampRangeFilter(TimestampRange value)
Matches only cells with timestamps within the given range.
|
RowFilter.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
RowFilter.Builder |
setValueRangeFilter(ValueRange.Builder builderForValue)
Matches only cells with values that fall within the given range.
|
RowFilter.Builder |
setValueRangeFilter(ValueRange value)
Matches only cells with values that fall within the given range.
|
RowFilter.Builder |
setValueRegexFilter(com.google.protobuf.ByteString value)
Matches only cells with values that satisfy the given regular expression.
|
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, parseUnknownFieldfindInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, mergeFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType in interface com.google.protobuf.Message.BuildergetDescriptorForType in interface com.google.protobuf.MessageOrBuildergetDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic RowFilter build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic RowFilter buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic RowFilter.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
setField in interface com.google.protobuf.Message.BuildersetField in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
setRepeatedField in interface com.google.protobuf.Message.BuildersetRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
addRepeatedField in interface com.google.protobuf.Message.BuilderaddRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<RowFilter.Builder>public RowFilter.Builder mergeFrom(RowFilter other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public RowFilter.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in interface com.google.protobuf.MessageLite.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<RowFilter.Builder>IOExceptionpublic RowFilter.FilterCase getFilterCase()
getFilterCase in interface RowFilterOrBuilderpublic RowFilter.Builder clearFilter()
public RowFilter.Chain getChain()
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;getChain in interface RowFilterOrBuilderpublic RowFilter.Builder setChain(RowFilter.Chain value)
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;public RowFilter.Builder setChain(RowFilter.Chain.Builder builderForValue)
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;public RowFilter.Builder mergeChain(RowFilter.Chain value)
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;public RowFilter.Builder clearChain()
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;public RowFilter.Chain.Builder getChainBuilder()
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;public RowFilter.ChainOrBuilder getChainOrBuilder()
Applies several RowFilters to the data in sequence, progressively narrowing the results.
.google.bigtable.v2.RowFilter.Chain chain = 1;getChainOrBuilder in interface RowFilterOrBuilderpublic RowFilter.Interleave getInterleave()
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;getInterleave in interface RowFilterOrBuilderpublic RowFilter.Builder setInterleave(RowFilter.Interleave value)
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;public RowFilter.Builder setInterleave(RowFilter.Interleave.Builder builderForValue)
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;public RowFilter.Builder mergeInterleave(RowFilter.Interleave value)
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;public RowFilter.Builder clearInterleave()
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;public RowFilter.Interleave.Builder getInterleaveBuilder()
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;public RowFilter.InterleaveOrBuilder getInterleaveOrBuilder()
Applies several RowFilters to the data in parallel and combines the results.
.google.bigtable.v2.RowFilter.Interleave interleave = 2;getInterleaveOrBuilder in interface RowFilterOrBuilderpublic RowFilter.Condition getCondition()
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;getCondition in interface RowFilterOrBuilderpublic RowFilter.Builder setCondition(RowFilter.Condition value)
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;public RowFilter.Builder setCondition(RowFilter.Condition.Builder builderForValue)
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;public RowFilter.Builder mergeCondition(RowFilter.Condition value)
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;public RowFilter.Builder clearCondition()
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;public RowFilter.Condition.Builder getConditionBuilder()
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;public RowFilter.ConditionOrBuilder getConditionOrBuilder()
Applies one of two possible RowFilters to the data based on the output of a predicate RowFilter.
.google.bigtable.v2.RowFilter.Condition condition = 3;getConditionOrBuilder in interface RowFilterOrBuilderpublic boolean getSink()
ADVANCED USE ONLY.
Hook for introspection into the RowFilter. Outputs all cells directly to
the output of the read rather than to any parent filter. Consider the
following example:
Chain(
FamilyRegex("A"),
Interleave(
All(),
Chain(Label("foo"), Sink())
),
QualifierRegex("B")
)
A,A,1,w
A,B,2,x
B,B,4,z
|
FamilyRegex("A")
|
A,A,1,w
A,B,2,x
|
+------------+-------------+
| |
All() Label(foo)
| |
A,A,1,w A,A,1,w,labels:[foo]
A,B,2,x A,B,2,x,labels:[foo]
| |
| Sink() --------------+
| | |
+------------+ x------+ A,A,1,w,labels:[foo]
| A,B,2,x,labels:[foo]
A,A,1,w |
A,B,2,x |
| |
QualifierRegex("B") |
| |
A,B,2,x |
| |
+--------------------------------+
|
A,A,1,w,labels:[foo]
A,B,2,x,labels:[foo] // could be switched
A,B,2,x // could be switched
Despite being excluded by the qualifier filter, a copy of every cell
that reaches the sink is present in the final result.
As with an [Interleave][google.bigtable.v2.RowFilter.Interleave],
duplicate cells are possible, and appear in an unspecified mutual order.
In this case we have a duplicate with column "A:B" and timestamp 2,
because one copy passed through the all filter while the other was
passed through the label and sink. Note that one copy has label "foo",
while the other does not.
Cannot be used within the `predicate_filter`, `true_filter`, or
`false_filter` of a [Condition][google.bigtable.v2.RowFilter.Condition].
bool sink = 16;getSink in interface RowFilterOrBuilderpublic RowFilter.Builder setSink(boolean value)
ADVANCED USE ONLY.
Hook for introspection into the RowFilter. Outputs all cells directly to
the output of the read rather than to any parent filter. Consider the
following example:
Chain(
FamilyRegex("A"),
Interleave(
All(),
Chain(Label("foo"), Sink())
),
QualifierRegex("B")
)
A,A,1,w
A,B,2,x
B,B,4,z
|
FamilyRegex("A")
|
A,A,1,w
A,B,2,x
|
+------------+-------------+
| |
All() Label(foo)
| |
A,A,1,w A,A,1,w,labels:[foo]
A,B,2,x A,B,2,x,labels:[foo]
| |
| Sink() --------------+
| | |
+------------+ x------+ A,A,1,w,labels:[foo]
| A,B,2,x,labels:[foo]
A,A,1,w |
A,B,2,x |
| |
QualifierRegex("B") |
| |
A,B,2,x |
| |
+--------------------------------+
|
A,A,1,w,labels:[foo]
A,B,2,x,labels:[foo] // could be switched
A,B,2,x // could be switched
Despite being excluded by the qualifier filter, a copy of every cell
that reaches the sink is present in the final result.
As with an [Interleave][google.bigtable.v2.RowFilter.Interleave],
duplicate cells are possible, and appear in an unspecified mutual order.
In this case we have a duplicate with column "A:B" and timestamp 2,
because one copy passed through the all filter while the other was
passed through the label and sink. Note that one copy has label "foo",
while the other does not.
Cannot be used within the `predicate_filter`, `true_filter`, or
`false_filter` of a [Condition][google.bigtable.v2.RowFilter.Condition].
bool sink = 16;public RowFilter.Builder clearSink()
ADVANCED USE ONLY.
Hook for introspection into the RowFilter. Outputs all cells directly to
the output of the read rather than to any parent filter. Consider the
following example:
Chain(
FamilyRegex("A"),
Interleave(
All(),
Chain(Label("foo"), Sink())
),
QualifierRegex("B")
)
A,A,1,w
A,B,2,x
B,B,4,z
|
FamilyRegex("A")
|
A,A,1,w
A,B,2,x
|
+------------+-------------+
| |
All() Label(foo)
| |
A,A,1,w A,A,1,w,labels:[foo]
A,B,2,x A,B,2,x,labels:[foo]
| |
| Sink() --------------+
| | |
+------------+ x------+ A,A,1,w,labels:[foo]
| A,B,2,x,labels:[foo]
A,A,1,w |
A,B,2,x |
| |
QualifierRegex("B") |
| |
A,B,2,x |
| |
+--------------------------------+
|
A,A,1,w,labels:[foo]
A,B,2,x,labels:[foo] // could be switched
A,B,2,x // could be switched
Despite being excluded by the qualifier filter, a copy of every cell
that reaches the sink is present in the final result.
As with an [Interleave][google.bigtable.v2.RowFilter.Interleave],
duplicate cells are possible, and appear in an unspecified mutual order.
In this case we have a duplicate with column "A:B" and timestamp 2,
because one copy passed through the all filter while the other was
passed through the label and sink. Note that one copy has label "foo",
while the other does not.
Cannot be used within the `predicate_filter`, `true_filter`, or
`false_filter` of a [Condition][google.bigtable.v2.RowFilter.Condition].
bool sink = 16;public boolean getPassAllFilter()
Matches all cells, regardless of input. Functionally equivalent to leaving `filter` unset, but included for completeness.
bool pass_all_filter = 17;getPassAllFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setPassAllFilter(boolean value)
Matches all cells, regardless of input. Functionally equivalent to leaving `filter` unset, but included for completeness.
bool pass_all_filter = 17;public RowFilter.Builder clearPassAllFilter()
Matches all cells, regardless of input. Functionally equivalent to leaving `filter` unset, but included for completeness.
bool pass_all_filter = 17;public boolean getBlockAllFilter()
Does not match any cells, regardless of input. Useful for temporarily disabling just part of a filter.
bool block_all_filter = 18;getBlockAllFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setBlockAllFilter(boolean value)
Does not match any cells, regardless of input. Useful for temporarily disabling just part of a filter.
bool block_all_filter = 18;public RowFilter.Builder clearBlockAllFilter()
Does not match any cells, regardless of input. Useful for temporarily disabling just part of a filter.
bool block_all_filter = 18;public com.google.protobuf.ByteString getRowKeyRegexFilter()
Matches only cells from rows whose keys satisfy the given RE2 regex. In other words, passes through the entire row when the key matches, and otherwise produces an empty row. Note that, since row keys can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary key.
bytes row_key_regex_filter = 4;getRowKeyRegexFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setRowKeyRegexFilter(com.google.protobuf.ByteString value)
Matches only cells from rows whose keys satisfy the given RE2 regex. In other words, passes through the entire row when the key matches, and otherwise produces an empty row. Note that, since row keys can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary key.
bytes row_key_regex_filter = 4;public RowFilter.Builder clearRowKeyRegexFilter()
Matches only cells from rows whose keys satisfy the given RE2 regex. In other words, passes through the entire row when the key matches, and otherwise produces an empty row. Note that, since row keys can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary key.
bytes row_key_regex_filter = 4;public double getRowSampleFilter()
Matches all cells from a row with probability p, and matches no cells from the row with probability 1-p.
double row_sample_filter = 14;getRowSampleFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setRowSampleFilter(double value)
Matches all cells from a row with probability p, and matches no cells from the row with probability 1-p.
double row_sample_filter = 14;public RowFilter.Builder clearRowSampleFilter()
Matches all cells from a row with probability p, and matches no cells from the row with probability 1-p.
double row_sample_filter = 14;public String getFamilyNameRegexFilter()
Matches only cells from columns whose families satisfy the given RE2 regex. For technical reasons, the regex must not contain the `:` character, even if it is not being used as a literal. Note that, since column families cannot contain the new line character `\n`, it is sufficient to use `.` as a full wildcard when matching column family names.
string family_name_regex_filter = 5;getFamilyNameRegexFilter in interface RowFilterOrBuilderpublic com.google.protobuf.ByteString getFamilyNameRegexFilterBytes()
Matches only cells from columns whose families satisfy the given RE2 regex. For technical reasons, the regex must not contain the `:` character, even if it is not being used as a literal. Note that, since column families cannot contain the new line character `\n`, it is sufficient to use `.` as a full wildcard when matching column family names.
string family_name_regex_filter = 5;getFamilyNameRegexFilterBytes in interface RowFilterOrBuilderpublic RowFilter.Builder setFamilyNameRegexFilter(String value)
Matches only cells from columns whose families satisfy the given RE2 regex. For technical reasons, the regex must not contain the `:` character, even if it is not being used as a literal. Note that, since column families cannot contain the new line character `\n`, it is sufficient to use `.` as a full wildcard when matching column family names.
string family_name_regex_filter = 5;public RowFilter.Builder clearFamilyNameRegexFilter()
Matches only cells from columns whose families satisfy the given RE2 regex. For technical reasons, the regex must not contain the `:` character, even if it is not being used as a literal. Note that, since column families cannot contain the new line character `\n`, it is sufficient to use `.` as a full wildcard when matching column family names.
string family_name_regex_filter = 5;public RowFilter.Builder setFamilyNameRegexFilterBytes(com.google.protobuf.ByteString value)
Matches only cells from columns whose families satisfy the given RE2 regex. For technical reasons, the regex must not contain the `:` character, even if it is not being used as a literal. Note that, since column families cannot contain the new line character `\n`, it is sufficient to use `.` as a full wildcard when matching column family names.
string family_name_regex_filter = 5;public com.google.protobuf.ByteString getColumnQualifierRegexFilter()
Matches only cells from columns whose qualifiers satisfy the given RE2 regex. Note that, since column qualifiers can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary qualifier.
bytes column_qualifier_regex_filter = 6;getColumnQualifierRegexFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setColumnQualifierRegexFilter(com.google.protobuf.ByteString value)
Matches only cells from columns whose qualifiers satisfy the given RE2 regex. Note that, since column qualifiers can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary qualifier.
bytes column_qualifier_regex_filter = 6;public RowFilter.Builder clearColumnQualifierRegexFilter()
Matches only cells from columns whose qualifiers satisfy the given RE2 regex. Note that, since column qualifiers can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary qualifier.
bytes column_qualifier_regex_filter = 6;public ColumnRange getColumnRangeFilter()
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;getColumnRangeFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setColumnRangeFilter(ColumnRange value)
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;public RowFilter.Builder setColumnRangeFilter(ColumnRange.Builder builderForValue)
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;public RowFilter.Builder mergeColumnRangeFilter(ColumnRange value)
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;public RowFilter.Builder clearColumnRangeFilter()
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;public ColumnRange.Builder getColumnRangeFilterBuilder()
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;public ColumnRangeOrBuilder getColumnRangeFilterOrBuilder()
Matches only cells from columns within the given range.
.google.bigtable.v2.ColumnRange column_range_filter = 7;getColumnRangeFilterOrBuilder in interface RowFilterOrBuilderpublic TimestampRange getTimestampRangeFilter()
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;getTimestampRangeFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setTimestampRangeFilter(TimestampRange value)
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;public RowFilter.Builder setTimestampRangeFilter(TimestampRange.Builder builderForValue)
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;public RowFilter.Builder mergeTimestampRangeFilter(TimestampRange value)
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;public RowFilter.Builder clearTimestampRangeFilter()
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;public TimestampRange.Builder getTimestampRangeFilterBuilder()
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;public TimestampRangeOrBuilder getTimestampRangeFilterOrBuilder()
Matches only cells with timestamps within the given range.
.google.bigtable.v2.TimestampRange timestamp_range_filter = 8;getTimestampRangeFilterOrBuilder in interface RowFilterOrBuilderpublic com.google.protobuf.ByteString getValueRegexFilter()
Matches only cells with values that satisfy the given regular expression. Note that, since cell values can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary value.
bytes value_regex_filter = 9;getValueRegexFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setValueRegexFilter(com.google.protobuf.ByteString value)
Matches only cells with values that satisfy the given regular expression. Note that, since cell values can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary value.
bytes value_regex_filter = 9;public RowFilter.Builder clearValueRegexFilter()
Matches only cells with values that satisfy the given regular expression. Note that, since cell values can contain arbitrary bytes, the `\C` escape sequence must be used if a true wildcard is desired. The `.` character will not match the new line character `\n`, which may be present in a binary value.
bytes value_regex_filter = 9;public ValueRange getValueRangeFilter()
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;getValueRangeFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setValueRangeFilter(ValueRange value)
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;public RowFilter.Builder setValueRangeFilter(ValueRange.Builder builderForValue)
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;public RowFilter.Builder mergeValueRangeFilter(ValueRange value)
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;public RowFilter.Builder clearValueRangeFilter()
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;public ValueRange.Builder getValueRangeFilterBuilder()
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;public ValueRangeOrBuilder getValueRangeFilterOrBuilder()
Matches only cells with values that fall within the given range.
.google.bigtable.v2.ValueRange value_range_filter = 15;getValueRangeFilterOrBuilder in interface RowFilterOrBuilderpublic int getCellsPerRowOffsetFilter()
Skips the first N cells of each row, matching all subsequent cells. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_offset_filter = 10;getCellsPerRowOffsetFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setCellsPerRowOffsetFilter(int value)
Skips the first N cells of each row, matching all subsequent cells. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_offset_filter = 10;public RowFilter.Builder clearCellsPerRowOffsetFilter()
Skips the first N cells of each row, matching all subsequent cells. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_offset_filter = 10;public int getCellsPerRowLimitFilter()
Matches only the first N cells of each row. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_limit_filter = 11;getCellsPerRowLimitFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setCellsPerRowLimitFilter(int value)
Matches only the first N cells of each row. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_limit_filter = 11;public RowFilter.Builder clearCellsPerRowLimitFilter()
Matches only the first N cells of each row. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_row_limit_filter = 11;public int getCellsPerColumnLimitFilter()
Matches only the most recent N cells within each column. For example, if N=2, this filter would match column `foo:bar` at timestamps 10 and 9, skip all earlier cells in `foo:bar`, and then begin matching again in column `foo:bar2`. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_column_limit_filter = 12;getCellsPerColumnLimitFilter in interface RowFilterOrBuilderpublic RowFilter.Builder setCellsPerColumnLimitFilter(int value)
Matches only the most recent N cells within each column. For example, if N=2, this filter would match column `foo:bar` at timestamps 10 and 9, skip all earlier cells in `foo:bar`, and then begin matching again in column `foo:bar2`. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_column_limit_filter = 12;public RowFilter.Builder clearCellsPerColumnLimitFilter()
Matches only the most recent N cells within each column. For example, if N=2, this filter would match column `foo:bar` at timestamps 10 and 9, skip all earlier cells in `foo:bar`, and then begin matching again in column `foo:bar2`. If duplicate cells are present, as is possible when using an Interleave, each copy of the cell is counted separately.
int32 cells_per_column_limit_filter = 12;public boolean getStripValueTransformer()
Replaces each cell's value with the empty string.
bool strip_value_transformer = 13;getStripValueTransformer in interface RowFilterOrBuilderpublic RowFilter.Builder setStripValueTransformer(boolean value)
Replaces each cell's value with the empty string.
bool strip_value_transformer = 13;public RowFilter.Builder clearStripValueTransformer()
Replaces each cell's value with the empty string.
bool strip_value_transformer = 13;public String getApplyLabelTransformer()
Applies the given label to all cells in the output row. This allows the client to determine which results were produced from which part of the filter. Values must be at most 15 characters in length, and match the RE2 pattern `[a-z0-9\\-]+` Due to a technical limitation, it is not currently possible to apply multiple labels to a cell. As a result, a Chain may have no more than one sub-filter which contains a `apply_label_transformer`. It is okay for an Interleave to contain multiple `apply_label_transformers`, as they will be applied to separate copies of the input. This may be relaxed in the future.
string apply_label_transformer = 19;getApplyLabelTransformer in interface RowFilterOrBuilderpublic com.google.protobuf.ByteString getApplyLabelTransformerBytes()
Applies the given label to all cells in the output row. This allows the client to determine which results were produced from which part of the filter. Values must be at most 15 characters in length, and match the RE2 pattern `[a-z0-9\\-]+` Due to a technical limitation, it is not currently possible to apply multiple labels to a cell. As a result, a Chain may have no more than one sub-filter which contains a `apply_label_transformer`. It is okay for an Interleave to contain multiple `apply_label_transformers`, as they will be applied to separate copies of the input. This may be relaxed in the future.
string apply_label_transformer = 19;getApplyLabelTransformerBytes in interface RowFilterOrBuilderpublic RowFilter.Builder setApplyLabelTransformer(String value)
Applies the given label to all cells in the output row. This allows the client to determine which results were produced from which part of the filter. Values must be at most 15 characters in length, and match the RE2 pattern `[a-z0-9\\-]+` Due to a technical limitation, it is not currently possible to apply multiple labels to a cell. As a result, a Chain may have no more than one sub-filter which contains a `apply_label_transformer`. It is okay for an Interleave to contain multiple `apply_label_transformers`, as they will be applied to separate copies of the input. This may be relaxed in the future.
string apply_label_transformer = 19;public RowFilter.Builder clearApplyLabelTransformer()
Applies the given label to all cells in the output row. This allows the client to determine which results were produced from which part of the filter. Values must be at most 15 characters in length, and match the RE2 pattern `[a-z0-9\\-]+` Due to a technical limitation, it is not currently possible to apply multiple labels to a cell. As a result, a Chain may have no more than one sub-filter which contains a `apply_label_transformer`. It is okay for an Interleave to contain multiple `apply_label_transformers`, as they will be applied to separate copies of the input. This may be relaxed in the future.
string apply_label_transformer = 19;public RowFilter.Builder setApplyLabelTransformerBytes(com.google.protobuf.ByteString value)
Applies the given label to all cells in the output row. This allows the client to determine which results were produced from which part of the filter. Values must be at most 15 characters in length, and match the RE2 pattern `[a-z0-9\\-]+` Due to a technical limitation, it is not currently possible to apply multiple labels to a cell. As a result, a Chain may have no more than one sub-filter which contains a `apply_label_transformer`. It is okay for an Interleave to contain multiple `apply_label_transformers`, as they will be applied to separate copies of the input. This may be relaxed in the future.
string apply_label_transformer = 19;public final RowFilter.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>public final RowFilter.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<RowFilter.Builder>