Flink on Hudi作业参数规则
Flink作业参数配置规范
Flink作业参数配置规范如下表所示。
参数名称 |
是否必填 |
参数描述 |
建议值 |
---|---|---|---|
-c |
必填 |
指定主类名。 |
根据实际情况而定 |
-ynm |
必填 |
Flink Yarn作业名称。 |
根据实际情况而定 |
execution.checkpointing.interval |
必填 |
Checkpoint触发间隔(毫秒),通过-yD添加,单位毫秒。 |
60000 |
execution.checkpointing.timeout |
必填 |
Checkpoint超时时长,通过-yD添加,默认值为30min。 |
30min |
parallelism.default |
选填 |
作业并行度,例如join算子,通过-yD添加,默认值为1。 |
根据实际情况而定 |
table.exec.state.ttl |
必填 |
Flink状态ttl(join ttl),通过-yD添加,默认值为0。 |
根据实际情况而定 |
Checkpoint间隔时长大于Checkpoint执行时长
checkpoint执行时长视checkpoint的数据量相关,数据量越大实行耗时越大
Checkpoint超时时长大于Checkpoint间隔时长
Checkpoint间隔时长是指多长时间触发一次Checkpoint操作,启动Checkpoint后执行时长超过Checkpoint超时时长会导致作业失败。
CDC场景下Hudi读写表需要开启Changelog
CDC场景下为保障Flink计算的准确,需要在Hudi表中保留+I、+U、-U、-D。所以同一个Hudi表在写入、流读时都需要开启Changelog。