flink1.12.x Table API 和 SQL:TableEnvironment、table表和view视图

TableEnvironment

TableEnvironment是Table API和SQL集成的核心概念,它主要负责:

  1. 注册 Catalog
  2. 在 Catalog 注册表
  3. 执行SQL查询
  4. 注册一个用户自定义函数(表及聚合)
  5. 将DataStream或者DataSet转换成Table

Table

表(Table)是由一个 标识符(identifier)来指定的,

由3部分组成:

  • Catalog名
  • 数据库(database)名
  • 对象名

常规表(Table)一般可以用来描述外部数据,比如文件、数据库表或消息队列的数据,也可以直接从 DataStream转换而来

静态表

查询时数据 不再变化,常用于 批计算

从一个文件中导入表结构(Structure)

动态表

动态表中的数据是源源不断的

也可以像静态表一样查询动态表,查询动态表需要产生 连续查询。连续查询 永远不会终止,会生成动态表作为结果表。

连续查询:会不断更新 状态(state),生成结果表

view

从现有的表中创建,通常是 table API 或者 SQL 查询的一个结果集


原文出处:/show_1IX23EdAQciG.html