public class DataChangeRecordAction
extends java.lang.Object
ReadChangeStreamPartitionDoFn SDF. It is
responsible for processing DataChangeRecords. The records will simply be emitted to the
received output receiver.| Constructor and Description |
|---|
DataChangeRecordAction() |
| Modifier and Type | Method and Description |
|---|---|
java.util.Optional<org.apache.beam.sdk.transforms.DoFn.ProcessContinuation> |
run(PartitionMetadata partition,
DataChangeRecord record,
org.apache.beam.sdk.transforms.splittabledofn.RestrictionTracker<TimestampRange,com.google.cloud.Timestamp> tracker,
org.apache.beam.sdk.transforms.DoFn.OutputReceiver<DataChangeRecord> outputReceiver,
org.apache.beam.sdk.transforms.splittabledofn.ManualWatermarkEstimator<org.joda.time.Instant> watermarkEstimator,
ThroughputEstimator throughputEstimator)
This is the main processing function for a
DataChangeRecord. |
public java.util.Optional<org.apache.beam.sdk.transforms.DoFn.ProcessContinuation> run(PartitionMetadata partition, DataChangeRecord record, org.apache.beam.sdk.transforms.splittabledofn.RestrictionTracker<TimestampRange,com.google.cloud.Timestamp> tracker, org.apache.beam.sdk.transforms.DoFn.OutputReceiver<DataChangeRecord> outputReceiver, org.apache.beam.sdk.transforms.splittabledofn.ManualWatermarkEstimator<org.joda.time.Instant> watermarkEstimator, ThroughputEstimator throughputEstimator)
DataChangeRecord. It returns an Optional of DoFn.ProcessContinuation to indicate if the calling function should stop or
not. If the Optional returned is empty, it means that the calling function can continue
with the processing. If an Optional of DoFn.ProcessContinuation.stop() is returned,
it means that this function was unable to claim the timestamp of the DataChangeRecord,
so the caller should stop.
When processing the DataChangeRecord the following procedure is applied:
DoFn.OutputReceiver.
partition - the current partition being processedrecord - the change stream data record receivedtracker - the restriction tracker of the ReadChangeStreamPartitionDoFn SDFoutputReceiver - the output receiver of the ReadChangeStreamPartitionDoFn SDFwatermarkEstimator - the watermark estimator of the ReadChangeStreamPartitionDoFn SDFthroughputEstimator - an estimator to calculate local throughput of the ReadChangeStreamPartitionDoFn.Optional.empty() if the caller can continue processing more records. A non
empty Optional with DoFn.ProcessContinuation.stop() if this function was unable
to claim the ChildPartitionsRecord timestamp