Storm es un framework para procesar grandes volúmenes de datos en tiempo real. Puede ejecutarse en modo local para desarrollo o en un cluster remoto para producción. Un cluster Storm está gestionado por un nodo maestro llamado Nimbus que se encarga de distribuir el código de las topologías en los nodos workers y asignar los recursos. Las topologías definen el flujo de datos entre spouts y bolts de forma paralela para procesar grandes volúmenes de datos.