table API
tableAPI & flink SQL
flink SQL是最上层的封装,封装了流处理的DataStream API 和 批处理的DataSet API。
但是DataStream API 、DataSet API、table API、flink SQL 这几层并没有分到不同层中,所以应用程序可以同时使用这几层。
Table API & SQL 介绍
执行原理
ps:
jar包名 也会随flink版本变化:flink-table-planner_2.12,去掉了blink字符
<!--Flink scala项目核心依赖--> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-scala_2.12</artifactId> <version>1.14.4</version> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-scala_2.12</artifactId> <version>1.14.4</version> </dependency> <!--Flink Table API 核心依赖--> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-api-java-bridge_2.12</artifactId> <version>1.14.4</version> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-planner_2.12</artifactId> <version>1.14.4</version> </dependency> <!--以下用到什么引用什么--> <!--Flink Kafka依赖--> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-kafka_2.12</artifactId> <version>1.14.4</version> </dependency> <!--Flink rocksdb状态后依赖 --> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-statebackend-rocksdb_2.12</artifactId> <version>1.14.4</version> </dependency> <!--本地测试核心依赖-->
注册表
flink中表可以分为 视图和表
注册表的2种方式,
1.直接创建
2.使用表连接器
连接器分为下边几种
文件系统连接器
JDBC连接器