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.



3657
3658
3659
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3657

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)


3628
3629
3630
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3628

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)


3633
3634
3635
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3633

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)


3638
3639
3640
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3638

def bytes_processed
  @bytes_processed
end

#external_serviceString

External service name. Corresponds to the JSON property externalService

Returns:

  • (String)


3643
3644
3645
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3643

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)


3650
3651
3652
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3650

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)


3655
3656
3657
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3655

def slot_ms
  @slot_ms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3662
3663
3664
3665
3666
3667
3668
3669
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3662

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