Implementa Datastream y Dataflow para estadísticas

Datastream

Datastream admite la transmisión de datos desde bases de datos de Oracle, MySQL y PostgreSQL directamente a conjuntos de datos de BigQuery. Sin embargo, si necesitas más control sobre la lógica de procesamiento de transmisión, como la transformación de datos o la configuración manual de claves primarias lógicas, puedes integrar Datastream con plantillas de trabajo de Dataflow.

En este instructivo, se muestra cómo se integra Datastream en Dataflow mediante el uso de plantillas de trabajo de Dataflow para transmitir vistas materializadas actualizadas en BigQuery para estadísticas.

Para las organizaciones con muchas fuentes de datos aisladas, el acceso a los datos empresariales en toda la organización, especialmente en tiempo real, puede ser limitado y lento. Esto restringe la capacidad de la organización de introspección.

Datastream proporciona acceso casi en tiempo real para modificar datos de varias fuentes de datos locales y basadas en la nube. Datastream ofrece una experiencia de configuración en la que no necesitas configurar muchos datos para la transmisión, ya que Datastream lo hace por ti. Datastream también tiene una API de consumo unificado que democratiza el acceso de tu organización a los datos empresariales más recientes disponibles para crear escenarios integrados.

Una de esas situaciones es la transferencia de datos de una base de datos de origen a una cola de mensajería o un servicio de almacenamiento basado en la nube. Después de que Datastream transmite los datos, estos se transforman en un formato que otras aplicaciones y servicios pueden leer. En este instructivo, Dataflow es el servicio web que se comunica con el servicio de almacenamiento o la cola de mensajería para capturar y procesar datos en Google Cloud.

Aprenderás a usar Datastream para transmitir cambios (datos que se insertan, actualizan o borran) desde una base de datos MySQL de origen a una carpeta en un bucket de Cloud Storage. Luego, configurarás el bucket de Cloud Storage para que envíe notificaciones que Dataflow usa para aprender sobre cualquier archivo nuevo que contenga los cambios en los datos que Datastream transmite desde la base de datos de origen. Luego, un trabajo de Dataflow procesa los archivos y transfiere los cambios a BigQuery.

diagrama de flujo de usuarios de integración

Objetivos

En este instructivo, harás lo siguiente:

  • Crea un bucket en Cloud Storage. Este es el bucket de destino al que Datastream transmite esquemas, tablas y datos desde una base de datos de MySQL de origen.
  • Habilitar las notificaciones de Pub/Sub para el bucket de Cloud Storage De esta manera, configurarás el bucket para que envíe notificaciones que Dataflow usa a fin de aprender sobre cualquier archivo nuevo que esté listo para procesarse. Estos archivos contienen cambios en los datos que Datastream transmite de la base de datos de origen al bucket.
  • Crear conjuntos de datos en BigQuery BigQuery usa conjuntos de datos para contener los datos que recibe de Dataflow. Estos datos representan los cambios en la base de datos de origen que Datastream transmite al bucket de Cloud Storage.
  • Crea y administra perfiles de conexión para una base de datos de origen y un bucket de destino en Cloud Storage. Una transmisión en Datastream usa la información de los perfiles de conexión para transferir datos de la base de datos de origen al bucket.
  • Crea y, luego, inicia una transmisión. Esta transmisión transfiere datos, esquemas y tablas de la base de datos de origen al bucket.
  • Verifica que Datastream transfiera al bucket los datos y las tablas asociados con un esquema de la base de datos de origen.
  • Crear un trabajo en Dataflow Después de que Datastream transmite cambios de datos de la base de datos de origen al bucket de Cloud Storage, se envían notificaciones a Dataflow sobre los nuevos archivos que contienen los cambios. El trabajo de Dataflow procesa los archivos y transfiere los cambios a BigQuery.
  • Verifica que Dataflow procese los archivos que contienen cambios asociados con estos datos y que los transfiera a BigQuery. Como resultado, obtienes una integración de extremo a extremo entre Datastream y BigQuery.
  • Limpia los recursos que creaste en Datastream, Cloud Storage, Pub/Sub, Dataflow y BigQuery para que no consuman la cuota y no se te facture por ellos en el futuro.

Costos

En este documento, usarás los siguientes componentes facturables de Google Cloud:

  • DataStream
  • Cloud Storage
  • Pub/Sub
  • Dataflow
  • BigQuery

Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios. Es posible que los usuarios nuevos de Google Cloud califiquen para obtener una prueba gratuita.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  5. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  6. Habilita la API de Datastream.

    Habilitación de la API

  7. Asegúrate de tener el rol de administrador de Datastream otorgado a tu cuenta de usuario.

    Ir a la página IAM

  8. Asegúrate de tener una base de datos de MySQL de origen a la que Datastream pueda acceder. Además, verifica que tengas datos, tablas y esquemas en la base de datos.
  9. Configura tu base de datos de MySQL para permitir las conexiones entrantes desde direcciones IP públicas de Datastream. Para obtener una lista de todas las regiones de Datastream y sus direcciones IP públicas asociadas, consulta Listas de IP permitidas y regiones de IP.
  10. Configura la captura de datos modificados (CDC) para la base de datos de origen. Para obtener más información, consulta Configura una base de datos de MySQL de origen.
  11. Asegúrate de cumplir con todos los requisitos previos para habilitar las notificaciones de Pub/Sub para Cloud Storage.

    En este instructivo, crearás un bucket de destino en Cloud Storage y habilitarás las notificaciones de Pub/Sub para el bucket. De esta manera, Dataflow puede recibir notificaciones sobre archivos nuevos que Datastream escribe en el bucket. Estos archivos contienen cambios en los datos que Datastream transmite de la base de datos de origen al bucket.

Requisitos

Datastream ofrece una variedad de opciones de fuente, opciones de destino y métodos de conectividad de red.

Para este instructivo, suponemos que usas una base de datos MySQL independiente y un servicio de destino de Cloud Storage. En el caso de la base de datos de origen, deberías poder configurar tu red para agregar una regla de firewall entrante. La base de datos de origen puede ser local o estar en un proveedor de servicios en la nube. Para el destino de Cloud Storage, no se requiere una configuración de conectividad.

Debido a que no podemos conocer los detalles de tu entorno, no podemos proporcionar pasos detallados en lo que respecta a la configuración de tu red.

En este instructivo, deberás seleccionar Lista de IP permitidas como el método de conectividad de red. El uso de listas de IP permitidas es una función de seguridad que se usa a menudo para controlar y limitar el acceso a los datos en tu base de datos de origen a usuarios de confianza. Puedes usar las listas de IP permitidas para crear listas de direcciones IP o rangos de IP de confianza desde los que tus usuarios y otros servicios de Google Cloud, como Datastream, pueden acceder a estos datos. Para usar listas de IP permitidas, debes abrir la base de datos o firewall de origen para las conexiones entrantes desde Datastream.

Crea un bucket en Cloud Storage

Crear un bucket de destino en Cloud Storage en el que Datastream transmita esquemas, tablas y datos de una base de datos de MySQL de origen

  1. En la consola de Google Cloud, ve a la página Navegador de Cloud Storage.

    Ir a la página del Navegador

  2. Haz clic en Crear bucket. Aparecerá la página Crear un bucket.

  3. En el campo de texto de la región Asigna un nombre a tu bucket, ingresa my-integration-bucket y, luego, haz clic en Continuar.

  4. Acepta la configuración predeterminada para cada región restante de la página. Al final de cada región, haz clic en Continuar.

  5. Haz clic en Crear.

Habilita las notificaciones de Pub/Sub para el bucket de Cloud Storage

En esta sección, habilitarás las notificaciones de Pub/Sub para el bucket de Cloud Storage que creaste. De esta manera, configurarás el bucket para notificar a Dataflow sobre cualquier archivo nuevo que Datastream escriba en el bucket. Estos archivos contienen cambios en los datos que Datastream transmite desde una base de datos MySQL de origen al bucket.

  1. Accede al bucket de Cloud Storage que creaste. Aparecerá la página Detalles del bucket.

  2. Haz clic en Activar Cloud Shell.

  3. En el mensaje, ingresa el siguiente comando:

    gsutil notification create -t my_integration_notifs -f json -p integration/tutorial/ gs://my-integration-bucket

  4. Opcional: Si aparece la ventana Autoriza Cloud Shell, haz clic en Autorizar.

  5. Verifica que ves las siguientes líneas de código:

    Created Cloud Pub/Sub topic projects/project-name/topics/my_integration_notifs
    Created notification config projects/_/buckets/my-integration-bucket/notificationConfigs/1
    
  6. En la consola de Google Cloud, ve a la página Temas de Pub/Sub.

    Ir a la página Temas

  7. Haz clic en el tema my_integration_notifs que creaste.

  8. En la página my_integration_notifs, desplázate hasta la parte inferior de la página. Verifica que esté activa la pestaña Suscripciones y que aparezca el mensaje No hay suscripciones para mostrar.

  9. Haz clic en Crear suscripción.

  10. En el menú que aparece, selecciona Crear suscripción.

  11. En la página Agregar suscripción al tema, haz lo siguiente:

    1. En el campo ID de la suscripción, ingresa my_integration_notifs_sub.
    2. Establece el valor de Acknowledgement deadline en 120 segundos. Esto permite que Dataflow tenga tiempo suficiente para confirmar los archivos que procesó y ayuda a mejorar el rendimiento general del trabajo de Dataflow. Para obtener más información sobre las propiedades de suscripción de Pub/Sub, consulta Propiedades de suscripción.
    3. Deja el resto de los valores predeterminados en la página.
    4. Haz clic en Crear.

Más adelante en este instructivo, crearás un trabajo de Dataflow. Como parte de la creación de este trabajo, debes asignar a Dataflow como suscriptor de la suscripción my_integration_notifs_sub. De esta manera, Dataflow puede recibir notificaciones sobre archivos nuevos que Datastream escribe en Cloud Storage, procesar los archivos y transferir los cambios en los datos a BigQuery.

Crear conjuntos de datos en BigQuery

En esta sección, crearás conjuntos de datos en BigQuery. BigQuery usa conjuntos de datos para contener los datos que recibe de Dataflow. Estos datos representan los cambios en la base de datos de MySQL de origen que Datastream transmite a tu bucket de Cloud Storage.

  1. Ve a la página Espacio de trabajo de SQL de BigQuery en la consola de Google Cloud.

    Ir a la página del espacio de trabajo de SQL

  2. En el panel Explorador, junto al nombre de tu proyecto de Google Cloud, haz clic en Ver acciones.

  3. En el menú que aparece, selecciona Crear conjunto de datos.

  4. En la ventana Crear conjunto de datos, realiza lo siguiente:

    1. En el campo ID del conjunto de datos, ingresa un ID para el conjunto de datos. Para este instructivo, ingresa My_integration_dataset_log en el campo.
    2. Deja el resto de los valores predeterminados en la ventana.
    3. Haz clic en Crear conjunto de datos.
  5. En el panel Explorador, junto al nombre de tu proyecto de Google Cloud, haz clic en Expandir nodo y, luego, verifica que ves el conjunto de datos que creaste.

  6. Usa los pasos en este procedimiento para crear un segundo conjunto de datos: My_integration_dataset_final.

  7. Junto a cada conjunto de datos, expande Expandir nodo.

  8. Verifica que todos los conjuntos de datos estén vacíos.

Después de que Datastream transmite los cambios de datos de la base de datos de origen a tu bucket de Cloud Storage, un trabajo de Dataflow procesa los archivos que contienen los cambios y los transfiere a los conjuntos de datos de BigQuery.

Crea perfiles de conexión en Datastream

En esta sección, crearás perfiles de conexión en Datastream para una base de datos de origen y un destino. Como parte de la creación de perfiles de conexión, selecciona MySQL como el tipo de perfil para tu perfil de conexión de origen y Cloud Storage como el tipo de perfil para tu perfil de conexión de destino.

Datastream usa la información definida en los perfiles de conexión para conectarse al origen y al destino, de modo que pueda transmitir datos de la base de datos de origen al bucket de destino en Cloud Storage.

Crea un perfil de conexión de origen para tu base de datos de MySQL

  1. En la consola de Google Cloud, ve a la página Perfiles de conexión de Datastream.

    Ir a la página Perfiles de conexión

  2. Haga clic en Crear perfil.

  3. Si quieres crear un perfil de conexión fuente para tu base de datos MySQL, en la página Crear un perfil de conexión, haz clic en el tipo de perfil MySQL.

  4. En la sección Definir configuración de conexión de la página Crear perfil de MySQL, proporciona la siguiente información:

    • En el campo Nombre del perfil de conexión, ingresa My Source Connection Profile.
    • Conserva el ID de perfil de conexión generado automáticamente.
    • Selecciona la Región en la que deseas almacenar el perfil de conexión.

    • Ingresa los Detalles de la conexión:

      • En el campo Nombre de host o IP, ingresa un nombre de host o una dirección IP pública que Datastream pueda usar para conectarse a la base de datos de origen. Proporcionarás una dirección IP pública porque usas la lista de IP permitidas como el método de conectividad de red para este instructivo.
      • En el campo Puerto, ingresa el número de puerto reservado para la base de datos de origen. Para una base de datos MySQL, el puerto predeterminado suele ser 3306.
      • Ingresa un nombre de usuario y una contraseña para autenticarte en tu base de datos de origen.
  5. En la sección Definir configuración de conexión, haz clic en Continuar. La sección Protege la conexión al origen de la página Crear perfil de MySQL está activa.

  6. En el menú Tipo de encriptación, selecciona Ninguna. Para obtener más información sobre este menú, consulta Crea un perfil de conexión para la base de datos MySQL.

  7. En la sección Proteger la conexión a la fuente, haz clic en Continuar. La sección Definir método de conectividad de la página Crear perfil de MySQL está activa.

  8. En el menú desplegable Método de conectividad, elige el método de red que deseas usar para establecer la conectividad entre Datastream y la base de datos de origen. En este instructivo, selecciona Lista de IP permitidas como el método de conectividad.

  9. Configura la base de datos de origen para permitir las conexiones entrantes desde las direcciones IP públicas de Datastream que aparecen.

  10. En la sección Define el método de conectividad, haz clic en Continuar. La sección Probar perfil de conexión de la página Crear perfil de MySQL está activa.

  11. Haz clic en Ejecutar prueba para verificar que la base de datos de origen y Datastream puedan comunicarse entre sí.

  12. Verifica que veas el estado Test passed.

  13. Haz clic en Crear.

Crea un perfil de conexión de destino para Cloud Storage

  1. En la consola de Google Cloud, ve a la página Perfiles de conexión de Datastream.

    Ir a la página Perfiles de conexión

  2. Haga clic en Crear perfil.

  3. Si quieres crear un perfil de conexión de destino para Cloud Storage, en la página Crear un perfil de conexión, haz clic en el tipo de perfil de Cloud Storage.

  4. En la página Crear perfil de Cloud Storage, proporciona la siguiente información:

    • En el campo Nombre del perfil de conexión, ingresa My Destination Connection Profile.
    • Conserva el ID de perfil de conexión generado automáticamente.
    • Selecciona la Región en la que deseas almacenar el perfil de conexión.
    • En el panel Detalles de la conexión, haz clic en Explorar para seleccionar el bucket my- integration-bucket que creaste antes en este instructivo. Este es el bucket al que Datastream transfiere datos desde la base de datos de origen. Después de elegir, haz clic en Seleccionar.

      El bucket aparecerá en el campo Nombre del bucket del panel Detalles de la conexión.

    • En el campo Prefijo de ruta del perfil de conexión, proporciona un prefijo para la ruta de acceso que deseas agregar al nombre del bucket cuando Datastream transmite datos al destino. Asegúrate de que Datastream escriba datos en una ruta de acceso dentro del bucket, no en la carpeta raíz del bucket. Para este instructivo, usa la ruta de acceso que definiste cuando configuraste la notificación de Pub/Sub. Ingresa /integration/tutorial en el campo.

  5. Haz clic en Crear.

Después de crear un perfil de conexión de origen para tu base de datos MySQL y un perfil de conexión de destino para Cloud Storage, puedes usarlos para crear una transmisión.

Crea una transmisión en Datastream

En esta sección, crearás una transmisión. Esta transmisión usa la información de los perfiles de conexión para transferir datos de una base de datos MySQL de origen a un bucket de destino en Cloud Storage.

Define la configuración de la transmisión

  1. En la consola de Google Cloud, ve a la página Flujos de Datastream.

    Ir a la página Novedades

  2. Haz clic en Crear flujo.

  3. Proporciona la siguiente información en el panel Definir detalles del flujo de la página Crear flujo:

    • En el campo Nombre del flujo, ingresa My Stream.
    • Conserva el ID de flujo generado automáticamente.
    • En el menú Región, selecciona la región en la que creaste los perfiles de conexión de origen y destino.
    • En el menú Tipo de fuente, selecciona el tipo de perfil MySQL.
    • En el menú Tipo de destino, selecciona el tipo de perfil de Cloud Storage.
  4. Revisa los requisitos previos que se generan automáticamente a fin de reflejar cómo tu entorno debe estar preparado para una transmisión. Estos requisitos previos pueden incluir la configuración de la base de datos de origen y la conexión de Datastream al bucket de destino en Cloud Storage.

  5. Haz clic en Continuar. Aparecerá el panel Define MySQL connection profile de la página Crear flujo.

Especifica la información sobre el perfil de conexión de origen

En esta sección, seleccionarás el perfil de conexión que creaste para la base de datos de origen (el perfil de conexión de origen). Para este instructivo, se trata de My Source Connection Profile.

  1. En el menú Perfil de conexión de origen, selecciona tu perfil de conexión de origen para la base de datos de MySQL.

  2. Haz clic en Ejecutar prueba para verificar que la base de datos de origen y Datastream puedan comunicarse entre sí.

    Si la prueba falla, aparecerá el problema asociado con el perfil de conexión. Consulta la página Diagnostica problemas y consulta los pasos para solucionarlos. Realiza los cambios necesarios para corregir el problema y, luego, vuelve a probar.

  3. Haz clic en Continuar. Aparecerá el panel Configurar origen de transmisión de la página Crear transmisión.

Configura la información sobre la base de datos de origen de la transmisión

En esta sección, configurarás la información sobre la base de datos de origen para la transmisión. Para ello, especificarás las tablas y los esquemas de la base de datos de origen con los que Datastream realiza las siguientes acciones:

  • Puede transferir al destino.
  • No puede transferir al destino.

También determinas si Datastream reabastece los datos históricos y transmite cambios en curso al destino o solo transmite cambios a los datos.

  1. Usa el menú Objetos que se incluyen para especificar las tablas y esquemas en tu base de datos de origen que Datastream puede transferir a una carpeta en el bucket de destino en Cloud Storage. El menú solo se carga si la base de datos tiene hasta 5,000 objetos.

    En este instructivo, quieres que Datastream transfiera todas las tablas y los esquemas. Por lo tanto, selecciona Todas las tablas de todos los esquemas en el menú.

  2. Verifica que el panel Seleccionar objetos que deseas excluir esté configurado como Ninguno. No quieres restringir que Datastream transfiera tablas y esquemas de la base de datos de origen a Cloud Storage.

  3. Verifica que el panel Elegir modo de reabastecimiento para datos históricos esté configurado como Automático. Datastream transmite todos los datos existentes, además de los cambios, desde la fuente al destino.

  4. Haz clic en Continuar. Aparecerá el panel Definir perfil de conexión de Cloud Storage de la página Crear transmisión.

Selecciona un perfil de conexión de destino

En esta sección, seleccionarás el perfil de conexión que creaste para Cloud Storage (el perfil de conexión de destino). Para este instructivo, es My Destination Connection Profile.

  1. En el menú Perfil de conexión de destino, selecciona tu perfil de conexión de destino para Cloud Storage.

  2. Haz clic en Continuar. Aparecerá el panel Configurar el destino del flujo de la página Crear flujo.

Configura la información sobre el destino de la transmisión

En esta sección, configurarás la información sobre el bucket de destino para la transmisión. Esta información incluye:

  • El formato de salida de los archivos escritos en Cloud Storage.
  • Es la carpeta del bucket de destino al que Datastream transfiere esquemas, tablas y datos de la base de datos de origen.
  1. En el campo Formato de salida, selecciona el formato de los archivos escritos en Cloud Storage. Datastream admite dos formatos de salida: Avro y JSON. Para este instructivo, Avro es el formato de archivo.

  2. Haz clic en Continuar. Aparecerá el panel Revisar detalles y crear del flujo de la página Crear flujo.

Crea la transmisión

  1. Verifica los detalles de la transmisión, así como los perfiles de conexión de origen y destino que la transmisión usa para transferir datos de una base de datos MySQL de origen a un bucket de destino en Cloud Storage.

  2. Para validar la transmisión, haz clic en Ejecutar validación. Mediante la validación de una transmisión, Datastream verifica que la fuente esté configurada correctamente, valida que la transmisión pueda conectarse tanto al origen como al destino, y verifica la configuración de extremo a extremo de la transmisión.

  3. Una vez que se aprueben todas las verificaciones de validación, haz clic en Crear.

  4. En el diálogo ¿Crear transmisión?, haz clic en Crear.

Inicia la transmisión

En este instructivo, crearás y, luego, iniciarás una transmisión por separado en caso de que el proceso de creación de transmisión genere una carga mayor en tu base de datos de origen. Para posponer esa carga, debes crear la transmisión sin iniciarla y, luego, iniciarla cuando tu base de datos pueda manejar la carga.

Cuando se inicia la transmisión, Datastream puede transferir datos, esquemas y tablas de la base de datos de origen al destino.

  1. En la consola de Google Cloud, ve a la página Flujos de Datastream.

    Ir a la página Novedades

  2. Selecciona la casilla de verificación junto a la transmisión que quieres iniciar. En este instructivo, corresponde a My Stream.

  3. Haz clic en Iniciar.

  4. En el cuadro de diálogo, haz clic en Iniciar. El estado de la transmisión cambia de Not started a Starting a Running.

Después de iniciar una transmisión, puedes verificar que Datastream haya transferido datos de la base de datos de origen al destino.

Verifica la transmisión

En esta sección, confirmas que Datastream transfiera los datos de todas las tablas de una base de datos MySQL de origen a la carpeta /integration/tutorial de tu bucket de destino de Cloud Storage. En este instructivo, el nombre de tu bucket es my- integration-bucket.

  1. En la consola de Google Cloud, ve a la página Flujos de Datastream.

    Ir a la página Novedades

  2. Haz clic en la transmisión que creaste. En este instructivo, corresponde a My Stream.

  3. En la página Detalles del flujo, haz clic en el vínculo my- integration-bucket/integration/tutorial. Este vínculo aparece después del campo Ruta de escritura de destino. La página Detalles del bucket de Cloud Storage se abrirá en una pestaña nueva.

  4. Verifica que veas carpetas que representan tablas de la base de datos de origen.

  5. Haz clic en una de las carpetas de la tabla y, luego, en cada subcarpeta hasta que veas los datos asociados a la tabla.

Crea un trabajo de Dataflow

En esta sección, crearás un trabajo en Dataflow. Después de que Datastream transmite cambios de datos de una base de datos MySQL de origen al bucket de Cloud Storage, Pub/Sub envía notificaciones a Dataflow sobre los archivos nuevos que contienen los cambios. El trabajo de Dataflow procesa los archivos y transfiere los cambios a BigQuery.

  1. En la consola de Google Cloud, ve a la página Trabajos de Dataflow.

    Ir a la página Trabajos

  2. Haz clic en Crear trabajo a partir de una plantilla.

  3. En el campo Nombre del trabajo de la página Crear un trabajo a partir de una plantilla, ingresa un nombre para el trabajo de Dataflow que vas a crear. Para este instructivo, ingresa my-dataflow-integration-job en el campo.

  4. En el menú Extremo regional, selecciona la región en la que deseas almacenar el trabajo. Esta es la misma región que seleccionaste para el perfil de conexión de origen, el perfil de conexión de destino y la transmisión que creaste.

  5. En el menú Plantilla de Dataflow, selecciona la plantilla que usas para crear el trabajo. Para este instructivo, selecciona Datastream to BigQuery.

    Después de realizar esta selección, aparecerán campos adicionales relacionados con esta plantilla.

  6. En el campo Ubicación del archivo para el resultado del archivo de Datastream en Cloud Storage, ingresa la ruta de acceso que contiene el nombre de tu bucket de Cloud Storage. Para este instructivo, ingresa gs://my-integration-bucket.

  7. En el campo La suscripción a Pub/Sub se usa en una política de notificaciones de Cloud Storage, ingresa la ruta de acceso que contiene el nombre de tu suscripción a Pub/Sub. Para este instructivo, ingresa projects/project-name/subscriptions/my_integration_notifs_sub.

  8. En el campo Formato de archivo de salida de Datastream (avro/json)., ingresa avro porque, para este instructivo, Avro es el formato de los archivo que Datastream escribe en Cloud Storage.

  9. En el campo Nombre o plantilla para que el conjunto de datos contenga tablas de etapa de pruebas, ingresa My_integration_dataset_log porque Dataflow usa este conjunto de datos para almacenar en etapa intermedia los cambios en los datos que recibe de Datastream.

  10. En el campo Plantilla para que el conjunto de datos contenga tablas de réplica., ingresa My_integration_dataset_final porque este es el conjunto de datos en el que se combinan los cambios que se almacenan en etapa intermedia en el conjunto de datos My_integration_dataset_log para crear una réplica uno a uno de las tablas de la base de datos de origen.

  11. En el campo Directorio de la cola de mensajes no entregados, ingresa la ruta de acceso que contiene el nombre de tu bucket de Cloud Storage y una carpeta para una cola de mensajes no entregados. Asegúrate de no usar una ruta de acceso en la carpeta raíz y de que sea diferente de aquella en la que Datastream escribe datos. Cualquier cambio de datos que Dataflow no pueda transferir a BigQuery se almacenará en la cola. Puedes corregir el contenido de la cola para que Dataflow pueda volver a procesarlo.

    En este instructivo, ingresa gs://my-integration-bucket/dlq en el campo Directorio de cola de mensajes no entregados. (donde dlq es la carpeta de la cola de mensajes no entregados).

  12. Haz clic en Ejecutar trabajo.

Verifica la integración

En la sección Verifica la transmisión de este instructivo, confirmaste que Datastream transfirió los datos de todas las tablas de una base de datos MySQL de origen a la carpeta /Integrate/tutorial de tu bucket de destino de Cloud Storage.

En esta sección, verificarás que Dataflow procese los archivos que contienen cambios asociados con estos datos y los transfiere a BigQuery. Como resultado, obtienes una integración de extremo a extremo entre Datastream y BigQuery.

  1. En la consola de Google Cloud, ve a la página Espacio de trabajo de SQL para BigQuery.

    Ir a la página del espacio de trabajo de SQL

  2. En el panel Explorador, expande el nodo junto al nombre de tu proyecto de Google Cloud.

  3. Expande los nodos que se encuentran junto a los conjuntos de datos My_integration_dataset_log y My_integration_dataset_log.

  4. Verifica que cada conjunto de datos contenga datos. Esto confirma que Dataflow procesó los archivos que contienen cambios asociados con los datos que Datastream transmitió a Cloud Storage y transfirió estos cambios a BigQuery.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, usa la consola de Google Cloud para hacer lo siguiente:

  • Borra tu proyecto, la transmisión de Datastream y los perfiles de conexión de Datastream.
  • Detén el trabajo de Dataflow.
  • Borrar los conjuntos de datos de BigQuery, el tema y la suscripción de Pub/Sub y el bucket de Cloud Storage

Si limpias los recursos que creaste en Datastream, Dataflow, BigQuery, Pub/Sub y Cloud Storage, evitarás que los recursos consuman la cuota y no se te cobrará por ellos en el futuro.

Borra tu proyecto

La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para este instructivo.

  1. En la consola de Google Cloud, ve a la página Administrar recursos.

    Ir a la página Administración de recursos

  2. En la lista de proyectos, elige el proyecto que deseas borrar y haz clic en Borrar.

  3. Para borrar el proyecto, en el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar.

Borra la transmisión

  1. En la consola de Google Cloud, ve a la página Flujos de Datastream.

    Ir a la página Novedades

  2. Haz clic en las novedades que deseas borrar. En este instructivo, corresponde a My Stream.

  3. Haz clic en Detener.

  4. En el cuadro de diálogo, haz clic en Detener.

  5. En el panel Estado de la transmisión de la página Detalles del flujo, verifica que el estado de la transmisión sea Paused.

  6. Haz clic en Borrar.

  7. En el cuadro de diálogo, en el campo de texto, ingresa Delete y, luego, haz clic en Borrar.

Borra los perfiles de conexión

  1. En la consola de Google Cloud, ve a la página Perfiles de conexión de Datastream.

    Ir a la página Perfiles de conexión

  2. Selecciona la casilla de verificación para cada perfil de conexión que desees borrar: My Source Connection Profile y My Destination Connection Profile.

  3. Haz clic en Borrar.

  4. En el cuadro de diálogo, haz clic en Borrar.

Detenga el trabajo de Dataflow

  1. En la consola de Google Cloud, ve a la página Trabajos de Dataflow.

    Ir a la página Trabajos

  2. Haz clic en el trabajo que deseas detener. Para este instructivo, es my-dataflow-integration-job.

  3. Haz clic en Detener.

  4. En el diálogo Detener trabajo, selecciona la opción Desviar y, luego, haz clic en Detener trabajo.

Borra los conjuntos de datos de BigQuery

  1. En la consola de Google Cloud, ve a la página Espacio de trabajo de SQL para BigQuery.

    Ir a la página del espacio de trabajo de SQL

  2. En el panel Explorador, expande el nodo junto al nombre de tu proyecto de Google Cloud.

  3. Haz clic en el botón Ver acciones a la derecha de uno de los conjuntos de datos que creaste en Crear conjuntos de datos en BigQuery. Este botón parece una elipsis vertical.

    Para este instructivo, haz clic en el botón Ver acciones a la derecha de My_ integration_dataset_log.

  4. Selecciona Borrar en el menú desplegable que aparece.

  5. En el diálogo ¿Borrar conjunto de datos?, ingresa delete en el campo de texto y, luego, haz clic en Borrar.

  6. Repite los pasos de este procedimiento para borrar el segundo conjunto de datos que creaste: My_integration_dataset_final.

Borra la suscripción y el tema de Pub/Sub

  1. En la consola de Google Cloud, ve a la página Suscripciones de Pub/Sub.

    Ir a la página Suscripciones

  2. Haz clic en la casilla de verificación junto a la suscripción que quieres borrar. Para este instructivo, haz clic en la casilla de verificación junto a la suscripción my_integration_notifs_sub.

  3. Haz clic en Borrar.

  4. En el diálogo Borrar suscripción, haz clic en Borrar.

  5. En la consola de Google Cloud, ve a la página Temas de Pub/Sub.

    Ir a la página Temas

  6. Haz clic en la casilla de verificación junto al tema my_integration_notifs.

  7. Haz clic en Borrar.

  8. En el diálogo Borrar tema, ingresa delete en el campo de texto y, luego, haz clic en Borrar.

Borra el bucket de Cloud Storage

  1. En la consola de Google Cloud, ve a la página Navegador de Cloud Storage.

    Ir a la página del Navegador

  2. Selecciona la casilla de verificación junto a tu bucket. En este instructivo, es my- integration-bucket.

  3. Haz clic en Borrar.

  4. En el diálogo, ingresa Delete en el campo de texto y, luego, haz clic en Borrar.

¿Qué sigue?