实践数据湖iceberg 第三十一课 使用github的flink-streaming-platform-web工具,管理flink任务流,测试cdc重启场景

系列文章目录

实践数据湖iceberg 第一课 入门
实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式
实践数据湖iceberg 第三课 在sqlclient中,以sql方式从kafka读数据到iceberg
实践数据湖iceberg 第四课 在sqlclient中,以sql方式从kafka读数据到iceberg(升级版本到flink1.12.7)
实践数据湖iceberg 第五课 hive catalog特点
实践数据湖iceberg 第六课 从kafka写入到iceberg失败问题 解决
实践数据湖iceberg 第七课 实时写入到iceberg
实践数据湖iceberg 第八课 hive与iceberg集成
实践数据湖iceberg 第九课 合并小文件
实践数据湖iceberg 第十课 快照删除
实践数据湖iceberg 第十一课 测试分区表完整流程(造数、建表、合并、删快照)
实践数据湖iceberg 第十二课 catalog是什么
实践数据湖iceberg 第十三课 metadata比数据文件大很多倍的问题
实践数据湖iceberg 第十四课 元数据合并(解决元数据随时间增加而元数据膨胀的问题)
实践数据湖iceberg 第十五课 spark安装与集成iceberg(jersey包冲突)
实践数据湖iceberg 第十六课 通过spark3打开iceberg的认知之门
实践数据湖iceberg 第十七课 hadoop2.7,spark3 on yarn运行iceberg配置
实践数据湖iceberg 第十八课 多种客户端与iceberg交互启动命令(常用命令)
实践数据湖iceberg 第十九课 flink count iceberg,无结果问题
实践数据湖iceberg 第二十课 flink + iceberg CDC场景(版本问题,测试失败)
实践数据湖iceberg 第二十一课 flink1.13.5 + iceberg0.131 CDC(测试成功INSERT,变更操作失败)
实践数据湖iceberg 第二十二课 flink1.13.5 + iceberg0.131 CDC(CRUD测试成功)
实践数据湖iceberg 第二十三课 flink-sql从checkpoint重启
实践数据湖iceberg 第二十四课 iceberg元数据详细解析
实践数据湖iceberg 第二十五课 后台运行flink sql 增删改的效果
实践数据湖iceberg 第二十六课 checkpoint设置方法
实践数据湖iceberg 第二十七课 flink cdc 测试程序故障重启:能从上次checkpoint点继续工作
实践数据湖iceberg 第二十八课 把公有仓库上不存在的包部署到本地仓库
实践数据湖iceberg 第二十九课 如何优雅高效获取flink的jobId
实践数据湖iceberg 第三十课 mysql->iceberg,不同客户端有时区问题
实践数据湖iceberg 第三十一课 使用github的flink-streaming-platform-web工具,管理flink任务流,测试cdc重启场景
实践数据湖iceberg 更多的内容目录


前言

flink重启,需要从checkpoint恢复。涉及到任务工程化管理,自研一套这种工具,很耗时,对小公司来说,吃力不讨好,所有寻找了个开源方案, 测试flink-streaming-platform-web ,支持sql,jar,各种集群模式提交,亲测可用


一、使用开源组件flink-streaming-platform-web ,管理flink任务

flink-streaming-platform-web 使用开源组件,管理flink任务
源码地址: https://github.com/zhp8341/flink-streaming-platform-web
相关使用说明:官网写得很详细,请查看官网

二、测试flink-streaming-platform-web 在重启时,从checkpoint恢复

核心逻辑: 从mysql读到iceberg

1.代码,从mysql读到iceberg

  1. mysql原始数据
    在这里插入图片描述
    3.启动程序
    4.查看iceberg表的结果,发现同步了。
    在这里插入图片描述
    5.测试新增的变化数据

加一条id=5,和 update一条数据,如下

INSERT INTO `stock_basic` VALUES ('5', '000007.SZ', '000007', '*ST全新', '深圳', '酒店餐饮', '19920413', null);

update stock_basic set actural_controller='me me me' where i='0';

查iceberg,发现捕捉到变更了:
在这里插入图片描述

6.重启,看看能否从checkpoint恢复

在这里插入图片描述
点击恢复,跳出如下对话:
在这里插入图片描述
点击恢复,刷新flink主页面,发现任务正常启动:
在这里插入图片描述

  1. 到sink表查看数据,看看手否重复消费:
    发现没有重复。
    在这里插入图片描述

  2. 重新测试,停止程序后,写几条数据进去,看看从checkpoint恢复后,是否捕捉到变更数据

步骤1:记录savePoint
步骤2:停止程序
步骤3:insert update delete变更

INSERT INTO `stock_basic` VALUES ('6', '000008.SZ', '000008', '神州高铁', '北京', '运输设备', '19920507', '国家开发投资集团有限公司');
update stock_basic set actural_controller='汉武帝' where i='1';
delete from stock_basic where i='0';

在这里插入图片描述

步骤4: 恢复程序
在这里插入图片描述
恢复后,等一个checkpoint的时间,到spark-sql查,发现,捕捉到变更
在这里插入图片描述

总结

这个flink-streaming-platform-web 确实好用! 先用来玩玩

猜你喜欢

转载自blog.csdn.net/spark_dev/article/details/124469641