
Flink
Flink是专门为流数据计算设计的,能够用于比较多的实时计算,批处理计算等等地方
梦想成真那天
这个作者很懒,什么都没留下…
展开
-
记一次Flink checkpoint超时问题的排查
最近在做Flink实时自定义报表,在临近上线的时候,在测试的过程中,运行一段时间后,发现Flink的checkpoint经常会超时导致数据计算延迟甚至会导致组中Flink程序挂掉.由于这个程序在之前是运行了比较长的一段时间的,并没有报出问题,所一并没有怀疑到是程序本身的问题,最终经过修改测试,所以浪费了较多的时间,经过多方面测试,最终在查看代码的过程中,发现我每个窗口中存在一个查询SQL跟新配置...原创 2019-07-10 11:47:11 · 3900 阅读 · 2 评论 -
记一次Flink程序运行数天之后,某个TaskManger丢失的问题排查
2019-07-05T10:52:13,050 ERROR [flink-akka.remote.default-remote-dispatcher-5] org.apache.flink.runtime.rest.handler.legacy.TaskManagerLogHandler - Fetching TaskManager log failed.java.util.concurrent...原创 2019-07-10 11:30:06 · 3980 阅读 · 0 评论 -
FlinK运行一段时间后任务任务自己挂掉的问题排查
最近在做自定义实时报表,由于在前期测试Flink发现Flink拥有比较好的性能,并且天然支持窗口,所以在实时计算的时候,我们选择Flink在做计算框架.在所有的代码完成,代码准备上线的时候,发现Flink程序运行一段时间后,要么自己直接挂掉要么过一段时间,程序从checkpoint恢复.在排查日志的过程中,程序中并没有什么异常报出,最终排查每个taskManager的日志发现在其中一个TaskMa...原创 2019-07-10 11:17:16 · 16811 阅读 · 0 评论 -
Flink异常问题提总结
Flink在执行过程中突然异常退出Sink: time-kafka(1/1) switched to SCHEDULED04/29/2019 10:10:20 Job execution switched to status FAILING.org.apache.flink.runtime.jobmanager.scheduler.NoResourceAvailableExcepti...原创 2019-04-29 14:30:09 · 13591 阅读 · 1 评论 -
FlinkSQL读取kafka些消息,并且对消息计数实现
import com.alibaba.fastjson.JSONimport net.icsoc.report.CtiReportRealTime.Messageimport org.apache.flink.api.common.restartstrategy.RestartStrategiesimport org.apache.flink.api.common.typeinfo.Type...原创 2019-01-14 19:46:26 · 2554 阅读 · 0 评论 -
Redis分布式锁实现数据写入幂等性
程序简要设计Flink时间窗口计算将计算结果写入Druid.io的拓补图结构如下:Flink从kafka消费数据,进行分别进行计量和及时的计算,最终将计算结果写入到kafka,最终druid.io使用kafka-inex-service从kafka中拉取数据,将结果写入到Druid.io程序中的问题在程序运行的过程中,由于非常偶然的原因,Flink程序异常了,然后Flink从最近的che...原创 2018-12-19 17:52:17 · 3187 阅读 · 0 评论 -
Flink 框架下scala与java混合编程问题
最近在应用Flink做相关业务设计,使用scala与java的混合编程,遇到一些问题,在这里做个记录.问题1:Error:(85, 23) value foreach is not a member of java.util.ArrayList[com.icsoc.report.model.Message[_]] for (msg <- messages) {这...原创 2018-09-17 19:25:56 · 6784 阅读 · 1 评论 -
Flink 实现实时计数和按窗口计时功能程序设计
最近在开发程序的时候,有需要实时的计数处理,以及需要按照设计的窗口来补时长,在要求选用Flink处理后,程序大致架构设计入下: 其设计思路为:从kafk读取数据生成DataStream[Message]这样一个中间变量,然后将这个中间流分两个流,一个流用于实时计数,另一个流,按照互动窗口,按照EventTime将消息划分到不同的窗口,然后取出整个窗口的数据以及取出历史数据,形成完整窗口的数据,惊...原创 2018-09-17 18:35:06 · 6564 阅读 · 0 评论