Prezzi

BigQuery offre opzioni di prezzo scalabili e flessibili, adattabili a progetti e budget diversi. BigQuery addebita un costo per l'archiviazione dei dati, gli inserimenti di flussi di dati e l'esecuzione di query sui dati, mentre il caricamento e l'esportazione dei dati sono gratuiti.

I prezzi di BigQuery si basano su un costo fisso per l'archiviazione e una tariffa di utilizzo per le query. L'utilizzo della capacità di archiviazione del progetto e l'utilizzo delle query vengono calcolati in gigabyte (GB), dove 1 GB equivale a 230 byte. Questa unità di misura è detta anche gibibyte (GiB). Analogamente, 1 TB è pari a 240 byte (1024 GB). Per ulteriori informazioni sui prezzi dello spazio di archiviazione e delle query, vedi SKU di Google Cloud Platform.

Ogni progetto da te creato è associato a un account di fatturazione. I costi sostenuti in base all'esecuzione dei job nel progetto vengono fatturati all'account di fatturazione associato. Questo criterio è applicabile anche se il progetto è condiviso con persone esterne all'organizzazione. Anche i costi di archiviazione di BigQuery vengono fatturati all'account di fatturazione associato.

BigQuery offre meccanismi di controllo dei costi che ti consentono di limitare i costi giornalieri a un importo stabilito da te. Per ulteriori informazioni, consulta Creazione di controlli dei costi personalizzati.

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Riepilogo dei prezzi

Nella tabella seguente sono riepilogati i prezzi di BigQuery. A queste operazioni si applicano Quote e limiti di BigQuery.

Località con più aree geografiche negli Stati Uniti e nell'UE

Operazione Prezzi Dettagli
Archiviazione $ 0,02 per GB/mese I primi 10 GB al mese sono gratuiti. Per i dettagli, vedi i Prezzi dell'archiviazione.
Archiviazione a lungo termine $ 0,01 per GB/mese I primi 10 GB al mese sono gratuiti. Per i dettagli, vedi i Prezzi dell'archiviazione.
Inserimenti di flussi di dati $ 0,01 per 200 MB Per i dettagli, vedi i Prezzi dell'archiviazione.
Query (analisi) $ 5 per ogni TB Il primo TB al mese è gratuito. Per i dettagli, vedi Prezzi su richiesta. Per clienti con volumi elevati è disponibile un Sistema con tariffe a costo fisso.
Caricamento di dati Nessun costo Vedi Caricamento di dati in BigQuery.
Copia di dati Nessun costo Vedi Copia di una tabella.
Esportazione di dati Nessun costo Vedi Esportazione di dati da BigQuery.
Operazioni con metadati Nessun costo Chiamate list, get, patch, update e delete.
Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Area geografica di Tokyo

Operazione Prezzi Dettagli
Archiviazione $ 0,023 per GB/mese I primi 10 GB al mese sono gratuiti. Per i dettagli, vedi i Prezzi dell'archiviazione.
Archiviazione a lungo termine $ 0,016 per GB/mese I primi 10 GB al mese sono gratuiti. Per i dettagli, vedi i Prezzi dell'archiviazione.
Inserimenti di flussi di dati $ 0,012 per 200 MB Per i dettagli, vedi i Prezzi dell'archiviazione.
Query (analisi) $ 8,55 per TB Il primo TB al mese è gratuito. Per i dettagli, vedi Prezzi su richiesta. Per clienti con volumi elevati è disponibile un Sistema con tariffe a costo fisso.
Caricamento di dati Nessun costo Vedi Caricamento di dati in BigQuery.
Copia di dati Nessun costo Vedi Copia di una tabella.
Esportazione di dati Nessun costo Vedi Esportazione di dati da BigQuery.
Operazioni con metadati Nessun costo Chiamate list, get, patch, update e delete.
Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Operazioni gratuite

La tabella seguente illustra le operazioni gratuite di BigQuery. A queste operazioni si applicano Quote e limiti di BigQuery.

Operazione Dettagli
Caricamento di dati Caricamento dei dati in BigQuery
Copia di dati Copia di una tabella esistente
Esportazione di dati Esportazione di dati da BigQuery
Operazioni con metadati Chiamate list, get, patch, update e delete

Prezzi per il caricamento dei dati

Al momento, puoi caricare i dati da un'origine dati leggibile (come il tuo computer locale) o da Cloud Storage. Quando carichi i dati in BigQuery da Cloud Storage, non è previsto alcun costo per l'operazione di caricamento, mentre l'archiviazione dei dati in Cloud Storage comporta un addebito di costi. Per ulteriori informazioni, consulta Archiviazione dei dati nella pagina relativa ai prezzi di Cloud Storage. Una volta caricati in BigQuery, i dati sono soggetti ai prezzi di archiviazione di BigQuery.

Addebiti per dati in uscita dalla rete

Quando crei un set di dati in BigQuery, devi scegliere una località per i dati. Se scegli US, puoi caricare i dati in tabelle nel set di dati di un bucket Cloud Storage in qualsiasi altra area geografica. Quando carichi i dati da un'altra area geografica in un set di dati degli Stati Uniti, al momento non è previsto alcun addebito per i dati in uscita da Internet.

Se scegli una località diversa da US, devi eseguire una delle seguenti operazioni:

  • Caricare i dati da un bucket Cloud Storage in quell'area geografica (il bucket può essere a più aree geografiche o ad area geografica singola nella stessa area geografica del set di dati)
  • Copiare i dati in un bucket in quell'area geografica

Quando copi i dati da un'area geografica Cloud Storage a un'altra, si applica il prezzo della rete di Cloud Storage.

Prezzi dell'archiviazione

Il caricamento di dati in BigQuery è gratuito, ad eccezione di un piccolo addebito per i flussi di dati. Il prezzo di archiviazione si basa sulla quantità di dati archiviati nelle tabelle, che viene calcolata in base al tipo di dati archiviati. Per una spiegazione dettagliata di come vengono calcolate le dimensioni dei dati, vedi Calcolo delle dimensioni dei dati.

Località con più aree geografiche negli Stati Uniti e nell'UE

Oltre i primi 10 GB di archiviazione, vengono effettuati i seguenti addebiti:

Azione di archiviazione Costo
Archiviazione $ 0,02 per GB/mese.
Inserimenti di flussi di dati $ 0,01 per 200 MB inseriti correttamente, con singole righe calcolate utilizzando una dimensione minima di 1 KB.

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Il prezzo di archiviazione viene ripartito proporzionalmente per MB al secondo. Ad esempio, se archivi:

  • 100 MB per metà mese, paghi $ 0,001 (un decimo di centesimo)
  • 500 GB per metà mese, paghi $ 5
  • 1 TB per un mese intero, paghi $ 20

Area geografica di Tokyo

Oltre i primi 10 GB di archiviazione, vengono effettuati i seguenti addebiti:

Azione di archiviazione Costo
Archiviazione $ 0,023 per GB/mese.
Inserimenti di flussi di dati $ 0,012 per 200 MB inseriti correttamente, con singole righe calcolate utilizzando una dimensione minima di 1 KB.

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Il prezzo di archiviazione viene ripartito proporzionalmente per MB al secondo. Ad esempio, se archivi:

  • 100 MB per metà mese, paghi $ 0,001 (un decimo di centesimo)
  • 500 GB per metà mese, paghi $ 5
  • 1 TB per un mese intero, paghi $ 20

Prezzi per il livello gratuito

I primi 10 GB di archiviazione sono gratuiti ogni mese (per ogni account di fatturazione).

Prezzi dell'archiviazione a lungo termine

Se una tabella non viene modificata per 90 giorni consecutivi, il relativo prezzo di archiviazione scende automaticamente di circa il 50%.

L'archiviazione a lungo termine di una tabella non comporta alcuna penalizzazione in termini di prestazioni, durabilità, disponibilità o qualsiasi altra funzionalità.

Se la tabella viene modificata, viene ripristinato il prezzo di archiviazione standard e il timer dei 90 giorni riprende il conteggio da zero.

Qualsiasi modifica ai dati in una tabella reimposta il timer (caricamento, copia, query sulla tabella di destinazione):

Azione Note
Aggiunta Qualsiasi job che presenta una tabella di destinazione e utilizza l'istruzione di scrittura WRITE_APPEND.
Sovrascrittura Qualsiasi job che presenta una tabella di destinazione e utilizza l'istruzione di scrittura WRITE_TRUNCATE.
Inserimento di flussi Immissione di dati mediante la chiamata API Tabledata.insertAll()

Tutte le altre azioni non reimpostano il timer, tra cui:

  • Query da
  • Creazione visualizzazione
  • Esportazione
  • Copia da
  • Applicazione patch

Ogni partizione di una tabella partizionata è considerata separatamente per la determinazione del prezzo di archiviazione a lungo termine. Se una partizione non è stata modificata negli ultimi 90 giorni, i dati in tale partizione sono considerati elementi di archiviazione a lungo termine e viene addebitato il prezzo scontato.

Per le tabelle che raggiungono la soglia dei 90 giorni durante un ciclo di fatturazione, il prezzo viene ripartito di conseguenza.

Il prezzo di archiviazione a lungo termine si applica solo all'archiviazione di BigQuery, non alle origini dati esterne.

Prezzi delle query

I prezzi delle query si riferiscono al costo di esecuzione dei comandi SQL e delle funzioni definite dall'utente. BigQuery addebita i costi per le query utilizzando una sola metrica: il numero di byte elaborati. Viene addebitato il costo del numero di byte elaborati se i dati sono archiviati in BigQuery o in un'origine dati esterna, come Google Cloud Storage, Google Drive o Google Cloud Bigtable.

Prezzi per il livello gratuito

Il primo TB di dati elaborati al mese è gratuito (per account di fatturazione).

Prezzi su richiesta

Località con più aree geografiche negli Stati Uniti e nell'UE

Oltre il primo TB di dati elaborati in un mese, vengono effettuati i seguenti addebiti:

Risorsa Prezzi
Query $ 5 per ogni TB

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

  • Non ci sono addebiti per le query che restituiscono un errore o per le query i cui risultati provengono dalla cache.
  • Gli addebiti vengono arrotondati al MB più prossimo, con un minimo di 10 MB di dati elaborati per ogni tabella a cui la query fa riferimento e con un minimo di 10 MB di dati elaborati per query.
  • L'annullamento di una query in esecuzione può comportare un addebito fino al costo totale della query, laddove sia stato possibile eseguirla fino al completamento.
  • BigQuery utilizza una struttura dei dati in colonne. Gli addebiti verranno effettuati in base ai dati totali elaborati nelle colonne selezionate e il totale dei dati per ogni colonna è calcolato in base ai tipi di dati nella colonna. Per ulteriori informazioni su come vengono calcolate le dimensioni dei dati, vedi Calcolo delle dimensioni dei dati.
  • Se preferisci un costo mensile stabile invece di pagare il prezzo su richiesta, vedi Sistema con tariffe a costo fisso.

Area geografica di Tokyo

Oltre il primo TB di dati elaborati in un mese, vengono effettuati i seguenti addebiti:

Risorsa Prezzi
Query $ 8,55 per TB

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

  • Non ci sono addebiti per le query che restituiscono un errore o per le query i cui risultati provengono dalla cache.
  • Gli addebiti vengono arrotondati al MB più prossimo, con un minimo di 10 MB di dati elaborati per ogni tabella a cui la query fa riferimento e con un minimo di 10 MB di dati elaborati per query.
  • L'annullamento di una query in esecuzione può comportare un addebito fino al costo totale della query, laddove sia stato possibile eseguirla fino al completamento.
  • BigQuery utilizza una struttura dei dati in colonne. Gli addebiti verranno effettuati in base ai dati totali elaborati nelle colonne selezionate e il totale dei dati per ogni colonna è calcolato in base ai tipi di dati nella colonna. Per ulteriori informazioni su come vengono calcolate le dimensioni dei dati, vedi Calcolo delle dimensioni dei dati.
  • Se preferisci un costo mensile stabile invece di pagare il prezzo su richiesta, vedi Sistema con tariffe a costo fisso.

Sistema con tariffe a costo fisso

BigQuery offre un sistema di prezzi a costo fisso per clienti con volumi elevati o clienti aziendali che preferiscono un costo mensile stabile per le query anziché pagare il prezzo su richiesta per TB di dati elaborati. Se scegli un sistema di questo tipo, il costo di tutti i byte elaborati è incluso nella tariffa mensile a costo fisso.

BigQuery gestisce automaticamente la quota di slot in base alla cronologia cliente, l'utilizzo e la spesa. Per i clienti con almeno $ 40.000 di spesa mensile per le analisi, BigQuery offre diversi metodi per aumentare il numero degli slot allocati.

Sistema con tariffe a costo fisso:

  • Si applica solo ai costi delle query, non all'archiviazione. Per i costi dell'archiviazione, vedi Prezzi dell'archiviazione.
  • Si applica a tutti i progetti collegati all'account di fatturazione in cui è applicato il sistema di prezzi a costo fisso.
  • Fornisce ulteriori slot BigQuery. Vedi la tabella riportata qui di seguito per dettagli.
  • Fornisce ulteriore contemporaneità per le query interattive.
Costi mensili Slot BigQuery
$ 40.000 2000
Aumento in incrementi di $ 10.000 500 slot in più per ogni incremento

Se la valuta utilizzata per il pagamento è diversa da USD, si applicano i prezzi elencati nella tua valuta negli SKU di Cloud Platform.

Contatta il rappresentante di vendita se sei interessato al sistema con tariffe a costo fisso.

Prezzi del linguaggio di manipolazione dei dati

BigQuery addebita i costi per le query DML in base al numero di byte elaborati dalla query.

Prezzo DML per le tabelle non partizionate

Per le tabelle non partizionate, il numero di byte elaborati viene calcolato come segue:

Istruzione DML Byte elaborati
INSERT La somma di byte elaborati per tutte le colonne di riferimento delle tabelle analizzate dalla query.
UPDATE La somma di byte in tutte le colonne di riferimento delle tabelle analizzate dalla query
+ la somma di byte per tutte le colonne della tabella aggiornata nel momento in cui viene avviata l'istruzione UPDATE.
DELETE La somma di byte in tutte le colonne di riferimento delle tabelle analizzate dalla query
+ la somma di byte per tutte le colonne della tabella modificata nel momento in cui viene avviata l'istruzione DELETE.
MERGE Se ci sono solo clausole INSERT nell'istruzione MERGE, ti viene addebitata la somma di byte elaborata per tutte le colonne di riferimento nelle tabelle analizzate dalla query.
Se è presente una clausola UPDATE o DELETE nell'istruzione MERGE, ti viene addebitata la somma di byte elaborati per tutte le colonne di riferimento nelle tabelle di origine analizzate dalla query
+ la somma di byte per tutte le colonne nella tabella di destinazione (nel momento in cui viene avviata l'istruzione MERGE).

Esempi di prezzi DML per tabelle non partizionate

I seguenti esempi mostrano come BigQuery calcoli i byte letti per le istruzioni DML che modificano le tabelle non partizionate.

Esempio 1: UPDATE di una tabella non partizionata

table1 ha due colonne: col1 di tipo INTEGER e col2 di tipo STRING.

UPDATE table1 SET col1 = 1 WHERE col1 = 2;

Byte elaborati in questo esempio =

  • somma del numero di byte in col1 +
  • somma del numero di byte in col2
Esempio 2: UPDATE di una tabella non partizionata

table1 ha due colonne: col1 di tipo INTEGER e col2 di tipo STRING. table2 ha una colonna: field1 di tipo INTEGER.

UPDATE table1 SET col1 = 1 WHERE col1 in (SELECT field1 from table2)

Byte elaborati in questo esempio =

  • somma del numero di byte in table1.col1 prima di UPDATE +
  • somma del numero di byte in table1.col2 prima di UPDATE +
  • somma del numero di byte in table2.field1

Prezzi DML per le tabelle partizionate

Per le tabelle partizionate, il numero di byte elaborati viene calcolato come segue:

Istruzione DML Byte elaborati
INSERT La somma di byte elaborati per tutte le colonne cui viene fatto riferimento in tutte le partizioni analizzate dalla query.
UPDATE La somma di byte elaborati per tutte le colonne cui viene fatto riferimento in tutte le partizioni delle tabelle analizzate dalla query.
+ la somma di byte per tutte le colonne nelle partizioni analizzate o aggiornate per la tabella in fase di aggiornamento (nel momento in cui viene avviata l'istruzione UPDATE).
DELETE La somma di byte elaborati per tutte le colonne cui viene fatto riferimento in tutte le partizioni delle tabelle analizzate dalla query.
+ la somma di byte per tutte le colonne nelle partizioni modificate o analizzate della tabella in fase di modifica (nel momento in cui viene avviata l'istruzione DELETE).
MERGE Se ci sono solo clausole INSERT nell'istruzione MERGE, ti viene addebitata la somma di byte elaborata per tutte le colonne cui viene fatto riferimento nelle partizioni analizzate dalla query.
Se c'è una clausola UPDATE o DELETE nell'istruzione MERGE, ti viene addebitata la somma di byte elaborata per tutte le colonne cui viene fatto riferimento nelle partizioni delle tabelle di origine analizzate dalla query
+ la somma di byte per tutte le colonne nelle partizioni aggiornate, eliminate o analizzate per la tabella di destinazione (nel momento in cui viene avviata l'istruzione MERGE).

Esempi di prezzi DML per tabelle partizionate

I seguenti esempi mostrano come BigQuery calcoli i byte letti per le istruzioni DML che modificano i tempi di immissione e le tabelle partizionate. Per visualizzare le rappresentazioni dello schema JSON per le tabelle utilizzate negli esempi, consulta Tabelle utilizzate negli esempi nella pagina Aggiornamento dei dati delle tabelle partizionate con le istruzioni DML.

Esempio 1: INSERT su tabelle partizionate in fase di immissione

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mytable ha due colonne: field1 di tipo INTEGER e field2 di tipo STRING.

INSERT INTO mytable (_PARTITIONTIME, field1) AS SELECT TIMESTAMP(DATE(ts)), id from mytable2

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.ts +
  • somma del numero di byte in mytable2.id

Le dimensioni della tabella in cui vengono inserite le righe - mytable - non influiscono sul costo della query.

Esempio 2: INSERT su tabelle partizionate

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mycolumntable ha quattro colonne: field1 di tipo INTEGER, field2 di tipo STRING, field3 di tipo BOOLEAN e ts di tipo TIMESTAMP.

INSERT INTO mycolumntable (ts, field1) AS SELECT ts, id from mytable2

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.ts +
  • somma del numero di byte in mytable2.id

Le dimensioni della tabella in cui vengono inserite le righe - mycolumntable - non influiscono sul costo della query.

Esempio 3: UPDATE su tabelle partizionate in fase di immissione

Istruzione DML 1: aggiornamento di una singola partizione

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mytable ha due colonne: field1 di tipo INTEGER e field2 di tipo STRING.

UPDATE project.mydataset.mytable T SET T.field1 = T.field1 + 100 WHERE T._PARTITIONTIME = TIMESTAMP(“2017-05-01”) AND EXISTS (SELECT S.id from project.mydataset.mytable2 S WHERE S.id = T.field1)

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.id +
  • somma del numero di byte in mytable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mytable.field2 nella partizione "2017-05-01"

Istruzione DML 2: aggiornamento di una partizione in base a un'altra partizione nella tabella

UPDATE project.mydataset.mytable T SET T._PARTITIONTIME = TIMESTAMP(“2017-06-01”), T.field1 = T.field1 + 100 WHERE T._PARTITIONTIME = TIMESTAMP(“2017-05-01”) AND EXISTS (SELECT 1 from project.mydataset.mytable S WHERE S.field1 = T.field1 AND S._PARTITIONTIME = TIMESTAMP("2017-06-01") )

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mytable.field2 nella partizione "2017-05-01" +
  • somma del numero di byte in mytable.field1 nella partizione "2017-06-01" +
  • somma del numero di byte in mytable.field2 nella partizione "2017-06-01"

In questo caso, il costo dell'istruzione UPDATE è dato dalla somma delle dimensioni di tutti i campi nelle partizioni corrispondenti a "2017-05-01" e "2017-06-01".

Esempio 4: UPDATE su tabelle partizionate

Istruzione DML 1: aggiornamento di una singola partizione

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mycolumntable ha quattro colonne: field1 di tipo INTEGER, field2 di tipo STRING, field3 di tipo BOOLEAN e ts di tipo TIMESTAMP.

UPDATE project.mydataset.mycolumntable T SET T.field1 = T.field1 + 100 WHERE DATE(T.ts) = “2017-05-01” AND EXISTS (SELECT S.id from project.mydataset.mytable2 S WHERE S.id = T.field1)

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.id +
  • somma del numero di byte in mycolumntable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field2 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field3 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.ts nella partizione "2017-05-01"

Istruzione DML 2: aggiornamento di una partizione in base a un'altra partizione nella tabella

UPDATE project.mydataset.mycolumntable T SET T.ts = TIMESTAMP(“2017-06-01”), T.field1 = T.field1 + 100 WHERE DATE(T.ts) = “2017-05-01” AND EXISTS (SELECT 1 from project.mydataset.mycolumntable S WHERE S.field1 = T.field1 AND DATE(S.ts) = "2017-06-01")

Byte elaborati in questo esempio =

  • somma del numero di byte in mycolumntable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field2 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field3 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.ts nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field2 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field3 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.ts nella partizione "2017-05-01"

In questo caso, il costo dell'istruzione UPDATE è dato dalla somma delle dimensioni di tutti i campi nelle partizioni corrispondenti a "2017-05-01" e "2017-06-01".

Esempio 5: DELETE su tabelle partizionate in fase di immissione

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mytable ha due colonne: field1 di tipo INTEGER e field2 di tipo STRING.

DELETE project.mydataset.mytable T WHERE T._PARTITIONTIME = TIMESTAMP(“2017-05-01”) AND EXISTS (SELECT S.id from project.mydataset.mytable2 S WHERE S.id = T.field1)

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.id +
  • somma del numero di byte in mytable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mytable.field2 nella partizione "2017-05-01"
Esempio 6: DELETE su tabelle partizionate

mytable2 ha due colonne: id di tipo INTEGER e ts di tipo TIMESTAMP. mycolumntable ha quattro colonne: field1 di tipo INTEGER, field2 di tipo STRING, field3 di tipo BOOLEAN e ts di tipo TIMESTAMP.

DELETE project.mydataset.mycolumntable T WHERE DATE(T.ts) =“2017-05-01” AND EXISTS (SELECT S.id from project.mydataset.mytable2 S WHERE S.id = T.field1)

Byte elaborati in questo esempio =

  • somma del numero di byte in mytable2.id +
  • somma del numero di byte in mycolumntable.field1 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field2 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.field3 nella partizione "2017-05-01" +
  • somma del numero di byte in mycolumntable.ts nella partizione "2017-05-01"

Calcolo delle dimensioni dei dati

Quando carichi i dati in BigQuery o esegui delle query sui dati, l'addebito avviene in base alle dimensioni dei dati. Calcoliamo le dimensioni dei tuoi dati in base alle dimensioni di ogni tipo di dato.

Tipo di dati Dimensioni
STRING 2 byte + le dimensioni della stringa codificata UTF-8
INTEGER 8 byte
FLOAT 8 byte
BOOLEAN 1 byte
TIMESTAMP 8 byte
RECORD 0 byte + le dimensioni dei campi contenuti

I valori null per qualsiasi tipo di dati sono calcolati come 0 byte. I campi ripetuti sono calcolati per voce. Ad esempio, un valore INTEGER ripetuto con 4 voci viene conteggiato come 32 byte.

Esempi di costi delle query per i prezzi su richiesta

Quando esegui una query, l'addebito avviene in base ai dati totali elaborati nelle colonne selezionate, anche se imposti un valore LIMIT esplicito per i risultati. Il numero totale di byte per colonna viene calcolato in base ai tipi di dati nella colonna. Per ulteriori informazioni su come vengono calcolate le dimensioni dei dati, vedi Calcolo delle dimensioni dei dati.

La tabella seguente mostra alcuni esempi di query e una descrizione di quanti byte vengono elaborati per ogni query.

Esempio di query Byte elaborati

SELECT
  corpus,
  word
FROM
  publicdata:samples.shakespeare
LIMIT 1;
Dimensioni totali di corpus + dimensioni delle colonne word

SELECT
  corpus
FROM
  (SELECT
     *
   FROM
     publicdata:samples.shakespeare);
Dimensioni totali della colonna corpus

SELECT
  COUNT(*)
FROM
  publicdata:samples.shakespeare;
Nessun byte elaborato

SELECT
  COUNT(corpus)
FROM
  publicdata:samples.shakespeare;
Dimensioni totali della colonna corpus

SELECT
  COUNT(*)
FROM
  publicdata:samples.shakespeare
WHERE
  corpus = 'hamlet';
Dimensioni totali della colonna corpus

SELECT
  shakes.corpus,
  wiki.language
FROM
  publicdata:samples.shakespeare AS shakes
  JOIN EACH
  publicdata:samples.wikipedia AS wiki
  ON shakes.corpus = wiki.title;
Dimensioni totali delle colonne shakes.corpus, wiki.language e wiki.title

Prezzi di BigQuery Data Transfer Service

BigQuery Data Transfer Service effettua addebiti mensili su base proporzionale. Gli addebiti avvengono nel seguente modo:

Applicazione origine Addebito mensile (proporzionale)
Google AdWords

$ 2,50 per ID cliente univoco. ExternalCustomerID nella tabella Customer, inclusi ID cliente con zero impressioni.

DoubleClick Campaign Manager

$ 2,50 per ID inserzionista univoco. Gli ID inserzionista nella tabella impression.

DoubleClick for Publishers

$ 100 per ID di rete

Canale di YouTube e Proprietario dei contenuti di YouTube

Gratuito fino al 1° luglio 2018. Il prezzo per YouTube verrà annunciato in una data successiva.

Quando i dati vengono trasferiti su BigQuery, viene applicata la tariffa standard per archiviazione e query di BigQuery. Per ulteriori dettagli sui prezzi, contatta il team di vendita.

Calcolo degli ID univoci

Ogni trasferimento creato genera una o più esecuzioni al giorno. Ogni esecuzione conserva un record di ogni ID univoco rilevato e la data di completamento dell'esecuzione del trasferimento. Gli ID vengono conteggiati soltanto il giorno del completamento del trasferimento. Ad esempio, se un trasferimento inizia il 14 luglio ma viene completato il 15 luglio, gli ID univoci vengono conteggiati il 15 luglio.

Se un ID univoco viene rilevato in più di un trasferimento in un determinato giorno, viene conteggiato una sola volta. Gli ID univoci vengono conteggiati separatamente se rilevati in trasferimenti diversi. Se un ID univoco viene rilevato in due trasferimenti diversi, viene conteggiato due volte.

Esempi

Esempio 1: hai 1 trasferimento con 3 esecuzioni che vengono completate lo stesso giorno.

  • La prima esecuzione registra i seguenti ID univoci: A, B e C
  • La seconda esecuzione registra: A
  • La terza esecuzione registra: C e D

Poiché tutte le esecuzioni terminano nello stesso giorno, l'addebito avviene in base a 4 ID univoci, A, B, C e D. Poiché gli ID A e C sono stati registrati in due diverse esecuzioni completate nello stesso giorno, vengono conteggiati solo una volta. Se le 3 esecuzioni di trasferimento vengono completate ogni giorno per un mese, l'addebito mensile si basa su 4 ID univoci. Se le esecuzioni di trasferimento vengono completate per un numero di volte inferiore al numero di giorni del mese in cui vengono effettuate, gli addebiti sono ripartiti in modo proporzionale.

Esempio 2: hai più trasferimenti con esecuzioni che vengono completate lo stesso giorno.

  • Il trasferimento 1 viene eseguito e registra i seguenti ID univoci: A, B e C
  • Il trasferimento 2 viene eseguito e registra: A
  • Il trasferimento 3 viene eseguito e registra: C e D

Poiché gli ID univoci vengono conteggiati nelle esecuzioni relative a trasferimenti diversi, l'addebito avviene in base a 6 ID univoci: A, B e C nell'esecuzione del trasferimento 1, A nell'esecuzione del trasferimento 2 e C e D nell'esecuzione del trasferimento 3. Se le esecuzioni del trasferimento vengono completate per un numero di volte inferiore al numero di giorni del mese in cui vengono effettuate, gli addebiti sono ripartiti in modo proporzionale.

Calcolo di addebiti backfill

Se pianifichi un backfill, viene pianificata un'esecuzione del trasferimento per ogni giorno. L'addebito avviene in base al metodo descritto in Calcolo degli ID univoci.

Interruzione degli addebiti BigQuery Data Transfer Service

Per non incorrere più in addebiti, disattiva o elimina il trasferimento.

Hai trovato utile questa pagina? Facci sapere cosa ne pensi:

Invia feedback per...

Hai bisogno di assistenza? Visita la nostra pagina di assistenza.