Storm概念学习系列之并行度与如何提高storm的并行度

简介:

 

  对于storm来说,并行度的概念非常重要!大家一定要好好理解和消化。

    

  

  storm的并行度,可以简单的理解为多线程。

 


如何提高storm的并行度?
storm程序主要由spout和bolt组成的。spout和bolt在运行期间会生成task实例(new Spout或者new bolt)。

  那这些task实例是需要在线程(executor)里面运行的,而线程是需要在进程(worker)里面执行的。

 

 

 

 

 

  这些,都是可以在代码中控制的到。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1、所以想要提高storm的处理能力,最直接的就是提高executor线程的并行度。

2、提高worker的数量有什么好处呢?
可以间接提高storm的处理能力,因为一个worker进程的处理能力是有限的,如果线程太多了,是需要使用多个进程的,否则,多线程的效率也不高。

  假设一个进程里面运行10个线程效率最高,如果你把100个线程都在一个进程里面运行。

3、提高task的数量有什么好处呢?
因为线程内部不能并行处理,所以就算提高线程内部的task的数量,也不能提高storm的并行度。
它的好处是,可以方便后期执行storm的rebalance(弹性计算)
【因为当一个storm程序提交之后,这个程序中的task数目就不会再变了】

 

 

 

 

 

 

 

 

 

 

 

 

 


本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/7247412.html,如需转载请自行联系原作者


相关文章
|
1月前
|
消息中间件 分布式计算 大数据
大数据-123 - Flink 并行度 相关概念 全局、作业、算子、Slot并行度 Flink并行度设置与测试
大数据-123 - Flink 并行度 相关概念 全局、作业、算子、Slot并行度 Flink并行度设置与测试
99 0
|
4月前
|
消息中间件 存储 Kafka
实时计算 Flink版产品使用问题之有5个并行度,但只有其中1个并行度有数据,是什么导致的
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
流计算
这个问题可能是由于Flink的并行度设置导致的
这个问题可能是由于Flink的并行度设置导致的
57 3
|
6月前
|
关系型数据库 MySQL 流计算
在Flink中,并行度的设置是在JobGraph层面进行的
在Flink中,并行度的设置是在JobGraph层面进行的
54 2
|
分布式计算 Java 调度
21 MapTask并行度决定机制
21 MapTask并行度决定机制
64 0
|
SQL 负载均衡 算法
自适应批作业调度器:为 Flink 批作业自动推导并行度
1.15 版本新引入的调度器,在作业运行时根据每个算子需要处理的实际数据量来自动推导并行度。
自适应批作业调度器:为 Flink 批作业自动推导并行度
|
流计算 jstorm
Jstorm 反压(Backpressure)
限流控制,又称 反压 (backpressure), 这个概念现在在大数据中非常火爆, 尤其是最近Heron/Spark都实现了这个功能。其实在jstorm 0.9.0 时,底层netty的同步模式,即可做到限流控制, 即当接收端能处理多少tuple, 发送端才能发送多少tuple, 但随着大面积使
1182 0