概览
This documentation is for an unreleased version of Apache Flink. We recommend you use the latest stable version.

Table API #

Table API 是用于 Java、Scala 和 Python 语言的查询 API,它可以用一种非常直观的方式来组合使用选取、过滤、join 等关系型算子。Table API 与 Flink SQL 共享同一个底层引擎,无论输入是连续的(流式)还是有界的(批处理),在两个接口中指定的查询都具有相同的语义,并指定相同的结果。

Table API 和 SQL 两种 API 是紧密集成的,以及 DataStream API。你可以在这些 API 之间,以及一些基于这些 API 的库之间轻松的切换。例如,你可以使用 MATCH_RECOGNIZE 子句从表中检测模式,然后使用 DataStream API 基于匹配的模式构建告警。

何时使用 Table API #

在以下情况下使用 Table API:

  • 在 Java、Scala 或 Python 代码中编写关系型查询
  • 使用类型安全的算子以编程方式组合查询
  • 将 SQL 语句与编程式表操作相结合
  • 与 DataStream API 集成以实现混合用例

如需纯 SQL 使用而无需编程,请参阅 Flink SQL

Table 程序依赖 #

您需要将 Table API 作为依赖项添加到项目中,以便用 Table API 定义数据管道。

有关如何为 Java 和 Scala 配置这些依赖项的更多细节,请查阅项目配置小节。

如果您使用 Python,请查阅 PyFlink 文档

接下来? #

Back to top