Esportare i dati di fatturazione in BigQuery

Gli strumenti per il monitoraggio, l'analisi e l'ottimizzazione dei costi sono diventati una parte importante della gestione dello sviluppo. L'esportazione della fatturazione in BigQuery consente di esportare automaticamente durante il giorno l'utilizzo giornaliero e le stime dei costi in un set di dati BigQuery specificato. In questo modo, potrai accedere ai dati di fatturazione da BigQuery. Puoi anche utilizzare questo metodo per esportare i dati in un file JSON.

È inoltre disponibile l'esportazione in file standard in formato CSV e JSON. Tuttavia, se utilizzi questo tipo di esportazione, ricorda che acquisisce un set di dati di dimensioni inferiori rispetto all'esportazione in BigQuery. Per ulteriori informazioni sull'esportazione in file standard e sui dati che acquisisce, consulta Esportare i dati di fatturazione in un file.

Come abilitare l'esportazione della fatturazione in BigQuery

Per abilitare l'esportazione della fatturazione in BigQuery.

  1. Vai alla console di Google Cloud Platform.
  2. Apri il menu sulla sinistra e seleziona Fatturazione.
  3. Se disponi di più di un account di fatturazione, seleziona Vai all'account di fatturazione collegato per gestire la fatturazione del progetto attuale. Per scegliere un altro account di fatturazione, seleziona Gestisci gli account di fatturazione.
  4. Fai clic su Esportazione fatturazione.
  5. Seleziona Esportazione in BigQuery.
  6. Dall'elenco Progetto, seleziona il progetto in cui è memorizzato il set di dati di BigQuery. Se non hai ancora creato un set di dati di BigQuery, ti verrà richiesto di crearne uno.
  7. Puoi creare un nuovo set di dati, se richiesto, procedendo come segue:

    1. Nella UI web di BigQuery, fai clic sulla freccia verso il basso accanto al nome del progetto e fai clic su Crea un nuovo set di dati.
    2. Specifica l'ID set di dati, la Località dei dati e la Scadenza del tuo set di dati, quindi fai clic su OK.
  8. Nella console, dall'elenco Set di dati per esportazione fatturazione, specifica un set di dati in cui esportare i dati. Se hai appena creato il set di dati, scegli il nome.

  9. Fai clic su Abilita esportazione in BigQuery.

Dopo aver abilitato l'esportazione in BigQuery, potrebbero passare alcune ore prima che i dati vengano visualizzati. I dati di fatturazione vengono esportati automaticamente in BigQuery a intervalli regolari, ma la frequenza degli aggiornamenti in BigQuery varia a seconda dei servizi che stai utilizzando.

Informazioni sulle versioni della tabella di esportazione dei dati di fatturazione: originale e v1

A seconda di quando hai abilitato l'esportazione dei dati in BigQuery, nel set di dati potresti visualizzare più di una tabella. Se hai abilitato l'esportazione dei dati in BigQuery dopo che la funzione è stata rilasciata come GA (metà novembre 2017), visualizzerai solo la versione v1 e puoi ignorare il resto di questa sezione.

Se hai abilitato l'esportazione dei dati in BigQuery mentre la funzione era in fase beta, i dati di fatturazione esportati sono passati tra due tabelle diverse nel set di dati. Le tabelle contenevano due diverse versioni degli stessi dati: quella originale e quella nuova, ovvero v1.

Per gli utenti della versione beta, continueremo a fornire entrambi i formati per un periodo limitato in modo da poter continuare ad analizzare i dati di fatturazione durante la transizione allo schema v1. Esporteremo automaticamente i nuovi dati di fatturazione in entrambe le tabelle BigQuery man mano che arrivano.

La versione dei dati è indicata dai nomi delle tabelle:

  • versione originale: gcp_billing_export_BILLING_ACCOUNT_ID
  • versione v1: gcp_billing_export_v1_BILLING_ACCOUNT_ID

Differenze tra la versione originale e la v1

Abbiamo apportato diverse modifiche allo schema di esportazione. Alcune colonne sono state rinominate per coerenza con il resto di Google Cloud Platform e altre sono state aggiunte per includere ulteriori informazioni utili sui costi.

Riepilogo delle modifiche dello schema:

  • La colonna product è stata rinominata in service.description
  • La colonna resource_type è stata rinominata in sku.description
  • Le colonne start_time e end_time sono state rinominate in usage_start_time e usage_end_time
  • È stata aggiunta una colonna service.id
  • È stata aggiunta una colonna sku.id
  • È stata aggiunta una colonna export_time

Puoi utilizzare la colonna sku.id per mappare ogni voce ai prezzi di listino pubblicati nelle pagine dei prezzi di Google Cloud Platform e tramite l'API Cloud Billing Catalog. Utilizza la colonna export_time per stabilire quando è stato effettuato l'ultimo aggiornamento dei dati di fatturazione.

Dati di fatturazione in BigQuery

La seguente tabella descrive i contenuti dei dati di fatturazione esportati in BigQuery.

Campo Tipo Descrizione
billing_account_id Stringa L'ID dell'account di fatturazione a cui è associato l'utilizzo.
service.id (solo v1) Stringa L'ID del servizio a cui è associato l'utilizzo.
service.description (v1)
product (originale)
Stringa Il servizio di Google Cloud Platform che ha inviato i dati di fatturazione.
sku.id (solo v1) Stringa L'ID della risorsa utilizzata dal servizio. Per l'intero elenco degli SKU, vedi SKU GCP.
sku.description (v1)
resource_type (originale)
Stringa Una descrizione del tipo di risorsa utilizzata dal servizio. Ad esempio, un tipo di risorsa per Cloud Storage è Archiviazione standard degli Stati Uniti.
usage_start_time (v1)
start_time (originale)
Timestamp Un timestamp UNIX che indica la data e l'ora di inizio dell'utilizzo del servizio. Per ulteriori informazioni, consulta la documentazione di BigQuery sui tipi di dati timestamp. Vedi anche Differenze tra dati esportati e fatture qui di seguito.
usage_end_time (v1)
end_time (originale)
Timestamp Un timestamp UNIX che indica la data e l'ora di interruzione dell'utilizzo del servizio. Per ulteriori informazioni, consulta la documentazione di BigQuery sui tipi di dati timestamp. Vedi anche Differenze tra dati esportati e fatture qui di seguito.
project.id Stringa L'ID del progetto che ha generato i dati di fatturazione.
project.name Stringa Il nome del progetto che ha generato i dati di fatturazione.
project.labels.key Stringa Se sono presenti etichette, la parte relativa alla chiave di una coppia chiave-valore che comprende l'etichetta nel progetto in cui si è verificato l'utilizzo. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
project.labels.value Stringa Se sono presenti etichette, la parte relativa al valore di una coppia chiave-valore che comprende l'etichetta nel progetto in cui si è verificato l'utilizzo. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
labels.key Stringa Se sono presenti etichette, la parte relativa alla chiave di una coppia chiave-valore che comprende l'etichetta nella risorsa in cui si è verificato l'utilizzo. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
labels.value Stringa Se sono presenti etichette, la parte relativa al valore di una coppia chiave-valore che comprende l'etichetta nella risorsa in cui si è verificato l'utilizzo. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
cost A virgola mobile L'importo addebitato sul tuo account di fatturazione.
currency Stringa La valuta in cui viene addebitato il costo. Per ulteriori informazioni, consulta Valuta locale per fatturazione e pagamenti.
currency_conversion_rate A virgola mobile Il tasso di cambio dai dollari statunitensi alla valuta locale. In pratica, cost/currency_conversion_rate è il costo in dollari statunitensi.
usage.amount A virgola mobile La quantità di usage.unit utilizzata.
usage.unit Stringa L'unità base in cui viene misurato l'utilizzo delle risorse. Ad esempio, l'unità base per l'archiviazione standard è byte-secondi.
usage.amount_in_pricing_units A virgola mobile La quantità di usage.pricing_unit utilizzata. Questo campo restituisce i dati a partire dal 22 gennaio 2018 a oggi.
usage.pricing_unit Stringa L'unità in cui viene misurato l'utilizzo delle risorse in base all'API Catalog (attualmente in versione beta). Questo campo restituisce i dati a partire dal 22 gennaio 2018 a oggi.
credits.name Stringa Una descrizione del credito applicato all'account di fatturazione.
credits.amount A virgola mobile L'importo del credito applicato all'utilizzo. I crediti sono sempre importi negativi e il costo totale è calcolato come cost + credits.amount.
export_time (solo v1) Timestamp Un tempo di elaborazione associato a nuovi dati aggiunti. Questo valore aumenterà sempre a ogni nuova esportazione.
Vedi anche Differenze tra dati esportati e fatture qui di seguito.

Informazioni sulle etichette

Vedrai le colonne per le etichette nel set di dati BigQuery, ma per la release attuale alcuni valori di etichetta saranno vuoti. I dati di esportazione delle etichette verranno compilati in momenti diversi per servizi diversi, a seconda di quando verranno forniti da ciascun servizio.

Differenze tra dati esportati e fatture

Le query sui campi di timestamp potrebbero includere l'utilizzo segnalato in ritardo non incluso nella fattura e, di conseguenza, i dati restituiti potrebbero non corrispondere esattamente alla fattura.

I campi timestamp includono:

  • usage_start_time (v1 ) o start_time (originale)
  • usage_end_time (v1 ) o end_time (originale)
  • export_time

Errori e aggiustamenti

Tieni presente che, nell'improbabile caso in cui i dati di fatturazione contengano un errore o richiedano un aggiustamento, ai dati di fatturazione verranno aggiunti i dati che annullano l'errore. Tutte le colonne rimarranno invariate, ad eccezione di:

  • cost
  • credit
  • usage.amount
  • export_time

Se devi determinare quali sono i nuovi dati, puoi eseguire una query su export_time (solo v1). Se stai utilizzando la versione originale, puoi utilizzare una query come quella nell'esempio seguente:

SELECT partition_id, MSEC_TO_TIMESTAMP(last_modified_time)
FROM [dataset_name.table_name$__PARTITIONS_SUMMARY__]

Per questa query di esempio, devi utilizzare un codice SQL precedente poiché quello standard non supporta il separatore decorator della partizione ($).