Struktur des Standarddatenexports

Diese Seite enthält Referenzinformationen zum Schema der Cloud Billing-Standardnutzungskosten, die in jede Tabelle in BigQuery exportiert werden.

Schema der Standardnutzungskosten

In Ihrem BigQuery-Dataset werden Standardinformationen zu den Google Cloud-Nutzungskosten in eine Datentabelle mit dem Namen gcp_billing_export_v1_<BILLING_ACCOUNT_ID> geladen.

Im Folgenden wird das Schema der Standardnutzungskosten von Google Cloud beschrieben, die nach BigQuery exportiert werden. Es enthält Standardinformationen zur Kostennutzung eines Cloud-Rechnungskontos wie Konto-ID, Rechnungsdatum, Dienste, SKUs, Projekte, Labels, Standorte, Kosten, Nutzung, Gutschriften, Korrekturen und Währung.

Beachten Sie bei der Verwendung von standardmäßigen Nutzungskostendaten in BigQuery Folgendes:

  • Beim Auswählen oder Erstellen eines BigQuery-Datasets für Ihre standardmäßigen Nutzungskostendaten können Sie einen beliebigen Dataset-Standort auswählen, der für die Verwendung mit Cloud Billing-Daten unterstützt wird.
  • Wenn Sie den Export der standardmäßigen Nutzungskostendaten in Cloud Billing zum ersten Mal aktivieren und ein Dataset auswählen, das für die Verwendung eines multiregionalen Standorts (EU oder US) konfiguriert ist, sind Cloud Billing-Daten rückwirkend ab dem Beginn des Vormonats verfügbar. Daten werden in chronologischer Reihenfolge exportiert. Beim ersten Backfill exportierter Daten kann es bis zu fünf Tage dauern, bis die reaktiven Cloud Billing-Daten abgeschlossen sind und die neuesten Nutzungsdaten angezeigt werden.
  • Wenn Sie den Export der standardmäßigen Nutzungskostendaten aktivieren und ein Dataset auswählen, das für die Verwendung eines unterstützten regionalen Standorts konfiguriert ist, sind Ihre Cloud Billing-Daten ab dem Datum verfügbar, an dem Sie den Export aktiviert haben.
  • Wenn Sie den Export der standardmäßigen Nutzungskosten aktiviert, deaktiviert und anschließend wieder aktiviert haben, sind die Cloud Billing-Daten für den Zeitraum, in dem sie explizit deaktiviert wurden, möglicherweise nicht verfügbar.
  • Weitere Informationen zur Häufigkeit, mit der Daten in Ihre BigQuery-Tabellen geladen werden.
  • Die Standardnutzungskosten enthalten keine Kostendaten auf Ressourcenebene wie virtuelle Maschinen oder SSDs, die eine Dienstnutzung generieren. Wenn Sie Kostendaten auf Ressourcenebene zur Analyse in BigQuery exportieren möchten, sollten Sie den Export der detaillierten Nutzungskostendaten aktivieren. Die exportierten detaillierten Nutzungskosten enthalten alle Felder und Informationen, die in den Standardnutzungskosten enthalten sind.
  • Weitere Einschränkungen, die sich auf den Export von Abrechnungsdaten in BigQuery auswirken können, z. B. Datasets mit aktivierten vom Kunden verwalteten Verschlüsselungsschlüsseln (Customer-Managed Encryption Keys, CMEK).
Feld Typ Beschreibung
billing_account_id String

Die Cloud-Rechnungskonto-ID, mit der die Nutzung verknüpft ist.

Für Reseller: Dies ist die ID eines Cloud-Rechnungsunterkontos, für das die Nutzungskosten generiert werden, und nicht die ID des übergeordneten Cloud-Rechnungskontos des Resellers.

invoice.month String

Das Jahr und der Monat (JJJJMM) der Rechnung, die die Kostenpositionen enthält. Beispiel: "201901" entspricht Januar 2019.

Mit diesem Feld können Sie die Gesamtkosten der Rechnung abrufen. Cloud Billing-Export in BigQuery – Abfragebeispiele

cost_type String

Die Art der Kosten dieser Position: regelmäßige Kosten, Steuern, Korrekturen oder Rundungsfehler.

service.id String Die ID des Dienstes, mit dem die Nutzung verknüpft ist.
service.description String Der Google Cloud-Dienst, der die Cloud Billing-Daten gemeldet hat.
sku.id String Die ID der vom Dienst verwendeten Ressource. Eine vollständige Liste der SKUs finden Sie unter Google Cloud SKUs.
sku.description String Eine Beschreibung des vom Dienst verwendeten Ressourcentyps. Ein Ressourcentyp für Cloud Storage ist beispielsweise Standard Storage US.
usage_start_time Zeitstempel Die Startzeit des stündlichen Nutzungszeitfensters, in dem die auftretenden Kosten berechnet wurden. Nutzung und Kosten werden für alle Dienste mit stündlicher Genauigkeit angezeigt. Eine lange Dauer der Dienstnutzung verteilt sich so auf mehrere Stundenzeitfenster.

Weitere Informationen finden Sie in der BigQuery-Dokumentation im Abschnitt über Zeitstempeldatentypen. Weitere Informationen finden Sie außerdem unten im Abschnitt Unterschiede zwischen exportierten Daten und Rechnungen.

usage_end_time Zeitstempel Die Endzeit des stündlichen Nutzungszeitfensters, in dem die auftretenden Kosten berechnet wurden. Nutzung und Kosten werden für alle Dienste mit stündlicher Genauigkeit angezeigt. Eine lange Dauer der Dienstnutzung verteilt sich so auf mehrere Stundenzeitfenster.

Weitere Informationen finden Sie in der BigQuery-Dokumentation im Abschnitt über Zeitstempeldatentypen. Weitere Informationen finden Sie außerdem unten im Abschnitt Unterschiede zwischen exportierten Daten und Rechnungen.

project Struct project enthält Felder, die das Cloud Billing-Projekt beschreiben, z. B. ID, Nummer, Name, Herkunftszahlen und Labels.
project.id String Die ID des Google Cloud-Projekts, das die Cloud Billing-Daten generiert hat.
project.number String Eine intern generierte, anonymisierte, eindeutige Kennung für das Google Cloud-Projekt, das die Cloud Billing-Daten generiert hat. In Ihren Support-Fällen und anderen Kundenkommunikationen wird Google Ihre Projekte anhand dieser Projektnummer zuordnen.
project.name String Der Name des Google Cloud-Projekts, das die Cloud Billing-Daten generiert hat.
project.ancestry_numbers String Die Ancestors in der Ressourcenhierarchie für das Projekt, das durch die angegebene project.id, z. B. "my-project-123", identifiziert wird.

Beispiel: /ParentOrgNumber/ParentFolderNumber/. Weitere Informationen finden Sie im Artikel zur Ressourcenhierarchie.

project.ancestors Struct

In diesem Feld werden die Struktur und der Wert der Ressourcenhierarchie einer Kostenposition beschrieben, einschließlich Projekten, Ordnern und Organisationen. Ancestors werden vom Knoten zum Stamm sortiert (Projekt, Ordner, dann Organisation).

project.ancestors.resource_name String Der relative Ressourcenname für jeden Ancestor im Format "resourceType/resourceNumber". Mit project.ancestors.resource_name erhalten Sie eine ausführlichere Ansicht von project.ancestry_numbers.
project.ancestors.display_name String Der Name, den Sie in der Konsole für Ihre Ressource erstellt haben.
project.labels.key String Wenn Labels vorhanden sind, ist dies der Schlüssel im Schlüssel/Wert-Paar, das das Label des Google Cloud-Projekts enthält, in dem die Nutzung stattgefunden hat. Weitere Informationen zum Verwenden von Labels finden Sie im Hilfeartikel Labels erstellen und verwalten.
project.labels.value String Wenn Labels vorhanden sind, ist dies der Wert im Schlüssel/Wert-Paar, das das Label des Google Cloud-Projekts enthält, in dem die Nutzung stattgefunden hat. Weitere Informationen zum Verwenden von Labels finden Sie im Hilfeartikel Labels erstellen und verwalten.
labels.key String Wenn Labels vorhanden sind, ist dies der Schlüssel im Schlüssel/Wert-Paar, das das Label der Google Cloud-Ressource enthält, in der die Nutzung stattgefunden hat. Weitere Informationen zum Verwenden von Labels finden Sie im Hilfeartikel Labels erstellen und verwalten.
labels.value String Wenn Labels vorhanden sind, ist dies der Wert im Schlüssel/Wert-Paar, das das Label der Google Cloud-Ressource enthält, in der die Nutzung stattgefunden hat. Weitere Informationen zum Verwenden von Labels finden Sie im Hilfeartikel Labels erstellen und verwalten.
system_labels.key String Wenn Systemlabels vorhanden sind, ist dies der Schlüssel im Schlüssel/Wert-Paar, das das vom System generierte Label der Ressource enthält, in der die Nutzung stattgefunden hat. Weitere Informationen finden Sie unter Verfügbare Systemlabels.
system_labels.value String Wenn Systemlabels vorhanden sind, ist dies der Wert im Schlüssel/Wert-Paar, das das vom System generierte Label der Ressource enthält, in der die Nutzung stattgefunden hat. Weitere Informationen finden Sie unter Verfügbare Systemlabels.
location.location String Standort der Nutzung auf der Ebene eines Landes, einer Region oder einer Zone bzw. global für Ressourcen, die keinen festen Standort haben. Weitere Informationen finden Sie unter Geografie und Regionen und Google Cloud-Standorte.
location.country String Wenn location.location ein Land, eine Region oder eine Zone ist, enthält dieses Feld das Land der Nutzung, z. B. US. Weitere Informationen finden Sie unter Geografie und Regionen und Google Cloud-Standorte.
location.region String Wenn location.location eine Region oder Zone ist, enthält dieses Feld die Nutzungsregion, z. B. us-central1. Weitere Informationen finden Sie unter Geografie und Regionen und Google Cloud-Standorte.
location.zone String Wenn location.location eine Zone ist, enthält dieses Feld die Zone der Nutzung, z. B. us-central1-a. Weitere Informationen finden Sie unter Geografie und Regionen und Google Cloud-Standorte.
cost Gleitkommazahl Die Kosten für die Nutzung ohne Gutschriften, mit einer Genauigkeit von bis zu sechs Dezimalstellen. Für Gesamtkosten mit Berücksichtigung von Gutschriften muss den Kosten credits.amount hinzugefügt werden. Weitere Informationen finden Sie in dieser Beispielabfrage.
currency String Die Währung, in der die Kosten abgerechnet werden. Weitere Informationen zur Landeswährung für Abrechnung und Zahlungen
currency_conversion_rate Gleitkommazahl Der Wechselkurs von US-Dollar in die Landeswährung. cost/currency_conversion_rate sind so die Kosten in US-Dollar.
usage.amount Gleitkommazahl Die Menge der verwendeten usage.unit.
usage.unit String Die Basiseinheit, in der die Ressourcennutzung gemessen wird. Die Basiseinheit für Standard Storage ist z. B. Byte-Sekunden.
usage.amount_in_pricing_units Gleitkommazahl Die Menge der verwendeten usage.pricing_unit.
usage.pricing_unit String Die Einheit, in der die Ressourcennutzung gemäß der Cloud Billing Catalog API gemessen wird.
credits Struct credits enthält Felder, die die Struktur und den Wert der Gutschriften beschreiben, die mit Google Cloud- und Google Maps Platform-Artikelnummern verknüpft sind.
credits.id String Falls vorhanden, weist das Attribut auf eine Gutschrift hin zu der Produkt-SKU hin. credits.id-Werte sind entweder eine eindeutige alphanumerische Kennung, (z. B. 12-b34-c56-d78) oder eine Beschreibung des Guthabentyps (z. B. Rabatt für zugesicherte Nutzung: CPU).

Wenn das Feld credits.id leer ist, wird die Produkt-SKU mit keiner Gutschrift verknüpft.

credits.full_name String Der Name der Gutschrift, die mit der Artikelnummer des Produkts verknüpft ist. Dies ist eine für Menschen lesbare Beschreibung eines alpha-numerischen credits.id. Beispiele sind Guthaben für den kostenlosen Testzeitraum oder ausgabenbasierte Rabatte für die zugesicherte Nutzung.

credits.full_name-Werte sind nur für Artikelnummern mit einem alphanumerischen credits.id vorhanden. Wenn der Wert von credits.id eine Beschreibung des Gutschriftstyps ist (z. B. Rabatt für zugesicherte Nutzung: CPU), dann ist das Feld credits.full_name leer.

credits.type String Dieses Feld beschreibt den Zweck oder Ursprung des credits.id. Es gibt folgende Gutschriftentypen:
  • COMMITTED_USAGE_DISCOUNT: Ressourcenbasierte Verträge für zugesicherte Nutzung, die für Compute Engine erworben werden und im Gegenzug erhebliche Rabatte auf die VM-Nutzung erhalten.
  • COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE: Ausgabenbasierte Verträge mit Nutzungszusage, die für Dienstleistungen im Austausch gegen Ihre Zusage, einen Mindestbetrag auszugeben, erworben werden.
  • DISCOUNT: Der Rabatttyp wird für Gutschriften verwendet, die Sie nach Erreichen eines vertraglich festgelegten Ausgabenbetrags erhalten haben. In den Cloud Billing-Berichten, die in der Google Cloud Console verfügbar sind, wird der Rabatttyp als Ausgabenbasierte Rabatte (vertraglich) aufgeführt.
  • FREE_TIER: Einige Dienste bieten kostenlose Ressourcennutzung bis zu einem bestimmten Limit. Bei diesen Diensten wird mit Gutschriften die Nutzung der kostenlosen Stufe implementiert.
  • PROMOTION: Der Gutschriftentyp „Promotion“ umfasst einen kostenlosen Testzeitraum von Google Cloud, Gutschriften für Marketingkampagnen oder andere Zuwendungen zur Nutzung von Google Cloud. Angebotsgutschriften werden als Zahlungsart betrachtet und automatisch angewendet, um die Gesamtkosten zu reduzieren.
  • RESELLER_MARGIN: Wenn Sie Reseller sind, zeigt der Gutschriftentyp Reseller_Margin die Rabatte für das Reseller-Programm für jede infrage kommende Position an.
  • SUBSCRIPTION_BENEFIT: Gutschriften, die Sie durch den Kauf eines langfristigen Abos für Dienste erhalten.
  • SUSTAINED_USAGE_DISCOUNT: Der Gutschriftentyp „Rabatte für kontinuierliche Nutzung“ ist ein automatischer Rabatt, den Sie erhalten, wenn Sie bestimmte Compute Engine-Ressourcen für einen erheblichen Teil des Abrechnungsmonats nutzen.
credits.name String Eine Beschreibung der Gutschrift, die auf das Cloud-Rechnungskonto angewendet wurde.
credits.amount Gleitkommazahl Der Betrag der Gutschrift, die auf die Nutzung angerechnet wird.
adjustment_info Struct adjustment_info enthält Felder, die die Struktur und den Wert einer Korrektur an Kostenpositionen beschreiben, die einem Cloud-Rechnungskonto zugeordnet sind.

Werte von adjustment_info sind nur vorhanden, wenn die Kostenposition für eine Cloud Billing-Änderung generiert wurde. Die Änderung kann als Korrektur oder aus anderen Gründen vorgenommen werden. Der Typ adjustment_info enthält Details zur Korrektur, unabhängig davon, ob sie zur Behebung eines Fehlers oder aus anderen Gründen vorgenommen wurde.

adjustment_info.id String Falls vorhanden, weist dies auf eine Anpassung an eine Kostenposition hin. adjustment_info.id ist die eindeutige ID für alle Anpassungen, die durch ein Problem verursacht werden.
adjustment_info.description String Eine Beschreibung der Korrektur und ihre Ursache.
adjustment_info.type String

Die Art der Anpassung.

Zu den Typen gehören:

  • USAGE_CORRECTION: Eine Korrektur aufgrund einer falschen Nutzung.
  • PRICE_CORRECTION: Eine Korrektur aufgrund falscher Preismodellregeln.
  • METADATA_CORRECTION: Eine Korrektur, um Metadaten zu korrigieren, ohne die Kosten zu ändern.
  • GOODWILL: Ein Guthaben, das dem Kunden gutgeschrieben wird.
  • SALES_BASED_GOODWILL: Ein Guthaben, das dem Kunden als Dritter für einen Vertrag ausgestellt wird.
  • SLA_VIOLATION: Ein Guthaben, das dem Kunden aufgrund eines Verstoßes gegen das Service Level Objective (SLO) ausgestellt wird.
  • BALANCE_TRANSFER: Eine Korrektur, um Geld von einem Zahlungskonto auf ein anderes zu übertragen.
  • ACCOUNT_CLOSURE: Eine Korrektur, um ein geschlossenes Konto auf null zu bringen.
  • GENERAL_ADJUSTMENT: Eine allgemeine Abrechnungskontoänderung
adjustment_info.mode String

Art der Korrektur.

Zu den Modi gehören:

  • PARTIAL_CORRECTION: Bei der Korrektur werden die ursprüngliche Nutzung und die Kosten teilweise negiert.
  • COMPLETE_NEGATION_WITH_REMONETIZATION: Bei der Korrektur werden die ursprüngliche Nutzung und die Kosten vollständig geschätzt und die korrigierten Werbebuchungen mit aktualisierter Nutzung und Kosten korrigiert.
  • COMPLETE_NEGATION: Bei der Korrektur werden die ursprüngliche Nutzung und die Kosten vollständig geschätzt. Weitere Informationen werden nicht wieder monetarisiert.
  • MANUAL_ADJUSTMENT: Die Anpassung wird manuell Kosten und Nutzung zugeordnet.
export_time Zeitstempel Die mit neu angehängten Cloud Billing-Daten verbundene Verarbeitungszeit. Dieser Zeitraum verlängert sich mit jedem neuen Export.
Weitere Informationen finden Sie außerdem unten im Abschnitt Unterschiede zwischen exportierten Daten und Rechnungen.
tags Struct

Felder, die das Tag beschreiben, z. B. Schlüssel, Wert und Namespace.

tags.key String

Der Kurzname oder Anzeigename des Schlüssels, der mit diesem bestimmten Tag verknüpft ist.

tags.value String

Die an ein tags.key angehängten Ressourcen. Es kann immer genau ein Wert an eine Ressource für einen bestimmten Schlüssel angehängt werden.

tags.inherited Boolesch

Gibt an, ob eine Tag-Bindung übernommen wurde (Tags „übernommen = wahr“) oder direkt/nicht übernommen (Tags „übernommen = falsch“). Sie können eine Tag-Bindung für eine übergeordnete Ressource in der Ressourcenhierarchie erstellen.

tags.namespace String

Stellt die Ressourcenhierarchie dar, in der Tag-Schlüssel und -Werte definiert werden. Namespace kann mit den Tag-Schlüssel- und Tag-Wert-Kurznamen kombiniert werden, um einen global eindeutigen und voll qualifizierten Namen für den Tag-Schlüssel oder den Tag-Wert zu erstellen.

cost_at_list Gleitkommazahl

Die Listenpreise, die allen Positionen zugeordnet sind, die Ihrem Cloud-Rechnungskonto in Rechnung gestellt werden.

transaction_type String

Der Transaktionstyp des Verkäufers. Folgende Transaktionstypen sind möglich:

  • GOOGLE = 1: Von Google Cloud verkaufte Dienste.
  • THIRD_PARTY_RESELLER = 2: Drittanbieterdienste, die von Google Cloud weiterverkauft werden.
  • THIRD_PARTY_AGENCY = 3: Drittanbieterdienste, die von einem Partner verkauft werden, wobei Google Cloud als Agent fungiert.
seller_name String

Der rechtliche Name des Verkäufers.

Standardnutzungskosten und detaillierte Nutzungskosten

In den folgenden Abschnitten werden die Standardnutzungskosten und die detaillierten Nutzungskostendaten beschrieben, die nach BigQuery exportiert werden.

Über Labels

Die Kostendaten für ein bestimmtes Label zeigen nur die Nutzung ab dem Datum, seit das Label auf eine Ressource angewendet wurde. Wenn Sie beispielsweise einer Compute Engine-VM am 15. Januar 2024 das Label environment:dev hinzufügen, enthält jede Analyse für environment:dev nur die Nutzung für diese VM seit dem 15. Januar.

Die Labeldaten können auch zu unterschiedlichen Zeiten für verschiedene Dienste angezeigt werden, je nachdem, wann der jeweilige Dienst sie bereitstellt.

Verfügbare Systemlabels

Systemlabels sind Schlüssel/Wert-Paare für wichtige Metadaten zu der Ressource, mit der die Nutzung generiert wurde. Die folgenden Systemlabels sind bei der jeweiligen Nutzung automatisch enthalten.

system_labels.key system_labels.value-Beispiel Beschreibung
compute.googleapis.com/machine_spec n1-standard-1, custom-2-2048 Konfiguration der virtuellen Maschine. Weitere Informationen finden Sie unter Maschinentypen.
compute.googleapis.com/cores Für n1-Standard-4 ist dies 4; für custom-2-2048 ist dies 2 Die Anzahl der vCPUs, die der virtuellen Maschine zur Verfügung stehen.
compute.googleapis.com/memory Für n1-Standard-4 ist dies 15.360 (15 GB * 1.024 MB/GB); für custom-2-2048 ist dies 2.048 Die Speicherkapazität (in MB), die der virtuellen Maschine zur Verfügung steht.
compute.googleapis.com/is_unused_reservation true; false Gibt die Nutzung an, die über zonale Reservierungen reserviert wurde, aber nicht verwendet wurde.

Unterschiede zwischen exportierten Daten und Rechnungen

Google Cloud-Produkte melden Nutzungs- und Kostendaten in unterschiedlichen Intervallen an Cloud Billing-Vorgänge. Deshalb kann es zu einer Verzögerung zwischen der Nutzung von Google Cloud-Diensten und der Nutzung und Kosten kommen, die in Cloud Billing angezeigt werden. In der Regel sind Ihre Kosten innerhalb eines Tages verfügbar, manchmal kann es aber auch mehr als 24 Stunden dauern.

Am Ende eines Kalendermonats kann es daher sein, dass eine spät gemeldete Nutzung möglicherweise nicht auf die Rechnung des betreffenden Monats kommt, sondern möglicherweise erst auf der Rechnung des nächsten Monats zu finden ist.

Wenn Sie Ihre Kosten mithilfe von Zeitstempelfeldern abfragen, können die zurückgegebenen Daten eine nach dem Abrechnungszyklus gemeldete Nutzung enthalten, die nicht in der Rechnung für den jeweiligen Nutzungsmonat enthalten war. In diesem Fall werden die zurückgegebenen Cloud Billing-Daten möglicherweise nicht direkt dieser Rechnung zugeordnet.

Zu den Zeitstempelfeldern gehören:

  • usage_start_time
  • usage_end_time
  • export_time

Zur Rückgabe von Cloud Billing-Daten, die direkt einer Rechnung zugeordnet sind, führen Sie eine Abfrage für invoice.month anstelle von Zeitstempelfeldern aus.

Steuern

Ab dem 1. September 2020 wird Ihre Steuerpflicht in den Nutzungskosten nicht mehr als einzelne Position, sondern für jedes einzelne Projekt angezeigt. Wenn Sie Abfragen oder Visualisierungen haben, die von Steuerdaten abhängen, müssen Sie möglicherweise die Abfragen aktualisieren, damit diese Änderungen berücksichtigt werden.

Zum Beispiel sahen bei Kosten, die vor dem 1. September erfasst wurden, die Nutzungskostendaten ähnlich wie im folgenden Beispiel aus. Dabei beträgt die Steuerschuld 10 $.

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project Regulär 60 $
123456-ABCDEF-123456 test-project Regulär 40 $
123456-ABCDEF-123456 [empty] Steuer 10 $

Bei Kosten, die nach dem 1. September erfasst werden, wird der Betrag über 10 $ in 6 $ für example-project und 4 $ fürtest-project aufgeteilt:

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project Regulär 60 $
123456-ABCDEF-123456 test-project Regulär 40 $
123456-ABCDEF-123456 example-project Steuer 6 $
123456-ABCDEF-123456 test-project Steuer 4 $

Fehler und Korrekturen

Im unwahrscheinlichen Fall, dass die Cloud Billing-Daten einen Fehler enthalten oder korrigiert werden müssen, werden Ihren Cloud Billing-Daten weitere Daten zur Korrektur des Fehlers hinzugefügt. Dies betrifft gegebenenfalls nur die folgenden Spalten:

  • cost
  • credit
  • usage.amount
  • export_time

Wenn Sie feststellen möchten, welche Daten neu sind, können Sie dazu export_time abfragen.

In den exportierten Daten ist der Rechnungsmonat für Cloud Billing-Korrekturen und zugehörige Steuern der Monat, in dem die Korrektur veranlasst wurde. Allerdings kann die Korrektur auf eine Rechnung in einem anderen Monat als dem Monat der Veranlassung der Korrektur angewendet werden. Prüfen Sie auf der Seite „Dokumente” der Google Cloud Console die Rechnung oder die Dokumente zu Gut- und Lastschriften, um zu erfahren, ob und wo eine Korrektur angewendet wurde. Weitere Informationen zur Analyse von Korrekturen und wie sie angewendet werden finden Sie unter Gut-/Lastschriften und Korrekturen verstehen.

Startguthaben in benutzerdefinierten Verträgen

Wenn Sie einen benutzerdefinierten Preisvertrag haben, erhalten Sie möglicherweise Startguthaben, die im Rahmen des Vertrags in Google Cloud angewendet werden können. Beispielsweise können Sie 1.000 USD Guthaben für die Verwendung von Compute Engine-Ressourcen erhalten. Startguthaben gelten in der Regel als Zahlungsmittel. Vorhandenes Startguthaben wird automatisch zur Reduzierung Ihres Rechnungsbetrages verwendet.

Ihr Vertrag gibt an, ob das Startguthaben auf Ihre Kosten angerechnet wird, die zum Listenpreis einer Artikelnummer berechnet werden, oder auf den Nettopreis (nach Rabatten).

Das Startguthaben wird auf Kosten angerechnet, die zum Listenpreis berechnet werden. Im Kostentabellenbericht ist dazu ein Service namens Invoice mit einer Artikelnummer namens Contract billing adjustment aufgeführt. Mit dieser Artikelnummer werden Ihr Gutschriften angepasst, sodass sie auf die Kosten zum Listenpreis angerechnet werden können. Fragen Sie die system.labels-Spalten ab, um die Nutzung zu sehen, für die die Anpassung gilt. Der Schlüssel in system.labels.key ist cloud-invoice.googleapis.com/sku_id und der Wert in system.labels.value enthält die SKU-ID, der die Gutschrift und die Anpassung zugeordnet wurden.

Tags

<atrack-type="tasks"track-name="internallink"track-metadata-position="body" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="iUWjxJRweELRfbeZQy/YQwc9zZofjBXGTjbrIegRjdnVz6nUhi3jRGB4DwvsPvv3">Tags sind Ressourcen in Form von Schlüssel/Wert-Paaren, die direkt oder durch Übernahme angehängt werden können. Sie können Tags verwenden, um Rückbuchungen, Audits und andere Kostenzuordnungsanalysen durchzuführen. Sie können auch Tags und die bedingte Durchsetzung von Richtlinien verwenden, um Ihre Ressourcenhierarchie genau zu steuern.</atrack-type="tasks"track-name="internallink"track-metadata-position="body">

Tags haben ein robustes Berechtigungsmodell und können die Übernahme, die zentrale Verwaltung, die Nomenklatur-Standardisierung und die Integration von Richtlinien-Engines unterstützen, während <atrack-type="tasks"track-name="internallink"track-metadata-position="body" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="VL5eQBNGQ+VFZ8Ic4FEC0gc9zZofjBXGTjbrIegRjdloWDKjJtF205jHQgIOO0QT5mGjae8t5DMH2GXg6ydeww=="> Sie mit Labels als separates Tool Ressourcen mit Annotationen versehen könnnen.</atrack-type="tasks"track-name="internallink"track-metadata-position="body">

Tag-Daten werden in BigQuery-Exporten für Ressourcen, Projekte, Ordner und Organisationen angezeigt.

Verfügbare Tags

Die Exporte für Standardkosten und detaillierte Kosten für Ressourcen, Projekte, Ordner und Organisationen enthalten folgende Felder für Tag-Daten: Tag-Schlüssel, Tag-Wert, übernommene Tags und Tag-Namespace.

Tags auf Ressourcenebene im Cloud Billing-Datenexport sind für die folgenden Ressourcen verfügbar:

  • Compute Engine-Instanzen
  • Cloud Storage-Buckets
  • Cloud Spanner-Instanzen
  • Cloud Run-Dienste
  • Artifact Registry-Repositories
  • Memorystore for Redis-Instanzen

Tag-Beschränkungen

  • Es kann bis zu einer Stunde dauern, bis Tags an BigQuery-Exporte übertragen werden. Wenn ein Tag innerhalb einer Stunde hinzugefügt oder entfernt wurde oder eine Ressource weniger als eine Stunde lang existiert, wird sie möglicherweise nicht im Export angezeigt.

Abfragebeispiele für Standardnutzungskosten

In diesem Abschnitt wird anhand von Beispielen gezeigt, wie Sie die in BigQuery exportierten Cloud Billing-Standardnutzungskosten abfragen.

Tabellennamen angeben, der in Abfragen verwendet werden soll

Zum Abfragen der Cloud Billing-Daten in BigQuery müssen Sie in diesen Beispielen den Tabellennamen in der Klausel FROM angeben. Der Tabellenname wird mit drei Werten ermittelt: project.dataset.BQ_table_name.

Häufige Werte, die in den Abfragebeispiele für Standardkosten verwendet werden

In den Abfragebeispielen in diesem Abschnitt wird als Tabellenname der folgende Wert verwendet: project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX

Diese Abfragebeispiele funktionieren auch mit detaillierten Nutzungskosten, die nach BigQuery exportiert werden, allerdings sind sie nicht zum Abrufen der Informationen auf Ressourcenebene geschrieben, die mit der Exportoption zu detaillierten Nutzungskosten bereitgestellt wird.

Gesamtkosten einer Rechnung zurückgeben

Die folgenden Abfragen zeigen zwei Möglichkeiten, wie Sie sich Kosten und Guthaben anhand von exportierten Abrechnungsdaten anzeigen lassen können.

  • Im Feld total werden die Gleitkommawerte für Kosten und Gutschriften direkt summiert. Dadurch kann es zu Rundungsfehlern kommen.
  • Das Feld total_exact wandelt die Kosten- und Gutschriftswerte vor dem Summieren in "Micros" um. Nach dem Summieren werden diese wieder in Dollar umgewandelt und so Rundungsfehler mit Gleitkommazahlen vermieden.

Beispiel 1: Summe aller Kosten pro Rechnung

Diese Abfrage zeigt die Rechnungssumme für jeden Monat als Summe der regelmäßigen Kosten, Steuern, Korrekturen und Rundungsfehler.

Standard-SQL

SELECT
  invoice.month,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000
    AS total_exact
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1
ORDER BY 1 ASC
;

Das Ergebnis der vorherigen Abfrage kann beispielsweise so aussehen:

Zeile Monat Summe Summe (genau)
1 201901 1005,004832999999984 $ 1005,00 $
2 201902 992,3101739999999717 $ 992,31 $
3 201903 1220,761089999999642 $ 1220,76 $

Beispiel 2: Details zu den zurückgegebenen Daten nach Kostenart pro Rechnungsmonat

Diese Abfrage ergibt die Gesamtsummen für jeden cost_type pro Monat. Kostenarten umfassen regelmäßige Kosten, Steuern, Korrekturen und Rundungsfehler.

Standard-SQL

SELECT
  invoice.month,
  cost_type,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM   UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000
    AS total_exact
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1, 2
ORDER BY 1 ASC, 2 ASC
;

Das Ergebnis der vorherigen Abfrage kann beispielsweise so aussehen:

Zeile Monat Kostenart Summe Summe (genau)
1 201901 Regelmäßige Kosten 1000,501209987994782 $ 1000,50 $
2 201901 Rundungsfehler -0,500489920049387 $ -0,50 $
3 201901 Steuer 10,000329958477891 $ 10,00 $
4 201901 Korrektur -5,002572999387045 $ -5,00 $

Abfragebeispiele mit Labels

Die folgenden Beispiele zeigen andere Möglichkeiten zum Abfragen von Daten mit Labels.

Für die Beispiele in diesem Abschnitt wird von Folgendem ausgegangen:

  • Sie haben zwei Anwendungen ("grapefruit-squeezer" und "chocolate-masher").
  • Für jede Anwendung haben Sie zwei Umgebungen: "dev" (Entwicklung) und "prod" (Produktion).
  • In der Entwicklungsumgebung ist eine kleine Instanz pro Anwendung vorhanden.
  • In der Produktionsumgebung ist eine kleine Instanz in Amerika und eine kleine Instanz in Asien vorhanden.
  • Jede Instanz trägt den Namen der Anwendung und der Umgebung.
  • Sie haben eine Instanz ohne Label, die Sie zum Experimentieren verwenden.

Ihre Rechnung beträgt insgesamt 24 $ und setzt sich so zusammen:

Instanz Labels Gesamtkosten
Kleine Instanz mit einer VCPU in Amerika 4 $
Kleine Instanz mit einer VCPU in Amerika app: chocolate-masher
environment: dev
2 $
Kleine Instanz mit einer VCPU in Amerika app: grapefruit-squeezer
environment: dev
3 $
Kleine Instanz mit einer VCPU in Amerika app: chocolate-masher
environment: prod
3,25 $
Kleine Instanz mit einer VCPU in Asien app: chocolate-masher
environment: prod
3,75 $
Kleine Instanz mit einer VCPU in Amerika app: grapefruit-squeezer
environment: prod
3,50 $
Kleine Instanz mit einer VCPU in Asien app: grapefruit-squeezer
environment: prod
4,50 $

Jede Zeile einzeln abfragen

Die detaillierteste Kostenansicht erhalten Sie, indem Sie jede Zeile einzeln abfragen, ohne Gruppierungen vorzunehmen. Gehen wir davon aus, dass mit Ausnahme von Labels und der SKU-Beschreibung alle Felder wie Projekt, Produkt usw. identisch sind.

Standard-SQL

SELECT
  sku.description,
  TO_JSON_STRING(labels) as labels,
 cost as cost
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`;

Legacy-SQL

TO_JSON_STRING not supported.
Zeile sku.description Labels Kosten
1 Kleine Instanz mit einer VCPU in Amerika [] 4 $
2 Kleine Instanz mit einer VCPU in Amerika [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"dev"}] 2 $
3 Kleine Instanz mit einer VCPU in Amerika [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"dev"}] 3 $
4 Kleine Instanz mit einer VCPU in Amerika [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] 3,25 $
5 Kleine Instanz mit einer VCPU in Asien [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] 3,75 $
6 Kleine Instanz mit einer VCPU in Amerika [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] 3,50 $
7 Kleine Instanz mit einer VCPU in Asien [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] 4,50 $
GESAMT 24 $

Nach Labelzuordnung als JSON-String gruppieren

Mit dieser Methode können Sie die Kosten schnell und einfach nach Labelkombination aufschlüsseln.

Standard-SQL

SELECT
  TO_JSON_STRING(labels) as labels,
  sum(cost) as cost
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY labels;

Legacy-SQL

TO_JSON_STRING not supported.
Zeile Labels Kosten
1 [] 4 $
2 [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"dev"}] 2 $
3 [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"dev"}] 3 $
4 [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] 7 $
5 [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] 8 $
GESAMT 24 $

Nach Labelwert für einen bestimmten Schlüssel gruppieren

Häufig werden die Kosten nach den Werten eines bestimmten Labelschlüssels aufgeschlüsselt. Kosten ohne diesen Schlüssel können Sie durch LEFT JOIN und Eingabe des Schlüsselfilters als JOIN-Bedingung (anstelle von WHERE) einbeziehen. Sie erhalten auf diese Weise eine vollständige Übersicht Ihrer Kosten.

Standard-SQL

SELECT
  labels.value as environment,
  SUM(cost) as cost
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
  ON labels.key = "environment"
GROUP BY environment;

Legacy-SQL

SELECT
  labels.value as environment,
  SUM(cost) as cost
FROM [project:dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX]
WHERE labels.key = "environment" OR labels.key IS NULL
GROUP BY environment;
Zeile Umgebung Kosten
1 prod 15 $
2 dev 5 $
3 null 4 $
GESAMT 24 $

Nach Schlüssel/Wert-Paar gruppieren

Behalten Sie dies beim Interpretieren oder Exportieren der Ergebnisse im Hinterkopf. Eine einzelne Zeile zeigt hier eine gültige Summe ohne doppelte Zählung. Sie sollte jedoch nicht mit anderen Zeilen kombiniert werden, es sei denn, beide haben denselben Schlüssel oder die Schlüssel werden definitiv nicht in derselben Ressource verwendet.

Standard-SQL

SELECT
  labels.key as key,
  labels.value as value,
  SUM(cost) as cost
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
GROUP BY key, value;

Legacy-SQL

SELECT
  labels.key as key,
  labels.value as value,
  SUM(cost)
FROM [project:dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX]
GROUP BY key, value;
Zeile Schlüssel Wert Kosten
1 null null 4 $
2 app chocolate-masher 9 $
3 app grapefruit-squeezer 11 $
4 environment dev 5 $
5 environment prod 15 $
GESAMT 44 $

Beachten Sie, dass die Gesamtsumme größer als auf der Rechnung ist.

Abfragen mit Rabatten für zugesicherte Nutzung

Die folgenden Abfragen zeigen, wie die Gebühren und Gutschriften aufgerufen werden können, die mit Rabatten für zugesicherte Nutzung in exportierten Abrechnungsdaten verknüpft sind. Um zu verstehen, wie Ihre Zusicherungsgebühren und -Gutschriften Ihrem Cloud-Rechnungskonto und Ihren Projekten zugeordnet werden, siehe Zuweisung von Rabatten für zugesicherte Nutzung.

Zusicherungsgebühren ansehen

Verwenden Sie die folgende Beispielabfrage, um die Zusicherungsgebühren für Ihre Rabatte für zugesicherte Nutzung in Ihrem Abrechnungsdatenexport aufzurufen.

Standard-SQL

SELECT
    invoice.month AS invoice_month,
    SUM(cost) as commitment_fees
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
WHERE LOWER(sku.description) LIKE "commitment%"
GROUP BY 1

Gutschriften für Zusicherungen ansehen

Mit der folgenden Beispielabfrage können Sie das Guthaben für Rabatte für zugesicherte Nutzung im Abrechnungsdatenexport ansehen.

Standard-SQL

SELECT
    invoice.month AS invoice_month,
    SUM(credits.amount) as CUD_credits
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(credits) AS credits
WHERE LOWER(credits.name) LIKE "committed use discount%"
GROUP BY 1

Filter für die Ressourcenhierarchie zur Überprüfung der Herkunft verwenden

Sie können Ressourcenhierarchiefilter verwenden, um Kosten nach Hierarchieelementen wie Projekten, Ordnern und Organisationen zusammenzufassen. Diese Abfragebeispiele zeigen Methoden für die Summierung von Kosten, die nach Elementen der Ressourcenhierarchie gefiltert sind, und für die Anzeige der Projektherkunft.

Beispiel 1: Nach Ressourcenname filtern

In diesem Beispiel werden Abfragen demonstriert, die Kosten nach Projektherkunft gruppieren und nur Kosten herausfiltern, die unter einem bestimmten Hierarchieelement entstanden sind, das durch den relativen Ressourcennamen identifiziert wird.

String-Methode

SELECT
    invoice.month AS invoice_month,
    TO_JSON_STRING(project.ancestors) as ancestors,
    SUM(cost)
        + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0))
        AS net_cost
  FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX` as bq
  WHERE TO_JSON_STRING(project.ancestors) like "%resource_name\":\"folders/1234"
  GROUP BY invoice_month, ancestors
  ORDER BY invoice_month, ancestors

UNNEST-Methode

SELECT
    invoice.month AS invoice_month,
    TO_JSON_STRING(project.ancestors) as ancestors,
    SUM(cost)
        + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0))
        AS net_cost
  FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX` as bq, UNNEST(project.ancestors) as ancestor
  WHERE ancestor.resource_name = "folders/1234"
  GROUP BY invoice_month, ancestors
  ORDER BY invoice_month, ancestors

Beispiel 2: Nach Anzeigenamen filtern

In diesem Beispiel werden Abfragen demonstriert, die Kosten nach Projektherkunft gruppieren und nur nach Kosten filtern, die unter einem bestimmten Hierarchieelement erzeugt wurden, das durch den vom Nutzer angegebenen Anzeigenamen identifiziert wird.

Stringabgleich-Methode

SELECT
    invoice.month AS invoice_month,
    TO_JSON_STRING(project.ancestors) as ancestors,
    SUM(cost)
        + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0))
        AS net_cost
  FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX` as bq
  WHERE TO_JSON_STRING(project.ancestors) like "%display_name\":\"MyFolderName%"
  GROUP BY invoice_month, ancestors
  ORDER BY invoice_month, ancestors

UNNEST-Methode

SELECT
    invoice.month AS invoice_month,
    TO_JSON_STRING(project.ancestors) as ancestors,
    SUM(cost)
        + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0))
        AS net_cost
  FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX` as bq, UNNEST(project.ancestors) as ancestor
  WHERE ancestor.display_name = "MyFolderName"
  GROUP BY invoice_month, ancestors
  ORDER BY invoice_month, ancestors

Abfragebeispiele mit Tags

Die folgenden Beispiele zeigen Möglichkeiten, wie Sie Ihre Daten mit Tags abfragen können.

Kosten nach Rechnungsmonat mit Tags berechnen

Die folgende Abfrage zeigt, wie Sie Rückgabekosten für das Tag cost_center nach Rechnungsmonat verwenden können.

SELECT
  invoice.month AS invoice_month,
  tag.value AS cost_center,
  ROUND((SUM(CAST(cost AS NUMERIC))
    + SUM(IFNULL((SELECT SUM (CAST(c.amount AS NUMERIC))
                  FROM UNNEST(credits) AS c), 0))), 2)
    AS net_cost
FROM `ivory-vim-309221.billing_export_dataset.gcp_billing_export_resource_v1_018ADD_3CEBBB_A4DF22`, UNNEST(tags) AS tag
WHERE tag.key = "cost_center" AND tag.namespace = "821092389413"
GROUP BY invoice.month, tag.value
ORDER BY invoice.month, tag.value;

Das Ergebnis der vorherigen Abfrage kann beispielsweise so aussehen:

Row invoice_month cost_center net_cost
1 202208 android_mobile_apps 9,93
2 202208 ios_mobile_apps 9,93
3 202209 android_mobile_apps 25,42
4 202209 ios_mobile_apps 25,4
5 202209 Personalisierung 16,08

Kosten für nicht getaggte Ressourcen ansehen

Diese Abfrage zeigt die Rechnungssumme für nicht getaggte Ressourcen, gruppiert nach Rechnungsmonat.

SELECT
 invoice.month AS invoice_month,
 ROUND((SUM(CAST(cost AS NUMERIC))
   + SUM(IFNULL((SELECT SUM(CAST(c.amount AS NUMERIC))
                 FROM UNNEST(credits) AS c), 0))), 2)
   AS net_cost
FROM
 `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
WHERE "color" NOT IN (SELECT key FROM UNNEST(tags))
GROUP BY invoice_month
ORDER BY invoice_month;

Das Ergebnis der vorherigen Abfrage kann beispielsweise so aussehen:

Row invoice_month net_cost
1 202202 0
2 202203 16,81
3 202204 54,09
4 202205 55,82
5 202206 54,09
6 202207 55,83
7 202208 31,49

Weitere Abfragebeispiele

Abfragekosten und Gutschriften nach Projekt für einen bestimmten Rechnungsmonat

Durch die Angabe eines bestimmten Rechnungsmonats, z. B. Juni 2020 (im Format JJJJMM), gibt diese Abfrage eine Ansicht der nach Projekt gruppierten Kosten und Gutschriften zurück und zeigt Projektlabels an.

Standard-SQL

SELECT
  project.name,
  TO_JSON_STRING(project.labels) as project_labels,
  sum(cost) as total_cost,
  SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0)) as total_credits
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
WHERE invoice.month = "202006"
GROUP BY 1, 2
ORDER BY 1;

Legacy-SQL

TO_JSON_STRING not supported.
Row name project_labels total_cost total_credits
1 CTG - Dev [{"key":"ctg_p_env","value":"dev"}] 79.140979 -4.763796
2 CTG – Prod [{"key":"ctg_p_env","value":"prod"},{"key":"ctg_team","value":"eng"}] 32.466272 -3.073356
3 CTG – Sandbox [{"key":"ctg_p_env","value":"dev"}] 0 0
4 CTG – Storage [{"key":"ctg_p_env","value":"prod"},{"key":"ctg_team","value":"data"}] 7.645793 -0.003761

Kosten- und Preisberichte in der Google Cloud Console