数据湖探索 DLI-窗口函数:窗口表值函数(Windowing TVFs)

时间:2024-11-16 13:21:44

窗口表值函数(Windowing TVFs)

窗口是处理无限流的核心。窗口把流分割为有限大小的 “桶”,这样就可以在其之上进行计算。

Apache Flink 提供了如下 窗口表值函数(table-valued function, 缩写TVF)把表的数据划分到窗口中:

  • 滚动窗口
  • 滑动窗口
  • 累积窗口

逻辑上,每个元素可以应用于一个或多个窗口,这取决于所使用的窗口表值函数的类型。例如:滑动窗口可以把单个元素分配给多个窗口。

窗口表值函数 是 Flink 定义的多态表函数(Polymorphic Table Function,缩写PTF),PTF 是 SQL 2016 标准中的一种特殊的表函数,它可以把表作为一个参数。

窗口表值函数是分组函数(已废弃)的替代方案。窗口表值函数 更符合 SQL 标准,在支持基于窗口的复杂计算上也更强大。例如:窗口 TopN、窗口 Join。而分组窗口函数只支持窗口聚合。

更多介绍和使用请参考开源社区文档:窗口函数

support.huaweicloud.com/sqlref-flink-dli/dli_08_15070.html