新建SQL作业
功能介绍
通过POST方式,提交流式SQL作业,请求体为JSON格式。
URI
- URI格式
POST /v1.0/{project_id}/sql_job
- 参数说明
表1 URI参数说明 名称
是否必选
说明
project_id
是
项目编号。获取方法,请参见获取项目ID。
请求消息
通过POST方式,提交流式SQL作业,请求体为JSON格式。
- 请求样例
{ "name": "myjob", "desc": "这是个做字符记数的作业", "template_id": 100000, "cluster_id": 100000, "sql_body": "select * from source_table", "run_mode": "shared_cluster", "spu_number": 2, "parallel_number": 1, "checkpoint_enabled": false, "checkpoint_mode": "exactly_once", "checkpoint_interval": 0, "obs_bucket": "my_obs_bucket", "log_enabled": false, "smn_topic": "cs_job_exception", "restart_when_exception": false, "idle_state_retention": 0, "job_type": "flink_sql_job", "edge_group_ids": "62de1e1c-066e-48a8-a79d-f461a31b2ee1,2eb00f85-99f2-4144-bcb7-d39ff47f9002" }
- 参数说明
表2 请求参数说明 参数名
是否必选
参数类型
说明
name
是
String
作业名称。
desc
否
String
作业描述。
template_id
否
Int
模板Id。
如果template_id和sql_body都不为空,优先sql_body;如果template_id不空,sql_body为空,以template_id内容填充sql_body。
cluster_id
否
Int
独享的集群资源ID, 前提是当前用户有该独享资源的使用权限。
sql_body
否
String
Stream SQL语句,至少包含source, query, sink三个部分。
run_mode
是
String
作业运行模式:
- shared_cluster:共享。
- exclusive_cluster:独享。
- edge_node:边缘节点。
spu_number
否
Int
用户为作业选择的SPU数量。
parallel_number
否
Int
用户设置的作业并行数目。
checkpoint_enabled
否
Boolean
是否开启作业自动快照功能。
- 开启:true
- 关闭:false
- 默认:false
checkpoint_mode
否
Int
快照模式:
- ExactlyOnce
- AtLeastOnce
checkpoint_interval
否
Int
快照时间间隔, 单位为秒
obs_bucket
否
String
当checkpoint_enabled==true时,该参数是用户授权保存快照的OBS路径。
log_enabled
否
Boolean
是否开启作业的日志上传到用户的OBS功能。
smn_topic
否
String
当作业异常时,向该SMN主题推送告警信息。
restart_when_exception
否
Boolean
是否开启作业异常自动重启。
idle_state_retention
否
Int
空闲状态过期周期。
job_type
否
String
作业类型:flink_sql_job和flink_sql_edge_job。
- run_mode为edge_node时,作业类型须为flink_sql_edge_job。
- run_mode为shared_cluster跟exclusive_cluster时,作业类型须为flink_sql_job。
edge_group_ids
否
String
边缘计算组ID列表, 多个ID以逗号分隔。
tags
否
String
作业标签。
sys_enterprise_project_id
否
String
作业所属的企业项目ID。
udf_jar_url
否
String
sql作业udf jar所在的obs地址。
dirty_data_strategy
否
String
作业脏数据策略。
- “2:obs-wan-wulan3/jobs”:保存
- “1”:抛出异常
- “0”:忽略
响应消息
- 响应样例
{ "message_id": "CS.10001", "message": "消息内容", "current_time": 1533686888000, "payload": { "job_id": 50320, "status_name": "running", "status_desc": "当前状态描述" } }
- 参数说明
表3 响应参数说明 参数名
是否必选
参数类型
说明
message_id
否
String
消息类型ID。
message
否
String
消息内容。
current_time
否
Int
当前时间, 毫秒数。
payload
否
无
作业状态信息。
job_id
否
Long
作业。
status_name
否
String
作业状态名称。
status_desc
否
String
当前状态描述,包含异常状态原因及建议。
错误码
请参见错误码。
