Skip to Content
Flink基础教程
book

Flink基础教程

by Ellen Friedman, Kostas Tzoumas
August 2018
Intermediate to advanced
98 pages
2h 11m
Chinese
Posts & Telecom Press
Content preview from Flink基础教程
44
4
束。举例来说,以下代码表示,如果用户处于非活动状态长达
5
分钟,则
认为会话结束。
stream.window(SessionWindows.withGap(Time.minutes(5))
4.4.4
 触发器
除了窗口之外,
Flink
还提供触发机制。触发器控制生成结果的时间,即何
时聚合窗口内容并将结果返回给用户。每一个默认窗口都有一个触发器。
例如,采用事件时间的时间窗口将在收到
watermark
时被触发。对于用户来
说,除了收到
watermark
时生成完整、准确的结果之外,也可以实现自定义
的触发器(例如每秒提供一次近似结果)。
4.4.5
 窗口的实现
Flink
内部,所有类型的窗口都由同一种机制实现。虽然实现细节对于普
通用户来说并不重要,但是仍然需要注意以下两点。
开窗机制与检查点机制(第
5
章将详细讨论)完全分离。这意味着窗口
时长不依赖于检查点间隔。事实上,窗口完全可以没有“时长”(比如上
文中的计数窗口和会话窗口的例子)。
高级用户可以直接用基本的开窗机制定义更复杂的窗口形式(如某种时
间窗口,它可以基于计数结果或某一条记录的值生成中间结果)。
4.5
 时空穿梭
流处理架构的一个核心能力是
时空穿梭
。如果所有的数据处理工作都由流
处理器完成,那么应用程序如何演进呢?我们如何处理历史数据,又如何
重新处理数据呢?(假设出于调试或者审计的目的,需要重新处理数据。)
如图
4-7
所示,时空穿梭意味着将数据流倒回至过去的某个时间,重新启动
处理程序,直到处理至当前时间为止。像
Kafka
MapR ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习流水线实战

机器学习流水线实战

Hannes Hapke, Catherine Nelson
Kafka权威指南(第2版)

Kafka权威指南(第2版)

Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty
Java并发编程实战

Java并发编程实战

Brian Goetz, Tim Peierls

Publisher Resources

ISBN: 9787115490063