Riferimento per lo strumento a riga di comando bq

Questo documento descrive la sintassi, i comandi, i flag e gli argomenti per bq, lo strumento a riga di comando BigQuery. È destinato agli utenti che hanno familiarità con BigQuery, ma vogliono sapere come utilizzare un comando specifico dello strumento a riga di comando bq. Per informazioni generali su come utilizzare lo strumento a riga di comando bq, consulta Utilizzo dello strumento a riga di comando bq.

Trama

Lo strumento a riga di comando bq utilizza il seguente formato:

bq COMMAND [FLAGS] [ARGUMENTS]

Alcuni flag possono essere utilizzati con più comandi dello strumento a riga di comando bq. Questi flag sono descritti nella sezione Flag globali.

Altri flag sono specifici del comando e possono essere utilizzati solo con un particolare comando dello strumento a riga di comando bq. I flag specifici del comando sono descritti nelle sezioni del comando.

Flag booleani

Alcuni flag dello strumento a riga di comando bq sono booleani; puoi impostare il valore del flag su true o false. Lo strumento a riga di comando bq accetta i seguenti formati per impostare i flag booleani.

Valore Formato Esempio
true --FLAGNAME=true --debug_mode=true
true --FLAGNAME --debug_mode
false --FLAGNAME=false --debug_mode=false
false --noFLAGNAME --nodebug_mode

Questo documento utilizza il formato --FLAGNAME=VALUE per i flag booleani.

Tutti i flag booleani sono facoltativi; se un flag booleano non è presente, BigQuery utilizza il valore predefinito del flag.

Specifica dei valori per i flag

Quando specifichi un valore per un flag, il segno di uguale (=) è facoltativo. Ad esempio, i seguenti due comandi sono equivalenti:

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

Questo documento utilizza il segno di uguale per chiarezza.

Guida online

La documentazione è disponibile nello strumento a riga di comando bq, come segue:

Descrizione Formato del comando help Esempio
Elenco di tutti i comandi con esempi bq help bq help
Descrizione dei flag globali bq --help bq --help
Descrizione di un comando specifico bq help COMMAND bq help mk

Specifica delle risorse

Il formato per specificare una risorsa dipende dal contesto; in alcuni casi il separatore tra il progetto e il set di dati è un segno dei due punti (:) e in altri casi è un punto (.). La seguente tabella descrive come specificare una tabella BigQuery in contesti diversi.

Contesto Formato Esempio
Strumento a riga di comando bq PROJECT:DATASET.TABLE myProject:myDataset.myTable
Query GoogleSQL PROJECT.DATASET.TABLE myProject.myDataset.myTable
Query SQL precedente PROJECT:DATASET.TABLE myProject:myDataset.myTable

Se non specifichi un progetto, BigQuery utilizza il progetto corrente. Ad esempio, se il progetto corrente è myProject, BigQuery interpreta myDataset.myTable come myProject:myDataset.myTable (o myProject.myDataset.myTable).

Alcuni identificatori di risorse devono essere racchiusi tra apici inversi (`). Se l'identificatore di risorsa inizia con una lettera o un carattere di sottolineatura e contiene solo caratteri che sono lettere, numeri e trattini bassi, non è necessario racchiuderlo tra virgolette. Tuttavia, se l'identificatore della risorsa contiene altri tipi di caratteri o parole chiave riservate, devi racchiudere l'identificatore (o la parte dell'identificatore con i caratteri speciali o le parole chiave riservate) tra apici inversi. Per ulteriori informazioni, consulta Identificatori.

Flag globali

Puoi utilizzare i seguenti flag con qualsiasi comando bq, se applicabile:

--api=ENDPOINT
Specifica l'endpoint API da chiamare. Il valore predefinito è https://www.googleapis.com.
--api_version=VERSION
Specifica la versione dell'API da utilizzare. Il valore predefinito è v2.
--apilog=FILE

Registra tutte le richieste e le risposte API nel file specificato da FILE. I valori possibili sono i seguenti:

  • il percorso di un file: i log vengono inviati al file specificato
  • stdout - logs to standard output
  • stderr - logs to standard error
  • false: le richieste e le risposte API non vengono registrate (impostazione predefinita)
--use_google_auth={true|false}

Se impostato su true, attiva l'autenticazione utilizzando le librerie di autenticazione Google. Il valore predefinito è true.

--bigqueryrc=PATH

Specifica il percorso del file di configurazione dello strumento a riga di comando bq. Se non specifichi il flag --bigqueryrc, il comando utilizza la variabile di ambiente BIGQUERYRC. Se la variabile di ambiente non è impostata, viene utilizzato $HOME/.bigqueryrc. Se il file non esiste, viene utilizzato ~/.bigqueryrc. Per ulteriori informazioni, consulta la sezione Impostare i valori predefiniti per i flag della riga di comando.

--ca_certificates_file=PATH

Specifica la posizione del file Certificate Authority Service (CA).

--dataset_id=DATASET_ID

Specifica il set di dati predefinito da utilizzare con il comando. Questo flag viene ignorato quando non è applicabile. Puoi specificare l'argomento DATASET_ID utilizzando il formato PROJECT:DATASET o DATASET. Se la parte PROJECT non è presente, viene utilizzato il progetto predefinito. Puoi ignorare l'impostazione predefinita del progetto specificando il flag --project_id.

--debug_mode={true|false}

Se impostato su true, mostra i traceback sulle eccezioni Python. Il valore predefinito è false.

--disable_ssl_validation={true|false}

Se impostato su true, attiva la convalida del certificato HTTPS. Il valore predefinito è false.

--discovery_file=PATH

Specifica il file JSON da leggere per il rilevamento.

--enable_gdrive={true|false}

Se impostato su false, richiede un nuovo token OAuth senza l'ambito Google Drive. Il valore predefinito è true; richiede un nuovo token OAuth con l'ambito Drive. Per impostare questo flag su false quando l'autenticazione viene eseguita utilizzando un account utente, il flag --use_google_auth deve essere impostato su false.

--fingerprint_job_id={true|false}

Per utilizzare un ID job derivato da un'impronta della configurazione del job, impostalo su true. In questo modo si evita l'esecuzione accidentale dello stesso job più volte. Il valore predefinito è false.

--format=FORMAT

Specifica il formato dell'output del comando. Utilizza uno dei seguenti valori:

  • pretty: output della tabella formattata
  • sparse: output della tabella più semplice
  • prettyjson: formato JSON di facile lettura
  • json: JSON compatto al massimo
  • csv: formato CSV con intestazione

pretty, sparse e prettyjson sono pensati per essere leggibili. json e csv sono destinati a essere utilizzati da un altro programma. Se viene specificato none, il comando non produce alcun output. Se il flag --format non è presente, viene scelto un formato di output appropriato in base al comando.

--headless={true|false}

Per eseguire la sessione bq senza interazione dell'utente, imposta il valore su true. Ad esempio, debug_mode non viene interrotto nel debugger e la frequenza di stampa informativa è ridotta. Il valore predefinito è false.

--httplib2_debuglevel=DEBUG_LEVEL

Specifica se mostrare le informazioni di debug HTTP. Se DEBUG_LEVEL è maggiore di 0, il comando registra le richieste e le risposte del server HTTP in stderr, oltre ai messaggi di errore. Se DEBUG_LEVEL non è > 0, o se il flag --httplib2_debuglevel non viene utilizzato, vengono forniti solo messaggi di errore.

Ad esempio:

--httplib2_debuglevel=1

--job_id=JOB_ID

Specifica un identificatore di lavoro per un nuovo lavoro. Questo flag si applica solo ai comandi che creano job: cp, extract, load e query. Se non utilizzi il flag --job_id, i comandi generano un identificatore univoco del job. Per saperne di più, vedi Esecuzione di job a livello di programmazione.

--job_property=KEY:VALUE

Una coppia chiave-valore da includere nel campo proprietà della configurazione del job. Ripeti questo flag per specificare proprietà aggiuntive.

--location=LOCATION

Una stringa corrispondente a una località di una o più regioni. Il flag di posizione è obbligatorio per il comando bq cancel e per il comando bq show quando utilizzi il flag --jobs per mostrare informazioni sui job. Il flag location è facoltativo per i seguenti comandi:

  • query
  • cp
  • load
  • extract
  • partition
  • update
  • wait
  • mk quando utilizzi i flag --dataset, --reservation, --capacity_commitment o --reservation_assignment
  • ls quando utilizzi i flag --reservation, --capacity_commitment o --reservation_assignment

Tutti gli altri comandi ignorano il flag --location.

--max_rows_per_request=MAX_ROWS

Un numero intero che specifica il numero massimo di righe da restituire per lettura.

--project_id=PROJECT

Specifica il progetto da utilizzare per i comandi.

--proxy_address=PROXY

Specifica il nome o l'indirizzo IP dell'host proxy da utilizzare per la connessione a Google Cloud.

--proxy_password=PASSWORD

Specifica la password da utilizzare per l'autenticazione con l'host proxy.

--proxy_port=PORT

Specifica il numero di porta da utilizzare per connettersi all'host proxy.

--proxy_username=USERNAME

Specifica il nome utente da utilizzare per l'autenticazione con l'host proxy.

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

Per eliminare gli aggiornamenti di stato durante l'esecuzione dei job, imposta true. Il valore predefinito è false.

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

Per creare il job e tornare immediatamente indietro con lo stato di completamento riuscito come codice di errore, imposta false. Se impostato su true, il comando attende il completamento del job prima di restituire il risultato e restituisce lo stato di completamento del job come codice di errore. Il valore predefinito è true.

--trace=token:TOKEN

Specifica un token di tracciamento da includere nelle richieste API.

--use_regional_endpoints={true|false}

In anteprima. Per connetterti a un endpoint regionale, imposta il flag --use_regional_endpoints su true e il flag --location sulla regione a cui vuoi connetterti. Il valore predefinito è false.

Flag globali ritirati

Il seguente flag globale per specificare i flag dello strumento a riga di comando bq da un file è ritirato. Per specificare i flag da un file, utilizza il flag --bigqueryrc.

--flagfile=PATH

Se specificate, le definizioni dei flag del file fornito vengono inserite nello strumento a riga di comando bq. Il valore predefinito è ''. Per ulteriori informazioni, vedi Impostazione dei valori predefiniti per i flag della riga di comando.

Comandi

Le sezioni seguenti descrivono i comandi dello strumento a riga di comando bq, insieme ai relativi flag e argomenti specifici del comando.

bq add-iam-policy-binding

Utilizza il comando bq add-iam-policy-binding per recuperare i criteri Identity and Access Management (IAM) per una tabella o una vista e aggiungere un'associazione ai criteri in un unico passaggio.

Questo comando è un'alternativa alla seguente procedura in tre passaggi:

  1. Utilizzando il comando bq get-iam-policy per recuperare il file di criteri (in formato JSON).
  2. Modifica del file delle norme.
  3. Utilizzo del comando bq set-iam-policy per aggiornare la policy con un nuovo binding.

Trama

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

Esempio

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

Flag e argomenti

Il comando bq add-iam-policy-binding utilizza i seguenti flag e argomenti:

--member=MEMBER_TYPE:MEMBER

Obbligatorio. Utilizza il flag --member per specificare il membro che fa parte del binding dei criteri IAM. Il flag --member è obbligatorio insieme al flag --role. Una combinazione di flag --member e --role equivale a un binding.

Il valore MEMBER_TYPE specifica il tipo di membro nell'associazione dei criteri IAM. Utilizza uno dei seguenti valori:

  • user
  • serviceAccount
  • group
  • domain

Il valore MEMBER specifica l'indirizzo email o il dominio del membro nell'associazione del criterio IAM.

--role=ROLE

Obbligatorio. Specifica la parte del ruolo dell'associazione dei criteri IAM. Il flag --role è obbligatorio insieme al flag --member. Una combinazione di flag --member e --role equivale a un binding.

--table={true|false}

Per restituire un errore se l'argomento RESOURCE non è un identificatore di tabella o vista, imposta il flag --table su true. Il valore predefinito è false. Questo flag è supportato per coerenza con altri comandi.

RESOURCE

La tabella o la visualizzazione a cui vuoi aggiungere il criterio.

Per ulteriori informazioni, consulta il riferimento alle norme IAM.

bq cancel

Utilizza il comando bq cancel per annullare i job BigQuery.

Trama

bq [--synchronous_mode=false] cancel JOB_ID

Esempi

bq cancel bqjob_12345
bq --synchronous_mode=false cancel bqjob_12345

Flag e argomenti

Il comando bq cancel utilizza i seguenti flag e argomenti:

--synchronous_mode=false
Se non vuoi attendere il completamento del comando bq cancel ,imposta il flag globale --synchronous_mode su false. Il valore predefinito è true.
JOB_ID
Il job che vuoi annullare.

Per saperne di più sull'utilizzo del comando bq cancel, consulta la sezione Gestione dei job.

bq cp

Utilizza il comando bq cp per le seguenti attività:

Trama

bq cp [FLAGS] SOURCE_TABLE DESTINATION_TABLE

Esempio

bq cp myDataset.myTable myDataset.myTableCopy

Flag e argomenti

Il comando bq cp utilizza i seguenti flag e argomenti:

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

Per aggiungere una tabella a una tabella esistente, imposta questo campo su true. Il valore predefinito è false.

Non puoi utilizzare contemporaneamente le impostazioni dei flag --append_table=true e --clone=true.

--clone={true|false}

Per creare un clone della tabella, imposta true. La tabella di base può essere una tabella standard, un clone di una tabella o uno snapshot di una tabella. La tabella di destinazione è un clone della tabella. Il valore predefinito è false; se non vengono specificati --clone=true--snapshot=true, la tabella di destinazione è dello stesso tipo della tabella di base. Richiede il flag --no_clobber.

Non puoi utilizzare contemporaneamente le impostazioni dei flag --append_table=true e --clone=true.

--destination_kms_key=KEY

Specifica un ID risorsa chiave Cloud KMS per criptare i dati della tabella di destinazione.

Ad esempio:

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

--expiration=SECONDS

Il numero di secondi fino alla scadenza di uno snapshot della tabella. Se non è inclusa, la scadenza dello snapshot della tabella è impostata sulla scadenza predefinita del set di dati contenente il nuovo snapshot della tabella. Utilizzare con il flag --snapshot.

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

Per sovrascrivere la tabella di destinazione, se esiste, senza prompt, imposta su true. Il valore predefinito è false; se la tabella di destinazione esiste, il comando richiede la conferma prima di sovrascriverla.

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

Per impedire la sovrascrittura della tabella di destinazione, se esiste, imposta il valore su true. Il valore predefinito è false; se la tabella di destinazione esiste, viene sovrascritta.

--restore={true|false}

Questo flag è in fase di ritiro. Per creare una tabella scrivibile da uno snapshot di una tabella, utilizza il comando bq cp o il comando bq cp --clone.

--snapshot={true|false}

Per creare uno snapshot della tabella della tabella specificata nell'argomento SOURCE_TABLE, imposta il valore true. La tabella di base può essere una tabella standard, un clone di una tabella o un altro snapshot della tabella. Il valore predefinito è false; se non vengono specificati --clone=true--snapshot=true, la tabella di destinazione è dello stesso tipo della tabella di base. Richiede il flag --no_clobber.

SOURCE_TABLE

La tabella che vuoi copiare.

DESTINATION_TABLE

La tabella in cui vuoi copiare i dati.

Per ulteriori informazioni sull'utilizzo del comando cp, consulta le seguenti risorse:

bq extract

Utilizza il comando bq extract per esportare i dati delle tabelle in Cloud Storage.

Trama

bq extract [FLAGS] RESOURCE DESTINATION

Esempi

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

Flag e argomenti

Il comando bq extract utilizza i seguenti flag e argomenti:

--compression=COMPRESSION_TYPE

Specifica il tipo di compressione da utilizzare per i file esportati. I valori possibili sono i seguenti:

  • GZIP
  • DEFLATE
  • SNAPPY
  • NONE

Il valore predefinito è NONE.

Per informazioni sui formati supportati per ciascun tipo di compressione, consulta Formati di esportazione e tipi di compressione.

--destination_format=FORMAT

Specifica il formato per i dati esportati. I valori possibili sono i seguenti:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • PARQUET

Il valore predefinito è CSV.

--field_delimiter=DELIMITER

Per le esportazioni CSV, specifica il carattere che delimita le colonne nel file di output. Il delimitatore può essere qualsiasi carattere a singolo byte ISO-8859-1. Puoi utilizzare \t o tab per specificare i delimitatori di tabulazione.

--print_header={true|false}

Per eliminare la stampa delle righe di intestazione per i formati che le hanno, imposta false. Il valore predefinito è true; le righe di intestazione sono incluse.

RESOURCE

La tabella da cui stai esportando.

DESTINATION

La posizione di archiviazione che riceve i dati esportati.

Per saperne di più sull'utilizzo del comando bq extract, vedi Esportare i dati delle tabelle.

bq get-iam-policy

Utilizza il comando bq get-iam-policy per recuperare il criterio IAM per una risorsa e stamparlo in stdout. La risorsa può essere una tabella o una vista. I criteri sono in formato JSON.

Trama

bq get-iam-policy [FLAGS] RESOURCE

Esempio

bq get-iam-policy myDataset.myTable

Flag e argomenti

Il comando bq get-iam-policy utilizza i seguenti flag e argomenti:

--table={true|false} o --t={true|false}
Per restituire un errore se RESOURCE non è un identificatore di tabella o vista, imposta il flag --table su true. Il valore predefinito è false. Questo flag è supportato per coerenza con altri comandi.
RESOURCE
La tabella o la vista di cui vuoi ottenere la policy.

Per maggiori informazioni sul comando bq get-iam-policy, consulta Controllare l'accesso alle risorse con IAM.

bq head

Utilizza il comando bq head per visualizzare le righe e le colonne specificate di una tabella. Per impostazione predefinita, vengono visualizzate tutte le colonne delle prime 100 righe.

Trama

bq head [FLAGS] [TABLE]

Esempio

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

Flag e argomenti

Il comando bq head utilizza i seguenti flag e argomenti:

--job=JOB or -j=JOB
Per leggere i risultati di un job di query, specifica questo flag con un ID job valido.
--max_rows=MAX or -n=MAX
Un numero intero che indica il numero massimo di righe da stampare quando vengono visualizzati i dati della tabella. Il valore predefinito è 100.
--selected_fields=COLUMN_NAMES or -c=COLUMN_NAMES
Un elenco separato da virgole che specifica un sottoinsieme di campi (inclusi campi nidificati e ripetuti) da restituire quando vengono visualizzati i dati della tabella. Se questo flag non viene specificato, vengono restituite tutte le colonne.
--start_row=START_ROW or -s=START_ROW
Un numero intero che specifica il numero di righe da saltare prima di mostrare i dati della tabella. Il valore predefinito è 0; i dati della tabella iniziano dalla prima riga.
--table={true|false} o -t={true|false}
Per restituire un errore se l'argomento del comando non è una tabella o una vista, imposta true. Il valore predefinito è false. Questo flag è supportato per coerenza con altri comandi.
TABLE
La tabella di cui vuoi recuperare i dati.

Per saperne di più sull'utilizzo del comando bq head, vedi Gestione dei dati delle tabelle.

bq help

Utilizza il comando bq help per visualizzare la documentazione dello strumento a riga di comando bq all'interno dello strumento.

Trama

bq help [COMMAND]

Flag e argomenti

Il comando bq help utilizza i seguenti flag e argomenti:

COMMAND
Specifica un particolare comando dello strumento a riga di comando bq per il quale vuoi ricevere assistenza online.

bq insert

Utilizza il comando bq insert per inserire righe di dati delimitati da nuove righe e in formato JSON in una tabella da un file utilizzando linserimento di flussi di dati. I tipi di dati vengono convertiti in modo che corrispondano ai tipi di colonne della tabella di destinazione. Questo comando è destinato solo a scopi di test. Per trasmettere i dati in streaming in BigQuery, utilizza il metodo API insertAll.

Trama

bq insert [FLAGS] TABLE FILE

Esempi

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

Flag e argomenti

Il comando bq insert utilizza i seguenti flag e argomenti:

--ignore_unknown_values={true|false} o -i={true|false}
Se impostato su true, BigQuery ignora tutte le coppie chiave-valore che non corrispondono allo schema della tabella e inserisce la riga con i dati che corrispondono allo schema. Se impostato su false, le righe con dati che non corrispondono allo schema della tabella non vengono inserite. Il valore predefinito è false.
--skip_invalid_rows={true|false} o -s={true|false}
Se impostato su true, BigQuery tenta di inserire tutte le righe valide, anche se sono presenti righe non valide. Se impostato su false, il comando non va a buon fine se sono presenti righe non valide. Il valore predefinito è false.
--template_suffix=SUFFIX or -x=SUFFIX
Se specificato, considera la tabella di destinazione TABLE come modello di base e inserisci le righe in una tabella di istanza denominata {destination}{templateSuffix}. BigQuery crea la tabella dell'istanza utilizzando lo schema del modello di base.
TABLE
La tabella in cui vuoi inserire i dati.
FILE
Il file contenente i dati da inserire.

Per ulteriori informazioni sull'utilizzo del comando bq insert, consulta la sezione Inserimento di flussi di dati in BigQuery.

bq load

Utilizza il comando bq load per caricare i dati in una tabella.

Trama

bq load [FLAGS] DESTINATION_TABLE SOURCE_DATA [SCHEMA]

Esempio

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

Flag e argomenti

Il comando bq load utilizza i seguenti flag e argomenti:

--allow_jagged_rows={true|false}
Per consentire le colonne facoltative finali mancanti nei dati CSV, imposta il valore su true.
--preserve_ascii_control_characters={true|false}
Per consentire i caratteri di controllo ASCII incorporati nei dati CSV, imposta true.
--allow_quoted_newlines={true|false}
Per consentire i caratteri di fine riga con virgolette nei dati CSV, imposta questo valore su true.
--autodetect={true|false}
Per attivare il rilevamento automatico dello schema per i dati CSV e JSON, imposta questo valore su true. Il valore predefinito è false. Se --autodetect è false e non viene specificato uno schema utilizzando il flag --schema e la tabella di destinazione esiste, viene utilizzato lo schema della tabella di destinazione.
--clustering_fields=COLUMNS
Un elenco separato da virgole di massimo quattro nomi di colonne che specifica i campi da utilizzare per il clustering delle tabelle.
--column_name_character_map=SCOPE
Definisce l'ambito e la gestione dei caratteri nei nomi delle colonne, con la possibilità di attivare nomi delle colonne flessibili. Richiede l'opzione --autodetect per i file CSV. Per un elenco dei valori possibili, vedi load_option_list.
--destination_kms_key=KEY
Specifica un ID risorsa chiave Cloud KMS per criptare i dati della tabella di destinazione.
--encoding=ENCODING_TYPE or -E=ENCODING_TYPE
La codifica dei caratteri utilizzata nei dati. Utilizza uno dei seguenti valori:
  • ISO-8859-1 (nota anche come Latin-1)
  • UTF-8
--field_delimiter=DELIMITER or -F=DELIMITER
Specifica il carattere che delimita le colonne nei dati. Il delimitatore può essere qualsiasi carattere a singolo byte ISO-8859-1. Puoi utilizzare \t o tab per specificare i delimitatori di tabulazione.
--ignore_unknown_values={true|false}
Se impostato su true per i file CSV e JSON, le righe con valori di colonna aggiuntivi che non corrispondono allo schema della tabella vengono caricate, ma le colonne aggiuntive vengono ignorate. Se impostato su true per i file Avro, Parquet e ORC, i campi dello schema del file che non esistono nello schema della tabella vengono ignorati e non vengono caricati.
--json_extension=JSON_TYPE

Specifica il tipo di file JSON da caricare. Si applica solo ai file JSON. I valori possibili sono:

  • GEOJSON - file GeoJSON delimitato da nuova riga

Per utilizzare questo flag, il flag --source_format deve essere impostato su NEWLINE_DELIMITED_JSON.

Per maggiori informazioni, vedi Caricare file GeoJSON delimitati da nuova riga.

--max_bad_records=MAX

Un numero intero che specifica il numero massimo di record non validi consentiti prima che l'intero job non vada a buon fine. Il valore predefinito è 0. Vengono restituiti al massimo cinque errori di qualsiasi tipo, indipendentemente dal valore di --max_bad_records. Questo flag si applica solo al caricamento di dati CSV, JSON e Google Sheets.

--null_marker=STRING

Una stringa personalizzata facoltativa che rappresenta un valore NULL nei dati CSV.

--projection_fields=PROPERTY_NAMES

Se imposti --source_format su DATASTORE_BACKUP, questo flag indica le proprietà dell'entità da caricare da un'esportazione di Datastore. Specifica i nomi delle proprietà in un elenco separato da virgole. I nomi delle proprietà sono sensibili alle maiuscole e devono fare riferimento a proprietà di primo livello. Puoi anche utilizzare questo flag con le esportazioni di Firestore.

--quote=CHARACTER

Specifica un carattere virgolette per racchiudere i campi nei dati CSV. L'argomento CHARACTER può essere qualsiasi carattere a un byte. Il valore predefinito sono le virgolette doppie ("). Per specificare che non è presente alcun carattere di virgolette, utilizza una stringa vuota "".

--replace={true|false}

Per cancellare eventuali dati e schemi esistenti quando vengono caricati nuovi dati, imposta true. Viene rimossa anche qualsiasi chiave Cloud KMS, a meno che tu non specifichi il flag --destination_kms_key. Il valore predefinito è false.

Equivalente al valore WRITE_TRUNCATE per JobConfigurationLoad.writeDisposition.

--schema={SCHEMA_FILE|SCHEMA}

Specifica il percorso di un file di schema JSON locale o un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e così via. Se utilizzi un file di schema, non assegnargli un'estensione.

Ad esempio:

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

Se non viene specificato uno schema e --autodetect è false e la tabella di destinazione esiste, viene utilizzato lo schema della tabella di destinazione.

--schema_update_option=OPTION

Quando aggiungi dati a una tabella (in un job di caricamento o in un job di query) o quando sovrascrivi una partizione di tabella, specifica come aggiornare lo schema della tabella di destinazione. Utilizza uno dei seguenti valori:

  • ALLOW_FIELD_ADDITION: Consenti l'aggiunta di nuovi campi
  • ALLOW_FIELD_RELAXATION: Consenti ai campi di rilassamento REQUIRED di NULLABLE

Ripeti questo flag per specificare più opzioni di aggiornamento dello schema.

--skip_leading_rows=NUMBER_OF_ROWS

Un numero intero che specifica il numero di righe da saltare all'inizio del file di origine. Il valore predefinito è 0.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Specifica come interpretare gli URI di origine.

  • FILE_SYSTEM_MATCH: espande gli URI di origine elencando i file dall'archivio di oggetti. Questo è il comportamento predefinito se FileSetSpecType non è impostato.
  • NEW_LINE_DELIMITED_MANIFEST: indica che gli URI forniti sono file manifest delimitati da interruzioni di riga, con un URI per riga. Gli URI con caratteri jolly non sono supportati nei file manifest e tutti i file di dati a cui viene fatto riferimento devono trovarsi nello stesso bucket del manifest.

Ad esempio, se hai un URI di origine "gs://bucket/path/file" e file_set_spec_type è FILE_SYSTEM_MATCH, il file viene utilizzato direttamente come file di dati. Se file_set_spec_type è NEW_LINE_DELIMITED_MANIFEST, ogni riga del file viene interpretata come un URI che punta a un file di dati.

--source_format=FORMAT

Il formato dei dati di origine. Utilizza uno dei seguenti valori:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • DATASTORE_BACKUP (utilizza questo valore per Filestore)
  • PARQUET
  • ORC
--time_partitioning_expiration=SECONDS

Un numero intero che specifica (in secondi) quando deve essere eliminata una partizione basata sul tempo. Il tempo di scadenza corrisponde alla data UTC della partizione più il valore intero. Un numero negativo indica nessuna scadenza.

--time_partitioning_field=COLUMN_NAME

Specifica il campo che determina come creare una partizione basata sul tempo. Se il partizionamento basato sul tempo è attivato senza questo valore, la tabella viene partizionata in base all'ora di caricamento.

--time_partitioning_type=INTERVAL

Attiva il partizionamento basato sul tempo in una tabella e imposta il tipo di partizione. Utilizza uno dei seguenti valori:

  • DAY
  • HOUR
  • MONTH
  • YEAR

Il tipo di partizione predefinito per il partizionamento basato sul tempo è DAY.

--use_avro_logical_types={true|false}

Se il flag --source_format è impostato su AVRO, imposta questo flag su true per convertire i tipi logici nei tipi corrispondenti (ad esempio TIMESTAMP) anziché utilizzare solo i tipi non elaborati (ad esempio INTEGER).

--decimal_target_types=DECIMAL_TYPE

Determina come convertire un tipo logico Decimal. Equivalente a JobConfigurationLoad.decimalTargetTypes. Ripeti questo flag per specificare più tipi di target.

--parquet_enum_as_string={true|false}

Se il flag --source_format è impostato su PARQUET e vuoi che BigQuery deduca i tipi logici Parquet ENUM come valori STRING, imposta questo flag su true. Il valore predefinito è false.

--parquet_enable_list_inference={true|false}

Se il flag --source_format è impostato su PARQUET, questo flag indica se utilizzare l'inferenza dello schema per i tipi logici Parquet LIST.

--reference_file_schema_uri=URI

Specifica il percorso di un file di riferimento con lo schema della tabella previsto per la creazione di tabelle esterne. Equivalente a ExternalDataConfiguration.referenceFileSchemaUri. Questo flag è abilitato per i formati Avro, ORC e PARQUET.

DESTINATION_TABLE

La tabella in cui vuoi caricare i dati.

SOURCE_DATA

L'URI Cloud Storage del file che contiene i dati da caricare.

SCHEMA

Lo schema della tabella di destinazione.

Per saperne di più sul caricamento dei dati da Cloud Storage utilizzando il comando bq load, consulta quanto segue:

Per saperne di più sul caricamento dei dati da un'origine locale utilizzando il comando bq load, consulta quanto segue:

bq ls

Utilizza il comando bq ls per elencare gli oggetti in una raccolta.

Trama

bq ls [FLAGS] [RESOURCE]

Esempio

bq ls myDataset

Flag e argomenti

Il comando bq ls utilizza i seguenti flag e argomenti:

--all={true|false} o -a={true|false}
Per mostrare tutti i risultati, imposta true. Mostra i job di tutti gli utenti o di tutti i set di dati, inclusi quelli nascosti. Questo flag non è necessario quando vengono elencate le configurazioni di trasferimento o le esecuzioni del trasferimento. Il valore predefinito è false.
--capacity_commitment={true|false}

Per elencare gli impegni di capacità, imposta true e utilizza il flag --location per specificare la località. Per maggiori informazioni, consulta la pagina Visualizzare gli impegni acquistati.

Ad esempio: bq ls --capacity_commitment=true --location='us'

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

Per elencare i set di dati, imposta true. Il valore predefinito è false.

--filter="FILTER"

Filtra le risorse elencate in modo che corrispondano all'argomento FILTER.

Per i set di dati, FILTER è costituito da una o più triple separate da spazi nel formato labels.KEY:VALUE. Se viene fornita più di una tripla, il comando restituisce solo i set di dati corrispondenti a tutte le triple (ovvero il comando utilizza l'operatore logico AND, non OR). Se vuoi specificare più di una tripla, racchiudi il valore FILTER tra virgolette.

Per filtrare in base alle etichette dei set di dati, utilizza le chiavi e i valori che hai applicato ai tuoi set di dati.

Ad esempio:

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

Per le configurazioni di trasferimento, utilizza dataSourceIds come chiave e una delle seguenti origini dati come valore:

Ad esempio:

   --filter labels.dataSourceIds:dcm_dt
   

Per le esecuzioni del trasferimento, utilizza states come chiave e uno o più dei seguenti stati di trasferimento come valore:

  • SUCCEEDED
  • FAILED
  • PENDING
  • RUNNING
  • CANCELLED

Ad esempio:

--filter="states:FAILED"

Per i job, utilizza states come chiave e uno o più dei seguenti stati del job come valore:

  • RUNNING
  • PENDING
  • DONE

Ad esempio:

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

bq ls --jobs --filter="states:RUNNING,PENDING"
--jobs={true|false} o -j={true|false}
Per elencare i lavori, imposta su true. Il valore predefinito è false. Per impostazione predefinita, il limite è di 100.000 risultati.
--max_creation_time=MAX_CREATION_TIME_MS
Un numero intero che rappresenta un timestamp Unix epoch in millisecondi. Se specificato con il flag --jobs, questo flag elenca solo i job creati prima del timestamp.
--max_results=MAX_RESULTS or -n=MAX_RESULTS
Un numero intero che indica il numero massimo di risultati. Il valore predefinito è 50 e il valore massimo è 1000. Se hai più di 1000 job, puoi utilizzare il flag page_token per elencare tutti i job utilizzando l'impaginazione.
--min_creation_time=MIN_CREATION_TIME_MS
Un numero intero che rappresenta un timestamp Unix epoch in millisecondi. Se specificato con il flag --jobs, questo flag elenca solo i job creati dopo il timestamp.
--message_type=messageTypes:MESSAGE_TYPE

Per elencare solo i messaggi di log di esecuzione del trasferimento di un determinato tipo, specifica messageTypes:MESSAGE_TYPE. I valori possibili sono i seguenti:

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

Per elencare i modelli BigQuery ML, imposta questo valore su true. Il valore predefinito è false.

--page_token=TOKEN o -k=TOKEN

Elenca gli elementi a partire dal token di pagina specificato.

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

Per mostrare tutti i progetti, imposta true. Il valore predefinito è false.

--reservation={true|false}

Per elencare tutte le prenotazioni per un determinato progetto e una determinata località, imposta il valore su true. Il valore predefinito è false. Utilizza con i flag --project_id e --location.

Ad esempio:

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

--reservation_assignment={true|false}

Per elencare tutte le assegnazioni di prenotazioni per un determinato progetto e una determinata località, imposta il valore su true. Il valore predefinito è false. Utilizza con i flag --project_id e --location.

--routines={true|false}

Per elencare tutte le routine nel set di dati specificato, imposta questo campo su true. Il valore predefinito è false. Le routine includono funzioni permanenti definite dall'utente, funzioni tabellari (anteprima) e stored procedure.

--row_access_policies

Se specificato, elenca tutti i criteri di accesso a livello di riga in una tabella. Le policy di accesso a livello di riga vengono utilizzate per la sicurezza a livello di riga. Devi fornire il nome della tabella nel formato dataset.table.

--run_attempt=RUN_ATTEMPT

Utilizzare con il flag --transfer_run. Per elencare tutti i tentativi di esecuzione dell'esecuzione del trasferimento specificata, imposta il valore su RUN_ATTEMPT_UNSPECIFIED. Per elencare solo l'ultimo tentativo di esecuzione, imposta LATEST. Il valore predefinito è LATEST.

--transfer_config={true|false}

Per elencare le configurazioni di trasferimento nel progetto e nella località specificati, imposta true. Utilizza con i flag --transfer_location e --project_id. Il valore predefinito è false.

--transfer_location=LOCATION

Elenca le configurazioni di trasferimento nella posizione specificata. La località di trasferimento viene impostata al momento della creazione del trasferimento.

--transfer_log={true|false}

Utilizzare con il flag --transfer_run. Per elencare i messaggi del log di trasferimento per l'esecuzione del trasferimento specificata, imposta questo campo su true. Il valore predefinito è false.

--transfer_run={true|false}

Elenca le esecuzioni del trasferimento per la configurazione del trasferimento specificata.

Ad esempio:

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

RESOURCE

La raccolta di cui vuoi elencare gli oggetti. La risorsa può essere un dataset, un progetto, una prenotazione o una configurazione di trasferimento.

Per ulteriori informazioni sull'utilizzo del comando bq ls, consulta le seguenti risorse:

bq mk

Utilizza il comando bq mk per creare una risorsa BigQuery.

Trama

bq mk TYPE_FLAG [OTHER FLAGS] [ARGS]

Flag e argomenti

Il comando bq mk accetta un flag type che specifica il tipo di risorsa da creare e flag aggiuntivi che dipendono dal tipo di risorsa.

TYPE_FLAG: imposta uno dei seguenti flag su true. La selezione specifica il tipo di risorsa da creare.

Il comando bq mk supporta il seguente flag per tutti i tipi di risorse:

--force={true|false} o -f={true|false}
Per ignorare gli errori se esiste già una risorsa con lo stesso nome, imposta il valore su true. Se la risorsa esiste già, il codice di uscita è 0, ma l'impostazione di questo flag su true non comporta la sovrascrittura della risorsa da parte del comando bq mk. Il valore predefinito è false.

Il comando bq mk supporta flag aggiuntivi, a seconda del tipo di risorsa che stai creando, come descritto nelle sezioni seguenti.

bq mk --capacity_commitment

Per acquistare un impegno di capacità, imposta --capacity_commitment su true e utilizza i seguenti flag:

--location=LOCATION
Specifica la posizione dell'impegno.
--plan=PLAN_TYPE

Specifica il tipo di piano di impegno. Deve essere uno dei seguenti valori:

  • ANNUAL
  • THREE_YEAR

I clienti che utilizzano i prezzi a tariffa fissa legacy possono utilizzare anche uno dei seguenti valori:

  • FLEX
  • MONTHLY
  • ANNUAL
--renewal_plan=RENEWAL_TYPE

Specifica il tipo di piano di rinnovo. Obbligatorio per i piani di impegno ANNUAL o THREE_YEAR. Deve essere uno dei seguenti:

  • ANNUAL
  • THREE_YEAR
  • NONE

I clienti che utilizzano i prezzi a tariffa fissa legacy possono anche utilizzare uno dei seguenti valori:

  • FLEX
  • MONTHLY
  • ANNUAL
--project_id=PROJECT_ID

Specifica il progetto che amministra gli slot.

--slots=NUMBER_OF_BASELINE_SLOTS

Specifica il numero di slot di base da acquistare.

--edition=EDITION

L'edizione associata all'impegno di capacità. Deve essere uno dei seguenti:

  • ENTERPRISE
  • ENTERPRISE_PLUS

Per maggiori informazioni, vedi Slot di acquisto.

bq mk --connection

Crea una connessione. Sono supportati i seguenti flag:

--connection_type=CONNECTION_TYPE
Il tipo di connessione, ad esempio CLOUD_SQL per le connessioni Cloud SQL.
--properties=PROPERTIES

Parametri specifici della connessione in formato JSON. È necessario specificare instanceId, database e type.

Se crei una connessione Spanner e vuoi utilizzare Data Boost, includi le coppie "useParallelism":true e "useDataBoost":true.

--connection_credential=CONNECTION_CREDENTIAL

Le credenziali della connessione in formato JSON. username e password devono essere specificati.

--project_id=PROJECT_ID

Specifica l'ID del progetto a cui appartiene la connessione.

--location=LOCATION

Specifica la posizione in cui verrà archiviata la connessione.

--display_name=DISPLAY_NAME

Specifica un nome descrittivo facoltativo per la connessione.

--description=DESCRIPTION

Specifica una descrizione facoltativa della connessione.

--iam_role_id=ROLE_ID

Per BigQuery Omni su AWS, specifica un ruolo IAM che consente l'accesso alla risorsa.

Utilizza il seguente formato: "arn:aws:iam::AWS_ACCOUNT_ID:role/POLICY_NAME", dove:

  • AWS_ACCOUNT_ID è il numero ID dell'utente AWS IAM della connessione.
  • POLICY_NAME è il nome della policy.

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

--tenant_id=TENANT_ID

Per BigQuery Omni su Azure, specifica l'ID tenant della directory Azure che contiene l'account Azure Storage.

CONNECTION_ID

Specifica un ID connessione facoltativo per la connessione. Se non viene fornito un ID connessione, viene generato automaticamente un ID univoco. L'ID connessione può contenere lettere, numeri e trattini bassi.

Per saperne di più, vedi Introduzione alle connessioni.

bq mk --dataset

Crea un set di dati. Sono supportati i seguenti flag:

--add_tags=TAGS
Specifica i tag che stai allegando al nuovo set di dati, separati da virgole. Ad esempio 556741164180/env:prod,myProject/department:sales. Ogni tag deve avere il nome breve della chiave con spazio dei nomi e il nome breve del valore.
--default_kms_key=KEY
Specifica l'ID risorsa chiave Cloud KMS predefinito per criptare i dati della tabella in un set di dati se non viene fornita alcuna chiave esplicita durante la creazione della tabella o della query.
--default_partition_expiration=SECONDS
Un numero intero che specifica il tempo di scadenza predefinito, in secondi, per tutte le partizioni nelle tabelle partizionate appena create nel set di dati. L'ora di scadenza di una partizione è impostata sulla data UTC della partizione più il valore intero. Se questa proprietà è impostata, il suo valore sostituisce la scadenza predefinita della tabella a livello di set di dati, se esistente. Se fornisci il flag --time_partitioning_expiration quando crei o aggiorni una tabella partizionata, la scadenza della partizione a livello di tabella ha la precedenza sulla scadenza della partizione predefinita a livello di set di dati.
--default_table_expiration=SECONDS
Un numero intero che specifica la durata predefinita, in secondi, per le tabelle appena create in un set di dati. La scadenza è impostata sull'ora UTC corrente più questo valore.
--description=DESCRIPTION
Specifica la descrizione del set di dati.
--external_source=EXTERNAL_SOURCE
Specifica l'origine dati esterna quando crei un set di dati federato.
--label=KEY:VALUE
Specifica un'etichetta per il set di dati. Ripeti questo flag per specificare più etichette.
--location=LOCATION o --data_location=LOCATION
Specifica la posizione del set di dati. Preferisci il flag --location; il flag --data_location è un flag legacy.
--max_time_travel_hours=HOURS
Specifica la durata in ore della finestra di spostamento cronologico per il set di dati. Il valore di --max_time_travel_hours deve essere un numero intero espresso in multipli di 24 (48, 72, 96, 120, 144, 168) compreso tra 48 (2 giorni) e 168 (7 giorni). Se questo flag non è specificato, il valore predefinito è 168 ore.
--storage_billing_model=BILLING_MODEL

Specifica il modello di fatturazione dello spazio di archiviazione per un set di dati. Imposta il valore di --storage_billing_model su PHYSICAL per utilizzare i byte fisici per il calcolo degli addebiti per l'archiviazione oppure su LOGICAL per utilizzare i byte logici. LOGICAL è il valore predefinito.

Quando modifichi il modello di fatturazione di un set di dati, sono necessarie 24 ore prima che la modifica abbia effetto.

Dopo aver modificato il modello di fatturazione dello spazio di archiviazione di un set di dati, devi attendere 14 giorni prima di poterlo modificare di nuovo.

Per saperne di più, consulta la sezione Creazione di set di dati.

bq mk --materialized_view

Crea una vista materializzata. Sono supportati i seguenti flag:

--enable_refresh={true|false}
Per disattivare l'aggiornamento automatico di una vista materializzata, imposta il valore false. Il valore predefinito durante la creazione di una vista materializzata è true.
--refresh_interval_ms=MILLISECONDS
Specifica il numero di millisecondi per l'intervallo di aggiornamento di una vista materializzata. Se questo flag non viene specificato, l'intervallo di aggiornamento predefinito per una vista materializzata con aggiornamento abilitato è di 1.800.000 millisecondi, ovvero 30 minuti.

Per saperne di più, consulta la pagina Creare e utilizzare le viste materializzate.

bq mk --reservation

Crea una prenotazione con slot dedicati. Sono supportati i seguenti flag:

--target_job_concurrency=CONCURRENCY
Specifica il numero target di query eseguite contemporaneamente. Il valore predefinito è 0, il che significa che la concorrenza viene calcolata automaticamente in base alle dimensioni della prenotazione. Per maggiori informazioni, consulta la sezione Utilizzare le code di query.
--ignore_idle_slots={true|false}
Per limitare i job eseguiti in questa prenotazione in modo che utilizzino solo gli slot allocati alla prenotazione, imposta questo valore su true. Il valore predefinito è false; i job in questa prenotazione possono utilizzare gli slot inattivi di altre prenotazioni o gli slot non allocati a nessuna prenotazione. Per ulteriori informazioni, consulta la sezione Slot inattivi.
--location=LOCATION
Specifica la posizione della prenotazione.
--project_id=PROJECT_ID
Specifica il progetto proprietario della prenotazione.
--slots=NUMBER_OF_BASELINE_SLOTS
Specifica il numero di slot di base da allocare a questa prenotazione.
--edition=EDITION
L'edizione associata all'impegno di capacità. Deve essere uno dei seguenti:
  • STANDARD
  • ENTERPRISE
  • ENTERPRISE_PLUS
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
Il numero di slot di scalabilità automatica assegnati alla prenotazione. Questo valore è uguale al valore della dimensione massima della prenotazione meno il numero di slot di riferimento. Disponibile solo con il flag --edition.
--max_slots=MAXIMUM_NUMBER_OF_SLOTS
Il numero massimo di slot che la prenotazione utilizzerà. Deve essere configurato con il flag --scaling_mode (Anteprima).
--scaling_mode=SCALING_MODE

La modalità di scalabilità della prenotazione. Deve essere uno dei seguenti:

  • IDLE_SLOTS_ONLY
  • ALL_SLOTS
  • AUTOSCALE_ONLY
  • SCALING_MODE_UNSPECIFIED

Deve essere configurato con il flag --max_slots (Anteprima).

Per saperne di più, consulta Creare una prenotazione con slot dedicati.

bq mk --reservation_assignment

Assegna un progetto, una cartella o un'organizzazione a una prenotazione. Sono supportati i seguenti flag:

--assignee_id=ASSIGNEE_ID
Specifica l'ID della cartella, dell'organizzazione o del progetto.
--assignee_type=ASSIGNEE_TYPE
Specifica il tipo di entità da assegnare alla prenotazione. Uno dei seguenti:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--job_type=JOB_TYPE
Specifica il tipo di job da assegnare alla prenotazione. Uno dei seguenti:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
  • BACKGROUND
--location=LOCATION
Specifica la posizione della prenotazione.
--project_id=PROJECT_ID
Specifica il progetto proprietario della prenotazione.
--reservation_id=RESERVATION_ID
Specifica l'ID della prenotazione.

Per ulteriori informazioni, consulta Utilizzare le assegnazioni di prenotazione.

bq mk --table

Crea una tabella. Sono supportati i seguenti flag:

--add_tags=TAGS
Specifica i tag che stai allegando alla nuova tabella, separati da virgole. Ad esempio 556741164180/env:prod,myProject/department:sales. Ogni tag deve avere il nome breve della chiave con spazio dei nomi e il nome breve del valore.
--clustering_fields=COLUMNS
Un elenco separato da virgole di massimo quattro nomi di colonne che specifica i campi da utilizzare per il clustering delle tabelle. Se specificato con il partizionamento, la tabella viene prima partizionata e poi ogni partizione viene raggruppata in cluster utilizzando le colonne fornite.
--description=DESCRIPTION
Specifica la descrizione della tabella.
--destination_kms_key=KEY
Specifica un ID risorsa chiave Cloud KMS per criptare i dati della tabella di destinazione.
--expiration=SECONDS
Specifica la durata della tabella. Se non specifichi il flag --expiration, BigQuery crea la tabella con la durata predefinita della tabella del set di dati oppure la tabella non scade.
--external_table_definition=STRING

Specifica una definizione di tabella per creare una tabella esterna.

Per le tabelle esterne Cloud Storage e Google Drive:

--external_table_definition={PATH_TO_FILE|DEFINITION}
Il valore può essere un percorso a un file contenente una definizione di tabella (PATH_TO_FILE) o una definizione di tabella inline (DEFINITION).
  • Il formato del campo DEFINITION è SCHEMA@FORMAT=URI.
  • Il formato per il valore SCHEMA è un elenco di definizioni di colonne separate da virgole nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e così via. Puoi omettere il valore SCHEMA se il formato dei dati è autodescrittivo (ad esempio Avro) o se utilizzi il rilevamento automatico dello schema.

  • Il valore FORMAT specifica il formato dei dati, uno dei seguenti:

    • AVRO
    • CSV
    • DATASTORE_BACKUP (utilizza questo valore per Filestore)
    • ICEBERG
    • NEWLINE_DELIMITED_JSON
    • ORC
    • PARQUET

Se specifichi un file di definizione della tabella, non assegnargli un'estensione.

Ad esempio:

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

Per le tabelle esterne Bigtable e le tabelle BigLake basate su AWS e Azure:

--external_table_definition=PATH_TO_FILE
Il valore deve essere un percorso a un file contenente una definizione di tabella.

Per le tabelle BigLake basate su Cloud Storage:

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

  • Il valore FORMAT specifica il formato dei dati, uno dei seguenti:

    • AVRO
    • CSV
    • NEWLINE_DELIMITED_JSON
    • ICEBERG
    • ORC
    • PARQUET
  • BUCKET_PATH è il percorso di uno o più file in Cloud Storage che contengono i dati della tabella BigLake. Puoi specificare BUCKET_PATH nei seguenti formati:

    • Per un singolo file: gs://bucket_name/[folder_name/]file_name.
    • Per più file in un singolo bucket: gs://bucket_name/[folder_name/]*.
    • Per più file in più bucket: gs://mybucket1/*,gs://mybucket2/folder5/*.

      Puoi utilizzare i caratteri jolly per limitare i file inclusi nella tabella BigLake. Ad esempio, se il bucket contiene diversi tipi di dati, puoi fare in modo che la tabella utilizzi solo i file PARQUET specificando gs://bucket_name/*.parquet. Per saperne di più sull'utilizzo dei caratteri jolly, consulta la sezione Caratteri jolly URI.

  • Il valore REGION specifica la regione o multiregione che contiene la connessione.

  • Il valore CONNECTION_NAME specifica il nome della connessione alla risorsa cloud da utilizzare con questa tabella esterna. La connessione determina qualeaccount di serviziot viene utilizzato per leggere i dati da Cloud Storage.

Per le tabelle degli oggetti:

--external_table_definition=BUCKET_PATH@REGION.CONNECTION_NAME :

  • BUCKET_PATH è il percorso del bucket Cloud Storage che contiene gli oggetti rappresentati dalla tabella degli oggetti, nel formato gs://bucket_name/[folder_name/]*.Puoi specificare più bucket fornendo più percorsi, ad esempio gs://mybucket1/*,gs://mybucket2/folder5/*.

    Puoi utilizzare i caratteri jolly per limitare gli oggetti inclusi nella tabella degli oggetti. Ad esempio, se il bucket contiene diversi tipi di dati non strutturati, puoi creare la tabella degli oggetti solo per gli oggetti PDF specificando gs://bucket_name/*.pdf. Per saperne di più sull'utilizzo dei caratteri jolly, vedi Caratteri jolly URI.

  • Il valore REGION specifica la regione o multiregione che contiene la connessione.

  • Il valore CONNECTION_NAME specifica il nome della connessione alla risorsa cloud da utilizzare con questa tabella esterna. La connessione determina qualeaccount di serviziot viene utilizzato per leggere i dati da Cloud Storage.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Specifica come interpretare gli URI di origine.

  • FILE_SYSTEM_MATCH: espande gli URI di origine elencando i file dall'archivio di oggetti. Questo è il comportamento predefinito se FileSetSpecType non è impostato.
  • NEW_LINE_DELIMITED_MANIFEST: indica che gli URI forniti sono file manifest delimitati da interruzioni di riga, con un URI per riga. Gli URI con caratteri jolly non sono supportati nei file manifest e tutti i file di dati a cui viene fatto riferimento devono trovarsi nello stesso bucket del manifest.

Ad esempio, se hai un URI di origine "gs://bucket/path/file" e file_set_spec_type è FILE_SYSTEM_MATCH, il file viene utilizzato direttamente come file di dati. Se file_set_spec_type è NEW_LINE_DELIMITED_MANIFEST, ogni riga del file viene interpretata come un URI che punta a un file di dati.

--reference_file_schema_uri=URI

Specifica il percorso di un file di riferimento con lo schema della tabella previsto per la creazione di tabelle esterne. Equivalente a ExternalDataConfiguration.referenceFileSchemaUri. Questo flag è abilitato per i formati Avro, ORC e PARQUET.

--label=KEY:VALUE

Specifica un'etichetta per la tabella. Ripeti questo flag per specificare più etichette.

--max_staleness=INTERVAL

Specifica se i metadati memorizzati nella cache vengono utilizzati dalle operazioni sulla tabella e quanto devono essere aggiornati i metadati memorizzati nella cache affinché l'operazione li utilizzi.

Valido per le tabelle BigLake e le tabelle di oggetti.

Per disattivare la memorizzazione nella cache dei metadati, specifica 0. Questa è l'impostazione predefinita.

Per attivare la memorizzazione nella cache dei metadati, specifica un valore di intervallo compreso tra 30 minuti e 7 giorni, utilizzando il formato Y-M D H:M:S descritto nella documentazione del tipo di dati INTERVAL. Ad esempio, specifica 0-0 0 4:0:0 per un intervallo di obsolescenza di 4 ore. Con questo valore, le operazioni sulla tabella utilizzano i metadati memorizzati nella cache se sono stati aggiornati nelle ultime 4 ore. Se i metadati memorizzati nella cache sono più vecchi, l'operazione torna al recupero dei metadati da Cloud Storage.

--object_metadata=STRING

Imposta il valore di questo flag su SIMPLE quando crei una tabella degli oggetti.

Obbligatorio solo quando viene creata una tabella degli oggetti.

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Specifica le opzioni per una partizione di intervallo di numeri interi, come segue:

  • column_name è la colonna utilizzata per creare le partizioni dell'intervallo di numeri interi.
  • start è l'inizio del partizionamento degli intervalli, incluso.
  • end è la fine del partizionamento degli intervalli, esclusa.
  • interval è la larghezza di ogni intervallo all'interno della partizione.

Ad esempio:

--range_partitioning=customer_id,0,10000,100

--require_partition_filter={true|false}

Per richiedere un filtro di partizionamento per le query sulla tabella fornita, imposta il valore su true. Questo flag si applica solo alle tabelle partizionate. Il valore predefinito è false.

--schema={SCHEMA_FILE|SCHEMA}

Specifica il percorso di un file di schema JSON locale o un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e così via. Se utilizzi un file di schema, non assegnargli un'estensione.

Esempi:

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

--time_partitioning_expiration=SECONDS

Un numero intero che specifica (in secondi) quando deve essere eliminata una partizione basata sul tempo. Il tempo di scadenza corrisponde alla data UTC della partizione più il valore intero. Un numero negativo indica nessuna scadenza.

--time_partitioning_field=COLUMN_NAME

Specifica il campo utilizzato per determinare come creare una partizione basata sul tempo. Se il partizionamento basato sul tempo è attivato senza questo valore, la tabella viene partizionata in base all'ora di caricamento.

--time_partitioning_type=INTERVAL

Attiva il partizionamento basato sul tempo in una tabella e imposta il tipo di partizione. Utilizza uno dei seguenti valori:

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

Se la parte FORMAT del flag --external_table_definition è impostata su AVRO, questo flag specifica se convertire i tipi logici nei tipi corrispondenti (ad esempio TIMESTAMP) anziché utilizzare solo i tipi non elaborati (ad esempio INTEGER).

--parquet_enable_list_inference={true|false}

Se la parte FORMAT del flag --external_table_definition è impostata su PARQUET, questo flag specifica se utilizzare l'inferenza dello schema per i tipi logici Parquet LIST.

--parquet_enum_as_string={true|false}

Se la parte FORMAT del flag --external_table_definition è impostata su PARQUET, questo flag specifica se dedurre i tipi logici Parquet ENUM come valori STRING.

Per saperne di più, vedi Creare e utilizzare tabelle.

bq mk --transfer_config

Crea una configurazione di trasferimento. Sono supportati i seguenti flag:

--data_source=DATA_SOURCE
Specifica l'origine dati. Obbligatorio durante la creazione di una configurazione di trasferimento. Utilizza uno dei seguenti valori:
--display_name=DISPLAY_NAME
Specifica il nome visualizzato della configurazione di trasferimento.
--no_auto_scheduling={true|false}
Disattiva la pianificazione automatica delle esecuzioni del trasferimento dei dati per questa configurazione. Il valore predefinito è false.
--params={"PARAMETER":"VALUE"} o -p={"PARAMETER":"VALUE"}
Specifica i parametri per la configurazione del trasferimento in formato JSON. I parametri variano a seconda dell'origine dati.
--refresh_window_days=DAYS
Un numero intero che specifica la finestra di aggiornamento per la configurazione del trasferimento in giorni. Il valore predefinito è 0.
--service_account_name=SERVICE_ACCOUNT
Specifica un account di servizio da utilizzare come credenziale per la configurazione del trasferimento.
--target_dataset=DATASET
Specifica il set di dati di destinazione per la configurazione del trasferimento.
--table_filter=TABLES
Utilizzato solo con l'origine dati google_ads. Il parametro TABLES è un elenco separato da virgole di tabelle da includere nel trasferimento. Per escludere una tabella, aggiungi un trattino (-) come prefisso. Il valore predefinito include tutte le tabelle nel trasferimento.
--destination_kms_key=KEY
Specifica un ID risorsa chiave Cloud KMS per criptare i dati della tabella di destinazione.

Per informazioni sull'utilizzo del comando bq mk con BigQuery Data Transfer Service, consulta quanto segue:

bq mk --transfer_run

Crea un'esecuzione del trasferimento dei dati all'ora o nell'intervallo di tempo specificato utilizzando la configurazione di trasferimento dei dati specificata.

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

Sono supportati i seguenti flag:

--run_time=RUN_TIME
Un timestamp che specifica l'ora in cui pianificare l'esecuzione del trasferimento di dati.
--start_time=START_TIME
Un timestamp che specifica l'ora di inizio per un intervallo di esecuzioni del trasferimento di dati.
--end_time=END_TIME
Un timestamp che specifica l'ora di fine per un intervallo di esecuzioni di trasferimento dei dati.

Il formato dei timestamp è RFC3339 "Zulu" UTC.

L'argomento CONFIG specifica una configurazione di trasferimento dati preesistente.

Esempi
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. Sono supportati i seguenti flag:

--add_tags=TAGS
Specifica i tag che stai allegando alla nuova visualizzazione, separati da virgole. Ad esempio 556741164180/env:prod,myProject/department:sales. Ogni tag deve avere il nome breve della chiave con spazio dei nomi e il nome breve del valore.
--description=DESCRIPTION
Specifica la descrizione della visualizzazione.
--expiration=SECONDS
Specifica la durata della visualizzazione. Se SECONDS è 0, la visualizzazione non scade. Se non specifichi il flag --expiration, BigQuery crea la vista con la durata predefinita della tabella del set di dati.
--label=KEY:VALUE
Specifica un'etichetta per la visualizzazione. Ripeti questo flag per specificare più etichette.
--use_legacy_sql={true|false}
Imposta su false per utilizzare una query GoogleSQL per creare una vista. Il valore predefinito è determinato dalle impostazioni di configurazione. Se l'impostazione di configurazione non è specificata, il valore predefinito è true; utilizza SQL legacy.
--view_udf_resource=FILE
Specifica l'URI Cloud Storage o il percorso di un file di codice locale che viene caricato e valutato immediatamente come risorsa di funzione definita dall'utente utilizzata dalla query SQL di una vista. Ripeti questo flag per specificare più file.

Per saperne di più, consulta la sezione Creare viste.

bq mkdef

Utilizza il comando bq mkdef per creare una definizione di tabella in formato JSON per i dati archiviati in Cloud Storage o Google Drive.

Trama

bq mkdef [FLAGS] URI [ > FILE ]

Flag e argomenti

Il comando bq mkdef utilizza i seguenti flag e argomenti:

--autodetect={true|false}
Specifica se utilizzare il rilevamento automatico dello schema per i dati CSV e JSON. Il valore predefinito è false.
--connection_id=CONNECTION_ID
L'ID di una risorsa di connessione da utilizzare per l'autenticazione.
--hive_partitioning_mode

Specifica come determinare lo schema di partizionamento quando BigQuery legge i dati. Sono supportate le seguenti modalità:

  • AUTO: deduci automaticamente i nomi e i tipi delle chiavi di partizione.
  • STRINGS: deduce automaticamente i nomi delle chiavi di partizione. Tutti i tipi vengono trattati come stringhe.
  • CUSTOM: specifica lo schema di partizionamento nel prefisso URI di origine.

Il valore predefinito è AUTO.

--hive_partitioning_source_uri_prefix

Specifica il prefisso comune per gli URI di origine. Il valore del prefisso comune è la parte dell'URI che precede immediatamente la codifica della chiave di partizionamento. Se hai specificato CUSTOM per la modalità, devi identificare anche lo schema di partizionamento.

Ad esempio, considera i file con la seguente struttura:

  • 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 utilizzi le modalità AUTO o STRINGS, i seguenti valori sono accettabili:

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

Se utilizzi la modalità CUSTOM, sono accettabili i seguenti valori:

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

Per ulteriori informazioni sull'utilizzo del comando bq mkdef, vedi Creazione di un file di definizione della tabella per un'origine dati esterna.

--ignore_unknown_values={true|false} o -i={true|false}
Specifica se ignorare i valori di una riga che non sono presenti nello schema. Il valore predefinito è false.
--metadata_cache_mode=STRING

Specifica se la cache dei metadati per la tabella viene aggiornata automaticamente o manualmente.

Imposta AUTOMATIC per aggiornare la cache dei metadati a un intervallo definito dal sistema, in genere compreso tra 30 e 60 minuti.

Imposta MANUAL se vuoi aggiornare la cache dei metadati in base a una pianificazione che determini. In questo caso, puoi chiamare la procedura di sistema BQ.REFRESH_EXTERNAL_METADATA_CACHE per aggiornare la cache.

Devi impostare il flag --metadata_cache_mode se imposti il flag --max_staleness con il comando bq mk.

--parquet_enable_list_inference={true|false}

Se source_format è impostato su PARQUET, questo flag specifica se utilizzare l'inferenza dello schema per i tipi logici Parquet LIST. Il valore predefinito è false.

--parquet_enum_as_string={true|false}

Se source_format è impostato su PARQUET, questo flag specifica se dedurre i tipi logici ENUM Parquet come valori STRING. Il valore predefinito è false.

--file_set_spec_type=FILE_SET_SPEC_TYPE

Specifica come interpretare gli URI di origine.

  • FILE_SYSTEM_MATCH: espande gli URI di origine elencando i file dall'archivio di oggetti. Questo è il comportamento predefinito se FileSetSpecType non è impostato.
  • NEW_LINE_DELIMITED_MANIFEST: indica che gli URI forniti sono file manifest delimitati da interruzioni di riga, con un URI per riga. Gli URI con caratteri jolly non sono supportati nei file manifest e tutti i file di dati a cui viene fatto riferimento devono trovarsi nello stesso bucket del manifest.

Ad esempio, se hai un URI di origine "gs://bucket/path/file" e file_set_spec_type è FILE_SYSTEM_MATCH, il file viene utilizzato direttamente come file di dati. Se file_set_spec_type è NEW_LINE_DELIMITED_MANIFEST, ogni riga del file viene interpretata come un URI che punta a un file di dati.

--source_format=FORMAT

Specifica il formato dei dati di origine. Utilizza uno dei seguenti valori:

  • AVRO
  • CSV
  • DATASTORE_BACKUP (utilizza questo valore per Filestore)
  • GOOGLE_SHEETS
  • NEWLINE_DELIMITED_JSON
  • ORC
  • PARQUET

Il valore predefinito è CSV.

--use_avro_logical_types={true|false}

Se il flag --source_format è impostato su AVRO, questo flag specifica se convertire i tipi logici nei tipi corrispondenti (ad esempio TIMESTAMP) anziché utilizzare solo i tipi non elaborati (ad esempio INTEGER). Il valore predefinito è false.

bq partition

Utilizza il comando bq partition per convertire un gruppo di tabelle con suffissi di unità di tempo, ad esempio tabelle che terminano con YYYYMMDD per il partizionamento per data, in tabelle partizionate.

Trama

bq partition [FLAGS] SOURCE_TABLE_BASE_NAME PARTITION_TABLE

Flag e argomenti

Il comando bq partition utilizza i seguenti flag e argomenti:

--no_clobber={true|false} o -n={true|false}
Per impedire la sovrascrittura di una partizione esistente, imposta il valore true. Il valore predefinito è false; se la partizione esiste, viene sovrascritta.
--time_partitioning_expiration=SECONDS
Un numero intero che specifica (in secondi) quando deve essere eliminata una partizione basata sul tempo. Il tempo di scadenza corrisponde alla data UTC della partizione più il valore intero. Un numero negativo indica nessuna scadenza.
--time_partitioning_type=INTERVAL

Specifica il tipo di partizione. La tabella seguente fornisce i valori possibili per il flag INTERVAL e il formato del suffisso dell'unità di tempo previsto per ciascuno:

INTERVAL Suffisso
HOUR YYYYMMDDHH
DAY YYYYMMDD
MONTH YYYYMM
YEAR YYYY
SOURCE_TABLE_BASE_NAME

Il nome di base del gruppo di tabelle con i suffissi dell'unità di tempo.

PARTITION_TABLE

Il nome della tabella partizionata di destinazione.

Per ulteriori informazioni sull'utilizzo del comando bq partition, consulta Conversione di tabelle con partizionamento per data in tabelle partizionate per data di importazione.

bq query

Utilizza il comando bq query per creare un job di query che esegue la query SQL specificata.

Trama

bq query [FLAGS] 'QUERY'

Flag e argomenti

Il comando bq query utilizza i seguenti flag e argomenti:

--allow_large_results={true|false}
Per attivare dimensioni maggiori della tabella di destinazione per le query SQL precedente, imposta questo valore su true. Il valore predefinito è false.
--append_table={true|false}
Per aggiungere i dati a una tabella di destinazione, imposta questo campo su true. Il valore predefinito è false.
--batch={true|false}
Per eseguire la query in modalità batch, imposta true. Il valore predefinito è false.
--clustering_fields=COLUMNS
Un elenco separato da virgole di massimo quattro nomi di colonne che specifica i campi da utilizzare per raggruppare la tabella di destinazione in una query. Se specificato con il partizionamento, la tabella viene prima partizionata e poi ogni partizione viene raggruppata utilizzando le colonne fornite.
--connection_property=KEY=VALUE

Una coppia chiave-valore che ti consente di specificare le proprietà a livello di connessione per personalizzare il comportamento delle query. Ripeti questo flag per specificare proprietà aggiuntive.

Le proprietà di connessione supportate sono le seguenti:

  • dataset_project_id: rappresenta il progetto predefinito per i set di dati utilizzati nella query, in modo simile alla @@dataset_project_id variabile di sistema.
  • query_label: associa la query a un'etichetta di lavoro specifica. Se impostata, tutte le query successive in uno script o in una sessione hanno questa etichetta. Per informazioni dettagliate sui requisiti di formattazione delle etichette delle query, consulta il campo labels nella risorsa JobConfiguration.
  • service_account: specifica un account di servizio da utilizzare per eseguire la query. Ad esempio --connection_property=service_account=myserviceaccount@project.iam.gserviceaccount.com.
  • session_id: associa la query a una determinata sessione.
  • time_zone: rappresenta il fuso orario predefinito da utilizzare per eseguire la query.
--continuous={true|false}

Per eseguire una query continua, imposta true. Il valore predefinito è false.

--destination_kms_key=KEY

Specifica un ID risorsa chiave Cloud KMS per criptare i dati della tabella di destinazione.

--destination_schema={PATH_TO_FILE|SCHEMA}

Il percorso a un file di schema JSON locale o a un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE.

Le modifiche allo schema vengono eseguite in un'operazione separata dall'esecuzione della query. Se scrivi i risultati della query in una tabella specificando il flag --destination_table e la query genera successivamente un'eccezione, è possibile che le modifiche allo schema vengano ignorate. Se si verifica questo problema, controlla lo schema della tabella di destinazione e aggiornalo manualmente, se necessario.

--destination_table=TABLE

Se specificato, i risultati della query vengono salvati in TABLE. Specifica TABLE nel seguente formato: PROJECT:DATASET.TABLE. Se PROJECT non è specificato, viene utilizzato il progetto corrente. Se il flag --destination_table non è specificato, i risultati della query vengono salvati in una tabella temporanea.

Esempi:

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

--dry_run={true|false}

Se specificata, la query viene convalidata ma non eseguita.

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

Specifica il nome della tabella e la definizione della tabella per una query di tabella esterna. La definizione della tabella può essere un percorso a un file di schema JSON locale o una definizione della tabella incorporata. Il formato per fornire la definizione della tabella inline è SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. Il formato per il valore SCHEMA è un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE, e così via. Se utilizzi un file di definizione della tabella, non assegnargli un'estensione.

Ad esempio:

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

Ripeti questo flag per eseguire query su più tabelle.

--flatten_results={true|false}

Per impedire l'appiattimento dei campi nidificati e ripetuti nei risultati delle querySQL precedentei, imposta il valore su false. Il valore predefinito è true.

--label=KEY:VALUE

Specifica un'etichetta per il job di query. Ripeti questo flag per specificare più etichette.

--max_rows=MAX_ROWS o -n=MAX_ROWS

Un numero intero che specifica il numero di righe da restituire nei risultati della query. Il valore predefinito è 100.

--maximum_bytes_billed=MAX_BYTES

Un numero intero che limita i byte fatturati per la query. Se la query supera il limite, non andrà a buon fine (senza comportare addebiti). Se questo flag non è specificato, i byte fatturati vengono impostati sul valore predefinito del progetto.

--max_statement_results=VALUE

Un numero intero che specifica il numero massimo di istruzioni dello script visualizzate per i risultati della query. Il valore predefinito è 100.

--min_completion_ratio=RATIO

[Sperimentale] Un numero compreso tra 0 e 1,0 che specifica la frazione minima di dati che deve essere scansionata prima che una query venga restituita. Se il flag non è specificato, viene utilizzato il valore predefinito del server 1.0.

--parameter={PATH_TO_FILE|PARAMETER}

Un file JSON contenente un elenco di parametri di ricerca o un parametro di ricerca nel formato NAME:TYPE:VALUE. Un nome vuoto crea un parametro posizionale. Se TYPE viene omesso, viene utilizzato il tipo STRING. NULL specifica un valore nullo. Ripeti questo flag per specificare più parametri.

Ad esempio:

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

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

Utilizzare con il flag --destination_table. Specifica le opzioni per il partizionamento dell'intervallo di numeri interi nella tabella di destinazione. Il valore è un elenco separato da virgole del modulo column_name,start,end,interval, dove

  • column_name è la colonna utilizzata per creare le partizioni dell'intervallo di numeri interi.
  • start è l'inizio del partizionamento degli intervalli, incluso.
  • end è la fine del partizionamento degli intervalli, esclusa.
  • interval è la larghezza di ogni intervallo all'interno della partizione.

Ad esempio:

--range_partitioning=customer_id,0,10000,100

--replace={true|false}

Per sovrascrivere la tabella di destinazione con i risultati della query, imposta true. Tutti i dati e gli schemi esistenti vengono cancellati. Viene rimossa anche qualsiasi chiave Cloud KMS, a meno che tu non specifichi il flag --destination_kms_key. Il valore predefinito è false.

--require_cache={true|false}

Se specificato, esegui la query solo se i risultati possono essere recuperati dalla cache.

--require_partition_filter={true|false}

Se specificato, è necessario un filtro di partizionamento per le query sulla tabella fornita. Questo flag può essere utilizzato solo con una tabella partizionata.

**--reservation_id=RESERVATION

Anteprima. Se specificata, la prenotazione in cui viene eseguita la query.

--rpc={true|false}

Per utilizzare l'API di query in stile RPC anziché il metodo jobs.insert dell'API REST, imposta il valore su true. Il valore predefinito è false.

--schedule="SCHEDULE"

Trasforma una query in una query pianificata ricorrente. È necessaria una pianificazione per la frequenza di esecuzione della query.

Esempi:

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

Per una descrizione della sintassi della pianificazione, vedi Formattazione della pianificazione.

--schema_update_option=OPTION

Quando aggiungi dati a una tabella in un job di caricamento o in un job di query oppure quando sovrascrivi una partizione di tabella, specifica come aggiornare lo schema della tabella di destinazione. Utilizza uno dei seguenti valori:

  • ALLOW_FIELD_ADDITION: consente l'aggiunta di nuovi campi.
  • ALLOW_FIELD_RELAXATION: consente ai campi di rilassamento REQUIRED di NULLABLE.

Ripeti questo flag per specificare più opzioni di aggiornamento dello schema.

--start_row=ROW_NUMBER o -s=ROW_NUMBER

Un numero intero che specifica la prima riga da restituire nel risultato della query. Il valore predefinito è 0.

--target_dataset=DATASET

Se specificato con --schedule, aggiorna il set di dati di destinazione per una query pianificata. La query deve essere DDL o DML.

--time_partitioning_expiration=SECONDS

Utilizzare con il flag --destination_table. Un numero intero che specifica (in secondi) quando deve essere eliminata una partizione basata sul tempo. Il tempo di scadenza corrisponde alla data UTC della partizione più il valore intero. Un numero negativo indica che non è prevista alcuna scadenza.

--time_partitioning_field=COLUMN_NAME

Utilizzare con il flag --destination_table. Specifica la colonna di partizionamento per il partizionamento basato sul tempo. Se il partizionamento basato sul tempo è abilitato senza questo valore, la tabella viene partizionata in base all'ora di importazione.

--time_partitioning_type=INTERVAL

Utilizzare con il flag --destination_table. Specifica il tipo di partizione per la tabella di destinazione. Utilizza uno dei seguenti valori:

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

Questo flag si applica solo alle query SQL precedente. Specifica l'URI Cloud Storage o il percorso di un file locale contenente una risorsa di funzione definita dall'utente'utente da utilizzare in una query SQL precedente. Ripeti questo flag per specificare più file.

--use_cache={true|false}

Per non consentire la memorizzazione nella cache dei risultati delle query, imposta il valore su false. Il valore predefinito è true.

--use_legacy_sql={true|false}

Per eseguire una query GoogleSQL, imposta questo valore su false. Il valore predefinito è determinato dalle impostazioni di configurazione. Se l'impostazione di configurazione non è specificata, il valore predefinito è true; il comando utilizza SQL precedente.

--job_timeout_ms={string (Int64Value)}

Specifica il tempo massimo di esecuzione di una query in millisecondi. Se questo limite di tempo viene superato, BigQuery tenta di arrestare il job.

QUERY

La query che vuoi eseguire. Puoi specificare la query utilizzando uno dei seguenti metodi:

  • Specifica una stringa contenente la query.

    Se devi utilizzare ulteriori stringhe letterali all'interno della query, devi rispettare le regole di citazione per la shell che utilizzi, ad esempio Bash o PowerShell.

    Il seguente esempio mostra un approccio tipico in Bash, ovvero l'utilizzo di virgolette doppie per indicare i valori letterali stringa nella query e poi racchiudere la query stessa tra virgolette singole:

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

    Se copi la query da un'altra posizione, devi rimuovere anche eventuali commenti nella query.

  • Inserisci uno script SQL contenente la query. L'esempio seguente mostra come trasmettere uno script SQL nella shell Bash:

    bq query --use_legacy_sql=false < query.sql
    

Per saperne di più sull'utilizzo del comando bq query, consulta Eseguire una query.

bq remove-iam-policy-binding

Utilizza il comando bq remove-iam-policy-binding per recuperare i criteri IAM per una risorsa e rimuovere un'associazione dai criteri in un unico passaggio. La risorsa può essere una tabella o una vista.

Questo comando è un'alternativa alla seguente procedura in tre passaggi:

  1. Utilizzando il comando bq get-iam-policy per recuperare il file di criteri (in formato JSON).
  2. Modifica del file delle norme.
  3. Utilizzo del comando bq set-iam-policy per aggiornare la policy senza il binding.

Trama

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

Flag e argomenti

Il comando bq remove-iam-policy-binding utilizza i seguenti flag e argomenti:

--member=MEMBER_TYPE:MEMBER

Obbligatorio. Utilizza il flag --member per specificare il membro che fa parte del binding dei criteri IAM. Il flag --member è obbligatorio insieme al flag --role. Una combinazione di flag --member e --role equivale a un binding.

Il valore MEMBER_TYPE specifica il tipo di membro nell'associazione dei criteri IAM. Utilizza uno dei seguenti valori:

  • user
  • serviceAccount
  • group
  • domain

Il valore MEMBER specifica l'indirizzo email o il dominio del membro nell'associazione del criterio IAM.

--role=ROLE

Obbligatorio. Specifica la parte del ruolo dell'associazione dei criteri IAM. Il flag --role è obbligatorio insieme al flag --member. Una combinazione di flag --member e --role equivale a un binding.

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

Facoltativo. Per rimuovere un'associazione dalla policy IAM di una tabella o di una vista, impostala su true. Il valore predefinito è false.

RESOURCE è la tabella o la vista di cui vuoi rimuovere l'associazione di criteri.

Per ulteriori informazioni, consulta il riferimento alle norme IAM.

bq rm

Utilizza il comando bq rm per eliminare una risorsa BigQuery.

Trama

bq rm [FLAGS] RESOURCE

Flag e argomenti

Il comando bq rm utilizza i seguenti flag e argomenti:

--capacity_commitment={false|true}
Per eliminare un impegno di capacità, imposta true, specifica la posizione dell'impegno che vuoi rimuovere utilizzando il flag --location e sostituisci RESOURCE con l'ID dell'impegno che vuoi rimuovere.
--dataset={true|false} o -d={true|false}
Per eliminare un set di dati, imposta il valore su true. Il valore predefinito è false.
--force={true|false} o -f={true|false}
Per eliminare una risorsa senza prompt, imposta il valore su true. Il valore predefinito è false.
--job={true|false} o -j={true|false}
Per eliminare un job, imposta il valore su true. Il valore predefinito è false.
--model={true|false} o -m={true|false}
Per eliminare un modello BigQuery ML, imposta true. Il valore predefinito è false.
--recursive={true|false} o -r{true|false}
Per eliminare un set di dati e tutte le tabelle, i dati delle tabelle o i modelli contenuti, impostalo su true. Il valore predefinito è false.
--reservation={true|false}
Per eliminare una prenotazione, imposta il valore su true. Il valore predefinito è false.
--reservation_assignment={true|false}
Per eliminare un'assegnazione di prenotazione, imposta il valore su true. Il valore predefinito è false.
--routine={true|false}
Per eliminare una routine, imposta il valore su true. Il valore predefinito è false. Una routine può essere una funzione definita dall'utente permanente, una funzione tabella (anteprima) o una stored procedure.
--table={true|false} o -t={true|false}
Per eliminare una tabella o una vista, imposta il valore su true. Il valore predefinito è false.
--transfer_config={true|false}
Per eliminare una configurazione di trasferimento, imposta il valore su true. Il valore predefinito è false.
RESOURCE
La risorsa che vuoi rimuovere.

Per ulteriori informazioni sull'utilizzo del comando bq rm, consulta le seguenti risorse:

bq set-iam-policy

Utilizza il comando bq set-iam-policy per specificare o aggiornare il criterio IAM per una risorsa. La risorsa può essere una tabella o una vista. Dopo aver impostato le norme, le nuove norme vengono stampate in stdout. Il criterio è in formato JSON.

Il campo etag nella policy aggiornata deve corrispondere al valore etag della policy attuale, altrimenti l'aggiornamento non va a buon fine. Questa funzionalità impedisce gli aggiornamenti simultanei.

Puoi ottenere la policy attuale e il valore di etag per una risorsa utilizzando il comando bq get-iam-policy.

Trama

bq set-iam-policy [FLAGS] RESOURCE FILE_NAME

Flag e argomenti

Il comando bq set-iam-policy utilizza i seguenti flag e argomenti.

--table={true|false} o -t={true|false}
Facoltativo. Per impostare il criterio IAM di una tabella o di una vista, impostalo su true. Il valore predefinito è false.

RESOURCE è la tabella o la vista di cui vuoi aggiornare la policy.

FILE_NAME è il nome di un file contenente il criterio in formato JSON.

Per maggiori informazioni sul comando bq set-iam-policy, consulta Controllare l'accesso alle risorse con IAM.

bq show

Utilizza il comando bq show per visualizzare informazioni su una risorsa.

Trama

bq show [FLAGS] [RESOURCE]

Flag e argomenti

Il comando bq show utilizza i seguenti flag e argomenti:

--assignee_id=ASSIGNEE
Se utilizzato con il flag --reservation_assignment, specifica l'ID di una cartella, un'organizzazione o un progetto. Utilizza il flag --assignee_type per specificare il tipo di assegnatario da mostrare.
--assignee_type=TYPE
Se utilizzato con il flag --reservation_assignment, specifica il tipo di entità da mostrare. Utilizza uno dei seguenti valori:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--connection={true|false}
Per mostrare informazioni su una connessione, imposta true. Il valore predefinito è false. Per saperne di più, vedi Visualizzazione di una risorsa di connessione.
--dataset={true|false} o -d={true|false}
Per mostrare informazioni su un set di dati, imposta questo valore su true. Il valore predefinito è false.
--encryption_service_account={true|false}
Per mostrare il account di servizio di crittografia per un progetto, se esiste, o crearne uno se non esiste, imposta il valore su true. Il valore predefinito è false. Utilizzare con il flag --project_id.
--job={true|false} o -j={true|false}
Per mostrare informazioni su un job, imposta true. Il valore predefinito è false.
--job_type=JOB_TYPE
Se utilizzato con il flag --reservation_assignment, specifica il tipo di job delle assegnazioni di prenotazione che vuoi mostrare. Utilizza uno dei seguenti valori:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
--model={true|false} o -m={true|false}
Per mostrare informazioni su un modello BigQuery ML, imposta questo campo su true. Il valore predefinito è false.
--reservation={true|false}
Per mostrare informazioni su una prenotazione, imposta il valore su true. Il valore predefinito è false.
--reservation_assignment={true|false}
Se impostato su true, il comando mostra le assegnazioni di prenotazione per una cartella, un'organizzazione o un progetto specifici. Il comando mostra le assegnazioni esplicite della risorsa di destinazione, se presenti; in caso contrario, mostra le assegnazioni ereditate dalle risorse padre. Ad esempio, un progetto potrebbe ereditare le assegnazioni dalla relativa cartella principale. Quando si utilizza questo flag, si applicano i flag --job_type, --assignee_type e --assignee_id. Il valore predefinito è false.
--routine={true|false}
Per mostrare informazioni su una routine, imposta true. Il valore predefinito è false. Una routine può essere una funzione definita dall'utente permanente, una funzione tabella (anteprima) o una stored procedure.
--schema={true|false}
Per visualizzare solo lo schema della tabella, imposta true. Il valore predefinito è false.
--transfer_config={true|false}
Per visualizzare le informazioni su una configurazione di trasferimento, imposta questo campo su true. Il valore predefinito è false.
--transfer_run={true|false}
Per visualizzare le informazioni su un'esecuzione del trasferimento, imposta true. Il valore predefinito è false.
--view={true|false}
Per visualizzare le informazioni su una vista, imposta su true. Il valore predefinito è false.
RESOURCE
La risorsa di cui vuoi mostrare le informazioni.

Per ulteriori informazioni sull'utilizzo del comando bq show, consulta le seguenti risorse:

bq update

Utilizza il comando bq update per modificare una risorsa.

Trama

bq update [FLAGS] [RESOURCE]

Flag e argomenti

Il comando bq update utilizza i seguenti flag e argomenti:

--add_tags=TAGS
Disponibile solo su set di dati e tabelle. Specifica i tag che stai allegando alla risorsa, separati da virgole. Ad esempio 556741164180/env:prod,myProject/department:sales. Ogni tag deve avere il nome breve della chiave con spazio dei nomi e il nome breve del valore.
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
il numero di slot di scalabilità automatica assegnati alla prenotazione. Questo valore è uguale al valore della dimensione massima della prenotazione meno il numero di slot di riferimento. Disponibile solo con il flag --reservation e se la prenotazione è stata creata con un'edizione.
--capacity_commitment={true|false}
Per aggiornare un impegno relativo alla capacità, impostalo su true. Utilizza questo flag con i flag --merge, --plan, --renewal_plan, --split e --slots.
--clear_all_tags={true|false}
Disponibile solo su set di dati e tabelle. Per cancellare tutti i tag da una risorsa, imposta il valore su true. Il valore predefinito è false.
--clear_label=KEY:VALUE
Rimuove un'etichetta dalla risorsa. Utilizza il formato KEY:VALUE per specificare l'etichetta da rimuovere. Ripeti questo flag per rimuovere più etichette.
--clustering_fields=COLUMNS
Aggiorna la specifica di clustering di una tabella. Il valore COLUMNS è un elenco di nomi di colonne separati da virgole da utilizzare per il clustering. Per rimuovere il clustering, imposta COLUMNS su "" (la stringa vuota). Per ulteriori informazioni, vedi Modificare la specifica di clustering.
--target_job_concurrency=CONCURRENCY
Se utilizzato con il flag --reservation, specifica il numero target di query eseguite contemporaneamente. Il valore predefinito è 0, il che significa che la concorrenza viene impostata automaticamente in base alle dimensioni della prenotazione. Per maggiori informazioni, consulta la sezione Utilizzare le code di query.
--dataset={true|false} o -d={true|false}
Per aggiornare un set di dati, impostalo su true. Il valore predefinito è false.
--default_kms_key=KEY
Specifica l'ID risorsa chiave Cloud KMS predefinito per criptare i dati delle tabelle in un set di dati. La chiave predefinita viene utilizzata se non viene fornita una chiave esplicita per la creazione di una tabella o una query.
--default_partition_expiration=SECONDS

Un numero intero che specifica il tempo di scadenza predefinito, in secondi, per tutte le partizioni nelle tabelle partizionate appena create nel set di dati. Questo flag non ha un valore minimo.

La scadenza di una partizione è impostata sulla data UTC della partizione più il valore intero. Se questa proprietà è impostata, sostituisce la scadenza predefinita della tabella a livello di set di dati, se esistente. Se fornisci il flag --time_partitioning_expiration quando crei o aggiorni una tabella partizionata, la scadenza della partizione a livello di tabella ha la precedenza sulla scadenza predefinita della partizione a livello di set di dati. Specifica 0 per rimuovere una scadenza esistente.

--default_table_expiration=SECONDS

Un numero intero che aggiorna la durata predefinita, in secondi, per le tabelle appena create in un set di dati. La scadenza è impostata sull'ora UTC corrente più questo valore. Specifica 0 per rimuovere la scadenza esistente.

--description=DESCRIPTION

Aggiorna la descrizione di un set di dati, una tabella, un'istantanea della tabella, un modello o una vista.

--destination_reservation_id=RESERVATION_ID

Se utilizzato con il flag --reservation_assignment, sposta un'assegnazione di prenotazione esistente alla prenotazione specificata. Il valore è l'ID della prenotazione di destinazione. Per ulteriori informazioni, vedi Spostare un'assegnazione in un'altra prenotazione.

--display_name=DISPLAY_NAME

Aggiorna il nome visualizzato di una configurazione di trasferimento.

--etag=ETAG

Funge da filtro; aggiorna la risorsa solo se questa ha un ETag che corrisponde alla stringa specificata nell'argomento ETAG.

--expiration SECONDS

Per aggiornare la scadenza della tabella, del modello, dello snapshot della tabella o della visualizzazione, includi questo flag. Sostituisci SECONDS con il numero di secondi che intercorrono tra l'ora dell'aggiornamento e l'ora di scadenza. Per rimuovere la scadenza di una tabella, di un modello, di uno snapshot della tabella o di una visualizzazione, imposta l'argomento SECONDS su 0.

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

Aggiorna una tabella esterna con la definizione della tabella specificata. La definizione della tabella può essere un percorso a un file di definizione della tabella JSON locale o una definizione della tabella incorporata nel formato SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. Il valore SCHEMA è un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE. Se utilizzi un file di definizione della tabella, non assegnargli un'estensione.

Ad esempio:

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

Utilizzare con il flag --reservation. Per limitare i job in esecuzione nella prenotazione specificata in modo che utilizzino solo gli slot allocati a quella prenotazione, imposta il valore su true. Il valore predefinito è false; i job nella prenotazione specificata possono utilizzare gli slot inattivi di altre prenotazioni o gli slot non allocati a nessuna prenotazione. Per ulteriori informazioni, consulta la sezione Slot inattivi.

--max_staleness=INTERVAL

Specifica un valore INTERVAL che determina la massima obsolescenza consentita durante l'interrogazione di una vista materializzata o di una tabella esterna. Il valore predefinito è 0-0 0 0:0:0.

Ad esempio:

  • 1 giorno: 0-0 1 0:0:0
  • 1 ora: 0-0 0 1:0:0

Per utilizzare questo flag, devi specificare una definizione di tabella con il flag --external_table_definition.

--max_time_travel_hours=HOURS

Specifica la durata in ore della finestra di spostamento cronologico per il set di dati. Il valore di --max_time_travel_hours deve essere un numero intero espresso in multipli di 24 (48, 72, 96, 120, 144, 168) compreso tra 48 (2 giorni) e 168 (7 giorni).

--merge={true|false}

Per unire due impegni di capacità, imposta --merge su true. Imposta il flag --capacity_commitment su true, specifica la posizione degli impegni che vuoi unire utilizzando il flag --location e sostituisci RESOURCE con gli ID dei due impegni che vuoi unire, separati da una virgola. Per ulteriori informazioni, vedi Unire due impegni.

--metadata_cache_mode=METADATA_CACHE_MODE

Abilita la cache dei metadati per una tabella esterna con una connessione. Utilizza uno dei seguenti valori:

  • AUTOMATIC
  • MANUAL

Specifica AUTOMATIC per aggiornare automaticamente i metadati memorizzati nella cache. Specifica MANUAL per interrompere l'aggiornamento automatico. Per utilizzare questo flag, devi specificare una definizione di tabella con il flag --external_table_definition.

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

Per aggiornare i metadati di un modello BigQuery ML, impostalo su true. Il valore predefinito è false.

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

Aggiorna i parametri per una configurazione di trasferimento. I parametri variano a seconda dell'origine dati. Per saperne di più, consulta la Introduzione a BigQuery Data Transfer Service.

--plan=PLAN

Se utilizzato con il flag --capacity_commitment, converte un impegno di capacità nel piano di impegno di durata più lunga specificato. Sostituisci PLAN con uno dei seguenti valori:

  • ANNUAL
  • THREE_YEAR
--refresh_window_days=DAYS

Un numero intero che specifica una finestra di aggiornamento aggiornata (in giorni) per una configurazione di trasferimento.

--remove_tags=TAG_KEYS

Disponibile solo su set di dati e tabelle. Specifica i tag che stai rimuovendo dalla risorsa, separati da virgole, ad esempio, 556741164180/env,myProject/department. Ogni chiave tag deve avere il nome della chiave con spazio dei nomi.

--renewal_plan=PLAN

Se utilizzato con il flag --capacity_commitment, aggiorna il piano di rinnovo per un impegno di capacità annuale. Sostituisci PLAN con uno dei seguenti valori:

  • ANNUAL
  • THREE_YEAR
  • NONE

I clienti che utilizzano i prezzi a tariffa fissa legacy possono anche utilizzare uno dei seguenti valori:

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

Specifica se aggiornare una prenotazione. Il valore predefinito è false.

--reservation_assignment={true|false}

Specifica se aggiornare un'assegnazione di prenotazione. Il valore predefinito è false.

--schema={SCHEMA_FILE|SCHEMA}

Specifica il percorso di un file di schema JSON locale o un elenco separato da virgole di definizioni di colonne nel formato FIELD:DATA_TYPE, FIELD:DATA_TYPE e così via. Se utilizzi un file di schema, non assegnargli un'estensione.

Ad esempio:

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

--service_account_name=SERVICE_ACCOUNT

Specifica un account di servizio da utilizzare come credenziale per una configurazione di trasferimento.

--set_label=KEY:VALUE

Specifica un'etichetta da aggiornare. Per aggiornare più etichette, ripeti questo flag.

--slots=NUMBER_OF_BASELINE_SLOTS

Se utilizzato con i flag --capacity_commitment e --split, specifica il numero di slot di base da dividere da un impegno di capacità esistente in un nuovo impegno. Sostituisci RESOURCE con l'ID dell'impegno da cui vuoi eseguire la suddivisione.

Se utilizzato con il flag --reservation, aggiorna il numero di slot in una prenotazione.

--source=FILE

Il percorso di un file JSON locale contenente un payload utilizzato per aggiornare una risorsa. Ad esempio, puoi utilizzare questo flag per specificare un file JSON che contenga una risorsa dataset con una proprietà access aggiornata. Il file viene utilizzato per sovrascrivere i controlli di accesso del set di dati. Il file JSON non deve includere un byte order mark (BOM).

--split={true|false}

Se impostato su true e utilizzato con il flag --capacity_commitment, specifica che vuoi dividere un impegno di capacità esistente. Utilizza il flag --location per specificare la posizione dell'impegno da cui vuoi eseguire la suddivisione e il flag --slots per specificare il numero di slot da separare. Sostituisci RESOURCE con l'ID dell'impegno da cui vuoi eseguire la suddivisione. Per saperne di più, consulta la sezione Dividere un impegno.

--storage_billing_model=BILLING_MODEL

Specifica il modello di fatturazione dello spazio di archiviazione per un set di dati. Imposta il valore di --storage_billing_model su PHYSICAL per utilizzare i byte fisici per il calcolo degli addebiti per l'archiviazione oppure su LOGICAL per utilizzare i byte logici.

Quando modifichi il modello di fatturazione di un set di dati, sono necessarie 24 ore prima che la modifica abbia effetto.

Dopo aver modificato il modello di fatturazione dello spazio di archiviazione di un set di dati, devi attendere 14 giorni prima di poterlo modificare di nuovo.

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

Specifica se aggiornare una tabella. Il valore predefinito è false.

--target_dataset=DATASET

Se specificato, aggiorna il set di dati di destinazione per una configurazione di trasferimento.

--time_partitioning_expiration=SECONDS

Un numero intero che viene aggiornato (in secondi) quando deve essere eliminata una partizione basata sul tempo. Il tempo di scadenza corrisponde alla data UTC della partizione più il valore intero. Un numero negativo indica nessuna scadenza.

--time_partitioning_field=COLUMN_NAME

Aggiorna il campo utilizzato per determinare come creare una partizione basata sul tempo. Se il partizionamento basato sul tempo è attivato senza questo valore, la tabella viene partizionata in base all'ora di caricamento.

--time_partitioning_type=INTERVAL

Specifica il tipo di partizionamento. Utilizza uno dei seguenti valori:

  • DAY
  • HOUR
  • MONTH
  • YEAR

Non puoi modificare il tipo di partizionamento di una tabella esistente.

--transfer_config={true|false}

Specifica se aggiornare una configurazione di trasferimento. Il valore predefinito è false.

--update_credentials={true|false}

Specifica se aggiornare le credenziali di configurazione del trasferimento. Il valore predefinito è false.

--use_legacy_sql={true|false}

Imposta su false per aggiornare la query SQL per una vista da SQL precedente a GoogleSQL. Il valore predefinito è determinato dalle impostazioni di configurazione. Se l'impostazione di configurazione non è specificata, il valore predefinito è true; la query utilizza SQL precedentey.

--vertex_ai_model_id=VERTEX_AI_MODEL_ID

Se specificato, aggiorna l'ID modello per un modello BigQuery ML registrato in Vertex AI Model Registry.

--view=QUERY

Se specificata, aggiorna la query SQL per una vista.

--view_udf_resource=FILE

Aggiorna l'URI Cloud Storage o il percorso di un file di codice locale che viene caricato e valutato immediatamente come risorsa di funzione definita dall'utente dall'utente nella query SQL di una vista. Ripeti questo flag per specificare più file.

RESOURCE

La risorsa che vuoi aggiornare.

Per ulteriori informazioni sull'utilizzo del comando bq update, consulta le seguenti risorse:

bq version

Utilizza il comando bq version per visualizzare il numero di versione dello strumento a riga di comando bq.

Trama

bq version

bq wait

Utilizza il comando bq wait per attendere un numero specificato di secondi prima che un job termini. Se non viene specificato un job, il comando attende il completamento del job corrente.

Trama

bq wait [FLAGS] [JOB] [SECONDS]

Esempi

bq wait
bq wait --wait_for_status=RUNNING 12345 100

Flag e argomenti

Il comando bq wait utilizza i seguenti flag e argomenti:

--fail_on_error={true|false}
Per restituire l'esito positivo se il job è stato completato durante il tempo di attesa, anche se non è riuscito, imposta il valore su false. Il valore predefinito è true; dopo il periodo di attesa, il comando esce con un errore se il job è ancora in esecuzione o se è stato completato ma non è riuscito.
--wait_for_status=STATUS

Se specificato, attende un determinato stato del job prima di uscire. Utilizza uno dei seguenti valori:

  • PENDING
  • RUNNING
  • DONE

Il valore predefinito è DONE.

JOB

Specifica il job da attendere. Puoi utilizzare il comando bq ls --jobs myProject per trovare un identificatore del job.

SECONDS

Specifica il numero massimo di secondi da attendere fino al completamento del job. Se inserisci 0, il comando esegue il polling per il completamento del job e restituisce immediatamente. Se non specifichi un valore intero, il comando attende il completamento del job.