一、背景
作为流批一体的计算框架,Flink不仅能够提供低延迟的流式数据处理,也能进行高吞吐的批处理。使用或者微调同一套代码即可实现,本章将通过具体案例给大家讲解。
二、案例
本案例使用的是阿里云 Flink 实时计算平台
准备工作:
- 源表 :dwd_log_cstm_adshow_day_inc
- 目标表:dwd_log_cstm_adshow_day_inc_tmp
- 创建批处理工作流。
- 注意变量名,具体可见 变量配置。
- 点击编辑节点 ,并添加相应节点。
- 最后开启工作流即可。
我要将源表数据离线同步到目标表中,SQL 如下:


提交并部署代码,然后在工作流中点击触发运行 > 手动执行:
进入工作流实例列表与详情 查看:
当状态变成"已完成"时,测试数据是否已经同步完成
在数据地图中查看到数据已同步过来,符合预期,接下来尝试数据回刷功能,选择时间间隔 之后点击确定 执行:
进入工作流实例列表与详情 查看,状态全部变更"已完成":
最后去看下数据:
三、总结
经过对Flink批处理功能测试,结果符合预期, 但目前有的 connector 只支持 insert into的方式,不支持覆写,所以在尝试多次回刷数据之前,必须得清理分区数据,否则会重复。