详解 Flink Table API 和 Flink SQL 之流处理中的表

一、关系型表和流处理表对比

关系型表/SQL 流处理表
处理的数据对象 字段元组的有界集合 字段元组的无限序列
查询(Query)对数据的访问 可以访问到完整的数据输入 无法访问所有数据,必须持续"等待"流式输入
查询终止条件 生成固定大小的结果集后终止 永不停止,根据持续收到的数据不断更新查询结果

二、动态表

  • 当流中有新数据到来,初始的表中会插入一行;而基于这个表定义的 SQL 查询,就应该在之前的基础上更新结果。这样得到的表就会不断地动态变化,被称为"动态表"(Dynamic Tables)
  • 动态表是 Flink 在 T able API 和 SQL 中的核心概念,它为流数据处理提供了表和 SQL 支持。关系型表一般用来做批处理,面向的是固定的数据集,可以认为是"静态表";而动态表则完全不同,它里面的数据会随时间变化

三、持续查询

  • 动态表可以像静态的批处理表一样进行查询操作。由于数据在不断变化,因此基于它定义的 SQL 查询也不可能执行一次就得到最终结果,所以对动态表的查询就永远不会停止,一直在随着新数据的到来而继续执行。这样的查询就被称作"持续查询"(Continuous Query)

  • 动态表查询的处理过程:

    • 流(stream)被转换为动态表(dynamic table)

    • 对动态表进行持续查询(continuous query),生成新的动态表

    • 生成的动态表被转换成流

相关推荐
用户36105886261234 分钟前
SparkStreaming 之 Driver HA 原理及搭建实操
大数据·spark
2601_960017621 小时前
宠物食品行业PLM服务商一半科技,打造配方饲喂试验数字化能力
大数据·科技
JoyCong19981 小时前
从iPhone Ultra到ToDesk:折叠大屏时代的效率革命,硬件只是开始
大数据·运维·ios·智能手机·iphone·远程工作·远程操作
集成电路芯片封装设备1 小时前
功率循环测试配套真空炉的核心要点与实践经验
大数据
东师兄1 小时前
实习生没有错,错的是3500万个JSON文件
大数据
小五传输1 小时前
【一文解读】汽车制造业协同,跨网跨区域文件传输如何落地?
大数据·运维·安全
长谷深风1112 小时前
Agent 的 Context 里,到底应该放什么?
大数据·人工智能·prompt工程·ai agent·智能体·context工程·systemprompt
贝格前端工场2 小时前
AI在生产制造企业的六大成熟落地场景(可量产、可验收、非噱头)
大数据·ui·前端开发
Elastic 中国社区官方博客2 小时前
机构如何统一智慧城市数据以改善公共服务?
大数据·人工智能·物联网·elasticsearch·搜索引擎·全文检索·智慧城市
Raas1002 小时前
MAI Gateway(魔芋企业级AI网关)详解:企业为什么需要AI网关,一文读懂企业AI流量治理
大数据·人工智能·gateway·api·ai网关·mai gateway