Nota:

Transmisión de datos mediante Oracle GoldenGate y Oracle GoldenGate for Big Data con diferentes destinos

Introducción

Oracle GoldenGate es un servicio totalmente gestionado que ayuda a los ingenieros de datos a mover datos en tiempo real, a escala, de uno o más sistemas de gestión de datos a bases de datos Oracle Cloud. Diseñe, ejecute, organice y supervise tareas de replicación de datos en una sola interfaz sin tener que asignar ni gestionar ningún entorno informático.

Oracle GoldenGate for Big Data transmite datos transaccionales en sistemas Big Data y en la nube en tiempo real, sin afectar al rendimiento de los sistemas de origen. Optimiza la entrega de datos en tiempo real en las soluciones de big data más conocidas, incluidas Apache Hadoop, Apache HBase, Apache Hive, Confluent Kafka, NoSQL Databases, Elasticsearch, JDBC, Oracle Cloud, Amazon Web Services, Microsoft Azure Cloud, Google Cloud Platform y Data Warehouses para facilitar una mejor información y una acción oportuna.

El servicio de transmisión de Oracle Cloud Infrastructure (OCI) proporciona una solución duradera, ampliable y totalmente gestionada para la ingestión y el consumo de flujos de datos de gran volumen en tiempo real. Utilice OCI Streaming para cualquier caso de uso en el que se produzcan y procesen datos de forma continua y secuencial en un modelo de mensajería de publicación-suscripción.

En este tutorial, aprenderá a transmitir datos de Oracle Autonomous Database a dos destinos diferentes, es decir, Oracle Autonomous Database y el tema de Oracle Streams.

Objetivo

Arquitectura

Arquitectura

IMPORTANTE: esta arquitectura de ejemplo solo tiene fines de aprendizaje y, para mantenerla simple, estamos utilizando una subred PUBLIC, lo que significa que no se debe utilizar para entornos de producción ni para el procesamiento de datos reales.

Para entornos de producción, debe utilizar subredes PRIVADAS y aplicar todas las mejores prácticas de seguridad que se describen aquí: Mejores prácticas de seguridad de Oracle)

Requisitos

Tarea 1: Crear un nuevo compartimento

Tarea 2: Crear una nueva instancia de Oracle Autonomous Database denominada sourceDB

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en Autonomous Database.

  2. Seleccione el compartimento streaming creado en el paso anterior y haga clic en Crear Autonomous Database.

    T2_1

  3. Rellene la información como se muestra en las siguientes imágenes.

    T2_2

    T2_3

    T2_4

Nota: Anote la contraseña de administrador que ha creado.

Tarea 3: Crear una nueva instancia de Oracle Autonomous Database denominada targetDB

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en Autonomous Database.

  2. Seleccione el compartimento creado en el paso anterior streaming y haga clic en Crear Autonomous Database.

    T2_1

  3. Rellene la información como se muestra en las siguientes imágenes.

    T3_2

    T2_3

    T2_4

Nota: Anote la contraseña de administrador que ha creado.

Tarea 4: Crear un nuevo esquema y configuración para sourceDB

  1. Vaya a la página inicial sourceDB y haga clic en Acciones de base de datos para ejecutar comandos SQL en la base de datos y cargar datos.

    T4_1

  2. Descargue el archivo findata_schema.sql, copie el contenido en la ventana de ejecución de SQL y ejecútelo como SCRIPT.

    Nota: Asegúrese de definir una contraseña para el usuario FINDATA y tome nota de los pasos posteriores de este tutorial.

    T4_1

  3. Descargue el archivo enable_gg.sql, copie el contenido en la ventana de ejecución de SQL y ejecútelo como SCRIPT.

    Nota: Asegúrese de definir una contraseña para el usuario de GGADMIN y tome nota de los pasos posteriores de este tutorial.

    T4_1

Tarea 5: Carga de datos del archivo banks_export.sql en sourceDB

  1. Vaya a la página inicial sourceDB y haga clic en Acciones de base de datos para ejecutar comandos SQL en la base de datos y cargar datos.

    T4_1

  2. Descargue el archivo banks_export.sql, copie el contenido en la ventana de ejecución de SQL y ejecútelo como SCRIPT.

    T5_1

  3. Ejecute un COUNT simple en la tabla y compruebe el número de filas insertadas.

    T5_1

Tarea 6: Crear un nuevo esquema para targetDB y cargar datos

Tarea 7: cree la tabla de transacciones denominada OPERACOES en sourceDB

  1. Cree una nueva tabla denominada FINDATA.OPERACOES solo en sourceDB. Esta tabla será los datos de origen que Oracle GoldenGate for Big Data capturará y publicará en el tema OCI Streaming.

  2. Vaya a la página inicial sourceDB y haga clic en Acciones de base de datos para ejecutar comandos SQL en la base de datos y cargar datos.

    T4_1

  3. Descargue el archivo operacoes_table.sql, copie el contenido en la ventana de ejecución de SQL y ejecútelo como SCRIPT.

T7_1

Se trata de una tabla vacía que recibirá los datos aleatorios para iniciar eventos en Oracle GoldenGate.

Tarea 8: Creación de un pool de OCI Streaming

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Análisis e IA, haga clic en Flujo y, a continuación, seleccione Pool de Streaming.

  2. Haga clic en Crear pool de flujos y rellene la siguiente información.

    T8_1

    T8_1

  3. Haga clic en Crear.

  4. Haga clic en Configuración de conexión de Kafka y tome nota de la información relacionada con las cadenas de conexión.

    T8_1

Tarea 9: Generación de un TOKEN AUTH para acceder al pool de OCI Streaming

Puede acceder a OCI Streaming (API de Kafka) y a otros recursos de Oracle Cloud con un token de autenticación asociado a su usuario en Oracle Cloud Infrastructure Identity and Access Management (OCI IAM). En Configuración de conexión de Kafka, las cadenas de conexión SASL tienen un parámetro denominado contraseña y un valor AUTH_TOKEN, como se describe en la tarea anterior. Para permitir el acceso a OCI Streaming, vaya a la consola de OCI y cree un TOKEN AUTH.

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Identidad y seguridad, seleccione Identidad, Dominios, Dominio por defecto, Usuarios.

  2. Seleccione el mismo usuario que ha utilizado para crear los recursos anteriores, como Oracle Autonomous Database y Pool de flujos de OCI.

T9_1

T9_1

Nota: Anote AUTH TOKEN, lo necesitará para el siguiente paso.

Tarea 10: Crear conexiones de Oracle GoldenGate

Para conectarse a las bases de datos de origen y destino, Oracle GoldenGate necesita la configuración de conexión adecuada.

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en GoldenGate.

  2. Seleccione la opción Conexiones en el menú de la izquierda y haga clic en Crear conexión.

  3. Cree la conexión para sourceDB.

    T9_1

    T9_1

  4. Repita el proceso y cree la conexión para targetDB.

    T9_1

    T9_1

  5. Cree la conexión para su pool de OCI Streaming DefaultPool.

    T9_1

    T9_1

En este punto, debe tener las siguientes conexiones:

T10_1

Tarea 11: Crear despliegue de Oracle GoldenGate. Tipo: ORACLE

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en GoldenGate.

  2. Seleccione la opción Despliegues en el menú de la izquierda y haga clic en Crear despliegue.

    T10_1

    T10_1

Nota: Asegúrese de guardar la contraseña de oggadmin.

Tarea 12: Creación del despliegue de Oracle GoldenGate: tipo: BIGDATA

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en GoldenGate.

  2. Seleccione la opción Despliegues en el menú de la izquierda y haga clic en Crear despliegue.

    T12_1

    T12_1

    T12_1

  3. Una vez creados y activos los despliegues, continúe con el siguiente paso.

    T12_1

Tarea 13: Crear conexión entre despliegues de Oracle GoldenGate

Para que Oracle GoldenGate se comunique con Oracle GoldenGate for Big Data, necesitamos crear la conexión.

  1. Haga clic en el menú de navegación superior izquierdo, seleccione Oracle Database y, a continuación, haga clic en GoldenGate.

  2. Seleccione la opción Conexiones en el menú de la izquierda y haga clic en Crear conexión.

    T13_1

    T13_1

Las conexiones se deben parecer a las siguientes:

T13_1

Tarea 14: Adición de conexiones al despliegue de Oracle GoldenGate: GGForOracle

  1. Seleccione el despliegue GGForOracle; en el menú de la izquierda, haga clic en Conexiones asignadas y, a continuación, haga clic en Asignar conexión.

    T14_1

  2. Agregue la conexión para sourceDB.

    T14_1

  3. Agregue la conexión para targetDB.

    T14_1

  4. Agregue la conexión para GGOracletoGGBigData.

    T14_1

Debe tener las siguientes conexiones en el despliegue de GGForOracle:

T14_1

Tarea 15: Adición de conexiones al despliegue de Oracle GoldenGate: GGforBigData

  1. Seleccione el despliegue GGforBigData; en el menú de la izquierda, haga clic en Conexiones asignadas y, a continuación, haga clic en Asignar conexión.

    T15_1

    T15_1

Debe tener las siguientes conexiones en el despliegue de GGforBigData:

T15_1

Tarea 16: Configurar Oracle GoldenGate para GGforOracle

  1. Seleccione el despliegue GGForOracle y haga clic en Iniciar consola.

  2. Introduzca las credenciales oggadmin/yourpassword (la contraseña que creó durante la creación del despliegue).

    T16_1

  3. Haga clic en el menú de navegación, seleccione Configuración y, a continuación, haga clic en + para agregar una nueva credencial.

    T16_1

  4. Agregue las credenciales para el despliegue GGforBigData.

    Nota: Utilice el oggadmin que ha configurado durante la creación del despliegue.

    T16_1

  5. Haga clic para conectarse en sourceDB y, a continuación, haga clic en + en TRANDATA para agregar las tablas necesarias para la replicación.

    T16_1

  6. Agregue un nuevo registro para la tabla FINDATA.BANKS y haga clic en Enviar.

    T16_1

  7. Agregue un nuevo registro para la tabla FINDATA.OPERACOES y haga clic en Enviar.

    T16_1

  8. Para comprobar si se han agregado las tablas, haga clic en el filtro de FINDATA.*.

    T16_1

  9. Haga clic para conectarse en targetDB y, a continuación, haga clic en + en CHECKPOINT.

    T16_1

    T16_1

  10. Introduzca FINDATA.CHECKTABLE y haga clic en Enviar.

    T16_1

  11. A continuación, haga clic en la opción Visión general del menú izquierdo para incluir la nueva extracción.

    T16_1

    T16_1

    T16_1

    T16_1

    • Incluir los siguientes parámetros:

      EXTRACT EXT
      USERIDALIAS sourceDB DOMAIN OracleGoldenGate
      EXTTRAIL E1
      table FINDATA.operacoes;
      table FINDATA.banks;
      
      
  12. Haga clic en Acciones, Iniciar para iniciar la extracción.

    T16_1

  13. Ahora, cree una nueva replicación para aplicar la replicación a targetDB.

    T16_1

    T16_1

    T16_1

    • Incluir los siguientes parámetros:

      REPLICAT REP
      USERIDALIAS targetDB DOMAIN OracleGoldenGate
      MAP FINDATA.BANKS, TARGET FINDATA.BANKS;
      

    Nota: Solo se replica aquí la tabla FINDATA.BANKS. Esto se debe a que lo replicamos en targetDB. La otra tabla FINDATA.OPERACOES se replicará en el tema de OCI Streaming más adelante en este tutorial.

  14. Haga clic en Acción, Iniciar para iniciar la replicación.

    T16_1

    T16_1

  15. Compruebe si la replicación funciona para la tabla FINDATA.BANKS: vaya a la página de acciones de la base de datos para sourceDB e inserte un nuevo registro.

    INSERT INTO FINDATA.BANKS VALUES (999, 999, 'XXXXXX','TEST GOLDENGATE','TESTGG');
    COMMIT;
    

    T16_1

  16. Abra la página de acciones de la base de datos para targetDB y ejecute la siguiente consulta para comprobar si se ha creado el registro.

     select * from FINDATA.BANKS WHERE ID_SEQ = 999;
    
    

    T16_1

  17. Haga clic en el separador Servicio de distribución y agregue una nueva ruta para enviar datos a GGforBigData.

    T16_1

    T16_1

    T16_1

  18. Haga clic en Acción, Iniciar para iniciar la distribución del servicio.

    T16_1

    T16_1

Tarea 17: Configuración de Oracle GoldenGate for Big Data - GGforBigData

  1. Seleccione el despliegue GGforBigData y haga clic en Iniciar consola.

  2. Introduzca las credenciales oggadmin/yourpassword (la contraseña que creó durante la creación del despliegue).

    T17_1

  3. Haga clic en el separador Servicio de receptor y compruebe si ya está funcionando. Debe ser así, ya que ya hemos realizado todos los valores necesarios para la conexión entre ambos despliegues de Oracle GoldenGate.

    T17_2

  4. Ahora debemos configurar REPLICAT para publicar los datos en el tema OCI Streaming.

  5. Haga clic en el separador Servicio de administración.

    T17_1

    T17_1

    T17_1

    • Incluir los siguientes parámetros:

       REPLICAT STRM
       TARGETDB LIBFILE libggjava.so SET property=/u02/Deployment/etc/conf/ogg/STRM.properties
       MAP FINDATA.operacoes, TARGET FINDATA.operacoes , THREADRANGE(1-5);
      
      

      T17_1

    • Solo tiene que agregar el ${tableName} en esta línea y usar todos los valores por defecto proporcionados.

      T17_1

  6. Haga clic en Acción, Iniciar para iniciar la replicación.

    T17_1

    • Compruebe si el estado es verde:

      T17_1

Tarea 18: Verificar la replicación en el tema de OCI Streaming

  1. Vaya a la página de acciones de la base de datos para sourceDB e inserte algunas filas en la tabla FINDATA.OPERACOES.

    • Puede utilizar la secuencia de comandos load_random_data.sql para insertar datos aleatorios en la tabla FINDATA.OPERACOES.

    • Este script agregará 1.000 filas en FINDATA.OPERACOES y será suficiente para comprobar si la replicación funciona como se esperaba.

      T17_1

  2. Compruebe si hay algún registro en FINDATA.OPERACOES ejecutando el siguiente comando SQL.

    SELECT COUNT(*) FROM FINDATA.OPERACOES;
    

    T17_1

  3. Haga clic en el menú de navegación superior izquierdo, seleccione Análisis e IA, haga clic en Flujo y seleccione Flujo en el menú izquierdo.

  4. Compruebe si Oracle GoldenGate for Big Data crea automáticamente una nueva TOPIC.

    T17_1

  5. Intente consumir algunos mensajes y compruebe si están disponibles en el tema haciendo clic en Cargar mensajes.

    T17_1

Nota importante: Cargar mensajes solo funciona para los mensajes consumidos en el último MINUTE, esto significa que si tarda más tiempo después de ejecutar el script LOAD_RANDOM_DATA.SQL, no verá ningún resultado.

Para ver los resultados, vaya a la base de datos y vuelva a ejecutar el script LOAD_RANDOM_DATA.SQL y, a continuación, vuelva a Cargar mensajes y verá los mensajes.

Confirmaciones

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.

Para obtener documentación sobre los productos, visite Oracle Help Center.