google-apis-bigquery_v2 0.71.0 → 0.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -66,7 +66,7 @@ module Google
66
66
  attr_accessor :roc_auc
67
67
 
68
68
  # Threshold at which the metrics are computed. For binary classification models
69
- # this is the positive class threshold. For multi-class classfication models
69
+ # this is the positive class threshold. For multi-class classification models
70
70
  # this is the confidence threshold.
71
71
  # Corresponds to the JSON property `threshold`
72
72
  # @return [Float]
@@ -131,7 +131,8 @@ module Google
131
131
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
132
132
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
133
133
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
134
- # DATE"` ` ` ] ` `
134
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
135
+ # typeKind": "DATE"` `
135
136
  # Corresponds to the JSON property `dataType`
136
137
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
137
138
  attr_accessor :data_type
@@ -600,6 +601,34 @@ module Google
600
601
  end
601
602
  end
602
603
 
604
+ # Request message for the BatchDeleteRowAccessPoliciesRequest method.
605
+ class BatchDeleteRowAccessPoliciesRequest
606
+ include Google::Apis::Core::Hashable
607
+
608
+ # If set to true, it deletes the row access policy even if it's the last row
609
+ # access policy on the table and the deletion will widen the access rather
610
+ # narrowing it.
611
+ # Corresponds to the JSON property `force`
612
+ # @return [Boolean]
613
+ attr_accessor :force
614
+ alias_method :force?, :force
615
+
616
+ # Required. Policy IDs of the row access policies.
617
+ # Corresponds to the JSON property `policyIds`
618
+ # @return [Array<String>]
619
+ attr_accessor :policy_ids
620
+
621
+ def initialize(**args)
622
+ update!(**args)
623
+ end
624
+
625
+ # Update properties of this object
626
+ def update!(**args)
627
+ @force = args[:force] if args.key?(:force)
628
+ @policy_ids = args[:policy_ids] if args.key?(:policy_ids)
629
+ end
630
+ end
631
+
603
632
  # Reason why BI Engine didn't accelerate the query (or sub-query).
604
633
  class BiEngineReason
605
634
  include Google::Apis::Core::Hashable
@@ -661,31 +690,32 @@ module Google
661
690
  end
662
691
  end
663
692
 
664
- # Configuration for BigLake managed tables.
693
+ # Configuration for BigQuery tables for Apache Iceberg (formerly BigLake managed
694
+ # tables.)
665
695
  class BigLakeConfiguration
666
696
  include Google::Apis::Core::Hashable
667
697
 
668
- # Required. The connection specifying the credentials to be used to read and
698
+ # Optional. The connection specifying the credentials to be used to read and
669
699
  # write to external storage, such as Cloud Storage. The connection_id can have
670
- # the form "<project\_id>.<location\_id>.<connection\_id>" or "projects/<project\
671
- # _id>/locations/<location\_id>/connections/<connection\_id>".
700
+ # the form ``project`.`location`.`connection_id`` or `projects/`project`/
701
+ # locations/`location`/connections/`connection_id`".
672
702
  # Corresponds to the JSON property `connectionId`
673
703
  # @return [String]
674
704
  attr_accessor :connection_id
675
705
 
676
- # Required. The file format the table data is stored in.
706
+ # Optional. The file format the table data is stored in.
677
707
  # Corresponds to the JSON property `fileFormat`
678
708
  # @return [String]
679
709
  attr_accessor :file_format
680
710
 
681
- # Required. The fully qualified location prefix of the external folder where
711
+ # Optional. The fully qualified location prefix of the external folder where
682
712
  # table data is stored. The '*' wildcard character is not allowed. The URI
683
- # should be in the format "gs://bucket/path_to_table/"
713
+ # should be in the format `gs://bucket/path_to_table/`
684
714
  # Corresponds to the JSON property `storageUri`
685
715
  # @return [String]
686
716
  attr_accessor :storage_uri
687
717
 
688
- # Required. The table format the metadata only snapshots are stored in.
718
+ # Optional. The table format the metadata only snapshots are stored in.
689
719
  # Corresponds to the JSON property `tableFormat`
690
720
  # @return [String]
691
721
  attr_accessor :table_format
@@ -758,10 +788,10 @@ module Google
758
788
  alias_method :only_read_latest?, :only_read_latest
759
789
 
760
790
  # [Required] Qualifier of the column. Columns in the parent column family that
761
- # has this exact qualifier are exposed as . field. If the qualifier is valid UTF-
762
- # 8 string, it can be specified in the qualifier_string field. Otherwise, a base-
763
- # 64 encoded value must be set to qualifier_encoded. The column field name is
764
- # the same as the column qualifier. However, if the qualifier is not a valid
791
+ # has this exact qualifier are exposed as `.` field. If the qualifier is valid
792
+ # UTF-8 string, it can be specified in the qualifier_string field. Otherwise, a
793
+ # base-64 encoded value must be set to qualifier_encoded. The column field name
794
+ # is the same as the column qualifier. However, if the qualifier is not a valid
765
795
  # BigQuery field identifier i.e. does not match a-zA-Z*, a valid identifier must
766
796
  # be provided as field_name.
767
797
  # Corresponds to the JSON property `qualifierEncoded`
@@ -805,8 +835,8 @@ module Google
805
835
 
806
836
  # Optional. Lists of columns that should be exposed as individual fields as
807
837
  # opposed to a list of (column name, value) pairs. All columns whose qualifier
808
- # matches a qualifier in this list can be accessed as .. Other columns can be
809
- # accessed as a list through .Column field.
838
+ # matches a qualifier in this list can be accessed as `.`. Other columns can be
839
+ # accessed as a list through the `.Column` field.
810
840
  # Corresponds to the JSON property `columns`
811
841
  # @return [Array<Google::Apis::BigqueryV2::BigtableColumn>]
812
842
  attr_accessor :columns
@@ -1410,8 +1440,8 @@ module Google
1410
1440
  # One or more fields on which data should be clustered. Only top-level, non-
1411
1441
  # repeated, simple-type fields are supported. The ordering of the clustering
1412
1442
  # fields should be prioritized from most to least important for filtering
1413
- # purposes. Additional information on limitations can be found here: https://
1414
- # cloud.google.com/bigquery/docs/creating-clustered-tables#limitations
1443
+ # purposes. For additional information, see [Introduction to clustered tables](
1444
+ # https://cloud.google.com/bigquery/docs/clustered-tables#limitations).
1415
1445
  # Corresponds to the JSON property `fields`
1416
1446
  # @return [Array<String>]
1417
1447
  attr_accessor :fields
@@ -1495,9 +1525,12 @@ module Google
1495
1525
  # If set, all subsequent queries in a script or session will have this label.
1496
1526
  # For the format in which a you can specify a query label, see labels in the
1497
1527
  # JobConfiguration resource type: https://cloud.google.com/bigquery/docs/
1498
- # reference/rest/v2/Job#jobconfiguration Additional properties are allowed, but
1499
- # ignored. Specifying multiple connection properties with the same key returns
1500
- # an error.
1528
+ # reference/rest/v2/Job#jobconfiguration * **service_account**: indicates the
1529
+ # service account to use to run a continuous query. If set, the query job uses
1530
+ # the service account to access Google Cloud resources. Service account access
1531
+ # is bounded by the IAM permissions that you have granted to the service account.
1532
+ # Additional properties are allowed, but ignored. Specifying multiple
1533
+ # connection properties with the same key returns an error.
1501
1534
  class ConnectionProperty
1502
1535
  include Google::Apis::Core::Hashable
1503
1536
 
@@ -1574,6 +1607,17 @@ module Google
1574
1607
  # @return [String]
1575
1608
  attr_accessor :null_marker
1576
1609
 
1610
+ # Optional. A list of strings represented as SQL NULL value in a CSV file.
1611
+ # null_marker and null_markers can't be set at the same time. If null_marker is
1612
+ # set, null_markers has to be not set. If null_markers is set, null_marker has
1613
+ # to be not set. If both null_marker and null_markers are set at the same time,
1614
+ # a user error would be thrown. Any strings listed in null_markers, including
1615
+ # empty string would be interpreted as SQL NULL. This applies to all column
1616
+ # types.
1617
+ # Corresponds to the JSON property `nullMarkers`
1618
+ # @return [Array<String>]
1619
+ attr_accessor :null_markers
1620
+
1577
1621
  # Optional. Indicates if the embedded ASCII control characters (the first 32
1578
1622
  # characters in the ASCII-table, from '\x00' to '\x1F') are preserved.
1579
1623
  # Corresponds to the JSON property `preserveAsciiControlCharacters`
@@ -1609,6 +1653,18 @@ module Google
1609
1653
  # @return [Fixnum]
1610
1654
  attr_accessor :skip_leading_rows
1611
1655
 
1656
+ # Optional. Controls the strategy used to match loaded columns to the schema. If
1657
+ # not set, a sensible default is chosen based on how the schema is provided. If
1658
+ # autodetect is used, then columns are matched by name. Otherwise, columns are
1659
+ # matched by position. This is done to keep the behavior backward-compatible.
1660
+ # Acceptable values are: POSITION - matches by position. This assumes that the
1661
+ # columns are ordered the same way as the schema. NAME - matches by name. This
1662
+ # reads the header row as column names and reorders columns to match the field
1663
+ # names in the schema.
1664
+ # Corresponds to the JSON property `sourceColumnMatch`
1665
+ # @return [String]
1666
+ attr_accessor :source_column_match
1667
+
1612
1668
  def initialize(**args)
1613
1669
  update!(**args)
1614
1670
  end
@@ -1620,9 +1676,11 @@ module Google
1620
1676
  @encoding = args[:encoding] if args.key?(:encoding)
1621
1677
  @field_delimiter = args[:field_delimiter] if args.key?(:field_delimiter)
1622
1678
  @null_marker = args[:null_marker] if args.key?(:null_marker)
1679
+ @null_markers = args[:null_markers] if args.key?(:null_markers)
1623
1680
  @preserve_ascii_control_characters = args[:preserve_ascii_control_characters] if args.key?(:preserve_ascii_control_characters)
1624
1681
  @quote = args[:quote] if args.key?(:quote)
1625
1682
  @skip_leading_rows = args[:skip_leading_rows] if args.key?(:skip_leading_rows)
1683
+ @source_column_match = args[:source_column_match] if args.key?(:source_column_match)
1626
1684
  end
1627
1685
  end
1628
1686
 
@@ -1630,6 +1688,13 @@ module Google
1630
1688
  class DataFormatOptions
1631
1689
  include Google::Apis::Core::Hashable
1632
1690
 
1691
+ # Optional. The API output format for a timestamp. This offers more explicit
1692
+ # control over the timestamp output format as compared to the existing `
1693
+ # use_int64_timestamp` option.
1694
+ # Corresponds to the JSON property `timestampOutputFormat`
1695
+ # @return [String]
1696
+ attr_accessor :timestamp_output_format
1697
+
1633
1698
  # Optional. Output timestamp as usec int64. Default is false.
1634
1699
  # Corresponds to the JSON property `useInt64Timestamp`
1635
1700
  # @return [Boolean]
@@ -1642,6 +1707,7 @@ module Google
1642
1707
 
1643
1708
  # Update properties of this object
1644
1709
  def update!(**args)
1710
+ @timestamp_output_format = args[:timestamp_output_format] if args.key?(:timestamp_output_format)
1645
1711
  @use_int64_timestamp = args[:use_int64_timestamp] if args.key?(:use_int64_timestamp)
1646
1712
  end
1647
1713
  end
@@ -1666,6 +1732,27 @@ module Google
1666
1732
  end
1667
1733
  end
1668
1734
 
1735
+ # Data policy option proto, it currently supports name only, will support
1736
+ # precedence later.
1737
+ class DataPolicyOption
1738
+ include Google::Apis::Core::Hashable
1739
+
1740
+ # Data policy resource name in the form of projects/project_id/locations/
1741
+ # location_id/dataPolicies/data_policy_id.
1742
+ # Corresponds to the JSON property `name`
1743
+ # @return [String]
1744
+ attr_accessor :name
1745
+
1746
+ def initialize(**args)
1747
+ update!(**args)
1748
+ end
1749
+
1750
+ # Update properties of this object
1751
+ def update!(**args)
1752
+ @name = args[:name] if args.key?(:name)
1753
+ end
1754
+ end
1755
+
1669
1756
  # Data split result. This contains references to the training and evaluation
1670
1757
  # data tables that were used to train the model.
1671
1758
  class DataSplitResult
@@ -1698,7 +1785,7 @@ module Google
1698
1785
  end
1699
1786
  end
1700
1787
 
1701
- #
1788
+ # Represents a BigQuery dataset.
1702
1789
  class Dataset
1703
1790
  include Google::Apis::Core::Hashable
1704
1791
 
@@ -1709,7 +1796,9 @@ module Google
1709
1796
  # access.specialGroup: projectReaders; access.role: READER; access.specialGroup:
1710
1797
  # projectWriters; access.role: WRITER; access.specialGroup: projectOwners;
1711
1798
  # access.role: OWNER; access.userByEmail: [dataset creator email]; access.role:
1712
- # OWNER;
1799
+ # OWNER; If you patch a dataset, then this field is overwritten by the patched
1800
+ # dataset's access field. To add entities, you must supply the entire existing
1801
+ # access array in addition to any new entities that you want to add.
1713
1802
  # Corresponds to the JSON property `access`
1714
1803
  # @return [Array<Google::Apis::BigqueryV2::Dataset::Access>]
1715
1804
  attr_accessor :access
@@ -1720,7 +1809,7 @@ module Google
1720
1809
  # @return [Fixnum]
1721
1810
  attr_accessor :creation_time
1722
1811
 
1723
- # Required. A reference that identifies the dataset.
1812
+ # Identifier for a dataset.
1724
1813
  # Corresponds to the JSON property `datasetReference`
1725
1814
  # @return [Google::Apis::BigqueryV2::DatasetReference]
1726
1815
  attr_accessor :dataset_reference
@@ -1737,10 +1826,7 @@ module Google
1737
1826
  # @return [String]
1738
1827
  attr_accessor :default_collation
1739
1828
 
1740
- # The default encryption key for all tables in the dataset. After this property
1741
- # is set, the encryption key of all newly-created tables in the dataset is set
1742
- # to this value unless the table creation request or query explicitly overrides
1743
- # the key.
1829
+ # Configuration for Cloud KMS encryption settings.
1744
1830
  # Corresponds to the JSON property `defaultEncryptionConfiguration`
1745
1831
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
1746
1832
  attr_accessor :default_encryption_configuration
@@ -1795,7 +1881,7 @@ module Google
1795
1881
  attr_accessor :etag
1796
1882
 
1797
1883
  # Options defining open source compatible datasets living in the BigQuery
1798
- # catalog. Contains metadata of open source database, schema or namespace
1884
+ # catalog. Contains metadata of open source database, schema, or namespace
1799
1885
  # represented by the current dataset.
1800
1886
  # Corresponds to the JSON property `externalCatalogDatasetOptions`
1801
1887
  # @return [Google::Apis::BigqueryV2::ExternalCatalogDatasetOptions]
@@ -1834,7 +1920,9 @@ module Google
1834
1920
 
1835
1921
  # The labels associated with this dataset. You can use these to organize and
1836
1922
  # group your datasets. You can set this property when inserting or updating a
1837
- # dataset. See Creating and Updating Dataset Labels for more information.
1923
+ # dataset. See [Creating and Updating Dataset Labels](https://cloud.google.com/
1924
+ # bigquery/docs/creating-managing-labels#creating_and_updating_dataset_labels)
1925
+ # for more information.
1838
1926
  # Corresponds to the JSON property `labels`
1839
1927
  # @return [Hash<String,String>]
1840
1928
  attr_accessor :labels
@@ -1867,20 +1955,21 @@ module Google
1867
1955
  # @return [Fixnum]
1868
1956
  attr_accessor :max_time_travel_hours
1869
1957
 
1870
- # Optional. The [tags](/bigquery/docs/tags) attached to this dataset. Tag keys
1871
- # are globally unique. Tag key is expected to be in the namespaced format, for
1872
- # example "123456789012/environment" where 123456789012 is the ID of the parent
1873
- # organization or project resource for this tag key. Tag value is expected to be
1874
- # the short name, for example "Production". See [Tag definitions](/iam/docs/tags-
1875
- # access-control#definitions) for more details.
1958
+ # Optional. The [tags](https://cloud.google.com/bigquery/docs/tags) attached to
1959
+ # this dataset. Tag keys are globally unique. Tag key is expected to be in the
1960
+ # namespaced format, for example "123456789012/environment" where 123456789012
1961
+ # is the ID of the parent organization or project resource for this tag key. Tag
1962
+ # value is expected to be the short name, for example "Production". See [Tag
1963
+ # definitions](https://cloud.google.com/iam/docs/tags-access-control#definitions)
1964
+ # for more details.
1876
1965
  # Corresponds to the JSON property `resourceTags`
1877
1966
  # @return [Hash<String,String>]
1878
1967
  attr_accessor :resource_tags
1879
1968
 
1880
1969
  # Optional. Output only. Restriction config for all tables and dataset. If set,
1881
1970
  # restrict certain accesses on the dataset and all its tables based on the
1882
- # config. See [Data egress](/bigquery/docs/analytics-hub-introduction#
1883
- # data_egress) for more details.
1971
+ # config. See [Data egress](https://cloud.google.com/bigquery/docs/analytics-hub-
1972
+ # introduction#data_egress) for more details.
1884
1973
  # Corresponds to the JSON property `restrictions`
1885
1974
  # @return [Google::Apis::BigqueryV2::RestrictionConfig]
1886
1975
  attr_accessor :restrictions
@@ -1908,7 +1997,8 @@ module Google
1908
1997
  # @return [String]
1909
1998
  attr_accessor :storage_billing_model
1910
1999
 
1911
- # Output only. Tags for the Dataset.
2000
+ # Output only. Tags for the dataset. To provide tags as inputs, use the `
2001
+ # resourceTags` field.
1912
2002
  # Corresponds to the JSON property `tags`
1913
2003
  # @return [Array<Google::Apis::BigqueryV2::Dataset::Tag>]
1914
2004
  attr_accessor :tags
@@ -1963,6 +2053,25 @@ module Google
1963
2053
  class Access
1964
2054
  include Google::Apis::Core::Hashable
1965
2055
 
2056
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
2057
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
2058
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
2059
+ # "Summary size limit" description: "Determines if a summary is less than 100
2060
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
2061
+ # Requestor is owner" description: "Determines if requestor is the document
2062
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
2063
+ # Logic): title: "Public documents" description: "Determine whether the document
2064
+ # should be publicly visible" expression: "document.type != 'private' &&
2065
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
2066
+ # string" description: "Create a notification string with a timestamp."
2067
+ # expression: "'New message received at ' + string(document.create_time)" The
2068
+ # exact variables and functions that may be referenced within an expression are
2069
+ # determined by the service that evaluates it. See the service documentation for
2070
+ # additional information.
2071
+ # Corresponds to the JSON property `condition`
2072
+ # @return [Google::Apis::BigqueryV2::Expr]
2073
+ attr_accessor :condition
2074
+
1966
2075
  # Grants all resources of particular types in a particular dataset read access
1967
2076
  # to the current dataset. Similar to how individually authorized views work,
1968
2077
  # updates to any resource granted through its dataset (including creation of new
@@ -1992,11 +2101,11 @@ module Google
1992
2101
  attr_accessor :iam_member
1993
2102
 
1994
2103
  # An IAM role ID that should be granted to the user, group, or domain specified
1995
- # in this access entry. The following legacy mappings will be applied: OWNER <=>
1996
- # roles/bigquery.dataOwner WRITER <=> roles/bigquery.dataEditor READER <=> roles/
1997
- # bigquery.dataViewer This field will accept any of the above formats, but will
1998
- # return only the legacy format. For example, if you set this field to "roles/
1999
- # bigquery.dataOwner", it will be returned back as "OWNER".
2104
+ # in this access entry. The following legacy mappings will be applied: * `OWNER`:
2105
+ # `roles/bigquery.dataOwner` * `WRITER`: `roles/bigquery.dataEditor` * `READER`:
2106
+ # `roles/bigquery.dataViewer` This field will accept any of the above formats,
2107
+ # but will return only the legacy format. For example, if you set this field to "
2108
+ # roles/bigquery.dataOwner", it will be returned back as "OWNER".
2000
2109
  # Corresponds to the JSON property `role`
2001
2110
  # @return [String]
2002
2111
  attr_accessor :role
@@ -2006,9 +2115,9 @@ module Google
2006
2115
  # @return [Google::Apis::BigqueryV2::RoutineReference]
2007
2116
  attr_accessor :routine
2008
2117
 
2009
- # [Pick one] A special group to grant access to. Possible values include:
2010
- # projectOwners: Owners of the enclosing project. projectReaders: Readers of the
2011
- # enclosing project. projectWriters: Writers of the enclosing project.
2118
+ # [Pick one] A special group to grant access to. Possible values include: *
2119
+ # projectOwners: Owners of the enclosing project. * projectReaders: Readers of
2120
+ # the enclosing project. * projectWriters: Writers of the enclosing project. *
2012
2121
  # allAuthenticatedUsers: All authenticated BigQuery users. Maps to similarly-
2013
2122
  # named IAM members.
2014
2123
  # Corresponds to the JSON property `specialGroup`
@@ -2036,6 +2145,7 @@ module Google
2036
2145
 
2037
2146
  # Update properties of this object
2038
2147
  def update!(**args)
2148
+ @condition = args[:condition] if args.key?(:condition)
2039
2149
  @dataset = args[:dataset] if args.key?(:dataset)
2040
2150
  @domain = args[:domain] if args.key?(:domain)
2041
2151
  @group_by_email = args[:group_by_email] if args.key?(:group_by_email)
@@ -2084,7 +2194,7 @@ module Google
2084
2194
  class DatasetAccessEntry
2085
2195
  include Google::Apis::Core::Hashable
2086
2196
 
2087
- # The dataset this entry applies to
2197
+ # Identifier for a dataset.
2088
2198
  # Corresponds to the JSON property `dataset`
2089
2199
  # @return [Google::Apis::BigqueryV2::DatasetReference]
2090
2200
  attr_accessor :dataset
@@ -2161,12 +2271,16 @@ module Google
2161
2271
  class Dataset
2162
2272
  include Google::Apis::Core::Hashable
2163
2273
 
2164
- # The dataset reference. Use this property to access specific parts of the
2165
- # dataset's ID, such as project ID or dataset ID.
2274
+ # Identifier for a dataset.
2166
2275
  # Corresponds to the JSON property `datasetReference`
2167
2276
  # @return [Google::Apis::BigqueryV2::DatasetReference]
2168
2277
  attr_accessor :dataset_reference
2169
2278
 
2279
+ # Configures the access a dataset defined in an external metadata storage.
2280
+ # Corresponds to the JSON property `externalDatasetReference`
2281
+ # @return [Google::Apis::BigqueryV2::ExternalDatasetReference]
2282
+ attr_accessor :external_dataset_reference
2283
+
2170
2284
  # An alternate name for the dataset. The friendly name is purely decorative in
2171
2285
  # nature.
2172
2286
  # Corresponds to the JSON property `friendlyName`
@@ -2201,6 +2315,7 @@ module Google
2201
2315
  # Update properties of this object
2202
2316
  def update!(**args)
2203
2317
  @dataset_reference = args[:dataset_reference] if args.key?(:dataset_reference)
2318
+ @external_dataset_reference = args[:external_dataset_reference] if args.key?(:external_dataset_reference)
2204
2319
  @friendly_name = args[:friendly_name] if args.key?(:friendly_name)
2205
2320
  @id = args[:id] if args.key?(:id)
2206
2321
  @kind = args[:kind] if args.key?(:kind)
@@ -2210,7 +2325,7 @@ module Google
2210
2325
  end
2211
2326
  end
2212
2327
 
2213
- #
2328
+ # Identifier for a dataset.
2214
2329
  class DatasetReference
2215
2330
  include Google::Apis::Core::Hashable
2216
2331
 
@@ -2502,7 +2617,7 @@ module Google
2502
2617
  end
2503
2618
  end
2504
2619
 
2505
- #
2620
+ # Configuration for Cloud KMS encryption settings.
2506
2621
  class EncryptionConfiguration
2507
2622
  include Google::Apis::Core::Hashable
2508
2623
 
@@ -2979,7 +3094,7 @@ module Google
2979
3094
  end
2980
3095
 
2981
3096
  # Options defining open source compatible datasets living in the BigQuery
2982
- # catalog. Contains metadata of open source database, schema or namespace
3097
+ # catalog. Contains metadata of open source database, schema, or namespace
2983
3098
  # represented by the current dataset.
2984
3099
  class ExternalCatalogDatasetOptions
2985
3100
  include Google::Apis::Core::Hashable
@@ -2991,7 +3106,7 @@ module Google
2991
3106
  attr_accessor :default_storage_location_uri
2992
3107
 
2993
3108
  # Optional. A map of key value pairs defining the parameters and properties of
2994
- # the open source schema. Maximum size of 2Mib.
3109
+ # the open source schema. Maximum size of 2MiB.
2995
3110
  # Corresponds to the JSON property `parameters`
2996
3111
  # @return [Hash<String,String>]
2997
3112
  attr_accessor :parameters
@@ -3008,21 +3123,22 @@ module Google
3008
3123
  end
3009
3124
 
3010
3125
  # Metadata about open source compatible table. The fields contained in these
3011
- # options correspond to hive metastore's table level properties.
3126
+ # options correspond to Hive metastore's table-level properties.
3012
3127
  class ExternalCatalogTableOptions
3013
3128
  include Google::Apis::Core::Hashable
3014
3129
 
3015
- # Optional. The connection specifying the credentials to be used to read
3016
- # external storage, such as Azure Blob, Cloud Storage, or S3. The connection is
3017
- # needed to read the open source table from BigQuery Engine. The connection_id
3018
- # can have the form `..` or `projects//locations//connections/`.
3130
+ # Optional. A connection ID that specifies the credentials to be used to read
3131
+ # external storage, such as Azure Blob, Cloud Storage, or Amazon S3. This
3132
+ # connection is needed to read the open source table from BigQuery. The
3133
+ # connection_id format must be either `..` or `projects//locations//connections/`
3134
+ # .
3019
3135
  # Corresponds to the JSON property `connectionId`
3020
3136
  # @return [String]
3021
3137
  attr_accessor :connection_id
3022
3138
 
3023
- # Optional. A map of key value pairs defining the parameters and properties of
3024
- # the open source table. Corresponds with hive meta store table parameters.
3025
- # Maximum size of 4Mib.
3139
+ # Optional. A map of the key-value pairs defining the parameters and properties
3140
+ # of the open source table. Corresponds with Hive metastore table parameters.
3141
+ # Maximum size of 4MiB.
3026
3142
  # Corresponds to the JSON property `parameters`
3027
3143
  # @return [Hash<String,String>]
3028
3144
  attr_accessor :parameters
@@ -3076,8 +3192,8 @@ module Google
3076
3192
 
3077
3193
  # Optional. The connection specifying the credentials to be used to read
3078
3194
  # external storage, such as Azure Blob, Cloud Storage, or S3. The connection_id
3079
- # can have the form "<project\_id>.<location\_id>.<connection\_id>" or "projects/
3080
- # <project\_id>/locations/<location\_id>/connections/<connection\_id>".
3195
+ # can have the form ``project_id`.`location_id`;`connection_id`` or `projects/`
3196
+ # project_id`/locations/`location_id`/connections/`connection_id``.
3081
3197
  # Corresponds to the JSON property `connectionId`
3082
3198
  # @return [String]
3083
3199
  attr_accessor :connection_id
@@ -3087,6 +3203,18 @@ module Google
3087
3203
  # @return [Google::Apis::BigqueryV2::CsvOptions]
3088
3204
  attr_accessor :csv_options
3089
3205
 
3206
+ # Optional. Format used to parse DATE values. Supports C-style and SQL-style
3207
+ # values.
3208
+ # Corresponds to the JSON property `dateFormat`
3209
+ # @return [String]
3210
+ attr_accessor :date_format
3211
+
3212
+ # Optional. Format used to parse DATETIME values. Supports C-style and SQL-style
3213
+ # values.
3214
+ # Corresponds to the JSON property `datetimeFormat`
3215
+ # @return [String]
3216
+ attr_accessor :datetime_format
3217
+
3090
3218
  # Defines the list of possible SQL data types to which the source decimal values
3091
3219
  # are converted. This list and the precision and the scale parameters of the
3092
3220
  # decimal field determine the target type. In the order of NUMERIC, BIGNUMERIC,
@@ -3099,7 +3227,7 @@ module Google
3099
3227
  # precision,scale) is: * (38,9) -> NUMERIC; * (39,9) -> BIGNUMERIC (NUMERIC
3100
3228
  # cannot hold 30 integer digits); * (38,10) -> BIGNUMERIC (NUMERIC cannot hold
3101
3229
  # 10 fractional digits); * (76,38) -> BIGNUMERIC; * (77,38) -> BIGNUMERIC (error
3102
- # if value exeeds supported range). This field cannot contain duplicate types.
3230
+ # if value exceeds supported range). This field cannot contain duplicate types.
3103
3231
  # The order of the types in this field is ignored. For example, ["BIGNUMERIC", "
3104
3232
  # NUMERIC"] is the same as ["NUMERIC", "BIGNUMERIC"] and NUMERIC always takes
3105
3233
  # precedence over BIGNUMERIC. Defaults to ["NUMERIC", "STRING"] for ORC and ["
@@ -3214,6 +3342,25 @@ module Google
3214
3342
  # @return [Array<String>]
3215
3343
  attr_accessor :source_uris
3216
3344
 
3345
+ # Optional. Format used to parse TIME values. Supports C-style and SQL-style
3346
+ # values.
3347
+ # Corresponds to the JSON property `timeFormat`
3348
+ # @return [String]
3349
+ attr_accessor :time_format
3350
+
3351
+ # Optional. Time zone used when parsing timestamp values that do not have
3352
+ # specific time zone information (e.g. 2024-04-20 12:34:56). The expected format
3353
+ # is a IANA timezone string (e.g. America/Los_Angeles).
3354
+ # Corresponds to the JSON property `timeZone`
3355
+ # @return [String]
3356
+ attr_accessor :time_zone
3357
+
3358
+ # Optional. Format used to parse TIMESTAMP values. Supports C-style and SQL-
3359
+ # style values.
3360
+ # Corresponds to the JSON property `timestampFormat`
3361
+ # @return [String]
3362
+ attr_accessor :timestamp_format
3363
+
3217
3364
  def initialize(**args)
3218
3365
  update!(**args)
3219
3366
  end
@@ -3226,6 +3373,8 @@ module Google
3226
3373
  @compression = args[:compression] if args.key?(:compression)
3227
3374
  @connection_id = args[:connection_id] if args.key?(:connection_id)
3228
3375
  @csv_options = args[:csv_options] if args.key?(:csv_options)
3376
+ @date_format = args[:date_format] if args.key?(:date_format)
3377
+ @datetime_format = args[:datetime_format] if args.key?(:datetime_format)
3229
3378
  @decimal_target_types = args[:decimal_target_types] if args.key?(:decimal_target_types)
3230
3379
  @file_set_spec_type = args[:file_set_spec_type] if args.key?(:file_set_spec_type)
3231
3380
  @google_sheets_options = args[:google_sheets_options] if args.key?(:google_sheets_options)
@@ -3241,6 +3390,9 @@ module Google
3241
3390
  @schema = args[:schema] if args.key?(:schema)
3242
3391
  @source_format = args[:source_format] if args.key?(:source_format)
3243
3392
  @source_uris = args[:source_uris] if args.key?(:source_uris)
3393
+ @time_format = args[:time_format] if args.key?(:time_format)
3394
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
3395
+ @timestamp_format = args[:timestamp_format] if args.key?(:timestamp_format)
3244
3396
  end
3245
3397
  end
3246
3398
 
@@ -3270,6 +3422,59 @@ module Google
3270
3422
  end
3271
3423
  end
3272
3424
 
3425
+ # Options for the runtime of the external system.
3426
+ class ExternalRuntimeOptions
3427
+ include Google::Apis::Core::Hashable
3428
+
3429
+ # Optional. Amount of CPU provisioned for a Python UDF container instance. For
3430
+ # more information, see [Configure container limits for Python UDFs](https://
3431
+ # cloud.google.com/bigquery/docs/user-defined-functions-python#configure-
3432
+ # container-limits)
3433
+ # Corresponds to the JSON property `containerCpu`
3434
+ # @return [Float]
3435
+ attr_accessor :container_cpu
3436
+
3437
+ # Optional. Amount of memory provisioned for a Python UDF container instance.
3438
+ # Format: `number``unit` where unit is one of "M", "G", "Mi" and "Gi" (e.g. 1G,
3439
+ # 512Mi). If not specified, the default value is 512Mi. For more information,
3440
+ # see [Configure container limits for Python UDFs](https://cloud.google.com/
3441
+ # bigquery/docs/user-defined-functions-python#configure-container-limits)
3442
+ # Corresponds to the JSON property `containerMemory`
3443
+ # @return [String]
3444
+ attr_accessor :container_memory
3445
+
3446
+ # Optional. Maximum number of rows in each batch sent to the external runtime.
3447
+ # If absent or if 0, BigQuery dynamically decides the number of rows in a batch.
3448
+ # Corresponds to the JSON property `maxBatchingRows`
3449
+ # @return [Fixnum]
3450
+ attr_accessor :max_batching_rows
3451
+
3452
+ # Optional. Fully qualified name of the connection whose service account will be
3453
+ # used to execute the code in the container. Format: ```"projects/`project_id`/
3454
+ # locations/`location_id`/connections/`connection_id`"```
3455
+ # Corresponds to the JSON property `runtimeConnection`
3456
+ # @return [String]
3457
+ attr_accessor :runtime_connection
3458
+
3459
+ # Optional. Language runtime version. Example: `python-3.11`.
3460
+ # Corresponds to the JSON property `runtimeVersion`
3461
+ # @return [String]
3462
+ attr_accessor :runtime_version
3463
+
3464
+ def initialize(**args)
3465
+ update!(**args)
3466
+ end
3467
+
3468
+ # Update properties of this object
3469
+ def update!(**args)
3470
+ @container_cpu = args[:container_cpu] if args.key?(:container_cpu)
3471
+ @container_memory = args[:container_memory] if args.key?(:container_memory)
3472
+ @max_batching_rows = args[:max_batching_rows] if args.key?(:max_batching_rows)
3473
+ @runtime_connection = args[:runtime_connection] if args.key?(:runtime_connection)
3474
+ @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
3475
+ end
3476
+ end
3477
+
3273
3478
  # The external service cost is a portion of the total cost, these costs are not
3274
3479
  # additive with total_bytes_billed. Moreover, this field only track external
3275
3480
  # service costs that will show up as BigQuery costs (e.g. training BigQuery ML
@@ -3283,6 +3488,13 @@ module Google
3283
3488
  class ExternalServiceCost
3284
3489
  include Google::Apis::Core::Hashable
3285
3490
 
3491
+ # The billing method used for the external job. This field is only used when
3492
+ # billed on the services sku, set to "SERVICES_SKU". Otherwise, it is
3493
+ # unspecified for backward compatibility.
3494
+ # Corresponds to the JSON property `billingMethod`
3495
+ # @return [String]
3496
+ attr_accessor :billing_method
3497
+
3286
3498
  # External service cost in terms of bigquery bytes billed.
3287
3499
  # Corresponds to the JSON property `bytesBilled`
3288
3500
  # @return [Fixnum]
@@ -3316,6 +3528,7 @@ module Google
3316
3528
 
3317
3529
  # Update properties of this object
3318
3530
  def update!(**args)
3531
+ @billing_method = args[:billing_method] if args.key?(:billing_method)
3319
3532
  @bytes_billed = args[:bytes_billed] if args.key?(:bytes_billed)
3320
3533
  @bytes_processed = args[:bytes_processed] if args.key?(:bytes_processed)
3321
3534
  @external_service = args[:external_service] if args.key?(:external_service)
@@ -3884,8 +4097,9 @@ module Google
3884
4097
  end
3885
4098
  end
3886
4099
 
3887
- # Training info of a trial in [hyperparameter tuning](/bigquery-ml/docs/
3888
- # reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) models.
4100
+ # Training info of a trial in [hyperparameter tuning](https://cloud.google.com/
4101
+ # bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview)
4102
+ # models.
3889
4103
  class HparamTuningTrial
3890
4104
  include Google::Apis::Core::Hashable
3891
4105
 
@@ -4210,8 +4424,7 @@ module Google
4210
4424
  # com/bigquery/docs/reference/rest/v2/jobs/query) method when used with `
4211
4425
  # JOB_CREATION_OPTIONAL` Job creation mode. For [`jobs.insert`](https://cloud.
4212
4426
  # google.com/bigquery/docs/reference/rest/v2/jobs/insert) method calls it will
4213
- # always be `REQUESTED`. This feature is not yet available. Jobs will always be
4214
- # created.
4427
+ # always be `REQUESTED`.
4215
4428
  # Corresponds to the JSON property `jobCreationReason`
4216
4429
  # @return [Google::Apis::BigqueryV2::JobCreationReason]
4217
4430
  attr_accessor :job_creation_reason
@@ -4359,6 +4572,14 @@ module Google
4359
4572
  # @return [Google::Apis::BigqueryV2::JobConfigurationQuery]
4360
4573
  attr_accessor :query
4361
4574
 
4575
+ # Optional. The reservation that job would use. User can specify a reservation
4576
+ # to execute the job. If reservation is not set, reservation is determined based
4577
+ # on the rules defined by the reservation assignments. The expected format is `
4578
+ # projects/`project`/locations/`location`/reservations/`reservation``.
4579
+ # Corresponds to the JSON property `reservation`
4580
+ # @return [String]
4581
+ attr_accessor :reservation
4582
+
4362
4583
  def initialize(**args)
4363
4584
  update!(**args)
4364
4585
  end
@@ -4373,6 +4594,7 @@ module Google
4373
4594
  @labels = args[:labels] if args.key?(:labels)
4374
4595
  @load = args[:load] if args.key?(:load)
4375
4596
  @query = args[:query] if args.key?(:query)
4597
+ @reservation = args[:reservation] if args.key?(:reservation)
4376
4598
  end
4377
4599
  end
4378
4600
 
@@ -4551,6 +4773,16 @@ module Google
4551
4773
  attr_accessor :create_session
4552
4774
  alias_method :create_session?, :create_session
4553
4775
 
4776
+ # Optional. Date format used for parsing DATE values.
4777
+ # Corresponds to the JSON property `dateFormat`
4778
+ # @return [String]
4779
+ attr_accessor :date_format
4780
+
4781
+ # Optional. Date format used for parsing DATETIME values.
4782
+ # Corresponds to the JSON property `datetimeFormat`
4783
+ # @return [String]
4784
+ attr_accessor :datetime_format
4785
+
4554
4786
  # Defines the list of possible SQL data types to which the source decimal values
4555
4787
  # are converted. This list and the precision and the scale parameters of the
4556
4788
  # decimal field determine the target type. In the order of NUMERIC, BIGNUMERIC,
@@ -4563,7 +4795,7 @@ module Google
4563
4795
  # precision,scale) is: * (38,9) -> NUMERIC; * (39,9) -> BIGNUMERIC (NUMERIC
4564
4796
  # cannot hold 30 integer digits); * (38,10) -> BIGNUMERIC (NUMERIC cannot hold
4565
4797
  # 10 fractional digits); * (76,38) -> BIGNUMERIC; * (77,38) -> BIGNUMERIC (error
4566
- # if value exeeds supported range). This field cannot contain duplicate types.
4798
+ # if value exceeds supported range). This field cannot contain duplicate types.
4567
4799
  # The order of the types in this field is ignored. For example, ["BIGNUMERIC", "
4568
4800
  # NUMERIC"] is the same as ["NUMERIC", "BIGNUMERIC"] and NUMERIC always takes
4569
4801
  # precedence over BIGNUMERIC. Defaults to ["NUMERIC", "STRING"] for ORC and ["
@@ -4572,7 +4804,7 @@ module Google
4572
4804
  # @return [Array<String>]
4573
4805
  attr_accessor :decimal_target_types
4574
4806
 
4575
- # Custom encryption configuration (e.g., Cloud KMS keys)
4807
+ # Configuration for Cloud KMS encryption settings.
4576
4808
  # Corresponds to the JSON property `destinationEncryptionConfiguration`
4577
4809
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
4578
4810
  attr_accessor :destination_encryption_configuration
@@ -4668,6 +4900,17 @@ module Google
4668
4900
  # @return [String]
4669
4901
  attr_accessor :null_marker
4670
4902
 
4903
+ # Optional. A list of strings represented as SQL NULL value in a CSV file.
4904
+ # null_marker and null_markers can't be set at the same time. If null_marker is
4905
+ # set, null_markers has to be not set. If null_markers is set, null_marker has
4906
+ # to be not set. If both null_marker and null_markers are set at the same time,
4907
+ # a user error would be thrown. Any strings listed in null_markers, including
4908
+ # empty string would be interpreted as SQL NULL. This applies to all column
4909
+ # types.
4910
+ # Corresponds to the JSON property `nullMarkers`
4911
+ # @return [Array<String>]
4912
+ attr_accessor :null_markers
4913
+
4671
4914
  # Parquet Options for load and make external tables.
4672
4915
  # Corresponds to the JSON property `parquetOptions`
4673
4916
  # @return [Google::Apis::BigqueryV2::ParquetOptions]
@@ -4760,6 +5003,14 @@ module Google
4760
5003
  # @return [Fixnum]
4761
5004
  attr_accessor :skip_leading_rows
4762
5005
 
5006
+ # Optional. Controls the strategy used to match loaded columns to the schema. If
5007
+ # not set, a sensible default is chosen based on how the schema is provided. If
5008
+ # autodetect is used, then columns are matched by name. Otherwise, columns are
5009
+ # matched by position. This is done to keep the behavior backward-compatible.
5010
+ # Corresponds to the JSON property `sourceColumnMatch`
5011
+ # @return [String]
5012
+ attr_accessor :source_column_match
5013
+
4763
5014
  # Optional. The format of the data files. For CSV files, specify "CSV". For
4764
5015
  # datastore backups, specify "DATASTORE_BACKUP". For newline-delimited JSON,
4765
5016
  # specify "NEWLINE_DELIMITED_JSON". For Avro, specify "AVRO". For parquet,
@@ -4779,12 +5030,28 @@ module Google
4779
5030
  # @return [Array<String>]
4780
5031
  attr_accessor :source_uris
4781
5032
 
5033
+ # Optional. Date format used for parsing TIME values.
5034
+ # Corresponds to the JSON property `timeFormat`
5035
+ # @return [String]
5036
+ attr_accessor :time_format
5037
+
4782
5038
  # Time-based partitioning specification for the destination table. Only one of
4783
5039
  # timePartitioning and rangePartitioning should be specified.
4784
5040
  # Corresponds to the JSON property `timePartitioning`
4785
5041
  # @return [Google::Apis::BigqueryV2::TimePartitioning]
4786
5042
  attr_accessor :time_partitioning
4787
5043
 
5044
+ # Optional. Default time zone that will apply when parsing timestamp values that
5045
+ # have no specific time zone.
5046
+ # Corresponds to the JSON property `timeZone`
5047
+ # @return [String]
5048
+ attr_accessor :time_zone
5049
+
5050
+ # Optional. Date format used for parsing TIMESTAMP values.
5051
+ # Corresponds to the JSON property `timestampFormat`
5052
+ # @return [String]
5053
+ attr_accessor :timestamp_format
5054
+
4788
5055
  # Optional. If sourceFormat is set to "AVRO", indicates whether to interpret
4789
5056
  # logical types as the corresponding BigQuery data type (for example, TIMESTAMP),
4790
5057
  # instead of using the raw type (for example, INTEGER).
@@ -4796,12 +5063,14 @@ module Google
4796
5063
  # Optional. Specifies the action that occurs if the destination table already
4797
5064
  # exists. The following values are supported: * WRITE_TRUNCATE: If the table
4798
5065
  # already exists, BigQuery overwrites the data, removes the constraints and uses
4799
- # the schema from the load job. * WRITE_APPEND: If the table already exists,
4800
- # BigQuery appends the data to the table. * WRITE_EMPTY: If the table already
4801
- # exists and contains data, a 'duplicate' error is returned in the job result.
4802
- # The default value is WRITE_APPEND. Each action is atomic and only occurs if
4803
- # BigQuery is able to complete the job successfully. Creation, truncation and
4804
- # append actions occur as one atomic update upon job completion.
5066
+ # the schema from the load job. * WRITE_TRUNCATE_DATA: If the table already
5067
+ # exists, BigQuery overwrites the data, but keeps the constraints and schema of
5068
+ # the existing table. * WRITE_APPEND: If the table already exists, BigQuery
5069
+ # appends the data to the table. * WRITE_EMPTY: If the table already exists and
5070
+ # contains data, a 'duplicate' error is returned in the job result. The default
5071
+ # value is WRITE_APPEND. Each action is atomic and only occurs if BigQuery is
5072
+ # able to complete the job successfully. Creation, truncation and append actions
5073
+ # occur as one atomic update upon job completion.
4805
5074
  # Corresponds to the JSON property `writeDisposition`
4806
5075
  # @return [String]
4807
5076
  attr_accessor :write_disposition
@@ -4821,6 +5090,8 @@ module Google
4821
5090
  @copy_files_only = args[:copy_files_only] if args.key?(:copy_files_only)
4822
5091
  @create_disposition = args[:create_disposition] if args.key?(:create_disposition)
4823
5092
  @create_session = args[:create_session] if args.key?(:create_session)
5093
+ @date_format = args[:date_format] if args.key?(:date_format)
5094
+ @datetime_format = args[:datetime_format] if args.key?(:datetime_format)
4824
5095
  @decimal_target_types = args[:decimal_target_types] if args.key?(:decimal_target_types)
4825
5096
  @destination_encryption_configuration = args[:destination_encryption_configuration] if args.key?(:destination_encryption_configuration)
4826
5097
  @destination_table = args[:destination_table] if args.key?(:destination_table)
@@ -4833,6 +5104,7 @@ module Google
4833
5104
  @json_extension = args[:json_extension] if args.key?(:json_extension)
4834
5105
  @max_bad_records = args[:max_bad_records] if args.key?(:max_bad_records)
4835
5106
  @null_marker = args[:null_marker] if args.key?(:null_marker)
5107
+ @null_markers = args[:null_markers] if args.key?(:null_markers)
4836
5108
  @parquet_options = args[:parquet_options] if args.key?(:parquet_options)
4837
5109
  @preserve_ascii_control_characters = args[:preserve_ascii_control_characters] if args.key?(:preserve_ascii_control_characters)
4838
5110
  @projection_fields = args[:projection_fields] if args.key?(:projection_fields)
@@ -4844,9 +5116,13 @@ module Google
4844
5116
  @schema_inline_format = args[:schema_inline_format] if args.key?(:schema_inline_format)
4845
5117
  @schema_update_options = args[:schema_update_options] if args.key?(:schema_update_options)
4846
5118
  @skip_leading_rows = args[:skip_leading_rows] if args.key?(:skip_leading_rows)
5119
+ @source_column_match = args[:source_column_match] if args.key?(:source_column_match)
4847
5120
  @source_format = args[:source_format] if args.key?(:source_format)
4848
5121
  @source_uris = args[:source_uris] if args.key?(:source_uris)
5122
+ @time_format = args[:time_format] if args.key?(:time_format)
4849
5123
  @time_partitioning = args[:time_partitioning] if args.key?(:time_partitioning)
5124
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
5125
+ @timestamp_format = args[:timestamp_format] if args.key?(:timestamp_format)
4850
5126
  @use_avro_logical_types = args[:use_avro_logical_types] if args.key?(:use_avro_logical_types)
4851
5127
  @write_disposition = args[:write_disposition] if args.key?(:write_disposition)
4852
5128
  end
@@ -4905,16 +5181,12 @@ module Google
4905
5181
  attr_accessor :create_session
4906
5182
  alias_method :create_session?, :create_session
4907
5183
 
4908
- # Optional. Specifies the default dataset to use for unqualified table names in
4909
- # the query. This setting does not alter behavior of unqualified dataset names.
4910
- # Setting the system variable `@@dataset_id` achieves the same behavior. See
4911
- # https://cloud.google.com/bigquery/docs/reference/system-variables for more
4912
- # information on system variables.
5184
+ # Identifier for a dataset.
4913
5185
  # Corresponds to the JSON property `defaultDataset`
4914
5186
  # @return [Google::Apis::BigqueryV2::DatasetReference]
4915
5187
  attr_accessor :default_dataset
4916
5188
 
4917
- # Custom encryption configuration (e.g., Cloud KMS keys)
5189
+ # Configuration for Cloud KMS encryption settings.
4918
5190
  # Corresponds to the JSON property `destinationEncryptionConfiguration`
4919
5191
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
4920
5192
  attr_accessor :destination_encryption_configuration
@@ -5054,16 +5326,27 @@ module Google
5054
5326
  # Optional. Specifies the action that occurs if the destination table already
5055
5327
  # exists. The following values are supported: * WRITE_TRUNCATE: If the table
5056
5328
  # already exists, BigQuery overwrites the data, removes the constraints, and
5057
- # uses the schema from the query result. * WRITE_APPEND: If the table already
5058
- # exists, BigQuery appends the data to the table. * WRITE_EMPTY: If the table
5059
- # already exists and contains data, a 'duplicate' error is returned in the job
5060
- # result. The default value is WRITE_EMPTY. Each action is atomic and only
5061
- # occurs if BigQuery is able to complete the job successfully. Creation,
5062
- # truncation and append actions occur as one atomic update upon job completion.
5329
+ # uses the schema from the query result. * WRITE_TRUNCATE_DATA: If the table
5330
+ # already exists, BigQuery overwrites the data, but keeps the constraints and
5331
+ # schema of the existing table. * WRITE_APPEND: If the table already exists,
5332
+ # BigQuery appends the data to the table. * WRITE_EMPTY: If the table already
5333
+ # exists and contains data, a 'duplicate' error is returned in the job result.
5334
+ # The default value is WRITE_EMPTY. Each action is atomic and only occurs if
5335
+ # BigQuery is able to complete the job successfully. Creation, truncation and
5336
+ # append actions occur as one atomic update upon job completion.
5063
5337
  # Corresponds to the JSON property `writeDisposition`
5064
5338
  # @return [String]
5065
5339
  attr_accessor :write_disposition
5066
5340
 
5341
+ # Optional. This is only supported for a SELECT query using a temporary table.
5342
+ # If set, the query is allowed to write results incrementally to the temporary
5343
+ # result table. This may incur a performance penalty. This option cannot be used
5344
+ # with Legacy SQL. This feature is not yet available.
5345
+ # Corresponds to the JSON property `writeIncrementalResults`
5346
+ # @return [Boolean]
5347
+ attr_accessor :write_incremental_results
5348
+ alias_method :write_incremental_results?, :write_incremental_results
5349
+
5067
5350
  def initialize(**args)
5068
5351
  update!(**args)
5069
5352
  end
@@ -5097,6 +5380,7 @@ module Google
5097
5380
  @use_query_cache = args[:use_query_cache] if args.key?(:use_query_cache)
5098
5381
  @user_defined_function_resources = args[:user_defined_function_resources] if args.key?(:user_defined_function_resources)
5099
5382
  @write_disposition = args[:write_disposition] if args.key?(:write_disposition)
5383
+ @write_incremental_results = args[:write_incremental_results] if args.key?(:write_incremental_results)
5100
5384
  end
5101
5385
  end
5102
5386
 
@@ -5116,7 +5400,7 @@ module Google
5116
5400
  # @return [String]
5117
5401
  attr_accessor :create_disposition
5118
5402
 
5119
- # Custom encryption configuration (e.g., Cloud KMS keys).
5403
+ # Configuration for Cloud KMS encryption settings.
5120
5404
  # Corresponds to the JSON property `destinationEncryptionConfiguration`
5121
5405
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
5122
5406
  attr_accessor :destination_encryption_configuration
@@ -5181,8 +5465,7 @@ module Google
5181
5465
  # com/bigquery/docs/reference/rest/v2/jobs/query) method when used with `
5182
5466
  # JOB_CREATION_OPTIONAL` Job creation mode. For [`jobs.insert`](https://cloud.
5183
5467
  # google.com/bigquery/docs/reference/rest/v2/jobs/insert) method calls it will
5184
- # always be `REQUESTED`. This feature is not yet available. Jobs will always be
5185
- # created.
5468
+ # always be `REQUESTED`.
5186
5469
  class JobCreationReason
5187
5470
  include Google::Apis::Core::Hashable
5188
5471
 
@@ -5384,6 +5667,12 @@ module Google
5384
5667
  # @return [Google::Apis::BigqueryV2::DataMaskingStatistics]
5385
5668
  attr_accessor :data_masking_statistics
5386
5669
 
5670
+ # Output only. Name of edition corresponding to the reservation for this job at
5671
+ # the time of this update.
5672
+ # Corresponds to the JSON property `edition`
5673
+ # @return [String]
5674
+ attr_accessor :edition
5675
+
5387
5676
  # Output only. End time of this job, in milliseconds since the epoch. This field
5388
5677
  # will be present whenever a job is in the DONE state.
5389
5678
  # Corresponds to the JSON property `endTime`
@@ -5486,6 +5775,7 @@ module Google
5486
5775
  @copy = args[:copy] if args.key?(:copy)
5487
5776
  @creation_time = args[:creation_time] if args.key?(:creation_time)
5488
5777
  @data_masking_statistics = args[:data_masking_statistics] if args.key?(:data_masking_statistics)
5778
+ @edition = args[:edition] if args.key?(:edition)
5489
5779
  @end_time = args[:end_time] if args.key?(:end_time)
5490
5780
  @extract = args[:extract] if args.key?(:extract)
5491
5781
  @final_execution_duration_ms = args[:final_execution_duration_ms] if args.key?(:final_execution_duration_ms)
@@ -5557,7 +5847,7 @@ module Google
5557
5847
  attr_accessor :cache_hit
5558
5848
  alias_method :cache_hit?, :cache_hit
5559
5849
 
5560
- # Output only. Referenced dataset for DCL statement.
5850
+ # Identifier for a dataset.
5561
5851
  # Corresponds to the JSON property `dclTargetDataset`
5562
5852
  # @return [Google::Apis::BigqueryV2::DatasetReference]
5563
5853
  attr_accessor :dcl_target_dataset
@@ -5590,8 +5880,7 @@ module Google
5590
5880
  # @return [String]
5591
5881
  attr_accessor :ddl_operation_performed
5592
5882
 
5593
- # Output only. The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA(
5594
- # dataset) queries.
5883
+ # Identifier for a dataset.
5595
5884
  # Corresponds to the JSON property `ddlTargetDataset`
5596
5885
  # @return [Google::Apis::BigqueryV2::DatasetReference]
5597
5886
  attr_accessor :ddl_target_dataset
@@ -5644,7 +5933,7 @@ module Google
5644
5933
  # @return [Google::Apis::BigqueryV2::MaterializedViewStatistics]
5645
5934
  attr_accessor :materialized_view_statistics
5646
5935
 
5647
- # Statistics for metadata caching in BigLake tables.
5936
+ # Statistics for metadata caching in queried tables.
5648
5937
  # Corresponds to the JSON property `metadataCacheStatistics`
5649
5938
  # @return [Google::Apis::BigqueryV2::MetadataCacheStatistics]
5650
5939
  attr_accessor :metadata_cache_statistics
@@ -5695,8 +5984,7 @@ module Google
5695
5984
  # @return [Array<Google::Apis::BigqueryV2::RoutineReference>]
5696
5985
  attr_accessor :referenced_routines
5697
5986
 
5698
- # Output only. Referenced tables for the job. Queries that reference more than
5699
- # 50 tables will not have a complete list.
5987
+ # Output only. Referenced tables for the job.
5700
5988
  # Corresponds to the JSON property `referencedTables`
5701
5989
  # @return [Array<Google::Apis::BigqueryV2::TableReference>]
5702
5990
  attr_accessor :referenced_tables
@@ -5723,82 +6011,94 @@ module Google
5723
6011
  attr_accessor :spark_statistics
5724
6012
 
5725
6013
  # Output only. The type of query statement, if valid. Possible values: * `SELECT`
5726
- # : [`SELECT`](/bigquery/docs/reference/standard-sql/query-syntax#select_list)
5727
- # statement. * `ASSERT`: [`ASSERT`](/bigquery/docs/reference/standard-sql/
5728
- # debugging-statements#assert) statement. * `INSERT`: [`INSERT`](/bigquery/docs/
6014
+ # : [`SELECT`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6015
+ # query-syntax#select_list) statement. * `ASSERT`: [`ASSERT`](https://cloud.
6016
+ # google.com/bigquery/docs/reference/standard-sql/debugging-statements#assert)
6017
+ # statement. * `INSERT`: [`INSERT`](https://cloud.google.com/bigquery/docs/
5729
6018
  # reference/standard-sql/dml-syntax#insert_statement) statement. * `UPDATE`: [`
5730
- # UPDATE`](/bigquery/docs/reference/standard-sql/query-syntax#update_statement)
5731
- # statement. * `DELETE`: [`DELETE`](/bigquery/docs/reference/standard-sql/data-
5732
- # manipulation-language) statement. * `MERGE`: [`MERGE`](/bigquery/docs/
6019
+ # UPDATE`](https://cloud.google.com/bigquery/docs/reference/standard-sql/dml-
6020
+ # syntax#update_statement) statement. * `DELETE`: [`DELETE`](https://cloud.
6021
+ # google.com/bigquery/docs/reference/standard-sql/data-manipulation-language)
6022
+ # statement. * `MERGE`: [`MERGE`](https://cloud.google.com/bigquery/docs/
5733
6023
  # reference/standard-sql/data-manipulation-language) statement. * `CREATE_TABLE`:
5734
- # [`CREATE TABLE`](/bigquery/docs/reference/standard-sql/data-definition-
5735
- # language#create_table_statement) statement, without `AS SELECT`. * `
5736
- # CREATE_TABLE_AS_SELECT`: [`CREATE TABLE AS SELECT`](/bigquery/docs/reference/
5737
- # standard-sql/data-definition-language#query_statement) statement. * `
5738
- # CREATE_VIEW`: [`CREATE VIEW`](/bigquery/docs/reference/standard-sql/data-
5739
- # definition-language#create_view_statement) statement. * `CREATE_MODEL`: [`
5740
- # CREATE MODEL`](/bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-
6024
+ # [`CREATE TABLE`](https://cloud.google.com/bigquery/docs/reference/standard-
6025
+ # sql/data-definition-language#create_table_statement) statement, without `AS
6026
+ # SELECT`. * `CREATE_TABLE_AS_SELECT`: [`CREATE TABLE AS SELECT`](https://cloud.
6027
+ # google.com/bigquery/docs/reference/standard-sql/data-definition-language#
6028
+ # create_table_statement) statement. * `CREATE_VIEW`: [`CREATE VIEW`](https://
6029
+ # cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#
6030
+ # create_view_statement) statement. * `CREATE_MODEL`: [`CREATE MODEL`](https://
6031
+ # cloud.google.com/bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-
5741
6032
  # create#create_model_statement) statement. * `CREATE_MATERIALIZED_VIEW`: [`
5742
- # CREATE MATERIALIZED VIEW`](/bigquery/docs/reference/standard-sql/data-
5743
- # definition-language#create_materialized_view_statement) statement. * `
5744
- # CREATE_FUNCTION`: [`CREATE FUNCTION`](/bigquery/docs/reference/standard-sql/
5745
- # data-definition-language#create_function_statement) statement. * `
5746
- # CREATE_TABLE_FUNCTION`: [`CREATE TABLE FUNCTION`](/bigquery/docs/reference/
5747
- # standard-sql/data-definition-language#create_table_function_statement)
5748
- # statement. * `CREATE_PROCEDURE`: [`CREATE PROCEDURE`](/bigquery/docs/reference/
5749
- # standard-sql/data-definition-language#create_procedure) statement. * `
5750
- # CREATE_ROW_ACCESS_POLICY`: [`CREATE ROW ACCESS POLICY`](/bigquery/docs/
5751
- # reference/standard-sql/data-definition-language#
6033
+ # CREATE MATERIALIZED VIEW`](https://cloud.google.com/bigquery/docs/reference/
6034
+ # standard-sql/data-definition-language#create_materialized_view_statement)
6035
+ # statement. * `CREATE_FUNCTION`: [`CREATE FUNCTION`](https://cloud.google.com/
6036
+ # bigquery/docs/reference/standard-sql/data-definition-language#
6037
+ # create_function_statement) statement. * `CREATE_TABLE_FUNCTION`: [`CREATE
6038
+ # TABLE FUNCTION`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6039
+ # data-definition-language#create_table_function_statement) statement. * `
6040
+ # CREATE_PROCEDURE`: [`CREATE PROCEDURE`](https://cloud.google.com/bigquery/docs/
6041
+ # reference/standard-sql/data-definition-language#create_procedure) statement. *
6042
+ # `CREATE_ROW_ACCESS_POLICY`: [`CREATE ROW ACCESS POLICY`](https://cloud.google.
6043
+ # com/bigquery/docs/reference/standard-sql/data-definition-language#
5752
6044
  # create_row_access_policy_statement) statement. * `CREATE_SCHEMA`: [`CREATE
5753
- # SCHEMA`](/bigquery/docs/reference/standard-sql/data-definition-language#
5754
- # create_schema_statement) statement. * `CREATE_SNAPSHOT_TABLE`: [`CREATE
5755
- # SNAPSHOT TABLE`](/bigquery/docs/reference/standard-sql/data-definition-
5756
- # language#create_snapshot_table_statement) statement. * `CREATE_SEARCH_INDEX`: [
5757
- # `CREATE SEARCH INDEX`](/bigquery/docs/reference/standard-sql/data-definition-
5758
- # language#create_search_index_statement) statement. * `DROP_TABLE`: [`DROP
5759
- # TABLE`](/bigquery/docs/reference/standard-sql/data-definition-language#
5760
- # drop_table_statement) statement. * `DROP_EXTERNAL_TABLE`: [`DROP EXTERNAL
5761
- # TABLE`](/bigquery/docs/reference/standard-sql/data-definition-language#
5762
- # drop_external_table_statement) statement. * `DROP_VIEW`: [`DROP VIEW`](/
6045
+ # SCHEMA`](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-
6046
+ # definition-language#create_schema_statement) statement. * `
6047
+ # CREATE_SNAPSHOT_TABLE`: [`CREATE SNAPSHOT TABLE`](https://cloud.google.com/
5763
6048
  # bigquery/docs/reference/standard-sql/data-definition-language#
5764
- # drop_view_statement) statement. * `DROP_MODEL`: [`DROP MODEL`](/bigquery-ml/
5765
- # docs/reference/standard-sql/bigqueryml-syntax-drop-model) statement. * `
5766
- # DROP_MATERIALIZED_VIEW`: [`DROP MATERIALIZED VIEW`](/bigquery/docs/reference/
5767
- # standard-sql/data-definition-language#drop_materialized_view_statement)
5768
- # statement. * `DROP_FUNCTION` : [`DROP FUNCTION`](/bigquery/docs/reference/
5769
- # standard-sql/data-definition-language#drop_function_statement) statement. * `
5770
- # DROP_TABLE_FUNCTION` : [`DROP TABLE FUNCTION`](/bigquery/docs/reference/
5771
- # standard-sql/data-definition-language#drop_table_function) statement. * `
5772
- # DROP_PROCEDURE`: [`DROP PROCEDURE`](/bigquery/docs/reference/standard-sql/data-
5773
- # definition-language#drop_procedure_statement) statement. * `DROP_SEARCH_INDEX`:
5774
- # [`DROP SEARCH INDEX`](/bigquery/docs/reference/standard-sql/data-definition-
5775
- # language#drop_search_index) statement. * `DROP_SCHEMA`: [`DROP SCHEMA`](/
6049
+ # create_snapshot_table_statement) statement. * `CREATE_SEARCH_INDEX`: [`CREATE
6050
+ # SEARCH INDEX`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6051
+ # data-definition-language#create_search_index_statement) statement. * `
6052
+ # DROP_TABLE`: [`DROP TABLE`](https://cloud.google.com/bigquery/docs/reference/
6053
+ # standard-sql/data-definition-language#drop_table_statement) statement. * `
6054
+ # DROP_EXTERNAL_TABLE`: [`DROP EXTERNAL TABLE`](https://cloud.google.com/
5776
6055
  # bigquery/docs/reference/standard-sql/data-definition-language#
5777
- # drop_schema_statement) statement. * `DROP_SNAPSHOT_TABLE`: [`DROP SNAPSHOT
5778
- # TABLE`](/bigquery/docs/reference/standard-sql/data-definition-language#
5779
- # drop_snapshot_table_statement) statement. * `DROP_ROW_ACCESS_POLICY`: [`DROP [
5780
- # ALL] ROW ACCESS POLICY|POLICIES`](/bigquery/docs/reference/standard-sql/data-
5781
- # definition-language#drop_row_access_policy_statement) statement. * `
5782
- # ALTER_TABLE`: [`ALTER TABLE`](/bigquery/docs/reference/standard-sql/data-
5783
- # definition-language#alter_table_set_options_statement) statement. * `
5784
- # ALTER_VIEW`: [`ALTER VIEW`](/bigquery/docs/reference/standard-sql/data-
6056
+ # drop_external_table_statement) statement. * `DROP_VIEW`: [`DROP VIEW`](https://
6057
+ # cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#
6058
+ # drop_view_statement) statement. * `DROP_MODEL`: [`DROP MODEL`](https://cloud.
6059
+ # google.com/bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-drop-
6060
+ # model) statement. * `DROP_MATERIALIZED_VIEW`: [`DROP MATERIALIZED VIEW`](https:
6061
+ # //cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-
6062
+ # language#drop_materialized_view_statement) statement. * `DROP_FUNCTION` : [`
6063
+ # DROP FUNCTION`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6064
+ # data-definition-language#drop_function_statement) statement. * `
6065
+ # DROP_TABLE_FUNCTION` : [`DROP TABLE FUNCTION`](https://cloud.google.com/
6066
+ # bigquery/docs/reference/standard-sql/data-definition-language#
6067
+ # drop_table_function) statement. * `DROP_PROCEDURE`: [`DROP PROCEDURE`](https://
6068
+ # cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#
6069
+ # drop_procedure_statement) statement. * `DROP_SEARCH_INDEX`: [`DROP SEARCH
6070
+ # INDEX`](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-
6071
+ # definition-language#drop_search_index) statement. * `DROP_SCHEMA`: [`DROP
6072
+ # SCHEMA`](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-
6073
+ # definition-language#drop_schema_statement) statement. * `DROP_SNAPSHOT_TABLE`:
6074
+ # [`DROP SNAPSHOT TABLE`](https://cloud.google.com/bigquery/docs/reference/
6075
+ # standard-sql/data-definition-language#drop_snapshot_table_statement) statement.
6076
+ # * `DROP_ROW_ACCESS_POLICY`: [`DROP [ALL] ROW ACCESS POLICY|POLICIES`](https://
6077
+ # cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#
6078
+ # drop_row_access_policy_statement) statement. * `ALTER_TABLE`: [`ALTER TABLE`](
6079
+ # https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-
6080
+ # language#alter_table_set_options_statement) statement. * `ALTER_VIEW`: [`ALTER
6081
+ # VIEW`](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-
5785
6082
  # definition-language#alter_view_set_options_statement) statement. * `
5786
- # ALTER_MATERIALIZED_VIEW`: [`ALTER MATERIALIZED VIEW`](/bigquery/docs/reference/
5787
- # standard-sql/data-definition-language#
6083
+ # ALTER_MATERIALIZED_VIEW`: [`ALTER MATERIALIZED VIEW`](https://cloud.google.com/
6084
+ # bigquery/docs/reference/standard-sql/data-definition-language#
5788
6085
  # alter_materialized_view_set_options_statement) statement. * `ALTER_SCHEMA`: [`
5789
- # ALTER SCHEMA`](/bigquery/docs/reference/standard-sql/data-definition-language#
5790
- # aalter_schema_set_options_statement) statement. * `SCRIPT`: [`SCRIPT`](/
5791
- # bigquery/docs/reference/standard-sql/procedural-language). * `TRUNCATE_TABLE`:
5792
- # [`TRUNCATE TABLE`](/bigquery/docs/reference/standard-sql/dml-syntax#
6086
+ # ALTER SCHEMA`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6087
+ # data-definition-language#alter_schema_set_options_statement) statement. * `
6088
+ # SCRIPT`: [`SCRIPT`](https://cloud.google.com/bigquery/docs/reference/standard-
6089
+ # sql/procedural-language). * `TRUNCATE_TABLE`: [`TRUNCATE TABLE`](https://cloud.
6090
+ # google.com/bigquery/docs/reference/standard-sql/dml-syntax#
5793
6091
  # truncate_table_statement) statement. * `CREATE_EXTERNAL_TABLE`: [`CREATE
5794
- # EXTERNAL TABLE`](/bigquery/docs/reference/standard-sql/data-definition-
5795
- # language#create_external_table_statement) statement. * `EXPORT_DATA`: [`EXPORT
5796
- # DATA`](/bigquery/docs/reference/standard-sql/other-statements#
5797
- # export_data_statement) statement. * `EXPORT_MODEL`: [`EXPORT MODEL`](/bigquery-
5798
- # ml/docs/reference/standard-sql/bigqueryml-syntax-export-model) statement. * `
5799
- # LOAD_DATA`: [`LOAD DATA`](/bigquery/docs/reference/standard-sql/other-
5800
- # statements#load_data_statement) statement. * `CALL`: [`CALL`](/bigquery/docs/
5801
- # reference/standard-sql/procedural-language#call) statement.
6092
+ # EXTERNAL TABLE`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6093
+ # data-definition-language#create_external_table_statement) statement. * `
6094
+ # EXPORT_DATA`: [`EXPORT DATA`](https://cloud.google.com/bigquery/docs/reference/
6095
+ # standard-sql/other-statements#export_data_statement) statement. * `
6096
+ # EXPORT_MODEL`: [`EXPORT MODEL`](https://cloud.google.com/bigquery-ml/docs/
6097
+ # reference/standard-sql/bigqueryml-syntax-export-model) statement. * `LOAD_DATA`
6098
+ # : [`LOAD DATA`](https://cloud.google.com/bigquery/docs/reference/standard-sql/
6099
+ # other-statements#load_data_statement) statement. * `CALL`: [`CALL`](https://
6100
+ # cloud.google.com/bigquery/docs/reference/standard-sql/procedural-language#call)
6101
+ # statement.
5802
6102
  # Corresponds to the JSON property `statementType`
5803
6103
  # @return [String]
5804
6104
  attr_accessor :statement_type
@@ -5836,6 +6136,14 @@ module Google
5836
6136
  # @return [Fixnum]
5837
6137
  attr_accessor :total_partitions_processed
5838
6138
 
6139
+ # Output only. Total slot-milliseconds for the job that run on external services
6140
+ # and billed on the service SKU. This field is only populated for jobs that have
6141
+ # external service costs, and is the total of the usage for costs whose billing
6142
+ # method is "SERVICES_SKU".
6143
+ # Corresponds to the JSON property `totalServicesSkuSlotMs`
6144
+ # @return [Fixnum]
6145
+ attr_accessor :total_services_sku_slot_ms
6146
+
5839
6147
  # Output only. Slot-milliseconds for the job.
5840
6148
  # Corresponds to the JSON property `totalSlotMs`
5841
6149
  # @return [Fixnum]
@@ -5904,6 +6212,7 @@ module Google
5904
6212
  @total_bytes_processed = args[:total_bytes_processed] if args.key?(:total_bytes_processed)
5905
6213
  @total_bytes_processed_accuracy = args[:total_bytes_processed_accuracy] if args.key?(:total_bytes_processed_accuracy)
5906
6214
  @total_partitions_processed = args[:total_partitions_processed] if args.key?(:total_partitions_processed)
6215
+ @total_services_sku_slot_ms = args[:total_services_sku_slot_ms] if args.key?(:total_services_sku_slot_ms)
5907
6216
  @total_slot_ms = args[:total_slot_ms] if args.key?(:total_slot_ms)
5908
6217
  @transferred_bytes = args[:transferred_bytes] if args.key?(:transferred_bytes)
5909
6218
  @undeclared_query_parameters = args[:undeclared_query_parameters] if args.key?(:undeclared_query_parameters)
@@ -6161,7 +6470,7 @@ module Google
6161
6470
  class LinkedDatasetSource
6162
6471
  include Google::Apis::Core::Hashable
6163
6472
 
6164
- # The source dataset reference contains project numbers and not project ids.
6473
+ # Identifier for a dataset.
6165
6474
  # Corresponds to the JSON property `sourceDataset`
6166
6475
  # @return [Google::Apis::BigqueryV2::DatasetReference]
6167
6476
  attr_accessor :source_dataset
@@ -6381,7 +6690,9 @@ module Google
6381
6690
  include Google::Apis::Core::Hashable
6382
6691
 
6383
6692
  # Optional. This option declares the intention to construct a materialized view
6384
- # that isn't refreshed incrementally.
6693
+ # that isn't refreshed incrementally. Non-incremental materialized views support
6694
+ # an expanded range of SQL queries. The `allow_non_incremental_definition`
6695
+ # option can't be changed after the materialized view is created.
6385
6696
  # Corresponds to the JSON property `allowNonIncrementalDefinition`
6386
6697
  # @return [Boolean]
6387
6698
  attr_accessor :allow_non_incremental_definition
@@ -6481,7 +6792,7 @@ module Google
6481
6792
  end
6482
6793
  end
6483
6794
 
6484
- # Statistics for metadata caching in BigLake tables.
6795
+ # Statistics for metadata caching in queried tables.
6485
6796
  class MetadataCacheStatistics
6486
6797
  include Google::Apis::Core::Hashable
6487
6798
 
@@ -6504,15 +6815,16 @@ module Google
6504
6815
  class MlStatistics
6505
6816
  include Google::Apis::Core::Hashable
6506
6817
 
6507
- # Output only. Trials of a [hyperparameter tuning job](/bigquery-ml/docs/
6508
- # reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) sorted by
6509
- # trial_id.
6818
+ # Output only. Trials of a [hyperparameter tuning job](https://cloud.google.com/
6819
+ # bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview)
6820
+ # sorted by trial_id.
6510
6821
  # Corresponds to the JSON property `hparamTrials`
6511
6822
  # @return [Array<Google::Apis::BigqueryV2::HparamTuningTrial>]
6512
6823
  attr_accessor :hparam_trials
6513
6824
 
6514
- # Results for all completed iterations. Empty for [hyperparameter tuning jobs](/
6515
- # bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview).
6825
+ # Results for all completed iterations. Empty for [hyperparameter tuning jobs](
6826
+ # https://cloud.google.com/bigquery-ml/docs/reference/standard-sql/bigqueryml-
6827
+ # syntax-hp-tuning-overview).
6516
6828
  # Corresponds to the JSON property `iterationResults`
6517
6829
  # @return [Array<Google::Apis::BigqueryV2::IterationResult>]
6518
6830
  attr_accessor :iteration_results
@@ -6564,11 +6876,12 @@ module Google
6564
6876
  attr_accessor :creation_time
6565
6877
 
6566
6878
  # Output only. The default trial_id to use in TVFs when the trial_id is not
6567
- # passed in. For single-objective [hyperparameter tuning](/bigquery-ml/docs/
6568
- # reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) models, this is
6569
- # the best trial ID. For multi-objective [hyperparameter tuning](/bigquery-ml/
6570
- # docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) models, this
6571
- # is the smallest trial ID among all Pareto optimal trials.
6879
+ # passed in. For single-objective [hyperparameter tuning](https://cloud.google.
6880
+ # com/bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-
6881
+ # overview) models, this is the best trial ID. For multi-objective [
6882
+ # hyperparameter tuning](https://cloud.google.com/bigquery-ml/docs/reference/
6883
+ # standard-sql/bigqueryml-syntax-hp-tuning-overview) models, this is the
6884
+ # smallest trial ID among all Pareto optimal trials.
6572
6885
  # Corresponds to the JSON property `defaultTrialId`
6573
6886
  # @return [Fixnum]
6574
6887
  attr_accessor :default_trial_id
@@ -6578,10 +6891,7 @@ module Google
6578
6891
  # @return [String]
6579
6892
  attr_accessor :description
6580
6893
 
6581
- # Custom encryption configuration (e.g., Cloud KMS keys). This shows the
6582
- # encryption configuration of the model data while stored in BigQuery storage.
6583
- # This field can be used with PatchModel to update encryption key for an already
6584
- # encrypted model.
6894
+ # Configuration for Cloud KMS encryption settings.
6585
6895
  # Corresponds to the JSON property `encryptionConfiguration`
6586
6896
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
6587
6897
  attr_accessor :encryption_configuration
@@ -6616,8 +6926,9 @@ module Google
6616
6926
  # @return [Google::Apis::BigqueryV2::HparamSearchSpaces]
6617
6927
  attr_accessor :hparam_search_spaces
6618
6928
 
6619
- # Output only. Trials of a [hyperparameter tuning](/bigquery-ml/docs/reference/
6620
- # standard-sql/bigqueryml-syntax-hp-tuning-overview) model sorted by trial_id.
6929
+ # Output only. Trials of a [hyperparameter tuning](https://cloud.google.com/
6930
+ # bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview)
6931
+ # model sorted by trial_id.
6621
6932
  # Corresponds to the JSON property `hparamTrials`
6622
6933
  # @return [Array<Google::Apis::BigqueryV2::HparamTuningTrial>]
6623
6934
  attr_accessor :hparam_trials
@@ -6659,11 +6970,12 @@ module Google
6659
6970
  # @return [String]
6660
6971
  attr_accessor :model_type
6661
6972
 
6662
- # Output only. For single-objective [hyperparameter tuning](/bigquery-ml/docs/
6663
- # reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) models, it only
6664
- # contains the best trial. For multi-objective [hyperparameter tuning](/bigquery-
6665
- # ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-overview) models,
6666
- # it contains all Pareto optimal trials sorted by trial_id.
6973
+ # Output only. For single-objective [hyperparameter tuning](https://cloud.google.
6974
+ # com/bigquery-ml/docs/reference/standard-sql/bigqueryml-syntax-hp-tuning-
6975
+ # overview) models, it only contains the best trial. For multi-objective [
6976
+ # hyperparameter tuning](https://cloud.google.com/bigquery-ml/docs/reference/
6977
+ # standard-sql/bigqueryml-syntax-hp-tuning-overview) models, it contains all
6978
+ # Pareto optimal trials sorted by trial_id.
6667
6979
  # Corresponds to the JSON property `optimalTrialIds`
6668
6980
  # @return [Array<Fixnum>]
6669
6981
  attr_accessor :optimal_trial_ids
@@ -6776,9 +7088,10 @@ module Google
6776
7088
  include Google::Apis::Core::Hashable
6777
7089
 
6778
7090
  # The 1-based ID of the trial to be exported from a hyperparameter tuning model.
6779
- # If not specified, the trial with id = [Model](/bigquery/docs/reference/rest/v2/
6780
- # models#resource:-model).defaultTrialId is exported. This field is ignored for
6781
- # models not trained with hyperparameter tuning.
7091
+ # If not specified, the trial with id = [Model](https://cloud.google.com/
7092
+ # bigquery/docs/reference/rest/v2/models#resource:-model).defaultTrialId is
7093
+ # exported. This field is ignored for models not trained with hyperparameter
7094
+ # tuning.
6782
7095
  # Corresponds to the JSON property `trialId`
6783
7096
  # @return [Fixnum]
6784
7097
  attr_accessor :trial_id
@@ -6912,7 +7225,7 @@ module Google
6912
7225
  class PartitionedColumn
6913
7226
  include Google::Apis::Core::Hashable
6914
7227
 
6915
- # Output only. The name of the partition column.
7228
+ # Required. The name of the partition column.
6916
7229
  # Corresponds to the JSON property `field`
6917
7230
  # @return [String]
6918
7231
  attr_accessor :field
@@ -6927,14 +7240,19 @@ module Google
6927
7240
  end
6928
7241
  end
6929
7242
 
6930
- # The partitioning information, which includes managed table and external table
6931
- # partition information.
7243
+ # The partitioning information, which includes managed table, external table and
7244
+ # metastore partitioned table partition information.
6932
7245
  class PartitioningDefinition
6933
7246
  include Google::Apis::Core::Hashable
6934
7247
 
6935
- # Output only. Details about each partitioning column. BigQuery native tables
6936
- # only support 1 partitioning column. Other table types may support 0, 1 or more
6937
- # partitioning columns.
7248
+ # Optional. Details about each partitioning column. This field is output only
7249
+ # for all partitioning types other than metastore partitioned tables. BigQuery
7250
+ # native tables only support 1 partitioning column. Other table types may
7251
+ # support 0, 1 or more partitioning columns. For metastore partitioned tables,
7252
+ # the order must match the definition order in the Hive Metastore, where it must
7253
+ # match the physical layout of the table. For example, CREATE TABLE a_table(id
7254
+ # BIGINT, name STRING) PARTITIONED BY (city STRING, state STRING). In this case
7255
+ # the values must be ['city', 'state'] in that order.
6938
7256
  # Corresponds to the JSON property `partitionedColumn`
6939
7257
  # @return [Array<Google::Apis::BigqueryV2::PartitionedColumn>]
6940
7258
  attr_accessor :partitioned_column
@@ -7260,6 +7578,35 @@ module Google
7260
7578
  end
7261
7579
  end
7262
7580
 
7581
+ # Options for a user-defined Python function.
7582
+ class PythonOptions
7583
+ include Google::Apis::Core::Hashable
7584
+
7585
+ # Required. The name of the function defined in Python code as the entry point
7586
+ # when the Python UDF is invoked.
7587
+ # Corresponds to the JSON property `entryPoint`
7588
+ # @return [String]
7589
+ attr_accessor :entry_point
7590
+
7591
+ # Optional. A list of Python package names along with versions to be installed.
7592
+ # Example: ["pandas>=2.1", "google-cloud-translate==3.11"]. For more information,
7593
+ # see [Use third-party packages](https://cloud.google.com/bigquery/docs/user-
7594
+ # defined-functions-python#third-party-packages).
7595
+ # Corresponds to the JSON property `packages`
7596
+ # @return [Array<String>]
7597
+ attr_accessor :packages
7598
+
7599
+ def initialize(**args)
7600
+ update!(**args)
7601
+ end
7602
+
7603
+ # Update properties of this object
7604
+ def update!(**args)
7605
+ @entry_point = args[:entry_point] if args.key?(:entry_point)
7606
+ @packages = args[:packages] if args.key?(:packages)
7607
+ end
7608
+ end
7609
+
7263
7610
  # Query optimization information for a QUERY job.
7264
7611
  class QueryInfo
7265
7612
  include Google::Apis::Core::Hashable
@@ -7331,6 +7678,13 @@ module Google
7331
7678
  # @return [Array<Google::Apis::BigqueryV2::QueryParameterType::StructType>]
7332
7679
  attr_accessor :struct_types
7333
7680
 
7681
+ # Optional. Precision (maximum number of total digits in base 10) for seconds of
7682
+ # TIMESTAMP type. Possible values include: * 6 (Default, for TIMESTAMP type with
7683
+ # microsecond precision) * 12 (For TIMESTAMP type with picosecond precision)
7684
+ # Corresponds to the JSON property `timestampPrecision`
7685
+ # @return [Fixnum]
7686
+ attr_accessor :timestamp_precision
7687
+
7334
7688
  # Required. The top level type of this field.
7335
7689
  # Corresponds to the JSON property `type`
7336
7690
  # @return [String]
@@ -7345,6 +7699,7 @@ module Google
7345
7699
  @array_type = args[:array_type] if args.key?(:array_type)
7346
7700
  @range_element_type = args[:range_element_type] if args.key?(:range_element_type)
7347
7701
  @struct_types = args[:struct_types] if args.key?(:struct_types)
7702
+ @timestamp_precision = args[:timestamp_precision] if args.key?(:timestamp_precision)
7348
7703
  @type = args[:type] if args.key?(:type)
7349
7704
  end
7350
7705
 
@@ -7443,13 +7798,16 @@ module Google
7443
7798
  attr_accessor :create_session
7444
7799
  alias_method :create_session?, :create_session
7445
7800
 
7446
- # Optional. Specifies the default datasetId and projectId to assume for any
7447
- # unqualified table names in the query. If not set, all table names in the query
7448
- # string must be qualified in the format 'datasetId.tableId'.
7801
+ # Identifier for a dataset.
7449
7802
  # Corresponds to the JSON property `defaultDataset`
7450
7803
  # @return [Google::Apis::BigqueryV2::DatasetReference]
7451
7804
  attr_accessor :default_dataset
7452
7805
 
7806
+ # Configuration for Cloud KMS encryption settings.
7807
+ # Corresponds to the JSON property `destinationEncryptionConfiguration`
7808
+ # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
7809
+ attr_accessor :destination_encryption_configuration
7810
+
7453
7811
  # Optional. If set to true, BigQuery doesn't run the job. Instead, if the query
7454
7812
  # is valid, BigQuery returns statistics about the job such as how many bytes
7455
7813
  # would be processed. If the query is invalid, an error returns. The default
@@ -7465,12 +7823,21 @@ module Google
7465
7823
  attr_accessor :format_options
7466
7824
 
7467
7825
  # Optional. If not set, jobs are always required. If set, the query request will
7468
- # follow the behavior described JobCreationMode. This feature is not yet
7469
- # available. Jobs will always be created.
7826
+ # follow the behavior described JobCreationMode.
7470
7827
  # Corresponds to the JSON property `jobCreationMode`
7471
7828
  # @return [String]
7472
7829
  attr_accessor :job_creation_mode
7473
7830
 
7831
+ # Optional. Job timeout in milliseconds. If this time limit is exceeded,
7832
+ # BigQuery will attempt to stop a longer job, but may not always succeed in
7833
+ # canceling it before the job completes. For example, a job that takes more than
7834
+ # 60 seconds to complete has a better chance of being stopped than a job that
7835
+ # takes 10 seconds to complete. This timeout applies to the query even if a job
7836
+ # does not need to be created.
7837
+ # Corresponds to the JSON property `jobTimeoutMs`
7838
+ # @return [Fixnum]
7839
+ attr_accessor :job_timeout_ms
7840
+
7474
7841
  # The resource type of the request.
7475
7842
  # Corresponds to the JSON property `kind`
7476
7843
  # @return [String]
@@ -7485,8 +7852,9 @@ module Google
7485
7852
  # @return [Hash<String,String>]
7486
7853
  attr_accessor :labels
7487
7854
 
7488
- # The geographic location where the job should run. See details at https://cloud.
7489
- # google.com/bigquery/docs/locations#specifying_your_location.
7855
+ # The geographic location where the job should run. For more information, see
7856
+ # how to [specify locations](https://cloud.google.com/bigquery/docs/locations#
7857
+ # specify_locations).
7490
7858
  # Corresponds to the JSON property `location`
7491
7859
  # @return [String]
7492
7860
  attr_accessor :location
@@ -7553,6 +7921,13 @@ module Google
7553
7921
  # @return [String]
7554
7922
  attr_accessor :request_id
7555
7923
 
7924
+ # Optional. The reservation that jobs.query request would use. User can specify
7925
+ # a reservation to execute the job.query. The expected format is `projects/`
7926
+ # project`/locations/`location`/reservations/`reservation``.
7927
+ # Corresponds to the JSON property `reservation`
7928
+ # @return [String]
7929
+ attr_accessor :reservation
7930
+
7556
7931
  # Optional. Optional: Specifies the maximum amount of time, in milliseconds,
7557
7932
  # that the client is willing to wait for the query to complete. By default, this
7558
7933
  # limit is 10 seconds (10,000 milliseconds). If the query is complete, the
@@ -7585,6 +7960,15 @@ module Google
7585
7960
  attr_accessor :use_query_cache
7586
7961
  alias_method :use_query_cache?, :use_query_cache
7587
7962
 
7963
+ # Optional. This is only supported for SELECT query. If set, the query is
7964
+ # allowed to write results incrementally to the temporary result table. This may
7965
+ # incur a performance penalty. This option cannot be used with Legacy SQL. This
7966
+ # feature is not yet available.
7967
+ # Corresponds to the JSON property `writeIncrementalResults`
7968
+ # @return [Boolean]
7969
+ attr_accessor :write_incremental_results
7970
+ alias_method :write_incremental_results?, :write_incremental_results
7971
+
7588
7972
  def initialize(**args)
7589
7973
  update!(**args)
7590
7974
  end
@@ -7595,9 +7979,11 @@ module Google
7595
7979
  @continuous = args[:continuous] if args.key?(:continuous)
7596
7980
  @create_session = args[:create_session] if args.key?(:create_session)
7597
7981
  @default_dataset = args[:default_dataset] if args.key?(:default_dataset)
7982
+ @destination_encryption_configuration = args[:destination_encryption_configuration] if args.key?(:destination_encryption_configuration)
7598
7983
  @dry_run = args[:dry_run] if args.key?(:dry_run)
7599
7984
  @format_options = args[:format_options] if args.key?(:format_options)
7600
7985
  @job_creation_mode = args[:job_creation_mode] if args.key?(:job_creation_mode)
7986
+ @job_timeout_ms = args[:job_timeout_ms] if args.key?(:job_timeout_ms)
7601
7987
  @kind = args[:kind] if args.key?(:kind)
7602
7988
  @labels = args[:labels] if args.key?(:labels)
7603
7989
  @location = args[:location] if args.key?(:location)
@@ -7608,9 +7994,11 @@ module Google
7608
7994
  @query = args[:query] if args.key?(:query)
7609
7995
  @query_parameters = args[:query_parameters] if args.key?(:query_parameters)
7610
7996
  @request_id = args[:request_id] if args.key?(:request_id)
7997
+ @reservation = args[:reservation] if args.key?(:reservation)
7611
7998
  @timeout_ms = args[:timeout_ms] if args.key?(:timeout_ms)
7612
7999
  @use_legacy_sql = args[:use_legacy_sql] if args.key?(:use_legacy_sql)
7613
8000
  @use_query_cache = args[:use_query_cache] if args.key?(:use_query_cache)
8001
+ @write_incremental_results = args[:write_incremental_results] if args.key?(:write_incremental_results)
7614
8002
  end
7615
8003
  end
7616
8004
 
@@ -7624,11 +8012,23 @@ module Google
7624
8012
  attr_accessor :cache_hit
7625
8013
  alias_method :cache_hit?, :cache_hit
7626
8014
 
8015
+ # Output only. Creation time of this query, in milliseconds since the epoch.
8016
+ # This field will be present on all queries.
8017
+ # Corresponds to the JSON property `creationTime`
8018
+ # @return [Fixnum]
8019
+ attr_accessor :creation_time
8020
+
7627
8021
  # Detailed statistics for DML statements
7628
8022
  # Corresponds to the JSON property `dmlStats`
7629
8023
  # @return [Google::Apis::BigqueryV2::DmlStatistics]
7630
8024
  attr_accessor :dml_stats
7631
8025
 
8026
+ # Output only. End time of this query, in milliseconds since the epoch. This
8027
+ # field will be present whenever a query job is in the DONE state.
8028
+ # Corresponds to the JSON property `endTime`
8029
+ # @return [Fixnum]
8030
+ attr_accessor :end_time
8031
+
7632
8032
  # Output only. The first errors or warnings encountered during the running of
7633
8033
  # the job. The final message includes the number of errors that caused the
7634
8034
  # process to stop. Errors here do not necessarily mean that the job has
@@ -7649,8 +8049,7 @@ module Google
7649
8049
  # com/bigquery/docs/reference/rest/v2/jobs/query) method when used with `
7650
8050
  # JOB_CREATION_OPTIONAL` Job creation mode. For [`jobs.insert`](https://cloud.
7651
8051
  # google.com/bigquery/docs/reference/rest/v2/jobs/insert) method calls it will
7652
- # always be `REQUESTED`. This feature is not yet available. Jobs will always be
7653
- # created.
8052
+ # always be `REQUESTED`.
7654
8053
  # Corresponds to the JSON property `jobCreationReason`
7655
8054
  # @return [Google::Apis::BigqueryV2::JobCreationReason]
7656
8055
  attr_accessor :job_creation_reason
@@ -7665,6 +8064,12 @@ module Google
7665
8064
  # @return [String]
7666
8065
  attr_accessor :kind
7667
8066
 
8067
+ # Output only. The geographic location of the query. For more information about
8068
+ # BigQuery locations, see: https://cloud.google.com/bigquery/docs/locations
8069
+ # Corresponds to the JSON property `location`
8070
+ # @return [String]
8071
+ attr_accessor :location
8072
+
7668
8073
  # Output only. The number of rows affected by a DML statement. Present only for
7669
8074
  # DML statements INSERT, UPDATE or DELETE.
7670
8075
  # Corresponds to the JSON property `numDmlAffectedRows`
@@ -7680,8 +8085,7 @@ module Google
7680
8085
  # @return [String]
7681
8086
  attr_accessor :page_token
7682
8087
 
7683
- # Query ID for the completed query. This ID will be auto-generated. This field
7684
- # is not yet available and it is currently not guaranteed to be populated.
8088
+ # Auto-generated ID for the query.
7685
8089
  # Corresponds to the JSON property `queryId`
7686
8090
  # @return [String]
7687
8091
  attr_accessor :query_id
@@ -7703,6 +8107,21 @@ module Google
7703
8107
  # @return [Google::Apis::BigqueryV2::SessionInfo]
7704
8108
  attr_accessor :session_info
7705
8109
 
8110
+ # Output only. Start time of this query, in milliseconds since the epoch. This
8111
+ # field will be present when the query job transitions from the PENDING state to
8112
+ # either RUNNING or DONE.
8113
+ # Corresponds to the JSON property `startTime`
8114
+ # @return [Fixnum]
8115
+ attr_accessor :start_time
8116
+
8117
+ # Output only. If the project is configured to use on-demand pricing, then this
8118
+ # field contains the total bytes billed for the job. If the project is
8119
+ # configured to use flat-rate pricing, then you are not billed for bytes and
8120
+ # this field is informational only.
8121
+ # Corresponds to the JSON property `totalBytesBilled`
8122
+ # @return [Fixnum]
8123
+ attr_accessor :total_bytes_billed
8124
+
7706
8125
  # The total number of bytes processed for this query. If this query was a dry
7707
8126
  # run, this is the number of bytes that would be processed if the query were run.
7708
8127
  # Corresponds to the JSON property `totalBytesProcessed`
@@ -7715,6 +8134,11 @@ module Google
7715
8134
  # @return [Fixnum]
7716
8135
  attr_accessor :total_rows
7717
8136
 
8137
+ # Output only. Number of slot ms the user is actually billed for.
8138
+ # Corresponds to the JSON property `totalSlotMs`
8139
+ # @return [Fixnum]
8140
+ attr_accessor :total_slot_ms
8141
+
7718
8142
  def initialize(**args)
7719
8143
  update!(**args)
7720
8144
  end
@@ -7722,20 +8146,26 @@ module Google
7722
8146
  # Update properties of this object
7723
8147
  def update!(**args)
7724
8148
  @cache_hit = args[:cache_hit] if args.key?(:cache_hit)
8149
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
7725
8150
  @dml_stats = args[:dml_stats] if args.key?(:dml_stats)
8151
+ @end_time = args[:end_time] if args.key?(:end_time)
7726
8152
  @errors = args[:errors] if args.key?(:errors)
7727
8153
  @job_complete = args[:job_complete] if args.key?(:job_complete)
7728
8154
  @job_creation_reason = args[:job_creation_reason] if args.key?(:job_creation_reason)
7729
8155
  @job_reference = args[:job_reference] if args.key?(:job_reference)
7730
8156
  @kind = args[:kind] if args.key?(:kind)
8157
+ @location = args[:location] if args.key?(:location)
7731
8158
  @num_dml_affected_rows = args[:num_dml_affected_rows] if args.key?(:num_dml_affected_rows)
7732
8159
  @page_token = args[:page_token] if args.key?(:page_token)
7733
8160
  @query_id = args[:query_id] if args.key?(:query_id)
7734
8161
  @rows = args[:rows] if args.key?(:rows)
7735
8162
  @schema = args[:schema] if args.key?(:schema)
7736
8163
  @session_info = args[:session_info] if args.key?(:session_info)
8164
+ @start_time = args[:start_time] if args.key?(:start_time)
8165
+ @total_bytes_billed = args[:total_bytes_billed] if args.key?(:total_bytes_billed)
7737
8166
  @total_bytes_processed = args[:total_bytes_processed] if args.key?(:total_bytes_processed)
7738
8167
  @total_rows = args[:total_rows] if args.key?(:total_rows)
8168
+ @total_slot_ms = args[:total_slot_ms] if args.key?(:total_slot_ms)
7739
8169
  end
7740
8170
  end
7741
8171
 
@@ -7772,6 +8202,12 @@ module Google
7772
8202
  # @return [Fixnum]
7773
8203
  attr_accessor :pending_units
7774
8204
 
8205
+ # Total shuffle usage ratio in shuffle RAM per reservation of this query. This
8206
+ # will be provided for reservation customers only.
8207
+ # Corresponds to the JSON property `shuffleRamUsageRatio`
8208
+ # @return [Float]
8209
+ attr_accessor :shuffle_ram_usage_ratio
8210
+
7775
8211
  # Cumulative slot-ms consumed by the query.
7776
8212
  # Corresponds to the JSON property `totalSlotMs`
7777
8213
  # @return [Fixnum]
@@ -7788,6 +8224,7 @@ module Google
7788
8224
  @elapsed_ms = args[:elapsed_ms] if args.key?(:elapsed_ms)
7789
8225
  @estimated_runnable_units = args[:estimated_runnable_units] if args.key?(:estimated_runnable_units)
7790
8226
  @pending_units = args[:pending_units] if args.key?(:pending_units)
8227
+ @shuffle_ram_usage_ratio = args[:shuffle_ram_usage_ratio] if args.key?(:shuffle_ram_usage_ratio)
7791
8228
  @total_slot_ms = args[:total_slot_ms] if args.key?(:total_slot_ms)
7792
8229
  end
7793
8230
  end
@@ -8135,6 +8572,11 @@ module Google
8135
8572
  # @return [String]
8136
8573
  attr_accessor :etag
8137
8574
 
8575
+ # Options for the runtime of the external system.
8576
+ # Corresponds to the JSON property `externalRuntimeOptions`
8577
+ # @return [Google::Apis::BigqueryV2::ExternalRuntimeOptions]
8578
+ attr_accessor :external_runtime_options
8579
+
8138
8580
  # Optional. If language = "JAVASCRIPT", this field stores the path of the
8139
8581
  # imported JAVASCRIPT libraries.
8140
8582
  # Corresponds to the JSON property `importedLibraries`
@@ -8153,6 +8595,11 @@ module Google
8153
8595
  # @return [Fixnum]
8154
8596
  attr_accessor :last_modified_time
8155
8597
 
8598
+ # Options for a user-defined Python function.
8599
+ # Corresponds to the JSON property `pythonOptions`
8600
+ # @return [Google::Apis::BigqueryV2::PythonOptions]
8601
+ attr_accessor :python_options
8602
+
8156
8603
  # Options for a remote user-defined function.
8157
8604
  # Corresponds to the JSON property `remoteFunctionOptions`
8158
8605
  # @return [Google::Apis::BigqueryV2::RemoteFunctionOptions]
@@ -8168,7 +8615,8 @@ module Google
8168
8615
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
8169
8616
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
8170
8617
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
8171
- # DATE"` ` ` ] ` `
8618
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
8619
+ # typeKind": "DATE"` `
8172
8620
  # Corresponds to the JSON property `returnType`
8173
8621
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
8174
8622
  attr_accessor :return_type
@@ -8221,9 +8669,11 @@ module Google
8221
8669
  @description = args[:description] if args.key?(:description)
8222
8670
  @determinism_level = args[:determinism_level] if args.key?(:determinism_level)
8223
8671
  @etag = args[:etag] if args.key?(:etag)
8672
+ @external_runtime_options = args[:external_runtime_options] if args.key?(:external_runtime_options)
8224
8673
  @imported_libraries = args[:imported_libraries] if args.key?(:imported_libraries)
8225
8674
  @language = args[:language] if args.key?(:language)
8226
8675
  @last_modified_time = args[:last_modified_time] if args.key?(:last_modified_time)
8676
+ @python_options = args[:python_options] if args.key?(:python_options)
8227
8677
  @remote_function_options = args[:remote_function_options] if args.key?(:remote_function_options)
8228
8678
  @return_table_type = args[:return_table_type] if args.key?(:return_table_type)
8229
8679
  @return_type = args[:return_type] if args.key?(:return_type)
@@ -8317,6 +8767,27 @@ module Google
8317
8767
  # @return [String]
8318
8768
  attr_accessor :filter_predicate
8319
8769
 
8770
+ # Optional. Input only. The optional list of iam_member users or groups that
8771
+ # specifies the initial members that the row-level access policy should be
8772
+ # created with. grantees types: - "user:alice@example.com": An email address
8773
+ # that represents a specific Google account. - "serviceAccount:my-other-app@
8774
+ # appspot.gserviceaccount.com": An email address that represents a service
8775
+ # account. - "group:admins@example.com": An email address that represents a
8776
+ # Google group. - "domain:example.com":The Google Workspace domain (primary)
8777
+ # that represents all the users of that domain. - "allAuthenticatedUsers": A
8778
+ # special identifier that represents all service accounts and all users on the
8779
+ # internet who have authenticated with a Google Account. This identifier
8780
+ # includes accounts that aren't connected to a Google Workspace or Cloud
8781
+ # Identity domain, such as personal Gmail accounts. Users who aren't
8782
+ # authenticated, such as anonymous visitors, aren't included. - "allUsers":A
8783
+ # special identifier that represents anyone who is on the internet, including
8784
+ # authenticated and unauthenticated users. Because BigQuery requires
8785
+ # authentication before a user can access the service, allUsers includes only
8786
+ # authenticated users.
8787
+ # Corresponds to the JSON property `grantees`
8788
+ # @return [Array<String>]
8789
+ attr_accessor :grantees
8790
+
8320
8791
  # Output only. The time when this row access policy was last modified, in
8321
8792
  # milliseconds since the epoch.
8322
8793
  # Corresponds to the JSON property `lastModifiedTime`
@@ -8337,6 +8808,7 @@ module Google
8337
8808
  @creation_time = args[:creation_time] if args.key?(:creation_time)
8338
8809
  @etag = args[:etag] if args.key?(:etag)
8339
8810
  @filter_predicate = args[:filter_predicate] if args.key?(:filter_predicate)
8811
+ @grantees = args[:grantees] if args.key?(:grantees)
8340
8812
  @last_modified_time = args[:last_modified_time] if args.key?(:last_modified_time)
8341
8813
  @row_access_policy_reference = args[:row_access_policy_reference] if args.key?(:row_access_policy_reference)
8342
8814
  end
@@ -8963,7 +9435,8 @@ module Google
8963
9435
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
8964
9436
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
8965
9437
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
8966
- # DATE"` ` ` ] ` `
9438
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
9439
+ # typeKind": "DATE"` `
8967
9440
  class StandardSqlDataType
8968
9441
  include Google::Apis::Core::Hashable
8969
9442
 
@@ -8972,7 +9445,8 @@ module Google
8972
9445
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
8973
9446
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
8974
9447
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
8975
- # DATE"` ` ` ] ` `
9448
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
9449
+ # typeKind": "DATE"` `
8976
9450
  # Corresponds to the JSON property `arrayElementType`
8977
9451
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
8978
9452
  attr_accessor :array_element_type
@@ -8982,7 +9456,8 @@ module Google
8982
9456
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
8983
9457
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
8984
9458
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
8985
- # DATE"` ` ` ] ` `
9459
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
9460
+ # typeKind": "DATE"` `
8986
9461
  # Corresponds to the JSON property `rangeElementType`
8987
9462
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
8988
9463
  attr_accessor :range_element_type
@@ -9025,7 +9500,8 @@ module Google
9025
9500
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
9026
9501
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
9027
9502
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
9028
- # DATE"` ` ` ] ` `
9503
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
9504
+ # typeKind": "DATE"` `
9029
9505
  # Corresponds to the JSON property `type`
9030
9506
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
9031
9507
  attr_accessor :type
@@ -9091,8 +9567,8 @@ module Google
9091
9567
  # @return [String]
9092
9568
  attr_accessor :input_format
9093
9569
 
9094
- # Optional. The physical location of the table (e.g. 'gs://spark-dataproc-data/
9095
- # pangea-data/case_sensitive/' or 'gs://spark-dataproc-data/pangea-data/*'). The
9570
+ # Optional. The physical location of the table (e.g. `gs://spark-dataproc-data/
9571
+ # pangea-data/case_sensitive/` or `gs://spark-dataproc-data/pangea-data/*`). The
9096
9572
  # maximum length is 2056 bytes.
9097
9573
  # Corresponds to the JSON property `locationUri`
9098
9574
  # @return [String]
@@ -9123,6 +9599,72 @@ module Google
9123
9599
  end
9124
9600
  end
9125
9601
 
9602
+ # If the stored column was not used, explain why.
9603
+ class StoredColumnsUnusedReason
9604
+ include Google::Apis::Core::Hashable
9605
+
9606
+ # Specifies the high-level reason for the unused scenario, each reason must have
9607
+ # a code associated.
9608
+ # Corresponds to the JSON property `code`
9609
+ # @return [String]
9610
+ attr_accessor :code
9611
+
9612
+ # Specifies the detailed description for the scenario.
9613
+ # Corresponds to the JSON property `message`
9614
+ # @return [String]
9615
+ attr_accessor :message
9616
+
9617
+ # Specifies which columns were not covered by the stored columns for the
9618
+ # specified code up to 20 columns. This is populated when the code is
9619
+ # STORED_COLUMNS_COVER_INSUFFICIENT and BASE_TABLE_HAS_CLS.
9620
+ # Corresponds to the JSON property `uncoveredColumns`
9621
+ # @return [Array<String>]
9622
+ attr_accessor :uncovered_columns
9623
+
9624
+ def initialize(**args)
9625
+ update!(**args)
9626
+ end
9627
+
9628
+ # Update properties of this object
9629
+ def update!(**args)
9630
+ @code = args[:code] if args.key?(:code)
9631
+ @message = args[:message] if args.key?(:message)
9632
+ @uncovered_columns = args[:uncovered_columns] if args.key?(:uncovered_columns)
9633
+ end
9634
+ end
9635
+
9636
+ # Indicates the stored columns usage in the query.
9637
+ class StoredColumnsUsage
9638
+ include Google::Apis::Core::Hashable
9639
+
9640
+ # Specifies the base table.
9641
+ # Corresponds to the JSON property `baseTable`
9642
+ # @return [Google::Apis::BigqueryV2::TableReference]
9643
+ attr_accessor :base_table
9644
+
9645
+ # Specifies whether the query was accelerated with stored columns.
9646
+ # Corresponds to the JSON property `isQueryAccelerated`
9647
+ # @return [Boolean]
9648
+ attr_accessor :is_query_accelerated
9649
+ alias_method :is_query_accelerated?, :is_query_accelerated
9650
+
9651
+ # If stored columns were not used, explain why.
9652
+ # Corresponds to the JSON property `storedColumnsUnusedReasons`
9653
+ # @return [Array<Google::Apis::BigqueryV2::StoredColumnsUnusedReason>]
9654
+ attr_accessor :stored_columns_unused_reasons
9655
+
9656
+ def initialize(**args)
9657
+ update!(**args)
9658
+ end
9659
+
9660
+ # Update properties of this object
9661
+ def update!(**args)
9662
+ @base_table = args[:base_table] if args.key?(:base_table)
9663
+ @is_query_accelerated = args[:is_query_accelerated] if args.key?(:is_query_accelerated)
9664
+ @stored_columns_unused_reasons = args[:stored_columns_unused_reasons] if args.key?(:stored_columns_unused_reasons)
9665
+ end
9666
+ end
9667
+
9126
9668
  #
9127
9669
  class Streamingbuffer
9128
9670
  include Google::Apis::Core::Hashable
@@ -9205,7 +9747,8 @@ module Google
9205
9747
  class Table
9206
9748
  include Google::Apis::Core::Hashable
9207
9749
 
9208
- # Configuration for BigLake managed tables.
9750
+ # Configuration for BigQuery tables for Apache Iceberg (formerly BigLake managed
9751
+ # tables.)
9209
9752
  # Corresponds to the JSON property `biglakeConfiguration`
9210
9753
  # @return [Google::Apis::BigqueryV2::BigLakeConfiguration]
9211
9754
  attr_accessor :biglake_configuration
@@ -9251,7 +9794,7 @@ module Google
9251
9794
  # @return [String]
9252
9795
  attr_accessor :description
9253
9796
 
9254
- # Custom encryption configuration (e.g., Cloud KMS keys).
9797
+ # Configuration for Cloud KMS encryption settings.
9255
9798
  # Corresponds to the JSON property `encryptionConfiguration`
9256
9799
  # @return [Google::Apis::BigqueryV2::EncryptionConfiguration]
9257
9800
  attr_accessor :encryption_configuration
@@ -9271,7 +9814,7 @@ module Google
9271
9814
  attr_accessor :expiration_time
9272
9815
 
9273
9816
  # Metadata about open source compatible table. The fields contained in these
9274
- # options correspond to hive metastore's table level properties.
9817
+ # options correspond to Hive metastore's table-level properties.
9275
9818
  # Corresponds to the JSON property `externalCatalogTableOptions`
9276
9819
  # @return [Google::Apis::BigqueryV2::ExternalCatalogTableOptions]
9277
9820
  attr_accessor :external_catalog_table_options
@@ -9319,6 +9862,12 @@ module Google
9319
9862
  # @return [String]
9320
9863
  attr_accessor :location
9321
9864
 
9865
+ # Optional. If set, overrides the default managed table type configured in the
9866
+ # dataset.
9867
+ # Corresponds to the JSON property `managedTableType`
9868
+ # @return [String]
9869
+ attr_accessor :managed_table_type
9870
+
9322
9871
  # Definition and configuration of a materialized view.
9323
9872
  # Corresponds to the JSON property `materializedView`
9324
9873
  # @return [Google::Apis::BigqueryV2::MaterializedViewDefinition]
@@ -9421,8 +9970,8 @@ module Google
9421
9970
  # @return [Fixnum]
9422
9971
  attr_accessor :num_total_physical_bytes
9423
9972
 
9424
- # The partitioning information, which includes managed table and external table
9425
- # partition information.
9973
+ # The partitioning information, which includes managed table, external table and
9974
+ # metastore partitioned table partition information.
9426
9975
  # Corresponds to the JSON property `partitionDefinition`
9427
9976
  # @return [Google::Apis::BigqueryV2::PartitioningDefinition]
9428
9977
  attr_accessor :partition_definition
@@ -9456,8 +10005,9 @@ module Google
9456
10005
  attr_accessor :resource_tags
9457
10006
 
9458
10007
  # Optional. Output only. Restriction config for table. If set, restrict certain
9459
- # accesses on the table based on the config. See [Data egress](/bigquery/docs/
9460
- # analytics-hub-introduction#data_egress) for more details.
10008
+ # accesses on the table based on the config. See [Data egress](https://cloud.
10009
+ # google.com/bigquery/docs/analytics-hub-introduction#data_egress) for more
10010
+ # details.
9461
10011
  # Corresponds to the JSON property `restrictions`
9462
10012
  # @return [Google::Apis::BigqueryV2::RestrictionConfig]
9463
10013
  attr_accessor :restrictions
@@ -9511,8 +10061,8 @@ module Google
9511
10061
  # storage system, such as Google Cloud Storage. * `MATERIALIZED_VIEW`: A
9512
10062
  # precomputed view defined by a SQL query. * `SNAPSHOT`: An immutable BigQuery
9513
10063
  # table that preserves the contents of a base table at a particular time. See
9514
- # additional information on [table snapshots](/bigquery/docs/table-snapshots-
9515
- # intro). The default value is `TABLE`.
10064
+ # additional information on [table snapshots](https://cloud.google.com/bigquery/
10065
+ # docs/table-snapshots-intro). The default value is `TABLE`.
9516
10066
  # Corresponds to the JSON property `type`
9517
10067
  # @return [String]
9518
10068
  attr_accessor :type
@@ -9546,6 +10096,7 @@ module Google
9546
10096
  @labels = args[:labels] if args.key?(:labels)
9547
10097
  @last_modified_time = args[:last_modified_time] if args.key?(:last_modified_time)
9548
10098
  @location = args[:location] if args.key?(:location)
10099
+ @managed_table_type = args[:managed_table_type] if args.key?(:managed_table_type)
9549
10100
  @materialized_view = args[:materialized_view] if args.key?(:materialized_view)
9550
10101
  @materialized_view_status = args[:materialized_view_status] if args.key?(:materialized_view_status)
9551
10102
  @max_staleness = args[:max_staleness] if args.key?(:max_staleness)
@@ -9935,6 +10486,11 @@ module Google
9935
10486
  # @return [String]
9936
10487
  attr_accessor :collation
9937
10488
 
10489
+ # Optional. Data policy options, will replace the data_policies.
10490
+ # Corresponds to the JSON property `dataPolicies`
10491
+ # @return [Array<Google::Apis::BigqueryV2::DataPolicyOption>]
10492
+ attr_accessor :data_policies
10493
+
9938
10494
  # Optional. A SQL expression to specify the [default value] (https://cloud.
9939
10495
  # google.com/bigquery/docs/default-values) for this field.
9940
10496
  # Corresponds to the JSON property `defaultValueExpression`
@@ -10026,8 +10582,8 @@ module Google
10026
10582
  # Required. The field data type. Possible values include: * STRING * BYTES *
10027
10583
  # INTEGER (or INT64) * FLOAT (or FLOAT64) * BOOLEAN (or BOOL) * TIMESTAMP * DATE
10028
10584
  # * TIME * DATETIME * GEOGRAPHY * NUMERIC * BIGNUMERIC * JSON * RECORD (or
10029
- # STRUCT) * RANGE ([Preview](/products/#product-launch-stages)) Use of RECORD/
10030
- # STRUCT indicates that the field contains a nested schema.
10585
+ # STRUCT) * RANGE Use of RECORD/STRUCT indicates that the field contains a
10586
+ # nested schema.
10031
10587
  # Corresponds to the JSON property `type`
10032
10588
  # @return [String]
10033
10589
  attr_accessor :type
@@ -10040,6 +10596,7 @@ module Google
10040
10596
  def update!(**args)
10041
10597
  @categories = args[:categories] if args.key?(:categories)
10042
10598
  @collation = args[:collation] if args.key?(:collation)
10599
+ @data_policies = args[:data_policies] if args.key?(:data_policies)
10043
10600
  @default_value_expression = args[:default_value_expression] if args.key?(:default_value_expression)
10044
10601
  @description = args[:description] if args.key?(:description)
10045
10602
  @fields = args[:fields] if args.key?(:fields)
@@ -10293,12 +10850,19 @@ module Google
10293
10850
  # @return [String]
10294
10851
  attr_accessor :explanation
10295
10852
 
10853
+ # Duration since last refresh as of this job for managed tables (indicates
10854
+ # metadata cache staleness as seen by this job).
10855
+ # Corresponds to the JSON property `staleness`
10856
+ # @return [String]
10857
+ attr_accessor :staleness
10858
+
10296
10859
  # Metadata caching eligible table referenced in the query.
10297
10860
  # Corresponds to the JSON property `tableReference`
10298
10861
  # @return [Google::Apis::BigqueryV2::TableReference]
10299
10862
  attr_accessor :table_reference
10300
10863
 
10301
- # [Table type](/bigquery/docs/reference/rest/v2/tables#Table.FIELDS.type).
10864
+ # [Table type](https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#
10865
+ # Table.FIELDS.type).
10302
10866
  # Corresponds to the JSON property `tableType`
10303
10867
  # @return [String]
10304
10868
  attr_accessor :table_type
@@ -10315,6 +10879,7 @@ module Google
10315
10879
  # Update properties of this object
10316
10880
  def update!(**args)
10317
10881
  @explanation = args[:explanation] if args.key?(:explanation)
10882
+ @staleness = args[:staleness] if args.key?(:staleness)
10318
10883
  @table_reference = args[:table_reference] if args.key?(:table_reference)
10319
10884
  @table_type = args[:table_type] if args.key?(:table_type)
10320
10885
  @unused_reason = args[:unused_reason] if args.key?(:unused_reason)
@@ -10635,6 +11200,14 @@ module Google
10635
11200
  # @return [Float]
10636
11201
  attr_accessor :colsample_bytree
10637
11202
 
11203
+ # The contribution metric. Applies to contribution analysis models. Allowed
11204
+ # formats supported are for summable and summable ratio contribution metrics.
11205
+ # These include expressions such as `SUM(x)` or `SUM(x)/SUM(y)`, where x and y
11206
+ # are column names from the base table.
11207
+ # Corresponds to the JSON property `contributionMetric`
11208
+ # @return [String]
11209
+ attr_accessor :contribution_metric
11210
+
10638
11211
  # Type of normalization algorithm for boosted tree models using dart booster.
10639
11212
  # Corresponds to the JSON property `dartNormalizeType`
10640
11213
  # @return [String]
@@ -10651,8 +11224,8 @@ module Google
10651
11224
  # When data_split_method is SEQ, the first DATA_SPLIT_EVAL_FRACTION rows (from
10652
11225
  # smallest to largest) in the corresponding column are used as training data,
10653
11226
  # and the rest are eval data. It respects the order in Orderable data types:
10654
- # https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#data-
10655
- # type-properties
11227
+ # https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#
11228
+ # data_type_properties
10656
11229
  # Corresponds to the JSON property `dataSplitColumn`
10657
11230
  # @return [String]
10658
11231
  attr_accessor :data_split_column
@@ -10675,6 +11248,12 @@ module Google
10675
11248
  attr_accessor :decompose_time_series
10676
11249
  alias_method :decompose_time_series?, :decompose_time_series
10677
11250
 
11251
+ # Optional. Names of the columns to slice on. Applies to contribution analysis
11252
+ # models.
11253
+ # Corresponds to the JSON property `dimensionIdColumns`
11254
+ # @return [Array<String>]
11255
+ attr_accessor :dimension_id_columns
11256
+
10678
11257
  # Distance type for clustering models.
10679
11258
  # Corresponds to the JSON property `distanceType`
10680
11259
  # @return [String]
@@ -10710,6 +11289,19 @@ module Google
10710
11289
  attr_accessor :fit_intercept
10711
11290
  alias_method :fit_intercept?, :fit_intercept
10712
11291
 
11292
+ # The forecast limit lower bound that was used during ARIMA model training with
11293
+ # limits. To see more details of the algorithm: https://otexts.com/fpp2/limits.
11294
+ # html
11295
+ # Corresponds to the JSON property `forecastLimitLowerBound`
11296
+ # @return [Float]
11297
+ attr_accessor :forecast_limit_lower_bound
11298
+
11299
+ # The forecast limit upper bound that was used during ARIMA model training with
11300
+ # limits.
11301
+ # Corresponds to the JSON property `forecastLimitUpperBound`
11302
+ # @return [Float]
11303
+ attr_accessor :forecast_limit_upper_bound
11304
+
10713
11305
  # Hidden units for dnn models.
10714
11306
  # Corresponds to the JSON property `hiddenUnits`
10715
11307
  # @return [Array<Fixnum>]
@@ -10764,6 +11356,12 @@ module Google
10764
11356
  # @return [Fixnum]
10765
11357
  attr_accessor :integrated_gradients_num_steps
10766
11358
 
11359
+ # Name of the column used to determine the rows corresponding to control and
11360
+ # test. Applies to contribution analysis models.
11361
+ # Corresponds to the JSON property `isTestColumn`
11362
+ # @return [String]
11363
+ attr_accessor :is_test_column
11364
+
10767
11365
  # Item column specified for matrix factorization models.
10768
11366
  # Corresponds to the JSON property `itemColumn`
10769
11367
  # @return [String]
@@ -10839,6 +11437,11 @@ module Google
10839
11437
  # @return [Fixnum]
10840
11438
  attr_accessor :max_tree_depth
10841
11439
 
11440
+ # The apriori support minimum. Applies to contribution analysis models.
11441
+ # Corresponds to the JSON property `minAprioriSupport`
11442
+ # @return [Float]
11443
+ attr_accessor :min_apriori_support
11444
+
10842
11445
  # When early_stop is true, stops training when accuracy improvement is less than
10843
11446
  # 'min_relative_progress'. Used only for iterative training algorithms.
10844
11447
  # Corresponds to the JSON property `minRelativeProgress`
@@ -11055,18 +11658,22 @@ module Google
11055
11658
  @colsample_bylevel = args[:colsample_bylevel] if args.key?(:colsample_bylevel)
11056
11659
  @colsample_bynode = args[:colsample_bynode] if args.key?(:colsample_bynode)
11057
11660
  @colsample_bytree = args[:colsample_bytree] if args.key?(:colsample_bytree)
11661
+ @contribution_metric = args[:contribution_metric] if args.key?(:contribution_metric)
11058
11662
  @dart_normalize_type = args[:dart_normalize_type] if args.key?(:dart_normalize_type)
11059
11663
  @data_frequency = args[:data_frequency] if args.key?(:data_frequency)
11060
11664
  @data_split_column = args[:data_split_column] if args.key?(:data_split_column)
11061
11665
  @data_split_eval_fraction = args[:data_split_eval_fraction] if args.key?(:data_split_eval_fraction)
11062
11666
  @data_split_method = args[:data_split_method] if args.key?(:data_split_method)
11063
11667
  @decompose_time_series = args[:decompose_time_series] if args.key?(:decompose_time_series)
11668
+ @dimension_id_columns = args[:dimension_id_columns] if args.key?(:dimension_id_columns)
11064
11669
  @distance_type = args[:distance_type] if args.key?(:distance_type)
11065
11670
  @dropout = args[:dropout] if args.key?(:dropout)
11066
11671
  @early_stop = args[:early_stop] if args.key?(:early_stop)
11067
11672
  @enable_global_explain = args[:enable_global_explain] if args.key?(:enable_global_explain)
11068
11673
  @feedback_type = args[:feedback_type] if args.key?(:feedback_type)
11069
11674
  @fit_intercept = args[:fit_intercept] if args.key?(:fit_intercept)
11675
+ @forecast_limit_lower_bound = args[:forecast_limit_lower_bound] if args.key?(:forecast_limit_lower_bound)
11676
+ @forecast_limit_upper_bound = args[:forecast_limit_upper_bound] if args.key?(:forecast_limit_upper_bound)
11070
11677
  @hidden_units = args[:hidden_units] if args.key?(:hidden_units)
11071
11678
  @holiday_region = args[:holiday_region] if args.key?(:holiday_region)
11072
11679
  @holiday_regions = args[:holiday_regions] if args.key?(:holiday_regions)
@@ -11077,6 +11684,7 @@ module Google
11077
11684
  @input_label_columns = args[:input_label_columns] if args.key?(:input_label_columns)
11078
11685
  @instance_weight_column = args[:instance_weight_column] if args.key?(:instance_weight_column)
11079
11686
  @integrated_gradients_num_steps = args[:integrated_gradients_num_steps] if args.key?(:integrated_gradients_num_steps)
11687
+ @is_test_column = args[:is_test_column] if args.key?(:is_test_column)
11080
11688
  @item_column = args[:item_column] if args.key?(:item_column)
11081
11689
  @kmeans_initialization_column = args[:kmeans_initialization_column] if args.key?(:kmeans_initialization_column)
11082
11690
  @kmeans_initialization_method = args[:kmeans_initialization_method] if args.key?(:kmeans_initialization_method)
@@ -11091,6 +11699,7 @@ module Google
11091
11699
  @max_parallel_trials = args[:max_parallel_trials] if args.key?(:max_parallel_trials)
11092
11700
  @max_time_series_length = args[:max_time_series_length] if args.key?(:max_time_series_length)
11093
11701
  @max_tree_depth = args[:max_tree_depth] if args.key?(:max_tree_depth)
11702
+ @min_apriori_support = args[:min_apriori_support] if args.key?(:min_apriori_support)
11094
11703
  @min_relative_progress = args[:min_relative_progress] if args.key?(:min_relative_progress)
11095
11704
  @min_split_loss = args[:min_split_loss] if args.key?(:min_split_loss)
11096
11705
  @min_time_series_length = args[:min_time_series_length] if args.key?(:min_time_series_length)
@@ -11244,7 +11853,8 @@ module Google
11244
11853
  # arrayElementType": `"typeKind": "STRING"` ` * STRUCT>: ` "typeKind": "STRUCT",
11245
11854
  # "structType": ` "fields": [ ` "name": "x", "type": `"typeKind": "STRING"` `, `
11246
11855
  # "name": "y", "type": ` "typeKind": "ARRAY", "arrayElementType": `"typeKind": "
11247
- # DATE"` ` ` ] ` `
11856
+ # DATE"` ` ` ] ` ` * RANGE: ` "typeKind": "RANGE", "rangeElementType": `"
11857
+ # typeKind": "DATE"` `
11248
11858
  # Corresponds to the JSON property `type`
11249
11859
  # @return [Google::Apis::BigqueryV2::StandardSqlDataType]
11250
11860
  attr_accessor :type
@@ -11331,6 +11941,12 @@ module Google
11331
11941
  # @return [String]
11332
11942
  attr_accessor :index_usage_mode
11333
11943
 
11944
+ # Specifies the usage of stored columns in the query when stored columns are
11945
+ # used in the query.
11946
+ # Corresponds to the JSON property `storedColumnsUsages`
11947
+ # @return [Array<Google::Apis::BigqueryV2::StoredColumnsUsage>]
11948
+ attr_accessor :stored_columns_usages
11949
+
11334
11950
  def initialize(**args)
11335
11951
  update!(**args)
11336
11952
  end
@@ -11339,6 +11955,7 @@ module Google
11339
11955
  def update!(**args)
11340
11956
  @index_unused_reasons = args[:index_unused_reasons] if args.key?(:index_unused_reasons)
11341
11957
  @index_usage_mode = args[:index_usage_mode] if args.key?(:index_usage_mode)
11958
+ @stored_columns_usages = args[:stored_columns_usages] if args.key?(:stored_columns_usages)
11342
11959
  end
11343
11960
  end
11344
11961