Referência da ferramenta de linhas de comando bq
Este documento descreve a sintaxe, os comandos, os indicadores e os argumentos da bq
ferramenta 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ãostderr
: regista no erro padrãofalse
– 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 ambienteBIGQUERYRC
. 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 formatoPROJECT:DATASET
ouDATASET
. Se a partePROJECT
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 comofalse
quando a autenticação é feita através de uma conta de utilizador, a flag--use_google_auth
tem de estar definida comofalse
.--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 formatadasparse
: saída de tabela mais simplesprettyjson
: formato JSON fácil de lerjson
: JSON o mais compacto possívelcsv
: formato CSV com cabeçalho
Os elementos
pretty
,sparse
eprettyjson
destinam-se a ser legíveis por humanos.json
ecsv
destinam-se a ser usados por outro programa. Senone
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 comotrue
. 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 a0
, o comando regista pedidos e respostas do servidor HTTP para stderr, além de mensagens de erro. SeDEBUG_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
equery
. 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 comandobq 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 comotrue
, 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
comotrue
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:
- Usar o comando
bq get-iam-policy
para obter o ficheiro de política (no formato JSON). - Editar o ficheiro de política.
- 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
comotrue
. 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 comofalse
. 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:
- Crie uma cópia de uma tabela, de um clone de tabela ou de uma imagem instantânea de tabela.
- Crie um clone de tabela.
- Crie um instantâneo de tabela.
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 comandobq cp --clone
.--snapshot={true|false}
Para criar um instantâneo da tabela da tabela especificada no argumento
SOURCE_TABLE
, defina comotrue
. 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:
- Copie uma tabela
- Crie clones de tabelas
- Crie instantâneos de tabelas
- Restaure instantâneos de tabelas
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
outab
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
comotrue
. 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 comofalse
, 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 comofalse
, 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
forfalse
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, consulteload_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
outab
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 comotrue
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 comoNEWLINE_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
comoDATASTORE_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
paraJobConfigurationLoad.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
forfalse
, 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 camposALLOW_FIELD_RELAXATION
: permitir a flexibilização dos camposREQUIRED
paraNULLABLE
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 ofile_set_spec_type
forFILE_SYSTEM_MATCH
, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor defile_set_spec_type
forNEW_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 comoAVRO
, defina este sinalizador comotrue
para converter tipos lógicos nos respetivos tipos correspondentes (comoTIMESTAMP
) em vez de usar apenas os respetivos tipos não processados (comoINTEGER
).--decimal_target_types=DECIMAL_TYPE
Determina como converter um
Decimal
tipo lógico. Equivalente aJobConfigurationLoad.decimalTargetTypes
. Repita esta flag para especificar vários tipos de destino.--parquet_enum_as_string={true|false}
Se a flag
--source_format
estiver definida comoPARQUET
e quiser que o BigQuery infira os tipos lógicos do Parquet como valoresSTRING
, defina esta flag comotrue
.ENUM
A predefinição éfalse
.--parquet_enable_list_inference={true|false}
Se o sinalizador
--source_format
estiver definido comoPARQUET
, este sinalizador indica se deve usar a inferência de esquemas para tipos lógicos ParquetLIST
.--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:
- Carregar dados Avro
- Carregar dados CSV
- Carregar dados JSON
- Carregar dados ORC
- Carregar dados Parquet
- Carregar dados de exportações do Datastore
- Carregar dados de exportações do Firestore
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 formatolabels.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ógicoAND
e nãoOR
). Se quiser especificar mais de uma tripla, coloque o valorFILTER
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:
amazon_s3
- Transferência de dados do Amazon S3azure_blob_storage
- Transferência de dados do armazenamento de blobs do Azuredcm_dt
- Transferência de dados do Campaign Managergoogle_cloud_storage
- Transferência de dados do Cloud Storagecross_region_copy
- Cópia do conjunto de dadosdfp_dt
- Transferência de dados do Google Ad Managerdisplayvideo
- Transferência de dados do Display & Video 360google_ads
- Transferência de dados do Google Adsmerchant_center
– Transferência de dados do Google Merchant Centermysql
- Transferência de dados do MySQLplay
- Transferência de dados do Google Playscheduled_query
- Transferência de dados de consultas agendadassearch_ads
- Transferência de dados do Search Ads 360youtube_channel
- Transferência de dados do canal do YouTubeyoutube_content_owner
- Transferência de dados do proprietário do conteúdo do YouTuberedshift
- Migração do Amazon Redshifton_premises
- Migração do Teradata
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 comoRUN_ATTEMPT_UNSPECIFIED
. Para listar apenas a tentativa de execução mais recente, defina comoLATEST
. 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 comotrue
. 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:
- Gerir tarefas
- Apresentar conjuntos de dados num projeto
- Criar e usar tabelas
- Visualizações de fichas num conjunto de dados
- Trabalhar com transferências
- Capturas de ecrã de tabelas de fichas num conjunto de dados
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.
--capacity_commitment
: compre um compromisso de capacidade.--connection
: crie uma associação.--dataset
ou-d
: crie um conjunto de dados.--materialized_view
: crie uma vista materializada.--reservation
: crie uma reserva.--reservation_assignment
. Atribua uma pasta, um projeto ou uma organização a uma reserva.--table
ou-t
: crie uma tabela.--transfer_config
: crie uma configuração de transferência.--transfer_run
: crie uma execução de transferência para um intervalo de tempo.--view
: crie uma visualização.
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 comotrue
não faz com que o comandobq 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
ouTHREE_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
etype
.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
epassword
.--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
comoPHYSICAL
para usar bytes físicos ao calcular os custos de armazenamento ou comoLOGICAL
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 formatoFIELD:DATA_TYPE, FIELD:DATA_TYPE
, e assim sucessivamente. Pode omitir o valorSCHEMA
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 especificarBUCKET_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.
- Para um único ficheiro:
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 formatogs://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 ofile_set_spec_type
forFILE_SYSTEM_MATCH
, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor defile_set_spec_type
forNEW_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 doINTERVAL
tipo de dados. Por exemplo, especifique0-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 comoAVRO
, esta flag especifica se deve converter os tipos lógicos nos respetivos tipos correspondentes (comoTIMESTAMP
) em vez de usar apenas os respetivos tipos não processados (comoINTEGER
).--parquet_enable_list_inference={true|false}
Se a parte
FORMAT
do sinalizador--external_table_definition
estiver definida comoPARQUET
, este sinalizador especifica se deve usar a inferência de esquemas para tipos lógicosLIST
do Parquet.--parquet_enum_as_string={true|false}
Se a parte
FORMAT
do indicador--external_table_definition
estiver definida comoPARQUET
, este indicador especifica se os tipos lógicos do Parquet devem ser inferidos como valoresSTRING
.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:
amazon_s3
- Transferência de dados do Amazon S3azure_blob_storage
- Transferência de dados do armazenamento de blobs do Azuredcm_dt
- Transferência de dados do Campaign Managergoogle_cloud_storage
- Transferência de dados do Cloud Storagecross_region_copy
- Cópia do conjunto de dadosdfp_dt
- Transferência de dados do Google Ad Managerdisplayvideo
- Transferência de dados do Display & Video 360google_ads
- Transferência de dados do Google Adsmerchant_center
– Transferência de dados do Google Merchant Centermysql
- Transferência de dados do MySQLplay
- Transferência de dados do Google Playscheduled_query
- Transferência de dados de consultas agendadassearch_ads
- Transferência de dados do Search Ads 360youtube_channel
- Transferência de dados do canal do YouTubeyoutube_content_owner
- Transferência de dados do proprietário do conteúdo do YouTuberedshift
- Migração do Amazon Redshifton_premises
- Migração do Teradata
--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âmetroTABLES
é 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:
- Configure uma transferência do Amazon S3
- Configure uma transferência do Campaign Manager
- Configure uma transferência do Cloud Storage
- Configure uma transferência do Google Ad Manager
- Configure uma transferência do Google Ads
- Configure uma transferência do Google Merchant Center (beta)
- Configure uma transferência do Google Play
- Configure uma transferência do Search Ads 360 (beta)
- Configure uma transferência de canal do YouTube
- Configure uma transferência de proprietário do conteúdo do YouTube
- Migre dados do Amazon Redshift
- Migre dados do Teradata
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
for0
, 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
ouSTRINGS
, 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 sistemaBQ.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 comandobq mk
.--parquet_enable_list_inference={true|false}
Se
source_format
estiver definido comoPARQUET
, esta flag especifica se deve usar a inferência de esquemas para tipos lógicos ParquetLIST
. A predefinição éfalse
.--parquet_enum_as_string={true|false}
Se
source_format
estiver definido comoPARQUET
, esta flag especifica se deve inferir os tipos lógicos do Parquet como valoresSTRING
.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 ofile_set_spec_type
forFILE_SYSTEM_MATCH
, o ficheiro é usado diretamente como um ficheiro de dados. Se o valor defile_set_spec_type
forNEW_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 comoAVRO
, esta flag especifica se deve converter os tipos lógicos nos respetivos tipos correspondentes (comoTIMESTAMP
) em vez de usar apenas os respetivos tipos brutos (comoINTEGER
). 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 campolabels
no recursoJobConfiguration
.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
. EspecifiqueTABLE
no seguinte formato:PROJECT
:DATASET
.TABLE
. SePROJECT
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 valorSCHEMA
é uma lista de definições de colunas separadas por vírgulas no formatoFIELD: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. SeTYPE
for omitido, é assumido o tipoSTRING
.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 formatocolumn_name,start,end,interval
, em quecolumn_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 comotrue
. 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 camposREQUIRED
paraNULLABLE
.
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:
- Usando o comando
bq get-iam-policy
para obter o ficheiro de políticas (no formato JSON). - Editar o ficheiro de política.
- 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 substituaRESOURCE
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:
- Gerir conjuntos de dados
- Gerir tarefas
- Gerir tabelas
- Gerir vistas
- Trabalhar com transferências
- Eliminar instantâneos de tabelas
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:
- Ver informações sobre conjuntos de dados
- Criar e usar tabelas
- Receber informações sobre visualizações
- Trabalhar com transferências
- Gerir tarefas
- Receber informações sobre um resumo de uma tabela
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. Especifique0
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 argumentoSECONDS
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 valorSCHEMA
é uma lista de definições de colunas separadas por vírgulas no formatoFIELD: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 comotrue
. 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
.- 1 dia:
--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
comotrue
. Defina o sinalizador--capacity_commitment
comotrue
, especifique a localização dos compromissos que quer unir através do sinalizador--location
e substituaRESOURCE
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. EspecifiqueMANUAL
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. SubstituaPLAN
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. SubstituaPLAN
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. SubstituaRESOURCE
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. SubstituaRESOURCE
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
comoPHYSICAL
para usar bytes físicos ao calcular os custos de armazenamento ou comoLOGICAL
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:
- Atualizar propriedades do conjunto de dados
- Gerir tabelas
- Atualizar visualizações
- Atualizar etiquetas
- Trabalhar com transferências
- Atualizar os metadados da imagem instantânea da tabela
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.