跳到主要内容
版本: 0.7

作业教程

作业开发

说明

SQL 编辑器编辑的 FlinkSQL 作业,当前仅支持 Flink 11~16 版本的语法。

FlinkSQL 操作步骤

1.进入 Dinky 的 Data Studio

2.在左侧菜单栏,右键 目录

3.新建目录或作业

4.在新建文件的对话框,填写作业信息

参数说明备注
作业名称作业名称在当前项目中必须保持 唯一
作业类型流作业和批作业均支持以下作业类型:
FlinkSQL:支持SET、DML、DDL语法
FlinkSQLEnv:支持SET、DDL语法
FlinkSQLEnv 场景适用于所有作业
的SET、DDL语法统一管理的场景,
当前FlinkSQLEnv 在SQL编辑器的语
句限制在1000行以内

5.在作业开发 SQL 编辑器,编写 DDL 和 DML 代码

示例代码如下:

--创建源表datagen_source
CREATE TABLE datagen_source(
id BIGINT,
name STRING
) WITH (
'connector' = 'datagen'
);
--创建结果表blackhole_sink
CREATE TABLE blackhole_sink(
id BIGINT,
name STRING
) WITH (
'connector' = 'blackhole'
);
--将源表数据插入到结果表
INSERT INTO blackhole_sink
SELECT
id ,
name
from datagen_source;

新建作业如下图:

6.在作业开发页面右侧 执行配置,填写配置信息

类型配置项备注
作业配置执行模式区别详见用户手册数据开发中的作业概述
作业配置集群实例Standalone 和 Session 执行模式需要选择集群实例,详见集群实例管理
作业配置集群配置Per-Job 和 Application 执行模式需要选择集群配置,详见集群配置管理
作业配置FlinkSQL 环境选择已创建的 FlinkSQLEnv,如果没有则不选
作业配置任务并行度指定作业级任务并行度,默认为 1
作业配置Insert 语句集默认禁用,开启后将 SQL编辑器中编写的多个 Insert 语句合并为一个 JobGraph 进行提交
作业配置全局变量默认禁用,开启后可以使用数据源连接配置变量、自定义变量等
作业配置批模式默认禁用,开启后启用 Batch Mode
作业配置SavePoint 策略默认禁用,策略包括:
最近一次
最早一次
指定一次
作业配置报警组报警组配置详见报警管理
作业配置其他配置其他的 Flink 作业配置,具体可选参数,请参考 Flink 官网

作业配置如下图:

job_config

注意事项

请及时手动保存作业信息,以免丢失


作业提交

功能说明

  • 执行当前的 SQL: 提交执行未保存的作业配置,并可以同步获取 SELECT、SHOW 等执行结果,常用于 Local、Standalone、Session 执行模式;
  • 异步提交: 提交执行最近保存的作业配置,可用于所有执行模式;
  • 发布 发布当前作业的最近保存的作业配置,发布后无法修改;
  • 上线 提交已发布的作业配置,可触发报警;
  • 下线 停止已上线的作业,并触发 SavePoint;
  • 停止 只停止已提交的作业;
  • 维护 使已发布的作业进入维护状态,可以被修改;
  • 注销 标记作业为注销不可用状态。

常用场景

  • 查看 FlinkSQL 执行结果: 执行当前的 SQL。
  • 提交作业: 异步提交。
  • 上线作业: SavePoint 最近一次 + 上线。
  • 下线作业: 下线。
  • 升级作业: 下线后上线。
  • 全新上线作业: SavePoint 禁用 + 上线。

Flink作业启动操作步骤

1.首先登录Dinky数据开发控制台

2.在左侧菜单栏选择目录 > 作业名称 > 检查当前的FlinkSql > 发布 > 上线

或者选择目录 > 作业名称 > 检查当前的FlinkSql > 异步提交

作业启动异步提交如下图:

async_submit

作业启动发布上线如下图:

online

信息

有关发布上线的详细内容,详见用户手册的运维中心


作业调试

可以选择使用 Standalone 或 Session 集群在开发测试环境对作业调试,如作业运行、检查结果等。配置 Standalone 或 Session 集群请参考注册中心中集群管理的集群实例管理。

也可以调试普通的 DB SQL 作业。

FlinkSQL作业调试步骤

1.进入 Data Studio

2.点击 目录 > 新建目录 > 新建作业

3.填写完作业信息后,单击 确认,作业类型选择 FlinkSQL

4.编写完整的 FlinkSQL 语句,包含 CREATE TABLE 等

示例代码如下:

--创建源表datagen_source
CREATE TABLE datagen_source(
id BIGINT,
name STRING
) WITH (
'connector' = 'datagen'
);
--将源表数据插入到结果表
SELECT
id BIGINT,
name STRING
from datagen_source

5.单击保存

6.单击语法检查

7.配置执行配置

配置项说明
预览结果默认开启,可预览 FlinkSQL 的执行结果
打印流默认禁用,开启后将展示 ChangeLog
最大行数默认 100,可预览的执行结果最大的记录数
自动停止默认禁用,开启后达到最大行数将停止作业

注意: 预览聚合结果如 count 等操作时,关闭打印流可合并最终结果。

8.单击执行当前的SQL

9.结果 或者 历史 > 预览数据 可以手动查询最新的执行结果

FlinkSQL 预览结果的必要条件

1.执行模式必须是 Local、Standalone、Yarn Session、Kubernetes Session 其中的一种;

2.必须关闭 Insert 语句集

3.除 SET 和 DDL 外,必须只提交一个 SELECT 或 SHOW 或 DESC 语句;

4.必须开启 预览结果

5.作业必须是提交成功并且返回 JID,同时在远程集群可以看到作业处于 RUNNING 或 FINISHED 状态;

6.Dinky 重启后,之前的预览结果将失效

DB SQL 调试

选择对应数据源,并书写其 sql 执行即可。