En este tutorial se muestra cómo implementar una tarea que replica continuamente los datos modificados de una base de datos de Oracle en un conjunto de datos de BigQuery mediante la replicación de Cloud Data Fusion. Esta función usa la tecnología de Datastream.
Objetivos
En este tutorial, aprenderás a hacer lo siguiente:
- Configura tu base de datos de Oracle para habilitar el registro complementario.
- Crea y ejecuta una tarea de replicación de Cloud Data Fusion.
- Consulta los resultados en BigQuery.
Costes
En este documento, se utilizan los siguientes componentes facturables de Google Cloud:
Para generar una estimación de costes basada en el uso previsto,
utiliza la calculadora de precios.
Cuando se ejecuta la replicación, se te cobra por el clúster de Dataproc y Cloud Storage, y se te aplican costes de procesamiento por Datastream y BigQuery. Para optimizar estos costes, le recomendamos que utilice los precios de tarifa plana de BigQuery.
Antes de empezar
-
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, Dataproc, Datastream, BigQuery, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - Crea una instancia pública de Cloud Data Fusion con la versión 6.3.0 o una posterior. Si crea una instancia privada, configure el emparejamiento de redes VPC.
- Cuando crees la instancia, habilita la replicación haciendo clic en Añadir aceleradores y seleccionando la casilla Replicación.
- Para habilitarla en una instancia, consulta Habilitar la replicación.
- Trabajador de Dataproc (
roles/dataproc.worker
) en la cuenta de servicio de Dataproc del proyecto que contiene el clúster - Ejecutor de Cloud Data Fusion en la cuenta de servicio de Dataproc del proyecto que contiene el clúster
- Administrador de Data Stream (
roles/datastream.admin
) en la cuenta de servicio de Cloud Data Fusion y en la cuenta de servicio de Dataproc Descarga una imagen Docker de Oracle Server.
Para ver las limitaciones de esta imagen de Oracle Express Edition 11g, consulta Ediciones de Oracle Database.
Despliega tu imagen Docker en una nueva instancia de VM.
En la página Discos de Compute Engine, cambia el tamaño del disco a
500 GB
y reinicia la VM.Instala el esquema de muestra de RR. HH..
En la interfaz web de Cloud Data Fusion, haga clic en Replicación.
Haz clic en
Crear un trabajo de replicación.En la página Create new replication job (Crear trabajo de replicación), especifica un Name (Nombre) para el trabajo de replicación y haz clic en Next (Siguiente).
Configura la fuente:
Seleccione Oracle (por Datastream) como fuente.
En Método de conectividad, si tu servidor Oracle permite el tráfico entrante de las IPs públicas de Datastream, elige Incluir IPs en lista de IP permitidas. De lo contrario, en Nombre de la conexión privada, elige Conectividad privada (emparejamiento de VPC) e introduce el nombre del emparejamiento de VPC que has creado en la sección Crear un emparejamiento de redes de VPC o una regla de cortafuegos para tu servidor de Oracle.
En Host, introduce el nombre de host del servidor de Oracle que quieras leer.
En Puerto, introduce el puerto que se va a usar para conectarte al servidor de Oracle: 1521.
En Identidad del sistema, introduce
xe
(el nombre de la base de datos de ejemplo del servidor Oracle).En la sección de credenciales, introduce tu nombre de usuario y tu contraseña para acceder al servidor de Oracle.
Deja el resto de las propiedades como están.
Haz clic en Siguiente.
Configura el objetivo:
Selecciona el destino de BigQuery.
El ID de proyecto y la clave de cuenta de servicio se detectan automáticamente. Mantenga los valores predeterminados.
Opcional: En la sección Avanzado, puede configurar lo siguiente:
- Nombre y ubicación del segmento de almacenamiento provisional
- Intervalo de carga
- Prefijo de la tabla de staging
- Comportamiento cuando se eliminan tablas o bases de datos
Haz clic en Siguiente.
Si la conexión se realiza correctamente, se mostrará una lista de tablas. En este tutorial, selecciona algunas tablas.
Haz clic en Siguiente.
En la página de revisión de la evaluación, haga clic en Ver asignaciones en cualquiera de las tablas para obtener una evaluación de los problemas de esquema, las funciones que faltan o los problemas de conectividad que puedan producirse durante la replicación.
Si se produce algún problema, debes resolverlo antes de continuar. En este tutorial, si alguna de las tablas tiene problemas, haz lo siguiente:
- Vuelve al paso en el que seleccionaste las tablas.
- Selecciona una tabla o un evento (inserciones, actualizaciones o eliminaciones) sin problemas.
Para obtener más información sobre las conversiones de tipos de datos de la base de datos de origen al destino de BigQuery, consulta Tipos de datos de replicación.
Haz clic en Back (Atrás).
Haz clic en Siguiente.
Revise los detalles del trabajo de replicación de resumen y haga clic en Implementar trabajo de replicación.
En la interfaz web de Cloud Data Fusion, ve a la página de detalles de la tarea de replicación.
Haz clic en Empezar.
En la página Replicación, haga clic en el Nombre del trabajo de replicación que haya elegido.
Haz clic en Monitorización.
En la consola de Google Cloud , ve a la página BigQuery.
En el panel de la izquierda, haz clic en el nombre de tu proyecto para desplegar una lista de conjuntos de datos.
Selecciona el conjunto de datos
xe
y, a continuación, selecciona una tabla para verla.En la consola de Google Cloud , ve a la página Instancias de VM.
Marca la casilla de la instancia que quieras eliminar.
Para eliminar la instancia, haz clic en Eliminar.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- Consulta más información sobre Datastream.
- Consulta más información sobre la replicación en Cloud Data Fusion.
- Consulta la referencia de la API Replication.
- Consulta la referencia de replicación de Oracle.
- Sigue el tutorial para replicar datos de MySQL en BigQuery.
- Sigue el tutorial para replicar datos de SQL Server en BigQuery.
Roles obligatorios
Para obtener los permisos que necesitas para conectarte a una base de datos de Oracle, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:
Para obtener más información sobre cómo conceder roles, consulta el artículo sobre cómo gestionar el acceso.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Opcional: Instalar Oracle en Compute Engine
En esta sección se muestra cómo configurar una base de datos de ejemplo. Si ya tiene instalada una base de datos Oracle, puede saltarse esta sección.
Crear un emparejamiento de redes de VPC o una regla de cortafuegos para tu servidor Oracle
Si tu base de datos de Oracle no permite el tráfico entrante de direcciones IP públicas, configura el peering de redes de VPC entre la VPC de Datastream y la VPC en la que se puede acceder a tu base de datos de Oracle. Para obtener más información, consulta el artículo Crear una configuración de conectividad privada.
Si tu base de datos de Oracle permite el tráfico entrante de direcciones IP públicas, crea una regla de cortafuegos para la instancia de VM que permita el tráfico entrante de las IPs públicas de Datastream.
Configurar el servidor Oracle para habilitar el registro complementario
Sigue los pasos para configurar tu base de datos de Oracle de origen.
Crear y ejecutar un trabajo de replicación de Cloud Data Fusion
Crea la tarea.
Empezar el trabajo
La tarea de replicación pasa del estado Provisioning (Aprovisionando) al estado Starting (Iniciando) y, después, al estado Running (En ejecución). En el estado de ejecución, la tarea de replicación carga una instantánea inicial de los datos de la tabla que has seleccionado en BigQuery. En este estado, el estado de la tabla se indica como Creando una copia. Una vez que se haya cargado la primera copia en BigQuery, cualquier cambio que se haga en la tabla se replicará en BigQuery y el estado de la tabla será Replicando.
Monitorizar la tarea
Puedes iniciar y detener la tarea de replicación, revisar su configuración y sus registros, y monitorizarla.
Puedes monitorizar las actividades de las tareas de replicación desde la página Detalles de la tarea de replicación.
Ver los resultados en BigQuery
La tarea de replicación crea un conjunto de datos y una tabla replicados en BigQuery, con nombres heredados de los nombres de la base de datos y la tabla de Oracle correspondientes.
Para obtener más información, consulta la documentación de BigQuery.
Limpieza
Para evitar que los recursos utilizados en este tutorial se cobren en tu cuenta de Google Cloud, elimina el proyecto que contiene los recursos o conserva el proyecto y elimina los recursos.
Cuando hayas terminado el tutorial, elimina los recursos que has creado enGoogle Cloud para que no ocupen cuota y no se te facturen en el futuro. En las siguientes secciones se explica cómo eliminar o desactivar dichos recursos.
Eliminar la instancia de VM
Eliminar la instancia de Cloud Data Fusion
Sigue las instrucciones para eliminar tu instancia de Cloud Data Fusion.
Eliminar el proyecto
La forma más fácil de evitar que te cobren es eliminar el proyecto que has creado para el tutorial.
Para ello, sigue las instrucciones que aparecen a continuación: