Storm Dinamico

12 views
Skip to first unread message

Angel Java Lopez

unread,
Feb 14, 2013, 6:40:56 AM2/14/13
to spain-scala...@googlegroups.com
Hola gente!

Como escribi hace unas semanas, estoy trabajando en mi tiempo libre implementando varias cosas en Node.js, en particular, un Storm-like. Tengo varias piezas en su lugar, pero viene ahora una pregunta.

He tratado de implementar las ideas de Storm, solamente con lo que esta publicado, sin probarlo directamente. Me gusta Node.js, porque me parece, a priori, mas facil de instalar, desplegar y probar que Storm (que tiene una pila de herramientas a instalar en cada nodo, y en su tiempo, vi que no tenia soporte de topologia distribuida en maquinas heterogeneas (algunas Windows, p.ej.)).

Ahora si, la pregunta:

Veo que en Storm, al describir la topologia, se pone la cantidad de workers de cada bolt, spout. Esos workers luego se crearan y ejecutaran en varias JVM, probablemente distribuidas.

Pero, nadie tiene necesidad de una cantidad dinamica de workers?
Pregunta relacionado: o Storm tiene eso, y no me di cuenta todavia?

Digo, mi caso de uso concreto es:

- Quiero un web crawler
- El bolt de download quiero que tenga una cantidad dinamica de workers (y tal vez otros bolt tambien)
- El web crawler lo lanzo, al principio, hay N maquinas corriendo la topologia
- A la noche, tengo mas maquinas libres, agrego M. Deberian ser aceptadas automaticamente, y darles algun bolt de download o demas
- A la maniana, quiero recuperar esas maquinas para otros trabajos, las saco de la topologia

Parece que nadie necesita eso, es asi?

Algo relacionado: tambien vi que Hadoop no parece tener una configuracion dinamica. Ahi lo veo mas justificado, pero es asi? Nadie tampoco tiene caso de uso dinamicos?

Me imagino respuestas:
- No, no necesitamos dinamico
- Hmmm, lo dinamico es tan dificil de manejar, que lo descartamos
- Hay pocos casos de uso que requieran eso
- Lo necesitamos como el pan de cada dia, pero las herramientas no lo soportan

Pregunto de curioso, pero tambien por dos razones:

- En anteriores proyectos (personales, o alguno profesional en .NET) siempre se me planteo como requerimiento el tema dinamico, y asi se implemento; solamente cuando fui a ver herramientas ya existentes vi que tienen configuraciones mas tendientes a: lo configuro todo al principio, y luego ya esta, queda asi, no hay tu tia.

- Lo que estoy haciendo en Node.js queda tan bonito si es dinamico ;-)

Gracias por cualquier info

Angel "Java" Lopez
@ajlopez
gh:ajlopez

Iván de Praadoo

unread,
Feb 25, 2013, 4:54:13 AM2/25/13
to spain-scala...@googlegroups.com
Hadoop si soporta configuración dinámica... nuevos nodos pueden ser añadidos o quitados en caliente. Esto tendría más sentido para la capa de MapReduce que para la del HDFS (añadir y quitar nodos HDFS de un día para otro provoca mucha carga de rebalanceo). 

En Elastic MapReduce, es posible añadir o quitar instancias con capacidad exclusivamente de computo (MapReduce). Incluso se puedn usar instancias Spot, es decir, se puede aprovechar cuando las instancias están baratas para añadir nodos con capacidad de procesamiento al cluster. Naturalmente, esto sólo tiene sentido si tus Jobs están limitados por CPU y no por IO. 

Iván


2013/2/14 Angel Java Lopez <ajlop...@gmail.com>
--
Has recibido este mensaje porque estás suscrito al grupo "spain-scalability-users" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a spain-scalability...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
 
 

Reply all
Reply to author
Forward
0 new messages