Struktur des Exports von Preisdaten

Dieses Dokument enthält Referenzinformationen zum Schema der Cloud Billing-Preisdaten, die in jede Tabelle in BigQuery exportiert werden.

Schema der Preisdaten

Im BigQuery-Dataset werden die Preisdaten für Ihr Cloud-Rechnungskonto in eine Datentabelle mit dem Namen cloud_pricing_export geladen.

Im Folgenden wird das Schema der Preisdaten des Cloud-Rechnungskontos beschrieben, die nach BigQuery exportiert werden.

Feld Typ Beschreibung
export_time Zeitstempel Die mit neu angehängten Cloud Billing-Daten verbundene Verarbeitungszeit. Dieser Zeitraum verlängert sich mit jedem neuen Export.
pricing_as_of_time Zeitstempel Die zur Ihrem Cloud-Rechnungskonto gehörenden Preisdaten werden einmal täglich erstellt, um sie für den Export an BigQuery vorzubereiten. Dies ist der tägliche Zeitstempel für den Zeitpunkt der Generierung der Preisdaten.
billing_account_id String Die Cloud-Rechnungskonto-ID, der die Preise zugeordnet sind.
billing_account_name String

Der Name des Cloud-Rechnungskontos, dem die Preise zugeordnet sind.

business_entity_name String Der Name der Google-Dienstfamilie, für die der SKU-Wert gilt. Mögliche Werte sind GCP (Google Cloud) und Maps (Google Maps Platform).
service.id String Die ID des Google Cloud-Dienstes oder der Google Maps Platform API, der bzw. die die Cloud Billing-Daten gemeldet hat. Beispiel: 6F81-5844-456A.
service.description String Die Beschreibung des Google Cloud-Dienstes oder der Google Maps Platform API, der bzw. die die Cloud Billing-Daten gemeldet hat. Beispiel: Compute Engine.
sku.id String Die eindeutige Kennung für die vom Dienst verwendete Ressourcen-SKU. Beispiel: 2E27-4F75-95CD. Eine vollständige Liste der SKUs finden Sie unter Google Cloud SKUs.
sku.description String Eine für Menschen lesbare Beschreibung der vom Dienst verwendeten Ressourcen-Artikelnummer. Beispiel: Ausführung von vordefiniertem N1-Instanzkern in Amerika.
sku.destination_migration_mappings Stringarray Die Namen der Ziel-Artikelnummern, zu denen diese Artikelnummer migriert wird.
product_taxonomy Stringarray Liste der Produktkategorien, die für die Artikelnummer gelten, z. B. Serverlos, Cloud Run, TaskQueue, VMs on Demand, Cores: Pro Core usw.
geo_taxonomy Struct Geografische Metadaten, die sich auf die Artikelnummer beziehen, z. B. Regionen und Multiregionen wie us-east4 oder die Europäische Union
geo_taxonomy.type String Der Typ der geografischen Metadaten, die mit der Artikelnummer verknüpft sind. Gültige Werte sind:
  • GLOBAL: keine Regionen
  • REGIONAL – eine Region
  • MULTI_REGION: mindestens zwei Regionen
geo_taxonomy.regions Stringarray Die Google Cloud-Regionen, denen die Artikelnummer zugeordnet ist. Beispiel: Europe-west2 oder US.

Eine Region ist ein bestimmter geografischer Ort, wie z. B. London. Eine Multiregion ist ein großes geografisches Gebiet (beispielsweise die USA), das mindestens zwei geografische Bereiche enthält.

pricing_unit String Das Kürzel der Nutzungseinheit, in der der Preis angegeben ist (z. B. GiBy.mo).
pricing_unit_description String Die für Menschen lesbare Beschreibung der Nutzungseinheit (z. B. Gibibyte pro Monat).
account_currency_code String Die Währung, die für das Cloud-Rechnungskonto gilt. Hierfür wird der in ISO 4217 definierte Währungscode mit drei Buchstaben verwendet. Weitere Informationen finden Sie unter Lokale Währung für Abrechnung und automatische Zahlungen.
currency_conversion_rate String Der Wechselkurs von US-Dollar in die lokale Währung, die für das Cloud-Rechnungskonto gilt. Wenn die Währung des Cloud-Rechnungskontos USD ist, wird der Wechselkurs auf 1,0 festgelegt.

Wenn die Cloud Billing-Kosten in einer anderen Währung als US-Dollar berechnet werden, können Sie Ihre Nutzungskosten mit dieser Formel in US-Dollar umrechnen: cost ÷ currency_conversion_rate = Nutzungskosten in US-Dollar.

Wenn die Abrechnung in der lokalen Währung erfolgt, rechnet Google die Preise anhand der von führenden Finanzinstituten veröffentlichten Umrechnungskurse in die entsprechende lokale Währung um. Dies beinhaltet alle Gebühren, die für die Abrechnung in einer anderen Währung als US-Dollar erhoben werden. Wir verwenden die Kurse, die am pricing_as_of_time gelten.

list_price Struct

Listenpreis der Artikelnummern der Google Cloud oder Google Maps Platform und Artikelnummer-Preisstufen, die ab dem pricing_as_of_time wirksam werden.

list_price enthält Felder, die die Struktur und den Wert des Listenpreises beschreiben, z. B.:

Die Preise finden Sie unter list_price.tiered_rates.usd_amount.

Der Listenpreis wird für alle Kunden generiert und exportiert. Wenn Ihr Cloud-Rechnungskonto benutzerdefinierte Vertragspreise enthält, werden auch abrechnungsspezifische Preisdaten exportiert.

billing_account_price Struct

Wenn Sie Vertragspreise haben, ist dies der benutzerdefinierte Preis für die Artikelnummer aus dem Vertrag, der mit Ihrem Cloud-Rechnungskonto verknüpft ist.

billing_account_price enthält Felder, die die Struktur und den Wert der benutzerdefinierten Preise für Google Cloud- und Google Maps Platform-Artikelnummern sowie Preisstufen für die Artikelnummern beschreiben. billing_account_price enthält Folgendes:

Ihre vertraglich vereinbarten Preise (sofern für Ihr Cloud-Rechnungskonto gültig) finden Sie unter billing_account_price.tiered_rates.usd_amount.

price_info Struct Hintergrundinformationen zum Vertragspreis.
price_info.price_reason String

Hintergrundinformationen zum Ursprung des Vertragspreises.

Folgende Begründungen sind möglich:

  • DEFAULT_PRICE: Der Standardpreis ist der aktuelle Listenpreis für die SKU.
  • FIXED_PRICE: Ein festgelegter Festpreis für die Artikelnummer, der während der Bedingungen der Vertragsvereinbarung gilt.
  • FIXED_DISCOUNT: Prozentsatz des Rabatts auf den Listenpreis, am Listenpreis an einem bestimmten Datum gebunden.
  • FLOATING_DISCOUNT: Prozentsatz des Rabatts auf den aktuellen Listenpreis (nicht am Listenpreis an einem bestimmten Datum gebunden).
  • MIGRATED_PRICE: Dies gilt für Preise, die von anderen SKUs migriert wurden.
  • MERGED_PRICE: Preis pro SKU nach Zusammenführung aus mehreren Quellen. Bei zusammengeführten Stufen kann beispielsweise jede einzelne Stufe aus einer anderen Quelle mit unterschiedlichen Arten von Rabatten stammen.
  • LIST_PRICE_AS_CEILING: Dies ist ein optionales Vertragsfeature, das nach dem 21. März 2022 für neue Verträge verfügbar ist. Wenn es aktiv ist und der aktuelle Listenpreis unter den benutzerdefinierte Festpreis fällt, wird der Listenpreis (DEFAULT_PREIS) für den SKU-Preis verwendet. Gilt für alle SKUs mit Festpreisen im Vertrag, einschließlich FIXED_PRICE, FIXED_DISCOUNT, MIGRATED_PRICE und MERGED_PRICE.
  • CONTRACTED_PRICE_PROTECTION: Dies gilt für in Ihrem Vertrag preisgeschützte SKUs. Diese Option wird selten verwendet.
price_info.discount_percent Numerisch Bei Vertragspreisen, die das Ergebnis eines prozentualen Rabatts (FIXED_DISCOUNT oder FLOATING_DISCOUNT) sind, ist dies der Prozentsatz des verwendeten Rabatts.
price_info.discount_percent_fixed_date Datum Bei Kontaktpreisen mit einem Rabatt in Prozent, der an ein bestimmtes Datum gebunden ist (FIXED_DISCOUNT), ist dies das Datum.
price_info.discount_migrated_from String Bei vertraglichen Preisen, die von anderen SKUs (MIGRATED_PRICE) migriert wurden, ist dies die Quell-SKU des Rabatts. Wenn eine Artikelnummer in zwei SKUs aufgeteilt ist, wird der Rabatt gelegentlich von der alten zur neuen Artikelnummer migriert.
aggregation_info Struct Stellt die Zusammenfassungsebene und das Intervall für die Preisstufen einer einzelnen Artikelnummer dar.
aggregation_info.aggregation_level String Die Ebene, auf der die Nutzung zur Berechnung der Preisstufen zusammengefasst wird.

Folgende Ebenen sind möglich:

  • ACCOUNT: Gibt eine Artikelnummer mit mehrstufigen Preisen an. Die Artikelnummernutzung für die Preisstufen wird über alle Projekte in einem einzigen Cloud-Rechnungskonto zusammengefasst.
  • PROJECT: Gibt eine Artikelnummer mit mehrstufigen Preisen an. Die Artikelnummernutzung für die Preisstufen wird pro Projekt zusammengefasst.
  • UNKNOWN_AGGREGATION_LEVEL: gibt eine Artikelnummer mit Preisen für einzelne Ebenen an. Dies ist der Standardwert für Artikelnummern mit nicht abgestuften Preisen.
aggregation_info.aggregation_interval String Das Intervall, in dem die Nutzung zur Berechnung der Preisstufen zusammengefasst wird.

Folgende Intervalle sind möglich:

  • ONE_DAY: Gibt eine Artikelnummer mit mehrstufigem Preismodell an; Die Artikelnummernutzung für die Preisstufen wird täglich zusammengefasst.
  • ONE_MONTH: Gibt eine Artikelnummer mit mehrstufigen Preisen an. Die Artikelnummernutzung für die Preisstufen wird jeden Monat zusammengefasst.
  • UNKNOWN_AGGREGATION_INTERVAL: gibt eine Artikelnummer mit Preisen für einzelne Ebenen an. Dies ist der Standardwert für Artikelnummern mit nicht abgestuften Preisen.
tiered_rates Stringarray Informationen zur Preisstufe, einschließlich des Preises für die Artikelnummer in USD und des Preises der Artikelnummer in der Währung des Cloud-Rechnungskontos, die für die Verwendung konfiguriert ist.

Einige Artikelnummern haben nur eine Preisstufe. Wenn eine Artikelnummer mehrere Preisstufen hat, wird jede Preisstufe in einer anderen Zeile angezeigt. Mit tiered_rates.start_usage_amount können Sie Artikelnummern mit mehreren Preisstufen identifizieren.

tiered_rates.pricing_unit_quantity Float Die Einheitsmenge der Preisstufe für die SKU. Wenn z. B. der Stufenpreis 1 $ pro 1.000.000 Byte ist, wird in dieser Spalte 1000000 angezeigt.
tiered_rates.start_usage_amount Float Unterer Grenzbetrag für eine bestimmte Preisstufe, in Preiseinheiten. Beispiel: Bei einer Artikelnummer mit drei Preisstufen wie 0–100 Einheiten, 101–1.000 Einheiten und mehr als 1.001 Einheiten werden drei Preiszeilen mit den Werten 0, 101 und 1.001 als [tiered_rates].start_usage_amount-Werte angezeigt.
tiered_rates.usd_amount Numerisch Der Preis für die Artikelnummer in US-Dollar.
tiered_rates.account_currency_amount Numerisch Der Stufenpreis der Artikelnummer, der von US-Dollar in die Währung umgerechnet wurde, für die das Cloud-Rechnungskonto konfiguriert ist, mithilfe von currency_conversion_rate.

Dieser umgerechnete Preis wird mit der folgenden Formel berechnet: tiered_rates.usd_amount * currency_conversion_rate = tiered_rates.account_currency_amount.

Wenn die Abrechnung in der lokalen Währung erfolgt, rechnet Google die Preise anhand der von führenden Finanzinstituten veröffentlichten Umrechnungskurse in die entsprechende lokale Währung um. Dies beinhaltet alle Gebühren, die für die Abrechnung in einer anderen Währung als US-Dollar erhoben werden. Wir verwenden die Kurse, die am pricing_as_of_time gelten.

Über Preisstufen

SKU-Preise werden nach Preisstufen angeboten. Preisstufen bieten eine Preisstruktur basierend auf verschiedenen Stufen. Einige Artikelnummern haben nur eine Preisstufe, andere wiederum mehrere Preisstufen. Beispiele für Artikelnummern mit mehrstufigen Preisen:

  • Artikelnummern mit kostenloser Nutzungsstufe. Beispiel: 1–1.000 Einheiten sind kostenlos. 1.001 Einheiten werden zum Preis von je $1 berechnet.
  • Artikelnummern, bei denen der Preis pro Einheit sinkt, wenn die Nutzungsmenge innerhalb einer Stufe überschritten wurde. Beispiel: 1–100 Einheiten werden mit je $5 berechnet, 101–1.000 Einheiten mit je $4 und 1001 Einheiten mit je $3.

Einige Hinweise zu mehrstufigen Preisen:

  • Der Nutzungszähler der Stufe wird auf Basis der aggregation_interval der Artikelnummer entweder täglich oder monatlich auf null zurückgesetzt.

    • Tägliche Rücksetzungen der Artikelnummer erfolgen jeden Tag um 00:00 Uhr US and Canadian Pacific Time (UTC-8 oder UTC-7).
    • Monatliche Rücksetzungen auf null der Artikelnummer erfolgen am ersten Tag jedes Kalendermonats (z. B. Januar, Februar usw.) um 00: 00 Uhr US and Canadian Pacific Time (UTC-8 oder UTC-7).
  • Die Stufen werden für jedes Cloud-Rechnungskonto unabhängig ausgeführt und nicht in mehreren Cloud-Rechnungskonten zusammengefasst. Dies gilt auch dann, wenn sich die Projekte in derselben Organisation befinden oder zu derselben Rechtspersönlichkeit gehören.

  • Stufen funktionieren unabhängig pro SKU: Die Nutzung einer einzelnen SKU kann sich nur auf den Preis dieser SKU auswirken. Es gibt keine SKUs, bei denen sich die Nutzung auf die gestaffelten Preise einer anderen SKU auswirkt.

  • Es ist möglich, dass die Preisstufen der Artikelnummern für Listenpreise nicht genau mit den Preisstufen für Vertragspreise übereinstimmen. Dieser Umstand kommt selten vor.

  • Wenn eine SKU mehrere Preisstufen hat, wird jeder Preis der SKU-Stufe in einer separaten Zeile in der Preistabelle aufgeführt. Zum Ermitteln von Artikelnummern mit mehreren Preisstufen können Sie tiered_rates.start_usage_amount verwenden.

  • Je nachdem, wie Sie Ihre Abfrage schreiben, können Sie Ihre Artikelnummer-Preisstufen als verschachtelte oder nicht verschachtelte Daten zurückgeben. Weitere Informationen zu verschachtelten und nicht verschachtelten Daten finden Sie in den folgenden Beispielen.

Beispiele für Preisdatenabfragen

Dieser Abschnitt enthält Beispiele zur Abfrage der Cloud Billing-Preisdaten, die nach BigQuery exportiert wurden.

Dieser Abschnitt enthält verschiedene Beispiele zur Abfrage der BigQuery-Preisdaten, die nach BigQuery exportiert wurden.

Gängige Werte in den Beispielpreisabfragen

In den Abfragebeispielen in diesem Abschnitt werden die folgenden Werte verwendet:

  • Tabellenname: project.dataset.cloud_pricing_export
  • SKU ID: 2DA5-55D3-E679 (Cloud Run – Abfragen)

Preise für eine bestimmte Artikelnummer abrufen

Dieses Beispiel zeigt eine Abfrage, die den list_price für jede Preisstufe für eine bestimmte SKU zurückgibt.

Standard-SQL

SELECT sku.id,  sku.description, list_price.*
FROM `project.dataset.cloud_pricing_export`
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

_PARTITIONTIME ist ein Feld, das von BigQuery automatisch generiert wird. Es stellt das Datum dar, zu dem die Daten gehören. Statt _PARTITIONTIME können Sie ein Feld verwenden, das vom Cloud Billing-Export explizit generiert wird, wie z. B. pricing_as_of_time.

Nachfolgend sehen Sie dieselbe Abfrage, die für die Verwendung des Feldes pricing_as_of_time konfiguriert ist:

SELECT sku.id,  sku.description, list_price.*
FROM `project.dataset.cloud_pricing_export`
WHERE DATE(pricing_as_of_time) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse

Zeile id Beschreibung pricing_unit aggregation_info.
aggregation_level
aggregation_info.
aggregation_interval
tiered_rates.
pricing_unit_quantity
tiered_rates.
start_usage_amount
tiered_rates.
usd_amount
tiered_rates.
account_currency_amount
1 2DA5-55D3-E679 Anfragen COUNT KONTO MONATLICH 1000000 0 0 0
          1000000 2000000 0,4 0,4

Listenpreise für eine bestimmte Artikelnummer einschließlich Dienstbeschreibung

Die beiden Beispiele in diesem Abschnitt zeigen Abfragen, die den list_price für jede Preisstufe für eine bestimmte Artikelnummer zurückgeben und die Artikelnummerbeschreibung und die Dienstbeschreibung umfassen.

  • Beispiel 1 gibt eine Artikelnummer pro Zeile zurück, wobei die Preisstufen als verschachtelte Daten dargestellt werden.
  • Beispiel 2 zeigt das Aufheben der Verschachtelung der Daten. Es wird eine Zeile pro Artikelnummer pro Preisstufe zurückgegeben.

Beispiel 1: Verschachtelte Daten

In diesem Beispiel wird eine einzelne Artikelnummer abgefragt, um list_price zurückzugeben. Diese Artikelnummer hat mehrere Preisstufen. Die Werte des Listenpreisfelds werden in einzelnen Zeilen angezeigt, die unter der Zeile mit der Artikelnummer-ID verschachtelt sind.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       list_price.*
FROM my-billing-admin-project.my_billing_dataset.cloud_pricing_export
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description aggregation_info.
aggregation_level
aggregation_info.
aggregation_interval
tiered_rates.
pricing_unit_quantity
tiered_rates.
start_usage_amount
tiered_rates.
usd_amount
tiered_rates.
account_currency_amount
1 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run KONTO MONATLICH 1000000 0 0 0
            1000000 2000000 0,4 0,4

Beispiel 2: Unverschachtelte Daten, die mit derselben Tabelle verknüpft sind

In diesem Beispiel wird eine einzelne Artikelnummer abgefragt, um list price zurückzugeben. Die Artikelnummer hat mehrere Preisstufen. Die Abfrage zeigt die Verwendung des Operators UNNEST zum Vereinfachen des tiered_rates-Arrays und Verbinden der Felder mit derselben Tabelle, sodass eine Zeile pro Preisstufe entsteht.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       tier.*
FROM `my-billing-admin-project.my_billing_dataset.cloud_pricing_export` as sku_pricing, UNNEST (sku_pricing.list_price.tiered_rates) as tier
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description pricing_unit_quantity start_usage_amount usd_amount account_currency_amount
1 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run 1000000.0 0,0 0,0 0,0
2 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run 1000000.0 2000000.0 0,4 0,4

Produkt-Taxonomie und Geo-Taxonomie zur Abfrage von Artikelnummern verwenden

  • Die Produkt-Taxonomie ist eine Liste von Produktkategorien, die für die Artikelnummer gelten, z. B. Serverlos, Cloud Run oder VMs on Demand.
  • Geo-Taxonomie sind die geografischen Metadaten, die für eine Artikelnummer gelten und aus Typ- und Regionswerten bestehen.

Produkt-Taxonomie einer Artikelnummer abrufen

Dieses Beispiel zeigt eine Abfrage, bei der die Liste product_taxonomy für eine bestimmte Artikelnummer zurückgegeben wird, wobei die Artikelnummer-ID = 2DA5-55D3-E679 (Cloud Run – Abfragen) lautet.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       product_taxonomy
FROM `project.dataset.cloud_pricing_export`
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description product_taxonomy
1 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run GCP
        Serverlos
        Cloud Run
        Andere

Alle Artikelnummern für eine bestimmte Produkt-Taxonomie abrufen

In diesem Beispiel wird eine Abfrage gezeigt, die alle Artikelnummern zurückgibt, die einem angegebenen product_taxonomy entsprechen. In dieser Abfrage ist Serverlos als Wert product taxonomy angegeben.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       product_taxonomy
FROM `project.dataset.cloud_pricing_export`
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
     AND "Serverless" in UNNEST(product_taxonomy)
LIMIT 10
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description product_taxonomy
1 0160-BD7B-4C40 Cloud Tasks-Netzwerk für intraregional ausgehenden Traffic F3A6-D7B7-9BDA Cloud Tasks GCP
        Serverlos
        Cloud Tasks
        Andere
2 FE08-0A74-7AFD Ausgehender Cloud Tasks GOOGLE-API-Traffic F3A6-D7B7-9BDA Cloud Tasks GCP
        Serverlos
        Cloud Tasks
        Andere
3 A81A-32A2-B46D Speicher-Aufgabenwarteschlange Salt Lake City F17B-412E-CB64 App Engine GCP
        Serverlos
        GAE
        Andere
        TaskQueue

Alle Artikelnummern für eine bestimmte geografische Taxonomie und Produkt-Taxonomie abrufen

In diesem Beispiel wird eine Abfrage gezeigt, die alle Artikelnummern zurückgibt, die mit einer bestimmten geo_taxonomy-Region und einem bestimmten product_taxonomy übereinstimmen, wobei region = us-east4 und product_taxonomy = VMs auf Abruf ist.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       geo_taxonomy,
       product_taxonomy
FROM `project.dataset.cloud_pricing_export`
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND "VMs On Demand" in UNNEST(product_taxonomy)
      AND geo_taxonomy.type = "REGIONAL"
      AND "us-east4" in UNNEST (geo_taxonomy.regions)
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description geo_taxonomy.type geo_taxonomy.regions product_taxonomy
1 9174-81EE-425B Premium für einzelne Mandanten für Instanz-RAM für einzelnen Mandanten in Virginia 6F81-5844-456A Compute Engine REGIONAL us-east4 GCP
            Compute
            GCE
            VMs on demand
            Arbeitsspeicher: pro GB
2 C3B9-E891-85ED Instanz-RAM für einzelne Mandanten in Virginia 6F81-5844-456A Compute Engine REGIONAL us-east4 GCP
            Compute
            GCE
            VMs on demand
            Arbeitsspeicher: pro GB
3 6E2A-DCD9-87ED Vordefinierter N1-Instanz-RAM in Virginia 6F81-5844-456A Compute Engine REGIONAL us-east4 GCP
            Compute
            GCE
            VMs on demand
            Arbeitsspeicher: pro GB

Gibt die Listenpreise für eine Artikelnummer mit mehreren Preisstufen zurück

Sie fragen BigQuery-Daten nach Tabellennamen ab. Der Tabellenname, der in der FROM-Klausel der Abfrage verwendet wird, wird anhand von drei Werten ermittelt: project.dataset.BQ_table_name.

In diesen Beispielen verwendete gängige Werte:

  • Tabellenname: project.dataset.cloud_pricing_export
  • SKU ID: 2DA5-55D3-E679 (Cloud Run – Abfragen)

Beispiel 1: Verschachtelte Daten

In diesem Beispiel wird eine einzelne Artikelnummer abgefragt, um list_price zurückzugeben. Diese Artikelnummer hat mehrere Preisstufen. Die Werte des Listenpreisfelds werden in einzelnen Zeilen angezeigt, die unter der Zeile mit der Artikelnummer-ID verschachtelt sind.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       list_price.*
FROM my-billing-admin-project.my_billing_dataset.cloud_pricing_export
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description aggregation_info.
aggregation_level
aggregation_info.
aggregation_interval
tiered_rates.
pricing_unit_quantity
tiered_rates.
start_usage_amount
tiered_rates.
usd_amount
tiered_rates.
account_currency_amount
1 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run KONTO MONATLICH 1000000 0 0 0
            1000000 2000000 0,4 0,4

Beispiel 2: Unverschachtelte Daten, die mit derselben Tabelle verknüpft sind

In diesem Beispiel wird eine einzelne Artikelnummer abgefragt, um list price zurückzugeben. Die Artikelnummer hat mehrere Preisstufen. Die Abfrage zeigt die Verwendung des Operators UNNEST zum Vereinfachen des tiered_rates-Arrays und Verbinden der Felder mit derselben Tabelle, sodass eine Zeile pro Preisstufe entsteht.

Standard-SQL

SELECT sku.id AS sku_id,
       sku.description AS sku_description,
       service.id AS service_id,
       service.description as service_description,
       tier.*
FROM `my-billing-admin-project.my_billing_dataset.cloud_pricing_export` as sku_pricing, UNNEST (sku_pricing.list_price.tiered_rates) as tier
WHERE DATE(_PARTITIONTIME) = "2020-07-20"
      AND sku.id = "2DA5-55D3-E679"
;

Abfrageergebnisse:

Zeile sku_id sku_description service_id service_description pricing_unit_quantity start_usage_amount usd_amount account_currency_amount
1 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run 1000000.0 0,0 0,0 0,0
2 2DA5-55D3-E679 Anfragen 152E-C115-5142 Cloud Run 1000000.0 2000000.0 0,4 0,4

Kosten- und Preisberichte in der Google Cloud Console