Class: Google::Apis::BigqueryV2::ExternalDataConfiguration
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::ExternalDataConfiguration
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigquery_v2/classes.rb,
lib/google/apis/bigquery_v2/representations.rb,
lib/google/apis/bigquery_v2/representations.rb
Instance Attribute Summary collapse
-
#autodetect ⇒ Boolean
(also: #autodetect?)
Try to detect schema and format options automatically.
-
#avro_options ⇒ Google::Apis::BigqueryV2::AvroOptions
Options for external data sources.
-
#bigtable_options ⇒ Google::Apis::BigqueryV2::BigtableOptions
Options specific to Google Cloud Bigtable data sources.
-
#compression ⇒ String
Optional.
-
#connection_id ⇒ String
Optional.
-
#csv_options ⇒ Google::Apis::BigqueryV2::CsvOptions
Information related to a CSV data source.
-
#date_format ⇒ String
Optional.
-
#datetime_format ⇒ String
Optional.
-
#decimal_target_types ⇒ Array<String>
Defines the list of possible SQL data types to which the source decimal values are converted.
-
#file_set_spec_type ⇒ String
Optional.
-
#google_sheets_options ⇒ Google::Apis::BigqueryV2::GoogleSheetsOptions
Options specific to Google Sheets data sources.
-
#hive_partitioning_options ⇒ Google::Apis::BigqueryV2::HivePartitioningOptions
Options for configuring hive partitioning detect.
-
#ignore_unknown_values ⇒ Boolean
(also: #ignore_unknown_values?)
Optional.
-
#json_extension ⇒ String
Optional.
-
#json_options ⇒ Google::Apis::BigqueryV2::JsonOptions
Json Options for load and make external tables.
-
#max_bad_records ⇒ Fixnum
Optional.
-
#metadata_cache_mode ⇒ String
Optional.
-
#object_metadata ⇒ String
Optional.
-
#parquet_options ⇒ Google::Apis::BigqueryV2::ParquetOptions
Parquet Options for load and make external tables.
-
#reference_file_schema_uri ⇒ String
Optional.
-
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
Schema of a table Corresponds to the JSON property
schema. -
#source_format ⇒ String
[Required] The data format.
-
#source_uris ⇒ Array<String>
[Required] The fully-qualified URIs that point to your data in Google Cloud.
-
#time_format ⇒ String
Optional.
-
#time_zone ⇒ String
Optional.
-
#timestamp_format ⇒ String
Optional.
-
#timestamp_target_precision ⇒ Array<Fixnum>
Precisions (maximum number of total digits in base 10) for seconds of TIMESTAMP types that are allowed to the destination table for autodetection mode.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ExternalDataConfiguration
constructor
A new instance of ExternalDataConfiguration.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ExternalDataConfiguration
Returns a new instance of ExternalDataConfiguration.
3488 3489 3490 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3488 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autodetect ⇒ Boolean Also known as: autodetect?
Try to detect schema and format options automatically. Any option specified
explicitly will be honored.
Corresponds to the JSON property autodetect
3282 3283 3284 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3282 def autodetect @autodetect end |
#avro_options ⇒ Google::Apis::BigqueryV2::AvroOptions
Options for external data sources.
Corresponds to the JSON property avroOptions
3288 3289 3290 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3288 def @avro_options end |
#bigtable_options ⇒ Google::Apis::BigqueryV2::BigtableOptions
Options specific to Google Cloud Bigtable data sources.
Corresponds to the JSON property bigtableOptions
3293 3294 3295 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3293 def @bigtable_options end |
#compression ⇒ String
Optional. The compression type of the data source. Possible values include
GZIP and NONE. The default value is NONE. This setting is ignored for Google
Cloud Bigtable, Google Cloud Datastore backups, Avro, ORC and Parquet formats.
An empty string is an invalid value.
Corresponds to the JSON property compression
3301 3302 3303 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3301 def compression @compression end |
#connection_id ⇒ String
Optional. The connection specifying the credentials to be used to read
external storage, such as Azure Blob, Cloud Storage, or S3. The connection_id
can have the form project_id`.`location_id`;`connection_id or projects/
project_id/locations/location_id/connections/connection_id`.
Corresponds to the JSON propertyconnectionId`
3309 3310 3311 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3309 def connection_id @connection_id end |
#csv_options ⇒ Google::Apis::BigqueryV2::CsvOptions
Information related to a CSV data source.
Corresponds to the JSON property csvOptions
3314 3315 3316 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3314 def @csv_options end |
#date_format ⇒ String
Optional. Format used to parse DATE values. Supports C-style and SQL-style
values.
Corresponds to the JSON property dateFormat
3320 3321 3322 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3320 def date_format @date_format end |
#datetime_format ⇒ String
Optional. Format used to parse DATETIME values. Supports C-style and SQL-style
values.
Corresponds to the JSON property datetimeFormat
3326 3327 3328 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3326 def datetime_format @datetime_format end |
#decimal_target_types ⇒ Array<String>
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.
If none of the listed types supports the precision and the scale, the type
supporting the widest range in the specified list is picked, and if a value
exceeds the supported range when reading the data, an error will be thrown.
Example: Suppose the value of this field is ["NUMERIC", "BIGNUMERIC"]. If (
precision,scale) is: * (38,9) -> NUMERIC; * (39,9) -> BIGNUMERIC (NUMERIC
cannot hold 30 integer digits); * (38,10) -> BIGNUMERIC (NUMERIC cannot hold
10 fractional digits); * (76,38) -> BIGNUMERIC; * (77,38) -> BIGNUMERIC (error
if value exceeds supported range). This field cannot contain duplicate types.
The order of the types in this field is ignored. For example, ["BIGNUMERIC", "
NUMERIC"] is the same as ["NUMERIC", "BIGNUMERIC"] and NUMERIC always takes
precedence over BIGNUMERIC. Defaults to ["NUMERIC", "STRING"] for ORC and ["
NUMERIC"] for the other file formats.
Corresponds to the JSON property decimalTargetTypes
3347 3348 3349 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3347 def decimal_target_types @decimal_target_types end |
#file_set_spec_type ⇒ String
Optional. Specifies how source URIs are interpreted for constructing the file
set to load. By default source URIs are expanded against the underlying
storage. Other options include specifying manifest files. Only applicable to
object storage systems.
Corresponds to the JSON property fileSetSpecType
3355 3356 3357 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3355 def file_set_spec_type @file_set_spec_type end |
#google_sheets_options ⇒ Google::Apis::BigqueryV2::GoogleSheetsOptions
Options specific to Google Sheets data sources.
Corresponds to the JSON property googleSheetsOptions
3360 3361 3362 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3360 def @google_sheets_options end |
#hive_partitioning_options ⇒ Google::Apis::BigqueryV2::HivePartitioningOptions
Options for configuring hive partitioning detect.
Corresponds to the JSON property hivePartitioningOptions
3365 3366 3367 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3365 def @hive_partitioning_options end |
#ignore_unknown_values ⇒ Boolean Also known as: ignore_unknown_values?
Optional. Indicates if 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 sourceFormat property determines what BigQuery
treats as an extra value: CSV: Trailing columns JSON: Named values that don't
match any column names Google Cloud Bigtable: This setting is ignored. Google
Cloud Datastore backups: This setting is ignored. Avro: This setting is
ignored. ORC: This setting is ignored. Parquet: This setting is ignored.
Corresponds to the JSON property ignoreUnknownValues
3378 3379 3380 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3378 def ignore_unknown_values @ignore_unknown_values end |
#json_extension ⇒ String
Optional. Load option to be used together with source_format newline-delimited
JSON to indicate that a variant of JSON is being loaded. To load newline-
delimited GeoJSON, specify GEOJSON (and source_format must be set to
NEWLINE_DELIMITED_JSON).
Corresponds to the JSON property jsonExtension
3387 3388 3389 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3387 def json_extension @json_extension end |
#json_options ⇒ Google::Apis::BigqueryV2::JsonOptions
Json Options for load and make external tables.
Corresponds to the JSON property jsonOptions
3392 3393 3394 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3392 def @json_options end |
#max_bad_records ⇒ Fixnum
Optional. 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. This setting is ignored for Google Cloud Bigtable,
Google Cloud Datastore backups, Avro, ORC and Parquet formats.
Corresponds to the JSON property maxBadRecords
3401 3402 3403 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3401 def max_bad_records @max_bad_records end |
#metadata_cache_mode ⇒ String
Optional. Metadata Cache Mode for the table. Set this to enable caching of
metadata from external data source.
Corresponds to the JSON property metadataCacheMode
3407 3408 3409 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3407 def @metadata_cache_mode end |
#object_metadata ⇒ String
Optional. ObjectMetadata is used to create Object Tables. Object Tables
contain a listing of objects (with their metadata) found at the source_uris.
If ObjectMetadata is set, source_format should be omitted. Currently SIMPLE is
the only supported Object Metadata type.
Corresponds to the JSON property objectMetadata
3415 3416 3417 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3415 def @object_metadata end |
#parquet_options ⇒ Google::Apis::BigqueryV2::ParquetOptions
Parquet Options for load and make external tables.
Corresponds to the JSON property parquetOptions
3420 3421 3422 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3420 def @parquet_options end |
#reference_file_schema_uri ⇒ String
Optional. 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.
Corresponds to the JSON property referenceFileSchemaUri
3427 3428 3429 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3427 def reference_file_schema_uri @reference_file_schema_uri end |
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
Schema of a table
Corresponds to the JSON property schema
3432 3433 3434 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3432 def schema @schema end |
#source_format ⇒ String
[Required] The data format. For CSV files, specify "CSV". For Google sheets,
specify "GOOGLE_SHEETS". For newline-delimited JSON, specify "
NEWLINE_DELIMITED_JSON". For Avro files, specify "AVRO". For Google Cloud
Datastore backups, specify "DATASTORE_BACKUP". For Apache Iceberg tables,
specify "ICEBERG". For ORC files, specify "ORC". For Parquet files, specify "
PARQUET". [Beta] For Google Cloud Bigtable, specify "BIGTABLE".
Corresponds to the JSON property sourceFormat
3442 3443 3444 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3442 def source_format @source_format end |
#source_uris ⇒ Array<String>
[Required] The fully-qualified URIs that point to your data in Google Cloud.
For Google Cloud Storage URIs: Each URI can contain one '' wildcard character
and it must come after the 'bucket' name. Size limits related to load jobs
apply to external data sources. 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 backups, exactly one
URI can be specified. Also, the '' wildcard character is not allowed.
Corresponds to the JSON property sourceUris
3453 3454 3455 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3453 def source_uris @source_uris end |
#time_format ⇒ String
Optional. Format used to parse TIME values. Supports C-style and SQL-style
values.
Corresponds to the JSON property timeFormat
3459 3460 3461 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3459 def time_format @time_format end |
#time_zone ⇒ String
Optional. Time zone used when parsing timestamp values that do not have
specific time zone information (e.g. 2024-04-20 12:34:56). The expected format
is a IANA timezone string (e.g. America/Los_Angeles).
Corresponds to the JSON property timeZone
3466 3467 3468 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3466 def time_zone @time_zone end |
#timestamp_format ⇒ String
Optional. Format used to parse TIMESTAMP values. Supports C-style and SQL-
style values.
Corresponds to the JSON property timestampFormat
3472 3473 3474 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3472 def @timestamp_format end |
#timestamp_target_precision ⇒ Array<Fixnum>
Precisions (maximum number of total digits in base 10) for seconds of
TIMESTAMP types that are allowed to the destination table for autodetection
mode. Available for the formats: CSV, PARQUET, and AVRO. Possible values
include: Not Specified, [], or [6]: timestamp(6) for all auto detected
TIMESTAMP columns [6, 12]: timestamp(6) for all auto detected TIMESTAMP
columns that have less than 6 digits of subseconds. timestamp(12) for all auto
detected TIMESTAMP columns that have more than 6 digits of subseconds. [12]:
timestamp(12) for all auto detected TIMESTAMP columns. The order of the
elements in this array is ignored. Inputs that have higher precision than the
highest target precision in this array will be truncated.
Corresponds to the JSON property timestampTargetPrecision
3486 3487 3488 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3486 def @timestamp_target_precision end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3493 def update!(**args) @autodetect = args[:autodetect] if args.key?(:autodetect) @avro_options = args[:avro_options] if args.key?(:avro_options) @bigtable_options = args[:bigtable_options] if args.key?(:bigtable_options) @compression = args[:compression] if args.key?(:compression) @connection_id = args[:connection_id] if args.key?(:connection_id) @csv_options = args[:csv_options] if args.key?(:csv_options) @date_format = args[:date_format] if args.key?(:date_format) @datetime_format = args[:datetime_format] if args.key?(:datetime_format) @decimal_target_types = args[:decimal_target_types] if args.key?(:decimal_target_types) @file_set_spec_type = args[:file_set_spec_type] if args.key?(:file_set_spec_type) @google_sheets_options = args[:google_sheets_options] if args.key?(:google_sheets_options) @hive_partitioning_options = args[:hive_partitioning_options] if args.key?(:hive_partitioning_options) @ignore_unknown_values = args[:ignore_unknown_values] if args.key?(:ignore_unknown_values) @json_extension = args[:json_extension] if args.key?(:json_extension) @json_options = args[:json_options] if args.key?(:json_options) @max_bad_records = args[:max_bad_records] if args.key?(:max_bad_records) @metadata_cache_mode = args[:metadata_cache_mode] if args.key?(:metadata_cache_mode) @object_metadata = args[:object_metadata] if args.key?(:object_metadata) @parquet_options = args[:parquet_options] if args.key?(:parquet_options) @reference_file_schema_uri = args[:reference_file_schema_uri] if args.key?(:reference_file_schema_uri) @schema = args[:schema] if args.key?(:schema) @source_format = args[:source_format] if args.key?(:source_format) @source_uris = args[:source_uris] if args.key?(:source_uris) @time_format = args[:time_format] if args.key?(:time_format) @time_zone = args[:time_zone] if args.key?(:time_zone) @timestamp_format = args[:timestamp_format] if args.key?(:timestamp_format) @timestamp_target_precision = args[:timestamp_target_precision] if args.key?(:timestamp_target_precision) end |