La E/S administrada admite las siguientes capacidades para BigQuery:
- Creación de tablas dinámicas
- Destinos dinámicos
- Para las lecturas, el conector usa la API de BigQuery Storage Read.
Para las escrituras, el conector usa los siguientes métodos de BigQuery:
- Si la fuente no está limitada y Dataflow usa el procesamiento de transmisión del tipo “exactamente una vez”, el conector realiza escrituras en BigQuery con la API de BigQuery Storage Write con semántica de entrega del tipo “exactamente una vez”.
- Si la fuente no está limitada y Dataflow usa el procesamiento de transmisión “al menos una vez”, el conector realiza escrituras en BigQuery con la API de BigQuery Storage Write con semántica de entrega “al menos una vez”.
- Si la fuente está limitada, el conector usa cargas de archivos de BigQuery.
Requisitos
Los siguientes SDK admiten E/S administrada para BigQuery:
- SDK de Apache Beam para Java, versión 2.61.0 o posterior
- SDK de Apache Beam para Python, versión 2.61.0 o posterior
Configuración
La E/S administrada para BigQuery admite los siguientes parámetros de configuración:
BIGQUERY
Leer
Configuración | Tipo | Descripción |
---|---|---|
kms_key |
str
|
Usa esta clave de Cloud KMS para encriptar tus datos |
consulta |
str
|
Es la consulta en SQL que se ejecutará para leer desde la tabla de BigQuery. |
row_restriction |
str
|
Son filas de solo lectura que coinciden con este filtro, que debe ser compatible con SQL estándar de Google. Esto no se admite cuando se lee a través de una consulta. |
campos |
list[str]
|
Leer solo los campos (columnas) especificados de una tabla de BigQuery Es posible que los campos no se devuelvan en el orden especificado. Si no se especifica ningún valor, se devuelven todos los campos. Ejemplo: "col1, col2, col3" |
tabla |
str
|
Es el nombre completamente calificado de la tabla de BigQuery desde la que se leerá. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
BIGQUERY
Escribir
Configuración | Tipo | Descripción |
---|---|---|
table |
str
|
Es la tabla de BigQuery en la que se escribirá. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
drop |
list[str]
|
Es una lista de nombres de campos que se quitarán del registro de entrada antes de escribirlo. Es mutuamente excluyente con "keep" y "only". |
keep |
list[str]
|
Es una lista de nombres de campos que se conservarán en el registro de entrada. Todos los demás campos se descartan antes de la escritura. Es mutuamente excluyente con "drop" y "only". |
kms_key |
str
|
Usa esta clave de Cloud KMS para encriptar tus datos |
solo |
str
|
Nombre de un solo campo de registro que se debe escribir. Es mutuamente exclusivo con "keep" y "drop". |
triggering_frequency_seconds |
int64
|
Determina la frecuencia con la que se "confirma" el progreso en BigQuery. El valor predeterminado es cada 5 segundos. |
¿Qué sigue?
Para obtener más información y ejemplos de código, consulta los siguientes temas: