Saltar al contenido principal Saltar al contenido complementario

Google BigQuery

Puede usar Google BigQuery como plataforma de datos de destino en una canalización de datos o en una tarea de replicación. En una canalización de datos, se pueden realizar varias operaciones ELT en la plataforma de destino, incluido el almacenamiento de datos, la transformación de datos, la creación de mercados de datos y el registro de datos. Una tarea de replicación, por otro lado, implica la replicación de datos directamente desde un sistema de origen a un sistema de destino con capacidades de transformación básicas, pero sin soporte para operaciones ELT.

Establecer Google BigQuery como objetivo implica:

Configurar una conexión con Google BigQuery

Para configurar el conector, haga lo siguiente:

  1. En Conexiones, haga clic en Crear conexión.

  2. Seleccione el conector de destino Google BigQuery y luego proporcione la siguiente configuración:

Destino de datos

Nota informativaEste campo no está disponible con la suscripción Qlik Talend Cloud Starter porque Pasarela Data Movement no se admite con este nivel de suscripción.

Solo se requiere una Pasarela Data Movement si la base de datos de destino no está accesible desde Qlik Cloud y solo se puede acceder a ella mediante un vínculo privado (por ejemplo, si está ubicada o en una nube privada virtual). En tal caso, seleccione la Pasarela Data Movement a través de la cual desea acceder a la base de datos de destino.

En función del caso de uso que precise, será la misma Pasarela Data Movement implementada para transferir los datos desde la fuente de datos u otra distinta.

Para obtener información sobre casos de uso de Pasarela Data Movement, consulte ¿Cuándo es obligatorio Pasarela Data Movement? y Casos de uso habituales.

Si es posible acceder directamente a la base de datos de destino desde Qlik Cloud, seleccione Ninguno.

Nota informativaAl acceder a la base de datos de destino mediante Pasarela Data Movement, también necesita instalar el controlador adecuado en el equipo de Pasarela Data Movement. Para más detalles, consulte Google BigQuery a continuación.

Propiedades de conexión

Clave de la cuenta de servicio: Cargue el archivo JSON que se descargó cuando creó su clave de cuenta de servicio BigQuery.

Ubicación: Dónde cargar el conjunto de datos creado por Qlik. Si selecciona Otro, indique el nombre de la región en el campo Nombre de la región. Para obtener una lista de nombres de regiones admitidas, consulte BigQuery locations.

Nota informativaSeleccionar Otro requiere Pasarela Data Movement 2023.11.4 o posterior.

Nombre

El nombre que mostrará la conexión.

Requisitos previos

Permisos necesarios para aterrizar los datos en destino

Si desea que el conjunto de datos se cree automáticamente, se requieren los siguientes permisos:

BigQuery > BigQuery Job User

BigQuery > BigQuery Data Editor

Si el conjunto de datos ya existe, debe realizar los siguientes pasos:

  1. Cree una cuenta de servicio con el siguiente permiso:

    BigQuery > BigQuery Job User

  2. Navegue hasta el conjunto de datos que desea usar y luego:

    1. Agregue la cuenta de servicio que acaba de crear como principal.

    2. Asigne el rol BigQuery Data Editor.

Configuración del driver o controlador

Solo se requiere un controlador si accede a la base de datos a través de Pasarela Data Movement. En tal caso, es necesario instalar el controlador en la máquina de la Pasarela Data Movement.

Puede instalar el driver usando la utilidad de instalación del driver (recomendado) o manualmente. La instalación manual solo debe intentarse en el improbable caso de que encuentre un problema con la utilidad de instalación del driver.

Uso de la utilidad de instalación del driver para instalar el driver/controlador

Esta sección describe cómo instalar el driver necesario. El proceso implica ejecutar un script que descargará, instalará y configurará automáticamente el driver requerido. También puede ejecutar secuencias de script para actualizar y desinstalar el driver según sea necesario.

  • Asegúrese de que Python 3.6 o posterior esté instalado en el servidor de la pasarela de Data Movement.

    Python viene preinstalado en la mayoría de las distribuciones de Linux. Puede verificar qué versión de Python está instalada en su sistema ejecutando el siguiente comando:

    python3 --version

Para descargar e instalar el driver:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  3. En la máquina de la puerta de enlace de Data Movement, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  4. Ejecute el siguiente comando:

    Sintaxis:

    ./install gbq

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Data Movement. Una vez hecho esto, ejecute nuevamente el comando install gbq.

    De lo contrario, se mostrará el EULA del driver.

  5. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  6. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA de nuevo.

  7. Se instalará el driver.

  8. Espere a que termine la instalación (indicado mediante la palabra "Completado") y luego inicie el servicio de Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

Ejecute el comando de actualización si desea desinstalar versiones anteriores del driver antes de instalar el driver provisto.

Para descargar y actualizar el driver:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  3. En la máquina de la puerta de enlace de Data Movement, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  4. Ejecute el siguiente comando:

    Sintaxis:

    ./update gbq

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Data Movement. Una vez hecho esto, ejecute nuevamente el comando update gbq.

    De lo contrario, se mostrará el EULA del driver.

  5. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  6. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA desde el principio.
  7. El driver anterior se desinstalará y se instalará el nuevo driver.

  8. Espere a que termine la instalación (indicado mediante la palabra "Completado") y luego inicie el servicio de Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

Ejecute el comando de desinstalación si desea desinstalar el driver.

Para desinstalar el driver:

  1. Detenga todas las tareas configuradas para utilizar este conector.

  2. En la máquina de la pasarela de Data Movement, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  3. Ejecute el siguiente comando:

    Sintaxis:

    ./uninstall gbq

    Se desinstalará el driver.

Instalar el controlador manualmente

Solo debe intentar instalar el driver manualmente si la instalación automática del driver no se realizó correctamente.

Debe instalar tanto un controlador ODBC como un controlador JDBC.

Una vez instalada Pasarela Data Movement, descargue los archivos SimbaODBCDriverforGoogleBigQuery_<versión>-Linux.tar.gz y google-cloud-sdk-<versión>-linux-x86_64.tar.gz. Encontrará enlaces de descarga directa a estos archivos en binary-artifacts, en /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml. Una vez completada la descarga, copie los archivos a la máquina de Pasarela Data Movement.

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

  3. El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  4. Extraiga:

    SimbaODBCDriverforGoogleBigQuery_<versión>.tar.gz

    a:

    /opt/SimbaODBCDriverforGoogleBigQuery_<versión>-Linux

  5. Mueva los archivos GoogleBigQueryODBC.did y simba.googlebigqueryodbc.ini al directorio lib en el directorio del driver Simba ODBC.

    Ejemplo:

    Mueva los archivos desde:

    /opt/SimbaODBCDriverforGoogleBigQuery_<versión>-Linux/setup

    a:

    /opt/SimbaODBCDriverforGoogleBigQuery_<versión>-Linux/SimbaODBCDriverforGoogleBigQuery64_<versión>/lib

  6. Edite el archivo simba.googlebigqueryodbc.ini de la siguiente manera:

    1. Cambie la ruta ErrorMessagesPath a la ruta del archivo XML que contiene los mensajes ODBC. La ubicación predeterminada es:

      ErrorMessagesPath=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/ErrorMessages

    2. Cambie DriverManagerEncoding a UTF-16.
  7. Agregue la siguiente ruta al archivo site_arep_login.sh ubicado en el directorio bin de Data Movement gateway:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/SimbaODBCDriverforGoogleBigQuery_<versión>-Linux/SimbaODBCDriverforGoogleBigQuery64_<versión>/lib

  8. Edite el archivo /etc/odbcinst.ini y agregue la ruta donde está instalado el driver:

    [ODBC Drivers]

    Simba= Installed

    Simba ODBC Driver for Google BigQuery = Installed

    [Simba ODBC Driver for Google BigQuery]

    Description=Simba ODBC Driver for Google BigQuery(64-bit)

    Driver=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib/libgooglebigqueryodbc_sb64.so

  9. Instale google-cloud-sdk-<versión>-linux-x86_64.tar.gz.

  10. Inicie el servicio Data Movement gateway:

    sudo systemctl start repagent

  11. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

  1. Descargue los siguientes archivos ZIP y JAR disponibles en binary-artifacts, en /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml:

    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-bigquery/<versión>/google-cloud-bigquery-<versión>.jar
    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-storage/<versión>/google-cloud-storage-<versión>.jar
    • https://storage.googleapis.com/simba-bq-release/jdbc/SimbaJDBCDriverforGoogleBigQuery<versión>.zip

    Copie los archivos JAR en esta carpeta de la máquina de Pasarela Data Movement y extraiga los archivos JAR en SimbaJDBCDriverforGoogleBigQuery<versión>.zip a la misma carpeta:

    /opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib

  2. Reinicie el servicio de Pasarela Data Movement ejecutando el comando descrito en Reiniciar el servicio

Puerto

El puerto de firewall 443 debe abrirse para la comunicación saliente.

Tipos de datos

La longitud de los tipos de datos parametrizados se establecerá con valores predeterminados:

  • STRING: 8192 (longitud)

  • BYTES: 8192 (longitud)

  • NUMERIC: precisión: 38, escala: 9

  • BIGDECIMAL: precisión: 76, escala: 38

La tabla siguiente muestra los tipos de datos Google BigQuery de bases de datos admitidos al utilizar Qlik Cloud y la asignación predeterminada de tipos de datos de Qlik Cloud.

La información del tipo de datos nativo se conserva y se muestra en la columna Tipo de datos nativo en las vistas de conjuntos de datos. Si la columna no está visible, debe abrir el selector de columnas de la vista del conjunto de datos y seleccionar la columna Tipo de datos nativo.

Tipos de datos que admite
Tipos de datos de Qlik Cloud Tipos de datos de Google BigQuery

BOOLEAN

BOOL

BYTES

BYTES (longitud en Bytes)

DATE

DATE

TIME

TIME

DATETIME

TIMESTAMP

INT1

TINYINT

INT2 SMALLINT

INT4

INTEGER

INT8 BIGINT

NUMERIC

NUMERIC (precisión, escala)

REAL4

FLOAT64

REAL8

FLOAT64

UINT1

TINYINT

UINT2

SMALLINT

UINT4

INTEGER

UINT8

BIGINT

STRING

STRING (longitud en Bytes)

WSTRING

STRING (longitud en Bytes)

BLOB

BYTES

NCLOB

STRING

CLOB

STRING

Los siguientes tipos de datos se convierten a STRING:

  • ARRAY

  • STRUCT

  • JSON

  • GEOGRAPHY

Solo debe intentar instalar el driver manualmente si la instalación automática del driver no se realizó correctamente.

Limitaciones y consideraciones

Se aplican las siguientes limitaciones y consideraciones al mover datos a un destino de Google BigQuery.

Limitaciones y consideraciones para todas las tareas de datos

  • No se admiten los siguientes DDL:
    • Descartar columna
    • Renombrar columna
    • Cambiar tipo de datos de columnas
    • Renombrar tabla
  • No se admite la captura de cambios de tablas de origen sin clave primaria o índice único. Si necesita capturar cambios de dichas tablas, puede añadir una clave primaria utilizando una transformación. Adicionalmente, las columnas Clave primaria o Índice único no pueden contener valores nulos. Si sabe que dichas columnas se rellenarán con valores nulos, defina una transformación para cambiar los valores nulos por valores no nulos.

Limitaciones y consideraciones únicamente para tareas de replicación

  • El modo de aplicar cambios Por transacción no se admite.
  • No se admite la opción de gestión de errores Registrar mediante archivos de registro en la tabla de excepciones para conflictos de aplicación de cambios y errores de datos.

  • Con la siguiente configuración de ajustes de tarea, la tarea de replicación realizará una operación de eliminado DELETE seguida de un INSERT en lugar de un UPDATE:

    • El modo de aplicación de los cambios está en Lote optimizado.

    • No se ha seleccionado la opción Aplicar los cambios utilizando SQL MERGE.

    • El manejo de errores UPDATE en Conflictos de aplicación de cambios está configurado en: No se encontró ningún registro para aplicar una ACTUALIZACIÓN: INSERTAR el registro de destino que falta.

    Dado que Google Cloud BigQuery no admite la reversión, en caso de que la tarea de replicación no pueda insertar la fila actualizada, los datos se eliminarán del destino.

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.