tonglin0325的个人主页

Flink学习笔记——Flink SQL

flink官方从1.8.0开始提供Table&SQL API,参考

1
2
https://github.com/apache/flink/tree/release-1.8.0/flink-table

如果想使用Flink SQL的话,可以参考官方的get start文档,如下

1
2
https://nightlies.apache.org/flink/flink-docs-master/docs/dev/table/sql/gettingstarted/

找到flink的安装目录

1
2
cd /usr/lib/flink

首先需要启动一个flink集群,这里使用yarn-session模式来启动一个flink session集群,比如

1
2
./bin/yarn-session.sh -n 3 -s 5 -jm 1024 -tm 4096 -d

一旦flink集群启动,你就可以访问一个本地的FlinkUI

如下

也可以在YARN上看到flink session cluster的任务

这时再启动flink SQL

1
2
./bin/sql-client.sh

1
SELECT 'Hello World';

运行结果

默认的显示模式是表格模式,可以通过一下语句进行调整

1
2
3
4
SET sql-client.execution.result-mode = table;
SET sql-client.execution.result-mode = tableau;
SET sql-client.execution.result-mode = changelog;

tableau模式,更接近于spark sql的显示方式

changelog模式,变更日志模式(changelog mode)不会物化结果。可视化展示由插入(+)和撤销(-)组成的持续查询结果流。

参考:flink sql-client 菜鸟记录