我们将Storm配置在单个节点开发服务器中,大多数配置设置为默认(非本地模式)。 有暴风雨,管理员和工人只运行在单个节点和UI也配置。在单个节点中执行风暴的问题
AFAIK并行和配置不同于拓扑到拓扑。 我认为找到正确的并行性和配置只是通过试错法。
因此,为了找到最好的并行性,我们已经开始使用单个节点中的各种配置来测试我们的Storm拓扑。
奇怪的结果是出人意料:
我们的拓扑从HDFS目录处理XML文件流。 有一个喷嘴(平行度总是1)和四个螺栓。
- 单身职工
无论拓扑结构并行,我们得到了几乎相同的性能结果(数据处理的速度)
- 多工人
无论拓扑结构并行我们获得与单个工作人员相似的表现,直到某个时候(大部分情况下是10分钟)。
但之后,完整的拓扑重新启动,没有任何错误跟踪。
我们观察到,无论20分钟处理单个工人的数据花费90分钟,5个工人具有相同的并行性。 同样拓扑结构已经有5次重启7次。 而CPU使用率相对较高。 (其他人也都面临这种拓扑重启问题http://search-hadoop.com/m/LrAq5ZWeaU,但无人接听)
测试许多配置后,我们发现,用更少的不平行度(2个或3个实例每个螺栓)的单身职工工作比高并行或更多更好没有工人。
理想情况下,Storm拓扑的性能应该更好,没有工人/并行性。
显然这条规则在这里并不好。
为什么我们不能在一个节点中设置多于一个工人?
在单个节点中可以运行的最大工作数是多少?
什么是需要缩放性能的Storm配置更改? (我试过nimbus.childopts和worker.childopts)
您正在测试Storm的机器的配置是什么?你是否得到了你给出的链接相同的错误? – Shams 2015-03-13 19:00:00
我不明白你的观点。当然,你可以在一个节点中定义多个工作者(一个风暴硬件)。每个节点使用两个或两个以上的工人(如果一个工人死亡,还剩下一个工人,所以我试图避免风暴集群中的“死亡”硬件,因为应该还有一个工人仍在工作)。 – zenbeni 2015-03-16 15:23:38