Referencia de la herramienta de línea de comandos de bq

En este documento, se describe la sintaxis, los comandos, las marcas y los argumentos para bq, la herramienta de línea de comandos de BigQuery. Está destinado a usuarios que estén familiarizados con BigQuery, pero que quieran saber cómo usar un comando particular de la herramienta de línea de comandos de bq. Para obtener información general sobre cómo usar la herramienta de línea de comandos de bq, consulta Usa la herramienta de línea de comandos de bq.

Sinopsis

La herramienta de línea de comandos de bq usa el siguiente formato:

bq COMMAND [FLAGS] [ARGUMENTS]

Algunas marcas pueden usarse con varios comandos de la herramienta de línea de comandos de bq. Estas marcas se describen en la sección Marcas globales.

Otras marcas son específicas del comando, solo se pueden usar con un comando de herramienta de línea de comandos de bq en particular. Las marcas específicas de comandos se describen en las secciones de comandos.

Marcas booleanas

Algunas marcas de herramientas de línea de comandos de bq son booleanas. Puedes configurar el valor de la marca como true o false. La herramienta de línea de comandos de bq acepta los siguientes formatos para configurar marcas booleanas.

Valor Formato Ejemplo
true --FLAGNAME=true --debug=true
true --FLAGNAME --debug
false --FLAGNAME=false --debug=false
false --noFLAGNAME --nodebug

En este documento, se usa el formato --FLAGNAME=VALUE para marcas booleanas.

Todas las marcas booleanas son opcionales. Si no hay una marca, BigQuery usa el valor predeterminado de la marca.

Especifica valores para marcas

Cuando especificas un valor para una marca, el signo igual (=) es opcional. Por ejemplo, los siguientes dos comandos son equivalentes:

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

En este documento, se usa el signo igual para brindar mayor claridad.

Ayuda en línea

La documentación está disponible en la herramienta de línea de comandos de bq, de la siguiente manera:

Descripción Formato del comando de ayuda Ejemplo
Lista de todos los comandos con ejemplos bq help bq help
Descripción de las marcas globales bq --help bq --help
Descripción de un comando en particular bq help COMMAND bq help mk

Especificación de recursos

El formato para especificar un recurso depende del contexto. En algunos casos, el separador entre el proyecto y el conjunto de datos es de dos puntos (:) y, en otros casos, un punto (.). En la siguiente tabla, se describe cómo especificar una tabla de BigQuery en diferentes contextos.

Context Formato Ejemplo
bqHerramienta de línea de comandos PROJECT:DATASET.TABLE myProject:myDataset.myTable
Consulta de SQL estándar PROJECT.DATASET.TABLE myProject.myDataset.myTable
Consulta de SQL heredado PROJECT:DATASET.TABLE myProject:myDataset.myTable

Si no especificas un proyecto, BigQuery usa el proyecto actual. Por ejemplo, si el proyecto actual es myProject, BigQuery interpreta myDataset.myTable como myProject:myDataset.myTable (o myProject.myDataset.myTable).

Algunos identificadores de recursos deben estar entre comillas simples (`). Si tu identificador de recursos comienza con una letra o un carácter de guion bajo y contiene solo caracteres que son letras, números y guiones bajos, no es necesario que los cites. Sin embargo, si el identificador de recursos contiene otros tipos de caracteres o palabras clave reservadas, debes rodear el identificador (o la parte del identificador con caracteres especiales o palabras clave reservadas) con acentos graves. Para obtener más información, consulta Identificadores.

Marcas globales

Puedes usar las siguientes marcas con cualquier comando bq, cuando corresponda:

--api=ENDPOINT
Especifica el extremo de API al que se llamará. El valor predeterminado es https://www.googleapis.com.
--api_version=VERSION
Especifica la versión de la API que se usará. El predeterminado es v2.
--apilog=FILE

Registra todas las solicitudes y respuestas a la API en el archivo que especifica FILE. Los valores posibles son los siguientes:

  • la ruta de acceso de un archivo: los registros al archivo especificado
  • stdout: los registros de la salida estándar
  • stderr: los registros de un error estándar
  • false: las solicitudes y respuestas de API no se registran (predeterminado)
--bigqueryrc=PATH

Especifica la ruta al archivo de configuración de la herramienta de línea de comandos de bq. Si no especificas la marca --bigqueryrc, el comando usa la variable de entorno BIGQUERYRC. Si no se configura la variable de entorno, se usa $HOME/.bigqueryrc. Si ese archivo no existe, se usa ~/.bigqueryrc. Si deseas obtener más información, consulta Configura los valores predeterminados para marcas de línea de comandos.

--ca_certificates_file=PATH

Especifica la ubicación del archivo de Certificate Authority Service (CA).

--dataset_id=DATASET_ID

Especifica el conjunto de datos predeterminado que se usará con el comando. Esta marca se ignora cuando no es aplicable. Puedes especificar el argumento DATASET_ID con el formato PROJECT:DATASET o DATASET. Si falta la parte PROJECT, se usa el proyecto predeterminado. Puedes anular la configuración predeterminada del proyecto si especificas la marca --project_id.

--debug_mode={true|false}

Si se configura como true, se muestran objetos traceback en las excepciones de Python. El valor predeterminado es false.

--disable_ssl_validation={true|false}

Si se establece como true, habilita la validación del certificado HTTPS. El valor predeterminado es false.

--discovery_file=PATH

Especifica el archivo JSON que se debe leer para la detección.

--enable_gdrive={true|false}

Si se configura como false, solicita un token de OAuth nuevo sin permiso de Drive. El valor predeterminado es true. Solicita un token de OAuth nuevo con alcance de Drive.

--fingerprint_job_id={true|false}

Para usar un ID de trabajo derivado de una huella digital de la configuración del trabajo, configúralo como true. Esto evita que el mismo trabajo se ejecute varias veces por accidente. El valor predeterminado es false.

--format=FORMAT

Especifica el formato del resultado del comando. Usa uno de los siguientes valores:

  • pretty: genera una tabla con formato
  • sparse: genera una tabla más simple
  • prettyjson: formato JSON fácil de leer
  • json: JSON lo más compacto posible
  • csv: formato csv con encabezado

Las opciones pretty, sparse y prettyjson están diseñadas para que las pueda leer un ser humano. json y csv están diseñados para que los use otro programa. Si se especifica none, el comando no produce ningún resultado. Si la marca --format está ausente, se elige un formato de resultado apropiado según el comando.

--headless={true|false}

Para ejecutar la sesión bq sin interacción del usuario, configúrala como true. Por ejemplo, debug_mode no accederá al depurador, y la frecuencia de impresión de la información se disminuirá. El valor predeterminado es false.

--httplib2_debuglevel=DEBUG_LEVEL

Especifica si se debe mostrar la información de depuración HTTP. Si DEBUG_LEVEL es mayor que 0, entonces el comando registra las solicitudes y respuestas del servidor HTTP a stderr, además de los mensajes de error. Si DEBUG_LEVEL no es > 0, o si no se usa la marca --httplib2_debuglevel, solo se proporcionan los mensajes de error.

Por ejemplo:

--httplib2_debuglevel=1

--job_id=JOB_ID

Especifica un identificador de trabajo para un trabajo nuevo. Esta marca solo se aplica a los comandos que crean trabajos: cp, extract, load y query. Si no usas la marca --job_id, los comandos generan un identificador de trabajo único. Para obtener más información, consulta Ejecuta trabajos de manera programática.

--job_property=KEY:VALUE

Un par clave-valor para incluir en el campo de propiedades de la configuración del trabajo. Repite esta marca para especificar propiedades adicionales.

--location=LOCATION

Una string correspondiente a tu región o ubicación multirregión. La marca de ubicación es obligatoria para los comandos bq cancel y para los comandos bq show cuando usas la marca --jobs a fin de mostrar información sobre los trabajos. La marca de ubicación es opcional para los siguientes comandos:

Todos los demás comandos ignoran la marca --location.

--max_rows_per_request=MAX_ROWS

Un número entero que especifica la cantidad máxima de filas que se mostrarán por lectura.

--project_id=PROJECT

Especifica el proyecto que se usará para los comandos.

--proxy_address=PROXY

Especifica el nombre o la dirección IP del host del proxy que se usará para establecer la conexión a Google Cloud.

--proxy_password=PASSWORD

Especifica la contraseña que se usará para la autenticación con el host del proxy.

--proxy_port=PORT

Especifica el número de puerto que se usará para la conexión al host del proxy.

--proxy_username=USERNAME

Especifica el nombre de usuario que se usará para la autenticación con el host del proxy.

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

Para suprimir las actualizaciones de estado mientras se ejecutan los trabajos, configúralo como true. El valor predeterminado es false.

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

Para crear el trabajo y volver de inmediato, con un estado de finalización correcto como código de error, configúralo como false. Si se configura como true, el comando espera a que se complete el trabajo antes de mostrar el estado de finalización del trabajo como código de error. El valor predeterminado es true.

--trace=token:TOKEN

Especifica un token de seguimiento para incluir en las solicitudes a la API.

Marcas globales obsoletas

Las siguientes marcas globales para configurar la autorización de la herramienta de línea de comandos de bq están obsoletas. Si deseas configurar la autorización para la herramienta de línea de comandos de bq, consulta Autoriza las herramientas del SDK de Cloud

--application_default_credential_file

Para obtener más información, consulta Autentícate como cuenta de servicio. El valor predeterminado es ''.

--credential_file

El nombre de archivo que se usa para almacenar tu token de OAuth. El valor predeterminado es $HOME/.bigquery.v2.token.

--service_account

Especifica una dirección de correo electrónico de cuenta de servicio que se usará para la autorización. Por ejemplo:

        1234567890@developer.gserviceaccount.com
        
.

--service_account_credential_file

El archivo que se usa como almacén de credenciales para cuentas de servicio. Esta marca se debe configurar si usas una cuenta de servicio.

--service_account_private_key_file

El archivo que contiene la clave privada de la cuenta de servicio. Esta marca es obligatoria si se especifica la marca --service_account. El valor predeterminado es ''.

--service_account_private_key_password

La contraseña de la clave privada. La contraseña debe coincidir con la que configuraste para la clave en el momento de su creación. El valor predeterminado es notasecret.

--use_gce_service_account={true|false}

Para usar las credenciales de la cuenta de servicio, en lugar de las credenciales almacenadas cuando ejecutas en una instancia de Compute Engine, configúrala como true. El valor predeterminado es false; se usan las credenciales almacenadas. Si quieres obtener más información, consulta la siguiente documentación: Crea y habilita cuentas de servicio para instancias.

La siguiente marca global para especificar marcas de herramienta de línea de comandos de bq desde un archivo está obsoleta. Para especificar marcas de un archivo, usa la marca --bigqueryrc.

--flagfile=PATH

Cuando se especifica, las definiciones de marcas del archivo que se proporcionó se insertan en la herramienta de línea de comandos de bq. El valor predeterminado es ''.

Si deseas obtener más información, consulta Configura los valores predeterminados para marcas de línea de comandos.

Comandos

En las siguientes secciones, se describen los comandos de la herramienta de línea de comandos de bq, junto con las marcas y los argumentos específicos de cada comando.

bq add-iam-policy-binding

Usa el comando bq add-iam-policy-binding a fin de recuperar la política de Identity and Access Management (IAM) para una tabla o vista, y agrega una vinculación a la política en un solo paso.

Este comando es una alternativa al siguiente proceso de tres pasos:

  1. Usar el comando bq get-iam-policy para recuperar el archivo de políticas (en formato JSON).
  2. Editar el archivo de políticas.
  3. Usar el comando bq set-iam-policy para actualizar la política con una vinculación nueva.

Sinopsis

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

Ejemplo

bq add-iam-policy-binding --member=user:myAccount@gmail.com \
  --role=roles/bigquery.dataViewer myDataset.myTable

Marcas y argumentos

El comando bq add-iam-policy-binding usa los siguientes argumentos y marcas:

--member=MEMBER_TYPE:MEMBER

Obligatorio. Usa la marca --member para especificar la parte del miembro de la vinculación de la política de IAM. La marca --member es obligatoria junto con la marca --role. Una combinación de las marcas --member y --role equivale a una vinculación.

El valor MEMBER_TYPE especifica el tipo de miembro en la vinculación de política de IAM. Usa uno de los siguientes valores:

  • user
  • serviceAccount
  • group
  • domain

El valor MEMBER especifica la dirección de correo electrónico o el dominio del miembro en la vinculación de política de IAM.

--role=ROLE

Obligatorio. Especifica la parte de la función que pertenece a la vinculación de política de IAM. La marca --role es obligatoria junto con la marca --member. Una combinación de las marcas --member y --role equivale a una vinculación.

--table={true|false}

Para mostrar un error si el argumento RESOURCE no es un identificador de tabla o vista, establece la marca --table en true. El valor predeterminado es false. Esta marca es compatible para mantener la coherencia con otros comandos.

RESOURCE

La tabla o vista a cuya política deseas agregar.

Para obtener más información, consulta la referencia de la política de IAM.

bq cancel

Usa el comando bq cancel para cancelar trabajos de BigQuery.

Sinopsis

bq [--synchronous_mode=false] cancel JOB_ID

Ejemplos

bq cancel bqjob_12345
bq --synchronous_mode=false cancel bqjob_12345

Marcas y argumentos

El comando bq cancel usa los siguientes argumentos y marcas:

--synchronous_mode=false
Si no quieres esperar a que se complete el comando bq cancel, establece la marca global --synchronous_mode en false. El valor predeterminado es true.
JOB_ID
El trabajo que deseas cancelar.

Para obtener más información sobre el uso del comando bq cancel, consulta Administra trabajos.

bq cp

Usa el comando cp para copiar tablas, crear instantáneas de tablas (vista previa) o restablecer instantáneas de tablas (vista previa).

Sinopsis

bq cp [FLAGS] SOURCE_TABLE DESTINATION_TABLE

Ejemplo

bq cp myDataset.myTable myDataset.myTableCopy

Marcas y argumentos

El comando bq cp usa los siguientes argumentos y marcas:

--append_table={true|false} o -a={true|false}
Para agregar una tabla a una tabla existente, configúrala como true. El valor predeterminado es false.
--destination_kms_key=KEY

Especifica un ID de recurso de clave de Cloud KMS para encriptar los datos de la tabla de destino.

Por ejemplo:

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

--expiration=SECONDS (Vista previa)

La cantidad de segundos hasta que vence una instantánea de tabla. Si no se incluye, el vencimiento de la instantánea de tabla se establece en el vencimiento predeterminado del conjunto de datos que contiene la nueva instantánea de tabla. Úsalo con la marca --snapshot.

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

Para reemplazar la tabla de destino, si existe, sin solicitarla, configúrala como true. El valor predeterminado es false. Si la tabla de destino existe, entonces el comando solicita confirmación antes de reemplazarla.

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

Para inhabilitar el reemplazo de la tabla de destino, si existe, configúrala como true. El valor predeterminado es false. Si la tabla de destino existe, se reemplaza.

--restore (Vista previa)

Crea una tabla estándar a partir de una instantánea de tabla. El argumento SOURCE_TABLE debe especificar una instantánea de tabla.

--snapshot (Vista previa)

Crea una instantánea de tabla de la tabla estándar que se especifica en el argumento SOURCE_TABLE. Requiere la marca --no_clobber.

SOURCE_TABLE

Es la tabla que deseas copiar.

DESTINATION_TABLE

La tabla a la que deseas copiar.

Para obtener más información sobre el uso del comando cp, consulta los siguientes vínculos:

bq extract

Usa el comando bq extract para exportar datos de la tabla a Cloud Storage.

Sinopsis

bq extract [FLAGS] RESOURCE DESTINATION

Ejemplos

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

Marcas y argumentos

El comando bq extract usa los siguientes argumentos y marcas:

--compression=COMPRESSION_TYPE

Especifica el tipo de compresión que se usará para los archivos exportados. Los valores posibles son los siguientes:

  • GZIP
  • DEFLATE
  • SNAPPY
  • NONE

El valor predeterminado es NONE.

Para obtener información sobre qué formatos son compatibles con cada tipo de compresión, consulta Exporta formatos y tipos de compresión.

--destination_format=FORMAT

Especifica el formato de los datos exportados. Los valores posibles son los siguientes:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • PARQUET

El valor predeterminado es CSV.

--field_delimiter=DELIMITER

Para las exportaciones de archivos CSV, especifica el carácter que marca el límite entre columnas en el archivo de salida. El delimitador puede ser cualquier carácter ISO-8859-1 de un solo byte. Puedes usar \t o tab para especificar delimitadores de tabulaciones.

--print_header={true|false}

A fin de eliminar la impresión de filas de encabezados para formatos que tienen encabezados, configúralos como false. El valor predeterminado es true; se incluyen las filas de encabezado.

RESOURCE

La tabla desde la que exportas.

DESTINATION

La ubicación de almacenamiento que recibe los datos exportados.

Para obtener más información sobre el uso del comando bq extract, consulta Exporta datos de tablas.

bq get-iam-policy

Usa el comando bq get-iam-policy a fin de recuperar la política de IAM para un recurso y, luego, imprimirla en stdout. El recurso puede ser una tabla o una vista. La política está en formato JSON.

Sinopsis

bq get-iam-policy [FLAGS] RESOURCE

Ejemplo

bq get-iam-policy myDataset.myTable

Marcas y argumentos

El comando bq get-iam-policy usa los siguientes argumentos y marcas:

--table={true|false} o --t={true|false}
Para mostrar un error si RESOURCE no es un identificador de tabla o vista, establece la marca --table en true. El valor predeterminado es false. Esta marca es compatible para mantener la coherencia con otros comandos.
RESOURCE
La tabla o vista cuya política deseas obtener.

Para obtener más información sobre el comando bq get-iam-policy, consulta Introducción a los controles de acceso a tablas.

bq head

Usa el comando bq head para mostrar las filas y columnas especificadas de una tabla. De forma predeterminada, muestra todas las columnas de las primeras 100 filas.

Sinopsis

bq head [FLAGS] [TABLE]

Ejemplo

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

Marcas y argumentos

El comando bq head usa los siguientes argumentos y marcas:

--job=JOB or -j=JOB
Para leer los resultados de un trabajo de búsqueda, especifica esta marca con un ID de trabajo válido.
--max_rows=MAX or -n=MAX
Un número entero que indica la cantidad máxima de filas que se deben imprimir cuando se muestran los datos de la tabla. El valor predeterminado es 100.
--selected_fields=COLUMN_NAMES or -c=COLUMN_NAMES
Una lista separada por comas que indica un subconjunto de campos (incluidos los campos anidados y repetidos) que deben incluirse cuando se muestren los datos de la tabla. Si no se especifica esta marca, se muestran todas las columnas.
--start_row=START_ROW or -s=START_ROW
Un número entero que especifica la cantidad de filas que se deben omitir antes de mostrar los datos de la tabla. El valor predeterminado es 0. Los datos de la tabla comienzan en la primera fila.
--table={true|false} o -t={true|false}
Para mostrar un error si el argumento del comando no es una tabla o una vista, configúralo como true. El valor predeterminado es false Esta marca es compatible para mantener la coherencia con otros comandos.
TABLE
La tabla cuyos datos deseas recuperar.

Para obtener más información sobre el uso del comando bq head, consulta Cómo administrar datos de tablas

bq help

Usa el comando bq help para mostrar la documentación de la herramienta de línea de comandos de bq dentro de la herramienta.

Sinopsis

bq help [COMMAND]

Marcas y argumentos

El comando bq help usa los siguientes argumentos y marcas:

COMMAND
Especifica un comando de herramienta de línea de bq en particular para el que deseas obtener ayuda en línea.

bq insert

Usa el comando bq insert para insertar filas de datos con formato JSON delimitado por saltos de línea en una tabla desde un archivo mediante el búfer de transmisión. Los tipos de datos se convierten para que coincidan con los tipos de columna de la tabla de destino. Este comando debe usarse solo para hacer pruebas. Si quieres transmitir datos a BigQuery, usa el método de API insertAll.

Sinopsis

bq insert [FLAGS] TABLE FILE

Ejemplos

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

Marcas y argumentos

El comando bq insert usa los siguientes argumentos y marcas:

--ignore_unknown_values={true|false} o -i={true|false}
Cuando se establece en true, BigQuery ignora cualquier par clave-valor que no coincida con el esquema de la tabla y, luego, inserta la fila con los datos que sí coinciden. Cuando se establece en false, no se insertan las filas con datos que no coinciden con el esquema de la tabla. El valor predeterminado es false.
--skip_invalid_rows={true|false} o -s={true|false}
Cuando se establece en true, BigQuery intenta insertar todas las filas válidas, incluso si hay filas que no lo son. Cuando se establece en false, el comando falla si hay filas no válidas. El valor predeterminado es false.
--template_suffix=SUFFIX or -x=SUFFIX
Cuando se especifica, trata a la tabla de destino TABLE como una plantilla base y, también, inserta las filas en una tabla de instancias llamada {destination}{templateSuffix}. BigQuery crea la tabla de instancias con el esquema de la plantilla base.
TABLE
La tabla en la que deseas insertar los datos.
FILE
El archivo que contiene los datos que deseas insertar.

Para obtener más información sobre el uso del comando bq insert, consulta Transmite datos a BigQuery.

bq load

Usa el comando bq load para cargar datos en una tabla.

Sinopsis

bq load [FLAGS] DESTINATION_TABLE SOURCE_DATA [SCHEMA]

Ejemplo

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

Marcas y argumentos

El comando bq load usa los siguientes argumentos y marcas:

--allow_jagged_rows={true|false}
Para permitir que falten columnas opcionales finales en los datos CSV, configúralas como true.
--allow_quoted_newlines={true|false}
Para permitir saltos de línea en secciones entrecomilladas en los datos CSV, configúralos como true.
--autodetect={true|false}
A fin de habilitar la detección automática de esquemas para los datos de formato CSV y JSON, configúralos como true. El valor predeterminado es false. Si --autodetect es false, y no se especifica ningún esquema mediante la marca --schema, y la tabla de destino existe, se usa el esquema de la tabla de destino.
--clustering_fields=COLUMNS
Una lista separada por comas de hasta cuatro nombres de columna que especifica los campos que se usarán para el agrupamiento en clústeres de la tabla.
--destination_kms_key=KEY
Especifica un ID de recurso de clave de Cloud KMS para encriptar los datos de la tabla de destino.
--encoding=ENCODING_TYPE or -E=ENCODING_TYPE
La codificación de caracteres que se usa en los datos. Usa uno de los siguientes valores:
  • ISO-8859-1 (también conocido como Latin-1)
  • UTF-8
--field_delimiter=DELIMITER or -F=DELIMITER
Especifica el carácter que marca el límite entre las columnas en los datos. El delimitador puede ser cualquier carácter ISO-8859-1 de un solo byte. Puedes usar \t o tab para especificar delimitadores de tabulación.
--ignore_unknown_values={true|false}
Cuando se configura como true, en el caso de los archivos CSV y JSON, las filas con valores de columna adicionales que no coinciden con el esquema de la tabla se ignoran y no se cargan. De manera similar, para los archivos Avro, Parquet y ORC, los campos del esquema de archivos que no existen en el esquema de la tabla se ignoran y no se cargan.
--json_extension=JSON_TYPE

Especifica el tipo de archivo JSON que se cargará. Solo se aplica a archivos JSON. Los valores posibles son los siguientes:

  • GEOJSON: archivo GeoJSON delimitado por saltos de línea

Para usar esta marca, la marca --source_format debe configurarse como NEWLINE_DELIMITED_JSON.

Para obtener más información, consulta Carga archivos GeoJSON delimitados por saltos de línea.

--max_bad_records=MAX

Un número entero que especifica la cantidad máxima de registros incorrectos permitidos antes de que falle todo el trabajo. El valor predeterminado es 0. Como máximo, se muestran cinco errores de cualquier tipo, sin importar el valor --max_bad_records. Esta marca solo se aplica para cargar datos de CSV, JSON y Sheets.

--null_marker=STRING

Una string personalizada opcional que representa un valor NULL en los datos de formato CSV.

--projection_fields=PROPERTY_NAMES

Si estableces --source_format en DATASTORE_BACKUP, esta marca indica qué propiedades de la entidad se deben cargar a partir de una exportación de Datastore. Especifica los nombres de las propiedades en una lista separada por comas. Los nombres de las propiedades distinguen entre mayúsculas y minúsculas, y deben referirse a propiedades de nivel superior. También puedes usar esta marca con las exportaciones de Firestore.

--quote=CHARACTER

Especifica un carácter de comillas en los campos de los datos del archivo CSV. El argumento CHARACTER puede ser cualquier carácter de un solo byte. El valor predeterminado son las comillas dobles ("). Para especificar que no hay caracteres de comillas, usa una string vacía "".

--replace={true|false}

Para borrar cualquier dato y esquema existentes cuando se cargan datos nuevos, configúralos como true. También se quita cualquier clave de Cloud KMS, a menos que especifiques la marca --destination_kms_key. El valor predeterminado es false.

--schema={SCHEMA_FILE|SCHEMA}

Especifica la ruta de acceso a un archivo de esquema JSON local o una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, etcétera. Si usas un archivo de esquema, no le pongas una extensión.

Por ejemplo:

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

Si no se especifica ningún esquema y --autodetect es false, y la tabla de destino existe, se usa el esquema de la tabla de destino.

--schema_update_option=OPTION

Cuando se agregan datos a una tabla (en un trabajo de carga o de consulta) o se reemplaza una partición de una tabla, especifica cómo actualizar el esquema de la tabla de destino. Usa uno de los siguientes valores:

  • ALLOW_FIELD_ADDITION: Permite que se agreguen campos nuevos.
  • ALLOW_FIELD_RELAXATION: Permite disminuir la rigurosidad de los campos REQUIRED a NULLABLE.

Repite esta marca para especificar varias opciones de actualización del esquema.

--skip_leading_rows=NUMBER_OF_ROWS

Un número entero que especifica la cantidad de filas que se deben omitir al principio del archivo de origen. El valor predeterminado es 0.

--source_format=FORMAT

El formato de los datos de origen. Usa uno de los siguientes valores:

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

Un número entero que especifica (en segundos) cuándo se debe borrar una partición basada en el tiempo. La fecha y hora de vencimiento se evalúa según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si el número es negativo, no hay vencimiento.

--time_partitioning_field=COLUMN_NAME

Especifica el campo que determina cómo crear una partición basada en el tiempo. Si la partición basada en el tiempo se habilita sin este valor, la tabla se particiona en función del tiempo de carga.

--time_partitioning_type=INTERVAL

Habilita las particiones basadas en el tiempo en una tabla y establece el tipo de partición. Usa uno de los siguientes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR

El tipo de partición predeterminado para la partición basada en el tiempo es DAY.

--use_avro_logical_types={true|false}

Si la marca --source_format se establece en AVRO, establece esta marca en true para convertir tipos lógicos en sus tipos correspondientes (como TIMESTAMP) en lugar de usar solo sus tipos sin procesar (como INTEGER).

--decimal_target_types=DECIMAL_TYPE

Determina cómo convertir un tipo Decimal de lógica. Equivale a JobConfigurationLoad.decimalTargetTypes. Repite esta marca para especificar varios tipos de destino.

--parquet_enum_as_string={true|false}

Si la marca --source_format se establece en PARQUET y deseas que BigQuery infiera los tipos lógicos de Parquet ENUM como valores STRING, establece esta marca en true. El valor predeterminado es false.

--parquet_enable_list_inference={true|false}

Si la marca --source_format se configura como PARQUET, indica si se debe usar la inferencia de esquema para los tipos lógicos LIST de Parquet.

DESTINATION_TABLE

La tabla en la que deseas cargar los datos.

SOURCE_DATA

El URI de Cloud Storage del archivo que contiene los datos que deseas cargar.

SCHEMA

El esquema de la tabla de destino.

Para obtener más información sobre cómo cargar datos de Cloud Storage mediante el comando bq load, consulta los siguientes vínculos:

Para obtener más información sobre cómo cargar datos de una fuente local mediante el comando bq load, consulta los siguientes vínculos:

bq ls

Usa el comando bq ls para enumerar objetos en una colección.

Sinopsis

bq ls [FLAGS] [RESOURCE]

Ejemplo

bq ls myDataset

Marcas y argumentos

El comando bq ls usa los siguientes argumentos y marcas:

--all={true|false} o -a={true|false}
Para mostrar todos los resultados, configúralo como true. Muestra trabajos de todos los usuarios o de todos los conjuntos de datos, incluidos los ocultos. Esta marca no es necesaria cuando se muestra una lista de configuraciones de transferencia o ejecuciones de transferencia. El valor predeterminado es false.
--capacity_commitment={true|false}
Para enumerar los compromisos de capacidad, configúralo como true. El valor predeterminado es false.
--datasets={true|false} o -d={true|false}
Para enumerar conjuntos de datos, configúralo como true. El valor predeterminado es false.
--filter="FILTER"

Enumera los conjuntos de datos que coinciden con el argumento FILTER, que consta de uno o más triples separados por espacios en el formato labels.KEY:VALUE. Si se proporciona más de un triple, el comando solo muestra conjuntos de datos que coincidan con todos los triples (es decir, el comando utiliza el operador lógico de AND, no OR). Si deseas especificar más de un triple, encierra el valor de FILTER entre comillas.

  • Para filtrar según etiquetas de conjuntos de datos, usa las claves y los valores que aplicaste a tus conjuntos de datos.

    Por ejemplo:

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

  • Para filtrar en función de las configuraciones de transferencia, usa dataSourceIds como clave y una de las siguientes fuentes de datos como valor:

Por ejemplo:

   --filter labels.dataSourceIds:dcm_dt
   

  • Para filtrar en función de las ejecuciones de transferencia, usa states como clave y uno de los siguientes estados de transferencia como el valor:

    • SUCCEEDED
    • FAILED
    • PENDING
    • RUNNING
    • CANCELLED

      Por ejemplo:

      --filter labels.states:FAILED
      

--jobs={true|false} o -j={true|false}
Para enumerar los trabajos, configúralos como true. El valor predeterminado es false. De forma predeterminada, tienes un límite de 100,000 resultados.
--max_creation_time=MAX_CREATION_TIME_MS
Es un número entero que representa una marca de tiempo en milisegundos. Cuando se especifica con la marca --jobs, esta marca solo enumera los trabajos creados antes de la marca de tiempo.
--max_results=MAX_RESULTS or -n=MAX_RESULTS
Es un número entero que indica la cantidad máxima de resultados. El valor predeterminado es 50.
--min_creation_time=MIN_CREATION_TIME_MS
Es un número entero que representa una marca de tiempo en milisegundos. Cuando se especifica con la marca --jobs, muestra una lista solo de los trabajos creados después de la marca de tiempo.
--message_type=messageTypes:MESSAGE_TYPE

Para mostrar solo una lista de mensajes de registro de ejecución de transferencia pertenecientes a un tipo determinado, especifica messageTypes:MESSAGE_TYPE. Los valores posibles son los siguientes:

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

Para enumerar los modelos de BigQuery ML, configúralo como true. El valor predeterminado es false.

--page_token=TOKEN o -k=TOKEN

Muestra una lista de los elementos a partir del token de la página especificado.

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

Para mostrar todos los proyectos, configúralo como true. El valor predeterminado es false.

--reservation={true|false}

Para enumerar todas las reservas de un proyecto y una ubicación determinados, configúralo como true. El valor predeterminado es false. Úsalo con las marcas --project_id y --location.

Por ejemplo:

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

--reservation_assignment={true|false}

Para enumerar todas las asignaciones de reserva de una ubicación y un proyecto determinados, configúralos como true. El valor predeterminado es false. Úsalo con las marcas --project_id y --location.

--routines={true|false}

Para enumerar todas las rutinas en el conjunto de datos especificado, configúrala como true. El valor predeterminado es false. Las rutinas incluyen lo siguiente: funciones persistentes definidas por el usuario, funciones de tabla (Vista previa) y procedimientos almacenados.

--row_access_policies

Cuando se especifique, enumera todas las políticas de acceso a nivel de fila en una tabla. Las políticas de acceso a nivel de fila se usan para la seguridad a nivel de fila. Debes proporcionar el nombre de la tabla en el formato dataset.table.

--run_attempt=RUN_ATTEMPT

Úsalo con la marca --transfer_run. Para enumerar todos los intentos de ejecución de la ejecución de la transferencia especificada, configúrala como RUN_ATTEMPT_UNSPECIFIED. Para enumerar solo el intento de ejecución más reciente, establece LATEST. El valor predeterminado es LATEST.

--transfer_config={true|false}

Para mostrar una lista de las opciones de configuración de la transferencia en el proyecto y la ubicación que se especificaron, configúralos como true. Úsalo con las marcas --transfer_location y --project_id. El valor predeterminado es false.

--transfer_location=LOCATION

Muestra una lista de las configuraciones de transferencia en la ubicación especificada. Debes establecer la ubicación de transferencia cuando se crea la transferencia.

--transfer_log={true|false}

Úsalo con la marca --transfer_run. Para mostrar una lista de los mensajes de registro de transferencia de la ejecución de transferencias que se especificó, configúrala como true. El valor predeterminado es false.

--transfer_run={true|false}

Enumera las ejecuciones de transferencia para la configuración de la transferencia especificada.

Por ejemplo:

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

RESOURCE

La colección cuyos objetos deseas enumerar. El recurso puede ser un conjunto de datos, un proyecto, una reserva o una configuración de transferencia.

Para obtener más información sobre el uso del comando bq ls, consulta los siguientes vínculos:

bq mk

Usa el comando bq mk para crear un recurso de BigQuery.

Sinopsis

bq mk TYPE_FLAG [OTHER FLAGS] [ARGS]

Marcas y argumentos

El comando bq mk toma una marca de tipo que especifica el tipo de recurso que deseas crear y otras marcas que dependen del tipo de recurso.

TYPE_FLAG: Establece una de las siguientes marcas en true. Tu selección especifica el tipo de recurso que deseas crear.

El comando bq mk admite la siguiente marca para todos los tipos de recursos:

--force={true|false} o -f={true|false}
Para ignorar errores si ya existe un recurso con el mismo nombre, configúralo como true. Si el recurso ya existe, el código de salida es 0, pero establecer esta marca en true no hará que el comando bq mk reemplace el recurso. El valor predeterminado es false.

El comando bq mk admite marcas adicionales, según el tipo de recurso que crees, como se describe en las siguientes secciones.

bq mk --capacity_commitment

Compra un compromiso de capacidad. Se admiten las siguientes marcas:

--location=LOCATION
Especifica la ubicación del proyecto.
--plan=PLAN_TYPE
Especifica el tipo de plan. Uno de los siguientes:
  • FLEX
  • MONTHLY
  • ANNUAL
--project_id=PROJECT_ID
Especifica el proyecto que administra las ranuras.
--slots=NUMBER_OF_SLOTS
Especifica la cantidad de ranuras que se deben comprar.

Para obtener más información, consulta Trabaja con compromisos.

bq mk --connection

Crea una conexión. Se admiten las siguientes marcas:

--connection_type=CONNECTION_TYPE
El tipo de conexión, por ejemplo, CLOUD_SQL para conexiones de Cloud SQL.
--properties=PROPERTIES
Parámetros de conexión específicos en formato JSON Se deben especificar instanceId, database y type.
--connection_credential=CONNECTION_CREDENTIAL
Las credenciales de la conexión en formato JSON. Se deben especificar username y password.
--project_id=PROJECT_ID
Especifica el ID del proyecto al que pertenece la conexión.
--location=LOCATION
Especifica la ubicación en la que se almacenará la conexión.
--display_name=DISPLAY_NAME
Especifica un nombre descriptivo opcional para la conexión.
--description=DESCRIPTION
Especifica una descripción opcional de la conexión.
CONNECTION_ID
Especifica un ID de conexión opcional para la conexión. Si no se proporciona un ID de conexión, se genera un ID único de forma automática. El ID de conexión puede contener letras, números y guiones bajos.

Para obtener más información, consulta Cómo crear conexiones.

bq mk --dataset

Crea un conjunto de datos. Se admiten las siguientes marcas:

--default_kms_key=KEY
Especifica el ID de recurso de la clave de Cloud KMS predeterminado para encriptar los datos de la tabla en un conjunto de datos si no se proporciona una clave explícita durante la creación o la búsqueda de la tabla.
--default_partition_expiration=SECONDS
Es un número entero que especifica el vencimiento predeterminado (en segundos) de todas las particiones de las tablas particionadas nuevas que se crean en el conjunto de datos. La fecha y hora de vencimiento de una partición se determina según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si se configura esta propiedad, su valor anula el vencimiento predeterminado de la tabla definido para todo el conjunto de datos, si existe. Si suministras la marca --time_partitioning_expiration cuando creas o actualizas una tabla particionada, el vencimiento de la partición a nivel de la tabla tiene prioridad sobre el vencimiento predeterminado de la partición a nivel del conjunto de datos.
--default_table_expiration=SECONDS
Es un número entero que especifica la duración predeterminada (en segundos) de las tablas nuevas que se crean en un conjunto de datos. La fecha y hora de vencimiento se determina mediante la suma de la hora actual en formato UTC más este valor.
--description=DESCRIPTION
Especifica la descripción del conjunto de datos.
--label=KEY:VALUE
Especifica una etiqueta para el conjunto de datos. Repite esta marca para especificar varias etiquetas.
--location=LOCATION o --data_location=LOCATION
Especifica la ubicación del conjunto de datos. Prefiere la marca --location. La marca --data_location es heredada.

Para obtener más información, consulta Crea conjuntos de datos.

bq mk --materialized_view

Crea una vista materializada. Se admiten las siguientes marcas:

--enable_refresh={true|false}
Para inhabilitar la actualización automática de una vista materializada, configúrala como false. El valor predeterminado cuando se crea una vista materializada es true.
--refresh_interval_ms=MILLISECONDS
Especifica la cantidad de milisegundos para el intervalo de actualización de una vista materializada. Si no se especifica esta marca, el intervalo de actualización predeterminado para una vista materializada que tenga habilitada la actualización es de 1,800,000 milisegundos, que equivale a 30 minutos.

Para obtener más información, consulta Crea y usa vistas materializadas.

bq mk --reservation

Crea una reserva con ranuras dedicadas. Se admiten las siguientes marcas:

--ignore_idle_slots={true|false}
Para restringir los trabajos que se ejecutan en esta reserva a fin de que solo usen las ranuras asignadas a la reserva, configúrala como true. El valor predeterminado es false. Los trabajos de esta reserva pueden usar ranuras inactivas de otras reservas o ranuras que no se asignaron a ninguna reserva. Para obtener más información, consulta Ranuras inactivas.
--location=LOCATION
Especifica la ubicación del proyecto.
--project_id=PROJECT_ID
Especifica el proyecto al que pertenece la reserva.
--slots=NUMBER_OF_SLOTS
Es la cantidad de ranuras que se asignarán a esta reserva.

Para obtener más información, consulta Trabaja con reservas.

bq mk --reservation_assignment

Asigna un proyecto, una carpeta o una organización a una reserva. Se admiten las siguientes marcas:

--assignee_id=ASSIGNEE_ID
Es el ID de la carpeta, la organización o el proyecto.
--assignee_type=ASSIGNEE_TYPE
Es el tipo de entidad que se asignará a la reserva. Uno de los siguientes:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--job_type=JOB_TYPE
Es el tipo de trabajo que se asignará a la reserva. Uno de los siguientes:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
--location=LOCATION
Especifica la ubicación del proyecto.
--project_id=PROJECT_ID
Especifica el proyecto al que pertenece la reserva.
--reservation_id=RESERVATION_ID
Especifica el ID de la reserva.

Para obtener más información, consulta Trabaja con asignaciones.

bq mk --table

Crea una tabla. Se admiten las siguientes marcas:

--clustering_fields=COLUMNS
Una lista separada por comas de hasta cuatro nombres de columna que especifica los campos que se usarán para el agrupamiento en clústeres de la tabla. Si se especifica con la partición, la tabla se particiona y, luego, cada partición se agrupa en clústeres mediante las columnas proporcionadas.
--description=DESCRIPTION
Especifica la descripción de la tabla.
--destination_kms_key=KEY
Especifica un ID de recurso de clave de Cloud KMS para encriptar los datos de la tabla de destino.
--expiration=SECONDS
Especifica la vida útil de la tabla. Si SECONDS es 0, la tabla no vencerá. Si no incluyes la marca --expiration, BigQuery crea la tabla con la vida útil predeterminada de la tabla del conjunto de datos.
--external_table_definition={PATH_TO_FILE|DEFINITION}

Especifica una definición de tabla para crear una tabla externa. El valor puede ser una ruta de acceso a un archivo que contiene un archivo de definición de tabla (PATH_TO_FILE) o una definición de tabla intercalada (DEFINITION).

  • El formato del campo DEFINITION es SCHEMA@FORMAT=URI.
  • El formato del valor SCHEMA es una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, y así sucesivamente. Puedes omitir el valor SCHEMA si el formato de datos es autodescriptivo (como Avro) o si usas la detección automática de esquemas. .
  • El valor FORMAT especifica el formato de los datos; Una de las siguientes opciones:

  • CSV

  • NEWLINE_DELIMITED_JSON

  • AVRO

  • DATASTORE_BACKUP (usa este valor para Filestore)

  • PARQUET

  • ORC

Si usas un archivo de definición de tablas, no le agregues una extensión.

Por ejemplo:

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

--label=KEY:VALUE

Especifica una etiqueta para la tabla. Repite esta marca para especificar varias etiquetas.

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Especifica de la siguiente manera las opciones para una partición de rango de números enteros:

  • column_name es la columna que se usó para crear las particiones por rango de números enteros.
  • start es el inicio de la partición por rango (inclusivo).
  • end es el final de la partición por rango (exclusivo).
  • interval es el ancho de cada rango dentro de la partición.

Por ejemplo:

--range_partitioning=customer_id,0,10000,100

--require_partition_filter={true|false}

Si quieres solicitar un filtro de partición para las búsquedas sobre la tabla proporcionada, configúralo como true. Esta marca solo se aplica a las tablas particionadas. El valor predeterminado es false.

--schema={SCHEMA_FILE|SCHEMA}

Especifica la ruta de acceso a un archivo de esquema JSON local o una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, etcétera. Si usas un archivo de esquema, no le pongas una extensión.

Ejemplos:

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

--time_partitioning_expiration=SECONDS

Un número entero que especifica (en segundos) cuándo se debe borrar una partición basada en el tiempo. La fecha y hora de vencimiento se evalúa según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si el número es negativo, no hay vencimiento.

--time_partitioning_field=COLUMN_NAME

Especifica el campo utilizado para determinar cómo crear una partición basada en el tiempo. Si la partición basada en el tiempo se habilita sin este valor, la tabla se particiona en función del tiempo de carga.

--time_partitioning_type=INTERVAL

Habilita las particiones basadas en el tiempo en una tabla y establece el tipo de partición. Usa uno de los siguientes valores:

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

Si la parte FORMAT de la marca --external_table_definition se configura como AVRO, esta marca especifica si se deben convertir tipos lógicos en sus tipos correspondientes (como TIMESTAMP), en lugar de usar únicamente tipos sin procesar (como INTEGER).

--parquet_enable_list_inference={true|false}

Si la parte FORMAT de la marca --external_table_definition se configura como PARQUET, esta marca especifica si se debe usar Inferencia de esquema para los tipos lógicos de Parquet LIST.

--parquet_enum_as_string={true|false}

Si la parte FORMAT de la marca --external_table_definition se configura como PARQUET, esta marca especifica si se deben inferir los tipos lógicos de Parquet ENUM como valores STRING.

Para obtener más información, consulta Crea y usa tablas.

bq mk --transfer_config

Crea una configuración de transferencia. Se admiten las siguientes marcas:

--data_source=DATA_SOURCE
Especifica la fuente de datos. Obligatorio cuando se crea una configuración de transferencia. Usa uno de los siguientes valores:
--display_name=DISPLAY_NAME
Especifica el nombre visible de la configuración de transferencia.
--params={"PARAMETER":"VALUE"} o -p={"PARAMETER":"VALUE"}
Especifica los parámetros de la configuración de la transferencia en formato JSON. Los parámetros varían según la fuente de datos. Para obtener más información, consulta Introducción al Servicio de transferencia de datos de BigQuery.
--refresh_window_days=DAYS
Es un número entero que especifica el período de actualización en días para la configuración de la transferencia. El valor predeterminado es 0.
--target_dataset=DATASET
Especifica el conjunto de datos de destino para la configuración de transferencia.

Para obtener información sobre el uso del comando bq mk con el Servicio de transferencia de datos de BigQuery, consulta las siguientes secciones:

bq mk --transfer_run

Crea una ejecución de transferencia de datos en el intervalo de tiempo o tiempo especificado mediante la configuración de transferencia de datos especificada.

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

Se admiten las siguientes marcas:

--run_time=RUN_TIME
Una marca de tiempo que especifica la hora para programar la ejecución de la transferencia de datos.
--start_time=START_TIME
Es una marca de tiempo que especifica la hora de inicio para un rango de ejecuciones de transferencias.
--end_time=END_TIME
Una marca de tiempo que especifica la hora de finalización de un rango de ejecuciones de transferencias.

El formato de la marca de tiempo es RFC3339 UTC “Zulú”.

El argumento CONFIG especifica una configuración de transferencia de datos preexistente.

Ejemplos
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

Crea una vista. Se admiten las siguientes marcas:

--description=DESCRIPTION
Especifica la descripción de la vista.
--expiration=SECONDS
Especifica la vida útil de la vista. Si SECONDS es 0, la vista no caducará. Si no incluyes la marca --expiration, BigQuery crea la vista con la vida útil predeterminada de la tabla del conjunto de datos.
--label=KEY:VALUE
Especifica una etiqueta para la vista. Repite esta marca para especificar varias etiquetas.
--use_legacy_sql={true|false}
Configúrala como false para usar una búsqueda de SQL estándar a fin de crear una vista. El valor predeterminado es true (usa SQL heredado).
--view_udf_resource=FILE
Especifica el URI de Cloud Storage o la ruta de acceso a un archivo de código local que se cargará y evaluará de inmediato como un recurso de función definida por el usuario usado por una búsqueda de SQL de la vista. Repite esta marca para especificar varios archivos.

Para obtener más información, consulta Crea vistas.

bq mkdef

Usa el comando bq mkdef a fin de crear una definición de tabla en formato JSON para los datos almacenados en Cloud Storage o Drive.

Sinopsis

bq mkdef [FLAGS] URI [ > FILE ]

Marcas y argumentos

El comando bq mkdef usa los siguientes argumentos y marcas:

--autodetect={true|false}
Especifica si se debe usar la detección automática de esquemas para los datos CSV y JSON. El valor predeterminado es false.
--ignore_unknown_values={true|false} o -i={true|false}
Especifica si se deben ignorar los valores de una fila que no estén presentes en el esquema. El valor predeterminado es false.
--parquet_enable_list_inference={true|false}
Si source_format se configura como PARQUET, esta marca especifica si se debe usar la inferencia de esquema para los tipos lógicos LIST de Parquet. El valor predeterminado es false.
--parquet_enum_as_string={true|false}
Si source_format está configurado como PARQUET, esta marca especifica si se deben inferir los tipos lógicos ENUM de Parquet como valores STRING. El valor predeterminado es false.
--source_format=FORMAT

Especifica el formato de los datos de origen. Usa uno de los siguientes valores:

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

El valor predeterminado es CSV.

--use_avro_logical_types={true|false}

Si la marca --source_format se configura como AVRO, especificará si se deben convertir los tipos lógicos en sus tipos correspondientes (como TIMESTAMP) en lugar de solo usar los tipos sin procesar (como INTEGER). El valor predeterminado es false.

Para obtener más información sobre el uso del comando bq mkdef, consulta Cómo crear un archivo de definición de tablas para una fuente de datos externa.

bq partition

Usa el comando bq partition para convertir un grupo de tablas con sufijos de unidades de tiempo, como tablas que terminan en YYYYMMDD para la partición de fecha, en tablas particionadas.

Sinopsis

bq partition [FLAGS] SOURCE_TABLE_BASE_NAME PARTITION_TABLE

Marcas y argumentos

El comando bq partition usa los siguientes argumentos y marcas:

--no_clobber={true|false} o -n={true|false}
Para inhabilitar el reemplazo de una partición existente, configúralo como true. El valor predeterminado es false. Si la partición existe, se reemplaza.
--time_partitioning_expiration=SECONDS
Un número entero que especifica (en segundos) cuándo se debe borrar una partición basada en el tiempo. La fecha y hora de vencimiento se evalúa según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si el número es negativo, no hay vencimiento.
--time_partitioning_type=INTERVAL

Especifica el tipo de partición. En la siguiente tabla, se proporcionan los valores posibles para la marca INTERVAL y el formato esperado de sufijo de unidades de tiempo para cada uno:

INTERVAL Sufijo
HOUR YYYYMMDDHH
DAY YYYYMMDD
MONTH YYYYMM
YEAR YYYY
SOURCE_TABLE_BASE_NAME

El nombre base del grupo de tablas con sufijos de unidades de tiempo.

PARTITION_TABLE

El nombre de la tabla particionada de destino.

Para obtener más información sobre el uso del comando bq partition, consulta la sección sobre cómo convertir tablas fragmentadas en fechas en tablas particionadas de tiempo de transferencia.

bq query

Usa el comando bq query para crear un trabajo de búsqueda que ejecute la búsqueda de SQL especificada.

Sinopsis

bq query [FLAGS] 'QUERY'

Marcas y argumentos

El comando bq query usa los siguientes argumentos y marcas:

--allow_large_results={true|false}
Si quieres habilitar tamaños de tablas de destino grandes para las búsquedas de SQL heredado, configúralos como true. El valor predeterminado es false.
--append_table={true|false}
Para agregar datos a una tabla de destino, configúrala como true. El valor predeterminado es false.
--batch={true|false}
Para ejecutar la consulta en modo por lotes, configúrala como true. El valor predeterminado es false.
--clustering_fields=COLUMNS
Una lista separada por comas de hasta cuatro nombres de columna que especifica los campos que se pueden usar para agrupar en clústeres la tabla de destino en una búsqueda. Si se especifica con la partición, la tabla se particiona y, luego, cada partición se agrupa en clústeres mediante las columnas proporcionadas.
--destination_kms_key=KEY
Especifica un ID de recurso de clave de Cloud KMS para encriptar los datos de la tabla de destino.
--destination_schema={PATH_TO_FILE|SCHEMA}
La ruta de acceso a un archivo de esquema JSON local o una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, etcétera.
--destination_table=TABLE

Cuando se especifica, los resultados de la búsqueda se guardan en TABLE. Especifica TABLE con el siguiente formato: PROJECT:DATASET.TABLE. Si no se especifica PROJECT, entonces se asume el proyecto actual. Si no se especifica la marca --destination_table, los resultados de la consulta se guardan en una tabla temporal.

Ejemplos:

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

--dry_run={true|false}

Cuando se especifica, la búsqueda se valida, pero no se ejecuta.

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

Especifica el nombre y la definición de la tabla para una consulta de tabla externa. La definición de tablas puede ser una ruta de acceso a un archivo de esquema JSON local o una definición de tabla intercalada. El formato para proporcionar la definición de tablas intercalada es SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. El formato del valor SCHEMA es una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, y así sucesivamente. Si usas un archivo de definición de tablas, no le agregues una extensión.

Por ejemplo:

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

Repite esta marca para consultar varias tablas.

--flatten_results={true|false}

Para inhabilitar la compactación de campos anidados y repetidos en los resultados para búsquedas de SQL heredado, configúralos como false. El valor predeterminado es true.

--label=KEY:VALUE

Especifica una etiqueta para el trabajo de búsqueda. Repite esta marca para especificar varias etiquetas.

--max_rows=MAX_ROWS o -n=MAX_ROWS

Un número entero que especifica la cantidad de filas que se deben mostrar en los resultados de la consulta. El valor predeterminado es 100.

--maximum_bytes_billed=MAX_BYTES

Un número entero que limita los bytes facturados para la búsqueda. Si la búsqueda supera el límite, esta falla (sin que se genere un cargo). Si no se especifica esta marca, los bytes facturados se configuran según el valor predeterminado del proyecto.

--min_completion_ratio=RATIO

[Experimental] Un número entre 0 y 1.0 que especifica la fracción mínima de datos que deben analizarse antes de que se muestre el resultado de una consulta. Si no se especifica la marca, se usa el valor predeterminado del servidor 1.0.

--parameter={PATH_TO_FILE|PARAMETER}

Un archivo JSON que contiene una lista de parámetros de búsqueda o un parámetro de búsqueda con el formato NAME:TYPE:VALUE. Si el nombre está vacío, se crea un parámetro posicional. Si se omite TYPE, se supone el tipo STRING. NULL especifica un valor nulo. Repite esta marca para especificar varios parámetros.

Por ejemplo:

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

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Úsalo con la marca --destination_table. Especifica las opciones para la partición por rango de números enteros en la tabla de destino. El valor es una lista separada por comas de la forma column_name,start,end,interval, en la que

  • column_name es la columna que se usó para crear las particiones por rango de números enteros.
  • start es el inicio de la partición por rango (inclusivo).
  • end es el final de la partición por rango (exclusivo).
  • interval es el ancho de cada rango dentro de la partición.

Por ejemplo:

--range_partitioning=customer_id,0,10000,100

--replace={true|false}

Para reemplazar la tabla de destino con los resultados de la búsqueda, configúrala como true. Se borrarán los datos y el esquema existentes. También se quita cualquier clave de Cloud KMS, a menos que especifiques la marca --destination_kms_key. El valor predeterminado es false.

--require_cache={true|false}

Cuando se especifica, ejecuta la consulta solo si los resultados se pueden recuperar desde la caché.

--require_partition_filter={true|false}

Si se especifica, se requiere un filtro de partición para las búsquedas sobre la tabla suministrada. Esta marca solo se puede usar con una tabla particionada.

--rpc={true|false}

Para usar la API de búsqueda de estilo RPC en lugar del método jobs.insert de la API de REST, configúrala como true. El valor predeterminado es false.

--schedule="SCHEDULE"

Convierte una consulta en una consulta programada recurrente. Es necesario tener un programa con la frecuencia con la que se debe ejecutar la consulta.

Ejemplos:

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

Para obtener una descripción de la sintaxis del programa, consulta Define el formato de programa.

--schema_update_option=OPTION

Cuando se agregan datos a una tabla (en un trabajo de carga o de búsqueda) o cuando se reemplaza una partición de una tabla, especifica cómo actualizar el esquema de la tabla de destino. Usa uno de los siguientes valores:

  • ALLOW_FIELD_ADDITION: Permite que se agreguen campos nuevos.
  • ALLOW_FIELD_RELAXATION: Permite disminuir la rigurosidad de los campos REQUIRED a NULLABLE.

Repite esta marca para especificar varias opciones de actualización del esquema.

--start_row=ROW_NUMBER o -s=ROW_NUMBER

Un número entero que especifica la primera fila que se mostrará en el resultado de la consulta. El valor predeterminado es 0.

--target_dataset=DATASET

Cuando se especifica con --schedule, actualiza el conjunto de datos de destino para una consulta programada. La consulta debe ser DDL o DML.

--time_partitioning_expiration=SECONDS

Úsalo con la marca --destination_table. Un número entero que especifica (en segundos) cuándo se debe borrar una partición basada en el tiempo. La fecha y hora de vencimiento se evalúan según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si el número es negativo, no hay vencimiento.

--time_partitioning_field=COLUMN_NAME

Úsalo con la marca --destination_table. Especifica la columna de partición para la partición basada en el tiempo. Si la partición basada en el tiempo se habilita sin este valor, la tabla se particiona en función del tiempo de transferencia.

--time_partitioning_type=INTERVAL

Úsalo con la marca --destination_table. Especifica el tipo de partición para la tabla de destino. Usa uno de los siguientes valores:

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

Esta marca solo se aplica a las consultas de SQL heredado. Especifica el URI de Cloud Storage o la ruta de acceso a un archivo local que contiene un recurso de función definido por el usuario que se usará en una búsqueda de SQL heredado. Repite esta marca para especificar varios archivos.

--use_cache={true|false}

Para inhabilitar el almacenamiento en caché de los resultados de las búsquedas, configúralo como false. El valor predeterminado es true.

--use_legacy_sql={true|false}

Para ejecutar una búsqueda de SQL estándar, configúrala en false. El valor predeterminado es true, el comando usa SQL heredado.

QUERY

La búsqueda que deseas ejecutar.

Para obtener más información sobre el uso del comando bq query, consulta Cómo ejecutar trabajos de búsqueda interactivos y por lotes.

bq remove-iam-policy-binding

Usa el comando bq remove-iam-policy-binding para recuperar la Política de IAM de un recurso y quitar una vinculación de la política, en un paso. El recurso puede ser una tabla o una vista.

Este comando es una alternativa al siguiente proceso de tres pasos:

  1. Usa el comando bq get-iam-policy para recuperar el archivo de políticas (en formato JSON).
  2. Editar el archivo de políticas.
  3. Usa el comando bq set-iam-policy para actualizar la política sin la vinculación.

Sinopsis

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

Marcas y argumentos

El comando bq remove-iam-policy-binding usa los siguientes argumentos y marcas:

--member=MEMBER_TYPE:MEMBER

Obligatorio. Usa la marca --member para especificar la parte del miembro de la vinculación de la política de IAM. La marca --member es obligatoria junto con la marca --role. Una combinación de las marcas --member y --role equivale a una vinculación.

El valor MEMBER_TYPE especifica el tipo de miembro en la vinculación de política de IAM. Usa uno de los siguientes valores:

  • user
  • serviceAccount
  • group
  • domain

El valor MEMBER especifica la dirección de correo electrónico o el dominio del miembro en la vinculación de política de IAM.

--role=ROLE

Obligatorio. Especifica la parte de la función que pertenece a la vinculación de política de IAM. La marca --role es obligatoria junto con la marca --member. Una combinación de las marcas --member y --role equivale a una vinculación.

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

Opcional. Para quitar una vinculación de la política de IAM de una tabla o vista, configúrala como true. El valor predeterminado es false.

RESOURCE es la tabla o vista cuya vinculación de política deseas quitar.

Para obtener más información, consulta la referencia de la política de IAM.

bq rm

Usa el comando bq rm para borrar un recurso de BigQuery.

Sinopsis

bq rm [FLAGS] RESOURCE

Marcas y argumentos

El comando bq rm usa los siguientes argumentos y marcas:

--capacity_commitment={false|true}
Para borrar un compromiso de capacidad, configúralo como true. El valor predeterminado es false.
--dataset={true|false} o -d={true|false}
Para borrar un conjunto de datos, configúralo como true. El valor predeterminado es false.
--force={true|false} o -f={true|false}
Para borrar un recurso sin solicitarlo, configúralo como true. El valor predeterminado es false.
--job={true|false} o -j={true|false}
Para borrar un trabajo, configúralo como verdadero. El valor predeterminado es false.
--model={true|false} o -m={true|false}
Para borrar un modelo de BigQuery ML, configúralo como true. El valor predeterminado es false.
--recursive={true|false} o -r{true|false}
Para borrar un conjunto de datos y cualquier tabla, datos de tabla o modelos que tenga, configúralo como true. El valor predeterminado es false.
--reservation={true|false}
Para borrar una reserva, configúrala como true. El valor predeterminado es false.
--reservation_assignment={true|false}
Para borrar una asignación de reserva, configúrala en true. El valor predeterminado es false
--routine={true|false}
Para borrar una rutina, configúrala en true. El valor predeterminado es false. Una rutina puede ser una función persistente definida por el usuario, una función de tabla (Vista previa) o un procedimiento almacenado.
--table={true|false} o -t={true|false}
Para borrar una tabla, configúrala como true. El valor predeterminado es false
--transfer_config={true|false}
Para borrar una configuración de transferencia, configúrala como true. El valor predeterminado es false.
RESOURCE
El recurso que deseas quitar.

Para obtener más información sobre el uso del comando bq rm, consulta los siguientes vínculos:

bq set-iam-policy

Usa el comando bq set-iam-policy para especificar o actualizar la política de IAM de un recurso. El recurso puede ser una tabla o una vista. Una vez que establezcas la política, la política nueva se imprimirá en stdout. La política está en formato JSON.

El campo etag de la política actualizada debe coincidir con el valor etag de la política actual, de lo contrario, la actualización fallará. Esta función evita actualizaciones simultáneas.

Puedes obtener la política actual y el valor de etag de un recurso mediante el comando bq get-iam-policy.

Sinopsis

bq set-iam-policy [FLAGS] RESOURCE FILE_NAME

Marcas y argumentos

El comando bq set-iam-policy usa los siguientes argumentos y marcas.

--table={true|false} o -t={true|false}
Opcional. Para configurar la política de IAM de una tabla o vista, configúrala como true. El valor predeterminado es false.

RESOURCE es la tabla o vista cuya política deseas actualizar.

FILE_NAME es el nombre de un archivo que contiene la política en formato JSON.

Para obtener más información sobre el comando bq set-iam-policy, con ejemplos, consulta Introducción a los controles de acceso a tablas.

bq show

Usa el comando bq show para mostrar información sobre un recurso.

Sinopsis

bq show [FLAGS] [RESOURCE]

Marcas y argumentos

El comando bq show usa los siguientes argumentos y marcas:

--assignee_id=ASSIGNEE
Cuando se usa con la marca --reservation_assignment, especifica el ID de una carpeta, una organización o un proyecto. Usa la marca --assignee_type para especificar qué tipo de usuario asignado se mostrará.
--assignee_type=TYPE
Cuando se usa con la marca --reservation_assignment, especifica el tipo de entidad que se mostrará. Usa uno de los siguientes valores:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--connection={true|false}
Para mostrar información sobre una conexión, configúrala como true. El valor predeterminado es false Para obtener más información, consulta Visualiza un recurso de conexión.
--dataset={true|false} o -d={true|false}
Para mostrar información sobre un conjunto de datos, configúralo como true. El valor predeterminado es false.
--encryption_service_account={true|false}
Para mostrar la cuenta de servicio de encriptación de un proyecto, si existe, o crear una si no existe, configúrala como true. El valor predeterminado es false. Úsalo con la marca --project_id.
--job={true|false} o -j={true|false}
Para mostrar información sobre un trabajo, configúralo como true. El valor predeterminado es false.
--job_type=JOB_TYPE
Cuando se usa con la marca --reservation_assignment, especifica el tipo de trabajo de las asignaciones de reserva que deseas mostrar. Usa uno de los siguientes valores:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
--model={true|false} o -m={true|false}
Para mostrar información sobre un modelo de BigQuery ML, configúralo como true. El valor predeterminado es false.
--reservation={true|false}
Para mostrar información sobre una reserva, configúrala como true. El valor predeterminado es false
--reservation_assignment={true|false}
Cuando se configura como true, el comando muestra las asignaciones de reserva de una carpeta, organización o proyecto. El comando muestra las asignaciones explícitas del recurso de destino, si las hay. De lo contrario, muestra las asignaciones heredadas de los recursos superiores. Por ejemplo, un proyecto puede heredar asignaciones de su carpeta superior. Cuando se usa esta marca, se aplican las marcas --job_type, --assignee_type y --assignee_id. El valor predeterminado es false.
--routine={true|false}
Para mostrar información sobre una rutina, configúrala como true. El valor predeterminado es false Una rutina puede ser una función persistente definida por el usuario, una función de tabla (Vista previa) o un procedimiento almacenado.
--schema={true|false}
Para mostrar solo el esquema de la tabla, configúralo como true. El valor predeterminado es false.
--transfer_config={true|false}
Para mostrar información sobre una configuración de transferencia, configúrala como true. El valor predeterminado es false.
--transfer_run={true|false}
Para mostrar información sobre una ejecución de transferencia, configúrala en true. El valor predeterminado es false.
--view={true|false}
Para mostrar información sobre una vista, configúrala como true. El valor predeterminado es false.
RESOURCE
El recurso cuya información deseas mostrar.

Para obtener más información sobre el uso del comando bq show, consulta los siguientes vínculos:

bq update

Usa el comando bq update para cambiar un recurso.

Sinopsis

bq update [FLAGS] [RESOURCE]

Marcas y argumentos

El comando bq update usa los siguientes argumentos y marcas:

--capacity_commitment={true|false}
Para actualizar un compromiso de capacidad, configúralo como true. El valor predeterminado es false. Usa esta marca con las marcas --merge, --plan, --renewal_plan, --split y --slots.
--clear_label=KEY:VALUE
Quita una etiqueta del recurso. Usa el formato KEY:VALUE para especificar la etiqueta que deseas quitar. Repite esta etiqueta para quitar varias etiquetas.
--clustering_fields=COLUMNS
Actualiza la especificación de agrupamiento en clústeres de una tabla. El valor COLUMNS es una lista de nombres de columna separados por comas para usar en agrupamiento en clústeres. Para quitar el agrupamiento en clústeres, configura COLUMNS como "" (la string vacía). Para obtener más información, consulta Modifica la especificación de agrupamiento en clústeres.
--dataset={true|false} o -d={true|false}
Para actualizar un conjunto de datos, configúralo como true. El valor predeterminado es false.
--default_kms_key=KEY
Especifica el ID de recurso de la clave de Cloud KMS predeterminado para encriptar los datos de la tabla en un conjunto de datos. La clave predeterminada se usa si no se proporciona una clave explícita para la creación de una tabla ni una búsqueda.
--default_partition_expiration=SECONDS

Un número entero que especifica el vencimiento predeterminado (en segundos) de todas las particiones de las tablas particionadas nuevas que se crean en el conjunto de datos. Esta marca no tiene un valor mínimo.

La fecha y hora de vencimiento de una partición se determina según la suma de la fecha de la partición en formato UTC más el valor del número entero. Cuando se configura esta propiedad, se anula el vencimiento predeterminado de la tabla definido para todo el conjunto de datos, si existe. Si suministras la marca --time_partitioning_expiration cuando creas o actualizas una tabla particionada, el vencimiento de la partición a nivel de la tabla tiene prioridad sobre el vencimiento predeterminado de la partición a nivel del conjunto de datos. Especifica 0 para quitar un tiempo de vencimiento existente.

--default_table_expiration=SECONDS

Un número entero que actualiza la duración predeterminada, en segundos, de las tablas nuevas que se crean en un conjunto de datos. La fecha y hora de vencimiento se determina mediante la suma de la hora actual en formato UTC más este valor. Especifica 0 para quitar el tiempo de vencimiento existente.

--description=DESCRIPTION

Actualiza la descripción de un conjunto de datos, una tabla, una instantánea de tabla (Vista previa), un modelo o una vista.

--destination_reservation_id=RESERVATION_ID

Cuando se usa con la marca --reservation_assignment, mueve una asignación de reserva existente a la reserva especificada. El valor es el ID de la reserva de destino. Para obtener más información, consulta Mueve una asignación a una reserva diferente.

--display_name=DISPLAY_NAME

Actualiza el nombre visible de una configuración de transferencia.

--etag=ETAG

Actúa como filtro, actualiza el recurso solo si este tiene una ETag que coincida con la string especificada en el argumento ETAG.

--expiration SECONDS

Para actualizar el vencimiento de la tabla, el modelo, la instantánea de tabla (Vista previa) o la vista, incluye esta marca. Reemplaza SECONDS por la cantidad de segundos desde la hora de actualización hasta la fecha de vencimiento. Para quitar el vencimiento de una tabla, un modelo, una instantánea de tabla (Vista previa) o vista, establece el argumento SECONDS en 0.

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

Actualiza una tabla externa con la definición de tabla especificada. La definición de tabla puede ser una ruta de acceso a un archivo de definición de tabla JSON local o una definición de tabla intercalada en el formato SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. El valor SCHEMA es una lista de definiciones de columnas separadas por comas en el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, y así sucesivamente. Si usas un archivo de definición de tablas, no le agregues una extensión.

Por ejemplo:

--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}

Úsalo con la marca --reservation. Para restringir los trabajos que se ejecutan en la reserva especificada a fin de usar solo las ranuras asignadas a esa reserva, configúrala como true. El valor predeterminado es false. Los trabajos de la reserva especificada pueden usar ranuras inactivas de otras reservas o ranuras que no se asignaron a ninguna reserva. Para obtener más información, consulta Ranuras inactivas.

--merge={true|false}

Úsalo con la marca --capacity_commitment. Configúralo como true para combinar dos compromisos de capacidad. El valor predeterminado es false. Para obtener más información, consulta Combina dos compromisos.

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

Para actualizar los metadatos de un modelo de BigQuery ML, configúralo como true. El valor predeterminado es false.

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

Actualiza los parámetros de una configuración de transferencia. Los parámetros varían según la fuente de datos. Para obtener más información, consulta Introducción al Servicio de transferencia de datos de BigQuery.

--plan=PLAN

Cuando se usa con la marca --capacity_commitment, convierte un compromiso de capacidad en un plan de compromiso de mayor duración. Uno de los siguientes:

  • FLEX
  • MONTHLY
  • ANNUAL
--refresh_window_days=DAYS

Un número entero que especifica un nuevo período de actualización (en días) para una configuración de transferencia.

--renewal_plan=PLAN

Cuando se usa con la marca --capacity_commitment, especifica el plan de renovación para un compromiso de capacidad existente. Uno de los siguientes:

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

Especifica si se debe actualizar una reserva. El valor predeterminado es false

--reservation_assignment={true|false}

Especifica si se debe actualizar una asignación de reserva. El valor predeterminado es false.

--schema={SCHEMA_FILE|SCHEMA}

Especifica la ruta de acceso a un archivo de esquema JSON local o una lista de definiciones de columnas separadas por comas con el formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, etcétera. Si usas un archivo de esquema, no le pongas una extensión.

Por ejemplo:

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

--set_label=KEY:VALUE

Especifica una etiqueta que se actualizará. Para actualizar varias etiquetas, repite esta marca.

--slots=NUMBER_OF_SLOTS

Cuando se usa con las marcas --capacity_commitment y --split, especifica la cantidad de ranuras para dividir de un compromiso de capacidad existente en un compromiso nuevo. Cuando se usa con la marca --reservation, actualiza la cantidad de ranuras en una reserva.

--source=FILE

La ruta a un archivo JSON local que contiene una carga útil usada para actualizar un recurso. Por ejemplo, puedes usar esta marca para especificar un archivo JSON que contenga un recurso de conjunto de datos con una propiedad access actualizada. El archivo se usa para reemplazar los controles de acceso del conjunto de datos.

--split={true|false}

Cuando se usa con la marca --capacity_commitment, especifica si se debe dividir un compromiso de capacidad existente. El valor predeterminado es false. Si deseas obtener más información, consulta Divide un compromiso.

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

Especifica si se debe actualizar una tabla. El valor predeterminado es false

--target_dataset=DATASET

Cuando se especifica, actualiza el conjunto de datos de destino de una configuración de transferencia.

--time_partitioning_expiration=SECONDS

Un número entero que actualiza (en segundos) cuándo se debe borrar una partición basada en el tiempo. La fecha y hora de vencimiento se evalúa según la suma de la fecha de la partición en formato UTC más el valor del número entero. Si el número es negativo, no hay vencimiento.

--time_partitioning_field=COLUMN_NAME

Actualiza el campo usado para determinar cómo crear una partición basada en el tiempo. Si la partición basada en el tiempo se habilita sin este valor, la tabla se particiona en función del tiempo de carga.

--time_partitioning_type=INTERVAL

Especifica el tipo de partición. Usa uno de los siguientes valores:

  • DAY
  • HOUR
  • MONTH
  • YEAR

No puedes cambiar el tipo de partición de una tabla existente.

--transfer_config={true|false}

Especifica si se debe actualizar una configuración de transferencia. El valor predeterminado es false.

--update_credentials={true|false}

Especifica si se deben actualizar las credenciales de configuración de transferencia. El valor predeterminado es false.

--use_legacy_sql={true|false}

Configúralo como false a fin de actualizar la búsqueda de SQL para una vista de SQL heredado a SQL estándar. El valor predeterminado es true, la búsqueda usa SQL heredado.

--view=QUERY

Cuando se especifica, actualiza la búsqueda de SQL de una vista.

--view_udf_resource=FILE

Actualiza el URI de Cloud Storage o la ruta a un archivo de código local que se cargará y evaluará de inmediato como recurso de función definido por el usuario en la búsqueda de SQL de una vista. Repite esta marca para especificar varios archivos.

RESOURCE

El recurso que deseas actualizar.

Para obtener más información sobre el uso del comando bq update, consulta los siguientes vínculos:

bq version

Usa el comando bq version para mostrar el número de versión de tu herramienta de línea de comandos de bq.

Sinopsis

bq version

bq wait

Usa el comando bq wait a fin de esperar una cantidad de segundos especificada para que un trabajo finalice. Si no se especifica un trabajo, el comando espera a que finalice el trabajo actual.

Sinopsis

bq wait [FLAGS] [JOB] [SECONDS]

Ejemplos

bq wait
bq wait --wait_for_status=RUNNING 12345 100

Marcas y argumentos

El comando bq wait usa los siguientes argumentos y marcas:

--fail_on_error={true|false}
Para mostrar un resultado correcto si el trabajo se completó durante el tiempo de espera, incluso si falló, configúralo como false. El valor predeterminado es true. Una vez transcurrido el tiempo de espera, el comando finaliza y muestra un error si aún se está ejecutando o si falló.
--wait_for_status=STATUS

Cuando se especifica, espera un estado de trabajo específico antes de mostrar un resultado. Usa uno de los siguientes valores:

  • PENDING
  • RUNNING
  • DONE

El valor predeterminado es DONE.

JOB

Especifica el trabajo que se debe esperar. Puedes usar el comando bq ls --jobs myProject para encontrar un identificador de trabajo.

SECONDS

Especifica la cantidad máxima de segundos que se debe esperar hasta que se complete el trabajo. Si ingresas 0, el comando realiza un sondeo para determinar si se completó el trabajo y el resultado se muestra de forma inmediata. Si no especificas un número entero, el comando espera hasta que finalice el trabajo.