You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the past I've done pretty much what you have when dealing with this issue:
Use a fields grouping on the ID that we will use for joining.
Store the values we've received for a given ID until we have all of the ones we were expecting.
Process the values we stored when we have them all for a given ID.
One tip I can offer is that rather than hard-coding the list of inputs your bolt is expecting, you can actually just set that list to list(self.context['source->stream->grouping'].keys()) if you're using a version of Storm newer than 0.10.0. That will contain a list of all of the bolts that feed into the current one. You can see more details about what kind of info you can pull out of Bolt.contexthere.
Is there a standard method to manage the inputs from more than one bolt?
I have three bolts (A, B, C) that do something. Then there is bolt MERGE that should merge A, B and C emits and output merge result.
I'm using a RAM storage in MERGE bolt, and I waiting tuple from A, B, C. But is this the best way?
The text was updated successfully, but these errors were encountered: