在Flink流式传输期间删除插槽后是否可以恢复

时间:2019-12-09 15:25:20

标签: apache-flink flink-streaming

我有一个独立的群集,其中有一个带有1小时事件时间窗口的Flink流作业。运行2-3小时后,该作业死于“ org.apache.flink.util.FlinkException:分配的插槽已删除...”异常。

当我的窗户只有15分钟时,这项工作进展顺利。

丢失插槽后如何恢复工作? 是否可以在多个插槽上运行相同的计算以防止出现此错误? 我应该增加任何超时时间吗?如果是这样的话?

1 个答案:

答案 0 :(得分:0)

Flink流作业从checkpoint的故障中恢复。如果检查点已外部化,例如在S3中。您可以手动或要求Flink从最近的检查点自动恢复。

取决于您的上游邮件排队服务,您可能会收到重复的邮件。因此,使您的摄取具有幂等性。

此外,插槽移除故障可能是各种故障的征兆。

  • 底层硬件
  • 网络
  • 记忆压力

在已删除的任务管理器日志中,您看到什么?