踩坑记 | Flink 事件时间语义下数据乱序丢数踩坑

本文详述了一种上游Flink任务使用处理时间语义,下游任务使用事件时间语义时,因上游故障重启导致下游数据乱序和丢数的问题。提供了解决方案,即下游任务保持处理时间语义,但产出数据的时间戳为事件时间戳,以确保数据正确聚合。
摘要由CSDN通过智能技术生成

本文详细介绍了在上游使用处理时间语义的 flink 任务出现故障后,重启消费大量积压在上游的数据并产出至下游数据乱序特别严重时,下游 flink 任务使用事件时间语义时遇到的大量丢数问题以及相关的解决方案。

本文分为以下几个部分:

  • 「1.本次踩坑的应用场景」

  • 「2.应用场景中发生的丢数故障分析」

  • 「3.待修复的故障点」

  • 「4.丢数故障解决方案及原理」

  • 「5.总结」

应用场景

应用场景如下:

  • 「flink 任务 A」 以「处理时间」语义做过滤产出新增 xx 明细数据至 「Kafka Y」

  • 「flink 任务 B」 以「事件时间」语义消费 「Kafka Y」 做窗口聚合操作产出分钟级别聚合指标至 「Kafka Z」

  • 「Kafka Z」 实时导入至 「Druid」 以做即时 OLAP 分析,并且展示在 BI 应用看板

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值