Apache Kafka vs Middleware de integración (ESP, ETL, ESB)

Conozca las principales diferencias entre Apache Kafka (plataforma de streaming controlada por eventos) y Middleware de Integración como son ETL, ESB Y ESP.

ETL es un patrón utilizado para mover datos entre diferentes sistemas a través del procesamiento de lotes, mientras que ESB es utilizado en muchas empresas como la columna vertebral de integración entre cualquier tipo de microservicio, aplicación heredada o bien servicio en la nube para mover datos por medio de servicios web SOAP / REST u otras tecnologías. Esta procesamiento de secuencias por lo regular es agregado con su propio componente en la arquitectura empresarial para la correlación de diferentes eventos, implementar reglas contextuales y análisis con estado.
El uso de estos componentes puede traer desafíos y complejidades en el desarrollo y en las operaciones por lo que es necesario evaluar las necesidades de las empresas para ver cual componente se ajusta mejor a su estructura.

Apache Kafka 

Se encarga de crea canalizaciones de datos de streaming en tiempo real, así como aplicaciones que se adaptan a los flujos de datos. Combina mensajería, y procesamiento de transmisiones que permite el almacenamiento y análisis de datos históricos en tiempo real.

Sus funciones principales son:

  • Publicación y suscripción a secuencias de registros
  • Almacenamiento de flujos de registros en el origen
  • Proceso de flujo de registro en tiempo real

Middleware de integración

ETL (Extract, Transform and Load)

Es un proceso de integración de datos, se encarga de extraer y transformar los datos de varios orígenes para posteriormente cargarlos a un almacenamiento único.

Fases de un ETL:

1. Extracción.- Los datos se copian o exportan desde ubicaciones de origen a un área donde serán transformados. Los datos pueden ser exportados o copiados de cualquier origen estructurado o sin estructurar como: servidores SQL o NoSQL, sistemas CRM y ERP, archivos de texto y documentos, emails, páginas web, etc.

2. Trasformación.- Los datos sin procesar se preparan para que ser analizados, ajustándolos según las necesidades que el almacén de datos de destino requiera. Por lo regular estos datos son mandados a un procesamiento analítico en línea estructurado (OLAP) o una base de datos racional.
Los ajustes más comunes en los datos son:

  • Filtro, limpieza, des-duplicado, validación y autenticación de datos.
  • Eliminar, cifrar, ocultar o protección de datos.
  • Formato, cálculos, traducciones o resúmenes basados en los datos sin procesar.

3. Carga.- Los datos procesados son trasladados al almacén de datos de destino. Esto implica una carga inicial de todos los datos seguida de la carga periódica de cambios de datos incrementales y en menor frecuencia actualizaciones completas para borrar y reemplazar datos en el almacén.

ESB (Enterprise Service Bus)

Su funcionamiento se basa en segundo plano para facilitar la comunicación entre aplicaciones. Proporciona una infraestructura segura, escalable y rentable, permite el intercambio de datos en tiempo real entre muchos sistemas. Los datos de un sistema (proveedor de servicios), se pueden colocar en el “bus” como mensaje el cual se envía inmediatamente a un consumidor de servicios de datos.

ESB proporciona:

  • Mensajería
  • Servicios Web (SOAP y REST)
  • Transformación de datos (XML, JASON y XSLT)
  • Inteligencia de enrutamiento

ESP (Event Stream Processing)

Es un sistema que realiza cálculos en tiempo real sobre eventos “en movimiento”. La entrada consta de uno o más flujos de eventos que contienen datos sobre pedidos de clientes, reclamaciones de seguros, depósitos o retiros bancarios, información de interacciones con redes sociales y correo electrónico.

Comparativa

Concepto

ETLESBESP

Kafka

Real Time

No aplica.

ETL se utiliza para trasladar datos de manera única o periódica.

Aplica.

ESB es una opción efectiva cuando se requiere hacer operaciones continuas.

Batch

El ETL es la mejor herramienta cuando se trata de importaciones de datos de una sola carga.El ESB no es la mejor herramienta para poder mover datos de una sola vez.

Volumen

ETL puede manejar el movimiento de lotes masivos de datosESB trabaja de mejor manera moviendo menores cantidades de datos.

Objetivo

Poder apoyar en el movimiento de grandes cantidades de datos.Comunicarse entre procesos de aplicaciones individuales.

 

Visto: 34 veces

Deja un comentario