@@ -1778,6 +1778,28 @@ def update!(**args)
17781778 end
17791779 end
17801780
1781+ # A list of data policy options. For more information, see [Mask data by
1782+ # applying data policies to a column](https://docs.cloud.google.com/bigquery/
1783+ # docs/column-data-masking#data-policies-on-column).
1784+ class DataPolicyList
1785+ include Google::Apis::Core::Hashable
1786+
1787+ # Contains a list of data policy options. At most 9 data policies are allowed
1788+ # per field.
1789+ # Corresponds to the JSON property `dataPolicies`
1790+ # @return [Array<Google::Apis::BigqueryV2::DataPolicyOption>]
1791+ attr_accessor :data_policies
1792+
1793+ def initialize(**args)
1794+ update!(**args)
1795+ end
1796+
1797+ # Update properties of this object
1798+ def update!(**args)
1799+ @data_policies = args[:data_policies] if args.key?(:data_policies)
1800+ end
1801+ end
1802+
17811803 # Data policy option. For more information, see [Mask data by applying data
17821804 # policies to a column](https://docs.cloud.google.com/bigquery/docs/column-data-
17831805 # masking#data-policies-on-column).
@@ -3546,6 +3568,12 @@ class ExternalRuntimeOptions
35463568 # @return [String]
35473569 attr_accessor :container_memory
35483570
3571+ # Optional. Maximum number of requests that a Cloud Run instance can handle
3572+ # concurrently. If absent or if `0`, a default concurrency is used.
3573+ # Corresponds to the JSON property `containerRequestConcurrency`
3574+ # @return [Fixnum]
3575+ attr_accessor :container_request_concurrency
3576+
35493577 # Optional. Maximum number of rows in each batch sent to the external runtime.
35503578 # If absent or if 0, BigQuery dynamically decides the number of rows in a batch.
35513579 # Corresponds to the JSON property `maxBatchingRows`
@@ -3572,6 +3600,7 @@ def initialize(**args)
35723600 def update!(**args)
35733601 @container_cpu = args[:container_cpu] if args.key?(:container_cpu)
35743602 @container_memory = args[:container_memory] if args.key?(:container_memory)
3603+ @container_request_concurrency = args[:container_request_concurrency] if args.key?(:container_request_concurrency)
35753604 @max_batching_rows = args[:max_batching_rows] if args.key?(:max_batching_rows)
35763605 @runtime_connection = args[:runtime_connection] if args.key?(:runtime_connection)
35773606 @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
@@ -3736,6 +3765,25 @@ def update!(**args)
37363765 end
37373766 end
37383767
3768+ # Provides cache statistics for a GenAi function call.
3769+ class GenAiFunctionCacheStats
3770+ include Google::Apis::Core::Hashable
3771+
3772+ # Number of rows served from cache.
3773+ # Corresponds to the JSON property `numCacheHitRows`
3774+ # @return [Fixnum]
3775+ attr_accessor :num_cache_hit_rows
3776+
3777+ def initialize(**args)
3778+ update!(**args)
3779+ end
3780+
3781+ # Update properties of this object
3782+ def update!(**args)
3783+ @num_cache_hit_rows = args[:num_cache_hit_rows] if args.key?(:num_cache_hit_rows)
3784+ end
3785+ end
3786+
37393787 # Provides cost optimization statistics for a GenAi function call.
37403788 class GenAiFunctionCostOptimizationStats
37413789 include Google::Apis::Core::Hashable
@@ -3790,6 +3838,11 @@ def update!(**args)
37903838 class GenAiFunctionStats
37913839 include Google::Apis::Core::Hashable
37923840
3841+ # Provides cache statistics for a GenAi function call.
3842+ # Corresponds to the JSON property `cacheStats`
3843+ # @return [Google::Apis::BigqueryV2::GenAiFunctionCacheStats]
3844+ attr_accessor :cache_stats
3845+
37933846 # Provides cost optimization statistics for a GenAi function call.
37943847 # Corresponds to the JSON property `costOptimizationStats`
37953848 # @return [Google::Apis::BigqueryV2::GenAiFunctionCostOptimizationStats]
@@ -3822,6 +3875,7 @@ def initialize(**args)
38223875
38233876 # Update properties of this object
38243877 def update!(**args)
3878+ @cache_stats = args[:cache_stats] if args.key?(:cache_stats)
38253879 @cost_optimization_stats = args[:cost_optimization_stats] if args.key?(:cost_optimization_stats)
38263880 @error_stats = args[:error_stats] if args.key?(:error_stats)
38273881 @function_name = args[:function_name] if args.key?(:function_name)
@@ -7253,6 +7307,33 @@ def update!(**args)
72537307 end
72547308 end
72557309
7310+ # Column Metadata Index staleness detailed infnormation.
7311+ class MetadataCacheStalenessInsight
7312+ include Google::Apis::Core::Hashable
7313+
7314+ # Output only. Average column metadata index staleness of previous runs with the
7315+ # same query hash.
7316+ # Corresponds to the JSON property `avgPreviousStalenessMs`
7317+ # @return [String]
7318+ attr_accessor :avg_previous_staleness_ms
7319+
7320+ # Output only. The percent increase in staleness between the current job and the
7321+ # average staleness of previous jobs with the same query hash.
7322+ # Corresponds to the JSON property `stalenessPercentageIncrease`
7323+ # @return [Float]
7324+ attr_accessor :staleness_percentage_increase
7325+
7326+ def initialize(**args)
7327+ update!(**args)
7328+ end
7329+
7330+ # Update properties of this object
7331+ def update!(**args)
7332+ @avg_previous_staleness_ms = args[:avg_previous_staleness_ms] if args.key?(:avg_previous_staleness_ms)
7333+ @staleness_percentage_increase = args[:staleness_percentage_increase] if args.key?(:staleness_percentage_increase)
7334+ end
7335+ end
7336+
72567337 # Statistics for metadata caching in queried tables.
72577338 class MetadataCacheStatistics
72587339 include Google::Apis::Core::Hashable
@@ -7751,6 +7832,12 @@ class PerformanceInsights
77517832 # @return [Array<Google::Apis::BigqueryV2::StagePerformanceStandaloneInsight>]
77527833 attr_accessor :stage_performance_standalone_insights
77537834
7835+ # Output only. Performance insights for table-level attributes that changed
7836+ # compared to previous runs.
7837+ # Corresponds to the JSON property `tableChangeInsights`
7838+ # @return [Array<Google::Apis::BigqueryV2::TableChangeInsight>]
7839+ attr_accessor :table_change_insights
7840+
77547841 def initialize(**args)
77557842 update!(**args)
77567843 end
@@ -7760,6 +7847,7 @@ def update!(**args)
77607847 @avg_previous_execution_ms = args[:avg_previous_execution_ms] if args.key?(:avg_previous_execution_ms)
77617848 @stage_performance_change_insights = args[:stage_performance_change_insights] if args.key?(:stage_performance_change_insights)
77627849 @stage_performance_standalone_insights = args[:stage_performance_standalone_insights] if args.key?(:stage_performance_standalone_insights)
7850+ @table_change_insights = args[:table_change_insights] if args.key?(:table_change_insights)
77637851 end
77647852 end
77657853
@@ -10749,6 +10837,40 @@ def update!(**args)
1074910837 end
1075010838 end
1075110839
10840+ # Table-level performance insights compared to previous runs. These insights don'
10841+ # t apply to specific query stages, rather they apply to the whole table.
10842+ class TableChangeInsight
10843+ include Google::Apis::Core::Hashable
10844+
10845+ # Output only. True if the table's column metadata index was not used in the
10846+ # current job, but was used in a previous job with the same query hash.
10847+ # Corresponds to the JSON property `metadataCacheNotUsedButUsedPreviously`
10848+ # @return [Boolean]
10849+ attr_accessor :metadata_cache_not_used_but_used_previously
10850+ alias_method :metadata_cache_not_used_but_used_previously?, :metadata_cache_not_used_but_used_previously
10851+
10852+ # Column Metadata Index staleness detailed infnormation.
10853+ # Corresponds to the JSON property `metadataCacheStalenessInsight`
10854+ # @return [Google::Apis::BigqueryV2::MetadataCacheStalenessInsight]
10855+ attr_accessor :metadata_cache_staleness_insight
10856+
10857+ # Output only. The table that was queried.
10858+ # Corresponds to the JSON property `tableReference`
10859+ # @return [Google::Apis::BigqueryV2::TableReference]
10860+ attr_accessor :table_reference
10861+
10862+ def initialize(**args)
10863+ update!(**args)
10864+ end
10865+
10866+ # Update properties of this object
10867+ def update!(**args)
10868+ @metadata_cache_not_used_but_used_previously = args[:metadata_cache_not_used_but_used_previously] if args.key?(:metadata_cache_not_used_but_used_previously)
10869+ @metadata_cache_staleness_insight = args[:metadata_cache_staleness_insight] if args.key?(:metadata_cache_staleness_insight)
10870+ @table_reference = args[:table_reference] if args.key?(:table_reference)
10871+ end
10872+ end
10873+
1075210874 # The TableConstraints defines the primary key and foreign key.
1075310875 class TableConstraints
1075410876 include Google::Apis::Core::Hashable
@@ -11083,12 +11205,34 @@ class TableFieldSchema
1108311205 # @return [String]
1108411206 attr_accessor :collation
1108511207
11208+ # Optional. Specifies the data governance tags on this field. This field works
11209+ # with other column-level security fields as follows: - Precedence: If a data
11210+ # governance tag is attached to a column, it takes precedence over the policy
11211+ # tag attached to the column. However, if a data policy is attached to a column,
11212+ # it takes precedence over the data governance tag. - Patching behavior (how
11213+ # this field behaves during a `Table.patch` schema update): - Unset: If the `
11214+ # data_governance_tags_info` field is omitted from the update request, the
11215+ # existing tags on the column are preserved. - Empty Field: To clear data
11216+ # governance tags from a column, send the `data_governance_tags_info` field as
11217+ # an empty object. This will remove all tags from the column. - Updating tags:
11218+ # To replace existing tag, send the field with the new tag.
11219+ # Corresponds to the JSON property `dataGovernanceTagsInfo`
11220+ # @return [Google::Apis::BigqueryV2::TableFieldSchema::DataGovernanceTagsInfo]
11221+ attr_accessor :data_governance_tags_info
11222+
1108611223 # Optional. Data policies attached to this field, used for field-level access
1108711224 # control.
1108811225 # Corresponds to the JSON property `dataPolicies`
1108911226 # @return [Array<Google::Apis::BigqueryV2::DataPolicyOption>]
1109011227 attr_accessor :data_policies
1109111228
11229+ # A list of data policy options. For more information, see [Mask data by
11230+ # applying data policies to a column](https://docs.cloud.google.com/bigquery/
11231+ # docs/column-data-masking#data-policies-on-column).
11232+ # Corresponds to the JSON property `dataPolicyList`
11233+ # @return [Google::Apis::BigqueryV2::DataPolicyList]
11234+ attr_accessor :data_policy_list
11235+
1109211236 # Optional. A SQL expression to specify the [default value] (https://cloud.
1109311237 # google.com/bigquery/docs/default-values) for this field.
1109411238 # Corresponds to the JSON property `defaultValueExpression`
@@ -11207,7 +11351,9 @@ def initialize(**args)
1120711351 def update!(**args)
1120811352 @categories = args[:categories] if args.key?(:categories)
1120911353 @collation = args[:collation] if args.key?(:collation)
11354+ @data_governance_tags_info = args[:data_governance_tags_info] if args.key?(:data_governance_tags_info)
1121011355 @data_policies = args[:data_policies] if args.key?(:data_policies)
11356+ @data_policy_list = args[:data_policy_list] if args.key?(:data_policy_list)
1121111357 @default_value_expression = args[:default_value_expression] if args.key?(:default_value_expression)
1121211358 @description = args[:description] if args.key?(:description)
1121311359 @fields = args[:fields] if args.key?(:fields)
@@ -11244,6 +11390,43 @@ def update!(**args)
1124411390 end
1124511391 end
1124611392
11393+ # Optional. Specifies the data governance tags on this field. This field works
11394+ # with other column-level security fields as follows: - Precedence: If a data
11395+ # governance tag is attached to a column, it takes precedence over the policy
11396+ # tag attached to the column. However, if a data policy is attached to a column,
11397+ # it takes precedence over the data governance tag. - Patching behavior (how
11398+ # this field behaves during a `Table.patch` schema update): - Unset: If the `
11399+ # data_governance_tags_info` field is omitted from the update request, the
11400+ # existing tags on the column are preserved. - Empty Field: To clear data
11401+ # governance tags from a column, send the `data_governance_tags_info` field as
11402+ # an empty object. This will remove all tags from the column. - Updating tags:
11403+ # To replace existing tag, send the field with the new tag.
11404+ class DataGovernanceTagsInfo
11405+ include Google::Apis::Core::Hashable
11406+
11407+ # Optional. The data governance tags added to this field are used for field-
11408+ # level access control. Only one data governance tag is currently supported on a
11409+ # field. Tag keys are globally unique. Tag key is expected to be in the
11410+ # namespaced format, for example "123456789012/pii" where 123456789012 is the ID
11411+ # of the parent organization or project resource for this tag key. Tag value is
11412+ # expected to be the short name, for example "sensitive". See [Tag definitions](
11413+ # https://cloud.google.com/iam/docs/tags-access-control#definitions) for more
11414+ # details. For example: "123456789012/pii": "sensitive", "myProject/cost_center":
11415+ # "sales"
11416+ # Corresponds to the JSON property `dataGovernanceTags`
11417+ # @return [Hash<String,String>]
11418+ attr_accessor :data_governance_tags
11419+
11420+ def initialize(**args)
11421+ update!(**args)
11422+ end
11423+
11424+ # Update properties of this object
11425+ def update!(**args)
11426+ @data_governance_tags = args[:data_governance_tags] if args.key?(:data_governance_tags)
11427+ end
11428+ end
11429+
1124711430 # Optional. The policy tags attached to this field, used for field-level access
1124811431 # control. If not set, defaults to empty policy_tags.
1124911432 class PolicyTags
0 commit comments