Flink Dynamic Tables

Flink 的动态表是处理流数据的核心概念,它允许进行与批处理类似的SQL查询,产生连续查询。动态表是随时间变化的,与静态批处理表不同。连续查询在动态表上持续进行,更新结果以反映输入表的更改,类似于物化视图的即时维护。在流上定义表后,可以进行更新和追加查询,动态表可以通过插入、更新和删除持续修改,可以转换为仅追加流、回撤流或 Upsert 流。
摘要由CSDN通过智能技术生成

该翻译原文来之flink官网dynamic_tables.html

动态表

SQL和关系代数的设计还没有考虑涉及到流数据中。因此,在关系代数(和SQL)和流处理之间没有什么概念上的差异。

本页面讨论了这些差异,并解释了Flink如何在无界数据上实现与在有界数据上使用常规数据库引擎获得相同的语义。

在数据流上的关系查询

下表比较了关与输入数据、执行和输出结果相关的传统关系代数和流处理。

关系代数/SQL 流处理
关系(或表)是有界的(多个)元组集合。 流是元组的无限序列。
在批处理数据(例如关系数据库中的表)上执行的查询可以访问完整的输入数据。 流查询不能在启动时访问所有数据,必须“等待”数据的流入。
批处理的查询在它生成固定大小的结果后终止。 流查询会根据接收到的记录不断地更新它的结果,并且永远不会完成。

尽管有这些差异,使用关系查询和SQL处理流并非不可能的。高级关系数据库系统提供了一个称作物化视图的特性。物化视图被定义为SQL查询,就和普通的虚拟视图一样。与虚拟视图不同的是,物化视图缓存查询的结果,以便在访问视图时不需要计算查询。对于缓存的一个常见挑战是防止缓存提供过时的结果。当其定义查询的基本表被修改时,物化视图就会过时。即时视图维护是一种技术,它可以在基本表

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值