加入收藏 | 设为首页 | 会员中心 | 我要投稿 好传媒网 (https://www.haochuanmei.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

Apache Flink 漫谈系列 - SQL概览

发布时间:2018-11-16 20:38:09 所属栏目:教程 来源:孙金城
导读:一、SQL简述 SQL是Structured Query Language的缩写,最初是由美国计算机科学家Donald D. Chamberlin和Raymond F. Boyce在20世纪70年代早期从 Early History of SQL 中了解关系模型后在IBM开发的。该版本最初称为[SEQUEL: A Structured English Query Lang

d. Result

Apache Flink 漫谈系列 - SQL概览

(3) Session

Seeeion 会话窗口 是没有固定大小的窗口,通过session的活跃度分组元素。不同于滚动窗口和滑动窗口,会话窗口不重叠,也没有固定的起止时间。一个会话窗口在一段时间内没有接收到元素时,即当出现非活跃间隙时关闭。一个会话窗口 分配器通过配置session gap来指定非活跃周期的时长.

a. 语义

Session 会话窗口语义如下所示:

Apache Flink 漫谈系列 - SQL概览

b. 语法

Seeeion 会话窗口对应语法如下:

  1. SELECT  
  2.     [gk],  
  3.     SESSION_START(timeCol, gap) AS winStart,   
  4.     SESSION_END(timeCol, gap) AS winEnd, 
  5.     agg1(col1), 
  6.      ...  
  7.     aggn(colN) 
  8. FROM Tab1 
  9. GROUP BY [gk], SESSION(timeCol, gap) 
  • [gk] 决定了流是Keyed还是/Non-Keyed;
  • SESSION_START - 窗口开始时间;
  • SESSION_END - 窗口结束时间;
  • timeCol - 是流表中表示时间字段;
  • gap - 是窗口数据非活跃周期的时长;

c. SQL 示例

(编辑:好传媒网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读