Class JdbcReadSchemaTransformProvider.JdbcReadSchemaTransformConfiguration

  • All Implemented Interfaces:
    java.io.Serializable
    Enclosing class:
    JdbcReadSchemaTransformProvider

    @DefaultSchema(org.apache.beam.sdk.schemas.AutoValueSchema.class)
    public abstract static class JdbcReadSchemaTransformProvider.JdbcReadSchemaTransformConfiguration
    extends java.lang.Object
    implements java.io.Serializable
    See Also:
    Serialized Form
    • Constructor Detail

      • JdbcReadSchemaTransformConfiguration

        public JdbcReadSchemaTransformConfiguration()
    • Method Detail

      • getJdbcUrl

        @SchemaFieldDescription("Connection URL for the JDBC source.")
        public abstract java.lang.String getJdbcUrl()
      • getConnectionInitSql

        @SchemaFieldDescription("Sets the connection init sql statements used by the Driver. Only MySQL and MariaDB support this.")
        @Nullable
        public abstract java.util.List<@Nullable java.lang.String> getConnectionInitSql()
      • getConnectionProperties

        @SchemaFieldDescription("Used to set connection properties passed to the JDBC driver not already defined as standalone parameter (e.g. username and password can be set using parameters above accordingly). Format of the string must be \"key1=value1;key2=value2;\".")
        @Nullable
        public abstract java.lang.String getConnectionProperties()
      • getDisableAutoCommit

        @SchemaFieldDescription("Whether to disable auto commit on read. Defaults to true if not provided. The need for this config varies depending on the database platform. Informix requires this to be set to false while Postgres requires this to be set to true.")
        @Nullable
        public abstract java.lang.Boolean getDisableAutoCommit()
      • getDriverClassName

        @SchemaFieldDescription("Name of a Java Driver class to use to connect to the JDBC source. For example, \"com.mysql.jdbc.Driver\".")
        @Nullable
        public abstract java.lang.String getDriverClassName()
      • getDriverJars

        @SchemaFieldDescription("Comma separated path(s) for the JDBC driver jar(s). This can be a local path or GCS (gs://) path.")
        @Nullable
        public abstract java.lang.String getDriverJars()
      • getFetchSize

        @SchemaFieldDescription("This method is used to override the size of the data that is going to be fetched and loaded in memory per every database call. It should ONLY be used if the default value throws memory errors.")
        @Nullable
        public abstract java.lang.Integer getFetchSize()
      • getJdbcType

        @SchemaFieldDescription("Type of JDBC source. When specified, an appropriate default Driver will be packaged with the transform. One of mysql, postgres, oracle, or mssql.")
        @Nullable
        public abstract java.lang.String getJdbcType()
      • getLocation

        @SchemaFieldDescription("Name of the table to read from.")
        @Nullable
        public abstract java.lang.String getLocation()
      • getPartitionColumn

        @SchemaFieldDescription("Name of a column of numeric type that will be used for partitioning.")
        @Nullable
        public abstract java.lang.String getPartitionColumn()
      • getNumPartitions

        @SchemaFieldDescription("The number of partitions")
        @Nullable
        public abstract java.lang.Integer getNumPartitions()
      • getOutputParallelization

        @SchemaFieldDescription("Whether to reshuffle the resulting PCollection so results are distributed to all workers.")
        @Nullable
        public abstract java.lang.Boolean getOutputParallelization()
      • getPassword

        @SchemaFieldDescription("Password for the JDBC source.")
        @Nullable
        public abstract java.lang.String getPassword()
      • getReadQuery

        @SchemaFieldDescription("SQL query used to query the JDBC source.")
        @Nullable
        public abstract java.lang.String getReadQuery()
      • getUsername

        @SchemaFieldDescription("Username for the JDBC source.")
        @Nullable
        public abstract java.lang.String getUsername()
      • validate

        public void validate()
      • validate

        public void validate​(java.lang.String jdbcType)
                      throws java.lang.IllegalArgumentException
        Throws:
        java.lang.IllegalArgumentException