Replica datos en BigQuery con Datastream casi en tiempo real

Aprende a replicar datos de una base de datos de origen en conjuntos de datos de BigQuery con 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  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 los 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, de destino y métodos de conectividad de red.

En esta guía de inicio rápido, suponemos que quieres replicar datos de una base de datos de Cloud SQL para PostgreSQL en BigQuery. En cuanto a la base de datos de origen, deberías poder configurar tu 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 cuando se trata de tu configuración de red.

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

Crear perfiles de conexión

Cuando creas perfiles de conexión, almacenas cierta información básica sobre el origen y el destino en Datastream. Luego, puedes reutilizar esta información en varios flujos.

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 (ya que deseas crear un perfil de conexión de origen 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 conexión.

    • Ingresa Detalles de la conexión (Connection details):

      • 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. Proporcionarás una dirección IP pública porque se usará la 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 la base de datos. Para las bases de datos de PostgreSQL, esto suele ser postgres.
  5. En la sección Define la configuración de 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 quieres 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 Incluir en la lista de entidades permitidas de IP como el método de red.

  7. Configura tu base de datos de origen para permitir 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 se puedan comunicar entre sí.

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

  11. Si la prueba falla, puedes abordar el problema en la parte apropiada del flujo y, luego, volver a probar. Consulta la página Diagnostica problemas y obtén 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 (ya que deseas crear un perfil de conexión de destino para BigQuery).

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

    • Ingresa My Destination Connection Profile como el Nombre del 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 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 de origen de PostgreSQL en BigQuery.

La creación de una transmisión incluye lo siguiente:

  • Definir la configuración de la transmisión
  • Selecciona el perfil de conexión que creaste para la base de datos de origen (el perfil de conexión de origen). En esta guía de inicio rápido, esta es My Source Connection Profile.
  • Configurar la información sobre la base de datos de origen para la transmisión mediante la especificación de las propiedades de replicación, así como las tablas y los esquemas de la base de datos de origen en la que Datastream realiza las siguientes acciones:
    • 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, esta es My Destination Connection Profile.
  • Configurar la información sobre el destino de la transmisión, como configurar los conjuntos de datos de BigQuery
  • Validando 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 de la transmisión de la página Crear transmisión:

    • Ingresa My Stream como el Nombre del flujo.
    • Conserva el ID de transmisión 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 para reflejar cómo se debe preparar tu entorno para una transmisión. Estos requisitos previos incluyen cómo configurar la base de datos de origen y cómo configurar BigQuery.

  5. Haz clic en CONTINUAR. Aparecerá el panel Define PostgreSQL connection profile de la página Create stream.

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

  1. En el menú Perfil de conexión de origen, 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 obtén 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 la ranura de replicación y de la 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 a incluir para especificar las tablas y los esquemas de la 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, querrás que Datastream transfiera todas las tablas y esquemas. Por lo tanto, selecciona Todas las tablas de todos los esquemas en el menú.

  3. Haz clic en CONTINUAR. Aparecerá el panel Define BigQuery connection profile de la página Create stream.

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 Configura el destino de transmisión de la página Crear transmisión.

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 para cada esquema de la base de datos de origen.

  2. Selecciona la Ubicación en la que se crearán los conjuntos de datos en BigQuery. No es necesario que esta ubicación sea la misma que la región en la que se crea la transmisión de Datastream.

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

  4. Deja el valor en Modo de escritura de transmisión en Combinar. De esta manera, las tablas de BigQuery permanecen sincronizadas con la fuente.

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

  6. Haz clic en CONTINUAR. Aparecerá el panel Revisar los detalles del flujo y crear de la página Crear transmisión.

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 usará para transferir datos desde una base de datos de PostgreSQL de origen a BigQuery.

  2. Haz clic en EJECUTAR VALIDACIÓN para validar la transmisión. Cuando valida una transmisión, Datastream comprueba 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.

  3. Después de que se aprueben todas las comprobaciones de validación, haz clic en CREAR.

  4. En el cuadro de diálogo ¿Quieres crear una 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.

En 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 mayor carga en la base de datos de origen. Para posponer esa carga, se debe crear la transmisión sin iniciarla y, luego, iniciarla cuando se genere la carga.

Cuando inicias 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. Selecciona la casilla de verificación a la izquierda de las Novedades que deseas iniciar. En esta guía de inicio rápido, esta es My Stream.

  3. Haz clic en INICIAR.

  4. En el cuadro de diálogo, haz clic en COMENZAR. El estado de la transmisión cambia de Not started a Starting y, luego, 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 las novedades que creaste. En esta guía de inicio rápido, esta es My Stream.

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

  4. Verifica que ves conjuntos de datos y tablas que representan 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 eliminar. En esta guía de inicio rápido, esta es My Stream.

  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 en la página Detalles de la transmisión, verifica que el estado 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 desees borrar. Para esta guía de inicio rápido, selecciona las casillas de verificación My Source Connection Profile (Mi perfil de conexión fuente) y My Destination Connection Profile (Mi perfil de conexión de destino).

  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, haz clic en Borrar.

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

¿Qué sigue?