Class: Google::Apis::BigqueryV2::ExternalServiceCost

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

Overview

The external service cost is a portion of the total cost, these costs are not additive with total_bytes_billed. Moreover, this field only track external service costs that will show up as BigQuery costs (e.g. training BigQuery ML job with google cloud CAIP or Automl Tables services), not other costs which may be accrued by running the query (e.g. reading from Bigtable or Cloud Storage). The external service costs with different billing sku (e.g. CAIP job is charged based on VM usage) are converted to BigQuery billed_bytes and slot_ms with equivalent amount of US dollars. Services may not directly correlate to these metrics, but these are the equivalents for billing purposes. Output only.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ExternalServiceCost

Returns a new instance of ExternalServiceCost.



3587
3588
3589
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3587

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

Instance Attribute Details

#billing_methodString

The billing method used for the external job. This field, set to SERVICES_SKU , is only used when billing under the services SKU. Otherwise, it is unspecified for backward compatibility. Corresponds to the JSON property billingMethod

Returns:

  • (String)


3558
3559
3560
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3558

def billing_method
  @billing_method
end

#bytes_billedFixnum

External service cost in terms of bigquery bytes billed. Corresponds to the JSON property bytesBilled

Returns:

  • (Fixnum)


3563
3564
3565
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3563

def bytes_billed
  @bytes_billed
end

#bytes_processedFixnum

External service cost in terms of bigquery bytes processed. Corresponds to the JSON property bytesProcessed

Returns:

  • (Fixnum)


3568
3569
3570
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3568

def bytes_processed
  @bytes_processed
end

#external_serviceString

External service name. Corresponds to the JSON property externalService

Returns:

  • (String)


3573
3574
3575
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3573

def external_service
  @external_service
end

#reserved_slot_countFixnum

Non-preemptable reserved slots used for external job. For example, reserved slots for Cloua AI Platform job are the VM usages converted to BigQuery slot with equivalent mount of price. Corresponds to the JSON property reservedSlotCount

Returns:

  • (Fixnum)


3580
3581
3582
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3580

def reserved_slot_count
  @reserved_slot_count
end

#slot_msFixnum

External service cost in terms of bigquery slot milliseconds. Corresponds to the JSON property slotMs

Returns:

  • (Fixnum)


3585
3586
3587
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3585

def slot_ms
  @slot_ms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3592
3593
3594
3595
3596
3597
3598
3599
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3592

def update!(**args)
  @billing_method = args[:billing_method] if args.key?(:billing_method)
  @bytes_billed = args[:bytes_billed] if args.key?(:bytes_billed)
  @bytes_processed = args[:bytes_processed] if args.key?(:bytes_processed)
  @external_service = args[:external_service] if args.key?(:external_service)
  @reserved_slot_count = args[:reserved_slot_count] if args.key?(:reserved_slot_count)
  @slot_ms = args[:slot_ms] if args.key?(:slot_ms)
end