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

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
主站蜘蛛池模板: 尤溪县| 察雅县| 鹤岗市| 高州市| 高安市| 新化县| 南靖县| 大丰市| 镇赉县| 沧源| 红河县| 平原县| 大安市| 天全县| 含山县| 木里| 德化县| 体育| 慈利县| 安泽县| 彭山县| 乐东| 南丰县| 仪陇县| 青河县| 宝山区| 连山| 白山市| 聂拉木县| 奉新县| 通河县| 越西县| 中宁县| 天柱县| 山阳县| 中西区| 红桥区| 新宾| 柞水县| 深圳市| 江都市|