Migración de datos a una cuenta de Azure Cosmos DB for Apache Cassandra mediante Striim

SE APLICA A: Cassandra

La imagen de Striim en Azure Marketplace ofrece un movimiento de datos continuo en tiempo real desde almacenes de datos y bases de datos a Azure. Durante el movimiento de los datos, puede realizar una desnormalización en línea, trasformar los datos y habilitar análisis en tiempo real y escenarios de creación de informes de datos. Es fácil empezar a trabajar con Striim para migrar continuamente datos empresariales a Azure Cosmos DB for Apache Cassandra. Azure proporciona una oferta de Marketplace que facilita la implementación de Striim y la migración de los datos a Azure Cosmos DB.

En este artículo se muestra cómo usar Striim para migrar datos desde una instancia de Oracle Database a una cuenta de Azure Cosmos DB for Apache Cassandra.

Requisitos previos

Implementación de la solución de Marketplace de Striim

  1. Inicie sesión en Azure Portal.

  2. Seleccione Crear un recurso y busque Striim en Azure Marketplace. Seleccione la primera opción y Crear.

    Búsqueda del elemento de Marketplace de Striim

  3. A continuación, escriba las propiedades de configuración de la instancia de Striim. El entorno de Striim se implementa en una máquina virtual. En el panel Básico, escriba el nombre de usuario de máquina virtual, Contraseña de máquina virtual (esta contraseña se usa para SSH en la máquina virtual). Seleccione su Suscripción, Grupo de recursos y Detalles de ubicación allí donde desee implementar Striim. Cuando haya terminado, seleccione Aceptar.

    Configuración de las opciones básicas para Striim

  4. En el panel Striim Cluster settings (Configuración del clúster de Striim), elija el tipo de implementación de Striim y el tamaño de la máquina virtual.

    Configuración Valor Descripción
    Tipo de implementación de Striim Independiente Striim se puede ejecutar en un tipo de implementación independiente o de clúster. El modo independiente implementará el servidor Striim en una sola máquina virtual, y lepermite seleccionar el tamaño de las máquinas virtuales dependiendo de su volumen de datos. El modo de clúster implementará el servidor Striim en dos o más máquinas virtuales con el tamaño seleccionado. Los entornos de clúster con más de dos nodos ofrecen conmutación por error y alta disponibilidad automáticas.

    En este tutorial, puede seleccionar la opción Independiente. Use el tamaño "Standard_F4s" predeterminado de la máquina virtual.
    Nombre del clúster de Striim <Nombre_clúster_Striim> Nombre del clúster de Striim.
    Contraseña del clúster de Striim <Contraseña_clúster_Striim> Contraseña para el clúster.

    Una vez que rellene el formulario, seleccione Aceptar para continuar.

  5. En el panel Striim access settings (Configuración de acceso de Striim), configure la Dirección IP pública (elija los valores predeterminados), Domain name for Striim (Nombre de dominio para Striim) y la Contraseña de administrador que desea usar para iniciar sesión en la interfaz de usuario de Striim. Configure una red virtual y una subred (elija los valores predeterminados). Tras rellenar los detalles, seleccione Aceptar para continuar.

    Configuración de acceso de Striim

  6. Azure validará la implementación y se asegurará de que todo esté bien; la validación tarda algunos minutos en completarse. Una vez completada la validación, seleccione Aceptar.

  7. Por último, revise las condiciones de uso y seleccione Crear para crear su instancia de Striim.

Configuración de la base de datos de origen

En esta sección, va a configurar la instancia de Oracle Database como origen del movimiento de datos. El servidor Striim viene con el controlador JDBC de Oracle que se usa para conectarse a Oracle. Para leer los cambios en su instancia de Oracle Database de origen, puede usar LogMiner o las API XStream. El controlador JDBC de Oracle tiene que estar presente en classpath de Java de Striim para leer, escribir o conservar datos de la instancia de Oracle Database.

Configuración de la base de datos de destino

En esta sección, configurará la cuenta de Azure Cosmos DB for Apache Cassandra como destino del movimiento de datos.

  1. Cree una cuenta de Azure Cosmos DB for Apache Cassandra mediante Azure Portal.

  2. Vaya al panel Explorador de datos en su cuenta de Azure Cosmos DB. Seleccione Nueva tabla para crear un nuevo contenedor. Supongamos que migra productos y datos de pedidos desde la instancia de Oracle Database a Azure Cosmos DB. Cree un nuevo espacio de claves llamado StriimDemo con un contenedor de pedidos. Aprovisione el contenedor con 1000 RU(en este ejemplo se usan 1000 RU, pero debe usar el rendimiento estimado para su carga de trabajo) y /ORDER_ID como clave principal. Estos valores variarán dependiendo de sus datos de origen.

    Creación de una cuenta de la API para Cassandra

Configuración de Oracle para el flujo de datos de Azure Cosmos DB

  1. Vaya a la instancia de Striim que implementó en Azure Portal. Seleccione el botón Conectar en la barra de menús superior y, en la pestaña SSH, copie la dirección URL en el campo Iniciar sesión con la cuenta local de VM.

    Obtención de la dirección URL de SSH

  2. Abra una nueva ventana de terminal y ejecute el comando SSH que copió desde Azure Portal. En este artículo, se usa el terminal en macOS. Puede seguir las instrucciones similares mediante un cliente SSH en una máquina Windows. Cuando se le solicite, escriba para continuar y la contraseña que ha establecido para la máquina virtual en el paso anterior.

    Conexión a la máquina virtual de Striim

  3. En la misma ventana de terminal, reinicie el servidor Striim ejecutando los siguientes comandos:

    systemctl stop striim-node
    systemctl stop striim-dbms
    systemctl start striim-dbms
    systemctl start striim-node
    
  4. Striim tardará un minuto en iniciarse. Si desea ver el estado, ejecute el siguiente comando:

    tail -f /opt/striim/logs/striim-node.log
    
  5. Ahora, vuelva a Azure y copie la dirección IP pública de su máquina virtual de Striim.

    Copia de la dirección IP de la máquina virtual de Striim

  6. Para ir a la interfaz de usuario web de Striim, abra una nueva pestaña en un explorador y copie la IP pública seguida de: 9080. Inicie sesión con el nombre de usuario administrador, junto con la contraseña de administrador que especificó en Azure Portal.

    Inicio de sesión en Striim

  7. Ahora llegará a la página principal de Striim. Hay tres paneles diferentes: Dashboards, Apps y SourcePreview. El panel Dashboards le permite mover datos en tiempo real y visualizarlos. En el panel Apps se incluyen sus canalizaciones de streaming de datos o flujos de datos. En el lado derecho de la página se encuentra SourcePreview, donde puede obtener una versión preliminar de sus datos antes de moverlos.

  8. Seleccione el panel Apps, por ahora nos centraremos en este panel. Existen numerosas aplicaciones de ejemplo que puede usar para aprender sobre Striim. De todas formas, en este artículo creará las suyas propias. Seleccione el botón Agregar aplicación en la esquina superior derecha.

    Incorporación de la aplicación Striim

  9. Hay diversas formas de crear aplicaciones Striim. Seleccione Empezar de cero para este escenario.

    Inicio de la aplicación desde cero

  10. Asigne un nombre descriptivo a su aplicación, algo como oraToCosmosDB, y seleccione Guardar.

    Creación de una aplicación

  11. Llegará a Flow Designer, donde puede arrastrar y colocar conectores listos para usar para crear sus aplicaciones de streaming. Escriba Oracle en la barra de búsqueda y arrastre y coloque el origen Oracle CDC en el lienzo de la aplicación.

    Origen Oracle CDC

  12. Escriba las propiedades de configuración de origen de su instancia de Oracle. El nombre de origen es simplemente una convención de nomenclatura para la aplicación Striim. Puede usar un nombre como, por ejemplo, src_onPremOracle. Indique también otros datos como el tipo de adaptador, la dirección URL de conexión, el nombre de usuario, la contraseña o el nombre de la tabla. Seleccione Guardar para continuar.

    Configuración de parámetros de origen

  13. Ahora, haga clic en el icono de onda del flujo para conectar la instancia de Azure Cosmos DB de destino.

    Conectar a destino

  14. Antes de configurar el destino, asegúrese de que ha agregado un certificado raíz de Baltimore al entorno de Java de Striim.

  15. Escriba las propiedades de configuración de su instancia de Azure Cosmos DB de destino y seleccione Guardar para continuar. Estos son los parámetros clave a tener en cuenta:

    • Adaptador: use DatabaseWriter. Cuando se escribe en Azure Cosmos DB for Apache Cassandra, se requiere DatabaseWriter. El controlador de Cassandra 3.6.0 está incluido en Striim. Si DatabaseWriter supera el número de RU aprovisionadas en el contenedor de Azure Cosmos DB, la aplicación se bloqueará.

    • Dirección URL de conexión : especifique la URL de conexión JDBC de Azure Cosmos DB. La dirección URL está en el formato jdbc:cassandra://<contactpoint>:10350/<databaseName>?SSL=true

    • Nombre de usuario: especifique el nombre de la cuenta de Azure Cosmos DB.

    • Contraseña: especifique la clave principal de su cuenta de Azure Cosmos DB.

    • Tablas: las tablas de destino deben tener claves principales y las claves principales no se pueden actualizar.

    Captura de pantalla que muestra las propiedades de destino configurables.

    Configuración de propiedades de destino

  16. Ahora, continuaremos y ejecutaremos la aplicación Striim. En la barra de menús superior, seleccione Creado y, a continuación, Implementar aplicación. En la ventana de implementación, puede especificar si desea ejecutar determinadas partes de su aplicación en partes específicas de su topología de implementación. Puesto que estamos realizando la ejecución en una topología de implementación simple mediante Azure, usaremos la opción predeterminada.

    Implementación de la aplicación

  17. Ahora, continuaremos y obtendremos la versión preliminar del flujo para ver el flujo de datos a través de Striim. Haga clic en el icono de onda y en el icono de ojo situado junto al mismo. Tras la implementación, puede obtener la versión preliminar del flujo para ver todo el flujo de datos. Seleccione el icono de onda y el ojo situado junto al mismo. Seleccione el botón Implementado en la barra de menús superior e Iniciar aplicación.

    Inicio de la aplicación

  18. Mediante el uso de un lector CDC (captura de datos modificados) , Striim recogerá solo los nuevos cambios en la base de datos. Si tiene datos que fluyen a través de sus tablas de origen, los verá. Sin embargo, puesto que esta es una tabla de ejemplo, el origen no se conecta a ninguna aplicación. Si usa un generador de datos de ejemplo, podrá insertar una cadena de eventos en su instancia de Oracle Database.

  19. Verá cómo fluyen los datos a través de la plataforma Striim. Striim también recoge todos los metadatos asociados a su tabla, lo que resulta útil a la hora de supervisar los datos y garantizar que estos vayan a parar al destino adecuado.

    Configuración de la canalización CDC

  20. Por último, iniciemos sesión en Azure y vayamos a la cuenta de Azure Cosmos DB. Actualice Data Explorer y verá que han llegado esos datos.

Mediante el uso de la solución de Striim en Azure, puede migrar datos continuamente a Azure Cosmos DB desde diversos orígenes como Oracle, Cassandra, MongoDB y algunos más. Para más información, visite el sitio web de Striim, descargue una prueba gratuita de 30 días de Striim y, para ver si hay algún problema al configurar la ruta de migración con Striim, envíe una solicitud de soporte técnico.

Pasos siguientes