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

Apache Flink 漫谈系列(11) - Temporal Table JOIN

发布时间:2018-12-12 18:12:54 所属栏目:教程 来源:孙金城
导读:一、什么是Temporal Table 在《Apache Flink 漫谈系列 - JOIN LATERAL》中提到了Temporal Table JOIN,本篇就向各人具体先容什么是Temporal Table JOIN。 在ANSI-SQL 2011 中提出了Temporal 的观念,Oracle,SQLServer,DB2等大的数据库厂商也先后实现了这

从成果上说Temporal Table JOIN和 LATERAL JOIN都是由左流一条数据获取多行数据,也就是单流驱动,而且都是被动查询,那么Temporal JOIN和LATERAL JOIN最本质的区别是什么呢?这里我们说最要害的一点是 State 的打点,LATERAL JOIN是一个TableFunction,不具备state的打点手段,数据不具备版本特征。而Temporal Table JOIN是一个具备版本信息的数据表。

2. Temporal Table JOIN vs 双流 JOIN

Temporal Table JOIN 和 双流 JOIN都可以打点State,那么他们的本质区别是什么? 那就是计较驱动的不同,Temporal Table JOIN是单边驱动,Temporal Table是被动的查询,而双流JOIN是双边驱动,双方都是主动的举办JOIN计较。

3. Temporal Table JOIN改造

小我私人以为Apache Flink的Temporal Table JOIN成果岂论在语法和语义上面都要遵循ANSI-SQL尺度,后期会敦促社区在Temporal Table上面支持ANSI-SQL的FOR SYSTEM_TIME AS OF尺度语法。改造后的处理赏罚逻辑表示图:

Apache Flink 漫谈系列(11) - Temporal Table JOIN

个中cache是一种机能思量的优化,具体内容待社区完美后再细述。

六、小结

本篇团结ANSI-SQL尺度和SQL Server对Temporal Table的支持来开篇,然后先容今朝Apache Flink对Temporal Table的支持近况,以代码示例和内部处理赏罚逻辑表示图的方法让各人直观体验Temporal Table JOIN的语法和语义。

关于点赞和评述

本系列文章不免有许多缺陷和不敷,真诚但愿读者对有收成的篇章给以点赞勉励,对有不敷的篇章给以反馈和提议,先行感激各人!

作者:孙金城,混名 金竹,今朝就职于阿里巴巴,自2015年以来一向投入于基于Apache Flink的阿里巴巴计较平台Blink的计划研发事变。

【本文为51CTO专栏作者“金竹”原创稿件,转载请接洽原作者】

(编辑:湖南网)

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

热点阅读