Referência de procedimentos do sistema
O BigQuery é compatível com os procedimentos do sistema a seguir, que podem ser usados de maneira semelhante aos procedimentos armazenados criados pelo usuário.
BQ.ABORT_SESSION
Sintaxe
CALL BQ.ABORT_SESSION([session_id]);
Descrição
Encerra a sessão atual.
Também é possível especificar o ID da sessão. Isso permite encerrar uma sessão se o procedimento do sistema não for chamado dessa sessão.
Para mais informações, consulte Como encerrar sessões.
BQ.JOBS.CANCEL
Sintaxe
CALL BQ.JOBS.CANCEL(job);
Descrição
Cancela um job em execução.
Especifique o job como uma string no formato '[project_id.]job_id'
. Se você executar
este procedimento do sistema a partir de um projeto diferente do job, inclua
o ID do projeto. Execute o procedimento no mesmo local que o
job.
Veja mais informações em Como cancelar um job.
BQ.REFRESH_EXTERNAL_METADATA_CACHE
Sintaxe
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE(table_name [, [subdirectory_uri, …]]);
Descrição
Atualiza o cache de metadados de uma tabela do BigLake ou de uma tabela de objetos.
Este procedimento falhará se você executá-lo em uma tabela que tenha o modo de armazenamento em cache
de metadados definido como AUTOMATIC
.
Para executar esse procedimento do sistema, você precisa das permissões bigquery.tables.update
e
bigquery.tables.updateData
.
Especifique o nome da tabela como uma string com o formato '[project_id.]dataset.table'
. Se você executar este procedimento do sistema a partir de um
projeto diferente do job, inclua o ID do projeto.
Para tabelas do BigLake, é possível especificar um ou mais
subdiretórios do diretório de dados da tabela no
Cloud Storage no formato 'gs://table_data_directory/subdirectory/.../'
.
Isso permite atualizar apenas os metadados da tabela desses subdiretórios e, assim, evitar o processamento desnecessário de metadados.
Exemplos
Para atualizar todos os metadados de uma tabela:
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table')
Para atualizar seletivamente os metadados de uma tabela do BigLake:
CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table', ['gs://source/uri/sub/path/d1/*', 'gs://source/uri/sub/path/d2/*'])
Limitação
A atualização do cache de metadados não é compatível com tabelas referenciadas por conjuntos de dados vinculados a conjuntos de dados externos.
BQ.REFRESH_MATERIALIZED_VIEW
Sintaxe
CALL BQ.REFRESH_MATERIALIZED_VIEW(view_name);
Descrição
Atualiza uma visualização materializada.
Especifique o nome da visualização materializada como uma string com o formato
'[project_id.]dataset.table'
. Se você executar este procedimento do sistema em um
projeto diferente da visualização materializada, inclua o ID do
projeto.
Veja mais informações em Atualização manual.