Utilizzare il runtime avanzato di BigQuery
Questo documento descrive come attivare e disattivare il runtime avanzato di BigQuery e come valutare i relativi effetti sul rendimento delle query.
Il runtime avanzato fornisce all'elaboratore delle query di BigQuery la vetorizzazione avanzata. La vettorizzazione avanzata espande l'esecuzione delle query vettorizzate applicandola ad aspetti chiave dell'elaborazione delle query, come la valutazione dei filtri nello spazio di archiviazione BigQuery, le codifiche dei dati specializzate e le tecniche di ottimizzazione.
Ruoli e autorizzazioni
Per ottenere le autorizzazioni necessarie per specificare un'impostazione di configurazione, chiedi all'amministratore di concederti il ruolo IAM Amministratore BigQuery (roles/bigquery.admin
) nel progetto .
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Attiva il runtime avanzato
Per attivare il runtime avanzato per il progetto, utilizza l'istruzione
ALTER PROJECT
per modificare la
configurazione predefinita. Nell'istruzione, imposta l'argomento query_runtime
su 'advanced'
. Ad esempio:
ALTER PROJECTPROJECT_NAME
SET OPTIONS ( `region-LOCATION
.query_runtime` = 'advanced' );
Sostituisci quanto segue:
PROJECT_NAME
: il nome del progettoLOCATION
: la posizione del progetto
Potrebbero essere necessari diversi minuti prima che la modifica venga applicata.
Una volta attivato il runtime avanzato, le query idonee nel progetto useranno il runtime avanzato indipendentemente dall'utente che ha creato il job di query.
Disattivare il runtime avanzato
Per disattivare il runtime avanzato per il progetto, utilizza l'istruzione ALTER PROJECT
per modificare la configurazione predefinita. Nell'istruzione, imposta l'argomento query_runtime
su NULL
. Ad esempio:
ALTER PROJECTPROJECT_NAME
SET OPTIONS ( `region-LOCATION
.query_runtime` = NULL );
Sostituisci quanto segue:
PROJECT_NAME
: il nome del progettoLOCATION
: la posizione del progetto
Potrebbero essere necessari diversi minuti prima che la modifica venga applicata.
Valutare il rendimento delle query
Puoi utilizzare lo esploratore dei job amministrativi e le visualizzazioni INFORMATION_SCHEMA
per valutare l'effetto del runtime avanzato sul tempo di esecuzione delle query e sull'utilizzo degli slot.
Per valutare il rendimento delle query con e senza l'esecuzione dinamica avanzata abilitata:
Nella console Google Cloud , vai alla pagina BigQuery.
Apri una nuova scheda nell'editor di query.
Disattiva l'utilizzo dei risultati delle query memorizzati nella cache per la scheda della query in questione.
Digita o copia le query di test nella scheda Query.
Esegui le query di test alcune volte per stabilire il rendimento di riferimento. Dopo ogni esecuzione, determina le metriche sul rendimento delle query come segue:
- Visualizza i dettagli di esecuzione della query nell'esploratore dei job amministrativi.
Recupera i dati sul rendimento dei job dalla visualizzazione
INFORMATION_SCHEMA.JOBS_BY_USER
eseguendo la seguente query in una nuova scheda di query:SELECT job_id, end_time - start_time AS duration, total_slot_ms, query FROM `region-us`.INFORMATION_SCHEMA.JOBS_BY_USER WHERE creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND job_type='QUERY' AND total_slot_ms IS NOT NULL ORDER BY creation_time DESC, query ASC LIMIT 1000;
Ripeti il passaggio 5.
Confronta le metriche relative alla latenza delle query e all'utilizzo degli slot per le query di test prima e dopo l'attivazione del runtime avanzato.