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.



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

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)


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

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)


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

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)


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

def bytes_processed
  @bytes_processed
end

#external_serviceString

External service name. Corresponds to the JSON property externalService

Returns:

  • (String)


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

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)


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

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)


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

def slot_ms
  @slot_ms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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