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.



3732
3733
3734
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3732

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)


3703
3704
3705
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3703

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)


3708
3709
3710
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3708

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)


3713
3714
3715
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3713

def bytes_processed
  @bytes_processed
end

#external_serviceString

External service name. Corresponds to the JSON property externalService

Returns:

  • (String)


3718
3719
3720
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3718

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)


3725
3726
3727
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3725

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)


3730
3731
3732
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3730

def slot_ms
  @slot_ms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3737
3738
3739
3740
3741
3742
3743
3744
# File 'lib/google/apis/bigquery_v2/classes.rb', line 3737

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