1

我正在处理批处理问题。解决方案需要处理故障硬件。

有主节点(启动任务执行)和执行作业的工作节点。我知道工作节点的故障转移是如何工作的,但我找不到有关主节点故障转移的任何信息。每当启动任务的主节点失败时,整个任务都会被取消。

那么有没有办法完成任务处理呢?

您能否建议实现主节点故障转移的最佳方法?

亲切的问候,库巴

4

1 回答 1

2

每当您的主节点死亡时,基本上没有人来执行您的 MapReduce 任务的“减少”步骤。

有几种方法可以尝试缓解此问题:

  1. 使用 GridCheckpointSpi (GridTaskSession.saveCheckpoint(..) API) 保存中间检查点,然后当您的任务在节点崩溃后重新启动时,您可以检查是否保存了检查点并从它开始。

  2. 执行与 (1) 相同的操作,但使用数据网格 (GridCache API)。

  3. 如果您不关心“减少”,请让您的工作忽略“取消”调用,并让他们在完成后将结果保存在数据网格中。

- 最好的

于 2011-03-14T05:55:36.547 回答