Flink SQL Cookbook中有Chained (Event) Time Windows

该md文件举了两个例子,

前面一个例子是Chained Windows

后面一个例子是Non-Chained Windows

该md文件的前半部分图示如下:

上图中存在两个server_logs_window_5m

①Chained Windows

②Non-Chained Windows

所以②比①更加有计算上的效率,但是耦合性也更强。

上图图示中,三条红线就是所谓的Chained (Event) Time Windows

这个概念出自Ververcica公司的flink sql cookbook

Chained (Event) Time Windows的SQL距离

Chained (Event) Time Windows的SQL举例(对应上图中的3个红色箭头):

Chained (Event) Time Windows的数据流向 具体对应的SQL
server_logs_window_1m->server_logs_window_5m CREATE TEMPORARY VIEW server_logs_window_5m AS 
SELECT 
  TUMBLE_START(window_end, INTERVAL '5' MINUTE) AS window_start,
  TUMBLE_ROWTIME(window_end, INTERVAL '5' MINUTE) AS window_end,
  SUM(total_size) AS total_size,
  SUM(num_requests) AS num_requests
FROM server_logs_window_1m
GROUP BY 
  TUMBLE(window_end, INTERVAL '5' MINUTE);
server_logs_window_1m->avg_request_size_1m INSERT INTO avg_request_size_1m SELECT
  window_start,
  window_end, 
  total_size/num_requests AS avg_size
FROM server_logs_window_1m;
server_logs_window_5m->avg_request_size_5m INSERT INTO avg_request_size_5m SELECT
  window_start,
  window_end, 
  total_size/num_requests AS avg_size
FROM server_logs_window_5m;
 

Chained Windows与Non-Chained Windows的SQL写法对比

Windows类型 具体对应的SQL
Chained Windows CREATE TEMPORARY VIEW server_logs_window_5m AS 
SELECT 
  TUMBLE_START(window_end, INTERVAL '5' MINUTE) AS window_start,
  TUMBLE_ROWTIME(window_end, INTERVAL '5' MINUTE) AS window_end,
  SUM(total_size) AS total_size,
  SUM(num_requests) AS num_requests
FROM server_logs_window_1m
GROUP BY 
  TUMBLE(window_end, INTERVAL '5' MINUTE);
Non-Chained Windows CREATE TEMPORARY VIEW server_logs_window_5m AS 
SELECT 
  TUMBLE_START  (log_time, INTERVAL '5' MINUTE) AS window_start,
  TUMBLE_ROWTIME(log_time, INTERVAL '5' MINUTE) AS window_end,
  SUM(size) AS total_size,
  COUNT(*) AS num_requests
FROM server_logs
GROUP BY 
  TUMBLE(log_time, INTERVAL '5' MINUTE);

Flink SQL Client中的Chained (Event) Time Windows相关推荐

  1. Flink SQL Client中的session window图解

    flink sql cookbook中的sql语句是: SELECT userid,SESSION_START(log_time, INTERVAL '10' SECOND) AS session_b ...

  2. Flink SQL Client注册SCALA UDF完整流程

    UDF的完整maven工程與SQL https://github.com/appleyuchi/Flink_SQL_Client_UDF 完整操作步骤 ①mvn scala:compile packa ...

  3. Flink SQL Client方言切换与datagen->Hive(DDL形式+streaming形式)

    概述 本文是对[1]的完整复现,补充了[1]中缺失的大量细节. 切换方言 切换目标 Flink SQL Client命令 切换为hive SET table.sql-dialect=hive; 切换为 ...

  4. flink sql client讀取kafka數據的timestamp(DDL方式)

    实验目的 Kafka的数据能让Flink SQL Client读取到 本文是对[1]的详细记载 具体操作步骤 ①啓動hadoop集羣,離開安全模式 ②各个节点都关闭防火墙: service firew ...

  5. Flink SQL Client讀取csv中的數據(轉載+總結)

    根據官方文檔[2] Flink SQL啓動方式 啓動命令 (1)starting an embedded standalone process $FLINK_HOME/bin/sql-client.s ...

  6. Flink SQL Client注册JAVA UDF完整流程

    概述 听大佬说[1]里面有flink sql client注册udf的方法 去看了一眼,全是文字,闹心,索性琢磨了一下,记录下来. UDF的完整maven工程 https://github.com/a ...

  7. Flink SQL Client实现CDC实验

    概述 本文主要是對[7]中內容的復現 环境 组件 版本 Flink(HA) 1.12 Zookeeper 3.6.0 flink-sql-connector-mysql-cdc 1.1.1 Mysql ...

  8. Flink SQL Client读Kafka+流计算(DDL方式+代碼嵌入DDL/SQL方式)

    #################################################################################################### ...

  9. flink sql client读取hive时卡住

    问题复现如下: 查看$FLINK_HOME/log/flink-appleyuchi-sql-client-Desktop.log 2020-12-23 11:48:56,811 INFO  org. ...

最新文章

  1. linux定时任务crontab
  2. c++ string 字符串
  3. 亲身体验后,为你安利 3 个远程桌面控制软件~
  4. 用vs写python和c++需要哪些工具包_从运行效率与开发效率比较Python和C++
  5. ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第四天(非原创)
  6. python交互式方式、代码文件方式_涨见识了,在终端执行 Python 代码的 6 种方式
  7. 新手小白,做二次剪辑的必备工具,帮你快人一步
  8. 两平面直角坐标系之间的相互转换
  9. 【WPS】中插入“公式”后行距不正常的解决办法
  10. root工具android10,KingRoot安卓10root工具 5.4.0最新版
  11. 手把手教会你视频转文字怎么操作,快来get
  12. 能耗指标与数据中心规模-孙长青
  13. 利用pandas读取Excel文件数据
  14. 一步一步入门机器学习之一:Python(x,y)下载,安装,使用入门
  15. 看得见的数据结构Android版之数组表(视图篇)
  16. gimp基本操作和抠图操作视频教程
  17. Smali 语法解析——Hello World,android原生开发技术
  18. 中国智能锁产业发展动向及投资战略规划分析报告2021-2027年
  19. ENDC NEDC NGEN-DC是什么
  20. 为什么梯度方向一定是函数增大的方向

热门文章

  1. 12306春节高速抢票
  2. python06: 运算符. if
  3. Lucene6去掉了Filter但是可以用BooleanQuery实现Filter查询
  4. SSH——增删改的实现一
  5. [iOS]服务器使用php时多图片上传AFNetworking的设置
  6. PHP编辑器PhpStrom运行缓慢问题
  7. 浏览器阻止window.open的解决方案
  8. 转【FullPage.js 应用参数参考与简单调用】
  9. ANDROID自定义视图——onMeasure流程,MeasureSpec详解
  10. COJ 1163 乘法逆元的求解