Como ya hemos comentado Storm es un framework para procesar streams de forma distribuida basado en una topología previamente definida.

Trident nos facilita el procesado de los flujos de datos sobre Storm y permite persistir el resultado para poder recuperarlo posteriormente.

Ahora vamos a utilizar el ejemplo de Consultas DRPC con Trident para incorporarle lo necesario para guardar la cuenta de las palabras en MongoDB. Para ello vamos a utilizar 2 clases desarrolladas por Sjoerd Mulder: MongoState.java y  MongoValueResult.java

Incorporando a nuestro proyecto (pom.xml) TridentWordCountMongoDB.java las clases MongoState.javaMongoValueResult.java y Word.java de Sjoerd conseguimos la persistencia de los estados en MongoDB

TridentWordCountMongoDB

Ejecutando la clase la consola nos muestra::

Nº de ocurrencias de Es: [[8]]
Nº de ocurrencias de una: [[12]]
Nº de ocurrencias de novela: [[6]]
Nº de ocurrencias de primera:[[4]]

Y en MongoDB tenemos:

MongoDBResult

Anuncios