Procesamiento de eventos complejos
¿Qué es el procesamiento de eventos complejos [CEP]?
El procesamiento de eventos complejos [CEP], también conocido como procesamiento de eventos, de flujos o de flujos de eventos, es el uso de tecnología para consultar datos antes de almacenarlos en una base de datos o, en algunos casos, sin que lleguen a almacenarse. El procesamiento de eventos complejos es una herramienta organizativa que ayuda a agregar una gran cantidad de información diversa y que identifica y analiza las relaciones de causa y efecto entre eventos en tiempo real. CEP compara continuamente los eventos entrantes con un patrón y proporciona información sobre lo que está ocurriendo, y te permite tomar acciones efectivas de forma proactiva.
Los eventos complejos se relacionan comúnmente con eventos importantes del negocio [como oportunidades o amenazas], lo que implica que se responderán en tiempo real o al menos en algo que se aproxime al tiempo real.
Principales áreas de aplicación para el procesamiento de eventos complejos [CEP]:
- El monitoreo de la actividad empresarial tiene como objetivo identificar problemas y oportunidades en etapas tempranas mediante el monitoreo de procesos empresariales y otros recursos críticos.
- Redes de sensores que se utilizan para el monitoreo de instalaciones industriales. Por lo general, se derivan de mediciones numéricas sin procesar [por ejemplo, temperatura, humo].
- Los datos de mercado como precios de acciones o materias primas; estos deben derivar de varios eventos y sus relaciones a través de CEP.
Las herramientas más comunes empleadas para el procesamiento de eventos complejos son las siguientes:
- Apache Spark Streaming, usado por Databricks
- Apache Flink, usado por Data Artisans
- Apache Samza utilizado por LinkedIn
- Apache Storm, usado por Twitter
- Hadoop/MapReduce
- Amazon Kinesis Analytics
- Microsoft Azure Stream Analytics, Stream Insight
- Servidor de procesamiento de eventos complejos de big data Software Interstage de Fujitsu
- IBM Streams, Operational Decision Manager [ODM]
- Oracle Stream Analytics y Stream Explore
El procesamiento de eventos complejos se emplea principalmente para abordar los siguientes requisitos: la latencia debe ser baja. Por lo general, se espera que sea inferior a unos pocos milisegundos, pero a veces podemos tener tan solo menos de un milisegundo entre el momento en que un evento llega y el momento en que se procesa. El volumen de eventos de entrada por segundo es bastante alto. Normalmente, podemos esperar cientos o incluso unos pocos miles de eventos por segundo. Los patrones de eventos que se detectan son complejos: como patrones basados en relaciones temporales o espaciales.