Package com.google.cloud.bigquery
Class WriteChannelConfiguration.Builder
java.lang.Object
com.google.cloud.bigquery.WriteChannelConfiguration.Builder
- All Implemented Interfaces:
LoadConfiguration.Builder
- Enclosing class:
- WriteChannelConfiguration
public static final class WriteChannelConfiguration.Builder
extends Object
implements LoadConfiguration.Builder
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
setAutodetect
(Boolean autodetect) [Experimental] Sets automatic inference of the options and schema for CSV and JSON sources.setClustering
(Clustering clustering) Sets the clustering specification for the destination table.setConnectionProperties
(List<ConnectionProperty> connectionProperties) setCreateDisposition
(JobInfo.CreateDisposition createDisposition) Sets whether the job is allowed to create new tables.setCreateSession
(Boolean createSession) setDecimalTargetTypes
(List<String> decimalTargetTypes) Defines the list of possible SQL data types to which the source decimal values are converted.setDestinationEncryptionConfiguration
(EncryptionConfiguration encryptionConfiguration) setDestinationTable
(TableId destinationTable) Sets the destination table to load the data into.setFormatOptions
(FormatOptions formatOptions) Sets the source format, and possibly some parsing options, of the external data.setIgnoreUnknownValues
(Boolean ignoreUnknownValues) Sets whether BigQuery should allow extra values that are not represented in the table schema.setMaxBadRecords
(Integer maxBadRecords) Sets the maximum number of bad records that BigQuery can ignore when running the job.setNullMarker
(String nullMarker) Sets the string that represents a null value in a CSV file.Sets the schema for the destination table.setSchemaUpdateOptions
(List<JobInfo.SchemaUpdateOption> schemaUpdateOptions) [Experimental] Sets options allowing the schema of the destination table to be updated as a side effect of the load job.setTimePartitioning
(TimePartitioning timePartitioning) Sets the time partitioning specification for the destination table.setUseAvroLogicalTypes
(Boolean useAvroLogicalTypes) If FormatOptions is set to AVRO, you can interpret logical types into their corresponding types (such as TIMESTAMP) instead of only using their raw types (such as INTEGER).setWriteDisposition
(JobInfo.WriteDisposition writeDisposition) Sets the action that should occur if the destination table already exists.
-
Method Details
-
setDestinationTable
Description copied from interface:LoadConfiguration.Builder
Sets the destination table to load the data into.- Specified by:
setDestinationTable
in interfaceLoadConfiguration.Builder
-
setDestinationEncryptionConfiguration
public LoadConfiguration.Builder setDestinationEncryptionConfiguration(EncryptionConfiguration encryptionConfiguration) - Specified by:
setDestinationEncryptionConfiguration
in interfaceLoadConfiguration.Builder
-
setCreateDisposition
public WriteChannelConfiguration.Builder setCreateDisposition(JobInfo.CreateDisposition createDisposition) Description copied from interface:LoadConfiguration.Builder
Sets whether the job is allowed to create new tables.- Specified by:
setCreateDisposition
in interfaceLoadConfiguration.Builder
- See Also:
-
setWriteDisposition
public WriteChannelConfiguration.Builder setWriteDisposition(JobInfo.WriteDisposition writeDisposition) Description copied from interface:LoadConfiguration.Builder
Sets the action that should occur if the destination table already exists.- Specified by:
setWriteDisposition
in interfaceLoadConfiguration.Builder
- See Also:
-
setFormatOptions
Description copied from interface:LoadConfiguration.Builder
Sets the source format, and possibly some parsing options, of the external data. Supported formats areCSV
,NEWLINE_DELIMITED_JSON
andDATASTORE_BACKUP
. If not specified,CSV
format is assumed.- Specified by:
setFormatOptions
in interfaceLoadConfiguration.Builder
-
setNullMarker
Description copied from interface:LoadConfiguration.Builder
Sets the string that represents a null value in a CSV file. For example, if you specify "\N", BigQuery interprets "\N" as a null value when loading a CSV file. The default value is the empty string. If you set this property to a custom value, BigQuery throws an error if an empty string is present for all data types except forSTRING
andBYTE
. ForSTRING
andBYTE
columns, BigQuery interprets the empty string as an empty value.- Specified by:
setNullMarker
in interfaceLoadConfiguration.Builder
-
setMaxBadRecords
Description copied from interface:LoadConfiguration.Builder
Sets the maximum number of bad records that BigQuery can ignore when running the job. If the number of bad records exceeds this value, an invalid error is returned in the job result. By default no bad record is ignored.- Specified by:
setMaxBadRecords
in interfaceLoadConfiguration.Builder
-
setSchema
Description copied from interface:LoadConfiguration.Builder
Sets the schema for the destination table. The schema can be omitted if the destination table already exists, or if you're loading data from a Google Cloud Datastore backup (i.e.DATASTORE_BACKUP
format option).- Specified by:
setSchema
in interfaceLoadConfiguration.Builder
-
setIgnoreUnknownValues
Description copied from interface:LoadConfiguration.Builder
Sets whether BigQuery should allow extra values that are not represented in the table schema. Iftrue
, the extra values are ignored. Iffalse
, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. By default unknown values are not allowed.- Specified by:
setIgnoreUnknownValues
in interfaceLoadConfiguration.Builder
-
setSchemaUpdateOptions
public WriteChannelConfiguration.Builder setSchemaUpdateOptions(List<JobInfo.SchemaUpdateOption> schemaUpdateOptions) Description copied from interface:LoadConfiguration.Builder
[Experimental] Sets options allowing the schema of the destination table to be updated as a side effect of the load job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema.- Specified by:
setSchemaUpdateOptions
in interfaceLoadConfiguration.Builder
-
setAutodetect
Description copied from interface:LoadConfiguration.Builder
[Experimental] Sets automatic inference of the options and schema for CSV and JSON sources.- Specified by:
setAutodetect
in interfaceLoadConfiguration.Builder
-
setTimePartitioning
Description copied from interface:LoadConfiguration.Builder
Sets the time partitioning specification for the destination table.- Specified by:
setTimePartitioning
in interfaceLoadConfiguration.Builder
-
setClustering
Description copied from interface:LoadConfiguration.Builder
Sets the clustering specification for the destination table.- Specified by:
setClustering
in interfaceLoadConfiguration.Builder
-
setUseAvroLogicalTypes
Description copied from interface:LoadConfiguration.Builder
If FormatOptions is set to AVRO, you can interpret logical types into their corresponding types (such as TIMESTAMP) instead of only using their raw types (such as INTEGER). The value may benull
.- Specified by:
setUseAvroLogicalTypes
in interfaceLoadConfiguration.Builder
-
setLabels
-
setDecimalTargetTypes
Description copied from interface:LoadConfiguration.Builder
Defines the list of possible SQL data types to which the source decimal values are converted. This list and the precision and the scale parameters of the decimal field determine the target type. In the order of NUMERIC, BIGNUMERIC, and STRING, a type is picked if it is in the specified list and if it supports the precision and the scale. STRING supports all precision and scale values.- Specified by:
setDecimalTargetTypes
in interfaceLoadConfiguration.Builder
- Parameters:
decimalTargetTypes
- decimalTargetType ornull
for none
-
setConnectionProperties
public WriteChannelConfiguration.Builder setConnectionProperties(List<ConnectionProperty> connectionProperties) -
setCreateSession
-
build
- Specified by:
build
in interfaceLoadConfiguration.Builder
-