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 outputstderr
- logs to standard errorfalse
: 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 ambienteBIGQUERYRC
. 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 formatoPROJECT:DATASET
oDATASET
. Se la partePROJECT
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 sufalse
quando l'autenticazione viene eseguita utilizzando un account utente, il flag--use_google_auth
deve essere impostato sufalse
.--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 formattatasparse
: output della tabella più sempliceprettyjson
: formato JSON di facile letturajson
: JSON compatto al massimocsv
: formato CSV con intestazione
pretty
,sparse
eprettyjson
sono pensati per essere leggibili.json
ecsv
sono destinati a essere utilizzati da un altro programma. Se viene specificatonone
, 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 sutrue
. 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 di0
, il comando registra le richieste e le risposte del server HTTP in stderr, oltre ai messaggi di errore. SeDEBUG_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
equery
. 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 comandobq 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 sutrue
, 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
sutrue
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:
- Utilizzando il comando
bq get-iam-policy
per recuperare il file di criteri (in formato JSON). - Modifica del file delle norme.
- 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
sutrue
. 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
sufalse
. 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à:
- Crea una copia di una tabella, di un clone di una tabella o di uno snapshot di una tabella.
- Crea un clone della tabella.
- Crea uno snapshot della tabella.
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
né--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 comandobq cp --clone
.--snapshot={true|false}
Per creare uno snapshot della tabella della tabella specificata nell'argomento
SOURCE_TABLE
, imposta il valoretrue
. 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
né--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:
- Copiare una tabella
- Creare cloni delle tabelle
- Creare snapshot delle tabelle
- Ripristinare gli snapshot delle tabelle
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
otab
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
sutrue
. 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 sufalse
, 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 sufalse
, 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, vediload_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
otab
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 sutrue
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 suNEWLINE_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
suDATASTORE_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
perJobConfigurationLoad.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 campiALLOW_FIELD_RELAXATION
: Consenti ai campi di rilassamentoREQUIRED
diNULLABLE
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"
efile_set_spec_type
èFILE_SYSTEM_MATCH
, il file viene utilizzato direttamente come file di dati. Sefile_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 suAVRO
, imposta questo flag sutrue
per convertire i tipi logici nei tipi corrispondenti (ad esempioTIMESTAMP
) anziché utilizzare solo i tipi non elaborati (ad esempioINTEGER
).--decimal_target_types=DECIMAL_TYPE
Determina come convertire un tipo logico
Decimal
. Equivalente aJobConfigurationLoad.decimalTargetTypes
. Ripeti questo flag per specificare più tipi di target.--parquet_enum_as_string={true|false}
Se il flag
--source_format
è impostato suPARQUET
e vuoi che BigQuery deduca i tipi logici ParquetENUM
come valoriSTRING
, imposta questo flag sutrue
. Il valore predefinito èfalse
.--parquet_enable_list_inference={true|false}
Se il flag
--source_format
è impostato suPARQUET
, questo flag indica se utilizzare l'inferenza dello schema per i tipi logici ParquetLIST
.--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:
- Caricamento di dati Avro
- Caricamento di dati CSV
- Caricamento di dati JSON
- Caricamento di dati ORC
- Caricamento di dati Parquet
- Caricamento dei dati dalle esportazioni di Datastore
- Caricamento dei dati dalle esportazioni di Firestore
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 formatolabels.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 logicoAND
, nonOR
). Se vuoi specificare più di una tripla, racchiudi il valoreFILTER
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:
amazon_s3
- Trasferimento dati Amazon S3azure_blob_storage
- Trasferimento di dati di Azure Blob Storagedcm_dt
- Data Transfer di Campaign Managergoogle_cloud_storage
- Trasferimento dei dati di Cloud Storagecross_region_copy
- Copia del set di datidfp_dt
- Trasferimento dei dati di Google Ad Managerdisplayvideo
- Trasferimento dei dati di Display & Video 360google_ads
- Trasferimento dei dati di Google Adsmerchant_center
- Trasferimento dei dati di Google Merchant Centermysql
- Trasferimento di dati MySQLplay
- Trasferimento dei dati di Google Playscheduled_query
- Trasferimento dei dati delle query programmatesearch_ads
- Trasferimento dati di Search Ads 360youtube_channel
- Trasferimento dei dati del canale YouTubeyoutube_content_owner
- Trasferimento dei dati del proprietario dei contenuti YouTuberedshift
- Migrazione di Amazon Redshifton_premises
- Migrazione Teradata
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 suRUN_ATTEMPT_UNSPECIFIED
. Per elencare solo l'ultimo tentativo di esecuzione, impostaLATEST
. 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 sutrue
. 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:
- Gestione dei job
- Elenco dei set di dati in un progetto
- Creazione e utilizzo delle tabelle
- Elenco delle visualizzazioni in un set di dati
- Utilizzo dei trasferimenti
- Elenco degli snapshot della tabella in un set di dati
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.
--capacity_commitment
: acquista un impegno di capacità.--connection
: crea una connessione.--dataset
o-d
: crea un set di dati.--materialized_view
: crea una vista materializzata.--reservation
: crea una prenotazione.--reservation_assignment
. Assegna una cartella, un progetto o un'organizzazione a una prenotazione.--table
o-t
: crea una tabella.--transfer_config
: crea una configurazione di trasferimento.--transfer_run
: crea un'esecuzione del trasferimento per un intervallo di tempo.--view
: crea una visualizzazione.
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 sutrue
non comporta la sovrascrittura della risorsa da parte del comandobq 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
oTHREE_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
etype
.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
epassword
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
suPHYSICAL
per utilizzare i byte fisici per il calcolo degli addebiti per l'archiviazione oppure suLOGICAL
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 formatoFIELD:DATA_TYPE, FIELD:DATA_TYPE
e così via. Puoi omettere il valoreSCHEMA
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 specificareBUCKET_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.
- Per un singolo file:
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 formatogs://bucket_name/[folder_name/]*
.Puoi specificare più bucket fornendo più percorsi, ad esempiogs://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"
efile_set_spec_type
èFILE_SYSTEM_MATCH
, il file viene utilizzato direttamente come file di dati. Sefile_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 datiINTERVAL
. Ad esempio, specifica0-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 suAVRO
, questo flag specifica se convertire i tipi logici nei tipi corrispondenti (ad esempioTIMESTAMP
) anziché utilizzare solo i tipi non elaborati (ad esempioINTEGER
).--parquet_enable_list_inference={true|false}
Se la parte
FORMAT
del flag--external_table_definition
è impostata suPARQUET
, questo flag specifica se utilizzare l'inferenza dello schema per i tipi logici ParquetLIST
.--parquet_enum_as_string={true|false}
Se la parte
FORMAT
del flag--external_table_definition
è impostata suPARQUET
, questo flag specifica se dedurre i tipi logici ParquetENUM
come valoriSTRING
.
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:
amazon_s3
- Trasferimento dati Amazon S3azure_blob_storage
- Trasferimento di dati di Azure Blob Storagedcm_dt
- Data Transfer di Campaign Managergoogle_cloud_storage
- Trasferimento dei dati di Cloud Storagecross_region_copy
- Copia del set di datidfp_dt
- Trasferimento dei dati di Google Ad Managerdisplayvideo
- Trasferimento dei dati di Display & Video 360google_ads
- Trasferimento dei dati di Google Adsmerchant_center
- Trasferimento dei dati di Google Merchant Centermysql
- Trasferimento di dati MySQLplay
- Trasferimento dei dati di Google Playscheduled_query
- Trasferimento dei dati delle query programmatesearch_ads
- Trasferimento dati di Search Ads 360youtube_channel
- Trasferimento dei dati del canale YouTubeyoutube_content_owner
- Trasferimento dei dati del proprietario dei contenuti YouTuberedshift
- Migrazione di Amazon Redshifton_premises
- Migrazione Teradata
--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 parametroTABLES
è 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:
- Configura un trasferimento da Amazon S3
- Configurare un trasferimento da Campaign Manager
- Configura un trasferimento da Cloud Storage
- Configurare un trasferimento da Google Ad Manager
- Configurare un trasferimento da Google Ads
- Configurare un trasferimento da Google Merchant Center (beta)
- Configurare un trasferimento da Google Play
- Configurare un trasferimento da Search Ads 360 (beta)
- Configurare un trasferimento dai canali YouTube
- Configurare un trasferimento dal proprietario dei contenuti YouTube
- Migrare i dati da Amazon Redshift
- Eseguire la migrazione dei dati da Teradata
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
oSTRINGS
, 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 sistemaBQ.REFRESH_EXTERNAL_METADATA_CACHE
per aggiornare la cache.Devi impostare il flag
--metadata_cache_mode
se imposti il flag--max_staleness
con il comandobq mk
.--parquet_enable_list_inference={true|false}
Se
source_format
è impostato suPARQUET
, questo flag specifica se utilizzare l'inferenza dello schema per i tipi logici ParquetLIST
. Il valore predefinito èfalse
.--parquet_enum_as_string={true|false}
Se
source_format
è impostato suPARQUET
, questo flag specifica se dedurre i tipi logiciENUM
Parquet come valoriSTRING
. 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"
efile_set_spec_type
èFILE_SYSTEM_MATCH
, il file viene utilizzato direttamente come file di dati. Sefile_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 suAVRO
, questo flag specifica se convertire i tipi logici nei tipi corrispondenti (ad esempioTIMESTAMP
) anziché utilizzare solo i tipi non elaborati (ad esempioINTEGER
). 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 campolabels
nella risorsaJobConfiguration
.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
. SpecificaTABLE
nel seguente formato:PROJECT
:DATASET
.TABLE
. SePROJECT
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 valoreSCHEMA
è un elenco separato da virgole di definizioni di colonne nel formatoFIELD: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. SeTYPE
viene omesso, viene utilizzato il tipoSTRING
.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 modulocolumn_name,start,end,interval
, dovecolumn_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 sutrue
. 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 rilassamentoREQUIRED
diNULLABLE
.
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:
- Utilizzando il comando
bq get-iam-policy
per recuperare il file di criteri (in formato JSON). - Modifica del file delle norme.
- 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 sostituisciRESOURCE
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:
- Gestione dei set di dati
- Gestione dei job
- Gestione delle tabelle
- Gestione delle visualizzazioni
- Utilizzo dei trasferimenti
- Eliminazione degli snapshot delle tabelle
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:
- Ottenere informazioni sui set di dati
- Creazione e utilizzo delle tabelle
- Recupero delle informazioni sulle visualizzazioni
- Utilizzo dei trasferimenti
- Gestione dei job
- Ottenere informazioni su uno snapshot di una tabella
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. Specifica0
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'argomentoSECONDS
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 valoreSCHEMA
è un elenco separato da virgole di definizioni di colonne nel formatoFIELD: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 sutrue
. 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
.- 1 giorno:
--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
sutrue
. Imposta il flag--capacity_commitment
sutrue
, specifica la posizione degli impegni che vuoi unire utilizzando il flag--location
e sostituisciRESOURCE
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. SpecificaMANUAL
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. SostituisciPLAN
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. SostituisciPLAN
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. SostituisciRESOURCE
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. SostituisciRESOURCE
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
suPHYSICAL
per utilizzare i byte fisici per il calcolo degli addebiti per l'archiviazione oppure suLOGICAL
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:
- Aggiornamento delle proprietà dei set di dati
- Gestione delle tabelle
- Aggiornamento delle visualizzazioni
- Aggiornamento delle etichette
- Utilizzo dei trasferimenti
- Aggiornamento dei metadati dello snapshot della tabella
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.