Riferimento alle procedure di sistema
BigQuery supporta le seguenti procedure di sistema, che possono essere utilizzate in modo simile alle stored procedure create dall'utente.
BQ.ABORT_SESSION
Sintassi
CALL BQ.ABORT_SESSION([session_id]);
Descrizione
Termina la sessione corrente.
Se vuoi, puoi specificare l'ID sessione, che ti consente di terminare una sessione se la procedura di sistema non viene chiamata da quella sessione.
Per ulteriori informazioni, consulta la sezione Terminazione delle sessioni.
BQ.JOBS.CANCEL
Sintassi
CALL BQ.JOBS.CANCEL(job);
Descrizione
Annullamento di un job in esecuzione.
Specifica il job come stringa con il formato '[project_id.]job_id'
. Se esegui questa procedura di sistema da un progetto diverso da quello del job, devi includere l'ID progetto. Devi eseguire la procedura nella stessa posizione del job.
Per ulteriori informazioni, consulta la sezione sull'annullamento di un job.
BQ.REFRESH_EXTERNAL_METADATA_CACHE
Sintassi
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE(table_name [, [subdirectory_uri, …]]);
Descrizione
Aggiorna la cache dei metadati di una tabella BigLake o di una tabella degli oggetti.
Questa procedura non va a buon fine se la esegui su una tabella in cui la modalità di memorizzazione nella cache dei metadati è impostata su AUTOMATIC
.
Per eseguire questa procedura di sistema, devi disporre delle autorizzazioni bigquery.tables.update
e
bigquery.tables.updateData
.
Specifica il nome della tabella come stringa con il formato'[project_id.]dataset.table'
. Se esegui questa procedura di sistema da un progetto diverso rispetto alla tabella, devi includere l'ID progetto.
Per le tabelle BigLake, puoi facoltativamente specificare una o più sottodirectory della directory dei dati della tabella in Cloud Storage nel formato 'gs://table_data_directory/subdirectory/.../'
.
In questo modo, puoi aggiornare solo i metadati della tabella da queste sottodirectory e
evitare così un'elaborazione non necessaria dei metadati.
Esempi
Per aggiornare tutti i metadati di una tabella:
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table')
Per aggiornare in modo selettivo i metadati di una tabella BigLake:
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table', ['gs://source/uri/sub/path/d1/*', 'gs://source/uri/sub/path/d2/*'])
Limitazione
L'aggiornamento della cache dei metadati non è supportato per le tabelle a cui fanno riferimento i set di dati collegati su set di dati esterni.
BQ.REFRESH_MATERIALIZED_VIEW
Sintassi
CALL BQ.REFRESH_MATERIALIZED_VIEW(view_name);
Descrizione
Aggiorna una vista materializzata.
Specifica il nome della vista materializzata come stringa con il formato
'[project_id.]dataset.table'
. Se esegui questa procedura di sistema da un progetto diverso dalla vista materializzata, devi includere l'ID progetto.
Per ulteriori informazioni, consulta Aggiornamento manuale.