Replica datos en BigQuery con Datastream casi en tiempo real

Aprende a replicar datos de una base de datos de origen a conjuntos de datos de BigQuery mediante Datastream.


Para seguir la guía paso a paso sobre esta tarea de forma directa en la consola de Google Cloud, haz clic en Guiarme:

Guiarme


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 Datastream API.

    Habilita la API

  7. Asegúrate de tener asignado el rol Administrador de Datastream a tu cuenta de usuario.

    Ir a la página IAM

Si deseas crear una configuración de conectividad privada para una red de VPC estándar o compartida, debes completar requisitos previos adicionales. Para obtener más información, consulta Crea una configuración de conectividad privada.

Requisitos

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

En esta guía de inicio rápido, suponemos que estás replicando datos de una base de datos de Cloud SQL para PostgreSQL en BigQuery. En el caso de la base de datos de origen, deberías poder configurar la instancia de base de datos para que acepte conexiones de direcciones IP públicas de Datastream.

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 esta guía de inicio rápido, seleccionarás 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 de Cloud SQL de origen a las conexiones entrantes de Datastream.

Crear perfiles de conexión

Cuando creas perfiles de conexión, almacenas información básica sobre el origen y el destino en Datastream. Luego, puedes volver a utilizar esta información en varias transmisiones.

En esta guía de inicio rápido, seleccionarás PostgreSQL como el tipo de perfil para tu perfil de conexión de origen y BigQuery como el tipo de perfil para tu perfil de conexión de destino. Datastream usa la información de los perfiles de conexión para conectarse a la base de datos de origen y a BigQuery.

Crea un perfil de conexión de origen para la base de datos de PostgreSQL

  1. Ve a la página Perfiles de conexión de Datastream en la Google Cloud Console.

    Ir a la página Perfiles de conexión

  2. Haz clic en CREAR PERFIL.

  3. En la página Crear un perfil de conexión, haz clic en el tipo de perfil PostgreSQL (porque quieres crear un perfil de conexión fuente para la base de datos de PostgreSQL).

  4. Proporciona la siguiente información en la sección Define la configuración de conexión de la página Crear perfil de PostgreSQL:

    • Ingresa My Source Connection Profile como el Nombre del perfil de conexión de tu base de datos de origen.
    • Conserva el ID de perfil de conexión generado automáticamente.
    • Selecciona la Región en la que se almacenará el perfil de la 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 PostgreSQL de origen. Proporcionas una dirección IP pública porque se usará una lista de IP permitidas como método de conectividad de red en esta guía de inicio rápido.
      • En el campo Puerto, ingresa el número de puerto reservado para la base de datos de origen. Para una base de datos de PostgreSQL, el puerto predeterminado suele ser 5432.
      • Ingresa un nombre de usuario y una contraseña para autenticarte en tu base de datos de origen.
      • En el campo Base de datos, ingresa el nombre que identifica la instancia de base de datos. Para las bases de datos de PostgreSQL, esto suele ser postgres.
  5. En la sección Define la configuración de la conexión, haz clic en CONTINUAR. La sección Define el método de conectividad de la página Crear perfil de PostgreSQL está activa.

  6. Elige el método de red que te gustaría usar para establecer la conectividad entre la base de datos de origen y Datastream. En esta guía de inicio rápido, usa el menú desplegable Método de conectividad para seleccionar Lista de IP permitidas como el método de red.

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

  8. En la sección Definir método de conectividad, haz clic en CONTINUAR. La sección Perfil de conexión de prueba de la página Crear perfil de PostgreSQL está activa.

  9. Haz clic en EJECUTAR PRUEBA para verificar que la base de datos PostgreSQL de origen y Datastream puedan comunicarse entre sí.

  10. Verifica que aparezca el estado “Prueba correcta”.

  11. Si la prueba falla, puedes solucionar el problema en la parte adecuada del flujo y luego volver a probar. Consulta la página Diagnostica problemas y consulta los pasos para solucionarlos.

  12. Haz clic en CREAR.

Crea un perfil de conexión de destino para BigQuery

  1. Ve a la página Perfiles de conexión de Datastream en la Google Cloud Console.

    Ir a la página Perfiles de conexión

  2. Haz clic en CREAR PERFIL.

  3. En la página Crear un perfil de conexión, haz clic en el tipo de perfil BigQuery (porque quieres crear un perfil de conexión de destino para BigQuery).

  4. Proporciona la siguiente información en la página Crear un perfil de BigQuery:

    • Ingresa My Destination Connection Profile como el Nombre de perfil de conexión de tu servicio de BigQuery de destino.
    • Conserva el ID de perfil de conexión generado automáticamente.
    • Selecciona la Región en la que se almacenará el perfil de la conexión.
  5. Haz clic en CREAR.

Después de crear un perfil de conexión de origen para la base de datos de PostgreSQL y un perfil de conexión de destino para BigQuery, puedes usarlos para crear una transmisión.

Crea una transmisión

En esta sección, crearás una transmisión para replicar datos de una base de datos PostgreSQL de origen a BigQuery.

La creación de una transmisión incluye los siguientes elementos:

  • Define la configuración para la transmisión.
  • Selecciona el perfil de conexión que creaste para tu base de datos de origen (el perfil de conexión de origen). En esta guía de inicio rápido, se trata de Mi perfil de conexión de origen.
  • Configura la información sobre la base de datos de origen para la transmisión mediante la especificación de las propiedades de replicación, y las tablas y esquemas de la base de datos de origen en la que Datastream hace lo siguiente:
    • Puede transferir al destino.
    • No puede transferir al destino.
  • Determinar si Datastream reabastecerá los datos históricos, así como la transmisión de los cambios continuos al destino o la transmisión solo de los cambios a los datos.
  • Selecciona el perfil de conexión que creaste para BigQuery (el perfil de conexión de destino). En esta guía de inicio rápido, se trata de Mi perfil de conexión de destino.
  • Configurar la información sobre el destino de la transmisión, como la configuración de los conjuntos de datos de BigQuery
  • Validar la transmisión.

Define la configuración de la transmisión

  1. Ve a la página Transmisiones para Datastream en la consola de Google Cloud.

    Ir a la página Novedades

  2. Haz clic en CREAR TRANSMISIÓN.

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

    • Ingresa My Stream como el nombre de la transmisión.
    • Conserva el ID de flujo generado automáticamente.
    • En el menú Región, selecciona la región en la que creaste el perfil de conexión de origen.
    • En el menú Tipo de fuente, selecciona el tipo de perfil PostgreSQL.
    • En el menú Tipo de destino, selecciona el tipo de perfil BigQuery.
  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 incluyen cómo configurar la base de datos de origen y BigQuery.

  5. Haz clic en CONTINUAR. Aparecerá el panel Definir perfil de conexión de PostgreSQL de la página Crear flujo.

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

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

  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. Haga clic en CONTINUE. 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

  1. Proporciona los nombres de Ranura de replicación y Publicación para la base de datos de origen. La ranura de replicación y la publicación se crearon cuando configuraste la base de datos de PostgreSQL.

  2. Usa el menú Objetos que se incluirán para especificar las tablas y los esquemas de tu base de datos de origen que Datastream replicará en BigQuery. El menú solo se carga si la base de datos tiene hasta 5,000 objetos.

    En esta guía de inicio rápido, debes permitir que Datastream transfiera todas las tablas y los esquemas. Por lo tanto, selecciona Todas las tablas de todos los esquemas en el menú.

  3. Haz clic en CONTINUAR. Aparecerá el panel Define un perfil de conexión de BigQuery de la página Crear flujo.

Selecciona un perfil de conexión de destino

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

  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

  1. Elige la opción Conjunto de datos para cada esquema, de modo que Datastream cree automáticamente un conjunto de datos en BigQuery por cada esquema de la base de datos de origen.

  2. Selecciona la ubicación donde se crearán los conjuntos de datos en BigQuery. Esta ubicación no tiene que ser la misma que la región en la que se crea el flujo de Datastream.

  3. Establece el Prefijo en quickstart-. Datastream agregará esta cadena al comienzo de cada conjunto de datos que cree en BigQuery.

  4. Deja el valor de la lista desplegable Especificar el límite de inactividad de los datos establecido en 15 minutos. BigQuery usa este valor para decidir qué tan inactivos pueden estar tus datos cuando se los consulta.

  5. 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 de destino que la transmisión usará para transferir datos de una base de datos PostgreSQL de origen a BigQuery.

  2. Haz clic en EJECUTAR VALIDACIÓN para validar la transmisió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 cuadro de diálogo ¿Crear transmisión?, haz clic en CREAR.

Inicia la transmisión

En la sección anterior de la guía de inicio rápido, creaste una transmisión, pero no la iniciaste. Puedes hacerlo ahora.

Para esta guía de inicio rápido, debes crear y, luego, iniciar 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 se pueda generar 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. Ve a la página Transmisiones para Datastream en la consola de Google Cloud.

    Ir a la página Novedades

  2. Marca la casilla de verificación a la izquierda de la transmisión que deseas iniciar. En esta guía de inicio rápido, se llama Mi transmisión.

  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, confirmarás que Datastream transfiera los datos de todas las tablas de tu base de datos PostgreSQL de origen a BigQuery.

  1. Ve a la página Transmisiones para Datastream en la consola de Google Cloud.

    Ir a la página Novedades

  2. Haz clic en la transmisión que creaste. En esta guía de inicio rápido, se llama Mi transmisión.

  3. En la página Detalles del flujo, haz clic en el vínculo que aparece debajo del campo Ruta de escritura de destino. BigQuery Studio se abre en una pestaña aparte.

  4. Verifica que veas conjuntos de datos y tablas que representen esquemas y tablas de tu base de datos PostgreSQL de origen.

  5. Haga clic en una de las tablas para obtener una vista previa de los datos.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que se usaron en esta página.

  1. Usa la consola de Google Cloud para borrar tu proyecto, los perfiles de transmisión y conexión de Datastream y los conjuntos de datos de BigQuery.

Si limpias los recursos que creaste en Datastream, no consumirán tu cuota y no se te cobrará por ellos en el futuro. En las secciones siguientes, se describe cómo borrar o desactivar estos recursos.

Borra tu proyecto

La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para esta guía de inicio rápido.

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

    Ir a la página Administración de recursos

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

  3. En el cuadro de diálogo, escribe el ID del proyecto y haz clic en Cerrar para borrar el proyecto.

Borra la transmisión

  1. Ve a la página Transmisiones para Datastream en la consola de Google Cloud.

    Ir a la página Novedades

  2. Haz clic en las novedades que deseas borrar. En esta guía de inicio rápido, se llama Mi transmisión.

  3. Haz clic en PAUSAR.

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

  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, ingresa Delete en el campo de texto y, luego, haz clic en BORRAR.

Borra los perfiles de conexión

  1. Ve a la página Perfiles de conexión de Datastream en la Google Cloud Console.

    Ir a la página Perfiles de conexión

  2. Selecciona la casilla de verificación de cada perfil de conexión que deseas borrar. En esta guía de inicio rápido, selecciona las casillas de verificación para 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.

Borra tus conjuntos de datos de BigQuery

  1. Ve a la página de BigQuery Studio en la Google Cloud Console.

    Ve a BigQuery Studio

  2. Expande el nodo del proyecto en el que creaste esta guía de inicio rápido.

  3. Para cada conjunto de datos que desees borrar, haz clic en el menú Ver acciones y, luego, en Borrar.

  4. En el cuadro de diálogo, ingresa delete en el campo de texto y, luego, haz clic en BORRAR.

¿Qué sigue?