El origen de datos de BigQuery conecta DataWorks con Google BigQuery y permite leer datos de BigQuery como parte de una tarea de sincronización sin conexión. Configure la tarea mediante la interfaz visual o el editor de código.
Funciones compatibles
|
Función |
Compatible |
|
Sincronización sin conexión (por lotes) |
Sí |
|
Configuración mediante interfaz visual |
Sí |
|
Configuración mediante editor de código |
Sí |
|
Sincronización incremental (mediante filtro |
Sí |
|
Sincronización basada en particiones |
Sí |
|
Sincronización concurrente (mediante |
Sí |
Regiones compatibles
Los orígenes de datos de BigQuery están disponibles en las siguientes regiones: China (Hong Kong), Japan (Tokyo), Singapore, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Germany (Frankfurt), UK (London), US (Silicon Valley) y US (Virginia).
La versión del SDK de BigQuery es google-cloud-bigquery 2.29.0. Para obtener más detalles sobre el SDK, consulte la documentación de BigQuery.
Tipos de campo compatibles
La siguiente tabla enumera los tipos de campo de BigQuery que admite DataWorks y sus tipos de Java correspondientes.
|
Tipo de BigQuery |
Tipo de Java |
|
BOOL |
Bool |
|
INT64 |
Long |
|
FLOAT64 |
BigDecimal |
|
NUMERIC |
BigDecimal |
|
BIGNUMERIC |
BigDecimal |
|
STRING |
String |
|
BYTES |
Bytes |
|
STRUCT |
String |
|
ARRAY |
String |
|
TIMESTAMP |
Date |
|
DATE |
Date |
|
TIME |
Date |
|
DATETIME |
Date |
|
GEOGRAPHY |
String |
|
JSON |
String |
|
INTERVAL |
String |
Para consultar la referencia completa de tipos de BigQuery, revise la documentación de tipos de datos de BigQuery.
Requisitos previos
Antes de empezar, asegúrese de contar con lo siguiente:
Conectividad de red entre su origen de datos de BigQuery y un resource group serverless o un resource group exclusivo para Data Integration. Utilice un resource group serverless para la mayoría de las tareas de sincronización. Para consultar las instrucciones de configuración, revise Soluciones de conectividad de red.
Un archivo de autenticación de cuenta de servicio (clave JSON) descargado de Google Cloud.
El Project ID de BigQuery correspondiente a su proyecto de Google Cloud.
Agregar el origen de datos de BigQuery
Agregue BigQuery como origen de datos en DataWorks antes de crear una tarea de sincronización. Siga las instrucciones descritas en Gestión de orígenes de datos.
Los siguientes parámetros son específicos del origen de datos de BigQuery:
|
Parámetro |
Descripción |
|
BigQuery Project ID |
El ID de su proyecto de Google Cloud. |
|
BigQuery authorization information |
Cargue el archivo de autenticación JSON descargado de Google Cloud. |
Sugerencia: Consulte las descripciones de los parámetros directamente en la consola de DataWorks al agregar el origen de datos.
Configurar una tarea de sincronización
Para obtener instrucciones paso a paso sobre la configuración de tareas, consulte:
Apéndice: Ejemplo de script y descripción de parámetros
Utilice el siguiente ejemplo de script y la referencia de parámetros cuando configure una tarea de sincronización por lotes de BigQuery en el editor de código. Para conocer los requisitos generales del editor de código, consulte Configure a task in the code editor.
Ejemplo de script del lector
{
"stepType": "bigquery",
"parameter": {
"datasource": "bq_test1",
"dataSet": "database_0724",
"table": "partition_1107",
"column": [
"id",
"table_id",
"table_no",
"table_name",
"table_status"
],
"where": "xxx=3",
"partition": [
"_PARTITIONTIME='2023-11-07'"
]
},
"name": "Reader",
"category": "reader"
}
Parámetros del lector
|
Parámetro |
Obligatorio |
Predeterminado |
Descripción |
|
|
Sí |
Ninguna |
Nombre del origen de datos. Debe coincidir con el nombre del origen de datos agregado en DataWorks. |
|
|
Sí |
Ninguna |
Conjunto de datos de BigQuery. |
|
|
Sí |
Ninguna |
Nombre de la tabla por sincronizar. |
|
|
Sí |
Ninguna |
Columnas por leer. Ejemplo: |
|
|
No |
Ninguna |
Condición de filtro aplicada a la consulta. El lector de BigQuery combina |
|
|
No |
Ninguna |
Una o más particiones por sincronizar. Ejemplo: |
|
|
No |
Ninguna |
Campo utilizado para dividir los datos en una sincronización concurrente. No tiene efecto si se especifica |