官术网_书友最值得收藏!

Delving into the internals of Storm

Now that we know which physical components are present in a Storm cluster, let's understand what happens inside various Storm components when a topology is submitted. When we say topology submission, it means that we have submitted a distributed job to Storm Nimbus for execution over the cluster of supervisors. In this section, we will explain the various steps that are executed in various Storm components when a Storm topology is executed:

  • Topology is submitted on the Nimbus node.
  • Nimbus uploads the code jars on all the supervisors and instructs the supervisors to launch workers as per the NumWorker configuration or the TOPOLOGY_WORKERS configuration defined in Storm.
  • During the same duration all the Storm nodes (Nimbus and Supervisors) constantly co-ordinate with the Zookeeper clusters to maintain a log of workers and their activities.

As per the following figure, we have depicted the topology and distribution of the topology components, which are the same across clusters:

Delving into the internals of Storm

In our case, let's assume that our cluster constitutes of one Nimbus node, three Zookeepers in a Zookeeper cluster, and one supervisor node.

By default, we have four slots allocated to each supervisor, so four workers would be launched per Storm supervisor node unless the configuration is tweaked.

Let's assume that the depicted topology is allocated four workers, and it has two bolts each with a parallelism of two and one spout with a parallelism of four. So in total, we have eight tasks to be distributed across four workers.

So this is how the topology would be executed: two workers on each supervisor and two executors within each worker, as shown in the following figure:

Delving into the internals of Storm
主站蜘蛛池模板: 台北县| 青神县| 蓬莱市| 崇阳县| 五原县| 清远市| 喀什市| 丰城市| 乡宁县| 建始县| 大同市| 扶绥县| 阿图什市| 莱芜市| 永胜县| 广灵县| 正定县| 南城县| 临湘市| 沂水县| 鹤山市| 革吉县| 安宁市| 水富县| 咸宁市| 驻马店市| 合山市| 都昌县| 苏尼特右旗| 天台县| 瑞安市| 扎赉特旗| 石城县| 涿州市| 永靖县| 罗定市| 鄱阳县| 乌鲁木齐市| 阿拉尔市| 甘孜| 红原县|