Tune topology parallelism¶
Assuming that you are familiar with Storm parallelism concepts, pyleus replicates the same controls offered by Storm.
See also
For a deep dive into Storm parallelism, refer to Apache Storm Documentation.
- You can specify the number of workers per topology using the workers tag in the topology YAML definition file.
- You can set the initial number of executors per component with the parallelism_hint option.
- You can set the number of tasks per component (NOT per executors) via tasks.
name: parallel_topology
workers: 3
bolt:
name: my-parallel-bolt
module: parallel_topology.a_bolt
groupings:
- shuffle_grouping: a-spout
parallelism_hint: 3
tasks: 6
Warning
Pyleus is NOT thread-safe when it comes to emitting tuples. If you are using threads, please take this into account.
Tip
Storm is rather unhappy if you try to use threads in order to parallelize your topology components. Use the parallelism_hint tag instead.