flink
文章平均质量分 56
flink遇到的问题及解决
我要去学习了
搞过java、弄过数仓、写过实时。还需快速成长
展开
-
由于自己粗心,flink多并行度进行状态编程场景下出现null异常
问题描述由于自己粗心,在flink程序中设置了并行度后,对数据进行keyby 进行状态编程时候,keyby对象和状态对象不是同一个导致keyby后的对象划分的分区与状态对象不一致而取不到,导致null异常。分析:由于使用的全局变量,然后在代码中粗心没区分。源码跟进流程:HeapValueState.updatepublic void update(V value) { if (value == null) { this.clear(); } else {原创 2022-04-13 12:38:49 · 1823 阅读 · 3 评论 -
flink实时写入数据到 clickhouse 报错Could not initialize class ru.yandex.clickhouse.ClickHouseUtil
问题介绍:项目在使用clickhouse jdbc 将flink数据实时写入clickhouse时候,报错:Caused by: java.lang.NoClassDefFoundError: Could not initialize class ru.yandex.clickhouse.ClickHouseUtil解决:1.直接拿报错信息百度,没查到解决方法,只能自己在去想想办法了,最好的办法就是源码刚进去2.直接断点跟进源码 发现ClickHouseUtil 类下导入的包不存在,如图所示原创 2021-12-04 21:06:40 · 3679 阅读 · 0 评论 -
flink水印没有触发窗口结束计算问题详解
先说下水印的基本概念,对后面理解有帮助1.watermark特点1.watermark并不是event的一个属性, 而是一条特殊的数据记录(只用来触发窗口结束,不参与数据计算)2.watermark 必须单调递增,以确保任务的事件时间时钟在向前推进,而不是在后退(就算延迟数据到来了,比目前的水印小,他也不会倒退了,而是直接不赋值,return掉)在org.apache.flink.streaming.runtime.operators.TimestampsAndWatermarksOperator.原创 2021-11-20 15:54:50 · 2477 阅读 · 0 评论