Class: Google::Apis::BigqueryreservationV1::Reservation
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryreservationV1::Reservation
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigqueryreservation_v1/classes.rb,
lib/google/apis/bigqueryreservation_v1/representations.rb,
lib/google/apis/bigqueryreservation_v1/representations.rb
Overview
A reservation is a mechanism used to guarantee slots to users.
Instance Attribute Summary collapse
-
#autoscale ⇒ Google::Apis::BigqueryreservationV1::Autoscale
Auto scaling settings.
-
#concurrency ⇒ Fixnum
Job concurrency target which sets a soft upper bound on the number of jobs that can run concurrently in this reservation.
-
#creation_time ⇒ String
Output only.
-
#edition ⇒ String
Edition of the reservation.
-
#ignore_idle_slots ⇒ Boolean
(also: #ignore_idle_slots?)
If false, any query or pipeline job using this reservation will use idle slots from other reservations within the same admin project.
-
#multi_region_auxiliary ⇒ Boolean
(also: #multi_region_auxiliary?)
Applicable only for reservations located within one of the BigQuery multi- regions (US or EU).
-
#name ⇒ String
The resource name of the reservation, e.g.,
projects/*/locations/*/ reservations/team1-prod. -
#slot_capacity ⇒ Fixnum
Minimum slots available to this reservation.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Reservation
constructor
A new instance of Reservation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Reservation
Returns a new instance of Reservation.
458 459 460 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 458 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscale ⇒ Google::Apis::BigqueryreservationV1::Autoscale
Auto scaling settings. max_slots and budget are mutually exclusive. If
max_slots is set: * The system will create a dedicated FLEX capacity
commitment to hold the slots for auto-scale. Users won't be able to manage it,
to avoid conflicts. * Scale-up will happen if there are always pending tasks
for the past 10 minutes. * Scale-down will happen, if the system detects that
scale-up won't be triggered again. If budget is set: * The system will try to
use more slots immediately. * At a particular moment, the number of slots
scaled is determined by the sytsem, based on the remaining budget and system
limit. But overall the usage will conform to the budget if there is enough
traffic. * The system will round the slot usage every minute. Note this is
an alpha feature.
Corresponds to the JSON property autoscale
392 393 394 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 392 def autoscale @autoscale end |
#concurrency ⇒ Fixnum
Job concurrency target which sets a soft upper bound on the number of jobs
that can run concurrently in this reservation. This is a soft target due to
asynchronous nature of the system and various optimizations for small queries.
Default value is 0 which means that concurrency target will be automatically
computed by the system. NOTE: this field is exposed as target_job_concurrency
in the Information Schema, DDL and BQ CLI.
Corresponds to the JSON property concurrency
402 403 404 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 402 def concurrency @concurrency end |
#creation_time ⇒ String
Output only. Creation time of the reservation.
Corresponds to the JSON property creationTime
407 408 409 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 407 def creation_time @creation_time end |
#edition ⇒ String
Edition of the reservation.
Corresponds to the JSON property edition
412 413 414 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 412 def edition @edition end |
#ignore_idle_slots ⇒ Boolean Also known as: ignore_idle_slots?
If false, any query or pipeline job using this reservation will use idle slots
from other reservations within the same admin project. If true, a query or
pipeline job using this reservation will execute with the slot capacity
specified in the slot_capacity field at most.
Corresponds to the JSON property ignoreIdleSlots
420 421 422 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 420 def ignore_idle_slots @ignore_idle_slots end |
#multi_region_auxiliary ⇒ Boolean Also known as: multi_region_auxiliary?
Applicable only for reservations located within one of the BigQuery multi-
regions (US or EU). If set to true, this reservation is placed in the
organization's secondary region which is designated for disaster recovery
purposes. If false, this reservation is placed in the organization's default
region.
Corresponds to the JSON property multiRegionAuxiliary
430 431 432 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 430 def multi_region_auxiliary @multi_region_auxiliary end |
#name ⇒ String
The resource name of the reservation, e.g., projects/*/locations/*/
reservations/team1-prod. The reservation_id must only contain lower case
alphanumeric characters or dashes. It must start with a letter and must not
end with a dash. Its maximum length is 64 characters.
Corresponds to the JSON property name
439 440 441 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 439 def name @name end |
#slot_capacity ⇒ Fixnum
Minimum slots available to this reservation. A slot is a unit of computational
power in BigQuery, and serves as the unit of parallelism. Queries using this
reservation might use more slots during runtime if ignore_idle_slots is set to
false. If total slot_capacity of the reservation and its siblings exceeds the
total slot_count of all capacity commitments, the request will fail with
google.rpc.Code.RESOURCE_EXHAUSTED. NOTE: for reservations in US or EU multi-
regions, slot capacity constraints are checked separately for default and
auxiliary regions. See multi_region_auxiliary flag for more details.
Corresponds to the JSON property slotCapacity
451 452 453 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 451 def slot_capacity @slot_capacity end |
#update_time ⇒ String
Output only. Last update time of the reservation.
Corresponds to the JSON property updateTime
456 457 458 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 456 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
463 464 465 466 467 468 469 470 471 472 473 |
# File 'lib/google/apis/bigqueryreservation_v1/classes.rb', line 463 def update!(**args) @autoscale = args[:autoscale] if args.key?(:autoscale) @concurrency = args[:concurrency] if args.key?(:concurrency) @creation_time = args[:creation_time] if args.key?(:creation_time) @edition = args[:edition] if args.key?(:edition) @ignore_idle_slots = args[:ignore_idle_slots] if args.key?(:ignore_idle_slots) @multi_region_auxiliary = args[:multi_region_auxiliary] if args.key?(:multi_region_auxiliary) @name = args[:name] if args.key?(:name) @slot_capacity = args[:slot_capacity] if args.key?(:slot_capacity) @update_time = args[:update_time] if args.key?(:update_time) end |