Replica datos en BigQuery casi en tiempo real con Datastream

Consulta cómo replicar datos de una base de datos de origen en conjuntos de datos de BigQuery con Datastream.


Para seguir las instrucciones paso a paso de esta tarea directamente en la Google Cloud consola, haga clic en Ayúdame:

Guíame


Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Datastream API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. Make sure that you have the following role or roles on the project: Support User, Datastream Admin, Monitoring Metrics Scopes Viewer, Gemini for Google Cloud Settings Admin

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Ir a IAM
    2. Selecciona el proyecto.
    3. Haz clic en Conceder acceso.
    4. En el campo Nuevos principales, introduce tu identificador de usuario. Normalmente, se trata de la dirección de correo de una cuenta de Google.

    5. En la lista Selecciona un rol, elige un rol.
    6. Para conceder más roles, haz clic en Añadir otro rol y añade cada rol adicional.
    7. Haz clic en Guardar.
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Datastream API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  9. Make sure that you have the following role or roles on the project: Support User, Datastream Admin, Monitoring Metrics Scopes Viewer, Gemini for Google Cloud Settings Admin

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Ir a IAM
    2. Selecciona el proyecto.
    3. Haz clic en Conceder acceso.
    4. En el campo Nuevos principales, introduce tu identificador de usuario. Normalmente, se trata de la dirección de correo de una cuenta de Google.

    5. En la lista Selecciona un rol, elige un rol.
    6. Para conceder más roles, haz clic en Añadir otro rol y añade cada rol adicional.
    7. Haz clic en Guardar.
  10. Si quieres crear una configuración de conectividad privada para una red de VPC estándar o compartida, debes cumplir otros requisitos. Para obtener más información, consulta Crear una configuración de conectividad privada.

    Requisitos

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

    En esta guía de inicio rápido, damos por hecho que vas a replicar datos de una base de datos de Cloud SQL para PostgreSQL en BigQuery. En la base de datos de origen, debería poder configurar su instancia de base de datos para que acepte conexiones de las direcciones IP públicas de Datastream.

    Como no conocemos los detalles de tu entorno, no podemos proporcionarte pasos detallados para configurar tu red.

    En esta guía de inicio rápido, seleccionarás Incluir IPs en lista de permitidas como método de conectividad de red. La lista de permitidos de IPs es una función de seguridad que se suele usar para limitar y controlar el acceso a los datos de tu base de datos de origen a usuarios de confianza. Puedes usar listas de permitidas de IPs para crear listas de direcciones IP o intervalos de IPs de confianza desde los que tus usuarios y otros servicios de Cloud, como Datastream, pueden acceder a estos datos. Para usar listas de IPs permitidas, debes abrir la base de datos de Cloud SQL de origen a las conexiones entrantes de Datastream.

    Crear perfiles de conexión

    Al crear perfiles de conexión, almacenas información básica sobre el origen y el destino en Datastream. Después, podrá volver a usar esta información en varios flujos.

    En esta guía de inicio rápido, seleccionarás PostgreSQL como tipo de perfil de conexión de origen y BigQuery como tipo de 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.

    Crear un perfil de conexión de origen para una base de datos PostgreSQL

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

      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, haga clic en el tipo de perfil PostgreSQL (porque quiere crear un perfil de conexión de origen para la base de datos PostgreSQL).

    4. Proporciona la siguiente información en la sección Define connection settings (Definir ajustes de conexión) de la página Create PostgreSQL profile (Crear perfil de PostgreSQL):

      • Introduce My Source Connection Profile como 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.

      • Introduce los detalles de la conexión:

        • En el campo Nombre de host o IP, introduce 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 Lista de IP permitidas se usará como método de conectividad de red en esta guía de inicio rápido.
        • En el campo Port (Puerto), introduce el número de puerto reservado para la base de datos de origen. En el caso de una base de datos PostgreSQL, el puerto predeterminado suele ser 5432.
        • Introduce un nombre de usuario y una contraseña para autenticarte en tu base de datos de origen.
        • En el campo Base de datos, introduce el nombre que identifica la instancia de base de datos. En el caso de las bases de datos PostgreSQL, suele ser postgres.
    5. En la sección Define connection settings (Definir ajustes de conexión), haz clic en CONTINUE (CONTINUAR). La sección Definir método de conectividad de la página Crear perfil de PostgreSQL está activa.

    6. Elige el método de red que quieras 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 IPs en lista de permitidas como método de red.

    7. Configura tu base de datos de origen para que permita las conexiones entrantes de las direcciones IP públicas de Datastream que aparecen.

    8. En la sección Define connectivity method (Definir método de conectividad), haz clic en CONTINUE (CONTINUAR). La sección Probar perfil de conexión 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 pueden comunicarse entre sí.

    10. Comprueba que aparezca el estado "Prueba superada".

    11. Si la prueba falla, puedes solucionar el problema en la parte correspondiente del flujo y, a continuación, volver para repetir la prueba. Consulta los pasos para solucionar problemas en la página Diagnosticar problemas.

    12. Haz clic en CREAR.

    Crear 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 consola.

      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, haga clic en el tipo de perfil BigQuery (porque quiere crear un perfil de conexión de destino para BigQuery).

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

      • Introduce My Destination Connection Profile como 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 PostgreSQL y un perfil de conexión de destino para BigQuery, puede usarlos para crear un flujo.

    Crear un flujo

    En esta sección, creará un flujo para replicar datos de una base de datos PostgreSQL de origen en BigQuery.

    Al crear un flujo, se incluyen los siguientes pasos:

    • Definir los ajustes de la emisión.
    • Selecciona el perfil de conexión que has creado 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.
    • Configurar la información sobre la base de datos de origen del flujo especificando las propiedades de replicación, así como las tablas y los esquemas de la base de datos de origen que Datastream:
      • Puede transferir al destino.
      • No se puede transferir al destino.
    • Determinar si Datastream rellenará el historial de datos y transmitirá los cambios en curso al destino, o si solo transmitirá los cambios en los datos.
    • Selecciona el perfil de conexión que has creado 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 del flujo, como los conjuntos de datos de BigQuery.
    • Validando la emisión.

    Definir los ajustes de la emisión

    1. Ve a la página Streams (Streams) de Datastream en la Google Cloud consola.

      Ir a la página Streams

    2. Haz clic en CREAR STREAM.

    3. Proporciona la siguiente información en el panel Define stream details (Definir detalles del flujo) de la página Create stream (Crear flujo):

      • Introduce My Stream en el campo Nombre del flujo.
      • Conserve el ID de flujo generado automáticamente.
      • En el menú Región, selecciona la región en la que has creado 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, seleccione el tipo de perfil BigQuery.
    4. Revisa los requisitos previos que se generan automáticamente para saber cómo debes preparar tu entorno para un flujo. Entre estos requisitos previos se incluye 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.

    Especificar información sobre el perfil de conexión de origen

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

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

      Si la prueba falla, aparecerá el problema asociado al perfil de conexión. Consulta los pasos para solucionar problemas en la página Diagnosticar problemas. Haga los cambios necesarios para corregir el problema y, a continuación, vuelva a hacer la prueba.

    3. Haz clic en CONTINUAR. Aparecerá el panel Configurar origen del flujo de la página Crear flujo.

    Configurar la información sobre la base de datos de origen del flujo

    1. Proporcione los nombres de Replication slot y Publication de su base de datos de origen. La ranura de replicación y la publicación se crearon al configurar la base de datos PostgreSQL.

    2. Usa el menú Objetos que 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 tu base de datos tiene hasta 5000 objetos.

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

    3. Haz clic en CONTINUAR. Aparecerá el panel Definir 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 el perfil de conexión de destino de BigQuery.

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

    Configurar la información sobre el destino del flujo

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

    2. Selecciona el Tipo de ubicación en el que se crearán los conjuntos de datos en BigQuery. Aunque esta ubicación no tiene por qué ser la misma que la región en la que se crea el flujo de Datastream, te recomendamos que mantengas todos los recursos y conjuntos de datos en la misma región para optimizar los costes y el rendimiento.

    3. Asigna el valor quickstart- al campo Prefijo. Datastream añadirá esta cadena al principio de cada conjunto de datos que cree en BigQuery.

    4. Deje el valor Combinar en Modo de escritura de la secuencia. De esta forma, las tablas de BigQuery se mantienen sincronizadas con la fuente.

    5. En la lista desplegable Especificar el límite de antigüedad de los datos, deja el valor predeterminado de 15 minutos. BigQuery usa este valor para decidir cuánto tiempo pueden llevar tus datos sin actualizarse cuando se consultan.

    6. Haz clic en CONTINUAR. Aparecerá el panel Revisar detalles del flujo y crearlo de la página Crear flujo.

    Crear el flujo

    1. Verifica los detalles de la secuencia, así como los perfiles de conexión de origen y destino que usará la secuencia para transferir datos de una base de datos PostgreSQL de origen a BigQuery.

    2. Haz clic en EJECUTAR VALIDACIÓN para validar el flujo. Al validar un flujo, Datastream comprueba que la fuente esté configurada correctamente, valida que el flujo pueda conectarse tanto a la fuente como al destino y verifica la configuración integral del flujo.

    3. Una vez que se hayan superado todas las comprobaciones de validación, haz clic en CREAR.

    4. En el cuadro de diálogo ¿Crear flujo?, haz clic en CREAR.

    Iniciar la emisión

    En la sección anterior de la guía de inicio rápido, has creado un flujo, pero no lo has iniciado. Puedes hacerlo ahora.

    En esta guía de inicio rápido, creará e iniciará un flujo por separado por si el proceso de creación del flujo supone una mayor carga en su base de datos de origen. Para aplazar esa carga, crea el flujo sin iniciarlo y, después, inicia el flujo cuando se pueda incurrir en la carga.

    Al iniciar el flujo, Datastream puede transferir datos, esquemas y tablas de la base de datos de origen al destino.

    1. Ve a la página Streams (Streams) de Datastream en la Google Cloud consola.

      Ir a la página Streams

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

    3. Haz clic en EMPEZAR.

    4. En el cuadro de diálogo, haz clic en INICIAR. El estado de la emisión cambia de Not started a Starting y, después, a Running.

      Después de iniciar un flujo, puede verificar que Datastream ha transferido datos de la base de datos de origen al destino.

    Verificar la emisión

    En esta sección, confirmas que Datastream transfiere los datos de todas las tablas de tu base de datos PostgreSQL de origen a BigQuery.

    1. Ve a la página Streams (Streams) de Datastream en la Google Cloud consola.

      Ir a la página Streams

    2. Haz clic en el flujo que has creado. En esta guía de inicio rápido, se llama Mi emisión.

    3. En la página Detalles del flujo, haga clic en el enlace que aparece debajo del campo Ruta de escritura de destino. BigQuery Studio se abre en otra pestaña.

    4. Comprueba que veas conjuntos de datos y tablas que representen los esquemas y las tablas de tu base de datos PostgreSQL de origen.

    5. Haz clic en una de las tablas para ver una vista previa de tus datos.

    Limpieza

    Para evitar que se apliquen cargos en tu cuenta de Google Cloud por los recursos utilizados en esta página, sigue estos pasos.

    1. Usa la Google Cloud consola para eliminar tu proyecto, los perfiles de conexión y las secuencias de Datastream, así como los conjuntos de datos de BigQuery.

    Si eliminas los recursos que has creado en Datastream, no ocuparán cuota y no se te facturarán en el futuro. En las siguientes secciones se explica cómo eliminar o desactivar dichos recursos.

    Eliminar un proyecto

    La forma más fácil de evitar que te cobren es eliminar el proyecto que has creado para esta guía de inicio rápido.

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

      Ir a la página Gestionar recursos

    2. En la lista de proyectos, selecciona el proyecto que quieras eliminar y haz clic en Eliminar.

    3. En el cuadro de diálogo, escribe el ID del proyecto y, a continuación, haz clic en Cerrar para eliminar el proyecto.

    Eliminar el flujo

    1. Ve a la página Streams (Streams) de Datastream en la Google Cloud consola.

      Ir a la página Streams

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

    3. Haz clic en PAUSAR.

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

    5. En el panel Estado del flujo de la página Detalles del flujo, comprueba que el estado del flujo sea Paused.

    6. Haz clic en ELIMINAR.

    7. En el cuadro de diálogo, introduce Delete en el campo de texto y, a continuación, haz clic en ELIMINAR.

    Eliminar los perfiles de conexión

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

      Ir a la página Perfiles de conexión

    2. Seleccione la casilla de verificación de cada perfil de conexión que quiera eliminar. En esta guía de inicio rápido, selecciona las casillas de Mi perfil de conexión de origen y Mi perfil de conexión de destino.

    3. Haz clic en ELIMINAR.

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

    Eliminar conjuntos de datos de BigQuery

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

      Ir a BigQuery Studio

    2. Despliega el nodo del proyecto en el que has creado esta guía de inicio rápido.

    3. En cada conjunto de datos que quieras eliminar, haz clic en el menú Ver acciones y, a continuación, en Eliminar.

    4. En el cuadro de diálogo, introduce delete en el campo de texto y, a continuación, haz clic en ELIMINAR.

    Siguientes pasos