0

我正在测试 map reduce 的容错性。我发现如果我在其中一个任务节点中停止网络服务,分配给该节点的任务将被重新分配给其他节点。这是非常好的。

但是,如果映射器抛出异常(例如:错误访问某些本地资源),则 MR 作业将完成,而无需将失败的任务重新分配给其他节点。

有什么方法可以让 Hadoop 将失败的任务重新分配给其他节点?也许抛出一些指定的异常?

谢谢。

4

1 回答 1

0

任务从哪个方法抛出异常?

如果您从 TaskUmbilicalProtocol.done() 方法抛出异常,您可以尝试另一种方法。

您可以尝试覆盖 TaskUmbilicalProtocol.fatalError() 方法来引发异常。

于 2013-11-06T10:33:33.743 回答