Struttura dell'esportazione dei dati standard

Questa pagina fornisce informazioni di riferimento per lo schema dello standard di fatturazione Cloud i dati di costo di utilizzo esportati in ogni tabella di BigQuery.

Schema dei dati di costo per l'utilizzo standard

Nel set di dati BigQuery, il tuo ambiente Google Cloud i dati del costo di utilizzo vengono caricati in una tabella di dati denominata gcp_billing_export_v1_<BILLING_ACCOUNT_ID>.

Le seguenti informazioni descrivono lo schema di Google Cloud dati di costo per l'utilizzo standard esportati in BigQuery. Contiene informazioni standard sull'utilizzo dei costi dell'account di fatturazione Cloud, come ID account, data della fattura, servizi, SKU, progetti, etichette, località, costo, utilizzo, crediti, aggiustamenti e valuta.

Quando utilizzi i dati di costo per l'utilizzo standard in BigQuery, tieni presente che le seguenti:

  • Quando selezioni o creazione di un set di dati BigQuery per i dati di costo per l'utilizzo standard, puoi selezionare qualsiasi località del set di dati supportata per l'utilizzo con la fatturazione Cloud dati.
  • Quando attivi l'esportazione dei dati di costo per l'utilizzo standard per la prima volta nella fatturazione Cloud, se selezioni un set di dati configurato per utilizzare località multiregionale (UE o USA), i dati di fatturazione Cloud saranno disponibili retroattivamente dall'inizio del mese precedente. I dati vengono esportati in ordine cronologico. Per il backfill iniziale dei dati esportati, potrebbero essere necessari fino a 5 giorni dei dati di fatturazione Cloud retroattivi per terminare l'esportazione prima di iniziare visualizzare i dati sull'utilizzo più recenti.
  • Se abiliti l'esportazione dei dati di costo per utilizzo standard e selezioni un set di dati configurato per utilizzare un modello località in una regione, i dati di fatturazione Cloud saranno disponibili a partire dalla data in cui hai abilitato l'esportazione.
  • Se hai attivato, disattivato e successivamente riattivato il dati di costo per utilizzo standard, i dati di fatturazione Cloud potrebbero non essere disponibile per il periodo in cui l'esportazione dei dati è stata disattivata esplicitamente.
  • Scopri di più sulla frequenza di caricamento dei dati nel tuo Tabelle BigQuery.
  • I dati di costo per l'utilizzo standard non includono i costi a livello di risorsa ad esempio una macchina virtuale o un'unità SSD che genera l'utilizzo del servizio. Se ti interessa esportare i dati di costo a livello di risorsa in BigQuery per l'analisi, valuta la possibilità di abilitare l'esportazione dati dettagliati sui costi di utilizzo. I dati di costo dettagliati per l'utilizzo esportati includono tutti i campi e Informazioni contenute nei dati di costo per l'utilizzo standard.
  • Vedi altro limitazioni che potrebbero influire sull'esportazione dei dati di fatturazione in BigQuery come i set di dati con chiavi di crittografia gestite dal cliente (CMEK).
Campo Tipo Descrizione
billing_account_id Stringa

L'ID account di fatturazione Cloud a cui è associato l'utilizzo con.

Per i rivenditori: per i costi di utilizzo generati da un account di fatturazione Cloud subaccount, si tratta dell'ID del subaccount, non dell'ID del dell'account di fatturazione Cloud del rivenditore principale.

invoice.month Stringa

L'anno e il mese (AAAAMM) della fattura che include la riga di costo elementi. Ad esempio: "201901" equivale a gennaio 2019.

Puoi utilizzare questo campo per visualizzare gli addebiti totali in fattura. Consulta Esempi di query di esportazione della fatturazione Cloud in BigQuery.

cost_type Stringa

Il tipo di costo rappresentato da questa voce: normale, fiscale, aggiustamento o di arrotondamento.

service.id Stringa L'ID del servizio a cui è associato l'utilizzo.
service.description Stringa Il servizio Google Cloud che ha registrato i dati di fatturazione Cloud.
sku.id Stringa L'ID della risorsa utilizzata dal servizio. Per l'elenco completo degli SKU, consulta SKU di Google Cloud.
sku.description Stringa Una descrizione del tipo di risorsa utilizzata dal servizio. Ad esempio, un il tipo di risorsa per Cloud Storage è Standard Storage US.
usage_start_time Timestamp L'ora di inizio della finestra di utilizzo orario in cui il costo specificato era calcolato. L'utilizzo e i costi di tutti i servizi sono visualizzati con dati orari il che significa che l'utilizzo del servizio a lunga esecuzione è distribuito finestre orarie.

Per ulteriori informazioni, consulta la documentazione di BigQuery su tipi di dati di timestamp. Vedi anche Le differenze tra i dati esportati e le fatture riportate di seguito.

usage_end_time Timestamp L'ora di fine della finestra di utilizzo orario in cui è stato rilevato il costo calcolato. L'utilizzo e i costi di tutti i servizi sono visualizzati con dati orari il che significa che l'utilizzo del servizio a lunga esecuzione è distribuito finestre orarie.

Per ulteriori informazioni, consulta la documentazione di BigQuery su tipi di dati di timestamp. Vedi anche Le differenze tra i dati esportati e le fatture riportate di seguito.

project Struct project contiene campi che descrivono Progetto di fatturazione Cloud, ad esempio ID, numero, nome, numeri_antenati, ed etichette.
project.id Stringa L'ID del progetto Google Cloud che ha generato Dati di fatturazione Cloud.
project.number Stringa Un identificatore univoco e anonimo generato internamente per il Progetto Google Cloud che ha generato i dati di fatturazione Cloud. Nei tuoi casi di assistenza e in altre comunicazioni con i clienti, Google farà riferimento alle i tuoi progetti in base al numero di progetto.
project.name Stringa Il nome del progetto Google Cloud che ha generato Dati di fatturazione Cloud.
project.ancestry_numbers Stringa I predecessori nella gerarchia delle risorse per il progetto identificato dal specificato project.id (ad esempio, mio-progetto-123).

Ad esempio: /ParentOrgNumber/ParentFolderNumber/. Scopri di più informazioni su Gerarchia delle risorse.

project.ancestors Struct

Questo campo descrive la struttura e il valore della gerarchia delle risorse di una voce di costo, inclusi progetti, cartelle e organizzazioni. I predecessori sono in ordine dal nodo alla radice (progetto, cartella, quindi organizzazione).

project.ancestors.resource_name Stringa Lo nome risorsa relativo per ogni predecessore nel formato "resourceType/resourceNumber". L'utilizzo di project.ancestors.resource_name offre una visione più completa project.ancestry_numbers.
project.ancestors.display_name Stringa La che hai creato per la risorsa nella console.
project.labels.key Stringa Se le etichette sono presente, la parte relativa alla chiave della coppia chiave-valore che comprende l'etichetta sul progetto Google Cloud in cui è stato utilizzato. Per ulteriori informazioni sull'utilizzo delle etichette, consulta Utilizzando Etichette.
project.labels.value Stringa Se sono presenti etichette, la parte relativa al valore della coppia chiave-valore che comprende l'etichetta nel progetto Google Cloud in cui l'utilizzo si è verificato un errore. 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 comprende l'etichetta sulla risorsa Google Cloud in cui l'utilizzo si è verificato un errore. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
labels.value Stringa Se sono presenti etichette, la parte relativa al valore della coppia chiave-valore che comprende l'etichetta sulla risorsa Google Cloud in cui l'utilizzo si è verificato un errore. Per ulteriori informazioni sull'uso delle etichette, vedi Utilizzo delle etichette.
system_labels.key Stringa Se sono presenti etichette di sistema, la parte relativa alla chiave di una coppia chiave-valore che comprende l'etichetta generata dal sistema sulla risorsa in cui viene si è verificato un errore. Vedi anche Etichette di sistema disponibili.
system_labels.value Stringa Se sono presenti etichette di sistema, la parte relativa al valore di chiave:valore che comprende l'etichetta generata dal sistema sulla risorsa in cui viene si è verificato un errore. Vedi anche Etichette di sistema disponibili.
location.location Stringa Località di utilizzo a livello di più regioni, paesi, regioni o zone. o global per che non hanno una località specifica. Per ulteriori informazioni, vedi Area geografica e regioni e . delle località di Google Cloud.
location.country Stringa Quando location.location è un paese, una regione o una zona, è il paese di utilizzo, ad esempio US. Per ulteriori informazioni, vedi Area geografica e regioni e . delle località di Google Cloud.
location.region Stringa Se location.location è una regione o una zona, questo campo è la regione di utilizzo, ad esempio us-central1. Per ulteriori informazioni, vedi Area geografica e regioni e . delle località di Google Cloud.
location.zone Stringa Se location.location è una zona, questo campo è la zona di di utilizzo, ad esempio us-central1-a. Per ulteriori informazioni, vedi Area geografica e regioni e . delle località di Google Cloud.
cost Numero in virgola mobile Il costo dell'utilizzo prima di applicare eventuali crediti, con una precisione massima di sei posizioni decimali. Per ottenere il costo totale, crediti, eventuali credits.amount devono essere aggiunti al costo. Consulta di questa query di esempio per ulteriori informazioni.
currency Stringa La valuta in cui viene addebitato il costo. Per ulteriori informazioni, vedi Valuta locale per fatturazione e pagamenti.
currency_conversion_rate Numero in virgola mobile Il tasso di cambio dai dollari statunitensi alla valuta locale. Vale a dire che cost ÷ currency_conversion_rate è il costo in dollari statunitensi.
usage.amount Numero in virgola mobile La quantità di usage.unit utilizzata.
usage.unit Stringa L'unità base in cui viene misurato l'utilizzo delle risorse. Ad esempio, la base per l'archiviazione standard è byte-secondi.
usage.amount_in_pricing_units Numero in virgola mobile La quantità di usage.pricing_unit utilizzata.
usage.pricing_unit Stringa L'unità in cui viene misurato l'utilizzo delle risorse, in base al API Cloud Billing Catalog.
credits Struct credits contiene campi che descrivono la struttura valore dei crediti associati a Google Cloud e Google Maps SKU della piattaforma.
credits.id Stringa Se presente, indica che un credito è associato allo SKU del prodotto. I valori credits.id sono un identificatore univoco alfanumerico (ad es. 12-b34-c56-d78) o una descrizione del tipo di credito (ad esempio Sconto per impegno di utilizzo: CPU).

Se il campo credits.id è vuoto, significa che lo SKU del prodotto non è associati a un credito.

credits.full_name Stringa Il nome del credito associato allo SKU prodotto. Si tratta di un descrizione leggibile di un credits.id alfanumerico. Ecco alcuni esempi: Credito per la prova gratuita oppure Sconto per impegno di utilizzo basato sulla spesa.

I valori credits.full_name sono presenti solo per gli SKU con un alfanumerico credits.id. Se il valore del parametro credits.id indica il tipo di credito (ad esempio, Sconto per impegno di utilizzo: CPU), il valore Il campo credits.full_name sarà vuoto.

credits.type Stringa Questo campo descrive lo scopo o l'origine dell'credits.id. I tipi di credito includono:
  • COMMITTED_USAGE_DISCOUNT: Contratti per impegno di utilizzo basati sulle risorse acquistati per Compute Engine in cambio di prezzi molto scontati per le VM all'utilizzo delle risorse.
  • COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE: Contratti per impegno di utilizzo basati sulla spesa acquistati per servizi in cambio per l'impegno a spendere un importo minimo.
  • DISCOUNT: il tipo di credito sconto viene utilizzato per i crediti guadagnate al raggiungimento di una soglia di spesa contrattuale. Tieni presente che i report di fatturazione Cloud disponibili Console Google Cloud, il tipo di credito sconto è indicato come Sconti basati sulla spesa (contrattuali).
  • FREE_TIER: alcuni servizi offrono utilizzo gratuito delle risorse fino ai limiti specificati. Per questi servizi, vengono applicati per implementare l'utilizzo del livello gratuito.
  • PROMOTION: il tipo di credito della promozione include Prova gratuita di Google Cloud e crediti per le campagne di marketing o altro per utilizzare Google Cloud. Se disponibili, i crediti promozionali sono considerate una forma di pagamento e vengono applicate automaticamente per ridurre l'importo totale della fattura.
  • RESELLER_MARGIN: se sei un rivenditore, il rivenditore il tipo di credito margin indica gli sconti del Programma per rivenditori guadagnati per ogni elemento pubblicitario idoneo.
  • SUBSCRIPTION_BENEFIT: crediti guadagnati con l'acquisto abbonamenti a lungo termine a servizi in cambio di sconti.
  • SUSTAINED_USAGE_DISCOUNT: gli sconti per utilizzo sostenuto tipo di credito è uno sconto automatico che guadagni per l'esecuzione di le risorse di Compute Engine per una parte significativa mese di fatturazione.
credits.name Stringa Una descrizione del credito applicato all'account di fatturazione Cloud.
credits.amount Numero in virgola mobile L'importo del credito applicato all'utilizzo.
adjustment_info Struct adjustment_info contiene campi che descrivono la struttura valore di un aggiustamento per gli elementi pubblicitari di costo associati a di account di fatturazione Cloud.

I valori adjustment_info sono presenti solo se l'elemento pubblicitario di costo è stato generato per una modifica della fatturazione Cloud. Una modifica può che si verificano per motivi di correzione o non correzione. La adjustment_info tipo contiene dettagli sull'aggiustamento, se è stato emesso per correggere un errore o per altri motivi.

adjustment_info.id Stringa Se presente, indica che un aggiustamento è associato a una riga di costo. molto utile. adjustment_info.id è l'ID univoco di tutti i gli aggiustamenti associati a un problema.
adjustment_info.description Stringa Una descrizione dell'aggiustamento e della relativa causa.
adjustment_info.type Stringa

Il tipo di aggiustamento.

I tipi includono:

  • USAGE_CORRECTION: una correzione dovuta a una segnalazione errata all'utilizzo delle risorse.
  • PRICE_CORRECTION: una correzione dovuta a un prezzo errato le regole del caso.
  • METADATA_CORRECTION: una correzione per correggere i metadati senza modificando il costo.
  • GOODWILL: un credito emesso a favore del cliente per l'avviamento.
  • SALES_BASED_GOODWILL: un credito emesso a favore del cliente per avviamento bancario, come parte di un contratto.
  • SLA_VIOLATION: un credito emesso per il cliente a causa di un una violazione dell'obiettivo del livello di servizio (SLO).
  • BALANCE_TRANSFER: un aggiustamento per trasferire fondi da un account pagamenti a un altro.
  • ACCOUNT_CLOSURE: un aggiustamento per rendere un account chiuso a un saldo pari a zero.
  • GENERAL_ADJUSTMENT: un account di fatturazione generale modifica.
adjustment_info.mode Stringa

Modalità di emissione dell'aggiustamento,

Le modalità includono:

  • PARTIAL_CORRECTION: la correzione annulla parzialmente la l'utilizzo e i costi originali.
  • COMPLETE_NEGATION_WITH_REMONETIZATION: la correzione annulla completamente l'utilizzo e il costo originali e segnala la correzione articoli con utilizzo e costo aggiornati.
  • COMPLETE_NEGATION: la correzione annulla completamente il l'utilizzo e i costi originali e nessun ulteriore utilizzo viene rimonetizzato.
  • MANUAL_ADJUSTMENT: l'aggiustamento è assegnato al costo e utilizzo manuale.
export_time Timestamp Un tempo di elaborazione associato a un'aggiunta di dati di fatturazione Cloud. Questo valore aumenterà sempre a ogni nuova esportazione.
Vedi anche Le differenze tra i dati esportati e le fatture riportate di seguito.
tags Struct

Campi che descrivono il tag, come chiave, valore e spazio dei nomi.

tags.key Stringa

Il nome breve o il nome visualizzato della chiave associata a questo tag specifico.

tags.value Stringa

Le risorse collegate a un tags.key. In qualsiasi momento, esattamente può essere associato a una risorsa per una determinata chiave.

tags.inherited Booleano

Indica se un'associazione di tag viene ereditata (Tag ereditati = True) o diretti/non ereditati (tag ereditati = false). Puoi crea un'associazione di tag a una risorsa padre nel . nella gerarchia delle risorse.

tags.namespace Stringa

Rappresenta la gerarchia delle risorse che definisce le chiavi e i valori dei tag. Spazio dei nomi può essere combinata con i nomi brevi della chiave tag e del valore del tag per creare un'etichetta nome completo per la chiave o il valore del tag.

cost_at_list Numero in virgola mobile

I prezzi di listino associati a tutti gli elementi pubblicitari addebitati al tuo di account di fatturazione Cloud.

transaction_type Stringa

Il tipo di transazione del venditore. Il tipo di transazione può essere uno dei seguenti:

  • GOOGLE = 1: servizi venduti da Google Cloud.
  • THIRD_PARTY_RESELLER = 2: servizi di terze parti rivenduti da Google Cloud.
  • THIRD_PARTY_AGENCY = 3: servizi di terze parti venduti da un partner con Google Cloud agendo in qualità di agente.
seller_name Stringa

Il nome legale del venditore.

Comprendere i dati sui costi di utilizzo standard e dettagliati

Le seguenti sezioni descrivono i dati di costo di utilizzo standard e dettagliati esportati in BigQuery.

Informazioni sulle etichette

I dati di costo per un'etichetta specifica mostrano solo l'utilizzo a partire dalla data a partire dalla data è stato applicato a una risorsa. Ad esempio, se aggiungi l'etichetta environment:dev a una VM di Compute Engine il 15 gennaio 2024, qualsiasi analisi environment:dev include solo l'utilizzo per quella VM dal 15 gennaio.

I dati delle etichette possono essere visualizzati in momenti diversi per servizi diversi, a seconda di quando viene fornito da ciascun servizio.

Etichette di sistema disponibili

Le etichette di sistema sono coppie chiave/valore per metadati importanti sulla risorsa generato l'utilizzo. Le seguenti etichette di sistema vengono incluse automaticamente all'utilizzo applicabile.

system_labels.key Esempio system_labels.value Descrizione
compute.googleapis.com/machine_spec n1-standard-1, personalizzato-2-2048 Configurazione della macchina virtuale. Consulta Tipi di macchina per saperne di più.
compute.googleapis.com/cores per n1-standard-4 è 4; per custom-2-2048, è 2 Il numero di vCPU disponibili per la macchina virtuale.
compute.googleapis.com/memory per n1-standard-4 è 15360 (ovvero 15 GB * 1024 MB/GB); per custom-2-2048 è 2048 La quantità di memoria (in MB) disponibile per la macchina virtuale.
compute.googleapis.com/is_unused_reservation vero; false Indica l'utilizzo prenotato tramite Prenotazioni a livello di zona ma non in uso.
storage.googleapis.com/object_state in tempo reale; noncurrent; soft_deleted; multiparte Lo stato dell'oggetto di archiviazione addebitato.

Differenze tra dati esportati e fatture

I prodotti Google Cloud segnalano i dati di utilizzo e di costo a fatturazione Cloud processi a vari intervalli. Di conseguenza, potresti notare un ritardo tra l'utilizzo dei servizi Google Cloud, nonché l'utilizzo e i costi disponibili in fatturazione Cloud. In genere, i costi sono disponibili in un giorno, ma a volte possono essere necessarie più di 24 ore.

Alla fine di un mese di calendario, l'utilizzo segnalato in ritardo potrebbe non essere incluso in alla fattura del mese in questione e potrebbe invece essere riportata alla fattura del mese successivo.

Quando esegui query sui costi utilizzando i campi timestamp, i dati restituiti potrebbero rilevare un utilizzo segnalato in ritardo che non era originariamente incluso nella fattura generato per lo stesso mese di utilizzo. Di conseguenza, il servizio di fatturazione Cloud i dati restituiti potrebbero non essere mappati direttamente a quella fattura.

I campi timestamp includono:

  • usage_start_time
  • usage_end_time
  • export_time

Per restituire dati di fatturazione Cloud mappati direttamente a una fattura, esegui una query invoice.month anziché i campi timestamp.

Imposte

A partire dal 1° settembre 2020, i dati del costo di utilizzo mostrano le tue imposte la responsabilità per ciascuno dei tuoi progetti, invece che come singola voce. Se query o visualizzazioni che dipendono dai dati fiscali, potresti dover aggiornare le query per tenere conto di queste modifiche.

Ad esempio, per i costi registrati prima del 1° settembre, i tuoi dati sui costi di utilizzo hanno esaminato simile all'esempio seguente, che mostra una responsabilità fiscale totale di $10.

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project Normale 60 $
123456-ABCDEF-123456 test-project Normale 40 $
123456-ABCDEF-123456 [vuota] Tasse 10 $

Per i costi registrati dopo il 1° settembre, il valore di 10 € viene suddiviso in 6 €. example-project e 4 $a test-project:

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

Errori e aggiustamenti

Nel raro caso in cui i dati di fatturazione Cloud contengano un errore o richiedano un aggiustamento, vengono aggiunti dati correttivi. Questi aggiustamenti rientrano una di due categorie: correzioni o modifiche alla fatturazione.

Modifiche alla fatturazione

Le modifiche alla fatturazione vengono visualizzate come voci separate. Se hai ricevuto un addebito modifica, una nuova voce nell'esportazione della fatturazione Cloud BigQuery mostra la modifica. Gli aggiustamenti mostrati corrispondono le fatture, le note di credito e le note di debito disponibili in Area Documenti della sezione Fatturazione della console Google Cloud.

Per saperne di più sulle modifiche alla fatturazione e sulla loro applicazione, consulta Informazioni su note e aggiustamenti.

Correzioni

Le correzioni vengono visualizzate come nuovi dati che annullano i dati errati negli SKU di origine. In alcuni casi, nuovi dati sostituiranno l'addebito errato. Tutti dell'esportazione dei dati di fatturazione corrisponderanno ai dati originali, ad eccezione le seguenti colonne:

  • cost
  • credit
  • usage.amount
  • export_time

Ad esempio, immagina che ti vengano addebitati 10 $per l'utilizzo di SKU A su 1° gennaio Nella fattura di gennaio (emessa all'inizio di febbraio), vedrai una addebito di 10 $per SKU A. Tuttavia, il 2 febbraio Google Cloud ha emesso correzione rispetto a SKU A, con una riduzione del costo di utilizzo a 5 $. Riceverai altre due voci nella fattura di febbraio (emessa a inizio marzo):

  • -10 $ per l'utilizzo il 1° gennaio (escluso l'addebito originale)
  • 5 $ per l'utilizzo il 1° gennaio (che indica l'addebito previsto)

Questi nuovi elementi hanno una colonna adjustment_info nell'esportazione dei dati di fatturazione. La alla fattura originale di gennaio, che mostra l'addebito eccessivo, non verrà modificata. Per verificare gli addebiti nell'esportazione dei dati di fatturazione, visualizza costi per usage_start_time e il raggruppamento per Day. In queste visualizzazioni, eventuali correzioni o addebiti per l'utilizzo monetizzato in ritardo vengono e non è necessario preoccuparsi di dati temporaneamente errati.

Se desideri informazioni più dettagliate sulle tue correzioni, visualizza tutte addebiti in un mese di fatturazione e cerca gli addebiti in cui la data di utilizzo si sono verificate prima del mese di fatturazione. Questi addebiti sono il risultato di correzioni o utilizzo monetizzato in ritardo.

Il seguente esempio di codice mostra come creare una query di base che restituisce il token costo totale delle correzioni o utilizzo monetizzato in ritardo:

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';

Per un esempio di query che restituisce un'analisi dei costi per servizio per fattura addebiti in cui la data di utilizzo si è verificata prima del mese di fatturazione, consulta Esegui query sui dettagli dei costi per visualizzare le correzioni o l'utilizzo monetizzato in ritardo per servizio per un determinato mese di fatturazione in "Query di esempio per l'esportazione dei dati di fatturazione Cloud".

Informazioni sui crediti promozionali nei contratti sui prezzi personalizzati

Se hai un contratto con prezzi personalizzati, potresti ricevere un offerta promozionale da utilizzare su Google Cloud nell'ambito del contratto. Ad esempio: potresti ricevere 1000 $da usare per le risorse Compute Engine. I crediti promozionali sono generalmente considerati una forma di pagamento. Se disponibili, I crediti promozionali vengono applicati automaticamente per ridurre il totale della fattura.

I termini del contratto specificano se i crediti promozionali si applicano al tuo calcolati al prezzo di listino di uno SKU o al prezzo netto (dopo sconti).

Se i crediti promozionali sono applicabili a costi calcolati nell'elenco [price], nel report sulla tabella dei costi, è presente un servizio chiamato Invoice, con uno SKU chiamato Contract billing adjustment. Questo SKU regola in modo che si applichino ai costi al prezzo di listino. Per vedere l'utilizzo che a cui si riferisce l'aggiustamento, esegui una query sulle colonne system.labels. La chiave system.labels.key è cloud-invoice.googleapis.com/sku_id e il valore in system.labels.value contiene l'ID SKU che il credito e l'aggiustamento applicato.

Informazioni sui tag

Tag sono risorse sotto forma di coppie chiave/valore che possono essere collegate alle risorse direttamente o tramite ereditarietà. Puoi usare i tag per eseguire storni di addebito, controlli e altre analisi di allocazione dei costi. Puoi anche usare tag e condizionali dell'applicazione dei criteri per avere un controllo granulare in tutta la gerarchia delle risorse.

I tag dispongono di un solido modello di autorizzazioni e possono supportare l'ereditarietà, la gestione, la standardizzazione della nomenclatura e l'integrazione del motore dei criteri, le etichette sono uno strumento separato che ti consente di annotare le risorse.

I dati dei tag vengono visualizzati nelle esportazioni BigQuery per risorse, progetti Cartelle e organizzazioni.

Tag disponibili

Le esportazioni Costi standard e Costi dettagliati per risorse, progetti Le cartelle e le organizzazioni includono questi campi per i dati dei tag: Chiave Tag, Tag. Valore, Tag ereditati e Spazio dei nomi tag.

Nell'esportazione dei dati di fatturazione Cloud sono disponibili tag a livello di risorsa. per le seguenti risorse:

  • Istanze di Compute Engine
  • Bucket Cloud Storage
  • Istanze Spanner
  • Servizi e job di Cloud Run
  • Repository Artifact Registry
  • Istanze Memorystore for Redis
  • Cluster, istanze e backup di AlloyDB per PostgreSQL

Limitazioni dei tag

  • La propagazione dei tag a BigQuery può richiedere fino a un'ora . Se un tag è stato aggiunto o rimosso entro un'ora o se una risorsa ed esiste da meno di un'ora, potrebbe non apparire nell'esportazione.

Esempi di query sui costi di utilizzo standard

Questa sezione fornisce esempi di come eseguire query sui dati di costo di utilizzo standard della fatturazione Cloud esportati in BigQuery.

Specifica il nome della tabella da utilizzare nelle query

In questi esempi, per eseguire query sui dati di fatturazione Cloud BigQuery, devi specificare il nome della tabella nel FROM. Il nome della tabella viene determinato utilizzando tre valori: project.dataset.BQ_table_name.

Valori comuni utilizzati nelle query di esempio relative ai costi standard

Gli esempi di query in questa sezione utilizzano il seguente valore per Nome tabella: project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX

Questi esempi di query funzionano anche con i dati dettagliati sui costi di utilizzo esportati in BigQuery, anche se non sono scritti per recuperare nessuna delle informazioni a livello di risorsa fornite con l'opzione di esportazione dettagliata dei costi di utilizzo.

Restituire i costi totali in una fattura

Le seguenti query mostrano due modi per visualizzare i valori di costo e credito utilizzando i dati di fatturazione esportati.

  • Il campo total somma direttamente i valori di costo e credito in virgola mobile, che possono causare errori di arrotondamento in virgola mobile.
  • Il campo total_exact converte i costi e i valori del credito in micro prima del giorno somma, poi converte di nuovo in dollari dopo la somma, evitando errore di arrotondamento con rappresentazione in virgola mobile.

Esempio 1: somma di tutti i costi per fattura

Questa query mostra il totale delle fatture di ogni mese, come somma di costi, tasse, aggiustamenti ed errori di arrotondamento standard.

SQL standard

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

Ad esempio, il risultato della query precedente potrebbe essere:

Riga mese totale total_exact
1 201901 1005,004832999999984 1005,00 $
2 201902 992,3101739999999717 992,31 $
3 201903 1220,761089999999642 1220,76 $

Esempio 2: dettagli sui resi per tipo di costo, per mese di fatturazione

Questa query mostra i totali per ogni cost_type per ogni mese. Tipi di costo includono costi, tasse, aggiustamenti ed errori di arrotondamento standard.

SQL standard

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

Ad esempio, il risultato della query precedente potrebbe essere:

Riga mese cost_type totale total_exact
1 201901 regolare 1000,501209987994782 1000,50 $
2 201901 rounding_error –$0,500489920049387 –0,50 $
3 201901 tasse 10,000329958477891 $ 10,00
4 201901 aggiustamento –$5,002572999387045 –$5,00

Esempi di query con etichette

I seguenti esempi illustrano altri modi per eseguire query sui dati con le etichette.

Per gli esempi di questa sezione, supponiamo che:

  • Hai due app (grapefruit-squeezer e chocolate-masher).
  • Per ogni app, hai due ambienti (sviluppo e produzione).
  • L'ambiente di sviluppo ha una piccola istanza per app.
  • L'ambiente di produzione ha una piccola istanza nelle Americhe e una piccola in Asia.
  • Ogni istanza è etichettata con l'app e l'ambiente.
  • Hai una istanza senza etichette che usi per la sperimentazione.

Il tuo conto totale è di $ 24 con la seguente ripartizione:

Istanza Etichette Costo totale
Piccola istanza con una vCPU in esecuzione nelle Americhe Nessuna $ 4
Piccola istanza con una vCPU in esecuzione nelle Americhe app: chocolate-masher
ambiente: sviluppo
$ 2
Piccola istanza con una vCPU in esecuzione nelle Americhe app: spremiagrumi
ambiente: sviluppo
$ 3
Piccola istanza con una vCPU in esecuzione nelle Americhe app: chocolate-masher
ambiente: produzione
$ 3,25
Piccola istanza con una vCPU in esecuzione in Asia app: chocolate-masher
ambiente: produzione
$ 3,75
Piccola istanza con una vCPU in esecuzione nelle Americhe app: spremiagrumi
ambiente: produzione
$ 3,50
Piccola istanza con una vCPU in esecuzione in Asia app: spremiagrumi
ambiente: produzione
$ 4,50

Esecuzione di query su ogni riga senza raggruppamento

La visualizzazione più granulare di questi costi si otterrebbe eseguendo una query su ogni riga senza raggruppamento. Supponi che tutti i campi, eccetto le etichette e la descrizione della SKU, siano gli stessi (progetto, servizio e così via).

SQL standard

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

SQL precedente

TO_JSON_STRING not supported.
Riga sku.description etichette costo
1 Piccola istanza con una vCPU in esecuzione nelle Americhe [] $ 4
2 Piccola istanza con una vCPU in esecuzione nelle Americhe [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"dev"}] $ 2
3 Piccola istanza con una vCPU in esecuzione nelle Americhe [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"dev"}] $ 3
4 Piccola istanza con una vCPU in esecuzione nelle Americhe [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] $ 3,25
5 Piccola istanza con una vCPU in esecuzione in Asia [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] $ 3,75
6 Piccola istanza con una vCPU in esecuzione nelle Americhe [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] $ 3,50
7 Piccola istanza con una vCPU in esecuzione in Asia [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] $ 4,50
TOTALE $ 24

Raggruppamento per mappa di etichetta sotto forma di stringa JSON

Questo è un modo rapido e semplice per ripartire i costi in base a ogni combinazione di etichette.

SQL standard

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

SQL precedente

TO_JSON_STRING not supported.
Riga etichette costo
1 [] $ 4
2 [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"dev"}] $ 2
3 [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"dev"}] $ 3
4 [{"key":"app","value":"chocolate-masher"},{"key":"environment","value":"prod"}] $ 7
5 [{"key":"app","value":"grapefruit-squeezer"},{"key":"environment","value":"prod"}] $ 8
TOTALE $ 24

Raggruppamento per valore di etichetta per una chiave specifica

La ripartizione dei costi per i valori di una chiave di etichetta specifica è un caso d'uso comune. Se utilizzi un LEFT JOIN e inserisci il filtro per la chiave ("key") nella condizione JOIN (anziché WHERE), includi il costo che non contiene questa chiave, in modo da ottenere una visione completa del costo.

SQL standard

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

SQL precedente

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

Raggruppamento per coppie chiave/valore

Fai attenzione al momento di interpretare o esportare questi risultati. Una singola riga in questi esempi mostra una somma valida senza doppio conteggio, ma non dovrebbe essere combinata con altre righe, tranne eventualmente se la chiave è la stessa o se hai la certezza che le chiavi non verranno mai impostate sulla stessa risorsa.

SQL standard

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

SQL precedente

SELECT
  labels.key as key,
  labels.value as value,
  SUM(cost)
FROM [project:dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX]
GROUP BY key, value;
Riga chiave valore costo
1 null null $ 4
2 app chocolate-masher $ 9
3 app grapefruit-squeezer $ 11
4 environment dev $ 5
5 environment prod $ 15
TOTALE $ 44

Nota come la somma totale sia maggiore dell'importo della tua fattura.

Query sullo sconto per impegno di utilizzo

Le seguenti query mostrano come visualizzare le commissioni e i crediti associati a sconti per impegno di utilizzo nei dati di fatturazione esportati. Per comprendere le tariffe e i crediti del tuo impegno sono attribuite al tuo account di fatturazione Cloud e ai tuoi progetti, consulta Attribuzione degli sconti per impegno di utilizzo.

Visualizzazione delle tariffe di impegno

Per visualizzare le tariffe dell'impegno per sconti per impegno di utilizzo nell'esportazione dei dati di fatturazione, utilizza la seguente query di esempio.

SQL standard

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

Visualizzazione dei crediti per impegno

Per visualizzare sconto per impegno di utilizzo nell'esportazione dei dati di fatturazione, utilizza la seguente query di esempio.

SQL standard

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

Utilizza i filtri della gerarchia delle risorse per esaminare la discendenza

Puoi utilizzare i filtri della gerarchia delle risorse per aggregare i costi in base agli elementi gerarchici ad esempio progetti, cartelle e organizzazioni. Questi esempi di query mostrano metodi per sommare i costi filtrati in base agli elementi della gerarchia delle risorse e visualizzare il progetto antenati.

Esempio 1: filtrare per nome risorsa

Questo esempio illustra le query che raggruppano i costi in base all'origine del progetto e filtra per visualizzare solo i costi generati sotto uno specifico elemento gerarchico, identificato da il nome della risorsa relativa.

Metodo stringa

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

Metodo UNNEST

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

Esempio 2: filtrare per nome visualizzato

Questo esempio illustra le query che raggruppano i costi in base all'origine del progetto e filtra per visualizzare solo i costi generati sotto uno specifico elemento gerarchico, identificato da il nome visualizzato fornito dall'utente.

Metodo di corrispondenza delle stringhe

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

Metodo UNNEST

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

Esempi di query con tag

I seguenti esempi illustrano come eseguire query sui dati con i tag.

Calcolare i costi per mese di fatturazione con i tag

La seguente query dimostra come utilizzare i costi di reso in base al mese di fatturazione per il 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 `project-ID.dataset.gcp_billing_export_resource_v1_XXXXXX-XXXXXX-XXXXXX`, 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;

Ad esempio, il risultato della query precedente potrebbe essere:

Riga 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 personalizzazione 16,08

Visualizza i costi delle risorse senza tag

Questa query mostra il totale della fattura per le risorse senza tag, raggruppate per fattura mese.

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-ID.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;

Ad esempio, il risultato della query precedente potrebbe essere:

Riga 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

Altri esempi di query

Query su costi e crediti in base al progetto per un mese di fatturazione specificato

Fornendo un mese di fatturazione specifico di giugno 2020 (nel formato AAAAMM), la query restituirà una visualizzazione dei costi e dei crediti raggruppati per progetto insieme che mostrano le etichette del progetto.

SQL standard

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

SQL precedente

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

Report su costi e prezzi disponibili nella console Google Cloud