El mundo real está formado por personas y cosas en constante movimiento, y las aplicaciones que crean los desarrolladores deben reflejar esta realidad. Imagínese un aeropuerto con miles de aviones y pasajeros que llegan y salen diariamente y que necesitan ser informados cuando ocurren retrasos u otros cambios lo más rápido posible. O una red de pagos que procesa millones de transacciones cada minuto. Si podemos registrar y procesar estos eventos a escala y en tiempo real, abrimos la puerta a nuevas e interesantes aplicaciones que pueden mejorar la eficiencia o impulsar mejores experiencias para los clientes. El procesamiento de flujo es el facilitador aquí. El procesamiento de flujo es una tecnología de procesamiento de datos que se utiliza para recopilar, almacenar y administrar flujos continuos de datos a medida que se producen o reciben. También llamado transmisión de eventos o procesamiento de eventos complejos (CEP), el procesamiento de transmisiones ha crecido rápidamente en los últimos años debido a su poderosa capacidad para simplificar las arquitecturas de datos, proporcionar información y análisis en tiempo real y reaccionar ante eventos urgentes a medida que ocurren. Apache Flink es el estándar de facto para aplicaciones de procesamiento de flujo. A menudo se usa junto con Apache Kafka, pero Flink es un motor de procesamiento de flujo independiente que se puede implementar de forma independiente. Resuelve muchos de los problemas difíciles asociados con el procesamiento de flujo distribuido, como la tolerancia a fallas, la entrega exactamente una vez, el alto rendimiento y la baja latencia. Es por eso que empresas como Uber y Netflix utilizan Flink para algunas de sus necesidades de datos en tiempo real más exigentes. Cuando pensamos en los casos de uso de procesamiento de flujo, podemos agruparlos en tres categorías, que exploraremos con los ejemplos siguientes: Basado en eventos aplicaciones Análisis en tiempo real Canalizaciones de transmisión de datos Aplicaciones impulsadas por eventos Las aplicaciones impulsadas por eventos observan o analizan flujos de datos y activan inmediatamente una alerta cuando ocurre un determinado evento o patrón. La detección de fraude se encuentra entre los escenarios más comunes, donde el procesamiento de secuencias se utiliza para analizar datos de transacciones y activar alertas basadas en actividades sospechosas, pero hay muchas más posibilidades. Por ejemplo, en el comercio minorista, a medida que las ventas en línea continúan aumentando, muchos compradores quieren asegúrese de si los artículos están en stock y sepa cuánto tiempo tardará en llegar la entrega antes de realizar un pedido. Si no tienen esta información o la entrega demora demasiado, a menudo acudirán a un sitio de la competencia para buscar una mejor oferta. Mostrar un artículo en stock y cancelar el pedido unas horas o días después porque el inventario no estaba sincronizado con el sistema de venta también es una pésima experiencia para los usuarios. Esto significa que los minoristas necesitan una vista en tiempo real de su inventario en todas las regiones para que, cuando lleguen nuevos pedidos, puedan determinar rápidamente si es necesario redirigir un pedido a un almacén más cercano y saber cuánto tiempo llevará. El tiempo es un componente crítico para estas aplicaciones basadas en eventos, y Flink es una solución ideal porque ofrece capacidades avanzadas de ventanas que brindan a los desarrolladores un control detallado sobre cómo avanza el tiempo y cómo se agrupan los datos para su procesamiento. Análisis en tiempo real También llamado análisis de transmisión , esta categoría implica el análisis de flujos de datos en tiempo real para generar conocimientos comerciales que informen las decisiones operativas o estratégicas. Las aplicaciones que utilizan análisis en tiempo real analizan los datos tan pronto como llegan de una transmisión y luego toman decisiones oportunas basadas en la información más reciente y actualizada. Por ejemplo, los servicios de entrega de alimentos en línea se han vuelto extremadamente populares y muchos servicios brindan a los propietarios de restaurantes un panel que les brinda información actualizada sobre los volúmenes de pedidos, los elementos populares del menú y la rapidez con la que se entregan los pedidos. Con esta información, los restaurantes pueden hacer ajustes sobre la marcha para aumentar las ventas y garantizar que sus clientes reciban los pedidos a tiempo. Los servicios de transmisión de medios son otro caso de uso popular para el análisis en tiempo real. Los grandes proveedores de streaming capturan miles de millones de datos sobre qué programas son populares y quién ve qué. El análisis en tiempo real permite a estos proveedores determinar qué películas deberían recomendar a un cliente a continuación, en función de los hábitos de visualización anteriores del individuo y los patrones de visualización de toda su base de clientes. Hacer estas recomendaciones seleccionadas en tiempo real permite a los usuarios obtener feeds que se ajustan casi instantáneamente en función de sus acciones. Flink es ideal para análisis en tiempo real porque está diseñado para procesar grandes cantidades de datos con una latencia muy baja, inferior a un segundo. Con consultas interactivas, un conjunto completo de funciones listas para usar y algunas funciones avanzadas de reconocimiento de patrones, permite algunas capacidades analíticas poderosas. Canalizaciones de datos de transmisión Las canalizaciones de datos de transmisión ingieren continuamente flujos de datos de aplicaciones y sistemas y realizan uniones, agregaciones y transformaciones para crear flujos de datos nuevos y enriquecidos de mayor valor. Los sistemas descendentes pueden consumir estos eventos para sus propios fines, comenzando desde el principio de la transmisión, el final de la transmisión o en cualquier punto intermedio. Los canales de transmisión de datos son útiles para migrar datos desde sistemas heredados, como un almacén de datos local tradicional, a plataformas más modernas basadas en la nube que admiten mejor aplicaciones basadas en eventos y análisis en tiempo real. Los sistemas heredados suelen contener datos de gran valor, pero no son compatibles con estos tipos de aplicaciones más modernas. Una canalización de datos en streaming puede conectar estas fuentes heredadas a nuevos puntos finales, lo que permite a los desarrolladores migrar gradualmente los datos a un almacén de datos en la nube más moderno y, al mismo tiempo, mantener intactas las operaciones actuales. Otro caso de uso importante para el procesamiento de flujos es el aprendizaje automático, que se utiliza cada vez más para hacer predicciones. sobre eventos del mundo real para que las empresas puedan ajustar sus estrategias en consecuencia. Los canales de aprendizaje automático pueden preparar datos y transmitirlos a un servicio de almacenamiento de objetos donde pueden entrenar modelos de aprendizaje automático. Una vez entrenados, los modelos se pueden actualizar de forma continua e incremental, refinando las recomendaciones de aprendizaje automático en tiempo real para adaptarse a los cambios en el mundo real. Luego, estos modelos se pueden invocar en tiempo real para impulsar escenarios de mantenimiento predictivo o detección de fraude, por ejemplo. El procesamiento de transmisiones también se puede utilizar para impulsar la IA generativa en tiempo real y ayudar a crear aplicaciones que aprovechen datos siempre actualizados con herramientas poderosas como ChatGPT, como se explica aquí. Reaccionar al mundo en tiempo real En cada caso, transmitir El procesamiento se utiliza para registrar eventos en el mundo real para que las empresas puedan tomar medidas o hacer predicciones que impulsarán mejores resultados comerciales. Gracias a la nube, ahora hay más sistemas conectados en línea y se generan más datos para brindar una imagen detallada del mundo y de lo que sucede en él. El procesamiento de flujo nos permite aprovechar esos datos para crear aplicaciones potentes que respondan y reaccionen a estos eventos cambiantes en tiempo real. Jean-Sebastien Brunner es director de gestión de productos de Confluent. —New Tech Forum ofrece un lugar para que los líderes tecnológicos, incluidos proveedores y otros contribuyentes externos, exploren y debatan la tecnología empresarial emergente con una profundidad y amplitud sin precedentes. La selección es subjetiva y se basa en nuestra elección de las tecnologías que creemos que son importantes y de mayor interés para los lectores de InfoWorld. InfoWorld no acepta garantías de marketing para su publicación y se reserva el derecho de editar todo el contenido aportado. Envíe todas sus consultas a doug_dineley@foundryco.com. Copyright © 2024 IDG Communications, Inc.

Source link