Introduzione alla gestione dei carichi di lavoro

La gestione dei carichi di lavoro di BigQuery consente di controllare le risorse e le funzionalità disponibili per l'analisi dei dati nella tua organizzazione e la definizione dei modelli di fatturazione. La capacità di calcolo di BigQuery, misurata in slot, può essere acquistata in prenotazioni e impegni assegnati a tutta l'organizzazione per l'esecuzione dei job.

BigQuery offre due modelli di gestione dei carichi di lavoro per l'analisi dei dati, noti anche come compute. Con la fatturazione on demand, paghi per i byte elaborati quando esegui query sui tuoi dati. Con la fatturazione basata sulla capacità, riservi la capacità di elaborazione per i carichi di lavoro con la possibilità di aumentare e diminuire automaticamente la capacità.

Puoi passare dal modello di fatturazione on demand a quello basato sulla capacità e viceversa in qualsiasi momento oppure puoi scegliere di combinare i due modelli. Il modello basato sulla capacità ti offre un controllo esplicito su slot e capacità di elaborazione, al contrario del modello on demand.

Scommesse sulle prenotazioni.

I seguenti modelli definiscono le modalità di gestione dei carichi di lavoro e di fatturazione:

  • Prezzi on demand: per impostazione predefinita, ti vengono addebitati i dati analizzati dalle query. Hai una capacità di elaborazione delle query fissa per progetto e paghi solo per il numero di byte elaborati quando li utilizzi.

  • Prezzi basati sulla capacità: acquisti capacità di elaborazione delle query dedicata o con scalabilità automatica a una tariffa scontata. La capacità viene misurata in slot allocati a carichi di lavoro o a parti dell'organizzazione. La fatturazione basata sulla capacità offre la possibilità di impegni, che ti consentono di impegnarti a mantenere un livello coerente di capacità di elaborazione per un periodo di 1 o 3 anni a un prezzo scontato. Non viene addebitato alcun costo per i byte elaborati quando si utilizza il modello basato sulla capacità. I vantaggi dei prezzi basati sulla capacità includono:

    • Costo. Come best practice, puoi impostare l'utilizzo minimo mensile dell'analisi come impegno basato sulla capacità di BigQuery per ridurre i costi.
    • Prevedibilità. Gli slot basati sulla capacità consentono tariffe mensili più coerenti.
    • Acquisto centralizzato: puoi acquistare e allocare slot per l'intera organizzazione anziché per ogni progetto che utilizza BigQuery.
    • Flessibilità. Puoi scegliere la capacità da allocare a un carico di lavoro o consentire a BigQuery di scalare automaticamente la capacità in base ai requisiti dei carichi di lavoro. Ti vengono addebitati i costi in incrementi al secondo con un periodo di utilizzo minimo di un minuto.

La creazione di un impegno di capacità è facoltativa quando si utilizzano prenotazioni che utilizzano le versioni di BigQuery, ma può ridurre i costi dei carichi di lavoro in stato stabile.

Puoi combinare i modelli di fatturazione. Ad esempio, puoi eseguire alcuni carichi di lavoro con prezzi on demand e altri con prezzi basati sulla capacità. Poiché il modello di fatturazione viene specificato per ogni progetto, è necessario utilizzare più progetti per i job di query. Per comprendere meglio i prezzi di BigQuery per le prenotazioni, consulta quanto segue:

Slot

La capacità di elaborazione in BigQuery viene misurata in slot. Gli slot rappresentano le CPU virtuali utilizzate per eseguire query sui dati. In generale, l'accesso a più slot consente di eseguire più query in parallelo, mentre le query complesse possono essere eseguite più velocemente. Il modello di prezzi basato sulla capacità consente di prenotare un volume di slot. Le tue query vengono eseguite all'interno di questa capacità e paghi per la capacità continuamente ogni secondo di cui viene eseguito il deployment. Ad esempio, se acquisti 2000 slot BigQuery, le query aggregate possono utilizzare solo 2000 CPU virtuali in un dato momento. Hai questa capacità finché non la elimini e paghi per 2000 slot finché non li elimini.

Per scoprire di più sugli slot e su come vengono utilizzati, consulta Informazioni sugli slot.

Quote per gli slot

Le quote per slot offrono una protezione per BigQuery. Il tipo di quota dipende dal modello di prezzi degli slot:

  • Modello di prezzi on demand: la quota di slot per progetto con funzionalità di burst temporaneo è sufficiente per la maggior parte degli utenti. A seconda dei carichi di lavoro, l'accesso a più slot può migliorare le prestazioni delle query. Per verificare il numero di slot utilizzati dal tuo account, consulta Monitoraggio di BigQuery.

  • Modello di prezzi basato sulla capacità: le quote e i limiti per le prenotazioni definiscono il numero massimo di slot che puoi acquistare in una località. Ti vengono addebitati solo i costi relativi alle tue prenotazioni e ai tuoi impegni, non per le quote.

Per informazioni sull'aumento della quota di slot, consulta Richiedere un aumento della quota.

Prenotazioni

Gli slot vengono acquistati, assegnati alle risorse e allocati ai job in pool denominati prenotazioni. Le prenotazioni ti consentono di assegnare slot nel modo più appropriato per la tua organizzazione. Ad esempio, potresti creare una prenotazione denominata prod per i carichi di lavoro di produzione e una prenotazione separata denominata test per i test, in modo che i job di test non competano per le risorse dei carichi di lavoro di produzione. In alternativa, puoi creare prenotazioni per diversi reparti dell'organizzazione.

Se acquisti impegni di slot prima di creare una prenotazione, per praticità viene creata automaticamente una prenotazione denominata default. La prenotazione default non ha un comportamento speciale. Se necessario, puoi creare ulteriori prenotazioni o utilizzare la prenotazione predefinita.

Per informazioni sui prezzi, vedi Prezzi basati sulla capacità e Prezzi on demand.

Limitazioni delle prenotazioni

  • Le prenotazioni che crei non vengono condivise con altre organizzazioni.
  • Devi creare una prenotazione e un progetto di amministrazione separati per ogni organizzazione.
  • Ogni organizzazione può avere un massimo di 10 progetti di amministrazione con impegni attivi in una singola località.
  • La capacità inattiva non può essere condivisa tra organizzazioni o tra diversi progetti di amministrazione all'interno di una singola organizzazione.
  • Gli impegni e le prenotazioni sono risorse a livello di regione. Gli impegni acquistati in un'unica regione o in più regioni non possono essere utilizzati per prenotazioni in altre regioni o regioni multiple, anche se la località di una singola regione è contenuta all'interno di quella a più regioni. Ad esempio, non puoi utilizzare un impegno acquistato nell'area multiregionale EU per una prenotazione in europe-west1.
  • Gli impegni e le prenotazioni non possono essere spostati da una o più regioni a un'altra.
  • Gli impegni acquistati in un progetto di amministrazione non possono essere spostati in un progetto di amministrazione diverso.
  • Gli impegni acquistati con una versione non possono essere utilizzati con le prenotazioni di un'altra versione.
  • Gli slot inattivi non vengono condivisi tra le prenotazioni di versioni diverse.
  • Gli slot a scalabilità automatica non sono condivisibili poiché faranno fare lo scale down quando non saranno più necessari.

Assegnazioni di prenotazione

Per utilizzare gli slot acquistati, devi assign uno o più progetti, cartelle o organizzazioni a una prenotazione. Una prenotazione è il livello più basso al quale puoi specificare l'assegnazione degli slot. Quando viene eseguito un job in un progetto, utilizza gli slot della prenotazione assegnata. Le risorse possono ereditare le assegnazioni da elementi padre nella gerarchia delle risorse. Se un progetto non è assegnato a una prenotazione, eredita l'assegnazione dell'eventuale cartella o organizzazione padre.

I progetti utilizzano la prenotazione più specifica nella gerarchia delle risorse a cui sono assegnati. Un'assegnazione a una cartella sostituisce un'assegnazione dell'organizzazione e un'assegnazione a un progetto sostituisce un'assegnazione a una cartella.

Se un progetto non ha una prenotazione assegnata o ereditata, il job utilizza prezzi on demand. Per ulteriori informazioni sulla gerarchia delle risorse, consulta Organizzazione delle risorse BigQuery.

Le risorse possono essere assegnate a None per indicare l'assenza di un compito. I progetti assegnati a None utilizzano sempre i prezzi on demand. Un caso d'uso comune per le assegnazioni None è assegnare un'organizzazione a una prenotazione e quindi utilizzare None per escludere determinati progetti o cartelle dalla prenotazione. Per maggiori informazioni, vedi Assegnare un progetto a None.

Quando crei un compito, specifichi il tipo di prestazione per quel compito:

  • QUERY: utilizza questa prenotazione per i job di query, tra cui query SQL, DDL, DML e BigQuery ML.

  • PIPELINE: utilizza questa prenotazione per i job di caricamento ed estrazione.

    Per impostazione predefinita, i job di caricamento ed estrazione sono gratuiti e utilizzano un pool condiviso di slot. BigQuery non garantisce la disponibilità di capacità per questo pool condiviso o la velocità effettiva visualizzata. Se carichi grandi quantità di dati, il job potrebbe attendere che gli slot siano disponibili. In questo caso, potresti voler acquistare slot dedicati e assegnare PIPELINE job. Come best practice, crea un'ulteriore prenotazione dedicata con l'opzione Ignora gli slot inattivi abilitata. Per ulteriori informazioni sugli slot inattivi, consulta Slot inattivi.

    Quando i job di caricamento ed estrazione vengono assegnati a una prenotazione, perdono l'accesso al pool gratuito. Dovresti monitorare l'utilizzo delle risorse e i job per assicurarti che le prenotazioni abbiano una capacità sufficiente per funzionare meglio rispetto all'utilizzo del pool gratuito.

  • BACKGROUND: utilizza questa prenotazione quando scegli di utilizzare la tua prenotazione per eseguire job di gestione degli indici di ricerca BigQuery, CDC (Change Data Capture) di BigQuery o job in background di memorizzazione dei metadati BigLake. Utilizza questa prenotazione anche quando replichi i database di origine in BigQuery con le operazioni di applicazione in background di Datastream. Le prenotazioni BACKGROUND non sono disponibili nella versione Standard.

  • ML_EXTERNAL: usa questa prenotazione per le query BigQuery ML CREATE MODEL che utilizzano servizi esterni a BigQuery. Per maggiori informazioni, consulta Assegnare slot ai carichi di lavoro BigQuery ML. Le prenotazioni ML_EXTERNAL non sono disponibili nella versione Standard.

Non puoi allocare slot ad assegnazioni specifiche. Lo scheduler BigQuery gestisce l'allocazione degli slot per le assegnazioni in una prenotazione. Per ulteriori informazioni su come vengono utilizzati gli slot, consulta Allocazione degli slot all'interno di una prenotazione.

Informazioni sulla gestione dei carichi di lavoro

Le prenotazioni BigQuery sono risorse con ambito a livello di organizzazione che sono in genere di proprietà di un progetto, ma possono essere utilizzate da altri progetti all'interno dell'organizzazione. Puoi acquistare le prenotazioni a livello centrale per utilizzarle nell'intera organizzazione. Puoi richiedere a singoli reparti o divisioni di gestire le prenotazioni acquistando una capacità impegnata e assegnando questa capacità al reparto o alla divisione. Il progetto di amministrazione è associato a un account di fatturazione Cloud, a cui viene addebitata la capacità.

Puoi utilizzare un'organizzazione Google Cloud distinta per ogni reparto o divisione. In questo scenario, definisci un progetto di amministrazione per ogni reparto e gestisci le prenotazioni per quel reparto dal progetto di amministrazione. Non c'è condivisione della capacità impegnata o inattiva tra le organizzazioni.

Gli slot inattivi e non allocati vengono condivisi solo tra le prenotazioni create nello stesso progetto di amministrazione e nella stessa versione. Se utilizzi più di un progetto di amministrazione, gli slot non vengono condivisi tra le prenotazioni di diversi progetti di amministrazione.

Amministra i carichi di lavoro dell'organizzazione

Quando crei impegni e prenotazioni, questi vengono associati a un progetto Google Cloud. Questo progetto gestisce le risorse di prenotazione BigQuery ed è l'origine principale di fatturazione per queste risorse. Questo progetto non deve essere necessariamente lo stesso che contiene i job BigQuery.

Come best practice, crea un progetto dedicato per le risorse Prenotazioni. Questo progetto è chiamato progetto di amministrazione perché centralizza la fatturazione e la gestione degli impegni. Assegna a questo progetto un nome descrittivo, come bq-COMPANY_NAME-admin. Quindi crea uno o più progetti separati per i job BigQuery.

Solo i progetti all'interno della stessa risorsa organizzazione del progetto di amministrazione possono essere assegnati a una prenotazione. Se il progetto di amministrazione non fa parte di un'organizzazione, solo quel progetto può utilizzare gli slot assegnati al progetto.

Al progetto di amministrazione vengono addebitati i costi per gli slot impegnati. Per i progetti che utilizzano slot provenienti da prenotazioni di proprietà del progetto di amministrazione non vengono addebitati i costi relativi agli slot. Puoi acquistare più di un tipo di piano (ad esempio impegni di uno e tre anni) e inserire gli slot nello stesso progetto di amministrazione.

Come best practice, crea un progetto di amministrazione per tutte le prenotazioni. L'utilizzo di un unico progetto di amministrazione semplifica la gestione della fatturazione e l'allocazione degli slot. Devi abilitare l'API BigQuery Reservations solo nel progetto di amministrazione in modo che tutti gli impegni vengano gestiti tramite questo progetto.

Gestione dei carichi di lavoro e dei reparti

Puoi utilizzare le prenotazioni BigQuery per isolare la capacità impegnata tra carichi di lavoro, team o reparti creando ulteriori prenotazioni e assegnando progetti a queste prenotazioni. Una prenotazione è un pool isolato di risorse con il vantaggio di poter sfruttare la capacità inattiva nell'intera organizzazione.

Ad esempio, potresti avere una capacità impegnata totale di 1000 slot e tre tipi di carichi di lavoro: data science, ELT e BI.

  • Puoi creare una prenotazione ds con 500 slot e assegnare tutti i progetti Google Cloud pertinenti alla prenotazione ds.
  • Puoi creare una prenotazione elt con 300 slot e assegnare i progetti che utilizzi per i carichi di lavoro ELT alla prenotazione elt.
  • Puoi creare una prenotazione bi con 200 slot e assegnare i progetti collegati ai tuoi strumenti BI alla prenotazione bi.

Eliminazione impegni.

Anziché partizionare la capacità tra i diversi carichi di lavoro, potresti scegliere di creare prenotazioni per singoli team o reparti.

Gestione delle prenotazioni in regioni diverse

Le prenotazioni sono una risorsa a livello di regione. Gli slot acquistati e le prenotazioni create in una regione non possono essere utilizzate in nessun'altra. Le località a una singola regione non corrispondono a località multiregionali, anche se la località a una singola regione si trova all'interno di quella multiregionale. Ad esempio, non puoi utilizzare una prenotazione nell'area multiregionale EU per eseguire un job in europe-west1. Progetti, cartelle e organizzazioni possono essere assegnati a prenotazioni in una regione ed eseguiti on demand in un'altra. Per gestire le prenotazioni in un'altra regione:

  1. Nella console Google Cloud, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel menu di navigazione, fai clic su Gestione della capacità.

  3. Nell'elenco Località, seleziona una regione in cui vuoi gestire le prenotazioni.

    Dopo aver selezionato una regione, puoi creare prenotazioni, creare impegni e assegnare un progetto a una prenotazione.

Impegni

Un impegno di capacità è un acquisto di slot per un periodo di tempo specificato. Gli slot possono essere acquistati con incrementi di 100 slot, fino alla quota di slot. Gli impegni in termini di capacità sono facoltativi, ma possono determinare risparmi sui costi per i carichi di lavoro in stato stazionario. Non esiste un limite al numero di impegni che puoi creare. L'addebito viene effettuato nel momento in cui l'acquisto dell'impegno va a buon fine. Per informazioni sui prezzi attuali, consulta i prezzi dell'impegno di capacità.

  • Impegno di tre anni. Acquisti un impegno di tre anni. Puoi scegliere se rinnovare o convertire un tipo di piano basato su impegno dopo 3*365 giorni.

  • Impegno annuale. Acquisti un impegno di 365 giorni. Puoi scegliere se rinnovare l'abbonamento o passare a un tipo diverso di piano con impegno dopo 365 giorni.

Al termine del periodo di impegno, l'impegno verrà rinnovato in base al piano di rinnovo selezionato.

Ti vengono addebitati i costi mensili per i piani di impegno annuali o triennali. Tuttavia, il tuo impegno finanziario copre l'intero periodo di impegno e non può essere annullato su base mensile. Il tuo utilizzo viene aggiornato quotidianamente nel report di fatturazione e può essere visualizzato in qualsiasi momento.

Gli impegni slot sono soggetti alla disponibilità di capacità. Quando tenti di acquistare impegni di slot, il successo dell'acquisto non è garantito. Tuttavia, una volta andato a buon fine l'acquisto dell'impegno, la capacità sarà disponibile fino alla scadenza dell'impegno.

Rinnova impegni

Selezioni un piano di rinnovo quando acquisti un impegno. Puoi modificare il piano di rinnovo di un impegno in qualsiasi momento fino alla scadenza. Sono disponibili i seguenti piani di rinnovo:

  • Nessuna. Al termine del periodo di impegno, l'impegno viene rimosso. Le prenotazioni non sono interessate.
  • annuale. Al termine del periodo di impegno, l'impegno si rinnova per un altro anno.
  • Tre anni. Al termine del periodo, l'impegno si rinnova per altri tre anni.

Per informazioni sull'acquisto e sul rinnovo di impegni, consulta Creare un impegno di capacità.

Ad esempio, se hai acquistato un impegno annuale alle 18:00 del 5 ottobre 2019, l'addebito inizierà a partire da quel momento. Puoi eliminare o rinnovare l'impegno dopo le 18:00 del 4 ottobre 2020, tenendo presente che il 2020 è un anno bisestile. Puoi modificare i piani di rinnovo prima delle 18:00 del 4 ottobre 2020 come segue:

  • Se scegli di rinnovare l'impegno annuale, alle 18:00 del 4 ottobre 2020, l'impegno si rinnova per un altro anno.
  • Se scegli di rinnovare l'impegno per 3 anni, alle 18:00 del 4 ottobre 2020, l'impegno si rinnova per tre anni.

Scadenza impegno

Una volta creato, un impegno può essere eliminato solo alla scadenza. Per eliminare un impegno annuale o triennale, imposta il relativo piano di rinnovo su NONE. Alla scadenza, l'impegno viene eliminato automaticamente. Per scoprire di più sulle scadenze dell'impegno, consulta Scadenza dell'impegno.

Se acquisti accidentalmente un impegno o hai commesso un errore durante la configurazione, contatta l'assistenza per la fatturazione Cloud per ricevere aiuto.

Passaggi successivi