在this答案中写了一句话:“同一个作业在同一个数据上运行但在一个20节点集群上运行,然后是一个200节点集群。总体而言,两者都将使用相同数量的CPU时间集群“有人可以解释一下吗?
我使用time
命令来测量实时。有时我获得的cpu时间(hadoop计数器)比实际时间长,反之亦然。我知道实时测量的实际时钟时间可能大于或等于user+sys
。
我还没有得到hadoop中的总CPU时间测量值。 关于编写时间命令this的答案,最好使用user + sys作为基准测试。
total cpu time taken by process = user+sys
,它应该与hadoop作业计数器的总CPU时间相同。但是我得到了不同的结果。 请注意: 在apache hive基准测试中,他们已经考虑了实时,但它也会受到其他进程的影响。所以我不能考虑实时。
答案 0 :(得分:1)
same job running over the same data but on one 20 node cluster, then a 200 node cluster.Overall, the same amount of CPU time will be used on both clusters
这意味着如果作业在20节点群集上花费N
小时,在200节点群集上花费M
小时,那么20 * N
应该等于M * 200
}
实时应该是您的选择,但如上所述,此值可能会相应更改,因此您应至少尝试3次,并将平均值计算为最终结果。