If you see practically number of workers should always be less than or equal to the number of tasks. This is not only valid for Comp sci but for any field. If we have more no. of workers than tasks available then we are just wasting our resources. That is we are not using our resources optimally. So in most cases there should at least be one task or more running on an executor. Now, consider an executor which normalizes a sentence into words, now when sentence arrives the executor normalizes that sentence after it is finished it is ready to receive another tuple. With storm there could be several executors doing the same job with different sentences simultaneously but that doesn't mean we have to have as many no. of executors as there are sentences. I hope this makes sense.
On Mon, Feb 17, 2014 at 11:11 PM, Simon Cooper < [email protected]> wrote: > I've been looking at the parallelism of a storm topology. In what > situations is it useful to have more than one task running on the same > executor? An executor is a thread, so if there's several tasks on that > executor only one task can run at a time. So why would you want more than > one task on the same thread, if only one can run at once? > > > > SimonC > -- *Abhishek Bhattacharjee* *Pune Institute of Computer Technology*
