问题:
现有的分解storm拓扑结构的方法不能确保最优的性能。
拓扑结构需要手动预设拓扑结构所需的worker数量。实验验证了适当的worker数量设置会影响集群的性能。
问题-动机:
当一个拓扑结构提交到storm集群中,根据人工预先设定的应分解的worker数量,或者手动进行重新平衡(但如果不分析提交拓扑结构或者监测集群的状态,很难找到合适的worker参数。)worker设置不当会影响到集群的性能,所以要找到一个更好的方式来分解拓扑结构。
动机实验:为了发现合适的参数,做实验发现可能影响集群性能的因素:
调度器:默认调度器(轮询方式)
拓扑:wordcount
指标:平均处理时间
结论:worker数量和平均处理时间不成正比
1.当worker为1,平均处理时间很高,性能不好
2.当worker1增加到4,平均处理时间减少,性能不断提高。(原因:增加了用于处理数据的资源使用量,性能增加)????(只有当所有task放在一个物理机器的slot=worker,占用物理机器的所有的资源CPU,内存达到满之后,在增加其他物理机器的slot