Class: Google::Apis::BigqueryV2::JobConfigurationLoad
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::JobConfigurationLoad
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/bigquery_v2/classes.rb,
generated/google/apis/bigquery_v2/representations.rb,
generated/google/apis/bigquery_v2/representations.rb
Instance Attribute Summary collapse
-
#allow_jagged_rows ⇒ Boolean
(also: #allow_jagged_rows?)
[Optional] Accept rows that are missing trailing optional columns.
-
#allow_quoted_newlines ⇒ Boolean
(also: #allow_quoted_newlines?)
Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file.
-
#autodetect ⇒ Boolean
(also: #autodetect?)
[Optional] Indicates if we should automatically infer the options and schema for CSV and JSON sources.
-
#clustering ⇒ Google::Apis::BigqueryV2::Clustering
[Beta] Clustering specification for the destination table.
-
#create_disposition ⇒ String
[Optional] Specifies whether the job is allowed to create new tables.
-
#destination_encryption_configuration ⇒ Google::Apis::BigqueryV2::EncryptionConfiguration
Custom encryption configuration (e.g., Cloud KMS keys).
-
#destination_table ⇒ Google::Apis::BigqueryV2::TableReference
[Required] The destination table to load the data into.
-
#destination_table_properties ⇒ Google::Apis::BigqueryV2::DestinationTableProperties
[Beta] [Optional] Properties with which to create the destination table if it is new.
-
#encoding ⇒ String
[Optional] The character encoding of the data.
-
#field_delimiter ⇒ String
[Optional] The separator for fields in a CSV file.
-
#hive_partitioning_mode ⇒ String
[Optional, Trusted Tester] Deprecated, do not use.
-
#hive_partitioning_options ⇒ Google::Apis::BigqueryV2::HivePartitioningOptions
[Optional, Trusted Tester] Options to configure hive partitioning support.
-
#ignore_unknown_values ⇒ Boolean
(also: #ignore_unknown_values?)
[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema.
-
#max_bad_records ⇒ Fixnum
[Optional] The maximum number of bad records that BigQuery can ignore when running the job.
-
#null_marker ⇒ String
[Optional] Specifies a string that represents a null value in a CSV file.
-
#projection_fields ⇒ Array<String>
If sourceFormat is set to "DATASTORE_BACKUP", indicates which entity properties to load into BigQuery from a Cloud Datastore backup.
-
#quote ⇒ String
[Optional] The value that is used to quote data sections in a CSV file.
-
#range_partitioning ⇒ Google::Apis::BigqueryV2::RangePartitioning
[TrustedTester] Range partitioning specification for this table.
-
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
[Optional] The schema for the destination table.
-
#schema_inline ⇒ String
[Deprecated] The inline schema.
-
#schema_inline_format ⇒ String
[Deprecated] The format of the schemaInline property.
-
#schema_update_options ⇒ Array<String>
Allows the schema of the destination table to be updated as a side effect of the load job if a schema is autodetected or supplied in the job configuration.
-
#skip_leading_rows ⇒ Fixnum
[Optional] The number of rows at the top of a CSV file that BigQuery will skip when loading the data.
-
#source_format ⇒ String
[Optional] The format of the data files.
-
#source_uris ⇒ Array<String>
[Required] The fully-qualified URIs that point to your data in Google Cloud.
-
#time_partitioning ⇒ Google::Apis::BigqueryV2::TimePartitioning
Time-based partitioning specification for the destination table.
-
#use_avro_logical_types ⇒ Boolean
(also: #use_avro_logical_types?)
[Optional] If sourceFormat is set to "AVRO", indicates whether to enable interpreting logical types into their corresponding types (ie. TIMESTAMP), instead of only using their raw types (ie. INTEGER).
-
#write_disposition ⇒ String
[Optional] Specifies the action that occurs if the destination table already exists.
Instance Method Summary collapse
-
#initialize(**args) ⇒ JobConfigurationLoad
constructor
A new instance of JobConfigurationLoad.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ JobConfigurationLoad
Returns a new instance of JobConfigurationLoad
2628 2629 2630 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2628 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allow_jagged_rows ⇒ Boolean Also known as: allow_jagged_rows?
[Optional] Accept rows that are missing trailing optional columns. The missing
values are treated as nulls. If false, records with missing trailing 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. Only
applicable to CSV, ignored for other formats.
Corresponds to the JSON property allowJaggedRows
2410 2411 2412 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2410 def allow_jagged_rows @allow_jagged_rows end |
#allow_quoted_newlines ⇒ Boolean Also known as: allow_quoted_newlines?
Indicates if BigQuery should allow quoted data sections that contain newline
characters in a CSV file. The default value is false.
Corresponds to the JSON property allowQuotedNewlines
2417 2418 2419 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2417 def allow_quoted_newlines @allow_quoted_newlines end |
#autodetect ⇒ Boolean Also known as: autodetect?
[Optional] Indicates if we should automatically infer the options and schema
for CSV and JSON sources.
Corresponds to the JSON property autodetect
2424 2425 2426 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2424 def autodetect @autodetect end |
#clustering ⇒ Google::Apis::BigqueryV2::Clustering
[Beta] Clustering specification for the destination table. Must be specified
with time-based partitioning, data in the table will be first partitioned and
subsequently clustered.
Corresponds to the JSON property clustering
2432 2433 2434 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2432 def clustering @clustering end |
#create_disposition ⇒ String
[Optional] Specifies whether the job is allowed to create new tables. The
following values are supported: CREATE_IF_NEEDED: If the table does not exist,
BigQuery creates the table. CREATE_NEVER: The table must already exist. If it
does not, a 'notFound' error is returned in the job result. The default value
is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one
atomic update upon job completion.
Corresponds to the JSON property createDisposition
2442 2443 2444 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2442 def create_disposition @create_disposition end |
#destination_encryption_configuration ⇒ Google::Apis::BigqueryV2::EncryptionConfiguration
Custom encryption configuration (e.g., Cloud KMS keys).
Corresponds to the JSON property destinationEncryptionConfiguration
2447 2448 2449 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2447 def destination_encryption_configuration @destination_encryption_configuration end |
#destination_table ⇒ Google::Apis::BigqueryV2::TableReference
[Required] The destination table to load the data into.
Corresponds to the JSON property destinationTable
2452 2453 2454 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2452 def destination_table @destination_table end |
#destination_table_properties ⇒ Google::Apis::BigqueryV2::DestinationTableProperties
[Beta] [Optional] Properties with which to create the destination table if it
is new.
Corresponds to the JSON property destinationTableProperties
2458 2459 2460 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2458 def destination_table_properties @destination_table_properties end |
#encoding ⇒ String
[Optional] The character encoding of the data. The supported values are UTF-8
or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the
raw, binary data has been split using the values of the quote and
fieldDelimiter properties.
Corresponds to the JSON property encoding
2466 2467 2468 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2466 def encoding @encoding end |
#field_delimiter ⇒ String
[Optional] The separator for fields in a CSV file. The separator can be any
ISO-8859-1 single-byte character. To use a character in the range 128-255, you
must encode the character as UTF8. BigQuery converts the string to ISO-8859-1
encoding, and then uses the first byte of the encoded string to split the data
in its raw, binary state. BigQuery also supports the escape sequence "\t" to
specify a tab separator. The default value is a comma (',').
Corresponds to the JSON property fieldDelimiter
2476 2477 2478 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2476 def field_delimiter @field_delimiter end |
#hive_partitioning_mode ⇒ String
[Optional, Trusted Tester] Deprecated, do not use. Please set
hivePartitioningOptions instead.
Corresponds to the JSON property hivePartitioningMode
2482 2483 2484 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2482 def hive_partitioning_mode @hive_partitioning_mode end |
#hive_partitioning_options ⇒ Google::Apis::BigqueryV2::HivePartitioningOptions
[Optional, Trusted Tester] Options to configure hive partitioning support.
Corresponds to the JSON property hivePartitioningOptions
2487 2488 2489 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2487 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
Corresponds to the JSON property ignoreUnknownValues
2498 2499 2500 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2498 def ignore_unknown_values @ignore_unknown_values end |
#max_bad_records ⇒ Fixnum
[Optional] 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. This is only valid for CSV and JSON. The
default value is 0, which requires that all records are valid.
Corresponds to the JSON property maxBadRecords
2507 2508 2509 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2507 def max_bad_records @max_bad_records end |
#null_marker ⇒ String
[Optional] Specifies a 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 for STRING and BYTE. For STRING and BYTE
columns, BigQuery interprets the empty string as an empty value.
Corresponds to the JSON property nullMarker
2517 2518 2519 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2517 def null_marker @null_marker end |
#projection_fields ⇒ Array<String>
If sourceFormat is set to "DATASTORE_BACKUP", indicates which entity
properties to load into BigQuery from a Cloud Datastore backup. Property names
are case sensitive and must be top-level properties. If no properties are
specified, BigQuery loads all properties. If any named property isn't found in
the Cloud Datastore backup, an invalid error is returned in the job result.
Corresponds to the JSON property projectionFields
2526 2527 2528 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2526 def projection_fields @projection_fields end |
#quote ⇒ String
[Optional] The value that is used to quote data sections in a CSV file.
BigQuery converts the string to ISO-8859-1 encoding, and then uses the first
byte of the encoded string to split the data in its raw, binary state. The
default value is a double-quote ('"'). If your data does not contain quoted
sections, set the property value to an empty string. If your data contains
quoted newline characters, you must also set the allowQuotedNewlines property
to true.
Corresponds to the JSON property quote
2537 2538 2539 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2537 def quote @quote end |
#range_partitioning ⇒ Google::Apis::BigqueryV2::RangePartitioning
[TrustedTester] Range partitioning specification for this table. Only one of
timePartitioning and rangePartitioning should be specified.
Corresponds to the JSON property rangePartitioning
2543 2544 2545 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2543 def range_partitioning @range_partitioning end |
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
[Optional] The schema for the destination table. The schema can be omitted if
the destination table already exists, or if you're loading data from Google
Cloud Datastore.
Corresponds to the JSON property schema
2550 2551 2552 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2550 def schema @schema end |
#schema_inline ⇒ String
[Deprecated] The inline schema. For CSV schemas, specify as "Field1:Type1[,
Field2:Type2]*". For example, "foo:STRING, bar:INTEGER, baz:FLOAT".
Corresponds to the JSON property schemaInline
2556 2557 2558 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2556 def schema_inline @schema_inline end |
#schema_inline_format ⇒ String
[Deprecated] The format of the schemaInline property.
Corresponds to the JSON property schemaInlineFormat
2561 2562 2563 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2561 def schema_inline_format @schema_inline_format end |
#schema_update_options ⇒ Array<String>
Allows the schema of the destination table to be updated as a side effect of
the load job if a schema is autodetected or supplied in the job configuration.
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. One or more of the
following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable
field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field
in the original schema to nullable.
Corresponds to the JSON property schemaUpdateOptions
2574 2575 2576 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2574 def @schema_update_options end |
#skip_leading_rows ⇒ Fixnum
[Optional] The number of rows at the top of a CSV file that BigQuery will skip
when loading the data. The default value is 0. This property is useful if you
have header rows in the file that should be skipped.
Corresponds to the JSON property skipLeadingRows
2581 2582 2583 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2581 def skip_leading_rows @skip_leading_rows end |
#source_format ⇒ String
[Optional] The format of the data files. For CSV files, specify "CSV". For
datastore backups, specify "DATASTORE_BACKUP". For newline-delimited JSON,
specify "NEWLINE_DELIMITED_JSON". For Avro, specify "AVRO". For parquet,
specify "PARQUET". For orc, specify "ORC". The default value is CSV.
Corresponds to the JSON property sourceFormat
2589 2590 2591 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2589 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
2600 2601 2602 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2600 def source_uris @source_uris end |
#time_partitioning ⇒ Google::Apis::BigqueryV2::TimePartitioning
Time-based partitioning specification for the destination table. Only one of
timePartitioning and rangePartitioning should be specified.
Corresponds to the JSON property timePartitioning
2606 2607 2608 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2606 def time_partitioning @time_partitioning end |
#use_avro_logical_types ⇒ Boolean Also known as: use_avro_logical_types?
[Optional] If sourceFormat is set to "AVRO", indicates whether to enable
interpreting logical types into their corresponding types (ie. TIMESTAMP),
instead of only using their raw types (ie. INTEGER).
Corresponds to the JSON property useAvroLogicalTypes
2613 2614 2615 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2613 def use_avro_logical_types @use_avro_logical_types end |
#write_disposition ⇒ String
[Optional] Specifies the action that occurs if the destination table already
exists. The following values are supported: WRITE_TRUNCATE: If the table
already exists, BigQuery overwrites the table data. WRITE_APPEND: If the table
already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the
table already exists and contains data, a 'duplicate' error is returned in the
job result. The default value is WRITE_APPEND. Each action is atomic and only
occurs if BigQuery is able to complete the job successfully. Creation,
truncation and append actions occur as one atomic update upon job completion.
Corresponds to the JSON property writeDisposition
2626 2627 2628 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2626 def write_disposition @write_disposition end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 |
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2633 def update!(**args) @allow_jagged_rows = args[:allow_jagged_rows] if args.key?(:allow_jagged_rows) @allow_quoted_newlines = args[:allow_quoted_newlines] if args.key?(:allow_quoted_newlines) @autodetect = args[:autodetect] if args.key?(:autodetect) @clustering = args[:clustering] if args.key?(:clustering) @create_disposition = args[:create_disposition] if args.key?(:create_disposition) @destination_encryption_configuration = args[:destination_encryption_configuration] if args.key?(:destination_encryption_configuration) @destination_table = args[:destination_table] if args.key?(:destination_table) @destination_table_properties = args[:destination_table_properties] if args.key?(:destination_table_properties) @encoding = args[:encoding] if args.key?(:encoding) @field_delimiter = args[:field_delimiter] if args.key?(:field_delimiter) @hive_partitioning_mode = args[:hive_partitioning_mode] if args.key?(:hive_partitioning_mode) @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) @max_bad_records = args[:max_bad_records] if args.key?(:max_bad_records) @null_marker = args[:null_marker] if args.key?(:null_marker) @projection_fields = args[:projection_fields] if args.key?(:projection_fields) @quote = args[:quote] if args.key?(:quote) @range_partitioning = args[:range_partitioning] if args.key?(:range_partitioning) @schema = args[:schema] if args.key?(:schema) @schema_inline = args[:schema_inline] if args.key?(:schema_inline) @schema_inline_format = args[:schema_inline_format] if args.key?(:schema_inline_format) @schema_update_options = args[:schema_update_options] if args.key?(:schema_update_options) @skip_leading_rows = args[:skip_leading_rows] if args.key?(:skip_leading_rows) @source_format = args[:source_format] if args.key?(:source_format) @source_uris = args[:source_uris] if args.key?(:source_uris) @time_partitioning = args[:time_partitioning] if args.key?(:time_partitioning) @use_avro_logical_types = args[:use_avro_logical_types] if args.key?(:use_avro_logical_types) @write_disposition = args[:write_disposition] if args.key?(:write_disposition) end |