arrow_back

Datastream: Replicación de PostgreSQL en BigQuery

Acceder Unirse
Pon a prueba tus conocimientos y compártelos con nuestra comunidad
done
Obtén acceso a más de 700 labs prácticos, insignias de habilidad y cursos

Datastream: Replicación de PostgreSQL en BigQuery

Lab 1 hora universal_currency_alt 1 crédito show_chart Introductorio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Pon a prueba tus conocimientos y compártelos con nuestra comunidad
done
Obtén acceso a más de 700 labs prácticos, insignias de habilidad y cursos

GSP1052

Labs de autoaprendizaje de Google Cloud

Descripción general

En el entorno competitivo de la actualidad, las organizaciones deben poder tomar decisiones basadas en datos en tiempo real de forma rápida y fácil. Datastream para BigQuery ofrece la replicación continua de fuentes de bases de datos operativas, como AlloyDB, MySQL, PostgreSQL y Oracle, directamente a BigQuery, el almacén de datos sin servidores de Google Cloud. Gracias a su arquitectura de ajuste de escala automático y sin servidores, Datastream permite configurar fácilmente una canalización ELT (es decir, de extracción, carga, transformación) para la replicación de datos de baja latencia con el objetivo de obtener estadísticas en tiempo real.

En este lab práctico, implementarás una base de datos de Cloud SQL para PostgreSQL y, luego, importarás un conjunto de datos de muestra con la línea de comandos de gcloud. A través del uso de la IU, crearás e iniciarás una transmisión de Datastream y replicarás los datos en BigQuery.

Aunque puedes copiar comandos del lab y pegarlos en el lugar apropiado fácilmente, los estudiantes deberían escribir los comandos para reforzar su comprensión de los conceptos básicos.

Actividades

  • Preparar una instancia de Cloud SQL para PostgreSQL con la consola de Google Cloud
  • Importar datos a una instancia de Cloud SQL
  • Crear un perfil de conexión de Datastream para la base de datos de PostgreSQL
  • Crear un perfil de conexión de Datastream para el destino de BigQuery
  • Crear una transmisión de Datastream e iniciar la replicación
  • Validar que los datos existentes y los cambios se repliquen correctamente en BigQuery

Requisitos previos

  • Conocimiento de los entornos estándar de Linux
  • Conocimiento de los conceptos de captura de datos modificados (CDC)

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.

Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.

Para completar este lab, necesitarás lo siguiente:

  • Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
Nota: Usa una ventana de navegador privada o de Incógnito para ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Nota: Si ya tienes un proyecto o una cuenta personal de Google Cloud, no los uses en este lab para evitar cargos adicionales en tu cuenta.

Cómo iniciar tu lab y acceder a la consola de Google Cloud

  1. Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:

    • El botón Abrir la consola de Google Cloud
    • El tiempo restante
    • Las credenciales temporales que debe usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).

    El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
  3. De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.

    {{{user_0.username | "Username"}}}

    También puedes encontrar el nombre de usuario en el panel Detalles del lab.

  4. Haz clic en Siguiente.

  5. Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.

    {{{user_0.password | "Password"}}}

    También puedes encontrar la contraseña en el panel Detalles del lab.

  6. Haz clic en Siguiente.

    Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia Cuenta de Google podría generar cargos adicionales.
  7. Haga clic para avanzar por las páginas siguientes:

    • Acepta los Términos y Condiciones.
    • No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No te registres para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.

Nota: Para ver un menú con una lista de productos y servicios de Google Cloud, haz clic en el menú de navegación que se encuentra en la parte superior izquierda. Ícono del menú de navegación

Activa Cloud Shell

Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. Haz clic en Activar Cloud Shell Ícono de Activar Cloud Shell en la parte superior de la consola de Google Cloud.

Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.

  1. Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
  1. Haz clic en Autorizar.

  2. Ahora, el resultado debería verse de la siguiente manera:

Resultado:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project

Resultado:

[core] project = <project_ID>

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: Para obtener toda la documentación de gcloud, consulta la guía con la descripción general de gcloud CLI en Google Cloud.

Tarea 1. Crea una base de datos para la replicación

En esta sección, prepararás una base de datos de Cloud SQL para PostgreSQL con el objetivo de llevar a cabo la replicación con Datastream.

Crea la base de datos de Cloud SQL

  1. Ejecuta el siguiente comando para habilitar la API de Cloud SQL:
gcloud services enable sqladmin.googleapis.com
  1. Ejecuta el siguiente comando para crear una instancia de la base de datos de Cloud SQL para PostgreSQL:
POSTGRES_INSTANCE=postgres-db DATASTREAM_IPS={{{project_0.startup_script.ip_Address | IP_ADDRESS}}} gcloud sql instances create ${POSTGRES_INSTANCE} \ --database-version=POSTGRES_14 \ --cpu=2 --memory=10GB \ --authorized-networks=${DATASTREAM_IPS} \ --region={{{project_0.default_region|REGION}}} \ --root-password pwd \ --database-flags=cloudsql.logical_decoding=on Nota: Este comando crea la base de datos en . Para otras regiones, asegúrate de reemplazar DATASTREAM_IPS por las IP públicas de Datastream de tu región.

Después de crear la instancia de la base de datos, toma nota de su IP pública, ya que la necesitarás cuando crees el perfil de conexión de Datastream.

Haz clic en Revisar mi progreso para verificar el objetivo.

Crear una base de datos para la replicación

Completa la base de datos con datos de muestra

Ejecuta el siguiente comando en Cloud Shell para conectarte a la base de datos de PostgreSQL.

gcloud sql connect postgres-db --user=postgres

Cuando se te solicite la contraseña, ingresa pwd.

Una vez que te hayas conectado a la base de datos, ejecuta el siguiente comando de SQL para crear un esquema y una tabla de muestra:

CREATE SCHEMA IF NOT EXISTS test; CREATE TABLE IF NOT EXISTS test.example_table ( id SERIAL PRIMARY KEY, text_col VARCHAR(50), int_col INT, date_col TIMESTAMP ); ALTER TABLE test.example_table REPLICA IDENTITY DEFAULT; INSERT INTO test.example_table (text_col, int_col, date_col) VALUES ('hello', 0, '2020-01-01 00:00:00'), ('goodbye', 1, NULL), ('name', -987, NOW()), ('other', 2786, '2021-01-01 00:00:00');

Configura la base de datos para la replicación

  • Ejecuta el siguiente comando de SQL para crear una publicación y una ranura de replicación:
CREATE PUBLICATION test_publication FOR ALL TABLES; ALTER USER POSTGRES WITH REPLICATION; SELECT PG_CREATE_LOGICAL_REPLICATION_SLOT('test_replication', 'pgoutput');

Tarea 2. Crea los recursos de Datastream e inicia la replicación

Ahora que la base de datos ya está lista, crea los perfiles de conexión de Datastream y comienza a transmitir para iniciar la replicación.

  1. Desde el menú de navegación, haz clic en Ver todos los productos. En Análisis, selecciona Datastream.

  2. Haz clic en Habilitar para habilitar la API de Datastream.

64c95a330abbceb6.png

Crea perfiles de conexión

Crea dos perfiles de conexión, uno para la fuente de PostgreSQL y otro para el destino de BigQuery.

Perfil de conexión de PostgreSQL

  1. En la consola de Cloud, ve a la pestaña Perfiles de conexión y haz clic en Crear perfil.
La página de perfiles de conexión en la que se encuentra el vínculo Crear perfil en la esquina superior derecha
  1. Selecciona el tipo de perfil de conexión PostgreSQL.
El mosaico de PostgreSQL como una de las opciones posibles
  1. Usa postgres-cp como el nombre y el ID del perfil de conexión.

  2. Ingresa los detalles de la conexión a la base de datos:

  • Región:
  • La IP y el puerto de la instancia Cloud SQL que creaste antes
  • Nombre de usuario: postgres
  • Contraseña: pwd
  • Base de datos: postgres
  1. Haz clic en Continuar.

  2. En la opción de encriptación deja NINGUNA y haz clic en CONTINUAR.

  3. Selecciona el método de conectividad Incluir en la lista de IP permitidas y haz clic en Continuar.

  4. Haz clic en EJECUTAR PRUEBA para asegurarte de que Datastream pueda conectarse a la base de datos.

  5. Haz clic en Crear.

Perfil de conexión de BigQuery

  1. En la consola de Cloud, ve a la pestaña Perfiles de conexión y haz clic en Crear perfil.
La página de perfiles de conexión en la que se encuentra el vínculo Crear perfil en la esquina superior derecha
  1. Selecciona el tipo de perfil de conexión BigQuery.
El mosaico de BigQuery como una de las opciones posibles
  1. Usa bigquery-cp como el nombre y el ID del perfil de conexión.

  2. Región

  3. Haz clic en Crear.

Crea una transmisión

Crea una transmisión para conectar los perfiles de conexión que creaste antes y definir la configuración de los datos que se deben transmitir de la fuente al destino.

  • En la consola de Cloud, ve a la pestaña Transmisiones y haz clic en Crear transmisión.
La pestaña Transmisiones en la que se encuentra el vínculo Crear transmisión en la esquina superior derecha

Define los detalles de la transmisión

  1. Usa test-stream como el nombre y el ID de la transmisión.
  2. Región
  3. Selecciona PostgreSQL como el tipo de fuente.
  4. Selecciona BigQuery como el tipo de destino.
  5. Haz clic en CONTINUAR.
El paso 1 de la página de detalles de Crear transmisión con los campos completados

Define la fuente

  1. Selecciona el perfil de conexión postgres-cp que creaste en el paso anterior.
  2. [Opcional] Haz clic en EJECUTAR PRUEBA para comprobar la conectividad.
  3. Haz clic en CONTINUAR.
El paso dos de la página Crear transmisión con los campos completados

Configura la fuente

  1. Ingresa el nombre test_replication para la ranura de replicación.
  2. Ingresa el nombre test_publication para la publicación.
El paso 3 de la página Crear transmisión con los campos completados
  1. Selecciona el esquema test para la replicación.
el esquema test seleccionado entre las diversas opciones
  1. Haz clic en Continuar.

Define el destino

  • Selecciona el perfil de conexión bigquery-cp que creaste en el paso anterior y haz clic en Continuar.
El paso 4 de la página Crear transmisión con la opción bigquery-cp seleccionada

Configura el destino

  1. Selecciona la opción Región y como la ubicación del conjunto de datos de BigQuery.
  2. Configura el límite de inactividad en 0 segundos.
El paso 5 de la página Crear transmisión con la ubicación seleccionada
  1. Haz clic en Continuar.

Revisa los detalles y crea la transmisión

  • Por último, haz clic en EJECUTAR VALIDACIÓN para validar los detalles de la transmisión. Una vez que finalice correctamente, haz clic en CREAR E INICIAR.
Los resultados de la validación con marcas de verificación verdes

En aproximadamente 1 o 2 minutos, el estado de la transmisión aparecerá como En ejecución.

Haz clic en Revisar mi progreso para verificar el objetivo.

Crear los recursos de Datastream

Tarea 3. Visualiza los datos en BigQuery

Ahora que la transmisión está en ejecución, observa cómo los datos se replican en el conjunto de datos de BigQuery.

  1. En la consola de Google Cloud, desde el menú de navegación ve a BigQuery.
  2. En el explorador de BigQuery Studio, expande el nodo del proyecto para ver la lista de conjuntos de datos.
  3. Expande el nodo del conjunto de datos test.
  4. Haz clic en la tabla example_table.
  5. Haz clic en la pestaña VISTA PREVIA para ver los datos en BigQuery.
Nota: Es posible que los datos tarden unos minutos en aparecer en la sección Vista previa. La página del explorador de BigQuery en la que se puede ver la tabla example_table

Tarea 4. Comprueba que los cambios en la fuente se repliquen en BigQuery

  1. Ejecuta el siguiente comando en Cloud Shell para conectarte a la base de datos de Cloud SQL (la contraseña es pwd):
gcloud sql connect postgres-db --user=postgres
  1. Ejecuta los siguientes comandos de SQL para aplicar cambios en los datos:
INSERT INTO test.example_table (text_col, int_col, date_col) VALUES ('abc', 0, '2022-10-01 00:00:00'), ('def', 1, NULL), ('ghi', -987, NOW()); UPDATE test.example_table SET int_col=int_col*2; DELETE FROM test.example_table WHERE text_col = 'abc';
  1. Abre el espacio de trabajo de SQL de BigQuery y ejecuta la siguiente consulta para ver los cambios en BigQuery:
SELECT * FROM test.example_table ORDER BY id; Los resultados de la consulta

¡Felicitaciones!

Datastream es una herramienta importante para la integración y el análisis de los datos. Aprendiste aspectos básicos de la replicación de PostgreSQL a BigQuery con Datastream.

Última actualización del manual: 23 de agosto de 2024

Prueba más reciente del lab: 23 de agosto de 2024

Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible