Configurer l'exportation des données Cloud Billing vers BigQuery

Ce guide fournit toutes les étapes de configuration requises pour activer l'exportation des données Cloud Billing vers BigQuery.

Pour exporter des données Cloud Billing vers BigQuery, procédez comme suit :

  • Créer un projet dans lequel les données Cloud Billing seront stockées, et activer la facturation sur le projet (si ce n'est pas déjà fait)
  • Configurer les autorisations sur le projet et sur le compte de facturation Cloud
  • Activer l'API du service de transfert de données BigQuery (obligatoire pour exporter vos données de tarification)
  • Créer un ensemble de données BigQuery dans lequel stocker les données.
  • Activer l'exportation Cloud Billing des données de coût et des données de tarification à écrire dans l'ensemble de données

Ce document vous explique en détail chacune de ces étapes.

À propos de Google Cloud Console

Google Cloud Console (Accéder à la documentation, Ouvrir la console) est une interface utilisateur Web permettant de provisionner, configurer, gérer et surveiller les systèmes utilisant des produits Google Cloud. Vous utilisez la console Google Cloud pour configurer et gérer les ressources Google Cloud et Cloud Billing.

Autorisations requises pour cette tâche

Pour activer et configurer l'exportation des données sur le coût d'utilisation de Google Cloud Billing vers un ensemble de données BigQuery, vous devez disposer des autorisations suivantes :

  • Pour Cloud Billing, vous devez disposer du rôle Gestionnaire des coûts du compte de facturation ou Administrateur de compte de facturation sur le compte de facturation Cloud cible.
  • Pour BigQuery, vous devez disposer du rôle Utilisateur BigQuery pour le projet Google Cloud contenant l'ensemble de données BigQuery qui permettra de stocker les données Cloud Billing.

Pour activer et configurer l'exportation des données tarifaires de Cloud Billing, vous devez disposer des autorisations suivantes :

  • Pour Cloud Billing, vous avez besoin du rôle Administrateur de compte de facturation sur le compte de facturation Cloud cible.
  • Pour BigQuery, vous devez disposer du rôle Administrateur BigQuery pour le projet Google Cloud contenant l'ensemble de données BigQuery qui permettra de stocker les données tarifaires de Cloud Billing.
  • Pour le projet Google Cloud contenant l'ensemble de données cible, vous avez besoin de l'autorisation resourcemanager.projects.update. Cette autorisation est incluse dans le rôle roles/editor.

Vous devrez peut-être également disposer d'autres autorisations de projet. Si vous êtes membre d'une organisation Google Cloud, pour créer un projet, vous devez disposer du rôle Créateur de projet dans l'organisation ou le dossier. Plus précisément, pour créer un projet, vous devez disposer des autorisations suivantes :

  • resourcemanager.organizations.get
  • resourcemanager.projects.create

Pour plus d'informations sur les autorisations Google Cloud, consultez les articles suivants :

Activer l'exportation des données Cloud Billing vers BigQuery

Suivez les cinq étapes décrites dans cette section pour activer l'exportation de vos données Cloud Billing vers BigQuery.

Pour une introduction rapide à l'activation de l'exportation des données de facturation et à l'exécution d'exemples de requêtes de données Cloud Billing dans BigQuery, suivez ce tutoriel interactif pour l'exportation des données de facturation.

Si vous êtes un revendeur, vous pouvez configurer une Exportation spécifique au revendeur de vos données de facturation Channel Services à l'aide de Partner Sales Console. Pour ce faire, suivez les étapes 1 à 4 de cette page pour créer votre projet et votre ensemble de données BigQuery. Ensuite, pour l'étape 5, consultez la section Exporter les données des services de canaux vers BigQuery pour activer l'exportation.

1. Sélectionner ou créer un projet

Les données Cloud Billing exportées vers BigQuery sont contenues dans un ensemble de données BigQuery. Un ensemble de données est contenu dans un projet Google Cloud que vous spécifiez.

Recommandation concernant les projets : Nous vous recommandons de créer un projet Google Cloud pour contenir toutes vos données d'administration de la facturation, y compris vos données Cloud Billing. Vous pouvez également utiliser ce projet Google Cloud d'administration de la facturation pour des éléments tels que l'accès aux API Cloud Billing, les canaux Pub/Sub pour les notifications de budget automatisées et d'autres tâches d'administration Cloud Billing.

Important : Le projet Google Cloud que vous sélectionnez pour contenir votre ensemble de données doit être associé au même compte de facturation Cloud que celui qui contient les données que vous prévoyez d'exporter vers l'ensemble de données BigQuery. Un projet Google Cloud est associé à un seul compte de facturation Cloud à la fois. Un compte de facturation Cloud est associé à un ou plusieurs projets.

Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

Accéder au sélecteur de projet

Découvrez comment créer et gérer des projets.

2. Vérifier que la facturation est activée

Vous devez vous assurer que la facturation est activée sur le projet Google Cloud que vous sélectionnez pour contenir votre ensemble de données, et que ce projet Google Cloud est associé au même compte de facturation Cloud que celui qui contient les données que vous prévoyez d'exporter vers l'ensemble de données BigQuery.

3. Activer l'API du service de transfert de données BigQuery

Si vous envisagez d'exporter vos données de tarification Cloud Billing vers BigQuery, vous devez activer l'API du service de transfert de données BigQuery. Si vous ne prévoyez pas d'exporter de données de tarification Cloud Billing, vous pouvez passer à l'étape 4. Créez un ensemble de données BigQuery.

L'API du service de transfert de données BigQuery doit être activée dans le projet Google Cloud qui contient vos ensembles de données BigQuery. Si vous avez suivi la recommandation dans la section Sélectionner ou créer un projet, il s'agit de votre projet d'administration de la facturation Google Cloud.

Pour activer l'API du service de transfert de données BigQuery, procédez comme suit :

  1. Connectez-vous à Google Cloud Console et accédez à la page BigQuery.

    Accéder à la page de l'API du service de transfert de données BigQuery

  2. En haut à gauche de la page, sélectionnez un projet. Vous devez activer l'API du service de transfert de données BigQuery dans le projet qui contient votre ensemble de données BigQuery. Si vous avez suivi la recommandation dans la section Sélectionner ou créer un projet, il s'agit de votre projet d'administration de la facturation Google Cloud.

  3. Sur la page de l'API BigQuery Data Transfer Service, cliquez sur Activer pour activer l'API dans le projet sélectionné.

Pour en savoir plus sur l'activation des API, consultez la documentation concernant Service Usage.

4. Créer un ensemble de données BigQuery

Avant d'activer l'exportation de vos données Cloud Billing vers BigQuery, vous devez créer au moins un ensemble de données BigQuery pour gérer vos données exportées. Vous pouvez utiliser le même ensemble de données pour contenir vos données de coût d'utilisation standard, vos données de coût d'utilisation détaillé et vos données de tarification.

Un ensemble de données est contenu dans un projet Google Cloud que vous spécifiez. Les ensembles de données sont des conteneurs de niveau supérieur utilisés pour organiser et contrôler l'accès à vos tables et vues. Une table ou une vue doit appartenir à un ensemble de données. Vous devez donc créer au moins un ensemble de données avant de charger des données dans BigQuery.

Si vous utilisez un ensemble de données existant, consultez les limites susceptibles d'avoir un impact sur l'exportation de vos données de facturation vers BigQuery, telles que l'impossibilité d'exporter les données vers des ensembles de données configurés pour utiliser le chiffrement de clés gérées par le client, ou l'impossibilité d'utiliser un ensemble de données configuré avec un emplacement de région non compatible.

Pour créer un ensemble de données BigQuery, procédez comme suit :

  1. Connectez-vous à Google Cloud Console et accédez à la page BigQuery.

    Accéder à la page BigQuery

  2. Dans la liste déroulante projet ( Mon projet ) en haut de la page Google Cloud Console, sélectionnez le projet que vous avez défini pour contenir votre ensemble de données. Notez l'ID de projet, car vous en aurez besoin à l'étape suivante.

  3. Dans la section projets épinglés du panneau Explorateur, cliquez sur your-project-ID pour développer le projet de façon à afficher les ensembles de données et les requêtes enregistrés.

  4. À côté de l'ID du projet, cliquez sur le menu Afficher les actions (), puis sur Créer un ensemble de données. Le panneau "Créer un ensemble de données" s'ouvre.

    1. Saisissez l'ID de l'ensemble de données. Nous vous recommandons d'utiliser un ID qui couvre des projets, tel que all_billing_data, plutôt qu'un ID spécifique au projet.
    2. Sélectionnez l'emplacement des données. L'emplacement des données indique l'emplacement multirégional ou la région dans laquelle vos données sont stockées. Toutes les tables dans cet ensemble de données partageront cet emplacement.

      Nous vous recommandons de sélectionner un emplacement multirégional (UE ou États-Unis). Pour vos exportations de données de coût d'utilisation standard et de coût d'utilisation détaillé, l'emplacement que vous sélectionnez peut avoir une incidence sur l'ajout ou non des données du mois précédent à l'ensemble de données rétroactivement. Consultez les limites pour en savoir plus sur les emplacements des ensembles de données et la disponibilité des données.

      Sachez que l'exportation Cloud Billing est compatible avec tous les emplacements multirégionaux (UE ou États-Unis). Cependant, seul un sous-ensemble d'emplacements de région d'ensemble de données est accepté pour l'exportation Cloud Billing vers BigQuery. Pour en savoir plus sur les emplacements des ensembles de données, consultez les limites.

      Une fois l'ensemble de données créé, l'emplacement ne peut plus être modifié. En savoir plus sur les emplacements.

    3. Assurez-vous que l'option Activer l'expiration de la table est supprimée.

      Si vous activez l'expiration de la table et saisissez un nombre de jours, toute table créée dans cet ensemble de données est automatiquement supprimée après le nombre de jours spécifié après sa création. Important : Si vous supprimez des tables contenant des enregistrements de données Cloud Billing exportés, ces enregistrements ont disparu et nous ne pouvons pas les remplacer.

    4. Dans la section Options avancées, assurez-vous que le paramètre Chiffrement sélectionné est Clé de chiffrement gérée par Google.

      N'utilisez pas l'option Clé de chiffrement gérée par le client (CMEK). Le chiffrement CMEK n'est pas compatible pour l'exportation des enregistrements de données Cloud Billing vers BigQuery.

    5. Pour enregistrer, cliquez sur Créer un ensemble de données.

Consultez les limites susceptibles d'avoir un impact sur l'exportation de vos données de facturation vers BigQuery.

Si vous êtes revendeur, vous pouvez réutiliser le projet et l'ensemble de données que vous venez de créer lorsque vous avez activé l'exportation des données de facturation Channel Services spécifiques au revendeur.

5. Activer l'exportation Cloud Billing vers l'ensemble de données BigQuery

Vous pouvez activer l'exportation des données Cloud Billing dans la section Cloud Billing de la console Google Cloud. Vous pouvez activer l'exportation des types de données suivants :

  • Données de coût d'utilisation standard : contiennent des informations d'ordre général concernant l'utilisation et les coûts liés au compte de facturation Cloud, telles que l'ID du compte, la date de facturation, les services, les SKU, les projets, les libellés, les emplacements, le coût, l'utilisation, les crédits, les ajustements et la devise.

    Utilisez l'exportation de l'utilisation standard pour analyser les tendances générales dans vos données de coût.

  • Données de coût d'utilisation détaillé : contiennent des informations détaillées concernant l'utilisation et les coûts liés au compte de facturation Cloud. Elles incluent toutes les données présentes dans les données de coût d'utilisation standard, plus les données de coût au niveau des ressources, comme les machines virtuelles ou les disques SSD qui génèrent une utilisation du service.

    Utilisez l'exportation détaillée pour analyser les coûts au niveau des ressources et identifier les ressources spécifiques qui pourraient entraîner des coûts supplémentaires.

    L'exportation détaillée inclut automatiquement des informations au niveau des ressources concernant Compute Engine. Pour afficher la répartition des coûts de cluster Google Kubernetes Engine (GKE) dans une exportation de données détaillée, vous devez également activer l'allocation des coûts pour GKE.

  • Données de tarification : contiennent des informations sur les tarifs du compte de facturation Cloud, telles que l'ID de compte, les services, les SKU, les produits, les métadonnées géographiques, les unités tarifaires, la devise, l'agrégation et les niveaux.

Pour activer l'exportation de vos données de coût d'utilisation ou de tarification de Cloud Billing vers BigQuery, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Exportation de la facturation.

    Accéder à la page Exportation de la facturation

  2. Lorsque vous y êtes invité, choisissez le compte de facturation Cloud pour lequel vous souhaitez exporter les données de facturation. La page Exportation de la facturation s'ouvre pour le compte de facturation sélectionné.

  3. Dans l'onglet Exportation vers BigQuery, cliquez sur Modifier les paramètres pour chaque type de données que vous souhaitez exporter. Chaque type de données est configuré séparément.

  4. Dans la liste Projets, sélectionnez le projet que vous avez configuré pour contenir votre ensemble de données BigQuery.

    Le projet que vous sélectionnez sert à stocker les données Cloud Billing exportées dans l'ensemble de données BigQuery.

    Pour les exportations de données de coût d'utilisation standard et détaillé, les données Cloud Billing incluent des données d'utilisation et de coût de tous les projets Google Cloud payés par le même compte de facturation Cloud.

    Pour l'exportation des données de tarification, les données Cloud Billing incluent uniquement les données de tarification spécifiques au compte de facturation Cloud associé au projet d'ensemble de données sélectionné.

  5. Dans le champ ID de l'ensemble de données, sélectionnez l'ensemble de données que vous avez configuré pour contenir vos données Cloud Billing exportées.

    Pour tous les types de données Cloud Billing exportés vers BigQuery, les conditions suivantes s'appliquent :

    • L'API BigQuery est requise pour exporter des données vers BigQuery. Si l'API BigQuery n'est pas activée pour le projet que vous avez sélectionné, vous êtes invité à l'activer. Cliquez sur Activer l'API BigQuery pour activer l'API.
    • Si le projet que vous avez sélectionné ne contient aucun ensemble de données BigQuery, vous êtes invité à en créer un. Le cas échéant, procédez comme suit pour créer un ensemble de données.
    • Si vous utilisez un ensemble de données existant, consultez les limites susceptibles d'avoir un impact sur l'exportation de vos données de facturation vers BigQuery, telles que l'impossibilité d'exporter les données vers des ensembles de données configurés pour utiliser une clé de chiffrement gérée par le client (CMEK), ou l'impossibilité d'utiliser un ensemble de données configuré avec un emplacement de région non compatible.

    Pour l'exportation des données de tarification, l'API de service de transfert de données BigQuery est requis pour exporter les données vers BigQuery. Si l'API de service de transfert de données BigQuery n'est pas activée pour le projet que vous avez sélectionné, vous êtes invité à l'activer. Si nécessaire, suivez ces étapes pour activer l'API.

  6. Cliquez sur Enregistrer.

Mettre à jour les données Cloud Billing à exporter

Après avoir activé l'exportation de vos données Cloud Billing vers BigQuery, vous pouvez modifier la sélection des données exportées en désactivant ou en activant les différents types.

Avant de désactiver l'exportation de vos données, consultez les limites et les consignes de disponibilité des données pour mesurer l'impact que cela pourrait avoir sur vos données de facturation exportées vers BigQuery.

Pour désactiver un type de facturation Cloud exporté vers BigQuery, procédez comme suit :

  1. Sélectionnez Désactiver l'exportation standard, Désactiver l'exportation détaillée ou Désactiver l'exportation de la tarification en conséquence.
  2. Sélectionnez Confirmer pour enregistrer votre sélection.

Pour activer un type de facturation Cloud actuellement désactivé alors que l'exportation vers BigQuery est en cours, consultez la section Activer l'exportation des données Cloud Billing vers BigQuery.

À propos des autorisations liées aux ensembles de données

L'exportation Cloud Billing vers BigQuery utilise un compte de service pour gérer les autorisations de l'ensemble de données.

Après avoir activé l'exportation Cloud Billing vers BigQuery, Google ajoute automatiquement un compte de service en tant que propriétaire à l'ensemble de données que vous spécifiez. Les comptes de service se présentent comme suit :

  • Pour les ensembles de données Standards et Détails sur les coûts d'utilisation : billing-export-bigquery@system.gserviceaccount.com
  • Pour l'ensemble de données de tarification : cloud-account-pricing@cloud-account-pricing.iam.gserviceaccount.com

Ces comptes de service sont détenus et gérés par Google. Ils fournissent les autorisations nécessaires à notre processus hors connexion permettant de créer une table et d'y écrire des enregistrements Cloud Billing.

Consultez les limites susceptibles d'avoir un impact sur l'exportation de vos données de facturation vers BigQuery.

Tables de données de facturation

Peu de temps après l'activation de l'exportation Cloud Billing vers BigQuery, les tables de données de facturation sont automatiquement créées dans l'ensemble de données BigQuery. Pour en savoir plus sur ces tables BigQuery et les schémas de table, consultez la page Comprendre les tables de données créées automatiquement dans BigQuery.

Fréquence des chargements de données

  • Lorsque vous activez pour la première fois l'exportation du coût d'utilisation standard ou détaillé vers BigQuery, la propagation des données de coût Google Cloud dans votre ensemble de données BigQuery peut prendre quelques heures. Les données sont exportées dans l'ordre chronologique. Si votre exportation est configurée pour inclure les données de manière rétroactive pour le mois en cours et le mois précédent, la récupération des données d'utilisation actuelles peut prendre jusqu'à cinq jours.
  • Lorsque vous activez l'exportation des données de tarification vers BigQuery pour la première fois, l'affichage des données de tarification Google Cloud peut prendre jusqu'à 48 heures.

Apprenez-en plus sur la fréquence des chargements de données dans vos tables BigQuery.

Limites

L'exportation de données Cloud Billing vers BigQuery est soumise aux limitations suivantes.

  • Emplacements des ensembles de données BigQuery compatibles avec les données Cloud Billing

    Les ensembles de données BigQuery sont configurés pour utiliser un emplacement, c'est-à-dire un emplacement multirégional (UE ou États-Unis) ou un emplacement régional. L'emplacement de l'ensemble de données est défini au moment de la création. Une fois l'ensemble de données créé, l'emplacement ne peut plus être modifié.

    L'exportation des données Cloud Billing accepte tous les emplacements multirégionaux (UE ou États-Unis), mais uniquement un sous-ensemble des emplacements régionaux. Lorsque vous configurez vos paramètres d'exportation Cloud Billing, si vous créez ou sélectionnez un ensemble de données configuré pour utiliser un emplacement non compatible régional, lorsque vous tentez d'enregistrer vos paramètres d'exportation, un message d'erreur Région de l'ensemble de données non valide.

    Le tableau suivant répertorie les emplacements multirégionaux et les emplacements régionaux compatibles avec les ensembles de données BigQuery utilisés pour contenir les données Cloud Billing.

    Amériques Asie-Pacifique Europe

    Multirégional : États-Unis

    Régions :

    • northamerica-northeast1 (Montréal)
    • southamerica-east1 (São Paulo)
    • us-central1 (Iowa)
    • us-east1 (Caroline du Sud)
    • us-east4 (Virginie du Nord)
    • us-west1 (Oregon)
    • us-west2 (Los Angeles)
    • us-west3 (Salt Lake City)
    • us-west4 (Las Vegas)

    Régions :

    • asia-east1 (Taïwan)
    • asia-east2 (Hong Kong)
    • asia-northeast1 (Tokyo)
    • asia-northeast2 (Osaka)
    • asia-northeast3 (Séoul)
    • asia-south1 (Mumbai)
    • asia-southeast1 (Singapour)
    • asia-southeast2 (Jakarta)
    • australia-southeast1 (Sydney)

    Multirégional : UE

    Régions :

    • europe-central2 (Varsovie)
    • europe-north1 (Finlande)
    • europe-west1 (Belgique)
    • europe-west2 (Londres)
    • europe-west3 (Francfort)
    • europe-west4 (Pays-Bas)
    • europe-west6 (Zurich)

  • Pour vos ensembles de données BigQuery contenant les données de coût d'utilisation standard ou les données de coût d'utilisation détaillé, le type d'emplacement que vous configurez sur l'ensemble de données a une incidence sur la durée d'exportation de vos données de facturation Google Cloud :

    • Si vous configurez l'ensemble de données pour utiliser un emplacement multirégional (UE ou États-Unis), celui-ci reflète les données de facturation Google Cloud générées depuis le début du mois précédent à compter de la première activation de l'exportation, sauf si vous la réactivez. Autrement dit, les données de facturation Google Cloud sont ajoutées rétroactivement pour le mois en cours et le mois précédent. 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 actuelles.
    • Si votre ensemble de données est configuré pour utiliser un emplacement régional compatible, vos données de coût d'utilisation standard et vos données de coût d'utilisation détaillées ne reflètent que les données de facturation Google Cloud générées à compter de la date d'activation de l'exportation Cloud Billing. Autrement dit, les données de facturation Cloud Billing ne sont pas ajoutées rétroactivement pour les emplacements d'ensembles de données non multirégionaux, vous ne verrez donc pas les données Cloud Billing datant d'avant l'activation de l'exportation.

    • Pour en savoir plus, consultez la section Disponibilité des données.

  • Vos ensembles de données BigQuery contenant les données de tarification ne collectent que les données de facturation Google Cloud générées à compter de la date de configuration de l'exportation Cloud Billing. Autrement dit, les données de tarification Google Cloud ne sont pas ajoutées rétroactivement. Par conséquent, les données de tarification Cloud Billing antérieures à l'activation de l'exportation n'apparaissent pas. Pour en savoir plus, consultez la section Disponibilité des données.

  • Lorsque vous exportez des données de coût d'utilisation détaillées, l'exportation détaillée inclut automatiquement des informations au niveau des ressources concernant Compute Engine. Pour afficher la répartition des coûts de cluster Google Kubernetes Engine (GKE) dans une exportation de données détaillée, vous devez également activer l'allocation des coûts pour GKE.

  • Chiffrement des ensembles de données : les clés de chiffrement gérées par le client (CMEK) ne sont pas compatibles lors de l'exportation de données de facturation vers BigQuery. Si vous activez le chiffrement CMEK pour votre ensemble de données de facturation, ce type de chiffrement empêche Cloud Billing d'écrire des données de facturation dans les tables appropriées de cet ensemble de données. Au lieu de cela, vous devez activer l'ensemble de données pour utiliser une clé de chiffrement gérée par Google.

  • Si vous souhaitez utiliser la sécurité au niveau des lignes de BigQuery sur la table contenant vos données exportées, vous devez accorder au compte de service d'exportation Cloud Billing billing-export-bigquery@system.gserviceaccount.com un accès complet à la table à l'aide du filtre BigQuery TRUE. La commande suivante accorde l'accès au compte de service Cloud Billing :

    CREATE ROW ACCESS POLICY cloud_billing_export_policy
    ON `__project_id__.__dataset_id__.__table_id__`
    GRANT TO ('serviceAccount:billing-export-bigquery@system.gserviceaccount.com')
    FILTER USING (TRUE);
    
  • La propagation des tags au niveau des ressources 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.

    Les tags au niveau des ressources sont disponibles pour les ressources suivantes :

    • Instances Compute Engine
    • Instances Spanner
    • Services Cloud Run
    • Dépôts Artifact Registry
  • Si vous utilisez VPC Service Controls, vos exportations BigQuery risquent d'être bloquées. Pour résoudre ce problème, vous devez exclure manuellement le VPC.

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