public abstract static class BigtableIO.Read extends PTransform<PBegin,PCollection<com.google.bigtable.v2.Row>>
PTransform
that reads from Google Cloud Bigtable. See the class-level Javadoc on
BigtableIO
for more information.BigtableIO
,
Serialized Formname, resourceHints
Constructor and Description |
---|
Read() |
Modifier and Type | Method and Description |
---|---|
PCollection<com.google.bigtable.v2.Row> |
expand(PBegin input)
Override this method to specify how this
PTransform should be expanded on the given
InputT . |
@Nullable BigtableOptions |
getBigtableOptions()
Deprecated.
will be replaced by bigtable options configurator.
|
@Nullable java.lang.String |
getTableId()
Returns the table being read from.
|
void |
populateDisplayData(DisplayData.Builder builder)
Register display data for the given transform or component.
|
java.lang.String |
toString() |
void |
validate(PipelineOptions options)
Called before running the Pipeline to verify this transform is fully and correctly specified.
|
BigtableIO.Read |
withBigtableOptions(BigtableOptions.Builder optionsBuilder)
Deprecated.
will be replaced by bigtable options configurator.
|
BigtableIO.Read |
withBigtableOptions(BigtableOptions options)
Deprecated.
will be replaced by bigtable options configurator.
|
BigtableIO.Read |
withBigtableOptionsConfigurator(SerializableFunction<BigtableOptions.Builder,BigtableOptions.Builder> configurator)
Returns a new
BigtableIO.Read that will read from the Cloud Bigtable instance with
customized options provided by given configurator. |
BigtableIO.Read |
withEmulator(java.lang.String emulatorHost)
Returns a new
BigtableIO.Read that will use an official Bigtable emulator. |
BigtableIO.Read |
withInstanceId(java.lang.String instanceId)
Returns a new
BigtableIO.Read that will read from the Cloud Bigtable instance
indicated by given parameter, requires withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>) to be called to determine the
project. |
BigtableIO.Read |
withInstanceId(ValueProvider<java.lang.String> instanceId)
Returns a new
BigtableIO.Read that will read from the Cloud Bigtable instance
indicated by given parameter, requires withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>) to be called to determine the
project. |
BigtableIO.Read |
withKeyRange(ByteKeyRange keyRange)
Returns a new
BigtableIO.Read that will read only rows in the specified range. |
BigtableIO.Read |
withKeyRanges(java.util.List<ByteKeyRange> keyRanges)
Returns a new
BigtableIO.Read that will read only rows in the specified ranges. |
BigtableIO.Read |
withKeyRanges(ValueProvider<java.util.List<ByteKeyRange>> keyRanges)
Returns a new
BigtableIO.Read that will read only rows in the specified ranges. |
BigtableIO.Read |
withMaxBufferElementCount(@Nullable java.lang.Integer maxBufferElementCount)
Returns a new
BigtableIO.Read that will break up read requests into smaller batches. |
BigtableIO.Read |
withoutValidation()
Disables validation that the table being read from exists.
|
BigtableIO.Read |
withProjectId(java.lang.String projectId)
Returns a new
BigtableIO.Read that will read from the Cloud Bigtable project
indicated by given parameter, requires withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>) to be called to determine the
instance. |
BigtableIO.Read |
withProjectId(ValueProvider<java.lang.String> projectId)
Returns a new
BigtableIO.Read that will read from the Cloud Bigtable project
indicated by given parameter, requires withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>) to be called to determine the
instance. |
BigtableIO.Read |
withRowFilter(com.google.bigtable.v2.RowFilter filter)
Returns a new
BigtableIO.Read that will filter the rows read from Cloud Bigtable
using the given row filter. |
BigtableIO.Read |
withRowFilter(ValueProvider<com.google.bigtable.v2.RowFilter> filter)
Returns a new
BigtableIO.Read that will filter the rows read from Cloud Bigtable
using the given row filter. |
BigtableIO.Read |
withTableId(java.lang.String tableId)
Returns a new
BigtableIO.Read that will read from the specified table. |
BigtableIO.Read |
withTableId(ValueProvider<java.lang.String> tableId)
Returns a new
BigtableIO.Read that will read from the specified table. |
compose, compose, getAdditionalInputs, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, getResourceHints, setResourceHints
public @Nullable java.lang.String getTableId()
@Deprecated public @Nullable BigtableOptions getBigtableOptions()
public BigtableIO.Read withProjectId(ValueProvider<java.lang.String> projectId)
BigtableIO.Read
that will read from the Cloud Bigtable project
indicated by given parameter, requires withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
to be called to determine the
instance.
Does not modify this object.
public BigtableIO.Read withProjectId(java.lang.String projectId)
BigtableIO.Read
that will read from the Cloud Bigtable project
indicated by given parameter, requires withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
to be called to determine the
instance.
Does not modify this object.
public BigtableIO.Read withInstanceId(ValueProvider<java.lang.String> instanceId)
BigtableIO.Read
that will read from the Cloud Bigtable instance
indicated by given parameter, requires withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
to be called to determine the
project.
Does not modify this object.
public BigtableIO.Read withInstanceId(java.lang.String instanceId)
BigtableIO.Read
that will read from the Cloud Bigtable instance
indicated by given parameter, requires withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
to be called to determine the
project.
Does not modify this object.
public BigtableIO.Read withTableId(ValueProvider<java.lang.String> tableId)
BigtableIO.Read
that will read from the specified table.
Does not modify this object.
public BigtableIO.Read withTableId(java.lang.String tableId)
BigtableIO.Read
that will read from the specified table.
Does not modify this object.
@Deprecated public BigtableIO.Read withBigtableOptions(BigtableOptions options)
withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
and withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
respectively.
Returns a new BigtableIO.Read
that will read from the Cloud Bigtable instance
indicated by withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
, and using any other specified customizations.
Does not modify this object.
@Deprecated public BigtableIO.Read withBigtableOptions(BigtableOptions.Builder optionsBuilder)
withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
and withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
respectively.
Returns a new BigtableIO.Read
that will read from the Cloud Bigtable instance
indicated by the given options, and using any other specified customizations.
Clones the given BigtableOptions
builder so that any further changes will have no
effect on the returned BigtableIO.Read
.
Does not modify this object.
public BigtableIO.Read withBigtableOptionsConfigurator(SerializableFunction<BigtableOptions.Builder,BigtableOptions.Builder> configurator)
BigtableIO.Read
that will read from the Cloud Bigtable instance with
customized options provided by given configurator.
WARNING: instanceId and projectId should not be provided here and should be provided over
withProjectId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
and withInstanceId(org.apache.beam.sdk.options.ValueProvider<java.lang.String>)
.
Does not modify this object.
public BigtableIO.Read withRowFilter(ValueProvider<com.google.bigtable.v2.RowFilter> filter)
BigtableIO.Read
that will filter the rows read from Cloud Bigtable
using the given row filter.
Does not modify this object.
public BigtableIO.Read withRowFilter(com.google.bigtable.v2.RowFilter filter)
BigtableIO.Read
that will filter the rows read from Cloud Bigtable
using the given row filter.
Does not modify this object.
@Experimental(value=SOURCE_SINK) public BigtableIO.Read withMaxBufferElementCount(@Nullable java.lang.Integer maxBufferElementCount)
BigtableIO.Read
that will break up read requests into smaller batches.
This function will switch the base BigtableIO.Reader class to using the SegmentReader. If
null is passed, this behavior will be disabled and the stream reader will be used.
Does not modify this object.
When we have a builder, we initialize the value. When they call the method then we override the value
public BigtableIO.Read withKeyRange(ByteKeyRange keyRange)
BigtableIO.Read
that will read only rows in the specified range.
Does not modify this object.
public BigtableIO.Read withKeyRanges(ValueProvider<java.util.List<ByteKeyRange>> keyRanges)
BigtableIO.Read
that will read only rows in the specified ranges.
Ranges must not overlap.
Does not modify this object.
public BigtableIO.Read withKeyRanges(java.util.List<ByteKeyRange> keyRanges)
BigtableIO.Read
that will read only rows in the specified ranges.
Ranges must not overlap.
Does not modify this object.
public BigtableIO.Read withoutValidation()
public BigtableIO.Read withEmulator(java.lang.String emulatorHost)
BigtableIO.Read
that will use an official Bigtable emulator.
This is used for testing.
public PCollection<com.google.bigtable.v2.Row> expand(PBegin input)
PTransform
PTransform
should be expanded on the given
InputT
.
NOTE: This method should not be called directly. Instead apply the PTransform
should
be applied to the InputT
using the apply
method.
Composite transforms, which are defined in terms of other transforms, should return the output of one of the composed transforms. Non-composite transforms, which do not apply any transforms internally, should return a new unbound output and register evaluators (via backend-specific registration methods).
expand
in class PTransform<PBegin,PCollection<com.google.bigtable.v2.Row>>
public void validate(PipelineOptions options)
PTransform
By default, does nothing.
validate
in class PTransform<PBegin,PCollection<com.google.bigtable.v2.Row>>
public void populateDisplayData(DisplayData.Builder builder)
PTransform
populateDisplayData(DisplayData.Builder)
is invoked by Pipeline runners to collect
display data via DisplayData.from(HasDisplayData)
. Implementations may call super.populateDisplayData(builder)
in order to register display data in the current namespace,
but should otherwise use subcomponent.populateDisplayData(builder)
to use the namespace
of the subcomponent.
By default, does not register any display data. Implementors may override this method to provide their own display data.
populateDisplayData
in interface HasDisplayData
populateDisplayData
in class PTransform<PBegin,PCollection<com.google.bigtable.v2.Row>>
builder
- The builder to populate with display data.HasDisplayData
public final java.lang.String toString()
toString
in class PTransform<PBegin,PCollection<com.google.bigtable.v2.Row>>