You need to enable JavaScript to run this app.
导航
进阶使用
最近更新时间:2025.04.01 20:13:41首次发布时间:2024.11.12 16:54:08
我的收藏
有用
有用
无用
无用

Flink 官方提供的 SQL 客户端可以支持编写 SQL、调试和提交 Flink 任务到 Flink 集群上的功能,具体使用操作,可参考Flink官方文档。本文将额外介绍几种火山引擎 LAS Flink 的使用场景。

在火山 LAS Flink 下,我们可以通 SQL 客户端将 Flink SQL 任务提交到 Standalone 集群或者 Yarn 集群。

Standalone 集群场景

Standalone 场景下需要先启动一个 Standalone 的集群,可在FLINK_HOME目录(默认为/usr/lib/emr/current/flink)下运行以下命令创建:

./bin/start-cluster.sh

Standalone 集群启动成功后,可以执行以下命令启动 SQL 客户端命令行界面:

./bin/sql-client.sh embedded

如果想停止 Standalone 集群,可执行以下命令停止:

./bin/stop-cluster.sh

Yarn 集群场景

Yarn 集群场景下支持多种 Flink 任务提交模式,包括 Yarn-Session 模式、Per-Job Cluster 模式、Application 模式。注意:Flink SQLClient 暂不支持 Application 模式
Session 模式
Session 模式下,需要先执行以下命令启动 Yarn Session:

./bin/yarn-session.sh -d

Yarn Session 启动成功后,会创建一个/tmp/.yarn-properties-root文件,记录最近一次提交到 Yarn 的 Application ID,执行以下命令启动 SQL 客户端命令行界面,后续指定的 Flink SQL 会提交到之前启动的 Yarn Session Application。

./bin/sql-client.sh embedded -s yarn-session

可以执行以下命令停止当前启动的 Yarn Session

cat /tmp/.yarn-properties-root | grep applicationID | cut -d'=' -f 2 | xargs -I {} yarn application -kill {}

Per-Job Cluster 模式
Per-Job Cluster 模式无需提前启动集群,可以在启动 SQL 客户端命令行界面,设置execution.target,后续提交的每一个 Flink SQL 任务将会作为独立的任务提交到 Yarn。
注意:yarn-per-job 模式已经在 Flink 1.16 被标记为 deprecated 状态。

./bin/sql-client.sh embedded

Flink SQL> set execution.target=yarn-per-job;
[INFO] Session property has been set.

也可以通过在flink-conf.yaml文件预定义配置改参数

# flink-conf.yaml
execution.target: yarn-per-job