Reputation: 86
I have a use case where I am using a local cache to maintain counters for certain ids. I did a fieldsGrouping("spout", new Fields("id"))
in Topology class.
Let's say id1
was always getting processed in processingBolt
on worker1
and id2
was always getting processed in processingBolt
on worker2
. If worker2
dies , will id2
start getting processed on worker1
?
Upvotes: 0
Views: 27
Reputation: 62350
Yes. Storm used the abstraction of tasks internally. If you use fieldsGrouping, each ID is mapped to a task, and task are executed by bolt instances.
If one bold instance fails, Storm will move the task to other bolt instances.
Upvotes: 1