la tormenta se utiliza principalmente para
Storm se utiliza para procesar datos en tiempo real.
Twitter ha abierto oficialmente Storm, un sistema informático en tiempo real distribuido y tolerante a fallos que está alojado en GitHub y sigue EclipsePublicLicense1.0. Storm es un sistema de procesamiento en tiempo real desarrollado por BackType, que ahora es propiedad de Twitter. La última versión en GitHub es Storm0.8.0, que está escrita básicamente en Clojure.
Storm proporciona un conjunto de primitivas comunes para la computación distribuida en tiempo real, que se pueden utilizar en el "procesamiento de flujo" para procesar mensajes y actualizar la base de datos en tiempo real. Esta es otra forma de gestionar colas y grupos de trabajadores.
Storm también se puede utilizar para "cálculo continuo", que realiza consultas continuas en el flujo de datos y envía los resultados al usuario en forma de flujo durante el cálculo. También se puede utilizar para "RPC distribuido" para ejecutar operaciones costosas en paralelo. Nathan Marz, ingeniero jefe de Storm, dijo:
Storm puede escribir y expandir fácilmente cálculos complejos en tiempo real en un grupo de computadoras. Storm se usa para el procesamiento en tiempo real, al igual que Hadoop se usa para el procesamiento por lotes. Storm garantiza que se procesarán todos los mensajes y es rápido: se pueden procesar millones de mensajes por segundo en un clúster pequeño. Aún mejor es que puedes utilizar cualquier lenguaje de programación para el desarrollo.
Es un modelo de programación sencillo. De manera similar a cómo MapReduce reduce la complejidad del procesamiento por lotes paralelo, Storm reduce la complejidad del procesamiento en tiempo real. Se pueden utilizar varios lenguajes de programación. Puedes utilizar varios lenguajes de programación además de Storm. Clojure, Java, Ruby y Python son compatibles de forma predeterminada. Para agregar soporte para otros idiomas, simplemente implemente un protocolo de comunicación Storm simple.