【发布时间】:2015-07-22 07:25:57
【问题描述】:
将 1 个执行器分配给 Query Normalizer 的拓扑
将 4 个执行器分配给查询规范器的拓扑
最初,我运行我的拓扑时,只有 1 个执行程序分配给 QueryNormalizer。 执行延迟为8.952,进程延迟为12.857。
为了加快速度,我将 QueryNormalizer 中的执行器数量更改为 4。执行延迟 更改为 197.616 和 进程延迟到59.132。
根据执行延迟的定义——一个元组在执行方法中花费的平均时间。执行方法可能会在不发送元组的 Ack 的情况下完成。
所以,我的理解是,如果我增加执行器的数量,它应该会很低。因为并行度应该随着执行器的增加而增加。
我是不是误解了什么?
此外,发出、传输和执行的字段之间存在巨大差异。这正常吗?
另外,进程延迟是否应该总是低于执行延迟?
上面显示的哪些拓扑在性能方面更好?另外,看到螺栓数据,我应该如何确定哪个拓扑比另一个运行得更好?
【问题讨论】:
标签: performance parallel-processing apache-storm metrics