Flujo de datos

El streaming de datos es el proceso mediante el cual se procesa en tiempo casi real un flujo continuo de datos procedentes de una o varias fuentes. Dependiendo de la criticidad temporal o de las limitaciones de recursos del servidor, los flujos de datos pueden procesarse tras pequeños intervalos como microlotes.
Tres formas de partage des données
A continuación se exponen las tres grandes categorías de partage des données:
- Un flujo de datos, como una aplicación de seguimiento del precio de las acciones, crea un registro de datos cada vez que cambia el precio de las acciones. El registro se almacena en una cola que es leída inmediatamente por una aplicación suscrita a esa cola. De este modo, los suscriptores reciben los últimos precios de las acciones en cuanto cambian, con una latencia medida en milisegundos.
- Los datos por lotes se producen periódicamente, por ejemplo cada noche, como un nuevo archivo de datos. Los datos se procesan durante la noche. Un proceso al final del día en una sucursal bancaria produciría un diario de transacciones utilizado para calcular el efectivo en caja, que se traslada al saldo inicial del día siguiente.
- Incremental partage des données. En este caso, la aplicación receptora mantiene una copia de los datos anteriores que se actualiza para reflejar los cambios desde la actualización anterior. Esta forma de captura de datos modificados suele utilizarse para realizar copias de seguridad de datos en un sitio remoto o para mantener varias copias del conjunto de datos de origen.
Funciones
Los datos de flujos o eventos suelen tener las siguientes características:
- Los flujos de datos son continuos en el sentido de que un flujo de eventos está incompleto sin un principio o un final del conjunto de datos.
- Los flujos de datos pueden configurarse para ser resistentes, en el sentido de que cada evento se captura y almacena hasta que cada receptor haya acusado recibo.
- Los eventos de flujo de datos se marcan con una marca de tiempo para que puedan analizarse en una línea temporal. Por ejemplo, los datos de los sensores de una fábrica impulsan las operaciones posteriores en función de lo que se identifica en el flujo.
- Los flujos de datos pueden contener formatos mixtos como los flujos IoT. Los procesos de pasarela en el extremo pueden filtrar y estandarizar formatos.
- Los flujos de datos pueden tener lagunas y estar desordenados debido a las diferentes latencias de las redes de conexión.
- Los flujos pueden estar incompletos porque un evento puede sustituir a otro anterior antes de que el lector lo haya procesado. En casos de uso en tiempo real, como el seguimiento de las probabilidades de un casino o un evento deportivo, solo importa el último valor, por lo que los valores anteriores pueden descartarse inmediatamente.
Software de transmisión de datos
Existe un espectro de herramientas que se clasifican como procesadores de flujo:
- Muchos evolucionaron a partir de sistemas de procesamiento de mensajes como IBM MQ y Tibco Spotfire.
- Apache Spark proporciona una API de streaming en clusters Hadoop. Spark es muy adecuado para procesar datos en grupos de filas.
- Apache Kafka y Apache NiFi son servicios de código abierto basados en intermediarios que procesan eventos de registro en registro y funcionan con una latencia menor que Spark. Kafka utiliza un modelo de publicación-suscripción para conectar flujos de datos a las aplicaciones consumidoras.
- Las plataformas de intercambio de datos en tiempo real, como las de difusión de datos, utilizan sistemas que envían datos en flujo continuo a los clientes.
Ejemplos de flujo de datos
Las plataformas de negociación financiera la utilizan para ofrecer en tiempo real las variaciones de precios de acciones y divisas. Los servicios de información bursátil utilizan la transmisión de datos para compartir las noticias de las empresas en el momento en que se producen, lo que ayuda a los inversores institucionales y particulares a tomar decisiones comerciales más informadas.
Las empresas de juegos necesitan mantener el interés de los jugadores, por lo que utilizan los datos de streaming para saber qué equipos les interesan y adaptar su experiencia ofreciéndoles ofertas y promociones relevantes. También se utilizan para compartir cuotas y resultados de apuestas deportivas.
Los sistemas de seguridad utilizan sensores para detectar actividades sospechosas. Los sensores recogen secuencias de vídeo que se analizan, y se generan alertas cuando se observan amenazas potenciales.
La conducción autónoma utiliza sensores en tiempo real para controlar la velocidad del vehículo y los sistemas de seguridad. Las cámaras y los sensores sonar y lidar generan flujos de datos que el software de procesamiento de imágenes se encarga de analizar.
Los sistemas industriales utilizan sensores para supervisar los sistemas de fabricación con fines de control de calidad e impulsar la producción. Los flujos digitales permiten a los fabricantes supervisar a distancia la salud de sistemas como los motores de locomotoras para tomar decisiones oportunas de mantenimiento preventivo, pedir piezas y alterar el rendimiento para maximizar la vida útil del equipo.
Los sistemas de marketing utilizan datos de flujo de clics para analizar qué anuncios y páginas web ve un cliente potencial, de modo que los chatbots puedan ofrecer las tácticas de interacción en tiempo real más atractivas.
Los datos transmitidos por los sistemas de balizamiento de las tiendas informan de las ofertas por texto y correo electrónico en función de la ubicación del comprador.
Streaming de datos con soluciones Actian
Actian Data Platform cuenta con soporte integrado para la integración de datos en flujo.