@AutoService(value=SchemaTransformProvider.class) public class DebeziumReadSchemaTransformProvider extends TypedSchemaTransformProvider<DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration>
DebeziumIO. This class provides a PTransform that returns a change stream for a relational database.
The transform needs to access the source database on expansion and at pipeline
runtime. At expansion, the output PCollection schema is
retrieved, while at runtime, the change stream is consumed.
This transform is tested against MySQL and Postgres, but it should work well for any data source supported by Debezium.
| Modifier and Type | Class and Description |
|---|---|
static class |
DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration |
| Modifier | Constructor and Description |
|---|---|
|
DebeziumReadSchemaTransformProvider() |
protected |
DebeziumReadSchemaTransformProvider(java.lang.Boolean isTest,
java.lang.Integer recordLimit,
java.lang.Long timeLimitMs) |
| Modifier and Type | Method and Description |
|---|---|
protected @NonNull @Initialized java.lang.Class<DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration> |
configurationClass() |
protected @NonNull @Initialized SchemaTransform |
from(DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration configuration)
Produce a SchemaTransform from ConfigT.
|
@NonNull @Initialized java.lang.String |
identifier()
Returns an id that uniquely represents this transform.
|
@NonNull @Initialized java.util.List<java.lang.String> |
inputCollectionNames()
Returns the input collection names of this transform.
|
@NonNull @Initialized java.util.List<java.lang.String> |
outputCollectionNames()
Returns the output collection names of this transform.
|
configurationSchema, dependencies, frompublic DebeziumReadSchemaTransformProvider()
protected DebeziumReadSchemaTransformProvider(java.lang.Boolean isTest,
java.lang.Integer recordLimit,
java.lang.Long timeLimitMs)
protected @NonNull @Initialized java.lang.Class<DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration> configurationClass()
protected @NonNull @Initialized SchemaTransform from(DebeziumReadSchemaTransformProvider.DebeziumReadSchemaTransformConfiguration configuration)
TypedSchemaTransformProviderInvalidConfigurationException or a
InvalidSchemaException.public @NonNull @Initialized java.lang.String identifier()
SchemaTransformProviderpublic @NonNull @Initialized java.util.List<java.lang.String> inputCollectionNames()
SchemaTransformProviderpublic @NonNull @Initialized java.util.List<java.lang.String> outputCollectionNames()
SchemaTransformProvider