Structure de l'exportation détaillée des données

Cette page fournit des informations de référence pour le schéma des données détaillées de coût d'utilisation de Cloud Billing qui sont exportées vers chaque table dans BigQuery.

Les données de coûts d'utilisation détaillées fournissent toutes les informations incluses dans les données de coût d'utilisation standard, ainsi que des champs supplémentaires fournissant des données de coût précises au niveau des ressources, comme une machine virtuelle ou un disque SSD qui génère une utilisation des services. L'exportation détaillée comprend des informations précises sur les coûts liés aux services suivants :

  • Compute Engine
  • Cloud Storage
  • Google Kubernetes Engine (GKE)

    Pour afficher la répartition des coûts de cluster GKE dans une exportation de données détaillée, vous devez également activer l'allocation des coûts pour GKE.

  • Cloud Functions

  • Cloud Run

  • Cloud SQL

  • Spanner

  • App Engine

  • Firestore et Datastore

  • Memorystore pour Redis

  • Bigtable

Identifier les données de coût précises par service

Pour analyser des informations détaillées sur les coûts dans une exportation détaillée, utilisez le tableau suivant pour identifier la colonne contenant des informations sur des ressources spécifiques.

Description du service Colonne Comment identifier les ressources
Compute Engine service.description et resource.name ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Cloud Storage service.description et resource.global_name

La colonne service.description contient le nom du service. La colonne resource.global_name contient un identifiant unique de la ressource.

Google Kubernetes Engine (GKE) labels.key

Utilisez les clés de libellés suivantes pour filtrer les ressources :

  • goog-fleet-project : filtre les ressources de votre cluster par projet hôte de parc, si le cluster est enregistré dans un parc.
  • goog-k8s-cluster-location : filtre vos ressources GKE par emplacement.
  • goog-k8s-cluster-name : filtre vos ressources GKE par cluster.
  • goog-k8s-node-pool-name : filtre les ressources de votre cluster par pool de nœuds.
  • k8s-namespace : filtre vos ressources GKE par espace de noms.
  • k8s-namespace-labels : filtre vos ressources GKE par libellé d'espace de noms de parc (clients GKE Enterprise uniquement).
  • k8s-label : permet d'afficher toutes vos ressources GKE.

Pour afficher les coûts précis d'un cluster GKE dans l'exportation détaillée de vos données de coût, vous devez également activer l'allocation des coûts pour GKE.

Consultez des exemples de requêtes pour le filtrage des données GKE dans les exportations BigQuery.

Cloud Functions service.description et resource.name ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Cloud Run service.description et resource.name ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Cloud SQL service.description et resource.global_name

La colonne service.description contient le nom du service et la colonne resource.global_name contient un identifiant unique de la ressource.

Spanner service.description et resource.global_name

La colonne service.description contient le nom du service et la colonne resource.global_name contient un identifiant unique de la ressource.

App Engine service.description et resource.name, ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Firestore et Datastore service.description et resource.name, ou resource.global_name

La colonne service.description correspond à App Engine. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

BigQuery service.description et resource.name, ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Dataflow service.description et resource.name, ou resource.global_name

La colonne service.description contient le nom du service. La colonne resource.name contient le nom fourni par l'utilisateur. La colonne resource.global_name contient un identifiant unique pour la ressource.

Memorystore pour Redis service.description et resource.global_name

La colonne service.description contient le nom du service. La colonne resource.global_name contient un identifiant unique de la ressource.

Bigtable service.description et resource.global_name

La colonne service.description contient le nom du service. La colonne resource.global_name contient un identifiant unique de la ressource.

Consultez des exemples d'interrogation de données précises pour vos ressources.

Schéma détaillé des données de coût d'utilisation

Dans votre ensemble de données BigQuery, vos données de coût détaillé de Google Cloud sont chargées dans une table de données nommée gcp_billing_export_resource_v1_<BILLING_ACCOUNT_ID>.

Lorsque vous utilisez les données de coût d'utilisation détaillé dans BigQuery, tenez compte des points suivants :

  • Lorsque vous sélectionnez ou créez un ensemble de données BigQuery pour vos données de coût d'utilisation détaillé, vous pouvez sélectionner n'importe quel emplacement d'ensemble de données accepté à utiliser avec les données Cloud Billing.
  • Lorsque vous activez l'exportation des données de coût d'utilisation détaillé pour la première fois dans Cloud Billing, si vous sélectionnez un ensemble de données configuré pour utiliser un emplacement multirégional (États-Unis ou Union européenne), les données Cloud Billing sont disponibles rétroactivement depuis le début du mois précédent. Les données sont exportées dans l'ordre chronologique. Pour le remplissage initial des données exportées, l'exportation de vos données Cloud Billing rétroactives peut prendre jusqu'à cinq jours avant que puissiez commencer à voir vos données d'utilisation les plus récentes.
  • Si vous activez l'exportation des données de coût d'utilisation détaillé et sélectionnez un ensemble de données configuré pour utiliser un emplacement régional, vos données Cloud Billing sont disponibles à partir de la date à laquelle vous avez activé l'exportation.
  • Si vous avez activé, désactivé, puis réactivé l'exportation des données de coût d'utilisation détaillé, il est possible que les données de facturation Cloud ne soient pas disponibles pour la période pendant laquelle elles ont été explicitement désactivées.
  • Apprenez-en plus sur la fréquence des chargements de données dans vos tables BigQuery.
  • Consultez les autres limites susceptibles de compromettre l'exportation de vos données de facturation vers BigQuery, telles que les ensembles de données avec des clés de chiffrement gérées par le client (CMEK).
  • Tenez compte du volume de données supplémentaire dont vos tables BigQuery pourraient avoir besoin et du coût supplémentaire lors de l'activation des données de coût d'utilisation détaillé au lieu de l'exportation des données de coût d'utilisation standard. La précision accrue des informations au niveau des ressources peut augmenter le nombre de lignes, qui sont agrégées au format de coût d'utilisation standard. Nous vous recommandons de consulter la page Contrôler les coûts dans BigQuery afin de découvrir d'autres bonnes pratiques en matière de gestion des coûts BigQuery.
Champ Type Description
billing_account_id String

ID du compte de facturation Cloud auquel l'utilisation est associée.

Revendeurs : pour les coûts d'utilisation générés par un sous-compte de facturation Cloud, il s'agit de l'ID du sous-compte, et non de l'ID du compte de facturation Cloud principal du revendeur.

invoice.month String

Année et mois (AAAAMM) de la facture qui inclut les lignes de coûts. Par exemple : "201901" équivaut à janvier 2019.

Vous pouvez utiliser ce champ pour obtenir le total des frais sur la facture. Consultez la section Exemples de requêtes BigQuery sur des données de facturation Cloud exportées.

cost_type String

Type de coût représenté par cette ligne : erreur standard, de taxe, d'ajustement ou d'arrondi.

service.id String ID du service auquel l'utilisation est associée.
service.description Chaîne Le service Google Cloud ayant enregistré les données de facturation Cloud.
sku.id Chaîne ID de la ressource utilisée par le service. Pour obtenir la liste complète des SKU, consultez la page SKU Google Cloud.
sku.description String Description du type de ressource utilisé par le service. Par exemple, Stockage standard aux États-Unis est un type de ressource pour Cloud Storage.
usage_start_time Timestamp Heure de début de la période d'utilisation horaire au cours de laquelle le coût donné a été calculé. L'utilisation et les coûts de tous les services s'affichent selon un horaire précis, ce qui signifie que l'utilisation des services pour des opérations de longue durée est répartie sur plusieurs périodes horaires.

Pour en savoir plus, accédez à la documentation BigQuery concernant les types de données d'horodatage. Consultez également la section Différences entre les données exportées et les factures ci-dessous.

usage_end_time Timestamp Heure de fin de la période d'utilisation horaire au cours de laquelle le coût donné a été calculé. L'utilisation et les coûts de tous les services s'affichent selon un horaire précis, ce qui signifie que l'utilisation des services pour des opérations de longue durée est répartie sur plusieurs périodes horaires.

Pour en savoir plus, accédez à la documentation BigQuery concernant les types de données d'horodatage. Consultez également la section Différences entre les données exportées et les factures ci-dessous.

project Struct project contient des champs qui décrivent le projet Cloud Billing, tels que l'ID, le numéro, le nom, ancêtre_numbers et les libellés.
project.id String ID du projet Google Cloud ayant généré les données Cloud Billing.
project.number String Identifiant unique, anonymisé et généré en interne pour le projet Google Cloud qui a généré les données Cloud Billing. Pour vos demandes d'assistance et autres communications client, Google désignera vos projets par ce numéro de projet.
project.name String Nom du projet Google Cloud ayant généré les données Cloud Billing.
project.ancestry_numbers String Ancêtres de la hiérarchie des ressources pour le projet identifié par la valeur project.id spécifiée (par exemple, my-project-123).

Par exemple : /ParentOrgNumber/ParentFolderNumber/. En savoir plus sur la hiérarchie des ressources.

project.ancestors Struct

Ce champ décrit la structure et la valeur de la hiérarchie des ressources d'un élément de ligne de coût, y compris les projets, les dossiers et les organisations. Les ancêtres sont classés en partant du nœud et en remontant vers la racine (projet, dossier, puis organisation).

project.ancestors.resource_name String Nom de ressource relatif de chaque ancêtre au format "resourceType/resourceNumber". L'utilisation de project.ancestors.resource_name offre une vue plus complète de project.ancestry_numbers.
project.ancestors.display_name String Nom que vous avez créé pour votre ressource dans la console.
project.labels.key String En cas de présence de libellés, la partie clé de la paire clé-valeur comportant le libellé du projet Google Cloud associé à l'utilisation. Pour en savoir plus sur les libellés, consultez la page Utiliser des libellés.
project.labels.value String En cas de présence de libellés, la partie valeur de la paire clé-valeur comportant le libellé du projet Google Cloud associé à l'utilisation. Pour en savoir plus sur les libellés, consultez la page Utiliser des libellés.
labels.key String En cas de présence de libellés, la partie clé de la paire clé-valeur comportant le libellé de la ressource Google Cloud associée à l'utilisation. Pour en savoir plus sur les libellés, consultez la page Utiliser des libellés.
labels.value String En cas de présence de libellés, la partie valeur de la paire clé-valeur comportant le libellé de la ressource Google Cloud associée à l'utilisation. Pour en savoir plus sur les libellés, consultez la page Utiliser des libellés.
system_labels.key String En cas de présence de libellés système, la partie clé de la paire clé-valeur comportant le libellé généré par le système sur la ressource associée à l'utilisation. Consultez également Libellés système disponibles.
system_labels.value String En cas de présence de libellés système, la partie valeur de la paire clé-valeur comportant le libellé généré par le système sur la ressource associée à l'utilisation. Consultez également Libellés système disponibles.
location.location String Emplacement de l'utilisation au niveau d'un pays, d'une région ou d'une zone ; ou global pour les ressources qui n'ont pas d'emplacement spécifique. Pour en savoir plus, consultez les sections Zones géographiques et régions et Emplacements Google Cloud.
location.country String Lorsque location.location est un pays, une région ou une zone, ce champ correspond au pays d'utilisation, par exemple US. Pour en savoir plus, consultez les sections Zones géographiques et régions et Emplacements Google Cloud.
location.region String Lorsque location.location est une région ou une zone, ce champ correspond à la région d'utilisation, par exemple us-central1. Pour en savoir plus, consultez les sections Zones géographiques et régions et Emplacements Google Cloud.
location.zone String Lorsque location.location est une zone, ce champ correspond à la zone d'utilisation, par exemple us-central1-a. Pour en savoir plus, consultez les sections Zones géographiques et régions et Emplacements Google Cloud.
cost Nombre à virgule flottante Coût de l'utilisation avant tout crédit, avec une précision allant jusqu'à six décimales. Pour obtenir le coût total, crédits inclus, tous les champs credits.amount doivent être ajoutés au coût. Pour en savoir plus, consultez cet exemple de requête.
currency String Devise dans laquelle les coûts sont facturés. Pour en savoir plus, consultez Devise locale pour la facturation et les paiements.
currency_conversion_rate Float Le taux de change du dollar américain dans la devise locale. Autrement dit, cost/currency_conversion_rate correspond au coût en dollars américains.
usage.amount Float Quantité d'usage.unit utilisée.
usage.unit Chaîne Unité de base dans laquelle l'utilisation des ressources est mesurée. Par exemple, l'unité de base pour le stockage standard est l'octet par seconde.
usage.amount_in_pricing_units Float Quantité d'usage.pricing_unit utilisée.
usage.pricing_unit String Unité dans laquelle l'utilisation des ressources est mesurée, conformément à l'API Cloud Billing Catalog.
credits Struct credits contient des champs qui décrivent la structure et la valeur des crédits associés aux codes SKU Google Cloud et Google Maps Platform.
credits.id String S'il est présent, indique qu'un crédit est associé au code SKU du produit. Les valeurs credits.id sont des identifiants uniques alphanumériques (par exemple, 12-b34-c56-d78) ou une description du type de crédit (par exemple, Remise sur engagement d'utilisation : processeur).

Si le champ credits.id est vide, le SKU du produit n'est associé à aucun crédit.

credits.full_name String Le nom du crédit associé au code SKU du produit. Il s'agit d'une description lisible d'une valeur alphanumérique de credits.id. Exemples : Crédit d'essai sans frais ou Remise sur engagement d'utilisation basée sur les dépenses.

Les valeurs credits.full_name ne sont présentes que pour les codes SKU avec une propriété credits.id alphanumérique. Si la valeur de credits.id est une description du type de crédit (par exemple Remise sur engagement d'utilisation : processeur), le champ credits.full_name est vide.

credits.type String Ce champ décrit l'objectif ou l'origine de l'objet credits.id. Les types de crédits incluent :
  • COMMITTED_USAGE_DISCOUNT : contrats d'engagement d'utilisation basés sur des ressources souscrits pour Compute Engine en retour à des prix fortement réduits pour l'utilisation des VM.
  • COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE : contrats d'engagement d'utilisation basés sur les dépenses souscrits pour les services en échange de votre engagement à dépenser un montant minimal.
  • DISCOUNT : le type de crédit de la remise est utilisé pour les crédits cumulés lorsqu'un seuil de dépenses contractuel est atteint. Notez que dans les rapports Cloud Billing disponibles dans la console Google Cloud, le type de crédit de la remise est indiqué sous la forme Remises basées sur les dépenses (contractuelles).
  • FREE_TIER : certains services proposent l'utilisation gratuite des ressources jusqu'aux limites spécifiées. Des crédits sont appliqués pour rendre gratuite l'utilisation de ces services.
  • PROMOTION : le type d'avoir promotionnel comprend l'essai offert de Google Cloud et des crédits de campagne marketing ou d'autres subventions pour utiliser Google Cloud. Lorsqu'ils sont disponibles, les avoirs promotionnels sont considérés comme un mode de paiement et sont automatiquement appliqués pour réduire votre facture totale.
  • RESELLER_MARGIN : si vous êtes revendeur, le type de crédit marge du revendeur indique les remises du programme revendeur obtenues pour chaque élément de campagne éligible.
  • SUBSCRIPTION_BENEFIT : crédits acquis en achetant des abonnements à long terme aux services en échange de remises.
  • SUSTAINED_USAGE_DISCOUNT : le type de crédit pour les remises automatiques proportionnelles à une utilisation soutenue vous est accordé lorsque vous exécutez des ressources Compute Engine spécifiques pendant une grande partie du mois de facturation.
credits.name String Description du crédit appliqué au compte de facturation Cloud.
credits.amount Nombre à virgule flottante Le montant du crédit appliqué à l'utilisation.
adjustment_info Struct adjustment_info contient des champs qui décrivent la structure et la valeur d'un ajustement pour les éléments de campagne associés à un compte Cloud Billing.

Les valeurs adjustment_info ne sont présentes que si la ligne de coût a été générée pour une modification Cloud Billing. Une modification peut se produire pour des raisons liées aux corrections ou à la non-correction. Le type adjustment_info contient des informations sur l'ajustement, qu'il ait été émis pour corriger une erreur ou pour d'autres raisons.

adjustment_info.id String S'il est présent, indique qu'un ajustement est associé à un élément de ligne de coût. adjustment_info.id est un identifiant unique pour tous les ajustements associés causé par un problème donné.
adjustment_info.description String Description de l'ajustement et de sa cause.
adjustment_info.type Chaîne

Type d'ajustement.

Les types suivants sont inclus :

  • USAGE_CORRECTION : correction effectuée en raison d'une utilisation incorrecte constatée.
  • PRICE_CORRECTION : correction effectuée en raison de règles de tarification incorrectes.
  • METADATA_CORRECTION : correction permettant de corriger les métadonnées sans modifier le coût.
  • GOODWILL : crédit accordé à un client pour sa goodwill.
  • SALES_BASED_GOODWILL : crédit accordé au client pour sa goodwill, dans le cadre d'un contrat.
  • SLA_VIOLATION : crédit accordé au client en raison d'une violation de l'objectif de niveau de service (SLO).
  • BALANCE_TRANSFER : ajustement du transfert de fonds d'un compte de paiement vers un autre.
  • ACCOUNT_CLOSURE : ajustement pour appliquer un compte clôturé à un solde nul.
  • GENERAL_ADJUSTMENT : modification générale d'un compte de facturation.
adjustment_info.mode String

La manière dont l'ajustement a été émis.

Les modes disponibles sont les suivants :

  • PARTIAL_CORRECTION : la correction annule partiellement l'utilisation et le coût d'origine.
  • COMPLETE_NEGATION_WITH_REMONETIZATION : la correction annule complètement l'utilisation et le coût d'origine, et émet les éléments de ligne corrigés en cas d'utilisation et de coûts mis à jour.
  • COMPLETE_NEGATION : la correction annule complètement l'utilisation et le coût d'origine. Par ailleurs, aucune autre utilisation n'est plus remonétisée.
  • MANUAL_ADJUSTMENT : l'ajustement est alloué manuellement au coût et à l'utilisation.
export_time Timestamp Temps de traitement associé aux données Cloud Billing ajoutées. Cette valeur augmente toujours à chaque nouvelle exportation.
Consultez également la section Différences entre les données exportées et les factures ci-dessous.
tags Struct

Champs décrivant le tag, tels que la clé, la valeur et l'espace de noms.

tags.key String

Nom court ou nom à afficher de la clé associée à ce tag.

tags.value String

Les ressources associées à une tags.key. À tout moment, une seule valeur peut être associée à une ressource pour une clé donnée.

tags.inherited Booléen

Indique si une liaison de tag est héritée (tags hérités = true) ou directe/non héritée (tags hérités = false). Vous pouvez créer une liaison de tag à une ressource parente dans la hiérarchie des ressources.

tags.namespace String

Représente la hiérarchie des ressources qui définit les clés et les valeurs de tag. L'espace de noms peut être combiné à la clé de tag et aux noms courts de valeur de tag afin de créer un nom complet unique pour la clé de tag ou la valeur de tag.

cost_at_list Nombre à virgule flottante

Prix catalogue associés à toutes les lignes facturées sur votre compte de facturation Cloud.

transaction_type String

Type de transaction du vendeur. Il peut s'agir de l'un des types de transactions suivants :

  • GOOGLE = 1 : services vendus par Google Cloud.
  • THIRD_PARTY_RESELLER = 2 : services tiers revendus par Google Cloud.
  • THIRD_PARTY_AGENCY = 3 : services tiers vendus par un partenaire, avec Google Cloud agissant en tant qu'agent.
seller_name String

Nom légal du vendeur.

Champs supplémentaires disponibles pour l'exportation détaillée des données de coût d'utilisation
resource Struct

Champs décrivant la structure et la valeur des informations correspondant aux ressources de service (comme une machine virtuelle ou un disque SSD) qui génèrent l'utilisation.

resource.global_name String

Identifiant de service unique pour la ressource qui a généré une utilisation pertinente.

resource.name Chaîne

Identifiant spécifique au service pour la ressource qui a généré une utilisation pertinente. Il peut s'agir d'une entrée générée par l'utilisateur.

price Struct

Champs qui décrivent la structure et la valeur liées aux prix facturés pour l'utilisation.

price.effective_price Numeric

Prix facturé pour l'utilisation des SKU Google Cloud ou Google Maps Platform et des niveaux de tarification des SKU. Si votre compte de facturation Cloud dispose d'une tarification personnalisée et contractuelle, il s'agit du prix spécifique au compte de facturation. Sinon, il s'agit du prix catalogue du SKU ou du niveau du SKU.

price.tier_start_amount Numeric

Limite inférieure du nombre d'unités pour le niveau de tarification d'un SKU. Par exemple, un SKU comportant trois niveaux de tarification, tels que "1 à 100 unités", "101 à 1 000 unités" et "1 001 unités et plus", affiche trois lignes de tarification pour le SKU, avec "0", "101" et "1 001" dans le champ price.tier_start_amount représentant la quantité d'unités de départ pour les niveaux de tarification des SKU.

Apprenez-en plus sur les niveaux de tarification.
price.unit String

Unité d'utilisation dans laquelle la tarification est spécifiée et l'utilisation des ressources est mesurée (par exemple, gibioctet, tébioctet, mois, année, gibioctet-heure, gibioctet-mois ou nombre). La valeur du champ price.unit correspond à celle du champ usage.pricing_unit.

price.pricing_unit_quantity Numeric

Quantité d'unités du niveau de tarification des SKU. Par exemple, si la tarification du niveau est de 1 $ pour 1 000 000 octets, cette colonne indiquera 1 000 000.

subscription Struct

Champs décrivant vos engagements basés sur les dépenses ou sur les ressources. Vous pouvez utiliser ces champs afin d'analyser vos frais pour des engagements spécifiques.

subscription.instance_id Chaîne

ID d'abonnement associé à un engagement.

Comprendre les données de coût d'utilisation standard et détaillé

Les sections suivantes décrivent les données de coût d'utilisation standard et détaillé exportées vers BigQuery.

À propos des libellés

Les données de coût d'une étiquette spécifique n'affichent que l'utilisation à partir de la date à laquelle l'étiquette a été appliquée à une ressource. Par exemple, si vous ajoutez l'étiquette environment:dev à une VM Compute Engine le 15 janvier 2024, toute analyse pour environment:dev n'inclut que l'utilisation de cette VM depuis le 15 janvier.

Les données d'étiquettes peuvent également s'afficher à différents moments pour divers services, selon la date à laquelle chaque service les fournit.

Libellés système disponibles

Les libellés système sont des paires valeur/clé pour des métadonnées importantes concernant la ressource qui a généré l'utilisation. Les libellés système suivants sont automatiquement inclus dans l'utilisation applicable.

system_labels.key Exemple de fichier system_labels.value Description
compute.googleapis.com/machine_spec n1-standard-1, custom-2-2048 Configuration de la machine virtuelle. Pour plus d'informations, consultez la page Types de machines.
compute.googleapis.com/cores 4 pour n1-standard-4 ; 2 pour custom-2-2048 Nombre de processeurs virtuels disponibles sur la machine virtuelle
compute.googleapis.com/memory 15360 pour n1-standard-4 (soit 15 Go * 1024 Mo/Go) ; 2048 pour custom-2-2048 Quantité de mémoire (en Mo) disponible sur la machine virtuelle
compute.googleapis.com/is_unused_reservation true ; false Indique l'utilisation qui a été réservée via des Réservations zonales, mais qui n'a pas été utilisée.

Différences entre les données exportées et les factures

Les produits Google Cloud transmettent les données d'utilisation et de coût aux processus de facturation Cloud Billing à des intervalles variables. Par conséquent, vous pouvez constater un délai entre votre utilisation des services Google Cloud, et la disponibilité des données d'utilisation et de coût pour l'affichage dans Cloud Billing. Généralement, vos coûts sont disponibles dans la journée, mais ils peuvent parfois prendre plus de 24 heures.

Au terme d'un mois calendaire, il se peut que l'utilisation de fin de mois ne soit pas incluse dans la facture du mois en cours, mais reportée sur la facture du mois suivant.

Lorsque vous interrogez vos coûts à l'aide des champs d'horodatage, les données renvoyées peuvent récupérer l'utilisation non constatée après l'émission de la facture se rapportant au même mois d'utilisation. Par conséquent, il est possible que les données Cloud Billing renvoyées ne correspondent pas directement à cette facture.

Les champs d'horodatage comprennent les suivants :

  • usage_start_time
  • usage_end_time
  • export_time

Pour renvoyer des données Cloud Billing directement associées à une facture, exécutez une requête sur invoice.month plutôt que sur les champs d'horodatage.

Taxes

À compter du 1er septembre 2020, vos données de coût d'utilisation affichent le montant de la taxe applicable à chacun de vos projets, au lieu d'une ligne unique. Si certaines de vos requêtes ou visualisations dépendent de données de taxes, vous devrez peut-être les mettre à jour pour tenir compte de ces modifications.

Par exemple, pour les coûts enregistrés avant le 1er septembre, vos données de coût d'utilisation ressemblent à l'exemple suivant, dans lequel le montant de la taxe s'élève à 10 USD.

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project Standard 60 $
123456-ABCDEF-123456 test-project Standard 40 $
123456-ABCDEF-123456 [vide] Taxes 10 $

Pour les coûts enregistrés après le 1er septembre, les 10 $ de taxes sont décomposés, soit 6 $ pour example-project et 4 $ pour test-project :

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project Standard 60 $
123456-ABCDEF-123456 test-project Standard 40 $
123456-ABCDEF-123456 example-project Taxes 6 $
123456-ABCDEF-123456 test-project Taxes 4 $

Erreurs et ajustements

Dans le cas peu probable où vos données Cloud Billing contiendraient une erreur ou nécessiteraient un ajustement, elles sont ajoutées à des données correctives. Ces ajustements appartiennent à l'une des deux catégories suivantes : modifications ou corrections de facturation.

Modifications apportées à la facturation

Les modifications apportées à la facturation apparaissent sur des lignes séparées. Si vous avez reçu une modification de facturation, une nouvelle ligne de votre exportation Cloud Billing vers BigQuery affiche la modification. Les ajustements affichés correspondent aux documents liés à la facture, à la note de crédit et à la note de débit disponibles dans la zone Documents de la section Facturation de la console Google Cloud.

Pour en savoir plus sur les modifications de facturation et leur application, consultez la section Comprendre les notes et les ajustements.

Corrections

Les corrections s'affichent sous la forme de nouvelles données annulant les données incorrectes sur les codes SKU sources. Dans certains cas, de nouvelles données remplaceront les débits incorrects. Toutes les colonnes de l'exportation des données de facturation correspondent aux données d'origine, à l'exception des colonnes suivantes :

  • cost
  • credit
  • usage.amount
  • export_time

Par exemple, imaginez que vous payez 10 $ pour votre utilisation du SKU A le 1er janvier. Sur votre facture de janvier (émise début février), vous verrez un montant de 10 $ pour le SKU A. Toutefois, le 2 février, Google Cloud a émis une correction du SKU A, réduisant le coût d'utilisation à 5 $. Vous recevrez deux lignes supplémentaires sur votre facture de février (émise début mars) :

  • - 10 $ pour une utilisation le 1er janvier (en supprimant les frais d'origine)
  • 5 $ pour une utilisation le 1er janvier (indiquant les frais prévus)

Ces nouveaux éléments présentent une colonne adjustment_info dans l'exportation des données de facturation. La facture d'origine de janvier, indiquant la surfacturation, ne sera pas ajustée. Vous pouvez consulter les frais dans votre exportation de données de facturation en affichant les coûts par usage_start_time et en les regroupant par Day. Dans ces vues, les corrections ou les frais liés à une utilisation monétisée tardivement sont accumulés. Ainsi, vous n'avez pas à vous soucier des données temporairement incorrectes.

Si vous souhaitez obtenir des informations plus détaillées sur vos corrections, consultez tous les frais pour un mois de facturation et recherchez les frais pour lesquels la date d'utilisation a eu lieu avant le mois de facturation. Ces frais sont issus de corrections ou d'une utilisation monétisée tardivement.

L'exemple de code suivant montre comment créer une requête à cette fin :

SELECT
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
      FROM   UNNEST(credits) c), 0))
    AS total
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
  WHERE
  invoice.month = '202311' AND
  DATE(TIMESTAMP_TRUNC(usage_start_time, Day, 'US/Pacific')) < '2023-11-01';

À propos des avoirs promotionnels dans les contrats soumis à tarification personnalisée

Si vous disposez d'un contrat soumis à tarification personnalisée, vous pouvez recevoir des avoirs promotionnels à utiliser sur Google Cloud dans le cadre du contrat. Par exemple, vous pouvez recevoir 1 000 $ à utiliser sur les ressources Compute Engine. Les avoirs promotionnels sont généralement considérés comme un mode de paiement. Les avoirs promotionnels disponibles sont automatiquement appliqués pour réduire votre facture totale.

Les conditions de votre contrat spécifient si les avoirs promotionnels s'appliquent à vos coûts calculés au prix catalogue d'un SKU ou au prix net (après remises).

Si vos avoirs promotionnels s'appliquent aux coûts calculés au prix catalogue, un service appelé Invoice avec le SKU Contract billing adjustment figure dans le rapport "Tableau des coûts". Ce SKU ajuste vos avoirs afin qu'ils s'appliquent aux coûts au prix catalogue. Pour connaître l'utilisation prévue de l'ajustement, interrogez les colonnes system.labels. La clé figurant dans system.labels.key est cloud-invoice.googleapis.com/sku_id, et la valeur de system.labels.value contient l'ID du SKU auquel l'avoir et l'ajustement ont été appliqués.

À propos des tags

Les tags sont des ressources sous la forme de paires clé/valeur qui peuvent être associées directement aux ressources ou par héritage. Vous pouvez utiliser des tags pour effectuer des rejets de débit, des audits et d'autres analyses de répartition des coûts. Vous pouvez utiliser les tags et l'application conditionnelle de règles pour un contrôle ultraprécis de votre hiérarchie de ressources.

Les tags disposent d'un modèle d'autorisations robuste et peuvent être compatibles avec l'héritage, la gestion centralisée, la standardisation de la nomenclature et l'intégration du moteur de règles, tandis que les étiquettes sont des outils distincts qui vous permettent de créer des annotations pour les ressources.

Les données de tags s'affichent dans les exportations BigQuery pour les ressources, les projets, les dossiers et les organisations.

Tags disponibles

Les exportations Coûts standards et Coûts détaillés pour les ressources, les projets, les dossiers et les organisations incluent les champs suivants pour les données de tags : clé de tag, valeur de tag, tags hérités et tags des espaces de noms.

Les tags au niveau des ressources dans l'exportation de données Cloud Billing sont disponibles pour les ressources suivantes :

  • Instances Compute Engine
  • Buckets Cloud Storage
  • Instances Spanner
  • Services et jobs Cloud Run
  • Dépôts Artifact Registry
  • Instances Memorystore pour Redis

Limites des tags

  • La propagation des tags vers les exportations BigQuery peut prendre jusqu'à une heure. Si un tag a été ajouté ou supprimé il y a une heure, ou si une ressource existe depuis moins d'une heure, il est possible qu'elle n'apparaisse pas dans l'exportation.

Exemples de requêtes de coût d'utilisation détaillé

Cette section fournit des exemples d'interrogation des données de coût d'utilisation détaillé de Cloud Billing exportées vers BigQuery.

Étant donné que le schéma de coût d'utilisation détaillé comprend tous les champs du schéma de coût d'utilisation standard, les exemples de requête fournis pour les données standard exportées vers BigQuery fonctionnent également avec les données détaillées exportées. Notez que les exemples de requêtes standards ne sont pas écrits pour récupérer les informations au niveau des ressources fournies avec l'option d'exportation de coût d'utilisation détaillé. Lorsque vous créez des requêtes pour obtenir les données détaillées, vous pouvez utiliser un exemple de requête standard comme modèle, mettre à jour le Nom de la table et ajouter un ou plusieurs des champs disponibles dans le schéma de coût d'utilisation détaillé.

Valeurs courantes utilisées dans les exemples de requêtes de coût détaillé

Les exemples de requête de cette section utilisent la valeur suivante pour le Nom de la table : project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX

Afficher les coûts au niveau des ressources sur une facture

Les requêtes suivantes illustrent deux méthodes d'affichage des valeurs de coût et de crédit au niveau des ressources sur une facture à l'aide de données de facturation exportées.

  • Le champ total additionne directement les valeurs de coût et de crédit à virgule flottante, ce qui peut entraîner des erreurs d'arrondi à virgule flottante.
  • Le champ total_exact convertit les coûts et les valeurs de crédit en micro-unités avant de les additionner, puis les reconvertit en dollars après la somme, évitant ainsi les erreurs d'arrondi à virgule flottante.

Somme des coûts pour chaque ressource, par facture

Cette requête affiche le total de la facture pour chaque resource.name par mois, sous forme de somme des coûts réguliers, des taxes, des ajustements et des erreurs d'arrondi. Les coûts qui ne sont pas associés à un élément au niveau des ressources sont regroupés sous le nom null pour le mois.

SQL standard

SELECT
  invoice.month,
  resource.name,
  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_resource_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1, 2
ORDER BY 1 ASC, 2 ASC
;

Par exemple, le résultat de la requête précédente peut être celui-ci :

Ligne mois nom total total_exact
1 201901 null $1005.004832999999984 $1005.00
2 201901 backend1 $781.8499760000028 $781.85
3 201902 null $953.0034923645475983 $953.03
4 201902 backend1 $992.3101739999999717 $992.31
5 201902 bitnami-launchpad-wordpress-1-wordpress $1.2817819999999998 $1.28

Afficher les détails par type de coût pour chaque ressource, par mois de facturation

Cette requête affiche les totaux de chaque cost_type pour chaque resource.name par mois. Les types de coûts comprennent les coûts réguliers, les taxes, les ajustements et les erreurs d'arrondi. Les coûts qui ne sont pas associés à un élément au niveau des ressources sont regroupés sous le nom null pour le mois.

SQL standard

SELECT
  invoice.month,
  cost_type,
  resource.name,
  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_resource_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1, 2, 3
ORDER BY 1 ASC, 2 ASC, 3 ASC
;

Par exemple, le résultat de la requête précédente peut être celui-ci :

Ligne mois cost_type nom total total_exact
1 201901 regular null $1000.501209987994782 $1000.50
2 201901 rounding_error null –$0.500489920049387 –$0.50
3 201901 tax null $10.000329958477891 $10.00
4 201901 adjustment null –$5.002572999387045 –$5.00
5 201901 regular backend1 $410.998795012082947 $411.00
2 201901 rounding_error backend1 –$0.2404900489920378 –$0.24
3 201901 tax backend1 $4.105840329977189 $4.11

Obtenir la répartition des coûts de cluster Google Kubernetes Engine (GKE)

Cette section fournit des exemples de filtrage des coûts de cluster GKE dans vos rapports d'exportation BigQuery. Pour en savoir plus sur les coûts de cluster GKE, consultez la page Afficher la répartition des coûts du cluster.

Filtrer les coûts GKE

Les exemples de requêtes suivants vous montrent comment filtrer et regrouper vos coûts GKE pour les types de ressources compatibles par nom de cluster, espace de noms et libellé.

Coûts liés aux clusters GKE avant crédits

SELECT
  SUM(cost) AS cost_before_credits,
  labels.value AS cluster_name
FROM  `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
  ON labels.key = "goog-k8s-cluster-name"
GROUP BY labels.value
;

Coûts GKE après crédits par espace de noms

SELECT
  labels.value as namespace,
  SUM(cost) + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0)) AS cost_after_credits,
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
  ON labels.key = "k8s-namespace"
GROUP BY namespace
;

Coûts GKE par code SKU

SELECT
  project.id AS project_id,
  labels.value AS cluster_name,
  sku.id AS sku_id,
  sku.description AS sku_description,
  SUM(cost) AS cost
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
JOIN UNNEST(labels) AS labels
  ON labels.key = "goog-k8s-cluster-name"
GROUP BY
  cluster_name, project_id, sku_description, sku_id
;

Exemples de requêtes avec des tags

Les exemples suivants montrent comment interroger des données avec des tags.

Calculer les coûts par mois de facturation avec des tags

La requête suivante montre comment utiliser les frais de retour par mois de facturation pour le tag cost_center.

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;

Par exemple, le résultat de la requête précédente peut être celui-ci :

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 personalization 16.08

Afficher les coûts des ressources sans tag

Cette requête affiche le total de la facture pour les ressources sans tags, regroupées par mois de facturation.

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;

Par exemple, le résultat de la requête précédente peut être celui-ci :

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

Rapports sur les coûts et les tarifs disponibles dans Google Cloud Console