gpt4 book ai didi

hadoop - hadoop jobtracker如何处理长时间运行的任务

转载 作者:可可西里 更新时间:2023-11-01 16:10:38 24 4
gpt4 key购买 nike

我是 Hadoop 世界的新手,最近我被一个面试问题卡住了。

Q-如果作业跟踪器发现任何特定的任务跟踪器需要很长时间才能完成分配给它的任务,作业跟踪器是否会暂停该任务跟踪器的执行并分配新的相同作业的执行另一个任务跟踪器或者它会做什么?

没有网络错误,子 JVM 正在正常执行。Job-Tracker 是否允许 Task-Tracker 永远执行该作业?

感谢。

最佳答案

如果启用了推测执行,则相同的任务将被分配给另一个 tasktracker 而不会杀死现有任务。第一个完成的任务的输出将被获取,另一个将被杀死。默认情况下这是启用的。有两个属性定义了这种性质

在新的 API 中,属性是

mapreduce.map.speculative
mapreduce.reduce.speculative

在旧 API 中

mapred.map.tasks.speculative.execution
mapred.reduce.tasks.speculative.execution

如果推测执行是错误的,并且如果任务运行正常且进度正常,则 jobtracker 将允许任务继续。

如果任务没有进行,它将等待属性 mapreduce.task.timeout 定义的时间,然后终止任务。它将在其他节点中重试相同的任务。重试次数由属性 mapreduce.map.maxattemptsmapreduce.reduce.maxattempts 定义。

关于hadoop - hadoop jobtracker如何处理长时间运行的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32269916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com