flink其他特性

本文详细介绍了Flink的流处理特性,包括时间窗口和水位线的概念,如何处理乱序流,以及检查点和端到端一致性。水位线用于处理乱序事件,确保低延迟和结果正确性。窗口机制将流转换为微型批处理,支持滚动、滑动和会话窗口。检查点用于状态备份,保证在不暂停处理的前提下实现一致性。此外,讨论了幂等性和事务在Flink中的应用,确保数据的准确写入。
摘要由CSDN通过智能技术生成

时间和窗口

乱序流中的水位线

在这里插入图片描述
每隔一段时间,生成水位线=最大时间戳-延迟时间(2)
水位线向下游广播,确保下游窗口时间同步。
下游收到的来自上游的不同水位线,存储所有分区的水位线,取最小一个作为自己水位线。
所以 Flink 中的水位线,其实是流处理中对低延迟和结果正确性的一个权衡机制,而且把控制的权力交给了程序员,我们可以在代码中定义水位线的生成策略。其思想继承lamport时钟,功能上完成了exactly one

窗口

将流处理转化为微型批处理,以提升效率
(1)第一个数据时间戳为 2,判断之后创建第一个窗口[0, 10),并将 2 秒数据保存进去;
(2)后续数据依次到来,时间戳均在 [0, 10)范围内,所以全部保存进第一个窗口;
(3)11 秒数据到来,判断它不属于[0, 10)窗口,所以创建第二个窗口[10, 20),并将 11秒的数据保存进去。由于水位线设置延迟时间为 2 秒,所以现在的时钟是 9 秒,第一个窗口也没有到关闭时间;
(4)之后又有 9 秒数据到来,同样进入[0, 10)窗口中&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值