Referência da ferramenta de linhas de comando bq

Este documento descreve a sintaxe, os comandos, os indicadores e os argumentos da bqferramenta de linha de comandos do BigQuery. Destina-se a utilizadores que conhecem o BigQuery, mas querem saber como usar um comando específico da ferramenta de linhas de comando bq. Para ver informações gerais sobre como usar a ferramenta de linhas de comando bq, consulte o artigo Usar a ferramenta de linhas de comando bq.

Synopsis

A ferramenta de linhas de comando bq usa o seguinte formato:

bq COMMAND [FLAGS] [ARGUMENTS]

Alguns sinalizadores podem ser usados com vários comandos da ferramenta de linhas de comando bq. Estes sinalizadores são descritos na secção Sinalizadores globais.

Outros sinalizadores são específicos do comando e só podem ser usados com um comando específico da ferramenta de linhas de comando bq. As flags específicas do comando são descritas nas secções de comando.

Sinalizadores booleanos

Algumas flags da ferramenta de linha de comandos bq são booleanas. Pode definir o valor da flag como true ou false. A ferramenta de linhas de comando bq aceita os seguintes formatos para definir flags booleanas.

Valor Formato Exemplo
true --FLAGNAME=true --debug_mode=true
true --FLAGNAME --debug_mode
false --FLAGNAME=false --debug_mode=false
false --noFLAGNAME --nodebug_mode

Este documento usa o formato --FLAGNAME=VALUE para flags booleanas.

Todas as sinalizações booleanas são opcionais. Se uma sinalização booleana não estiver presente, o BigQuery usa o valor predefinido da sinalização.

Especificar valores para flags

Quando especifica um valor para uma flag, o sinal de igual (=) é opcional. Por exemplo, os dois comandos seguintes são equivalentes:

bq ls --format prettyjson myDataset
bq ls --format=prettyjson myDataset

Este documento usa o sinal de igual para maior clareza.

Ajuda online

A documentação está disponível na ferramenta de linhas de comando bq, da seguinte forma:

Descrição Formato do comando de ajuda Exemplo
Lista de todos os comandos com exemplos bq help bq help
Descrição das flags globais bq --help bq --help
Descrição de um comando específico bq help COMMAND bq help mk

Especificação de recursos

O formato para especificar um recurso depende do contexto. Em alguns casos, o separador entre o projeto e o conjunto de dados é um dois pontos (:) e, noutros, é um ponto (.). A tabela seguinte descreve como especificar uma tabela do BigQuery em diferentes contextos.

Contexto Formato Exemplo
ferramenta de linhas de comando bq PROJECT:DATASET.TABLE myProject:myDataset.myTable
Consulta GoogleSQL PROJECT.DATASET.TABLE myProject.myDataset.myTable
Consulta SQL antigo PROJECT:DATASET.TABLE myProject:myDataset.myTable

Se não especificar um projeto, o BigQuery usa o projeto atual. Por exemplo, se o projeto atual for myProject, o BigQuery interpreta myDataset.myTable como myProject:myDataset.myTable (ou myProject.myDataset.myTable).

Alguns identificadores de recursos têm de ser colocados entre aspas invertidas (`). Se o identificador de recursos começar com uma letra ou um caráter de sublinhado e contiver apenas carateres que sejam letras, números e sublinhados, não tem de o colocar entre aspas. No entanto, se o identificador do recurso contiver outros tipos de carateres ou palavras-chave reservadas, tem de colocar o identificador (ou a parte do identificador com os carateres especiais ou as palavras-chave reservadas) entre acentos graves. Para mais informações, consulte a secção Identificadores.

Sinalizações globais

Pode usar os seguintes sinalizadores com qualquer comando bq, quando aplicável:

--api=ENDPOINT
Especifica o ponto final da API a chamar. O valor predefinido é https://www.googleapis.com.
--api_version=VERSION
Especifica a versão da API a usar. A predefinição é v2.
--apilog=FILE

Regista todos os pedidos e respostas da API no ficheiro especificado por FILE. Os valores possíveis são os seguintes:

  • O caminho para um ficheiro: regista no ficheiro especificado
  • stdout - regista na saída padrão
  • stderr: regista no erro padrão
  • false – os pedidos e as respostas da API não são registados (predefinição)
--use_google_auth={true|false}

Se estiver definido como true, ativa a autenticação através das bibliotecas de autenticação da Google. O valor predefinido é true.

--bigqueryrc=PATH

Especifica o caminho para o ficheiro de configuração da ferramenta de linhas de comando bq. Se não especificar a marca --bigqueryrc, o comando usa a variável de ambiente BIGQUERYRC. Se a variável do ambiente não estiver definida, é usado o $HOME/.bigqueryrc. Se esse ficheiro não existir, é usado ~/.bigqueryrc. Para mais informações, consulte o artigo Definir valores predefinidos para flags da linha de comandos.

--ca_certificates_file=PATH

Especifica a localização do ficheiro do serviço de autoridade de certificação (CA).

--dataset_id=DATASET_ID

Especifica o conjunto de dados predefinido a usar com o comando. Esta flag é ignorada quando não é aplicável. Pode especificar o DATASET_ID argumento usando o formato PROJECT:DATASET ou DATASET. Se a parte PROJECT estiver em falta, é usado o projeto predefinido. Pode substituir a predefinição do projeto especificando a flag --project_id.

--debug_mode={true|false}

Se for definido como true, mostra rastreios de exceções do Python. O valor predefinido é false.

--disable_ssl_validation={true|false}

Se estiver definido como true, ativa a validação do certificado HTTPS. O valor predefinido é false.

--discovery_file=PATH

Especifica o ficheiro JSON a ler para a deteção.

--enable_gdrive={true|false}

Se estiver definido como false, pede um novo símbolo OAuth sem o âmbito do Google Drive. O valor predefinido é true; pede um novo token OAuth com o âmbito do Drive. Para definir esta flag como false quando a autenticação é feita através de uma conta de utilizador, a flag --use_google_auth tem de estar definida como false.

--fingerprint_job_id={true|false}

Para usar um ID da tarefa derivado de uma impressão digital da configuração da tarefa, defina como true. Isto impede que o mesmo trabalho seja executado várias vezes por engano. O valor predefinido é false.

--format=FORMAT

Especifica o formato da saída do comando. Use um dos seguintes valores:

  • pretty: saída de tabela formatada
  • sparse: saída de tabela mais simples
  • prettyjson: formato JSON fácil de ler
  • json: JSON o mais compacto possível
  • csv: formato CSV com cabeçalho

Os elementos pretty, sparse e prettyjson destinam-se a ser legíveis por humanos. json e csv destinam-se a ser usados por outro programa. Se none for especificado, o comando não produz qualquer resultado. Se a flag --format estiver ausente, é escolhido um formato de saída adequado com base no comando.

--headless={true|false}

Para executar a sessão bq sem interação do utilizador, defina como true. Por exemplo, debug_mode não entra no depurador e a frequência de impressão informativa é reduzida. O valor predefinido é false.

--httplib2_debuglevel=DEBUG_LEVEL

Especifica se devem ser apresentadas informações de depuração HTTP. Se DEBUG_LEVEL for superior a 0, o comando regista pedidos e respostas do servidor HTTP para stderr, além de mensagens de erro. Se DEBUG_LEVEL não for > 0, ou se a flag --httplib2_debuglevel não for usada, são fornecidas apenas mensagens de erro.

Por exemplo:

--httplib2_debuglevel=1

--job_id=JOB_ID

Especifica um identificador de tarefa para uma nova tarefa. Esta flag aplica-se apenas a comandos que criam tarefas: cp, extract, load e query. Se não usar a flag --job_id, os comandos geram um identificador de tarefa exclusivo. Para mais informações, consulte o artigo Executar tarefas por programação.

--job_property=KEY:VALUE

Um par de chave-valor a incluir no campo de propriedades da configuração da tarefa. Repita esta flag para especificar propriedades adicionais.

--location=LOCATION

Uma string correspondente a uma região ou a uma localização de várias regiões. O sinalizador de localização é obrigatório para o comando bq cancel e para o comando bq show quando usa o sinalizador --jobs para mostrar informações sobre tarefas. O indicador de localização é opcional para os seguintes comandos:

  • query
  • cp
  • load
  • extract
  • partition
  • update
  • wait
  • mk quando usa as flags --dataset, --reservation, --capacity_commitment> ou --reservation_assignment
  • ls quando usa as flags --reservation, --capacity_commitment ou --reservation_assignment

Todos os outros comandos ignoram a flag --location.

--max_rows_per_request=MAX_ROWS

Um número inteiro que especifica o número máximo de linhas a devolver por leitura.

--project_id=PROJECT

Especifica o projeto a usar para comandos.

--proxy_address=PROXY

Especifica o nome ou o endereço IP do anfitrião proxy a usar para estabelecer ligação a Google Cloud.

--proxy_password=PASSWORD

Especifica a palavra-passe a usar ao fazer a autenticação com o anfitrião do proxy.

--proxy_port=PORT

Especifica o número da porta a usar para estabelecer ligação ao anfitrião do proxy.

--proxy_username=USERNAME

Especifica o nome de utilizador a usar ao fazer a autenticação com o anfitrião do proxy.

--quiet={true|false} ou -q={true|false}

Para suprimir as atualizações de estado enquanto os trabalhos estão a ser executados, defina como true. O valor predefinido é false.

--synchronous_mode={true|false} ou -sync={true|false}

Para criar a tarefa e regressar imediatamente, com um estado de conclusão bem-sucedido como código de erro, defina como false. Se estiver definido como true, o comando aguarda a conclusão da tarefa antes de ser devolvido e devolve o estado de conclusão da tarefa como o código de erro. O valor predefinido é true.

--trace=token:TOKEN

Especifica um token de rastreio a incluir nos pedidos da API.

--use_regional_endpoints={true|false}

Em pré-visualização. Para se ligar a um ponto final regional, defina a flag --use_regional_endpoints como true e a flag --location para a região à qual quer ligar-se. O valor predefinido é false.

Flags globais descontinuadas

A seguinte marca global para especificar marcas da ferramenta de linhas de comando bq a partir de um ficheiro está obsoleta. Para especificar flags a partir de um ficheiro, use a flag --bigqueryrc.

--flagfile=PATH

Quando especificado, as definições de flags do ficheiro fornecido são inseridas na ferramenta de linhas de comando bq. O valor predefinido é ''. Para mais informações, consulte o artigo Definir valores predefinidos para flags da linha de comandos.

Comandos

As secções seguintes descrevem os comandos da ferramenta de linhas de comando bq, juntamente com os respetivos argumentos e flags específicos dos comandos.

bq add-iam-policy-binding

Use o comando bq add-iam-policy-binding para obter a política de gestão de identidade e de acesso (IAM) para uma tabela ou uma vista e adicionar uma vinculação à política num único passo.

Este comando é uma alternativa ao seguinte processo de três passos:

  1. Usar o comando bq get-iam-policy para obter o ficheiro de política (no formato JSON).
  2. Editar o ficheiro de política.
  3. Usando o comando bq set-iam-policy para atualizar a política com uma nova associação.

Synopsis

bq add-iam-policy-binding [FLAGS] --member=MEMBER_TYPE:MEMBER --role=ROLE
  [--table] RESOURCE

Exemplo

bq add-iam-policy-binding --member=user:[email protected] \
  --role=roles/bigquery.dataViewer myDataset.myTable

Sinalizações e argumentos

O comando bq add-iam-policy-binding usa as seguintes flags e argumentos:

--member=MEMBER_TYPE:MEMBER

Obrigatório. Use a flag --member para especificar o membro que faz parte da associação da política do IAM. A flag --member é obrigatória juntamente com a flag --role. Uma combinação de flags --member e --role é igual a uma associação.

O valor MEMBER_TYPE especifica o tipo de membro na associação da política de IAM. Use um dos seguintes valores:

  • user
  • serviceAccount
  • group
  • domain

O valor MEMBER especifica o endereço de email ou o domínio do membro na associação da política de IAM.

--role=ROLE

Obrigatório. Especifica a parte da função da associação da política de IAM. A flag --role é obrigatória juntamente com a flag --member. Uma combinação de sinalizações --member e --role é igual a uma associação.

--table={true|false}

Para devolver um erro se o argumento RESOURCE não for um identificador de tabela ou vista, defina a flag --table como true. O valor predefinido é false. Esta flag é suportada para consistência com outros comandos.

RESOURCE

A tabela ou a vista à qual quer adicionar a política.

Para mais informações, consulte a referência da política de IAM.

bq cancel

Use o comando bq cancel para cancelar tarefas do BigQuery.

Synopsis

bq [--synchronous_mode=false] cancel JOB_ID

Exemplos

bq cancel bqjob_12345
bq --synchronous_mode=false cancel bqjob_12345

Sinalizações e argumentos

O comando bq cancel usa as seguintes flags e argumentos:

--synchronous_mode=false
Se não quiser aguardar a conclusão do comando bq cancel ,defina a flag --synchronous_mode global como false. A predefinição é true.
JOB_ID
A tarefa que quer cancelar.

Para mais informações sobre a utilização do comando bq cancel, consulte o artigo Gerir tarefas.

bq cp

Use o comando bq cp para as seguintes tarefas:

Synopsis

bq cp [FLAGS] SOURCE_TABLE DESTINATION_TABLE

Exemplo

bq cp myDataset.myTable myDataset.myTableCopy

Sinalizações e argumentos

O comando bq cp usa as seguintes flags e argumentos:

--append_table={true|false} ou -a={true|false}

Para anexar uma tabela a uma tabela existente, defina como true. O valor predefinido é false.

Não pode usar as definições de flags --append_table=true e --clone=true em simultâneo.

--clone={true|false}

Para criar um clone de tabela, defina como true. A tabela base pode ser uma tabela padrão, um clone de tabela ou uma captura de ecrã de tabela. A tabela de destino é um clone de tabela. O valor predefinido é false; se não for especificado --clone=true nem --snapshot=true, a tabela de destino é o mesmo tipo de tabela que a tabela base. Requer a flag --no_clobber.

Não pode usar as definições de flags --append_table=true e --clone=true em simultâneo.

--destination_kms_key=KEY

Especifica um ID do recurso da chave do Cloud KMS para encriptar os dados da tabela de destino.

Por exemplo:

--destination_kms_key=projects/myProject/locations/global/keyRings/myKeyRing/cryptoKeys/myKey

--expiration=SECONDS

O número de segundos até a expiração de uma imagem instantânea da tabela. Se não for incluída, a expiração da imagem instantânea da tabela é definida como a expiração predefinida do conjunto de dados que contém a nova imagem instantânea da tabela. Use com a flag --snapshot.

--force={true|false} ou -f={true|false}

Para substituir a tabela de destino, se existir, sem aviso, defina como true. O valor predefinido é false. Se a tabela de destino existir, o comando pede confirmação antes de substituir.

--no_clobber={true|false} ou -n={true|false}

Para não permitir a substituição da tabela de destino, se existir, defina como true. O valor predefinido é false. Se a tabela de destino existir, é substituída.

--restore={true|false}

Este sinalizador está a ser descontinuado. Para criar uma tabela gravável a partir de uma cópia instantânea de uma tabela, use o comando bq cp ou o comando bq cp --clone.

--snapshot={true|false}

Para criar um instantâneo da tabela da tabela especificada no argumento SOURCE_TABLE, defina como true. A tabela base pode ser uma tabela padrão, um clone de tabela ou outra cópia instantânea de tabela. O valor predefinido é false; se não for especificado --clone=true nem --snapshot=true, a tabela de destino é o mesmo tipo de tabela que a tabela base. Requer a flag --no_clobber.

SOURCE_TABLE

A tabela que quer copiar.

DESTINATION_TABLE

A tabela para a qual quer copiar.

Para mais informações sobre a utilização do comando cp, consulte o seguinte:

bq extract

Use o comando bq extract para exportar dados de tabelas para o Cloud Storage.

Synopsis

bq extract [FLAGS] RESOURCE DESTINATION

Exemplos

bq extract --compression=GZIP --destination_format=CSV --field_delimiter=tab \
    --print_header=false myDataset.myTable gs://my-bucket/myFile.csv.gzip
bq extract --destination_format=CSV --field_delimiter='|' myDataset.myTable \
  gs://myBucket/myFile.csv

Sinalizações e argumentos

O comando bq extract usa as seguintes flags e argumentos:

--compression=COMPRESSION_TYPE

Especifica o tipo de compressão a usar para os ficheiros exportados. Os valores possíveis são os seguintes:

  • GZIP
  • DEFLATE
  • SNAPPY
  • NONE

O valor predefinido é NONE.

Para obter informações sobre os formatos suportados para cada tipo de compressão, consulte Formatos de exportação e tipos de compressão.

--destination_format=FORMAT

Especifica o formato dos dados exportados. Os valores possíveis são os seguintes:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • PARQUET

O valor predefinido é CSV.

--field_delimiter=DELIMITER

Para exportações CSV, especifica o caráter que marca o limite entre colunas no ficheiro de saída. O delimitador pode ser qualquer caráter de byte único ISO-8859-1. Pode usar \t ou tab para especificar delimitadores de tabulação.

--print_header={true|false}

Para suprimir a impressão de linhas de cabeçalho para formatos que têm cabeçalhos, defina como false. O valor predefinido é true; as linhas de cabeçalho estão incluídas.

RESOURCE

A tabela a partir da qual está a exportar.

DESTINATION

A localização de armazenamento que recebe os dados exportados.

Para mais informações sobre a utilização do comando bq extract, consulte o artigo Exportar dados de tabelas.

bq get-iam-policy

Use o comando bq get-iam-policy para obter a política de IAM para um recurso e imprimi-la em stdout. O recurso pode ser uma tabela, uma vista ou uma reserva de horário. A política está no formato JSON.

Synopsis

bq get-iam-policy [FLAGS] RESOURCE

Exemplos

bq get-iam-policy myDataset.myTable
bq get-iam-policy --reservation myReservation

Sinalizações e argumentos

O comando bq get-iam-policy usa as seguintes flags e argumentos:

--table={true|false} ou --t={true|false}
Para devolver um erro se RESOURCE não for um identificador de tabela ou vista, defina a flag --table como true. O valor predefinido é false. Esta flag é suportada para consistência com outros comandos.
--reservation={true|false}
Para obter a política IAM de uma reserva, defina como true (Pré-visualizar). O valor predefinido é false. Quando esta flag é usada, RESOURCE é tratada como um identificador de reserva. A reserva pode ter prefixos opcionais de projeto e localização: myProject:myLocation.myReservation.
RESOURCE
A tabela ou a vista cuja política quer obter.

Para mais informações sobre o comando bq get-iam-policy, consulte o artigo Controle o acesso aos recursos com a IAM.

bq head

Use o comando bq head para apresentar as linhas e as colunas especificadas de uma tabela. Por predefinição, apresenta todas as colunas das primeiras 100 linhas.

Synopsis

bq head [FLAGS] [TABLE]

Exemplo

bq head --max_rows=10 --start_row=50 --selected_fields=field1,field3 \
  myDataset.myTable

Sinalizações e argumentos

O comando bq head usa as seguintes flags e argumentos:

--job=JOB or -j=JOB
Para ler os resultados de uma tarefa de consulta, especifique esta flag com um ID da tarefa válido.
--max_rows=MAX or -n=MAX
Um número inteiro que indica o número máximo de linhas a imprimir quando são apresentados dados de tabelas. O valor predefinido é 100.
--selected_fields=COLUMN_NAMES or -c=COLUMN_NAMES
Uma lista separada por vírgulas que especifica um subconjunto de campos (incluindo campos aninhados e repetidos) a devolver quando são apresentados dados de tabela. Se esta flag não for especificada, são devolvidas todas as colunas.
--start_row=START_ROW or -s=START_ROW
Um número inteiro que especifica o número de linhas a ignorar antes de apresentar os dados da tabela. O valor predefinido é 0; os dados da tabela começam na primeira linha.
--table={true|false} ou -t={true|false}
Para devolver um erro se o argumento de comando não for uma tabela ou uma vista, defina como true. O valor predefinido é false. Esta flag é suportada para consistência com outros comandos.
TABLE
A tabela cujos dados quer obter.

Para mais informações sobre a utilização do comando bq head, consulte o artigo Gerir dados de tabelas.

bq help

Use o comando bq help para apresentar a documentação da ferramenta de linhas de comando bq na ferramenta.

Synopsis

bq help [COMMAND]

Sinalizações e argumentos

O comando bq help usa as seguintes flags e argumentos:

COMMAND
Especifica um comando da ferramenta de linhas de comando bq em particular para o qual quer obter ajuda online.

bq insert

Use o comando bq insert para inserir linhas de dados delimitados por novas linhas e formatados em JSON numa tabela a partir de um ficheiro através da inserção de streaming. Os tipos de dados são convertidos para corresponderem aos tipos de colunas da tabela de destino. Este comando destina-se apenas a fins de teste. Para fazer stream de dados para o BigQuery, use o método da API insertAll.

Synopsis

bq insert [FLAGS] TABLE FILE

Exemplos

bq insert --ignore_unknown_values --template_suffix=_insert myDataset.myTable /tmp/myData.json
echo '{"a":1, "b":2}' | bq insert myDataset.myTable

Sinalizações e argumentos

O comando bq insert usa as seguintes flags e argumentos:

--ignore_unknown_values={true|false} ou -i={true|false}
Quando definido como true, o BigQuery ignora todos os pares de chave-valor que não correspondam ao esquema da tabela e insere a linha com os dados que correspondem ao esquema. Quando definido como false, as linhas com dados que não correspondem ao esquema da tabela não são inseridas. A predefinição é false.
--skip_invalid_rows={true|false} ou -s={true|false}
Quando definido como true, o BigQuery tenta inserir todas as linhas válidas, mesmo que existam linhas inválidas. Quando definido como false, o comando falha se existirem linhas inválidas. A predefinição é false.
--template_suffix=SUFFIX or -x=SUFFIX
Quando especificado, trate a tabela de destino TABLE como um modelo base e insira as linhas numa tabela de instância denominada {destination}{templateSuffix}. O BigQuery cria a tabela de instância com o esquema do modelo base.
TABLE
A tabela na qual quer inserir dados.
FILE
O ficheiro que contém os dados que quer inserir.

Para mais informações sobre a utilização do comando bq insert, consulte o artigo Fazer stream de dados para o BigQuery.

bq load

Use o comando bq load para carregar dados para uma tabela.

Synopsis

bq load [FLAGS] DESTINATION_TABLE SOURCE_DATA [SCHEMA]

Exemplo

bq load myDataset.newTable gs://mybucket/info.csv ./info_schema.json

Sinalizações e argumentos

O comando bq load usa as seguintes flags e argumentos:

--allow_jagged_rows={true|false}
Para permitir colunas opcionais finais em falta nos dados CSV, defina como true.
--preserve_ascii_control_characters={true|false}
Para permitir carateres de controlo ASCII incorporados em dados CSV, defina como true.
--allow_quoted_newlines={true|false}
Para permitir novas linhas entre aspas nos dados CSV, defina como true.
--autodetect={true|false}
Para ativar a deteção automática de esquemas para dados CSV e JSON, defina como true. O valor predefinido é false. Se --autodetect for false e não for especificado nenhum esquema através da flag --schema, e a tabela de destino existir, é usado o esquema da tabela de destino.
--clustering_fields=COLUMNS
Uma lista separada por vírgulas de até quatro nomes de colunas que especifica os campos a usar para a agrupamento de tabelas.
--column_name_character_map=SCOPE
Define o âmbito e o processamento de carateres nos nomes das colunas, com a opção de ativar nomes de colunas flexíveis. Requer a opção --autodetect para ficheiros CSV. Para ver uma lista de valores possíveis, consulte load_option_list.
--destination_kms_key=KEY
Especifica um Cloud KMS ID do recurso da chave para encriptar os dados da tabela de destino.
--encoding=ENCODING_TYPE or -E=ENCODING_TYPE
A codificação de carateres usada nos dados. Use um dos seguintes valores:
  • ISO-8859-1 (também conhecido como Latin-1)
  • UTF-8
--field_delimiter=DELIMITER or -F=DELIMITER
Especifica o caráter que marca o limite entre colunas nos dados. O delimitador pode ser qualquer caráter de byte único ISO-8859-1. Pode usar \t ou tab para especificar delimitadores de tabulações.
--ignore_unknown_values={true|false}
Quando definido como true para ficheiros CSV e JSON, as linhas com valores de colunas adicionais que não correspondem ao esquema da tabela são carregadas, mas as colunas adicionais são ignoradas. Quando definido como true para ficheiros Avro, Parquet e ORC, os campos no esquema de ficheiros que não existem no esquema de tabelas são ignorados e não são carregados.
--json_extension=JSON_TYPE

Especifica o tipo de ficheiro JSON a carregar. Aplica-se apenas a ficheiros JSON. Os valores possíveis são os seguintes:

  • GEOJSON – Ficheiro GeoJSON delimitado por newline

Para usar esta flag, a flag --source_format tem de estar definida como NEWLINE_DELIMITED_JSON.

Para mais informações, consulte o artigo Carregar ficheiros GeoJSON delimitados por newline.

--max_bad_records=MAX

Um número inteiro que especifica o número máximo de registos inválidos permitidos antes de toda a tarefa falhar. O valor predefinido é 0. São devolvidos, no máximo, cinco erros de qualquer tipo, independentemente do valor de --max_bad_records. Esta flag aplica-se apenas ao carregamento de dados CSV, JSON e do Google Sheets.

--null_marker=STRING

Uma string personalizada opcional que representa um valor NULL nos dados CSV.

--projection_fields=PROPERTY_NAMES

Se definir --source_format como DATASTORE_BACKUP, esta flag indica que propriedades de entidades carregar a partir de uma exportação do Datastore. Especifique os nomes das propriedades numa lista separada por vírgulas. Os nomes das propriedades são sensíveis a maiúsculas e minúsculas e têm de se referir a propriedades de nível superior. Também pode usar esta flag com exportações do Firestore.

--quote=CHARACTER

Especifica um caráter de aspas para envolver campos em dados CSV. O argumento CHARACTER pode ser qualquer caráter de um byte. O valor predefinido é aspas duplas ("). Para especificar que não existe nenhum caráter de aspas, use uma string vazia "".

--replace={true|false}

Para apagar todos os dados e esquemas existentes quando novos dados são carregados, defina como true. Todas as chaves do Cloud KMS também são removidas, a menos que especifique a flag --destination_kms_key. O valor predefinido é false.

Equivalente ao valor WRITE_TRUNCATE para JobConfigurationLoad.writeDisposition.

--schema={SCHEMA_FILE|SCHEMA}

Especifica o caminho para um ficheiro de esquema JSON local ou uma lista separada por vírgulas de definições de colunas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e assim sucessivamente. Se usar um ficheiro de esquema, não lhe atribua uma extensão.

Por exemplo:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

Se não for especificado nenhum esquema, e --autodetect for false, e a tabela de destino existir, é usado o esquema da tabela de destino.

--schema_update_option=OPTION

Quando acrescenta dados a uma tabela (num trabalho de carregamento ou num trabalho de consulta) ou quando substitui uma partição de tabela, especifica como atualizar o esquema da tabela de destino. Use um dos seguintes valores:

  • ALLOW_FIELD_ADDITION: permitir a adição de novos campos
  • ALLOW_FIELD_RELAXATION: permitir a flexibilização dos campos REQUIRED para NULLABLE

Repita esta flag para especificar várias opções de atualização do esquema.

--skip_leading_rows=NUMBER_OF_ROWS

Um número inteiro que especifica o número de linhas a ignorar no início do ficheiro de origem. A predefinição é 0.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Especifica como interpretar os URIs de origem.

  • FILE_SYSTEM_MATCH: expande os URIs de origem listando os ficheiros do armazenamento de objetos. Este é o comportamento predefinido se FileSetSpecType não estiver definido.
  • NEW_LINE_DELIMITED_MANIFEST: indica que os URIs fornecidos são ficheiros de manifesto delimitados por novas linhas, com um URI por linha. Os URIs com carateres universais não são suportados nos ficheiros de manifesto, e todos os ficheiros de dados referenciados têm de estar no mesmo contentor que o manifesto.

Por exemplo, se tiver um URI de origem de "gs://bucket/path/file" e o file_set_spec_type for FILE_SYSTEM_MATCH, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor de file_set_spec_type for NEW_LINE_DELIMITED_MANIFEST, cada linha no ficheiro é interpretada como um URI que aponta para um ficheiro de dados.

--source_format=FORMAT

O formato dos dados de origem. Use um dos seguintes valores:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • DATASTORE_BACKUP (use este valor para o Filestore)
  • PARQUET
  • ORC
--time_partitioning_expiration=SECONDS

Um número inteiro que especifica (em segundos) quando uma partição baseada no tempo deve ser eliminada. O tempo de expiração é avaliado como a data UTC da partição mais o valor inteiro. Um número negativo indica que não existe data de validade.

--time_partitioning_field=COLUMN_NAME

Especifica o campo que determina como criar uma partição baseada no tempo. Se a criação de partições com base no tempo estiver ativada sem este valor, a tabela é particionada com base no tempo de carregamento.

--time_partitioning_type=INTERVAL

Ativa a partição baseada no tempo numa tabela e define o tipo de partição. Use um dos seguintes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR

O tipo de partição predefinido para a partição baseada no tempo é DAY.

--use_avro_logical_types={true|false}

Se o sinalizador --source_format estiver definido como AVRO, defina este sinalizador como true para converter tipos lógicos nos respetivos tipos correspondentes (como TIMESTAMP) em vez de usar apenas os respetivos tipos não processados (como INTEGER).

--decimal_target_types=DECIMAL_TYPE

Determina como converter um Decimaltipo lógico. Equivalente a JobConfigurationLoad.decimalTargetTypes. Repita esta flag para especificar vários tipos de destino.

--parquet_enum_as_string={true|false}

Se a flag --source_format estiver definida como PARQUET e quiser que o BigQuery infira os tipos lógicos do Parquet como valores STRING, defina esta flag como true.ENUM A predefinição é false.

--parquet_enable_list_inference={true|false}

Se o sinalizador --source_format estiver definido como PARQUET, este sinalizador indica se deve usar a inferência de esquemas para tipos lógicos Parquet LIST.

--reference_file_schema_uri=URI

Especifica o caminho para um ficheiro de referência com o esquema de tabela esperado para criar tabelas externas. Equivalente a ExternalDataConfiguration.referenceFileSchemaUri. Esta flag está ativada para os formatos Avro, ORC e PARQUET.

DESTINATION_TABLE

A tabela na qual quer carregar dados.

SOURCE_DATA

O URI do Cloud Storage do ficheiro que contém os dados que quer carregar.

SCHEMA

O esquema da tabela de destino.

Para mais informações sobre o carregamento de dados do Cloud Storage através do comando bq load, consulte o seguinte:

Para mais informações sobre o carregamento de dados a partir de uma origem local através do comando bq load, consulte o seguinte:

bq ls

Use o comando bq ls para listar objetos numa coleção.

Synopsis

bq ls [FLAGS] [RESOURCE]

Exemplo

bq ls myDataset

Sinalizações e argumentos

O comando bq ls usa as seguintes flags e argumentos:

--all={true|false} ou -a={true|false}
Para mostrar todos os resultados, defina como true. Mostra tarefas de todos os utilizadores ou todos os conjuntos de dados, incluindo os ocultos. Esta flag não é necessária quando lista configurações de transferência ou execuções de transferência. O valor predefinido é false.
--capacity_commitment={true|false}

Para listar compromissos de capacidade, defina como true e use a flag --location para especificar a localização. Para mais informações, consulte o artigo Veja compromissos comprados.

Por exemplo: bq ls --capacity_commitment=true --location='us'

--datasets={true|false} ou -d={true|false}

Para listar conjuntos de dados, defina como true. O valor predefinido é false.

--filter="FILTER"

Filtra os recursos listados para corresponder ao argumento FILTER.

Para conjuntos de dados, FILTER consiste num ou mais triplos separados por espaços no formato labels.KEY:VALUE. Se forem fornecidas mais de uma tripla, o comando só devolve conjuntos de dados que correspondam a todas as triplas (ou seja, o comando usa o operador lógico AND e não OR). Se quiser especificar mais de uma tripla, coloque o valor FILTER entre aspas.

Para filtrar com base nas etiquetas do conjunto de dados, use as chaves e os valores que aplicou aos conjuntos de dados.

Por exemplo:

 --filter "labels.department:marketing labels.team:sales"
 

Para configurações de transferência, use dataSourceIds como chave e uma das seguintes origens de dados como valor:

Por exemplo:

   --filter labels.dataSourceIds:dcm_dt
   

Para execuções de transferência, use states como chave e um ou mais dos seguintes estados de transferência como valor:

  • SUCCEEDED
  • FAILED
  • PENDING
  • RUNNING
  • CANCELLED

Por exemplo:

--filter="states:FAILED"

Para trabalhos, use states como chave e um ou mais dos seguintes estados de trabalho como valor:

  • RUNNING
  • PENDING
  • DONE

Por exemplo:

bq ls --jobs --filter="states:RUNNING"

bq ls --jobs --filter="states:RUNNING,PENDING"
--jobs={true|false} ou -j={true|false}
Para listar trabalhos, defina como true. O valor predefinido é false. Por predefinição, tem um limite de 100 000 resultados.
--max_creation_time=MAX_CREATION_TIME_MS
Um número inteiro que representa uma indicação de tempo de época Unix em milissegundos. Quando especificada com a flag --jobs, esta flag apresenta apenas os trabalhos criados antes da data/hora.
--max_results=MAX_RESULTS or -n=MAX_RESULTS
Um número inteiro que indica o número máximo de resultados. O valor predefinido é 50 e o valor máximo é 1000. Se tiver mais de 1000 tarefas, pode usar a flag page_token para listar todas as tarefas através da paginação.
--min_creation_time=MIN_CREATION_TIME_MS
Um número inteiro que representa uma indicação de tempo de época Unix em milissegundos. Quando especificada com a flag --jobs, esta flag lista apenas os trabalhos criados após a data/hora.
--message_type=messageTypes:MESSAGE_TYPE

Para listar apenas mensagens de registo de execuções de transferências de um tipo específico, especifique messageTypes:MESSAGE_TYPE. Os valores possíveis são os seguintes:

  • INFO
  • WARNING
  • ERROR
--models={true|false} ou -m={true|false}

Para apresentar os modelos do BigQuery ML, defina como true. O valor predefinido é false.

--page_token=TOKEN ou -k=TOKEN

Apresenta os itens a partir do token de página especificado.

--projects={true|false} ou -p={true|false}

Para mostrar todos os projetos, defina como true. O valor predefinido é false.

--reservation={true|false}

Para listar todas as reservas de um determinado projeto e localização, defina como true. O valor predefinido é false. Use com as flags --project_id e --location.

Por exemplo:

bq ls --reservation=true --project_id=myProject --location=us

--reservation_assignment={true|false}

Para listar todas as atribuições de reservas de um determinado projeto e localização, defina como true. O valor predefinido é false. Use com os indicadores --project_id e --location.

--routines={true|false}

Para listar todas as rotinas no conjunto de dados especificado, defina como true. O valor predefinido é false. As rotinas incluem funções definidas pelo utilizador persistentes, funções de tabela (pré-visualização) e procedimentos armazenados.

--row_access_policies

Quando especificado, lista todas as políticas de acesso ao nível da linha numa tabela. As políticas de acesso ao nível das linhas são usadas para a segurança ao nível das linhas. Tem de indicar o nome da tabela no formato dataset.table.

--run_attempt=RUN_ATTEMPT

Use com a flag --transfer_run. Para apresentar uma lista de todas as tentativas de execução da execução de transferência especificada, defina como RUN_ATTEMPT_UNSPECIFIED. Para listar apenas a tentativa de execução mais recente, defina como LATEST. A predefinição é LATEST.

--transfer_config={true|false}

Para listar as configurações de transferência no projeto e na localização especificados, defina como true. Use com os comandos --transfer_location e --project_id. O valor predefinido é false.

--transfer_location=LOCATION

Apresenta as configurações de transferência na localização especificada. Define a localização de transferência quando a transferência é criada.

--transfer_log={true|false}

Use com a flag --transfer_run. Para listar mensagens do registo de transferência para a execução de transferência especificada, defina como true. O valor predefinido é false.

--transfer_run={true|false}

Apresenta as execuções de transferência para a configuração de transferência especificada.

Por exemplo:

bq ls --transfer_run=true projects/myProject/locations/us/transferConfigs/12345

RESOURCE

A coleção cujos objetos quer listar. O recurso pode ser um conjunto de dados, um projeto, uma reserva ou uma configuração de transferência.

Para mais informações sobre a utilização do comando bq ls, consulte o seguinte:

bq mk

Use o comando bq mk para criar um recurso do BigQuery.

Synopsis

bq mk TYPE_FLAG [OTHER FLAGS] [ARGS]

Sinalizações e argumentos

O comando bq mk usa uma flag type que especifica o tipo de recurso a criar e flags adicionais que dependem do tipo de recurso.

TYPE_FLAG: defina uma das seguintes flags como true. A sua seleção especifica o tipo de recurso a criar.

O comando bq mk suporta a seguinte flag para todos os tipos de recursos:

--force={true|false} ou -f={true|false}
Para ignorar erros se já existir um recurso com o mesmo nome, defina como true. Se o recurso já existir, o código de saída é 0, mas a definição desta flag como true não faz com que o comando bq mk substitua o recurso. O valor predefinido é false.

O comando bq mk suporta flags adicionais, consoante o tipo de recurso que está a criar, conforme descrito nas secções seguintes.

bq mk --capacity_commitment

Para comprar um compromisso de capacidade, defina --capacity_commitment como true e use as seguintes flags:

--location=LOCATION
Especifica a localização do compromisso.
--plan=PLAN_TYPE

Especifica o tipo de plano de compromisso. Tem de ser um dos seguintes valores:

  • ANNUAL
  • THREE_YEAR

Os clientes que usam preços fixos antigos também podem usar um dos seguintes valores:

  • FLEX
  • MONTHLY
  • ANNUAL
--renewal_plan=RENEWAL_TYPE

Especifica o tipo de plano de renovação. Obrigatório para planos de compromisso de ANNUAL ou THREE_YEAR. Tem de ser um dos seguintes:

  • ANNUAL
  • THREE_YEAR
  • NONE

Os clientes que usam preços fixos antigos também podem usar um dos seguintes valores:

  • FLEX
  • MONTHLY
  • ANNUAL
--project_id=PROJECT_ID

Especifica o projeto que administra os espaços.

--slots=NUMBER_OF_BASELINE_SLOTS

Especifica o número de espaços base a comprar.

--edition=EDITION

A edição associada ao compromisso de capacidade. Tem de ser um dos seguintes:

  • ENTERPRISE
  • ENTERPRISE_PLUS

Para mais informações, consulte o artigo Compre espaços.

bq mk --connection

Cria uma ligação. São suportadas as seguintes flags:

--connection_type=CONNECTION_TYPE
O tipo de ligação, por exemplo, CLOUD_SQL para ligações do Cloud SQL.
--properties=PROPERTIES

Parâmetros específicos da ligação no formato JSON. Tem de especificar instanceId, database e type.

Se criar uma ligação do Spanner e quiser usar o Data Boost, inclua os pares "useParallelism":true e "useDataBoost":true.

--connection_credential=CONNECTION_CREDENTIAL

As credenciais da ligação no formato JSON. Têm de ser especificados username e password.

--project_id=PROJECT_ID

Especifica o ID do projeto ao qual a ligação pertence.

--location=LOCATION

Especifica a localização onde a associação vai ser armazenada.

--display_name=DISPLAY_NAME

Especifica um nome amigável opcional para a associação.

--description=DESCRIPTION

Especifica uma descrição opcional da associação.

--iam_role_id=ROLE_ID

Para o BigQuery Omni na AWS, especifica uma função de IAM que permite o acesso ao recurso.

Use o seguinte formato: "arn:aws:iam::AWS_ACCOUNT_ID:role/POLICY_NAME", onde:

  • AWS_ACCOUNT_ID é o número de ID do utilizador do AWS IAM da associação.
  • POLICY_NAME é o nome da política.

Exemplo: "arn:aws:iam::0123456789AB:policy/s3-read-role"

--tenant_id=TENANT_ID

Para o BigQuery Omni no Azure, especifica o ID do inquilino do diretório do Azure que contém a conta de armazenamento do Azure.

CONNECTION_ID

Especifica um ID da ligação opcional para a ligação. Se não for fornecido um ID de associação, é gerado automaticamente um ID exclusivo. O ID da associação pode conter letras, números e sublinhados.

Para mais informações, consulte o artigo Introdução às associações.

bq mk --dataset

Cria um conjunto de dados. São suportadas as seguintes flags:

--add_tags=TAGS
Especifica as etiquetas que está a anexar ao novo conjunto de dados, separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
--default_kms_key=KEY
Especifica o ID do recurso da chave do Cloud KMS predefinido para encriptar os dados da tabela num conjunto de dados se não for fornecida nenhuma chave explícita durante a criação ou a consulta da tabela.
--default_partition_expiration=SECONDS
Um número inteiro que especifica o tempo de expiração predefinido, em segundos, para todas as partições em tabelas particionadas recém-criadas no conjunto de dados. A hora de expiração de uma partição é definida para a data UTC da partição mais o valor inteiro. Se esta propriedade estiver definida, o respetivo valor substitui a expiração predefinida da tabela ao nível do conjunto de dados, se existir. Se fornecer a flag --time_partitioning_expiration quando criar ou atualizar uma tabela particionada, a data de validade da partição ao nível da tabela tem precedência sobre a data de validade da partição predefinida ao nível do conjunto de dados.
--default_table_expiration=SECONDS
Um número inteiro que especifica a duração total predefinida, em segundos, das tabelas recém-criadas num conjunto de dados. O tempo de expiração é definido para a hora UTC atual mais este valor.
--description=DESCRIPTION
Especifica a descrição do conjunto de dados.
--external_source=EXTERNAL_SOURCE
Especifica a origem de dados externa quando cria um conjunto de dados federado.
--label=KEY:VALUE
Especifica uma etiqueta para o conjunto de dados. Repita esta flag para especificar várias etiquetas.
--location=LOCATION ou --data_location=LOCATION
Especifica a localização do conjunto de dados. Prefira a flag --location porque a flag --data_location é uma flag antiga.
--max_time_travel_hours=HOURS
Especifica a duração em horas do período de tempo de viagem para o conjunto de dados. O valor --max_time_travel_hours tem de ser um número inteiro expresso em múltiplos de 24 (48, 72, 96, 120, 144, 168) entre 48 (2 dias) e 168 (7 dias). A predefinição é 168 horas se esta flag não for especificada.
--storage_billing_model=BILLING_MODEL

Especifica o modelo de faturação de armazenamento de um conjunto de dados. Defina o valor --storage_billing_model como PHYSICAL para usar bytes físicos ao calcular os custos de armazenamento ou como LOGICAL para usar bytes lógicos. LOGICAL é a predefinição.

Quando altera o modelo de faturação de um conjunto de dados, a alteração demora 24 horas a entrar em vigor.

Depois de alterar o modelo de faturação de armazenamento de um conjunto de dados, tem de aguardar 14 dias antes de poder alterar novamente o modelo de faturação de armazenamento.

Para mais informações, consulte o artigo Criar conjuntos de dados.

bq mk --materialized_view

Cria uma vista materializada. São suportadas as seguintes flags:

--enable_refresh={true|false}
Para desativar a atualização automática de uma vista materializada, defina o valor como false. A predefinição ao criar uma vista materializada é true.
--refresh_interval_ms=MILLISECONDS
Especifica o número de milissegundos para o intervalo de atualização de uma vista materializada. Se esta flag não for especificada, o intervalo de atualização predefinido para uma vista materializada com a atualização ativada é de 1 800 000 milissegundos, ou seja, 30 minutos.

Para mais informações, consulte o artigo Criar e usar vistas materializadas.

bq mk --reservation

Cria uma reserva com horários dedicados. São suportadas as seguintes flags:

--target_job_concurrency=CONCURRENCY
Especifica o número alvo de consultas que são executadas em simultâneo. O valor predefinido é 0, o que significa que a simultaneidade é calculada automaticamente com base no tamanho da reserva. Para mais informações, consulte o artigo Use filas de consultas.
--ignore_idle_slots={true|false}
Para restringir as tarefas executadas nesta reserva de modo que usem apenas as posições atribuídas à reserva, defina como true. O valor predefinido é false; as tarefas nesta reserva podem usar horários disponíveis de outras reservas ou horários que não estejam atribuídos a nenhuma reserva. Para mais informações, consulte o artigo Espaços inativos.
--location=LOCATION
Especifica a localização da reserva.
--project_id=PROJECT_ID
Especifica o projeto que detém a reserva.
--slots=NUMBER_OF_BASELINE_SLOTS
Especifica o número de espaços de base a atribuir a esta reserva.
--edition=EDITION
A edição associada ao compromisso de capacidade. Tem de ser uma das seguintes opções:
  • STANDARD
  • ENTERPRISE
  • ENTERPRISE_PLUS
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
O número de espaços de ajuste automático atribuídos à reserva. Este valor é igual ao valor do tamanho máximo da reserva menos o número de espaços base. Apenas disponível com o sinalizador --edition.
--max_slots=MAXIMUM_NUMBER_OF_SLOTS
O número máximo de espaços que a reserva vai consumir. Tem de ser configurado com a flag --scaling_mode (Pré-visualizar).
--scaling_mode=SCALING_MODE

O modo de dimensionamento da reserva. Tem de ser um dos seguintes:

  • IDLE_SLOTS_ONLY
  • ALL_SLOTS
  • AUTOSCALE_ONLY
  • SCALING_MODE_UNSPECIFIED

Tem de ser configurado com a flag --max_slots (Pré-visualização).

Para mais informações, consulte o artigo Crie uma reserva com horários dedicados.

bq mk --reservation_assignment

Atribui um projeto, uma pasta ou uma organização a uma reserva. São suportadas as seguintes flags:

--assignee_id=ASSIGNEE_ID
Especifica o ID da pasta, da organização ou do projeto.
--assignee_type=ASSIGNEE_TYPE
Especifica o tipo de entidade a atribuir à reserva. Uma das seguintes opções:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--job_type=JOB_TYPE
Especifica o tipo de tarefa a atribuir à reserva. Uma das seguintes opções:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
  • BACKGROUND
--location=LOCATION
Especifica a localização da reserva.
--project_id=PROJECT_ID
Especifica o projeto que detém a reserva.
--reservation_id=RESERVATION_ID
Especifica o ID da reserva.

Para mais informações, consulte Trabalhe com atribuições de reservas.

bq mk --table

Cria uma tabela. São suportadas as seguintes flags:

--add_tags=TAGS
Especifica as etiquetas que está a anexar à nova tabela, separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
--clustering_fields=COLUMNS
Uma lista separada por vírgulas de até quatro nomes de colunas que especifica os campos a usar para a agrupamento de tabelas. Se for especificado com a partição, a tabela é primeiro particionada e, em seguida, cada partição é agrupada em cluster com as colunas fornecidas.
--description=DESCRIPTION
Especifica a descrição da tabela.
--destination_kms_key=KEY
Especifica um Cloud KMS ID do recurso da chave para encriptar os dados da tabela de destino.
--expiration=SECONDS
Especifica a duração total da tabela. Se não especificar a flag --expiration , o BigQuery cria a tabela com o tempo de vida predefinido da tabela do conjunto de dados ou a tabela não expira.
--external_table_definition=STRING

Especifica uma definição de tabela para criar uma tabela externa.

Para tabelas externas do Cloud Storage e do Google Drive:

--external_table_definition={PATH_TO_FILE|DEFINITION}
O valor pode ser um caminho para um ficheiro que contenha uma definição de tabela (PATH_TO_FILE) ou uma definição de tabela inline (DEFINITION).
  • O formato do campo DEFINITION é SCHEMA@FORMAT=URI.
  • O formato do valor SCHEMA é uma lista de definições de colunas separadas por vírgulas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, e assim sucessivamente. Pode omitir o valor SCHEMA se o formato de dados for autodescritivo (como o Avro) ou se estiver a usar a deteção automática de esquemas.

  • O valor FORMAT especifica o formato de dados; um dos seguintes:

    • AVRO
    • CSV
    • DATASTORE_BACKUP (use este valor para o Filestore)
    • ICEBERG
    • NEWLINE_DELIMITED_JSON
    • ORC
    • PARQUET

Se especificar um ficheiro de definição de tabela, não lhe atribua uma extensão.

Por exemplo:

--external_table_definition=/tmp/tabledef
--external_table_definition=Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

Para tabelas externas do Bigtable, e tabelas do BigLake baseadas na AWS e no Azure:

--external_table_definition=PATH_TO_FILE
O valor tem de ser um caminho para um ficheiro que contenha uma definição de tabela.

Para tabelas do BigLake baseadas no Cloud Storage:

--external_table_definition=FORMAT=BUCKET_PATH@REGION.CONNECTION_NAME :

  • O valor FORMAT especifica o formato de dados; um dos seguintes:

    • AVRO
    • CSV
    • NEWLINE_DELIMITED_JSON
    • ICEBERG
    • ORC
    • PARQUET
  • BUCKET_PATH é o caminho para um ou mais ficheiros no Cloud Storage que contêm os dados da tabela BigLake. Pode especificar BUCKET_PATH nos seguintes formatos:

    • Para um único ficheiro: gs://bucket_name/[folder_name/]file_name.
    • Para vários ficheiros num único contentor: gs://bucket_name/[folder_name/]*.
    • Para vários ficheiros em vários contentores: gs://mybucket1/*,gs://mybucket2/folder5/*.

      Pode usar carateres universais para limitar os ficheiros incluídos na tabela do BigLake. Por exemplo, se o contentor tiver vários tipos de dados, pode fazer com que a tabela use apenas ficheiros PARQUET especificando gs://bucket_name/*.parquet. Para mais informações sobre a utilização de carateres universais, consulte o artigo Carateres universais de URI.

  • O valor REGION especifica a região ou várias regiões que contêm a associação.

  • O valor CONNECTION_NAME especifica o nome da ligação de recursos na nuvem a usar com esta tabela externa. A ligação determina que conta de serviço é usada para ler dados do Cloud Storage.

Para tabelas de objetos:

--external_table_definition=BUCKET_PATH@REGION.CONNECTION_NAME :

  • BUCKET_PATH é o caminho para o contentor do Cloud Storage que contém os objetos representados pela tabela de objetos, no formato gs://bucket_name/[folder_name/]*.Pode especificar vários contentores indicando vários caminhos, por exemplo, gs://mybucket1/*,gs://mybucket2/folder5/*.

    Pode usar carateres universais para limitar os objetos incluídos na tabela de objetos. Por exemplo, se o contentor tiver vários tipos de dados não estruturados, pode criar a tabela de objetos apenas sobre objetos PDF especificando gs://bucket_name/*.pdf. Para mais informações sobre a utilização de carateres universais, consulte o artigo Carateres universais de URI.

  • O valor REGION especifica a região ou várias regiões que contêm a associação.

  • O valor CONNECTION_NAME especifica o nome da ligação de recursos na nuvem a usar com esta tabela externa. A ligação determina que conta de serviço é usada para ler dados do Cloud Storage.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Especifica como interpretar os URIs de origem.

  • FILE_SYSTEM_MATCH: expande os URIs de origem listando os ficheiros do armazenamento de objetos. Este é o comportamento predefinido se FileSetSpecType não estiver definido.
  • NEW_LINE_DELIMITED_MANIFEST: indica que os URIs fornecidos são ficheiros de manifesto delimitados por novas linhas, com um URI por linha. Os URIs com carateres universais não são suportados nos ficheiros de manifesto, e todos os ficheiros de dados referenciados têm de estar no mesmo contentor que o manifesto.

Por exemplo, se tiver um URI de origem de "gs://bucket/path/file" e o file_set_spec_type for FILE_SYSTEM_MATCH, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor de file_set_spec_type for NEW_LINE_DELIMITED_MANIFEST, cada linha no ficheiro é interpretada como um URI que aponta para um ficheiro de dados.

--reference_file_schema_uri=URI

Especifica o caminho para um ficheiro de referência com o esquema de tabela esperado para criar tabelas externas. Equivalente a ExternalDataConfiguration.referenceFileSchemaUri. Esta flag está ativada para os formatos Avro, ORC e PARQUET.

--label=KEY:VALUE

Especifica uma etiqueta para a tabela. Repita esta flag para especificar várias etiquetas.

--max_staleness=INTERVAL

Especifica se as operações contra a tabela usam metadados em cache e qual a antiguidade máxima dos metadados em cache para que a operação os use.

Aplicável a tabelas do BigLake e tabelas de objetos.

Para desativar a colocação em cache de metadados, especifique 0. Esta é a predefinição.

Para ativar o armazenamento em cache de metadados, especifique um valor de intervalo entre 30 minutos e 7 dias, usando o formato Y-M D H:M:S descrito na documentação do INTERVAL tipo de dados. Por exemplo, especifique 0-0 0 4:0:0 para um intervalo de dados desatualizados de 4 horas. Com este valor, as operações na tabela usam metadados em cache se tiverem sido atualizados nas últimas 4 horas. Se os metadados em cache forem mais antigos, a operação recorre à obtenção de metadados do Cloud Storage.

--object_metadata=STRING

Defina o valor desta flag como SIMPLE quando criar uma tabela de objetos.

Só é necessário quando cria uma tabela de objetos.

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Especifica opções para uma partição de intervalo de números inteiros, da seguinte forma:

  • column_name é a coluna usada para criar as partições de intervalo de números inteiros.
  • start é o início da partição por intervalo, inclusive.
  • end é a partição de intervalo final, exclusiva.
  • interval é a largura de cada intervalo na partição.

Por exemplo:

--range_partitioning=customer_id,0,10000,100

--require_partition_filter={true|false}

Para exigir um filtro de partição para consultas sobre a tabela fornecida, defina como true. Esta flag aplica-se apenas a tabelas particionadas. O valor predefinido é false.

--schema={SCHEMA_FILE|SCHEMA}

Especifica o caminho para um ficheiro de esquema JSON local ou uma lista separada por vírgulas de definições de colunas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e assim sucessivamente. Se usar um ficheiro de esquema, não lhe atribua uma extensão.

Exemplos:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

--time_partitioning_expiration=SECONDS

Um número inteiro que especifica (em segundos) quando uma partição baseada no tempo deve ser eliminada. O tempo de expiração é avaliado como a data UTC da partição mais o valor inteiro. Um número negativo indica que não existe data de validade.

--time_partitioning_field=COLUMN_NAME

Especifica o campo usado para determinar como criar uma partição baseada no tempo. Se a criação de partições com base no tempo estiver ativada sem este valor, a tabela é particionada com base no tempo de carregamento.

--time_partitioning_type=INTERVAL

Ativa a partição baseada no tempo numa tabela e define o tipo de partição. Use um dos seguintes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR
--use_avro_logical_types={true|false}

Se a parte FORMAT da flag --external_table_definition estiver definida como AVRO, esta flag especifica se deve converter os tipos lógicos nos respetivos tipos correspondentes (como TIMESTAMP) em vez de usar apenas os respetivos tipos não processados (como INTEGER).

--parquet_enable_list_inference={true|false}

Se a parte FORMAT do sinalizador --external_table_definition estiver definida como PARQUET, este sinalizador especifica se deve usar a inferência de esquemas para tipos lógicos LIST do Parquet.

--parquet_enum_as_string={true|false}

Se a parte FORMAT do indicador --external_table_definition estiver definida como PARQUET, este indicador especifica se os tipos lógicos do Parquet devem ser inferidos como valores STRING.ENUM

Para mais informações, consulte o artigo Criar e usar tabelas.

bq mk --transfer_config

Cria uma configuração de transferência. São suportadas as seguintes flags:

--data_source=DATA_SOURCE
Especifica a origem de dados. Obrigatório quando cria uma configuração de transferência. Use um dos seguintes valores:
--display_name=DISPLAY_NAME
Especifica o nome a apresentar da configuração de transferência.
--no_auto_scheduling={true|false}
Desativa o agendamento automático de execuções de transferência de dados para esta configuração. O valor predefinido é false.
--params={"PARAMETER":"VALUE"} ou -p={"PARAMETER":"VALUE"}
Especifica os parâmetros da configuração de transferência no formato JSON. Os parâmetros variam consoante a origem de dados.
--refresh_window_days=DAYS
Um número inteiro que especifica o período de atualização da configuração de transferência em dias. O valor predefinido é 0.
--service_account_name=SERVICE_ACCOUNT
Especifica uma conta de serviço a ser usada como a credencial para a configuração de transferência.
--target_dataset=DATASET
Especifica o conjunto de dados de destino para a configuração de transferência.
--table_filter=TABLES
Usado apenas com a origem de dados google_ads. O parâmetro TABLES é uma lista separada por vírgulas de tabelas a incluir na transferência. Para excluir uma tabela, adicione um hífen (-) antes do nome. O valor predefinido inclui todas as tabelas na transferência.
--destination_kms_key=KEY
Especifica um ID do recurso da chave do Cloud KMS para encriptar os dados da tabela de destino.

Para obter informações sobre a utilização do comando bq mk com o Serviço de transferência de dados do BigQuery, consulte o seguinte:

bq mk --transfer_run

Cria uma execução de transferência de dados na hora ou no intervalo de tempo especificado através da configuração de transferência de dados especificada.

Synopsis
bq mk --transfer_run [--run_time=RUN_TIME | --start_time=START_TIME --end_time=END_TIME] CONFIG

São suportadas as seguintes flags:

--run_time=RUN_TIME
Uma data/hora que especifica a hora para agendar a execução da transferência de dados.
--start_time=START_TIME
Uma data/hora que especifica a hora de início de um intervalo de execuções de transferência de dados.
--end_time=END_TIME
Uma data/hora que especifica a hora de fim de um intervalo de execuções de transferência de dados.

O formato dos carimbos de data/hora é RFC3339 UTC "Zulu".

O argumento CONFIG especifica uma configuração de transferência de dados pré-existente.

Exemplos
bq mk --transfer_run \
      --run_time=2021-01-20T17:00:00.00Z \
      projects/p/locations/l/transferConfigs/c
bq mk --transfer_run \
      --start_time=2020-12-19T16:39:57-08:00 \
      --end_time=2020-12-19T20:39:57-08:00 \
      projects/p/locations/l/transferConfigs/c

bq mk --view

Cria uma visualização. São suportadas as seguintes flags:

--add_tags=TAGS
Especifica as etiquetas que está a anexar à nova visualização, separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
--description=DESCRIPTION
Especifica a descrição da vista.
--expiration=SECONDS
Especifica a duração total da vista. Se SECONDS for 0, a visualização não expira. Se não especificar a flag --expiration, o BigQuery cria a vista com o tempo de vida predefinido da tabela do conjunto de dados.
--label=KEY:VALUE
Especifica uma etiqueta para a vista. Repita esta flag para especificar várias etiquetas.
--use_legacy_sql={true|false}
Defina como false para usar uma consulta GoogleSQL para criar uma vista. O valor predefinido é determinado pelas suas definições de configuração. Se a definição de configuração não for especificada, o valor predefinido é true; usa SQL antigo.
--view_udf_resource=FILE
Especifica o URI do Cloud Storage ou o caminho para um ficheiro de código local que é carregado e avaliado imediatamente como um recurso de função definida pelo utilizador usado pela consulta SQL de uma vista. Repita esta flag para especificar vários ficheiros.

Para mais informações, consulte o artigo Criar visualizações de propriedade.

bq mkdef

Use o comando bq mkdef para criar uma definição de tabela no formato JSON para dados armazenados no Cloud Storage ou no Google Drive.

Synopsis

bq mkdef [FLAGS] URI [ > FILE ]

Sinalizações e argumentos

O comando bq mkdef usa as seguintes flags e argumentos:

--autodetect={true|false}
Especifica se deve usar a deteção automática de esquemas para dados CSV e JSON. A predefinição é false.
--connection_id=CONNECTION_ID
O ID de um recurso de ligação a usar para a autenticação.
--hive_partitioning_mode

Especifica como determinar o esquema de partição quando o BigQuery lê dados. São suportados os seguintes modos:

  • AUTO: inferir automaticamente os nomes e os tipos das chaves de partição.
  • STRINGS: inferir automaticamente os nomes das chaves de partição. Todos os tipos são tratados como strings.
  • CUSTOM: especifique o esquema de partição no prefixo do URI de origem.

O valor predefinido é AUTO.

--hive_partitioning_source_uri_prefix

Especifica o prefixo comum para os URI de origem. O valor do prefixo comum é a parte do URI que precede imediatamente a codificação da chave de partição. Se especificou CUSTOM para o modo, também tem de identificar o esquema de partição.

Por exemplo, considere ficheiros com a seguinte estrutura:

  • gs://bucket/path_to_table/dt=2019-06-01/country=USA/id=7/file.avro
  • gs://bucket/path_to_table/dt=2019-05-31/country=CA/id=3/file.avro

Se usar os modos AUTO ou STRINGS, os seguintes valores são aceitáveis:

  • gs://bucket/path_to_table
  • gs://bucket/path_to_table/

Se usar o modo CUSTOM, os seguintes valores são aceitáveis:

  • gs://bucket/path_to_table/{dt:DATE}/{country:STRING}/{id:INTEGER}
  • gs://bucket/path_to_table/{dt:STRING}/{country:STRING}/{id:INTEGER}
  • gs://bucket/path_to_table/{dt:DATE}/{country:STRING}/{id:STRING}

Para mais informações sobre a utilização do comando bq mkdef, consulte o artigo Criar um ficheiro de definição de tabela para uma origem de dados externa.

--ignore_unknown_values={true|false} ou -i={true|false}
Especifica se devem ser ignorados os valores numa linha que não estejam presentes no esquema. A predefinição é false.
--metadata_cache_mode=STRING

Especifica se a cache de metadados da tabela é atualizada de forma automática ou manual.

Defina como AUTOMATIC para que a cache de metadados seja atualizada num intervalo definido pelo sistema, normalmente entre 30 e 60 minutos.

Defina como MANUAL se quiser atualizar a cache de metadados de acordo com uma programação que determinar. Neste caso, pode chamar o procedimento do sistema BQ.REFRESH_EXTERNAL_METADATA_CACHE para atualizar a cache.

Tem de definir a sinalização --metadata_cache_mode se definir a sinalização --max_staleness com o comando bq mk.

--parquet_enable_list_inference={true|false}

Se source_format estiver definido como PARQUET, esta flag especifica se deve usar a inferência de esquemas para tipos lógicos Parquet LIST. A predefinição é false.

--parquet_enum_as_string={true|false}

Se source_format estiver definido como PARQUET, esta flag especifica se deve inferir os tipos lógicos do Parquet como valores STRING.ENUM A predefinição é false.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Especifica como interpretar os URIs de origem.

  • FILE_SYSTEM_MATCH: expande os URIs de origem listando os ficheiros do armazenamento de objetos. Este é o comportamento predefinido se FileSetSpecType não estiver definido.
  • NEW_LINE_DELIMITED_MANIFEST: indica que os URIs fornecidos são ficheiros de manifesto delimitados por novas linhas, com um URI por linha. Os URIs com carateres universais não são suportados nos ficheiros de manifesto, e todos os ficheiros de dados referenciados têm de estar no mesmo contentor que o manifesto.

Por exemplo, se tiver um URI de origem de "gs://bucket/path/file" e o file_set_spec_type for FILE_SYSTEM_MATCH, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor de file_set_spec_type for NEW_LINE_DELIMITED_MANIFEST, cada linha no ficheiro é interpretada como um URI que aponta para um ficheiro de dados.

--source_format=FORMAT

Especifica o formato dos dados de origem. Use um dos seguintes valores:

  • AVRO
  • CSV
  • DATASTORE_BACKUP (use este valor para o Filestore)
  • GOOGLE_SHEETS
  • NEWLINE_DELIMITED_JSON
  • ORC
  • PARQUET

O valor predefinido é CSV.

--use_avro_logical_types={true|false}

Se a flag --source_format estiver definida como AVRO, esta flag especifica se deve converter os tipos lógicos nos respetivos tipos correspondentes (como TIMESTAMP) em vez de usar apenas os respetivos tipos brutos (como INTEGER). O valor predefinido é false.

bq partition

Use o comando bq partition para converter um grupo de tabelas com sufixos de unidades de tempo, como tabelas que terminam em YYYYMMDD para a partição por data, em tabelas particionadas.

Synopsis

bq partition [FLAGS] SOURCE_TABLE_BASE_NAME PARTITION_TABLE

Sinalizações e argumentos

O comando bq partition usa as seguintes flags e argumentos:

--no_clobber={true|false} ou -n={true|false}
Para não permitir a substituição de uma partição existente, defina como true. O valor predefinido é false; se a partição existir, é substituída.
--time_partitioning_expiration=SECONDS
Um número inteiro que especifica (em segundos) quando uma partição baseada no tempo deve ser eliminada. O tempo de expiração é avaliado como a data UTC da partição mais o valor inteiro. Um número negativo indica que não existe data de validade.
--time_partitioning_type=INTERVAL

Especifica o tipo de partição. A tabela seguinte indica os valores possíveis para a flag INTERVAL e o formato time-unit-suffix esperado para cada um:

INTERVAL Sufixo
HOUR YYYYMMDDHH
DAY YYYYMMDD
MONTH YYYYMM
YEAR YYYY
SOURCE_TABLE_BASE_NAME

O nome base do grupo de tabelas com sufixos de unidades de tempo.

PARTITION_TABLE

O nome da tabela particionada de destino.

Para mais informações sobre a utilização do comando bq partition, consulte o artigo Converter tabelas divididas por data em tabelas particionadas por tempo de carregamento.

bq query

Use o comando bq query para criar uma tarefa de consulta que execute a consulta SQL especificada.

Synopsis

bq query [FLAGS] 'QUERY'

Sinalizações e argumentos

O comando bq query usa as seguintes flags e argumentos:

--allow_large_results={true|false}
Para ativar tamanhos de tabelas de destino grandes para consultas SQL antigas, defina como true. O valor predefinido é false.
--append_table={true|false}
Para anexar dados a uma tabela de destino, defina como true. O valor predefinido é false.
--batch={true|false}
Para executar a consulta no modo de lote, defina como true. O valor predefinido é false.
--clustering_fields=COLUMNS
Uma lista separada por vírgulas de até quatro nomes de colunas que especifica os campos a usar para agrupar a tabela de destino numa consulta. Se for especificado com a partição, a tabela é primeiro particionada e, em seguida, cada partição é agrupada usando as colunas fornecidas.
--connection_property=KEY=VALUE

Um par de chave-valor que lhe permite especificar propriedades ao nível da ligação para personalizar o comportamento da consulta. Repita esta flag para especificar propriedades adicionais.

As propriedades de associação suportadas são as seguintes:

  • dataset_project_id: representa o projeto predefinido para conjuntos de dados que são usados na consulta, semelhante à @@dataset_project_id variável do sistema.
  • query_label: associa a consulta a uma determinada etiqueta de tarefa. Se estiver definido, todas as consultas subsequentes num script ou numa sessão têm esta etiqueta. Para ver detalhes sobre os requisitos de formatação de etiquetas de consultas, consulte o campo labels no recurso JobConfiguration.
  • service_account: especifica uma conta de serviço a usar para executar a consulta. Por exemplo, --connection_property=service_account=myserviceaccount@project.iam.gserviceaccount.com.
  • session_id: associa a consulta a uma determinada sessão.
  • time_zone: representa o fuso horário predefinido a usar para executar a consulta.
--continuous={true|false}

Para executar uma consulta contínua, defina como true. O valor predefinido é false.

--destination_kms_key=KEY

Especifica um ID do recurso da chave do Cloud KMS para encriptar os dados da tabela de destino.

--destination_schema={PATH_TO_FILE|SCHEMA}

O caminho para um ficheiro de esquema JSON local ou uma lista de definições de colunas separadas por vírgulas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE.

As alterações ao esquema ocorrem numa operação separada da execução da consulta. Se escrever resultados de consultas numa tabela especificando a flag --destination_table e, posteriormente, a consulta gerar uma exceção, é possível que as alterações ao esquema sejam ignoradas. Se isto ocorrer, verifique o esquema da tabela de destino e, se necessário, atualize-o manualmente.

--destination_table=TABLE

Quando especificado, os resultados da consulta são guardados em TABLE. Especifique TABLE no seguinte formato: PROJECT:DATASET.TABLE. Se PROJECT não for especificado, é assumido o projeto atual. Se a flag --destination_table não for especificada, os resultados da consulta são guardados numa tabela temporária.

Exemplos:

--destination_table myProject:myDataset.myTable
--destination_table myDataset.myTable

--dry_run={true|false}

Quando especificada, a consulta é validada, mas não executada.

--external_table_definition={TABLE::PATH_TO_FILE|TABLE::DEFINITION}

Especifica o nome da tabela e a definição da tabela para uma consulta de tabela externa. A definição da tabela pode ser um caminho para um ficheiro de esquema JSON local ou uma definição da tabela inline. O formato para fornecer a definição da tabela inline é SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. O formato do valor SCHEMA é uma lista de definições de colunas separadas por vírgulas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, e assim sucessivamente. Se usar um ficheiro de definição de tabela, não lhe atribua uma extensão.

Por exemplo:

--external_table_definition=myTable::/tmp/tabledef
--external_table_definition=myTable::Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

Repita esta flag para consultar várias tabelas.

--flatten_results={true|false}

Para não permitir o nivelamento de campos aninhados e repetidos nos resultados de consultas SQL antigas, defina como false. O valor predefinido é true.

--label=KEY:VALUE

Especifica uma etiqueta para a tarefa de consulta. Repita esta flag para especificar várias etiquetas.

--max_rows=MAX_ROWS ou -n=MAX_ROWS

Um número inteiro que especifica o número de linhas a devolver nos resultados da consulta. O valor predefinido é 100.

--maximum_bytes_billed=MAX_BYTES

Um número inteiro que limita os bytes faturados para a consulta. Se a consulta exceder o limite, falha (sem incorrer numa cobrança). Se esta flag não for especificada, os bytes faturados são definidos como a predefinição do projeto.

--max_statement_results=VALUE

Um número inteiro que especifica o número máximo de declarações de scripts apresentadas para os resultados da consulta. O valor predefinido é 100.

--min_completion_ratio=RATIO

[Experimental] Um número de 0 a 1,0 que especifica a fração mínima de dados que tem de ser analisada antes de uma consulta ser devolvida. Se a flag não for especificada, é usado o valor do servidor predefinido 1.0.

--parameter={PATH_TO_FILE|PARAMETER}

Um ficheiro JSON que contém uma lista de parâmetros de consulta ou um parâmetro de consulta no formato NAME:TYPE:VALUE. Um nome vazio cria um parâmetro posicional. Se TYPE for omitido, é assumido o tipo STRING. NULL especifica um valor nulo. Repita esta flag para especificar vários parâmetros.

Por exemplo:

--parameter=/tmp/queryParams
--parameter=Name::Oscar
--parameter=Count:INTEGER:42

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Use com a flag --destination_table. Especifica opções para a partição de intervalos de números inteiros na tabela de destino. O valor é uma lista separada por vírgulas no formato column_name,start,end,interval, em que

  • column_name é a coluna usada para criar as partições de intervalo de números inteiros.
  • start é o início da partição por intervalo, inclusive.
  • end é a partição de intervalo final, exclusiva.
  • interval é a largura de cada intervalo na partição.

Por exemplo:

--range_partitioning=customer_id,0,10000,100

--replace={true|false}

Para substituir a tabela de destino pelos resultados da consulta, defina como true. Todos os dados e esquemas existentes são apagados. Qualquer chave do Cloud KMS também é removida, a menos que especifique a flag --destination_kms_key. O valor predefinido é false.

--require_cache={true|false}

Se especificado, execute a consulta apenas se for possível obter resultados da cache.

--require_partition_filter={true|false}

Se for especificado, é necessário um filtro de partição para consultas na tabela fornecida. Esta flag só pode ser usada com uma tabela particionada.

**--reservation_id=RESERVATION

Pré-visualizar. Se especificado, a reserva na qual a consulta é executada.

--rpc={true|false}

Para usar a API de consulta no estilo RPC em vez do método jobs.insert da API REST, defina como true. O valor predefinido é false.

--schedule="SCHEDULE"

Transforma uma consulta numa consulta agendada recorrente. É necessário um agendamento que indique a frequência com que a consulta deve ser executada.

Exemplos:

--schedule="every 24 hours"
--schedule="every 3 hours"

Para uma descrição da sintaxe da programação, consulte o artigo Formatar a programação.

--schema_update_option=OPTION

Quando acrescenta dados a uma tabela numa tarefa de carregamento ou numa tarefa de consulta, ou quando substitui uma partição de tabela, especifica como atualizar o esquema da tabela de destino. Use um dos seguintes valores:

  • ALLOW_FIELD_ADDITION: permitir a adição de novos campos.
  • ALLOW_FIELD_RELAXATION: permitir a flexibilização dos campos REQUIRED para NULLABLE.

Repita esta flag para especificar várias opções de atualização do esquema.

--start_row=ROW_NUMBER ou -s=ROW_NUMBER

Um número inteiro que especifica a primeira linha a devolver no resultado da consulta. O valor predefinido é 0.

--target_dataset=DATASET

Quando especificado com --schedule, atualiza o conjunto de dados de destino para uma consulta agendada. A consulta tem de ser DDL ou DML.

--time_partitioning_expiration=SECONDS

Use com a flag --destination_table. Um número inteiro que especifica (em segundos) quando uma partição baseada no tempo deve ser eliminada. O tempo de expiração é avaliado como a data UTC da partição mais o valor inteiro. Um número negativo indica que não existe validade.

--time_partitioning_field=COLUMN_NAME

Use com a flag --destination_table. Especifica a coluna de partição para a partição baseada no tempo. Se a criação de partições com base no tempo estiver ativada sem este valor, a tabela é particionada com base no tempo de ingestão.

--time_partitioning_type=INTERVAL

Use com a flag --destination_table. Especifica o tipo de partição para a tabela de destino. Use um dos seguintes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR
--udf_resource=FILE

Esta flag aplica-se apenas a consultas SQL antigas. Especifica o URI do Cloud Storage ou o caminho para um ficheiro local que contenha um recurso de função definida pelo utilizador a ser usado por uma consulta SQL antiga. Repita esta flag para especificar vários ficheiros.

--use_cache={true|false}

Para não permitir o armazenamento em cache dos resultados da consulta, defina como false. O valor predefinido é true.

--use_legacy_sql={true|false}

Para executar uma consulta GoogleSQL, defina como false. O valor predefinido é determinado pelas suas definições de configuração. Se a definição de configuração não for especificada, o valor predefinido é true; o comando usa SQL antigo.

--job_timeout_ms={string (Int64Value)}

Especifica o tempo máximo para executar uma consulta em milissegundos. Se este limite de tempo for excedido, o BigQuery tenta parar a tarefa.

QUERY

A consulta que quer executar. Pode especificar a consulta através de um dos seguintes métodos:

  • Especifique uma string que contenha a consulta.

    Se precisar de usar literais de string adicionais na consulta, tem de seguir as regras de colocação entre aspas da shell que está a usar, como o Bash ou o PowerShell.

    O exemplo seguinte mostra uma abordagem típica no Bash, que consiste em usar aspas duplas para indicar os literais de string na consulta e, em seguida, incluir a própria consulta entre aspas simples:

    'SELECT * FROM mydataset.mytable WHERE column1 = "value";'
    

    Se estiver a copiar a consulta de outra localização, também tem de remover todos os comentários na consulta.

  • Transmita um script SQL que contenha a consulta. O exemplo seguinte mostra como transmitir um script SQL na shell Bash:

    bq query --use_legacy_sql=false < query.sql
    

Para mais informações sobre a utilização do comando bq query, consulte o artigo Execute uma consulta.

bq remove-iam-policy-binding

Use o comando bq remove-iam-policy-binding para obter a política de IAM para um recurso e remover uma vinculação da política num único passo. O recurso pode ser uma tabela ou uma vista.

Este comando é uma alternativa ao seguinte processo de três passos:

  1. Usando o comando bq get-iam-policy para obter o ficheiro de políticas (no formato JSON).
  2. Editar o ficheiro de política.
  3. Usar o comando bq set-iam-policy para atualizar a política sem a associação.

Synopsis

bq remove-iam-policy-binding FLAGS --member=MEMBER_TYPE:MEMBER --role=ROLE RESOURCE

Sinalizações e argumentos

O comando bq remove-iam-policy-binding usa as seguintes flags e argumentos:

--member=MEMBER_TYPE:MEMBER

Obrigatório. Use a flag --member para especificar o membro que faz parte da associação da política do IAM. A flag --member é obrigatória juntamente com a flag --role. Uma combinação de flags --member e --role é igual a uma associação.

O valor MEMBER_TYPE especifica o tipo de membro na associação da política de IAM. Use um dos seguintes valores:

  • user
  • serviceAccount
  • group
  • domain

O valor MEMBER especifica o endereço de email ou o domínio do membro na associação da política de IAM.

--role=ROLE

Obrigatório. Especifica a parte da função da associação da política de IAM. A flag --role é obrigatória juntamente com a flag --member. Uma combinação de sinalizações --member e --role é igual a uma associação.

--table={true|false} ou -t={true|false}

Opcional. Para remover uma associação da política IAM de uma tabela ou uma vista, defina-a como true. O valor predefinido é false.

RESOURCE é a tabela ou a vista cuja associação de políticas quer remover.

Para mais informações, consulte a referência da política de IAM.

bq rm

Use o comando bq rm para eliminar um recurso do BigQuery.

Synopsis

bq rm [FLAGS] RESOURCE

Sinalizações e argumentos

O comando bq rm usa as seguintes flags e argumentos:

--capacity_commitment={false|true}
Para eliminar um compromisso de capacidade, defina como true, especifique a localização do compromisso que quer remover através da flag --location e substitua RESOURCE pelo ID do compromisso que quer remover.
--dataset={true|false} ou -d={true|false}
Para eliminar um conjunto de dados, defina como true. O valor predefinido é false.
--force={true|false} ou -f={true|false}
Para eliminar um recurso sem aviso, defina como true. O valor predefinido é false.
--job={true|false} ou -j={true|false}
Para eliminar uma tarefa, defina como verdadeiro. O valor predefinido é false.
--model={true|false} ou -m={true|false}
Para eliminar um modelo do BigQuery ML, defina como true. A predefinição é false.
--recursive={true|false} ou -r{true|false}
Para eliminar um conjunto de dados e quaisquer tabelas, dados de tabelas ou modelos no mesmo, defina como true. O valor predefinido é false.
--reservation={true|false}
Para eliminar uma reserva, defina como true. O valor predefinido é false.
--reservation_assignment={true|false}
Para eliminar uma atribuição de reserva, defina como true. O valor predefinido é false.
--routine={true|false}
Para eliminar uma rotina, defina como true. O valor predefinido é false. Uma rotina pode ser uma função definida pelo utilizador persistente, uma função de tabela (pré-visualização) ou um procedimento armazenado.
--table={true|false} ou -t={true|false}
Para eliminar uma tabela ou uma vista, defina como true. O valor predefinido é false.
--transfer_config={true|false}
Para eliminar uma configuração de transferência, defina como true. O valor predefinido é false.
RESOURCE
O recurso que quer remover.

Para mais informações sobre a utilização do comando bq rm, consulte o seguinte:

bq set-iam-policy

Use o comando bq set-iam-policy para especificar ou atualizar a política de IAM para um recurso. O recurso pode ser uma tabela, uma vista ou uma reserva de horário. Depois de definir a política, a nova política é impressa em stdout. A política está no formato JSON.

O campo etag na política atualizada tem de corresponder ao valor etag da política atual. Caso contrário, a atualização falha. Esta funcionalidade impede atualizações simultâneas.

Pode obter a política atual e o valor etag de um recurso através do comando bq get-iam-policy.

Synopsis

bq set-iam-policy [FLAGS] RESOURCE FILE_NAME

Exemplos

bq set-iam-policy myDataset.myTable policy.json
bq set-iam-policy --reservation myReservation policy.json

Sinalizações e argumentos

O comando bq set-iam-policy usa as seguintes flags e argumentos.

--table={true|false} ou -t={true|false}
Opcional. Para definir a política IAM de uma tabela ou uma vista, defina-a como true. O valor predefinido é false.
--reservation={true|false}
Para definir a política IAM de uma reserva, defina-a como true (Pré-visualização). O valor predefinido é false. Quando esta flag é usada, RESOURCE é tratada como um identificador de reserva. A reserva pode ter prefixos opcionais de projeto e localização: myProject:myLocation.myReservation.

RESOURCE é a tabela ou a vista cuja política quer atualizar.

FILE_NAME é o nome de um ficheiro que contém a política no formato JSON.

Para mais informações sobre o comando bq set-iam-policy, consulte o artigo Controle o acesso aos recursos com a IAM.

bq show

Use o comando bq show para apresentar informações sobre um recurso.

Synopsis

bq show [FLAGS] [RESOURCE]

Sinalizações e argumentos

O comando bq show usa as seguintes flags e argumentos:

--assignee_id=ASSIGNEE
Quando usado com a flag --reservation_assignment, especifica o ID de uma pasta, uma organização ou um projeto. Use a flag --assignee_type para especificar que tipo de responsável apresentar.
--assignee_type=TYPE
Quando usado com a flag --reservation_assignment, especifica o tipo de entidade a apresentar. Use um dos seguintes valores:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--connection={true|false}
Para mostrar informações sobre uma associação, defina como true. O valor predefinido é false. Para mais informações, consulte o artigo Ver um recurso de associação.
--dataset={true|false} ou -d={true|false}
Para mostrar informações sobre um conjunto de dados, defina como true. O valor predefinido é false.
--encryption_service_account={true|false}
Para mostrar a conta de serviço de encriptação de um projeto, se existir, ou criar uma se não existir, defina como true. O valor predefinido é false. Use com a flag --project_id.
--job={true|false} ou -j={true|false}
Para mostrar informações sobre uma tarefa, defina como true. O valor predefinido é false.
--job_type=JOB_TYPE
Quando usado com a flag --reservation_assignment, especifica o tipo de tarefa das atribuições de reservas que quer apresentar. Use um dos seguintes valores:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
--model={true|false} ou -m={true|false}
Para mostrar informações sobre um modelo do BigQuery ML, defina como true. O valor predefinido é false.
--reservation={true|false}
Para mostrar informações sobre uma reserva, defina como true. O valor predefinido é false.
--reservation_assignment={true|false}
Quando definido como true, o comando apresenta atribuições de reservas para uma pasta, uma organização ou um projeto especificado. O comando apresenta as atribuições explícitas do recurso de destino, se existirem. Caso contrário, apresenta as atribuições herdadas dos recursos principais. Por exemplo, um projeto pode herdar atribuições da respetiva pasta principal. Quando usar esta flag, aplicam-se as flags --job_type, --assignee_type e --assignee_id. O valor predefinido é false.
--routine={true|false}
Para mostrar informações sobre uma rotina, defina como true. O valor predefinido é false. Uma rotina pode ser uma função definida pelo utilizador persistente, uma função de tabela (pré-visualização) ou um procedimento armazenado.
--schema={true|false}
Para apresentar apenas o esquema da tabela, defina como true. O valor predefinido é false.
--transfer_config={true|false}
Para apresentar informações sobre uma configuração de transferência, defina como true. O valor predefinido é false.
--transfer_run={true|false}
Para apresentar informações sobre uma execução de transferência, defina como true. O valor predefinido é false.
--view={true|false}
Para apresentar informações sobre uma visualização de propriedade, defina como true. O valor predefinido é false.
RESOURCE
O recurso cujas informações quer apresentar.

Para mais informações sobre a utilização do comando bq show, consulte o seguinte:

bq update

Use o comando bq update para alterar um recurso.

Synopsis

bq update [FLAGS] [RESOURCE]

Sinalizações e argumentos

O comando bq update usa as seguintes flags e argumentos:

--add_tags=TAGS
Só está disponível em conjuntos de dados e tabelas. Especifica as etiquetas que está a anexar ao recurso, separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
O número de espaços de ajuste automático atribuídos à reserva. Este valor é igual ao valor do tamanho máximo da reserva menos o número de espaços base. Apenas disponível com a flag --reservation e se a reserva tiver sido criada com uma edição.
--capacity_commitment={true|false}
Para atualizar uma consolidação de capacidade, defina como true. Use esta flag com as flags --merge, --plan, --renewal_plan, --split e --slots.
--clear_all_tags={true|false}
Só está disponível em conjuntos de dados e tabelas. Para limpar todas as etiquetas de um recurso, defina como true. O valor predefinido é false.
--clear_label=KEY:VALUE
Remove uma etiqueta do recurso. Use o formato KEY:VALUE para especificar a etiqueta a remover. Repita esta indicação para remover várias etiquetas.
--clustering_fields=COLUMNS
Atualiza a especificação de agrupamento de uma tabela. O valor COLUMNS é uma lista separada por vírgulas de nomes de colunas a usar para o agrupamento. Para remover o agrupamento, defina COLUMNS como "" (a string vazia). Para mais informações, consulte o artigo Modifique a especificação de agrupamento.
--target_job_concurrency=CONCURRENCY
Quando usado com a flag --reservation, especifica o número alvo de consultas que são executadas em simultâneo. O valor predefinido é 0, o que significa que a simultaneidade é definida automaticamente com base no tamanho da reserva. Para mais informações, consulte o artigo Use filas de consultas.
--dataset={true|false} ou -d={true|false}
Para atualizar um conjunto de dados, defina como true. O valor predefinido é false.
--default_kms_key=KEY
Especifica o ID do recurso da chave do Cloud KMS predefinido para encriptar dados de tabelas num conjunto de dados. A chave predefinida é usada se não for fornecida uma chave explícita para a criação de uma tabela ou uma consulta.
--default_partition_expiration=SECONDS

Um número inteiro que especifica o tempo de expiração predefinido, em segundos, para todas as partições em tabelas particionadas criadas recentemente no conjunto de dados. Esta flag não tem um valor mínimo.

O prazo de validade de uma partição é definido para a data UTC da partição mais o valor inteiro. Se esta propriedade estiver definida, substitui a expiração da tabela predefinida ao nível do conjunto de dados, se existir. Se fornecer a flag --time_partitioning_expiration quando criar ou atualizar uma tabela particionada, a data de validade da partição ao nível da tabela tem precedência sobre a data de validade da partição predefinida ao nível do conjunto de dados. Especifique 0 para remover uma validade existente.

--default_table_expiration=SECONDS

Um número inteiro que atualiza o tempo de vida predefinido, em segundos, para tabelas recém-criadas num conjunto de dados. A hora de expiração é definida para a hora UTC atual mais este valor. Especifique 0 para remover a validade existente.

--description=DESCRIPTION

Atualiza a descrição de um conjunto de dados, uma tabela, uma captura de ecrã da tabela, um modelo ou uma vista.

--destination_reservation_id=RESERVATION_ID

Quando usado com a flag --reservation_assignment, move uma atribuição de reserva existente para a reserva especificada. O valor é o ID da reserva de destino. Para mais informações, consulte o artigo Mova uma atribuição para uma reserva diferente.

--display_name=DISPLAY_NAME

Atualiza o nome a apresentar de uma configuração de transferência.

--etag=ETAG

Funciona como um filtro; atualiza o recurso apenas se o recurso tiver um ETag que corresponda à string especificada no argumento ETAG.

--expiration SECONDS

Para atualizar a validade da tabela, do modelo, da captura instantânea da tabela ou da vista, inclua esta flag. Substitua SECONDS pelo número de segundos desde a hora de atualização até à hora de validade. Para remover a data de validade de uma tabela, de um modelo, de uma captura instantânea da tabela ou de uma vista, defina o argumento SECONDS como 0.

--external_table_definition={TABLE::PATH_TO_FILE|TABLE::DEFINITION}

Atualiza uma tabela externa com a definição de tabela especificada. A definição da tabela pode ser um caminho para um ficheiro de definição de tabela JSON local ou uma definição de tabela inline no formato SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. O valor SCHEMA é uma lista de definições de colunas separadas por vírgulas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE. Se usar um ficheiro de definição de tabela, não lhe atribua uma extensão.

Por exemplo:

--external_table_definition=myTable::/tmp/tabledef
--external_table_definition=myTable::Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

--ignore_idle_slots={true|false}

Use com a flag --reservation. Para restringir as tarefas executadas na reserva especificada de modo que usem apenas os espaços atribuídos a essa reserva, defina como true. O valor predefinido é false. As tarefas na reserva especificada podem usar espaços disponíveis de outras reservas ou espaços que não estejam atribuídos a nenhuma reserva. Para mais informações, consulte o artigo Espaços inativos.

--max_staleness=INTERVAL

Especifica um valor INTERVAL que determina a desatualização máxima permitida ao consultar uma vista materializada ou uma tabela externa. O valor predefinido é 0-0 0 0:0:0.

Por exemplo:

  • 1 dia: 0-0 1 0:0:0
  • 1 hora: 0-0 0 1:0:0

Para usar esta flag, tem de especificar uma definição de tabela com a flag --external_table_definition.

--max_time_travel_hours=HOURS

Especifica a duração em horas do período de tempo de viagem para o conjunto de dados. O valor --max_time_travel_hours tem de ser um número inteiro expresso em múltiplos de 24 (48, 72, 96, 120, 144, 168) entre 48 (2 dias) e 168 (7 dias).

--merge={true|false}

Para unir dois compromissos de capacidade, defina --merge como true. Defina o sinalizador --capacity_commitment como true, especifique a localização dos compromissos que quer unir através do sinalizador --location e substitua RESOURCE pelos IDs dos dois compromissos que quer unir, separados por uma vírgula. Para mais informações, consulte o artigo Unir dois compromissos.

--metadata_cache_mode=METADATA_CACHE_MODE

Ativa a cache de metadados para uma tabela externa com uma ligação. Use um dos seguintes valores:

  • AUTOMATIC
  • MANUAL

Especifique AUTOMATIC para atualizar automaticamente os metadados em cache. Especifique MANUAL para parar a atualização automática. Para usar esta flag, tem de especificar uma definição de tabela com a flag --external_table_definition.

--model={true|false} ou -m={true|false}

Para atualizar os metadados de um modelo do BigQuery ML, defina como true. O valor predefinido é false.

--params={"PARAMETER":"VALUE"} or -p={"PARAMETER":"VALUE"}

Atualiza os parâmetros de uma configuração de transferência. Os parâmetros variam consoante a origem de dados. Para mais informações, consulte o artigo Introdução ao Serviço de transferência de dados do BigQuery.

--plan=PLAN

Quando usado com a flag --capacity_commitment, converte um compromisso de capacidade no plano de compromisso de duração mais longa especificado. Substitua PLAN por uma das seguintes opções:

  • ANNUAL
  • THREE_YEAR
--refresh_window_days=DAYS

Um número inteiro que especifica um intervalo de atualização atualizado (em dias) para uma configuração de transferência.

--remove_tags=TAG_KEYS

Disponível apenas em conjuntos de dados e tabelas. Especifica as etiquetas que está a remover do recurso, separadas por vírgulas. Por exemplo, 556741164180/env,myProject/department. Cada chave de etiqueta tem de ter o nome da chave com espaço de nomes.

--renewal_plan=PLAN

Quando usado com a flag --capacity_commitment, atualiza o plano de renovação para um compromisso de capacidade anual. Substitua PLAN por uma das seguintes opções:

  • ANNUAL
  • THREE_YEAR
  • NONE

Os clientes que usam preços fixos antigos também podem usar um dos seguintes valores:

  • FLEX
  • MONTHLY
  • ANNUAL
--reservation={true|false}

Especifica se uma reserva deve ser atualizada. O valor predefinido é false.

--reservation_assignment={true|false}

Especifica se deve atualizar uma atribuição de reserva. O valor predefinido é false.

--schema={SCHEMA_FILE|SCHEMA}

Especifica o caminho para um ficheiro de esquema JSON local ou uma lista separada por vírgulas de definições de colunas no formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e assim sucessivamente. Se usar um ficheiro de esquema, não lhe atribua uma extensão.

Por exemplo:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

--service_account_name=SERVICE_ACCOUNT

Especifica uma conta de serviço a ser usada como credencial para uma configuração de transferência.

--set_label=KEY:VALUE

Especifica uma etiqueta a atualizar. Para atualizar várias etiquetas, repita esta flag.

--slots=NUMBER_OF_BASELINE_SLOTS

Quando usado com os indicadores --capacity_commitment e --split, especifica o número de horários disponíveis de base a dividir de um compromisso de capacidade existente num novo compromisso. Substitua RESOURCE pelo ID do compromisso do qual quer fazer a divisão.

Quando usado com a flag --reservation, atualiza o número de vagas numa reserva.

--source=FILE

O caminho para um ficheiro JSON local que contém um payload usado para atualizar um recurso. Por exemplo, pode usar esta flag para especificar um ficheiro JSON que contenha um recurso dataset com uma propriedade access atualizada. O ficheiro é usado para substituir os controlos de acesso do conjunto de dados. O ficheiro JSON não pode incluir uma marca de ordem de bytes (BOM).

--split={true|false}

Quando definido como true e usado com a flag --capacity_commitment, especifica que quer dividir um compromisso de capacidade existente. Use a flag --location para especificar a localização do compromisso do qual quer fazer a divisão e use a flag --slots para especificar o número de posições que quer dividir. Substitua RESOURCE pelo ID do compromisso do qual quer fazer a divisão. Para mais informações, consulte o artigo Divida um compromisso.

--storage_billing_model=BILLING_MODEL

Especifica o modelo de faturação de armazenamento de um conjunto de dados. Defina o valor --storage_billing_model como PHYSICAL para usar bytes físicos ao calcular os custos de armazenamento ou como LOGICAL para usar bytes lógicos.

Quando altera o modelo de faturação de um conjunto de dados, a alteração demora 24 horas a entrar em vigor.

Depois de alterar o modelo de faturação de armazenamento de um conjunto de dados, tem de aguardar 14 dias antes de poder alterar novamente o modelo de faturação de armazenamento.

--table={true|false} ou -t={true|false}

Especifica se uma tabela deve ser atualizada. O valor predefinido é false.

--target_dataset=DATASET

Quando especificado, atualiza o conjunto de dados de destino para uma configuração de transferência.

--time_partitioning_expiration=SECONDS

Um número inteiro que é atualizado (em segundos) quando uma partição baseada no tempo deve ser eliminada. O tempo de expiração é avaliado como a data UTC da partição mais o valor inteiro. Um número negativo indica que não existe data de validade.

--time_partitioning_field=COLUMN_NAME

Atualiza o campo usado para determinar como criar uma partição baseada no tempo. Se a criação de partições com base no tempo estiver ativada sem este valor, a tabela é particionada com base no tempo de carregamento.

--time_partitioning_type=INTERVAL

Especifica o tipo de partição. Use um dos seguintes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR

Não é possível alterar o tipo de partição de uma tabela existente.

--transfer_config={true|false}

Especifica se deve atualizar uma configuração de transferência. O valor predefinido é false.

--update_credentials={true|false}

Especifica se as credenciais da configuração de transferência devem ser atualizadas. O valor predefinido é false.

--use_legacy_sql={true|false}

Definido como false para atualizar a consulta SQL de uma vista do SQL antigo para o GoogleSQL. O valor predefinido é determinado pelas suas definições de configuração. Se a definição de configuração não for especificada, o valor predefinido é true; a consulta usa SQL antigo.

--vertex_ai_model_id=VERTEX_AI_MODEL_ID

Quando especificado, atualiza o ID do modelo para um modelo do BigQuery ML registado no Registo de modelos do Vertex AI.

--view=QUERY

Quando especificado, atualiza a consulta SQL de uma vista.

--view_udf_resource=FILE

Atualiza o URI do Cloud Storage ou o caminho para um ficheiro de código local que é carregado e avaliado imediatamente como um recurso de função definida pelo utilizador na consulta SQL de uma vista. Repita esta flag para especificar vários ficheiros.

RESOURCE

O recurso que quer atualizar.

Para mais informações sobre a utilização do comando bq update, consulte o seguinte:

bq version

Use o comando bq version para apresentar o número da versão da sua ferramenta de linhas de comando bq.

Synopsis

bq version

bq wait

Use o comando bq wait para aguardar um número especificado de segundos até que uma tarefa seja concluída. Se não for especificado um trabalho, o comando aguarda que o trabalho atual termine.

Synopsis

bq wait [FLAGS] [JOB] [SECONDS]

Exemplos

bq wait
bq wait --wait_for_status=RUNNING 12345 100

Sinalizações e argumentos

O comando bq wait usa as seguintes flags e argumentos:

--fail_on_error={true|false}
Para devolver o êxito se a tarefa for concluída durante o tempo de espera, mesmo que a tarefa falhe, defina como false. O valor predefinido é true. Após o tempo de espera expirar, o comando termina com um erro se a tarefa ainda estiver em execução ou se a tarefa tiver sido concluída, mas falhado.
--wait_for_status=STATUS

Quando especificado, aguarda um estado de tarefa específico antes de sair. Use um dos seguintes valores:

  • PENDING
  • RUNNING
  • DONE

O valor predefinido é DONE.

JOB

Especifica a tarefa a aguardar. Pode usar o comando bq ls --jobs myProject para encontrar um identificador de tarefa.

SECONDS

Especifica o número máximo de segundos a aguardar até que a tarefa termine. Se introduzir 0, o comando procura a conclusão do trabalho e retorna imediatamente. Se não especificar um valor inteiro, o comando aguarda até que a tarefa termine.