Stima e controllo dei costi
Questa pagina descrive le best practice per stimare e controllare i costi in BigQuery.
I costi principali in BigQuery sono quelli di calcolo, utilizzati per l'elaborazione delle query, e di archiviazione, per i dati archiviati in BigQuery. BigQuery offre due tipi di modelli di prezzo per l'elaborazione delle query: prezzi on demand e basati sulla capacità. Ogni modello offre best practice diverse per il controllo dei costi. Per i dati archiviati in BigQuery, i costi dipendono dal modello di fatturazione dell'archiviazione configurato per ogni set di dati.
Informazioni sui prezzi di calcolo per BigQuery
Esistono sottili differenze nei prezzi di calcolo per BigQuery che influenzano la pianificazione della capacità e il controllo dei costi.
Modelli di prezzo
Per il computing on demand in BigQuery, vengono addebitati costi per TiB per le query BigQuery.
In alternativa, per il computing della capacità in BigQuery, vengono addebitati i costi per le risorse di calcolo (slot) utilizzate per elaborare la query. Per utilizzare questo modello, configura le prenotazioni per gli slot.
Le prenotazioni hanno le seguenti caratteristiche:
- Vengono allocati in pool di slot e consentono di gestire la capacità e isolare i carichi di lavoro in modo sensato per la tua organizzazione.
- Devono risiedere in un progetto di amministrazione e sono soggetti a quote e limiti.
Il modello di prezzi per capacità offre diverse versioni, che offrono tutte un'opzione pay-as-you-go addebitata in ore di slot. Le versioni Enterprise ed Enterprise Plus offrono anche impegni facoltativi di uno o tre anni per gli slot, che possono farti risparmiare rispetto alla tariffa pay-as-you-go.
Puoi anche impostare prenotazioni con scalabilità automatica utilizzando l'opzione con pagamento a consumo. Per maggiori informazioni, consulta le seguenti risorse:
- Per confrontare i modelli di prezzo, vedi Scegliere un modello.
- Per informazioni dettagliate sui prezzi, consulta Prezzi di calcolo on demand e Prezzi di calcolo della capacità.
Limitare i costi per ogni modello
Quando utilizzi il modello di prezzi on demand, l'unico modo per limitare i costi è configurare quote giornaliere a livello di progetto o utente. Tuttavia, queste quote impongono un limite rigido che impedisce agli utenti di eseguire query oltre il limite della quota. Per impostare le quote, vedi Creare quote di query personalizzate.
Quando utilizzi il modello di prezzi per la capacità con le prenotazioni di slot, specifichi il numero massimo di slot disponibili per una prenotazione. Puoi anche acquistare impegni di slot che offrono prezzi scontati per un periodo di tempo prestabilito.
Puoi utilizzare le versioni completamente on demand impostando la baseline della prenotazione su 0 e il massimo su un'impostazione che soddisfi le esigenze del tuo workload. BigQuery esegue automaticamente lo scale up fino al numero di slot necessari per il tuo workload, senza mai superare il valore massimo che hai impostato. Per ulteriori informazioni, consulta Gestione dei carichi di lavoro utilizzando le prenotazioni.
Controllare i costi delle query
Per controllare i costi delle singole query, ti consigliamo di seguire prima le best practice per l'ottimizzazione del calcolo delle query e l'ottimizzazione dell'archiviazione.
Le sezioni seguenti descrivono ulteriori best practice che puoi utilizzare per controllare ulteriormente i costi delle query.
Creare quote per query personalizzate
Best practice: utilizza quote di query giornaliere personalizzate per limitare la quantità di dati elaborati al giorno.
Puoi gestire i costi impostando una quota personalizzata che specifica un limite alla quantità di dati elaborati al giorno per progetto o per utente. Gli utenti non possono eseguire query una volta raggiunta la quota.
Per impostare una quota personalizzata, devi disporre di ruoli o autorizzazioni specifici. Per le quote da impostare, consulta Quote e limiti.
Per ulteriori informazioni, consulta Limitare i costi per ogni modello di prezzo.
Controlla il costo stimato prima di eseguire una query
Best practice:prima di eseguire le query, visualizzane l'anteprima per stimare i costi.
Quando utilizzi il modello di prezzo on demand, le query vengono fatturate in base al numero di byte letti. Per stimare i costi prima di eseguire una query:
- Utilizza lo strumento di convalida delle query nella console Google Cloud .
- Esegui una prova per le query.
Utilizzare lo strumento di convalida delle query
Quando inserisci una query nella console Google Cloud , lo strumento di convalida delle query verifica la sintassi della query e fornisce una stima del numero di byte letti. Puoi utilizzare questa stima per calcolare il costo delle query nel Calcolatore prezzi.
Se la query non è valida, lo strumento di convalida delle query visualizza un messaggio di errore. Ad esempio:
Not found: Table myProject:myDataset.myTable was not found in location US
Se la query è valida, lo strumento di convalida delle query fornisce una stima del numero di byte necessari per elaborare la query. Ad esempio:
This query will process 623.1 KiB when run.
Eseguire una prova
Per eseguire un dry run:
Console
Vai alla pagina BigQuery.
Inserisci la query nell'editor di query.
Se la query è valida, viene visualizzato automaticamente un segno di spunta insieme alla quantità di dati che verranno elaborati dalla query. Se la query non è valida, viene visualizzato un punto esclamativo con un messaggio di errore.
bq
Inserisci una query come la seguente utilizzando il flag --dry_run
.
bq query \ --use_legacy_sql=false \ --dry_run \ 'SELECT COUNTRY, AIRPORT, IATA FROM `project_id`.dataset.airports LIMIT 1000'
Per una query valida, il comando produce la seguente risposta:
Query successfully validated. Assuming the tables are not modified, running this query will process 10918 bytes of data.
API
Per eseguire una prova utilizzando l'API, invia un job di query con
dryRun
impostato su true
nel tipo
JobConfiguration.
Vai
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Go.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Java.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Node.js.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery PHP.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Python
Imposta la proprietà
QueryJobConfig.dry_run
su True
.
Client.query()
restituisce sempre un
QueryJob
completato quando viene fornita una configurazione di query di prova.
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Python.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Stima i costi delle query
Quando utilizzi il modello di prezzi on demand, puoi stimare il costo di esecuzione di una query calcolando il numero di byte elaborati.
Calcolo delle dimensioni delle query on demand
Per calcolare il numero di byte elaborati dai vari tipi di query, consulta le seguenti sezioni:
Evita di eseguire query per esplorare i dati delle tabelle
Best practice: non eseguire query per esplorare o visualizzare in anteprima i dati delle tabelle.
Se stai sperimentando o esplorando i tuoi dati, puoi utilizzare le opzioni di anteprima della tabella per visualizzare i dati senza costi e senza influire sulle quote.
BigQuery supporta le seguenti opzioni di anteprima dei dati:
- Nella Google Cloud console, nella pagina dei dettagli della tabella, fai clic sulla scheda Anteprima per campionare i dati.
- Nello strumento a riga di comando bq, utilizza il comando
bq head
e specifica il numero di righe da visualizzare in anteprima. - Nell'API, utilizza
tabledata.list
per recuperare i dati della tabella da un insieme specificato di righe. - Evita di utilizzare
LIMIT
nelle tabelle non clusterizzate. Per le tabelle non in cluster, una clausolaLIMIT
non riduce i costi di calcolo.
Limitare il numero di byte fatturati per query
Best practice: utilizza l'impostazione del numero massimo di byte fatturati per limitare i costi delle query quando utilizzi il modello di prezzo on demand.
Puoi limitare il numero di byte fatturati per una query utilizzando l'impostazione Byte massimi fatturati. Quando imposti il numero massimo di byte fatturati, il numero di byte letti dalla query viene stimato prima dell'esecuzione della query. Se il numero di byte stimati supera il limite, la query non riesce senza comportare addebiti.
Per le tabelle in cluster, la stima del numero di byte fatturati per una query è un limite superiore e può essere superiore al numero effettivo di byte fatturati dopo l'esecuzione della query. Pertanto, in alcuni casi, se imposti il numero massimo di byte fatturati, una query su una tabella in cluster può non riuscire, anche se i byte fatturati effettivi non supererebbero l'impostazione del numero massimo di byte fatturati.
Se una query non va a buon fine a causa dell'impostazione del numero massimo di byte fatturati, viene restituito un errore simile al seguente:
Error: Query exceeded limit for bytes billed: 1000000. 10485760 or higher
required.
Per impostare il numero massimo di byte fatturati:
Console
- Nell'editor di query, fai clic su Altro > Impostazioni query > Opzioni avanzate.
- Nel campo Numero massimo di byte fatturati, inserisci un numero intero.
- Fai clic su Salva.
bq
Utilizza il comando bq query
con il flag --maximum_bytes_billed
.
bq query --maximum_bytes_billed=1000000 \ --use_legacy_sql=false \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare'
API
Imposta la proprietà maximumBytesBilled
in JobConfigurationQuery
o
QueryRequest
.
Evita di utilizzare LIMIT
nelle tabelle non clusterizzate
Best practice: per le tabelle non in cluster, non utilizzare una clausola LIMIT
come
metodo di controllo dei costi.
Per le tabelle non in cluster, l'applicazione di una clausola LIMIT
a una query non influisce
sulla quantità di dati letti. Ti viene addebitato il costo della lettura di tutti i byte dell'intera tabella come indicato dalla query, anche se la query restituisce solo un sottoinsieme. Con una tabella in cluster, una clausola LIMIT
può ridurre il numero di byte analizzati, perché l'analisi si interrompe quando vengono analizzati blocchi sufficienti per ottenere il risultato. Ti vengono addebitati solo i byte scansionati.
Materializzare i risultati della query in fasi
Best practice: se possibile, materializza i risultati della query in più fasi.
Se crei una query di grandi dimensioni in più fasi, ogni volta che la esegui, BigQuery legge tutti i dati richiesti dalla query. Ti viene addebitato l'intero volume di dati letti ogni volta che viene eseguita la query.
Suddividi invece la query in fasi, in cui ogni fase materializza i risultati della query scrivendoli in una tabella di destinazione. L'esecuzione di query sulla tabella di destinazione più piccola riduce la quantità di dati letti e abbassa i costi. Il costo di archiviazione dei risultati materializzati è molto inferiore al costo di elaborazione di grandi quantità di dati.
Controllare i costi dei workload
Questa sezione descrive le best practice per controllare i costi all'interno di un workload. Un carico di lavoro è un insieme di query correlate. Ad esempio, un carico di lavoro può essere una pipeline di trasformazione dei dati eseguita quotidianamente, un insieme di dashboard gestite da un gruppo di analisti aziendali o diverse query ad hoc eseguite da un gruppo di data scientist.
Utilizza il Google Cloud Calcolatore prezzi
Best practice: utilizza il calcolatore prezzi diGoogle Cloud per creare una stima dei costi mensili complessivi per BigQuery in base all'utilizzo previsto. Puoi quindi confrontare questa stima con i costi effettivi per identificare le aree di ottimizzazione.
On demand
Per stimare i costi nel Google Cloud Calcolatore prezzi quando utilizzi il modello di prezzo on demand, segui questi passaggi:
- Apri il Calcolatore prezzi diGoogle Cloud .
- Fai clic su Aggiungi alla stima.
- Seleziona BigQuery.
- Seleziona "On demand" per Tipo di servizio.
- Scegli la località in cui verranno eseguite le query.
- Per Quantità di dati sottoposti a query, inserisci i byte stimati letti dalla simulazione o dallo strumento di convalida delle query.
- Inserisci le stime dell'utilizzo dello spazio di archiviazione per Archiviazione attiva, Archiviazione a lungo termine, Inserimento di flussi di dati e Letture di flussi di dati. Devi stimare solo l'archiviazione fisica o logica, a seconda del modello di fatturazione dello spazio di archiviazione del set di dati.
- La stima viene visualizzata nel riquadro Dettagli costi. Per ulteriori informazioni sul costo stimato, fai clic su Apri visualizzazione dettagliata. Puoi anche scaricare e condividere la stima dei costi.
Per maggiori informazioni, vedi Prezzi on demand.
Edizioni
Per stimare i costi nel Google Cloud calcolatore prezzi quando utilizzi il modello di determinazione dei prezzi basato sulla capacità con BigQuery Editions, segui questi passaggi:
- Apri il Calcolatore prezzi diGoogle Cloud .
- Fai clic su Aggiungi alla stima.
- Seleziona BigQuery.
- Seleziona "Edizioni" per Tipo di servizio.
- Scegli la posizione in cui vengono utilizzati gli spazi pubblicitari.
- Scegli la tua Edizione.
- Scegli Slot massimi, Slot di riferimento, Impegno facoltativo e Utilizzo stimato della scalabilità automatica.
- Scegli la posizione in cui sono archiviati i dati.
- Inserisci le stime dell'utilizzo dello spazio di archiviazione per Archiviazione attiva, Archiviazione a lungo termine, Inserimento di flussi di dati e Letture di flussi di dati. Devi stimare solo l'archiviazione fisica o logica, a seconda del modello di fatturazione dello spazio di archiviazione del set di dati.
- La stima viene visualizzata nel riquadro Dettagli costi. Per ulteriori informazioni sul costo stimato, fai clic su Apri visualizzazione dettagliata. Puoi anche scaricare e condividere la stima dei costi.
Per ulteriori informazioni, consulta la sezione Prezzi basati sulla capacità.
Utilizzare prenotazioni e impegni
Best practice: utilizza le prenotazioni e gli impegni di BigQuery per controllare i costi.
Per ulteriori informazioni, consulta Limitare i costi per ogni modello di prezzo.
Utilizzare lo strumento di stima degli slot
Best practice:utilizza lo strumento per la stima degli slot per stimare il numero di slot necessari per i tuoi carichi di lavoro.
Lo strumento di stima degli slot BigQuery ti aiuta a gestire la capacità degli slot in base alle metriche delle prestazioni storiche.
Inoltre, i clienti che utilizzano il modello di prezzi on demand possono visualizzare consigli sul dimensionamento per impegni e prenotazioni di scalabilità automatica con prestazioni simili quando passano ai prezzi basati sulla capacità.
Annullare i job a esecuzione prolungata non necessari
Per liberare capacità, controlla i job a esecuzione prolungata per assicurarti che debbano continuare a essere eseguiti. In caso contrario, annullali.
Visualizzare i costi utilizzando una dashboard
Best practice:crea un dashboard per analizzare i dati di fatturazione Cloud in modo da poter monitorare e apportare modifiche al tuo utilizzo di BigQuery.
Puoi esportare i dati di fatturazione in BigQuery e visualizzarli in uno strumento come Looker Studio. Per un tutorial sulla creazione di una dashboard di fatturazione, consulta Visualizzare Google Cloud la fatturazione utilizzando BigQuery e Looker Studio.
Utilizzare budget e avvisi di fatturazione
Best practice: utilizza i budget di fatturazione Cloud per monitorare gli addebiti di BigQuery in un unico posto.
I budget del fatturazione Cloud ti consentono di monitorare i costi effettivi rispetto a quelli pianificati. Dopo aver impostato un importo del budget, definisci delle regole di soglia di avviso per il budget, in modo che attivino le notifiche email. Le email di avviso del budget ti aiutano a rimanere informato su come la spesa per BigQuery viene tracciata rispetto al budget.
Controllare i costi di archiviazione
Utilizza queste best practice per ottimizzare il costo dello spazio di archiviazione BigQuery. Puoi anche ottimizzare l'archiviazione per il rendimento delle query.
Utilizzare l'archiviazione a lungo termine
Best practice: utilizza i prezzi dell'archiviazione a lungo termine per ridurre i costi dei dati meno recenti.
Quando carichi i dati nell'archiviazione BigQuery, questi sono soggetti ai prezzi di archiviazione di BigQuery. Per i dati meno recenti, puoi usufruire automaticamente dei prezzi di archiviazione a lungo termine di BigQuery.
Se hai una tabella che non viene modificata per 90 giorni consecutivi, il prezzo di archiviazione per quella tabella si riduce automaticamente del 50%. Se hai una tabella partizionata, ogni partizione viene considerata separatamente per l'idoneità ai prezzi a lungo termine, in base alle stesse regole delle tabelle non partizionate.
Configura il modello di fatturazione dello spazio di archiviazione
Best practice: ottimizza il modello di fatturazione dell'archiviazione in base ai tuoi pattern di utilizzo.
BigQuery supporta la fatturazione dello spazio di archiviazione utilizzando byte logici (non compressi) o fisici (compressi) oppure una combinazione di entrambi. Il modello di fatturazione dell'archiviazione configurato per ogni set di dati determina il prezzo dell'archiviazione, ma non influisce sul rendimento delle query.
Puoi utilizzare le visualizzazioni INFORMATION_SCHEMA
per determinare il modello di fatturazione dell'archiviazione
più adatto in base ai tuoi pattern di utilizzo.
Evitare di sovrascrivere le tabelle
Best practice:quando utilizzi il modello di fatturazione dello spazio di archiviazione fisico, evita di sovrascrivere ripetutamente le tabelle.
Quando sovrascrivi una tabella, ad esempio utilizzando il parametro --replace
nei job di caricamento batch
o utilizzando l'istruzione SQL TRUNCATE TABLE
, i dati sostituiti vengono conservati per la durata delle finestre di time travel e failsafe.
Se sovrascrivi spesso una tabella, ti verranno addebitati costi di archiviazione aggiuntivi.
Puoi invece caricare i dati in modo incrementale in una tabella utilizzando il parametro WRITE_APPEND
nei job di caricamento, l'istruzione SQL MERGE
o l'API Storage Write.
Ridurre la finestra spostamento cronologico
Best practice:in base ai tuoi requisiti, puoi ridurre la finestra di spostamento nel tempo.
La riduzione della finestra di spostamento nel tempo dal valore predefinito di sette giorni riduce il periodo di conservazione dei dati eliminati o modificati in una tabella. Lo spazio di archiviazione Time-Travel ti viene addebitato solo quando utilizzi il modello di fatturazione dello spazio di archiviazione fisico (compresso).
La finestra di spostamento cronologico è impostata a livello di set di dati. Puoi anche impostare la finestra di spostamento cronologico predefinita per i nuovi set di dati utilizzando le impostazioni di configurazione.
Utilizzare la scadenza della tabella per le tabelle di destinazione
Best practice: se stai scrivendo risultati di query di grandi dimensioni in una tabella di destinazione, utilizza il tempo di scadenza predefinito della tabella per rimuovere i dati quando non sono più necessari.
La conservazione di set di risultati di grandi dimensioni nello spazio di archiviazione BigQuery ha un costo. Se non hai bisogno di un accesso permanente ai risultati, utilizza la scadenza predefinita della tabella per eliminare automaticamente i dati.
Archivia i dati in Cloud Storage
Best practice: valuta la possibilità di archiviare i dati in Cloud Storage.
Puoi spostare i dati da BigQuery a Cloud Storage in base alle esigenze aziendali di archiviazione. Come best practice, considera i prezzi per l'archiviazione a lungo termine e il modello di fatturazione dell'archiviazione fisica prima di esportare i dati da BigQuery.
Risoluzione dei problemi relativi alle discrepanze nei costi di BigQuery e agli addebiti imprevisti
Segui questi passaggi per risolvere i problemi relativi a costi BigQuery imprevisti o discrepanze di costo:
Per capire da dove provengono gli addebiti per BigQuery quando esamini il report fatturazione Cloud, il primo consiglio è raggruppare gli addebiti per SKU in modo da osservare più facilmente l'utilizzo e gli addebiti per i servizi BigQuery corrispondenti.
Dopodiché, studia i prezzi degli SKU corrispondenti nella pagina di documentazione degli SKU o nella pagina
Pricing
nella UI di Cloud Billing per capire di quale funzionalità si tratta, ad esempio l'API BigQuery Storage Read, l'archiviazione a lungo termine, i prezzi on demand, la Standard Edition.Dopo aver identificato gli SKU corrispondenti, utilizza le visualizzazioni
INFORMATION_SCHEMA
per identificare le risorse specifiche associate a questi addebiti, ad esempio:- Se ti viene addebitato un costo per l'analisi on demand, esamina gli esempi di visualizzazione
INFORMATION_SCHEMA.JOBS
per determinare i job che generano costi e gli utenti che li hanno avviati. - Se ti vengono addebitati SKU di prenotazione o impegno, esamina le visualizzazioni
INFORMATION_SCHEMA.RESERVATIONS
eINFORMATION_SCHEMA.CAPACITY_COMMITMENTS
corrispondenti per identificare le prenotazioni e gli impegni che vengono addebitati. - Se gli addebiti provengono dagli SKU di archiviazione, consulta gli esempi di visualizzazione di
INFORMATION_SCHEMA.TABLE_STORAGE
per capire quali set di dati e tabelle generano più costi.
- Se ti viene addebitato un costo per l'analisi on demand, esamina gli esempi di visualizzazione
Considerazioni importanti per la risoluzione dei problemi:
Tieni presente che un periodo di tempo giornaliero nel report di fatturazione Cloud inizia a mezzanotte (fuso orario del Pacifico) (UTC-8) e rispetta i cambiamenti dell'ora legale negli Stati Uniti. Modifica i calcoli e le aggregazioni dei dati in modo che corrispondano agli stessi periodi di tempo.
Filtra per progetto se all'account di fatturazione sono collegati più progetti e vuoi esaminare gli addebiti provenienti da un progetto specifico.
Assicurati di selezionare la regione corretta quando esegui le indagini.
Addebiti imprevisti relativi a query, prenotazioni e impegni
La risoluzione dei problemi relativi agli addebiti imprevisti correlati all'esecuzione dei job dipende dall'origine di questi addebiti:
- Se noti un aumento dei costi dell'analisi on demand, questo può essere correlato a un aumento del numero di job avviati o alla variazione della quantità di dati che devono essere elaborati dai job. Esamina questo problema utilizzando la visualizzazione
INFORMATION_SCHEMA.JOBS
. - Se si verifica un aumento degli addebiti per gli slot di cui è stato eseguito il commit, esegui un'indagine eseguendo una query su
INFORMATION_SCHEMA.CAPACITY_COMMITMENT_CHANGES
per verificare se sono stati acquistati o modificati nuovi impegni. - Per gli aumenti degli addebiti derivanti dall'utilizzo delle prenotazioni, esamina le modifiche alle prenotazioni registrate in
INFORMATION_SCHEMA.RESERVATION_CHANGES
. Per abbinare l'utilizzo della prenotazione di scalabilità automatica ai dati di fatturazione, segui l'esempio di scalabilità automatica.
Ore slot fatturate maggiori delle ore slot calcolate nella vista INFORMATION_SCHEMA.JOBS
Quando utilizzi una prenotazione con scalabilità automatica, la fatturazione viene calcolata in base al numero di slot scalati, non al numero di slot utilizzati. BigQuery esegue lo scalabilità automatica in multipli di 50 slot, il che comporta la fatturazione del multiplo più vicino anche se viene utilizzato un importo inferiore a quello scalato automaticamente. Il gestore della scalabilità automatica ha un periodo minimo di 1 minuto prima di ridurre la scalabilità, il che si traduce in almeno 1 minuto di addebito anche se la query ha utilizzato gli slot per un periodo di tempo inferiore, ad esempio per soli 10 secondi al minuto. Il modo corretto per stimare i costi di una prenotazione con scalabilità automatica è documentato nella pagina Scalabilità automatica degli slot. Per ulteriori informazioni sull'utilizzo efficiente della scalabilità automatica, consulta le best practice per la scalabilità automatica.
Uno scenario simile si osserva per le prenotazioni senza scalabilità automatica: la fatturazione viene calcolata in base al numero di slot di cui è stato eseguito il provisioning, non in base al numero di slot utilizzati. Se vuoi stimare gli addebiti per una prenotazione senza scalabilità automatica, puoi eseguire una query direttamente sulla visualizzazione RESERVATIONS_TIMELINE
.
La fatturazione è inferiore al totale dei byte fatturati calcolato tramite INFORMATION_SCHEMA.JOBS per il progetto che esegue query on demand
Esistono diversi motivi per cui la fatturazione effettiva potrebbe essere inferiore ai byte elaborati calcolati:
- Ogni progetto dispone di 1 TB di query del livello gratuito al mese senza costi aggiuntivi.
- I job di tipo
SCRIPT
non sono stati esclusi dal calcolo, il che potrebbe comportare il conteggio doppio di alcuni valori. - Diversi tipi di risparmi applicati al tuo account di fatturazione Cloud, come sconti negoziati, crediti promozionali e altri. Controlla la sezione Risparmi del report di fatturazione Cloud. Qui è incluso anche il livello gratuito di 1 TB di query al mese.
La fatturazione è superiore ai byte elaborati calcolati tramite INFORMATION_SCHEMA.JOBS per il progetto che esegue query on demand
Se l'importo della fatturazione è superiore al valore calcolato eseguendo una query sulla visualizzazione INFORMATION_SCHEMA.JOBS
, potrebbero esserci determinate condizioni che hanno causato questo problema:
Query sulle tabelle con sicurezza a livello di riga
- Le query sulle tabelle con sicurezza a livello di riga non producono un valore per
total_bytes_billed
nella vistaINFORMATION_SCHEMA.JOBS
, pertanto la fatturazione calcolata utilizzandototal_bytes_billed
dalla vistaINFORMATION_SCHEMA.JOBS
sarà inferiore al valore fatturato. Per saperne di più sul motivo per cui queste informazioni non sono visibili, consulta la pagina Best practice per la sicurezza a livello di riga.
- Le query sulle tabelle con sicurezza a livello di riga non producono un valore per
Esecuzione di operazioni di ML in BigQuery
- I prezzi di BigQuery ML per le query on demand dipendono dal tipo di modello creato. Alcune di queste operazioni sui modelli vengono addebitate a una tariffa superiore rispetto alle query non ML. Pertanto, se sommi tutti i
total_billed_bytes
per il progetto e utilizzi la tariffa standard on demand per TB, non otterrai un'aggregazione dei prezzi corretta. Devi tenere conto della differenza di prezzo per TB.
- I prezzi di BigQuery ML per le query on demand dipendono dal tipo di modello creato. Alcune di queste operazioni sui modelli vengono addebitate a una tariffa superiore rispetto alle query non ML. Pertanto, se sommi tutti i
Importi dei prezzi non corretti
- Verifica che nei calcoli vengano utilizzati i valori di prezzo per TB corretti. Assicurati di scegliere la regione corretta, poiché i prezzi dipendono dalla località. Consulta la documentazione sui prezzi.
Il consiglio generale è di seguire il metodo consigliato per calcolare l'utilizzo dei job on demand per la fatturazione nella nostra documentazione pubblica.
Addebito per l'utilizzo dell'API BigQuery Reservations anche se l'API è disabilitata e non vengono utilizzati prenotazioni o impegni
Esamina lo SKU per comprendere meglio quali servizi vengono addebitati. Se la SKU fatturata è BigQuery Governance SKU
, si tratta di addebiti provenienti da Dataplex Universal Catalog.
Alcune funzionalità di Dataplex Universal Catalog attivano l'esecuzione del job tramite BigQuery. Questi addebiti vengono ora elaborati in base allo SKU dell'API BigQuery Reservations corrispondente. Per ulteriori dettagli, consulta la documentazione Prezzi del Catalogo universale Dataplex.
Il progetto è assegnato a una prenotazione, ma vengono comunque visualizzati i costi on demand di BigQuery Analysis
Leggi la sezione Risoluzione dei problemi relativi alle prenotazioni per identificare l'origine degli addebiti di Analysis
.
Addebiti imprevisti per gli slot con pagamento a consumo per BigQuery Standard Edition
Nel report del fatturazione Cloud, applica un filtro con l'etichetta goog-bq-feature-type
con il valore BQ_STUDIO_NOTEBOOK
. L'utilizzo che vedrai viene misurato come slot pay-as-you-go in BigQuery Standard Edition. Si tratta di addebiti per l'utilizzo del notebook BigQuery Studio. Scopri di più sui prezzi dei notebook BigQuery Studio.
Addebiti dell'API BigQuery Reservation visualizzati dopo la disattivazione dell'API Reservation
La disattivazione di BigQuery non interrompe gli addebiti per l'impegno. Per interrompere gli addebiti per l'impegno, devi eliminarlo. Imposta il piano di rinnovo su NONE
e l'impegno verrà eliminato automaticamente alla scadenza.
Addebiti imprevisti per lo spazio di archiviazione
Scenari che potrebbero comportare aumenti dei costi di archiviazione:
- Aumenti della quantità di dati archiviati nelle tabelle: utilizza la visualizzazione
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
per monitorare la variazione in byte delle tabelle - Modifica dei modelli di fatturazione dei set di dati
- Aumento della finestra di spostamento cronologico per i set di dati del modello di fatturazione fisica
- Modifica delle tabelle che contengono dati nello spazio di archiviazione a lungo termine, che le fa diventare spazio di archiviazione attivo
L'eliminazione di tabelle o set di dati ha comportato costi di archiviazione BigQuery più elevati
La funzionalità Time Travel di BigQuery conserva i dati eliminati per la durata della finestra Time Travel configurata e per altri 7 giorni per il ripristino di sicurezza. Durante questo periodo di conservazione, i dati eliminati nei set di dati del modello di fatturazione dell'archiviazione fisica contribuiscono al costo dell'archiviazione fisica attiva, anche se le tabelle non vengono più visualizzate in INFORMATION_SCHEMA.TABLE_STORAGE
o nella console. Se i dati della tabella si trovavano nello spazio di archiviazione a lungo termine, l'eliminazione comporta lo spostamento di questi dati nello spazio di archiviazione fisico attivo. Di conseguenza, il costo corrispondente aumenta, perché i byte fisici attivi vengono addebitati circa il doppio rispetto ai byte fisici a lungo termine, come indicato nella pagina dei prezzi dello spazio di archiviazione BigQuery. L'approccio consigliato per ridurre al minimo i costi causati dall'eliminazione dei dati per i set di dati del modello di fatturazione dell'archiviazione fisica è ridurre la finestra di Time Travel a 2 giorni.
Costi di archiviazione ridotti senza modifiche ai dati
In BigQuery gli utenti pagano l'archiviazione attiva e a lungo termine. Gli addebiti per l'archiviazione attiva includono qualsiasi tabella o partizione di tabella che non è stata modificata per 90 giorni consecutivi, mentre gli addebiti per l'archiviazione a lungo termine includono tabelle e partizioni che non sono state modificate per 90 giorni consecutivi. La riduzione complessiva dei costi di archiviazione può essere osservata quando i dati vengono trasferiti all'archiviazione a lungo termine, che è circa il 50% più economica dell'archiviazione attiva. Per maggiori dettagli, consulta i prezzi di archiviazione.
I calcoli dello spazio di archiviazione di INFORMATION_SCHEMA non corrispondono alla fatturazione
- Utilizza la visualizzazione
INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
anzichéINFORMATION_SCHEMA.TABLE_STORAGE
:TABLE_STORAGE_USAGE_TIMELINE
fornisce dati più precisi e granulari per calcolare correttamente i costi di archiviazione - Le query eseguite sulle visualizzazioni
INFORMATION_SCHEMA
non includono tasse, aggiustamenti ed errori di arrotondamento. Tieni conto di questi fattori quando confronti i dati. Scopri di più sui report nella fatturazione Cloud in questa pagina. - I dati presentati nelle visualizzazioni
INFORMATION_SCHEMA
sono in formato UTC, mentre i dati del report sulla fatturazione sono riportati nel fuso orario del Pacifico (UTC-8) di Stati Uniti e Canada.
Passaggi successivi
- Scopri di più sui prezzi di BigQuery.
- Scopri come ottimizzare le query.
- Scopri come ottimizzare lo spazio di archiviazione.
Per informazioni su fatturazione, avvisi e visualizzazione dei dati, consulta i seguenti argomenti: