38.DataSet API之Fault Tolerance

flink 1.8

 

容错Fault Tolerance

Flink的容错机制在出现故障时恢复程序并继续执行它们。此类故障包括机器硬件故障,网络故障,瞬态程序故障等。

 

批处理容错(DataSet API)

DataSet API中程序的容错能力通过重试失败来实现。在作业被声明为失败之前,Flink重试执行的时间可以通过执行重试参数进行配置。如果值为0,则表示禁用容错机制。

若要启动容错,请将执行重试设置为大于零的值。一个常见的选择是值3。

这个例子展示了如何为Flink DataSet程序配置执行重试。

ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
env.setNumberOfExecutionRetries(3);

您还可以在以下位置定义执行重试次数和重试延迟的默认值flink-conf.yaml:

execution-retries.default: 3

 

Retry Delays重试延迟

执行重试可以配置延迟。延迟重试意味着在执行失败后,重新执行不会立即开始,而是在一定的延迟之后才开始。

当程序与外部系统交互时,延迟重试可能会有所帮助,例如,在尝试重新执行之前,连接或挂起的事务应该达到超时。

您可以为每个程序设置重试延迟,如下所示(示例显示DataStream API—DataSet API的工作原理类似):

ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
env.getConfig().setExecutionRetryDelay(5000); // 5000 milliseconds delay

您还可以在以下位置定义重试延迟的默认值flink-conf.yaml:

execution-retries.delay: 10 s

 

https://ci.apache.org/projects/flink/flink-docs-release-1.8/dev/batch/fault_tolerance.html

https://flink.sojb.cn/dev/batch/fault_tolerance.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值