google-cloud-bigquery-reservation-v1 0.4.0 → 0.5.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.
@@ -42,7 +42,7 @@ module Google
42
42
  # `projects/myproject/locations/US/capacityCommitments/id`.
43
43
  class Service
44
44
 
45
- include GRPC::GenericService
45
+ include ::GRPC::GenericService
46
46
 
47
47
  self.marshal_class_method = :encode
48
48
  self.unmarshal_class_method = :decode
@@ -85,7 +85,7 @@ module Google
85
85
  #
86
86
  # For example, in order to downgrade from 10000 slots to 8000, you might
87
87
  # split a 10000 capacity commitment into commitments of 2000 and 8000. Then,
88
- # you would change the plan of the first one to `FLEX` and then delete it.
88
+ # you delete the first one after the commitment end time passes.
89
89
  rpc :SplitCapacityCommitment, ::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentRequest, ::Google::Cloud::Bigquery::Reservation::V1::SplitCapacityCommitmentResponse
90
90
  # Merges capacity commitments of the same plan into a single commitment.
91
91
  #
@@ -169,8 +169,8 @@ module Google
169
169
  # queries from `project1` will still use `res1` while queries from
170
170
  # `project2` will switch to use on-demand mode.
171
171
  rpc :DeleteAssignment, ::Google::Cloud::Bigquery::Reservation::V1::DeleteAssignmentRequest, ::Google::Protobuf::Empty
172
- # Deprecated: Looks up assignments for a specified resource for a particular region.
173
- # If the request is about a project:
172
+ # Deprecated: Looks up assignments for a specified resource for a particular
173
+ # region. If the request is about a project:
174
174
  #
175
175
  # 1. Assignments created on the project will be returned if they exist.
176
176
  # 2. Otherwise assignments created on the closest ancestor will be
@@ -220,6 +220,10 @@ module Google
220
220
  # by providing a transactional change that ensures an assignee always has an
221
221
  # associated reservation.
222
222
  rpc :MoveAssignment, ::Google::Cloud::Bigquery::Reservation::V1::MoveAssignmentRequest, ::Google::Cloud::Bigquery::Reservation::V1::Assignment
223
+ # Updates an existing assignment.
224
+ #
225
+ # Only the `priority` field can be updated.
226
+ rpc :UpdateAssignment, ::Google::Cloud::Bigquery::Reservation::V1::UpdateAssignmentRequest, ::Google::Cloud::Bigquery::Reservation::V1::Assignment
223
227
  # Retrieves a BI reservation.
224
228
  rpc :GetBiReservation, ::Google::Cloud::Bigquery::Reservation::V1::GetBiReservationRequest, ::Google::Cloud::Bigquery::Reservation::V1::BiReservation
225
229
  # Updates a BI reservation.
@@ -22,7 +22,7 @@ module Google
22
22
  module Bigquery
23
23
  module Reservation
24
24
  module V1
25
- VERSION = "0.4.0"
25
+ VERSION = "0.5.0"
26
26
  end
27
27
  end
28
28
  end
@@ -26,6 +26,8 @@ module Google
26
26
  ##
27
27
  # To load this package, including all its services, and instantiate a client:
28
28
  #
29
+ # @example
30
+ #
29
31
  # require "google/cloud/bigquery/reservation/v1"
30
32
  # client = ::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
31
33
  #
@@ -33,11 +33,7 @@ module Google
33
33
  # // For Kubernetes resources, the format is {api group}/{kind}.
34
34
  # option (google.api.resource) = {
35
35
  # type: "pubsub.googleapis.com/Topic"
36
- # name_descriptor: {
37
- # pattern: "projects/{project}/topics/{topic}"
38
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
39
- # parent_name_extractor: "projects/{project}"
40
- # }
36
+ # pattern: "projects/{project}/topics/{topic}"
41
37
  # };
42
38
  # }
43
39
  #
@@ -45,10 +41,7 @@ module Google
45
41
  #
46
42
  # resources:
47
43
  # - type: "pubsub.googleapis.com/Topic"
48
- # name_descriptor:
49
- # - pattern: "projects/{project}/topics/{topic}"
50
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
51
- # parent_name_extractor: "projects/{project}"
44
+ # pattern: "projects/{project}/topics/{topic}"
52
45
  #
53
46
  # Sometimes, resources have multiple patterns, typically because they can
54
47
  # live under multiple parents.
@@ -58,26 +51,10 @@ module Google
58
51
  # message LogEntry {
59
52
  # option (google.api.resource) = {
60
53
  # type: "logging.googleapis.com/LogEntry"
61
- # name_descriptor: {
62
- # pattern: "projects/{project}/logs/{log}"
63
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
64
- # parent_name_extractor: "projects/{project}"
65
- # }
66
- # name_descriptor: {
67
- # pattern: "folders/{folder}/logs/{log}"
68
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
69
- # parent_name_extractor: "folders/{folder}"
70
- # }
71
- # name_descriptor: {
72
- # pattern: "organizations/{organization}/logs/{log}"
73
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
74
- # parent_name_extractor: "organizations/{organization}"
75
- # }
76
- # name_descriptor: {
77
- # pattern: "billingAccounts/{billing_account}/logs/{log}"
78
- # parent_type: "billing.googleapis.com/BillingAccount"
79
- # parent_name_extractor: "billingAccounts/{billing_account}"
80
- # }
54
+ # pattern: "projects/{project}/logs/{log}"
55
+ # pattern: "folders/{folder}/logs/{log}"
56
+ # pattern: "organizations/{organization}/logs/{log}"
57
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
81
58
  # };
82
59
  # }
83
60
  #
@@ -85,48 +62,10 @@ module Google
85
62
  #
86
63
  # resources:
87
64
  # - type: 'logging.googleapis.com/LogEntry'
88
- # name_descriptor:
89
- # - pattern: "projects/{project}/logs/{log}"
90
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
91
- # parent_name_extractor: "projects/{project}"
92
- # - pattern: "folders/{folder}/logs/{log}"
93
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
94
- # parent_name_extractor: "folders/{folder}"
95
- # - pattern: "organizations/{organization}/logs/{log}"
96
- # parent_type: "cloudresourcemanager.googleapis.com/Organization"
97
- # parent_name_extractor: "organizations/{organization}"
98
- # - pattern: "billingAccounts/{billing_account}/logs/{log}"
99
- # parent_type: "billing.googleapis.com/BillingAccount"
100
- # parent_name_extractor: "billingAccounts/{billing_account}"
101
- #
102
- # For flexible resources, the resource name doesn't contain parent names, but
103
- # the resource itself has parents for policy evaluation.
104
- #
105
- # Example:
106
- #
107
- # message Shelf {
108
- # option (google.api.resource) = {
109
- # type: "library.googleapis.com/Shelf"
110
- # name_descriptor: {
111
- # pattern: "shelves/{shelf}"
112
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
113
- # }
114
- # name_descriptor: {
115
- # pattern: "shelves/{shelf}"
116
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
117
- # }
118
- # };
119
- # }
120
- #
121
- # The ResourceDescriptor Yaml config will look like:
122
- #
123
- # resources:
124
- # - type: 'library.googleapis.com/Shelf'
125
- # name_descriptor:
126
- # - pattern: "shelves/{shelf}"
127
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
128
- # - pattern: "shelves/{shelf}"
129
- # parent_type: "cloudresourcemanager.googleapis.com/Folder"
65
+ # pattern: "projects/{project}/logs/{log}"
66
+ # pattern: "folders/{folder}/logs/{log}"
67
+ # pattern: "organizations/{organization}/logs/{log}"
68
+ # pattern: "billingAccounts/{billing_account}/logs/{log}"
130
69
  # @!attribute [rw] type
131
70
  # @return [::String]
132
71
  # The resource type. It must be in the format of
@@ -27,6 +27,9 @@ module Google
27
27
  # @return [::String]
28
28
  # The resource name of the reservation, e.g.,
29
29
  # `projects/*/locations/*/reservations/team1-prod`.
30
+ # The reservation_id must only contain lower case alphanumeric characters or
31
+ # dashes. It must start with a letter and must not end with a dash. Its
32
+ # maximum length is 64 characters.
30
33
  # @!attribute [rw] slot_capacity
31
34
  # @return [::Integer]
32
35
  # Minimum slots available to this reservation. A slot is a unit of
@@ -35,22 +38,41 @@ module Google
35
38
  # Queries using this reservation might use more slots during runtime if
36
39
  # ignore_idle_slots is set to false.
37
40
  #
38
- # If the new reservation's slot capacity exceed the parent's slot capacity or
39
- # if total slot capacity of the new reservation and its siblings exceeds the
40
- # parent's slot capacity, the request will fail with
41
+ # If the new reservation's slot capacity exceeds the project's slot capacity
42
+ # or if total slot capacity of the new reservation and its siblings exceeds
43
+ # the project's slot capacity, the request will fail with
41
44
  # `google.rpc.Code.RESOURCE_EXHAUSTED`.
45
+ #
46
+ # NOTE: for reservations in US or EU multi-regions, slot capacity constraints
47
+ # are checked separately for default and auxiliary regions. See
48
+ # multi_region_auxiliary flag for more details.
42
49
  # @!attribute [rw] ignore_idle_slots
43
50
  # @return [::Boolean]
44
51
  # If false, any query or pipeline job using this reservation will use idle
45
52
  # slots from other reservations within the same admin project. If true, a
46
53
  # query or pipeline job using this reservation will execute with the slot
47
54
  # capacity specified in the slot_capacity field at most.
55
+ # @!attribute [rw] concurrency
56
+ # @return [::Integer]
57
+ # Maximum number of queries that are allowed to run concurrently in this
58
+ # reservation. This is a soft limit due to asynchronous nature of the system
59
+ # and various optimizations for small queries.
60
+ # Default value is 0 which means that concurrency will be automatically set
61
+ # based on the reservation size.
48
62
  # @!attribute [r] creation_time
49
63
  # @return [::Google::Protobuf::Timestamp]
50
64
  # Output only. Creation time of the reservation.
51
65
  # @!attribute [r] update_time
52
66
  # @return [::Google::Protobuf::Timestamp]
53
67
  # Output only. Last update time of the reservation.
68
+ # @!attribute [rw] multi_region_auxiliary
69
+ # @return [::Boolean]
70
+ # Applicable only for reservations located within one of the BigQuery
71
+ # multi-regions (US or EU).
72
+ #
73
+ # If set to true, this reservation is placed in the organization's
74
+ # secondary region which is designated for disaster recovery purposes.
75
+ # If false, this reservation is placed in the organization's default region.
54
76
  class Reservation
55
77
  include ::Google::Protobuf::MessageExts
56
78
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -70,6 +92,9 @@ module Google
70
92
  # @return [::String]
71
93
  # Output only. The resource name of the capacity commitment, e.g.,
72
94
  # `projects/myproject/locations/US/capacityCommitments/123`
95
+ # The commitment_id must only contain lower case alphanumeric characters or
96
+ # dashes. It must start with a letter and must not end
97
+ # with a dash. Its maximum length is 64 characters.
73
98
  # @!attribute [rw] slot_count
74
99
  # @return [::Integer]
75
100
  # Number of slots in this commitment.
@@ -95,6 +120,14 @@ module Google
95
120
  # The plan this capacity commitment is converted to after commitment_end_time
96
121
  # passes. Once the plan is changed, committed period is extended according to
97
122
  # commitment plan. Only applicable for ANNUAL and TRIAL commitments.
123
+ # @!attribute [rw] multi_region_auxiliary
124
+ # @return [::Boolean]
125
+ # Applicable only for commitments located within one of the BigQuery
126
+ # multi-regions (US or EU).
127
+ #
128
+ # If set to true, this commitment is placed in the organization's
129
+ # secondary region which is designated for disaster recovery purposes.
130
+ # If false, this commitment is placed in the organization's default region.
98
131
  class CapacityCommitment
99
132
  include ::Google::Protobuf::MessageExts
100
133
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -135,11 +168,11 @@ module Google
135
168
  STATE_UNSPECIFIED = 0
136
169
 
137
170
  # Capacity commitment is pending provisioning. Pending capacity commitment
138
- # does not contribute to the parent's slot_capacity.
171
+ # does not contribute to the project's slot_capacity.
139
172
  PENDING = 1
140
173
 
141
174
  # Once slots are provisioned, capacity commitment becomes active.
142
- # slot_count is added to the parent's slot_capacity.
175
+ # slot_count is added to the project's slot_capacity.
143
176
  ACTIVE = 2
144
177
 
145
178
  # Capacity commitment is failed to be activated by the backend.
@@ -154,8 +187,9 @@ module Google
154
187
  # `projects/myproject/locations/US`
155
188
  # @!attribute [rw] reservation_id
156
189
  # @return [::String]
157
- # The reservation ID. This field must only contain lower case alphanumeric
158
- # characters or dash. Max length is 64 characters.
190
+ # The reservation ID. It must only contain lower case alphanumeric
191
+ # characters or dashes. It must start with a letter and must not end
192
+ # with a dash. Its maximum length is 64 characters.
159
193
  # @!attribute [rw] reservation
160
194
  # @return [::Google::Cloud::Bigquery::Reservation::V1::Reservation]
161
195
  # Definition of the new reservation to create.
@@ -241,8 +275,8 @@ module Google
241
275
  # @return [::String]
242
276
  # The optional capacity commitment ID. Capacity commitment name will be
243
277
  # generated automatically if this field is empty.
244
- # This field must only contain lower case alphanumeric characters or dash.
245
- # Max length is 64 characters.
278
+ # This field must only contain lower case alphanumeric characters or dashes.
279
+ # The first and last character cannot be a dash. Max length is 64 characters.
246
280
  # NOTE: this ID won't be kept if the capacity commitment is split or merged.
247
281
  class CreateCapacityCommitmentRequest
248
282
  include ::Google::Protobuf::MessageExts
@@ -357,12 +391,14 @@ module Google
357
391
  extend ::Google::Protobuf::MessageExts::ClassMethods
358
392
  end
359
393
 
360
- # A Assignment allows a project to submit jobs
394
+ # An assignment allows a project to submit jobs
361
395
  # of a certain type using slots from the specified reservation.
362
396
  # @!attribute [r] name
363
397
  # @return [::String]
364
398
  # Output only. Name of the resource. E.g.:
365
399
  # `projects/myproject/locations/US/reservations/team1-prod/assignments/123`.
400
+ # The assignment_id must only contain lower case alphanumeric characters or
401
+ # dashes and the max length is 64 characters.
366
402
  # @!attribute [rw] assignee
367
403
  # @return [::String]
368
404
  # The resource which will use the reservation. E.g.
@@ -424,7 +460,7 @@ module Google
424
460
  # @return [::String]
425
461
  # The optional assignment ID. Assignment name will be generated automatically
426
462
  # if this field is empty.
427
- # This field must only contain lower case alphanumeric characters or dash.
463
+ # This field must only contain lower case alphanumeric characters or dashes.
428
464
  # Max length is 64 characters.
429
465
  class CreateAssignmentRequest
430
466
  include ::Google::Protobuf::MessageExts
@@ -584,6 +620,34 @@ module Google
584
620
  extend ::Google::Protobuf::MessageExts::ClassMethods
585
621
  end
586
622
 
623
+ # The request for {::Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client#update_assignment ReservationService.UpdateAssignment}.
624
+ # @!attribute [rw] assignment
625
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::Assignment]
626
+ # Content of the assignment to update.
627
+ # @!attribute [rw] update_mask
628
+ # @return [::Google::Protobuf::FieldMask]
629
+ # Standard field mask for the set of fields to be updated.
630
+ class UpdateAssignmentRequest
631
+ include ::Google::Protobuf::MessageExts
632
+ extend ::Google::Protobuf::MessageExts::ClassMethods
633
+ end
634
+
635
+ # Fully qualified reference to BigQuery table.
636
+ # Internally stored as google.cloud.bi.v1.BqTableReference.
637
+ # @!attribute [rw] project_id
638
+ # @return [::String]
639
+ # The assigned project ID of the project.
640
+ # @!attribute [rw] dataset_id
641
+ # @return [::String]
642
+ # The ID of the dataset in the above project.
643
+ # @!attribute [rw] table_id
644
+ # @return [::String]
645
+ # The ID of the table in the above dataset.
646
+ class TableReference
647
+ include ::Google::Protobuf::MessageExts
648
+ extend ::Google::Protobuf::MessageExts::ClassMethods
649
+ end
650
+
587
651
  # Represents a BI Reservation.
588
652
  # @!attribute [rw] name
589
653
  # @return [::String]
@@ -596,6 +660,9 @@ module Google
596
660
  # @!attribute [rw] size
597
661
  # @return [::Integer]
598
662
  # Size of a reservation, in bytes.
663
+ # @!attribute [rw] preferred_tables
664
+ # @return [::Array<::Google::Cloud::Bigquery::Reservation::V1::TableReference>]
665
+ # Preferred tables to use BI capacity for.
599
666
  class BiReservation
600
667
  include ::Google::Protobuf::MessageExts
601
668
  extend ::Google::Protobuf::MessageExts::ClassMethods
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-bigquery-reservation-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-07 00:00:00.000000000 Z
11
+ date: 2022-04-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -207,7 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0'
209
209
  requirements: []
210
- rubygems_version: 3.2.17
210
+ rubygems_version: 3.3.5
211
211
  signing_key:
212
212
  specification_version: 4
213
213
  summary: API Client library for the BigQuery Reservation V1 API