L'I/O gestito supporta le seguenti funzionalità per BigQuery:
- Creazione di tabelle dinamiche
- Destinazioni dinamiche
- Per le letture, il connettore utilizza l'API BigQuery Storage Read.
Per le scritture, il connettore utilizza i seguenti metodi BigQuery:
- Se l'origine non è delimitata e Dataflow utilizza l'elaborazione di streaming esattamente una volta, il connettore esegue scritture in BigQuery utilizzando l'API BigQuery Storage Write con semantica di invio esattamente una volta.
- Se l'origine non è delimitata e Dataflow utilizza l'elaborazione di streaming almeno una volta, il connettore esegue scritture in BigQuery utilizzando l'API BigQuery Storage Write con semantica di distribuzione almeno una volta.
- Se l'origine è delimitata, il connettore utilizza caricamenti di file BigQuery.
Requisiti
I seguenti SDK supportano I/O gestito per BigQuery:
- Apache Beam SDK per Java versione 2.61.0 o successive
- SDK Apache Beam per Python versione 2.61.0 o successive
Configurazione
L'I/O gestito per BigQuery supporta i seguenti parametri di configurazione:
BIGQUERY
Leggi
Configurazione | Tipo | Descrizione |
---|---|---|
kms_key |
str
|
Utilizza questa chiave Cloud KMS per criptare i tuoi dati |
query |
str
|
La query SQL da eseguire per leggere dalla tabella BigQuery. |
row_restriction |
str
|
Leggi solo le righe che corrispondono a questo filtro, che deve essere compatibile con Google SQL standard. Questa operazione non è supportata durante la lettura tramite query. |
i campi |
list[str]
|
Leggi solo i campi (colonne) specificati da una tabella BigQuery. I campi potrebbero non essere restituiti nell'ordine specificato. Se non viene specificato alcun valore, vengono restituiti tutti i campi. Esempio: "col1, col2, col3" |
tabella |
str
|
Il nome completo della tabella BigQuery da cui leggere. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
BIGQUERY
Scrittura
Configurazione | Tipo | Descrizione |
---|---|---|
table |
str
|
La tabella BigQuery in cui scrivere. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
drop |
list[str]
|
Un elenco di nomi di campi da eliminare dal record di input prima della scrittura. Si esclude a vicenda con "mantieni" e "solo". |
keep |
list[str]
|
Un elenco di nomi di campi da conservare nel record di input. Tutti gli altri campi vengono eliminati prima della scrittura. Si esclude a vicenda con "drop" e "only". |
kms_key |
str
|
Utilizza questa chiave Cloud KMS per criptare i tuoi dati |
solo |
str
|
Il nome di un singolo campo del record da scrivere. Si esclude a vicenda con "keep" e "drop". |
triggering_frequency_seconds |
int64
|
Determina la frequenza con cui "eseguire il commit" dei progressi in BigQuery. Il valore predefinito è ogni 5 secondi. |
Passaggi successivi
Per ulteriori informazioni ed esempi di codice, consulta i seguenti argomenti: