任务执行
概述
通过执行功能,可在数据开发IDE页面创建/修改/删除库、表,并支持流、批运行Select语句进行可视化展示。
note
- 执行任务为Session模式运行。所以前提需要在控制台开启Session,并分配debug slot,详见下图:
使用任务类型限制
FlinkSQL任务类型|Flink 1.16
执行操作类型限制
Create、Select、Alter、Drop
note
具体支持的Catalog数据源移步至Catalog管理查看Catalog管理
Create Database (支持DTCatalog、HMSCatalog)
CREATE DATABASE IF NOT EXISTS calalog.database;
Create Table (支持DTCatalog、HMSCatalog)
CREATE TABLE `CatalogName`.`DatabaseName`.`TableName` (
`id` INT,
`name` VARCHAR(2147483647),
`age` INT,
`proc_time` AS PROCTIME()
) WITH (
'format' = 'json',
'scan.startup.mode' = 'latest-offset',
'properties.bootstrap.servers' = '172.16.100.109:9092',
'connector' = 'kafka-x',
'scan.parallelism' = '1',
'topic' = 'topic_name'
);
Select Table (支持DTCatalog、HMSCatalog)
DTCatalog DEMO:
SELECT * FROM node_catalog.database_one.singal_stream_simple_target_two_4;
HMSCatalog DEMO:
SELECT * from node_catalog.paimon_db.paimon_test_4 /*+ OPTIONS('scan.snapshot-id' = '1') */;
Drop Table (支持HMSCatalog)
DROP TABLE `hmscatalog`.`fanshudatabase_one`.`iceberg_table_one`;
执行使用介绍
Select 查询案例
- 编写Select查询语句
note
前置条件已在DTCatalog中创建mysqlSideTable名称的Table,映射了实际Mysql中表。
SELECT * from DTCatalog.DTDatabase.mysqlSideTable;
执行操作
点击执行按钮,任务执行SQL开始-->日志中输出具体任务执行SQL-->正在提交(调度提交)-->任务开始执行-->等待运行(队列中)。
任务存在提交调度超时、Session启动超时失败提示相关信息。
在具体结果页面再次执行开始,则使用结果页面的SQL进行再次查询。
执行中状态时,执行停止按钮允许点击,执行停止则不允许点击停止按钮。
执行状态:执行中 、执行模式:batch/stream 、执行时长:从任务在队列中创建JobGraph完成任务运行中开始计算执行时长、数据条数:具体查询返回的数量
任务执行中
- 任务提交Session队列,创建完成JobGraph,状态任务执行中,此时开始计算任务执行时长。
日志查询
- 任务运行中状态,间隔3秒获取一次TaskManager最新日志信息。任务运行完成下载完整全部日志至本地。
结果查询
- 任务运行中状态返回查询结果,前端最大缓存6000条,超过数量则先进先出原则展示最新的数据。
- 结果页面展示当前执行SQL,支持对当前SQL再次执行操作,会新开结果页,日志页面则更新为最新的执行操作日志不新开页面。
执行停止操作
- 任务执行中状态点击停止按钮,任务将主动被取消,任务状态从执行中转为执行停止最后任务状态为执行成功。
- 执行成功任务停止后,下载的结果、日志为当前页面最新的信息。