Table API 和 Flink SQL 是什么
1、Flink 对批处理和流处理,提供了统一的上层 API;
2、Table API 是一套内嵌在 Java 和 Scala 语言中的查询API,它允许以非常直观的方式组合来自一些关系运算符的查询;
3、Flink 的 SQL 支持基于实现了 SQL 标准的 Apache Calcite;
4、Table API 和 SQL 的程序结构,与流式处理的程序结构十分类似,比如下面的语法;
StreamTableEnvironment tableEnv = ... // 创建表的执行环境
// 创建一张表,用于读取数据
tableEnv.connect(...).createTemporaryTable("inputTable");
// 注册一张表,用于把计算结果输出
tableEnv.connect(...).createTemporaryTable("outputTable");
// 通过 Table API 查询算子,得到一张结果表
Table result = tableEnv.from("inputTable").select(..
本文详细介绍了Flink的Table API和SQL,包括它们作为统一接口的角色,TableEnvironment的创建和配置,以及如何注册Catalog、执行SQL查询和自定义函数。还探讨了Flink中的Table概念,如常规表和视图,并展示了创建表和进行查询的语法。
订阅专栏 解锁全文
1028

被折叠的 条评论
为什么被折叠?



