Class ExternalTableDefinition.Builder (2.39.1)

public abstract static class ExternalTableDefinition.Builder extends TableDefinition.Builder<ExternalTableDefinition,ExternalTableDefinition.Builder>

Inheritance

java.lang.Object > TableDefinition.Builder > ExternalTableDefinition.Builder

Constructors

Builder()

public Builder()

Methods

build()

public abstract ExternalTableDefinition build()

Creates an ExternalTableDefinition object.

Returns
Type Description
ExternalTableDefinition
Overrides

setAutodetect(Boolean autodetect)

public abstract ExternalTableDefinition.Builder setAutodetect(Boolean autodetect)

[Experimental] Sets detection of schema and format options automatically. Any option specified explicitly will be honored.

Parameter
Name Description
autodetect Boolean
Returns
Type Description
ExternalTableDefinition.Builder

setCompression(String compression)

public abstract ExternalTableDefinition.Builder setCompression(String compression)

Sets compression type of the data source. By default no compression is assumed. See Also: Compression

Parameter
Name Description
compression String
Returns
Type Description
ExternalTableDefinition.Builder

setConnectionId(String connectionId)

public abstract ExternalTableDefinition.Builder setConnectionId(String connectionId)

[Optional, Trusted Tester] connectionId for external data source. The value may be null.

Parameter
Name Description
connectionId String
Returns
Type Description
ExternalTableDefinition.Builder

setDecimalTargetTypes(List<String> decimalTargetTypes)

public abstract ExternalTableDefinition.Builder setDecimalTargetTypes(List<String> decimalTargetTypes)

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.

Parameter
Name Description
decimalTargetTypes List<String>

decimalTargetType or null for none

Returns
Type Description
ExternalTableDefinition.Builder

setFileSetSpecType(String fileSetSpecType)

public ExternalTableDefinition.Builder setFileSetSpecType(String fileSetSpecType)

Defines how to interpret files denoted by URIs. By default the files are assumed to be data files (this can be specified explicitly via FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH). A second option is "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" which interprets each file as a manifest file, where each line is a reference to a file.

Parameter
Name Description
fileSetSpecType String
Returns
Type Description
ExternalTableDefinition.Builder

setFormatOptions(FormatOptions formatOptions)

public ExternalTableDefinition.Builder setFormatOptions(FormatOptions formatOptions)

Sets the source format, and possibly some parsing options, of the external data. Supported formats are CSV and NEWLINE_DELIMITED_JSON.

Source Format

Parameter
Name Description
formatOptions FormatOptions
Returns
Type Description
ExternalTableDefinition.Builder

setHivePartitioningOptions(HivePartitioningOptions hivePartitioningOptions)

public ExternalTableDefinition.Builder setHivePartitioningOptions(HivePartitioningOptions hivePartitioningOptions)

Sets the table Hive partitioning options.

Parameter
Name Description
hivePartitioningOptions HivePartitioningOptions
Returns
Type Description
ExternalTableDefinition.Builder

setIgnoreUnknownValues(Boolean ignoreUnknownValues)

public abstract ExternalTableDefinition.Builder setIgnoreUnknownValues(Boolean ignoreUnknownValues)

Sets whether BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, 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. The default value is false. The value set with #setFormatOptions(FormatOptions) property determines what BigQuery treats as an extra value. See Also: Ignore Unknown Values

Parameter
Name Description
ignoreUnknownValues Boolean
Returns
Type Description
ExternalTableDefinition.Builder

setMaxBadRecords(Integer maxBadRecords)

public abstract ExternalTableDefinition.Builder setMaxBadRecords(Integer maxBadRecords)

Sets the maximum number of bad records that BigQuery can ignore when reading data. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid.

Parameter
Name Description
maxBadRecords Integer
Returns
Type Description
ExternalTableDefinition.Builder

setObjectMetadata(String objectMetadata)

public ExternalTableDefinition.Builder setObjectMetadata(String objectMetadata)
Parameter
Name Description
objectMetadata String
Returns
Type Description
ExternalTableDefinition.Builder

setReferenceFileSchemaUri(String referenceFileSchemaUri)

public abstract ExternalTableDefinition.Builder setReferenceFileSchemaUri(String referenceFileSchemaUri)

When creating an external table, the user can provide a reference file with the table schema. This is enabled for the following formats: AVRO, PARQUET, ORC.

Parameter
Name Description
referenceFileSchemaUri String

or null for none

Returns
Type Description
ExternalTableDefinition.Builder

setSchema(Schema schema)

public abstract ExternalTableDefinition.Builder setSchema(Schema schema)

Sets the table schema.

Parameter
Name Description
schema Schema
Returns
Type Description
ExternalTableDefinition.Builder
Overrides

setSourceUris(List<String> sourceUris)

public ExternalTableDefinition.Builder setSourceUris(List<String> sourceUris)

Sets the fully-qualified URIs that point to your data in Google Cloud Storage (e.g. gs://bucket/path). Each URI can contain one '*' wildcard character that must come after the bucket's name. Size limits related to load jobs apply to external data sources, plus an additional limit of 10 GB maximum size across all URIs.

For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table.

For Google Cloud Datastore backup URIs: Exactly one URI can be specified. Also, the '*' wildcard character is not allowed. See Also: Quota

Parameter
Name Description
sourceUris List<String>
Returns
Type Description
ExternalTableDefinition.Builder

setType(TableDefinition.Type type)

public abstract ExternalTableDefinition.Builder setType(TableDefinition.Type type)
Parameter
Name Description
type TableDefinition.Type
Returns
Type Description
ExternalTableDefinition.Builder
Overrides