Package org.apache.beam.sdk.io.jdbc
Class JdbcIO.Write<T>
- java.lang.Object
-
- org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<T>,org.apache.beam.sdk.values.PDone>
-
- org.apache.beam.sdk.io.jdbc.JdbcIO.Write<T>
-
- All Implemented Interfaces:
java.io.Serializable,org.apache.beam.sdk.transforms.display.HasDisplayData
- Enclosing class:
- JdbcIO
public static class JdbcIO.Write<T> extends org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<T>,org.apache.beam.sdk.values.PDone>This class is used as the default return value ofJdbcIO.write().All methods in this class delegate to the appropriate method of
JdbcIO.WriteVoid.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.beam.sdk.values.PDoneexpand(org.apache.beam.sdk.values.PCollection<T> input)voidpopulateDisplayData(org.apache.beam.sdk.transforms.display.DisplayData.Builder builder)JdbcIO.Write<T>withAutoSharding()JdbcIO.Write<T>withBatchSize(long batchSize)JdbcIO.Write<T>withDataSourceConfiguration(JdbcIO.DataSourceConfiguration config)JdbcIO.Write<T>withDataSourceProviderFn(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Void,javax.sql.DataSource> dataSourceProviderFn)JdbcIO.Write<T>withMaxBatchBufferingDuration(long maxBatchBufferingDuration)JdbcIO.Write<T>withPreparedStatementSetter(JdbcIO.PreparedStatementSetter<T> setter)JdbcIO.WriteVoid<T>withResults()ReturnsJdbcIO.WriteVoidtransform which can be used inWait.on(PCollection[])to wait until all data is written.JdbcIO.Write<T>withRetryConfiguration(JdbcIO.RetryConfiguration retryConfiguration)JdbcIO.Write<T>withRetryStrategy(JdbcIO.RetryStrategy retryStrategy)JdbcIO.Write<T>withStatement(java.lang.String statement)JdbcIO.Write<T>withTable(java.lang.String table)<V extends JdbcWriteResult>
JdbcIO.WriteWithResults<T,V>withWriteResults(JdbcIO.RowMapper<V> rowMapper)ReturnsJdbcIO.WriteWithResultstransform that could return a specific result.-
Methods inherited from class org.apache.beam.sdk.transforms.PTransform
addAnnotation, compose, compose, getAdditionalInputs, getAnnotations, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, getResourceHints, setDisplayData, setResourceHints, toString, validate, validate
-
-
-
-
Method Detail
-
withAutoSharding
public JdbcIO.Write<T> withAutoSharding()
-
withDataSourceConfiguration
public JdbcIO.Write<T> withDataSourceConfiguration(JdbcIO.DataSourceConfiguration config)
-
withDataSourceProviderFn
public JdbcIO.Write<T> withDataSourceProviderFn(org.apache.beam.sdk.transforms.SerializableFunction<java.lang.Void,javax.sql.DataSource> dataSourceProviderFn)
-
withStatement
public JdbcIO.Write<T> withStatement(java.lang.String statement)
-
withPreparedStatementSetter
public JdbcIO.Write<T> withPreparedStatementSetter(JdbcIO.PreparedStatementSetter<T> setter)
-
withBatchSize
public JdbcIO.Write<T> withBatchSize(long batchSize)
-
withMaxBatchBufferingDuration
public JdbcIO.Write<T> withMaxBatchBufferingDuration(long maxBatchBufferingDuration)
-
withRetryStrategy
public JdbcIO.Write<T> withRetryStrategy(JdbcIO.RetryStrategy retryStrategy)
-
withRetryConfiguration
public JdbcIO.Write<T> withRetryConfiguration(JdbcIO.RetryConfiguration retryConfiguration)
-
withTable
public JdbcIO.Write<T> withTable(java.lang.String table)
-
withResults
public JdbcIO.WriteVoid<T> withResults()
ReturnsJdbcIO.WriteVoidtransform which can be used inWait.on(PCollection[])to wait until all data is written.Example: write a
PCollectionto one database and then to another database, making sure that writing a window of data to the second database starts only after the respective window has been fully written to the first database.PCollection<Void> firstWriteResults = data.apply(JdbcIO.write() .withDataSourceConfiguration(CONF_DB_1).withResults()); data.apply(Wait.on(firstWriteResults)) .apply(JdbcIO.write().withDataSourceConfiguration(CONF_DB_2));
-
withWriteResults
public <V extends JdbcWriteResult> JdbcIO.WriteWithResults<T,V> withWriteResults(JdbcIO.RowMapper<V> rowMapper)
ReturnsJdbcIO.WriteWithResultstransform that could return a specific result.
-
populateDisplayData
public void populateDisplayData(org.apache.beam.sdk.transforms.display.DisplayData.Builder builder)
- Specified by:
populateDisplayDatain interfaceorg.apache.beam.sdk.transforms.display.HasDisplayData- Overrides:
populateDisplayDatain classorg.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<T>,org.apache.beam.sdk.values.PDone>
-
-