Class: Google::Apis::BigqueryreservationV1beta1::Reservation

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/bigqueryreservation_v1beta1/classes.rb,
lib/google/apis/bigqueryreservation_v1beta1/representations.rb,
lib/google/apis/bigqueryreservation_v1beta1/representations.rb

Overview

A reservation is a mechanism used to guarantee slots to users.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Reservation

Returns a new instance of Reservation.



395
396
397
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 395

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#concurrencyFixnum

Maximum number of queries that are allowed to run concurrently in this reservation. This is a soft limit due to asynchronous nature of the system and various optimizations for small queries. Default value is 0 which means that concurrency will be automatically set based on the reservation size. Corresponds to the JSON property concurrency

Returns:

  • (Fixnum)


343
344
345
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 343

def concurrency
  @concurrency
end

#creation_timeString

Output only. Creation time of the reservation. Corresponds to the JSON property creationTime

Returns:

  • (String)


348
349
350
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 348

def creation_time
  @creation_time
end

#ignore_idle_slotsBoolean 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

Returns:

  • (Boolean)


356
357
358
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 356

def ignore_idle_slots
  @ignore_idle_slots
end

#multi_region_auxiliaryBoolean 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

Returns:

  • (Boolean)


366
367
368
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 366

def multi_region_auxiliary
  @multi_region_auxiliary
end

#nameString

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

Returns:

  • (String)


375
376
377
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 375

def name
  @name
end

#slot_capacityFixnum

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 the new reservation's slot capacity exceeds the project's slot capacity or if total slot capacity of the new reservation and its siblings exceeds the project's slot capacity, 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

Returns:

  • (Fixnum)


388
389
390
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 388

def slot_capacity
  @slot_capacity
end

#update_timeString

Output only. Last update time of the reservation. Corresponds to the JSON property updateTime

Returns:

  • (String)


393
394
395
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 393

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



400
401
402
403
404
405
406
407
408
# File 'lib/google/apis/bigqueryreservation_v1beta1/classes.rb', line 400

def update!(**args)
  @concurrency = args[:concurrency] if args.key?(:concurrency)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @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