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

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
主站蜘蛛池模板: 阳春市| 遵义县| 唐河县| 柳江县| 房山区| 大化| 揭西县| 吴川市| 林州市| 达拉特旗| 泰兴市| 泽库县| 道孚县| 洮南市| 龙陵县| 睢宁县| 乐至县| 锦州市| 阳西县| 华容县| 新营市| 永泰县| 西吉县| 武夷山市| 甘泉县| 通州市| 垫江县| 广灵县| 江山市| 常德市| 临湘市| 湖北省| 鄂州市| 永城市| 库尔勒市| 平定县| 大厂| 贵南县| 昭通市| 安丘市| 宣城市|