Ce document fournit des informations de référence pour le schéma des données de tarification Cloud Billing exportées vers chaque table dans BigQuery.
Schéma des données de tarification
Dans votre ensemble de données BigQuery, les données de tarification de votre compte de facturation Cloud sont chargées dans une table de données nommée cloud_pricing_export
.
Les informations suivantes décrivent le schéma des données de tarification du compte Cloud Billing exportées vers BigQuery.
Champ | Type | Description |
---|---|---|
export_time |
Horodatage | Temps de traitement associé aux données Cloud Billing ajoutées.
Cette valeur augmente toujours à chaque nouvelle exportation. |
pricing_as_of_time |
Horodatage | Les données de tarification applicables à votre compte de facturation Cloud sont générées une fois par jour afin de les préparer à l'exportation vers BigQuery. Il s'agit de l'horodatage quotidien correspondant à la date de génération des données de tarification. |
billing_account_id |
Chaîne | ID du compte de facturation Cloud auquel la tarification est associée. |
billing_account_name |
Chaîne | Nom du compte de facturation Cloud auquel le tarif est associé. |
business_entity_name |
Chaîne | Nom de la famille de services Google du service qui propose le code SKU. Les valeurs possibles sont GCP (Google Cloud) et Maps (Google Maps Platform). |
service.id |
Chaîne | ID du service Google Cloud ou de l'API Google Maps Platform ayant généré les données Cloud Billing. Par exemple, 6F81-5844-456A. |
service.description |
Chaîne | Description du service Google Cloud ou de l'API Google Maps Platform ayant généré les données Cloud Billing. Par exemple, Compute Engine. |
sku.id |
Chaîne | Identifiant unique du code SKU de la ressource utilisée par le service. Par exemple, 2E27-4F75-95CD. Pour obtenir la liste complète des codes SKU, consultez la page Codes SKU Google Cloud. |
sku.description |
Chaîne | Description lisible du code SKU de la ressource utilisé par le service. Par exemple, Cœur d'instance N1 prédéfini s'exécutant en région Amériques. |
sku.destination_migration_mappings |
Tableau de chaînes | Noms des codes SKU de destination vers lesquels ce code SKU est migré. |
product_taxonomy |
Tableau de chaînes | Liste des catégories de produits qui s'appliquent au code SKU, telles que Serverless, Cloud Run, TaskQueue, VMs On Demand, Cores : Per Core, etc. |
geo_taxonomy |
Struct | Métadonnées géographiques qui s'appliquent au code SKU, telles que des régions et des zones multirégionales comme us-east4 l'Union européenne. |
geo_taxonomy.type |
Chaîne | Type de métadonnées géographiques associé au code SKU.
Les valeurs possibles sont les suivantes :
|
geo_taxonomy.regions |
Tableau de chaînes | Régions Google Cloud associées au code SKU.
Par exemple, Europe-west2 ou US .
Une région est un emplacement géographique spécifique, par exemple Londres. Une zone multirégionale correspond à un secteur géographique de grande étendue, par exemple les États-Unis, et comporte au moins deux lieux géographiques. |
pricing_unit |
Chaîne | Forme abrégée de l'unité d'utilisation dans laquelle la tarification est spécifiée (par exemple "GiBy.mo"). |
pricing_unit_description |
Chaîne | Description lisible de l'unité d'utilisation (par exemple "gibioctet/mois"). |
account_currency_code |
Chaîne | Devise dans laquelle le compte de facturation Cloud fonctionne, sous la forme d'un code de devise à trois lettres, défini dans la norme ISO 4217. Pour en savoir plus, consultez la page Devise locale pour la facturation et les paiements automatiques. |
currency_conversion_rate |
Chaîne | Taux de change du dollar américain dans la devise locale avec lequel le compte de facturation Cloud fonctionne. Si la devise du compte de facturation Cloud est "USD", le taux de change est de "1,0" par défaut.
Si vos coûts Cloud Billing sont facturés dans une devise autre que le dollar américain, vous pouvez convertir vos coûts d'utilisation en dollars américains en utilisant la formule suivante : Lorsque la facturation est effectuée en devise locale, nous convertissons les prix dans la devise locale applicable, conformément aux taux de change publiés par les principales institutions financières. Cela inclut toutes les surtaxes collectées pour la facturation dans une devise autre que le dollar américain. Nous utilisons les taux en vigueur pour l'horodatage |
list_price |
Struct | Prix catalogue des codes SKU de Google Cloud ou de Google Maps Platform et des niveaux de tarification des codes SKU en vigueur à la date et à l'heure
Les prix catalogue sont disponibles sur Les données des prix catalogue sont générées et exportées pour tous les clients. Si votre compte de facturation Cloud dispose d'une tarification personnalisée et contractuelle, les données tarifaires spécifiques à un compte de facturation sont également exportées. |
billing_account_price |
Struct | Si vous disposez d'une tarification contractuelle, il s'agit du tarif de code SKU personnalisé dans le contrat associé à votre compte de facturation Cloud.
Vos tarifs contractuels (selon les paramètres de votre compte de facturation Cloud) sont disponibles sur |
price_info |
Struct | Informations générales sur la tarification contractuelle. |
price_info.price_reason |
Chaîne | Informations générales sur l'origine de la tarification contractuelle. Raisons possibles :
|
price_info.discount_percent |
Numérique | Pour les tarifs contractuels résultant d'une remise en pourcentage (FIXED_DISCOUNT ou FLOATING_DISCOUNT ), il s'agit du pourcentage de la remise utilisée.
|
price_info.discount_percent_fixed_date |
Date | Pour les tarifs contractuels avec une remise en pourcentage ancrée à une date spécifique (FIXED_DISCOUNT ), il s'agit de la date utilisée.
|
price_info.discount_migrated_from |
Chaîne | Pour les remises sur tarification contractuelle migrées à partir d'autres codes SKU (MIGRATED_PRICE ), il s'agit du code SKU source de la remise.
Lorsqu'un code SKU est divisé en deux, la remise est transférée de l'ancien code SKU aux nouveaux codes.
|
aggregation_info |
Struct | Représente le niveau et l'intervalle d'agrégation pour les niveaux de tarification d'un code SKU unique. |
aggregation_info.aggregation_level |
Chaîne | Niveau auquel l'utilisation est agrégée pour calculer le coût des niveaux de tarification.
Les niveaux incluent :
|
aggregation_info.aggregation_interval |
Chaîne | Intervalle auquel l'utilisation est agrégée pour calculer le coût des niveaux de tarification.
Les intervalles incluent :
|
tiered_rates |
Tableau de chaînes | Informations sur le niveau de tarification, y compris le prix du code SKU en dollars américains et le prix du code SKU dans la devise avec laquelle le compte de facturation Cloud fonctionne. Certains codes SKU n'ont qu'un seul niveau de tarification. Si un code SKU possède plusieurs niveaux de tarification, chaque niveau apparaît sous la forme d'une ligne distincte. Vous pouvez identifier les codes SKU avec plusieurs niveaux de tarification à l'aide de |
tiered_rates.pricing_unit_quantity |
Nombre à virgule flottante | 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. |
tiered_rates.start_usage_amount |
Nombre à virgule flottante | Montant limite inférieur pour un niveau de tarification donné, en unités tarifaires. Par exemple, un code SKU comportant les trois niveaux de tarification "1 à 100 unités", "101 à 1 000 unités" et "1 001 unités et plus" affiche trois lignes de tarification dont les valeurs de [tiered_rates].start_usage_amount sont les suivantes : 1, 101 et 1 001. |
tiered_rates.usd_amount |
Numérique | Prix du code SKU en dollars américains. |
tiered_rates.account_currency_amount |
Numérique | Prix du niveau de tarification du code SKU que currency_conversion_rate a converti en devise que le compte de facturation Cloud utilise, à partir sa valeur en dollars américains.Ce prix converti est calculé à l'aide de la formule suivante : Lorsque la facturation est effectuée en devise locale, nous convertissons les prix dans la devise locale applicable, conformément aux taux de change publiés par les principales institutions financières. Cela inclut toutes les surtaxes collectées pour la facturation dans une devise autre que le dollar américain. Nous utilisons les taux en vigueur pour l'horodatage |
À propos des niveaux de tarification
Les tarifs des codes SKU sont proposés par niveaux de tarification. Les niveaux de tarification fournissent une structure tarifaire basée sur différents niveaux. Certains codes SKU n'ont qu'un seul niveau de tarification, tandis que d'autres ont plusieurs niveaux de tarification. Voici quelques exemples de codes SKU à plusieurs niveaux :
- Les codes SKU avec un niveau d'utilisation gratuit. Par exemple, les unités 1 à 1 000 sont gratuites. Les unités à partir de 1 001 sont facturées à 1 $ chacune.
- Les codes SKU pour lesquels le prix par unité diminue lorsque la quantité d'utilisation d'un niveau est dépassée. Par exemple : les unités 1 à 100 sont facturées à 5 $ chacune, les unités 101 à 1 000 à 4 $ chacune et les unités à partir de 1 001 à 3 $ chacune.
Remarques concernant la tarification à plusieurs niveaux :
Le compteur d'utilisation du niveau est réinitialisé en fonction de la valeur
aggregation_interval
du code SKU : quotidien ou mensuel.- Les codes SKU quotidiens sont réinitialisés tous les jours à minuit (heure du Pacifique des États-Unis et du Canada, UTC-8 ou UTC-7).
- Les codes SKU mensuels sont réinitialisés le premier jour de chaque mois civil (par exemple, janvier, février, etc.), à minuit (heure du Pacifique des États-Unis et du Canada (UTC-8 ou UTC-7)).
Les niveaux fonctionnent indépendamment pour chaque compte de facturation Cloud et les différents comptes ne font pas l'objet d'un regroupement, même si les projets se trouvent dans la même organisation ou appartiennent à la même entité juridique.
Les niveaux fonctionnent indépendamment pour chaque code SKU : l'utilisation d'un code SKU ne peut affecter que le prix de ce code SKU spécifique. Aucune utilisation d'un code SKU n'affecte la tarification différenciée d'un autre code SKU.
Il est possible que les niveaux de tarification des codes SKU concernant les prix catalogue ne correspondent pas exactement à ceux de la tarification contractuelle. Cette situation est rare.
Si un code SKU comporte plusieurs niveaux de tarification, chaque tarif de niveau de code SKU est répertorié sur une ligne distincte dans la grille tarifaire. Vous pouvez identifier les codes SKU avec plusieurs niveaux de tarification à l'aide de
tiered_rates.start_usage_amount
.En fonction de la façon dont vous écrivez votre requête, vous pouvez renvoyer les niveaux de tarification des codes SKU sous forme de données imbriquées ou non imbriquées. Pour en savoir plus sur les données imbriquées et non imbriquées, consultez les exemples suivants.
Exemples de requêtes pour les données de tarification
Cette section fournit différents exemples expliquant comment interroger les données de tarification Cloud Billing exportées vers BigQuery.
- Obtenir les prix catalogue pour un code SKU spécifique
- Obtenir les prix catalogue pour un code SKU spécifique et ajouter une description du service
- Utiliser la classification des produits et la classification géographique pour interroger les codes SKU
Cette section fournit différents exemples expliquant comment interroger les données de tarification Cloud Billing exportées vers BigQuery.
Valeurs courantes utilisées dans les exemples de requêtes de tarification
Les exemples de requête de cette section utilisent les valeurs suivantes :
- Nom de la table :
project.dataset.cloud_pricing_export
- ID du code SKU :
2DA5-55D3-E679
(Cloud Run – Requêtes)
Obtenir les prix catalogue pour un code SKU spécifique
Cet exemple présente une requête qui renvoie la valeur list_price
pour chaque niveau de tarification d'un code SKU spécifié.
SQL standard
SELECT sku.id, sku.description, list_price.* FROM `project.dataset.cloud_pricing_export` WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
_PARTITIONTIME
est un champ généré automatiquement par BigQuery qui représente la date à laquelle les données appartiennent. Au lieu de _PARTITIONTIME
, vous pouvez utiliser un champ généré explicitement par l'exportation Cloud Billing, tel que pricing_as_of_time
.
Voici la même requête configurée pour utiliser le champ pricing_as_of_time
:
SELECT sku.id, sku.description, list_price.* FROM `project.dataset.cloud_pricing_export` WHERE DATE(pricing_as_of_time) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête
Ligne | id | description | pricing_unit | aggregation_info. aggregation_level |
aggregation_info. aggregation_interval |
tiered_rates. pricing_unit_quantity |
tiered_rates. start_usage_amount |
tiered_rates. usd_amount |
tiered_rates. account_currency_amount |
---|---|---|---|---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | COUNT | COMPTE | MENSUEL | 1000000 | 0 | 0 | 0 |
1000000 | 2000000 | 0,4 | 0,4 |
Obtenir les prix catalogue pour un code SKU spécifique et ajouter une description du service
Les deux exemples de cette section illustrent les requêtes qui renvoient la valeur list_price
pour chaque niveau de tarification pour un code SKU spécifié et incluent la description du code SKU et la description du service.
- L'exemple 1 renvoie un code SKU par ligne, les niveaux de tarification étant affichés en tant que données imbriquées.
- L'exemple 2 illustre la désimbrication des données pour renvoyer une ligne par code SKU par niveau de tarification.
Exemple 1 : Renvoie des données imbriquées
Cet exemple interroge un seul code SKU pour renvoyer les données list_price
. Ce code SKU possède plusieurs niveaux de tarification.
Les valeurs du champ des prix catalogue s'affichent sur des lignes individuelles imbriquées sous la ligne d'ID de code SKU.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, list_price.* FROM my-billing-admin-project.my_billing_dataset.cloud_pricing_export WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | aggregation_info. aggregation_level |
aggregation_info. aggregation_interval |
tiered_rates. pricing_unit_quantity |
tiered_rates. start_usage_amount |
tiered_rates. usd_amount |
tiered_rates. account_currency_amount |
---|---|---|---|---|---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | COMPTE | MENSUEL | 1000000 | 0 | 0 | 0 |
1000000 | 2000000 | 0,4 | 0,4 |
Exemple 2 : Renvoyer des données non imbriquées associées à la même table
Cet exemple interroge un seul code SKU pour renvoyer la valeur de list price
.
Ce code SKU possède plusieurs niveaux de tarification.
La requête illustre l'utilisation de l'opérateur UNNEST
afin d'aplatir le tableau tiered_rates
et de joindre les champs avec la même table, pour obtenir une ligne par niveau de tarification.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, tier.* FROM `my-billing-admin-project.my_billing_dataset.cloud_pricing_export` as sku_pricing, UNNEST (sku_pricing.list_price.tiered_rates) as tier WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | pricing_unit_quantity | start_usage_amount | usd_amount | account_currency_amount |
---|---|---|---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | 1000000,0 | 0,0 | 0.0 | 0,0 |
2 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | 1000000,0 | 2000000,0 | 0,4 | 0,4 |
Utiliser la classification des produits et la classification géographique pour interroger les codes SKU
- La classification des produits est une liste de catégories de produits qui s'appliquent aux codes SKU, telles que sans serveur, Cloud Run ou VM à la demande.
- La classification géographique correspond aux métadonnées géographiques qui s'appliquent à un code SKU, constitué de valeurs de type et de région.
Obtenir la classification des produits d'un code SKU
Cet exemple présente une requête qui renvoie la liste product_taxonomy
pour un code SKU spécifié, où l'ID du code SKU est égal à 2DA5-55D3-E679
(Cloud Run – Requêtes).
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, product_taxonomy FROM `project.dataset.cloud_pricing_export` WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | product_taxonomy |
---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | GCP |
Sans serveur | |||||
Cloud Run | |||||
Autre |
Obtenir tous les codes SKU pour une classification de produits spécifique
Cet exemple illustre une requête qui renvoie tous les codes SKU correspondant à un product_taxonomy
spécifié.
Dans cette requête, la valeur de product taxonomy
est sans serveur.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, product_taxonomy FROM `project.dataset.cloud_pricing_export` WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND "Serverless" in UNNEST(product_taxonomy) LIMIT 10 ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | product_taxonomy |
---|---|---|---|---|---|
1 | 0160-BD7B-4C40 | Sortie intra-régionale du réseau Cloud Tasks | F3A6-D7B7-9BDA | Cloud Tasks | GCP |
Sans serveur | |||||
Cloud Tasks | |||||
Autre | |||||
2 | FE08-0A74-7AFD | Sortie GOOGLE-API Cloud Tasks | F3A6-D7B7-9BDA | Cloud Tasks | GCP |
Sans serveur | |||||
Cloud Tasks | |||||
Autre | |||||
3 | A81A-32A2-B46D | Stockage des files d'attente de tâches Salt Lake City | F17B-412E-CB64 | App Engine | GCP |
Sans serveur | |||||
GAE | |||||
Autre | |||||
TaskQueue |
Obtenir tous les codes SKU pour une classification géographique et une classification de produits spécifiques
Cet exemple montre une requête qui renvoie tous les codes SKU qui correspondent à une région geo_taxonomy
et à un product_taxonomy
spécifiés, où region
= us-east4 et product_taxonomy
= VM à la demande.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, geo_taxonomy, product_taxonomy FROM `project.dataset.cloud_pricing_export` WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND "VMs On Demand" in UNNEST(product_taxonomy) AND geo_taxonomy.type = "REGIONAL" AND "us-east4" in UNNEST (geo_taxonomy.regions) ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | geo_taxonomy.type | geo_taxonomy.regions | product_taxonomy |
---|---|---|---|---|---|---|---|
1 | 9174-81EE-425B | Supplément de location unique pour RAM d'instance de location unique s'exécutant en Virginie | 6F81-5844-456A | Compute Engine | RÉGIONAL | us-east4 | GCP |
Calcul | |||||||
GCE | |||||||
VM à la demande | |||||||
Mémoire : par Go | |||||||
2 | C3B9-E891-85ED | RAM d'instance de location unique s'exécutant en Virginie | 6F81-5844-456A | Compute Engine | RÉGIONAL | us-east4 | GCP |
Calcul | |||||||
GCE | |||||||
VM à la demande | |||||||
Mémoire : par Go | |||||||
3 | 6E2A-DCD9-87ED | RAM d'instance prédéfinie N1 s'exécutant en Virginie | 6F81-5844-456A | Compute Engine | RÉGIONAL | us-east4 | GCP |
Calcul | |||||||
GCE | |||||||
VM à la demande | |||||||
Mémoire : par Go |
Renvoie les prix catalogue pour un code SKU avec plusieurs niveaux de tarification
Vous interrogez vos données BigQuery par nom de table. Le nom de table utilisé dans la clause FROM
de la requête est déterminé à l'aide de trois valeurs : project.dataset.BQ_table_name
.
Valeurs courantes utilisées dans ces exemples:
- Nom de la table :
project.dataset.cloud_pricing_export
- ID du code SKU :
2DA5-55D3-E679
(Cloud Run – Requêtes)
Exemple 1 : Renvoie des données imbriquées
Cet exemple interroge un seul code SKU pour renvoyer les données list_price
. Ce code SKU possède plusieurs niveaux de tarification.
Les valeurs du champ des prix catalogue s'affichent sur des lignes individuelles imbriquées sous la ligne d'ID de code SKU.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, list_price.* FROM my-billing-admin-project.my_billing_dataset.cloud_pricing_export WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | aggregation_info. aggregation_level |
aggregation_info. aggregation_interval |
tiered_rates. pricing_unit_quantity |
tiered_rates. start_usage_amount |
tiered_rates. usd_amount |
tiered_rates. account_currency_amount |
---|---|---|---|---|---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | COMPTE | MENSUEL | 1000000 | 0 | 0 | 0 |
1000000 | 2000000 | 0,4 | 0,4 |
Exemple 2 : Renvoyer des données non imbriquées associées à la même table
Cet exemple interroge un seul code SKU pour renvoyer la valeur de list price
.
Ce code SKU possède plusieurs niveaux de tarification.
La requête illustre l'utilisation de l'opérateur UNNEST
afin d'aplatir le tableau tiered_rates
et de joindre les champs avec la même table, pour obtenir une ligne par niveau de tarification.
SQL standard
SELECT sku.id AS sku_id, sku.description AS sku_description, service.id AS service_id, service.description as service_description, tier.* FROM `my-billing-admin-project.my_billing_dataset.cloud_pricing_export` as sku_pricing, UNNEST (sku_pricing.list_price.tiered_rates) as tier WHERE DATE(_PARTITIONTIME) = "2020-07-20" AND sku.id = "2DA5-55D3-E679" ;
Résultats de la requête :
Ligne | sku_id | sku_description | service_id | service_description | pricing_unit_quantity | start_usage_amount | usd_amount | account_currency_amount |
---|---|---|---|---|---|---|---|---|
1 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | 1000000,0 | 0,0 | 0.0 | 0,0 |
2 | 2DA5-55D3-E679 | Requêtes | 152E-C115-5142 | Cloud Run | 1000000,0 | 2000000,0 | 0,4 | 0,4 |
Articles associés
Articles liés aux données Cloud Billing exportées
- Configurer l'exportation des données Cloud Billing vers BigQuery
- Exemples de requêtes associées à l'exportation de données Cloud Billing vers BigQuery
- Visualiser les dépenses au fil du temps avec Looker Studio
Rapports sur les coûts et les tarifs disponibles dans Google Cloud Console
- Afficher les rapports Cloud Billing et l'évolution des coûts
- Consulter et télécharger les détails des coûts de votre facture ou relevé
- Afficher et télécharger les tarifs des services Cloud de Google
- Comprendre les économies réalisées grâce aux rapports de répartition des coûts
- Analyser l'efficacité de vos remises sur engagement d'utilisation
- Consulter l'historique des frais et paiements