SUBMIT TASK
功能
为 ETL 语句创建异步任务。
您可将该语句用于以下场景:
- 创建长时间运行的后台任务(从 v2.5 开始支持)
- 创建定期执行的任务(从 v3.3 开始支持)
支持的语句包括:
- CREATE TABLE AS SELECT(从 v3.0 开始支持)
- INSERT(从 v3.0 开始支持)
- CACHE SELECT(从 v3.3 开始支持)
您可以通过查询 INFORMATION_SCHEMA.tasks
查看任务列表,或通过查询 INFORMATION_SCHEMA.task_runs
查看任务的执行历史。有关更多信息,请参阅使用说明。
您可以使用 DROP TASK 删除异步任务。
语法
SUBMIT TASK <task_name>
[SCHEDULE [START(<schedule_start>)] EVERY(INTERVAL <schedule_interval>) ]
[PROPERTIES(<"key" = "value"[, ...]>)]
AS <etl_statement>
参数说明
参数 | 是否必须 | 描述 |
---|---|---|
task_name | 是 | 任务名称。 |
schedule_start | 否 | 定时任务的开始时间。 |
schedule_interval | 否 | 定时任务的执行间隔,最小 间隔为 10 秒。 |
etl_statement | 是 | 需要创建异步任务的 ETL 语句。StarRocks 当前支持为 CREATE TABLE AS SELECT 和 INSERT |
使用说明
该语句会创建一个 Task,表示一个 ETL 语句执行任务的存储模板。您可以通过查询 Information Schema 中的元数据视图 tasks
来查看 Task 信息:
SELECT * FROM INFORMATION_SCHEMA.tasks;
SELECT * FROM information_schema.tasks WHERE task_name = '<task_name>';
执行 Task 后会对应生成一个 TaskRun,表示一个 ETL 语句执行任务。TaskRun 有以下状态:
PENDING
:任务等待执行。RUNNING
:任务正在执行。FAILED
:任务执行失败。SUCCESS
:任务执行成功。
您可以通过查询 Information Schema 中的元数据视图 task_runs
来查看 TaskRun 状态:
SELECT * FROM INFORMATION_SCHEMA.task_runs;
SELECT * FROM information_schema.task_runs WHERE task_name = '<task_name>';