错误码
9 Flink 作业相关 API
9.3 更新 SQL 作业
● 响应样例
{ "is_success": "true", "message": "创建作业成功", "job": {
"job_id": 148,
"status_name": "job_init", "status_desc": ""
} }
状态码
状态码如表9-10所示。
表9-10 状态码
状态码 描述
200 创建作业成功。
400 输入参数无效。
错误码
调用接口出错后,将不会返回上述结果,而是返回错误码和错误信息,更多介绍请参 见错误码。
9.3 更新 SQL 作业
功能介绍
该API用于修改Flink SQL作业。
调试
您可以在API Explorer中调试该接口。
URI
● URI格式
PUT /v1.0/{project_id}/streaming/sql-jobs/{job_id}
● 参数说明
API 参考 9 Flink 作业相关 API
表9-11 URI 参数说明 参数名称 是否必
选
参数类 型
说明
project_i
d 是 String 项目编号,用于资源隔离。获取方式请参考获 取项目ID。
job_id 是 Long 作业ID。
请求消息
表9-12 请求参数说明
参数名称 是否必选 参数类型 说明
name 否 String 作业名称。长度限制:0-57个字
符。
desc 否 String 作业描述。长度限制:0-512个字 符。
queue_name 否 String 队列名称。长度限制:1-128个字 符。
sql_body 否 String Stream SQL语句,至少包含source, query, sink三个部分。长度限制:
0-1024*1024个字符。
run_mode 否 String 作业运行模式:
● shared_cluster:共享。
● exclusive_cluster:独享。
● edge_node:边缘节点。
默认值为“shared_cluster”。
cu_number 否 Integer 用户为作业选择的CU数量。默认值 为“2”。
parallel_number 否 Integer 用户设置的作业并行数目。默认值 为“1”。
checkpoint_enable
d 否 Boolean 是否开启作业自动快照功能。
● 开启:true
● 关闭:false
● 默认:false
API 参考 9 Flink 作业相关 API
参数名称 是否必选 参数类型 说明
checkpoint_mode 否 Integer 快照模式,。两种可选:
● 1:表示exactly_once,数据只被 消费一次。
● 2:at_least_once,数据至少被 消费一次。
默认值为1。
checkpoint_interv
al 否 Integer 快照时间间隔。单位为秒,默认值
为“10”。
obs_bucket 否 String 当“checkpoint_enabled”为
“true”时,该参数是用户授权保存 快照的OBS路径。
当“log_enabled” 为“true”时,
该参数是用户授权保存作业日志的 OBS路径。
log_enabled 否 Boolean 是否开启作业的日志上传到用户的 OBS功能。默认为“false”。
smn_topic 否 String 当作业异常时,向该SMN主题推送 告警信息。
restart_when_exce
ption 否 Boolean 是否开启作业异常自动重启。默认
为“false”。
idle_state_retentio
n 否 Integer 空闲状态过期周期,单位为秒,默
认值为“3600”。
edge_group_ids 否 Array of
Strings 边缘计算组ID列表, 多个ID以逗号分 隔。
dirty_data_strateg
y 否 String 作业脏数据策略。
● “2:obsDir”:保存,obsDir表 示脏数据存储路径。
● “1”:抛出异常。
● “0”:忽略。
默认值为“0”。
udf_jar_url 否 String 用户已上传到DLI资源管理系统的资 源包名,用户sql作业的udf jar通过 该参数传入。
manager_cu_num
ber 否 Integer 用户为作业选择的管理单元
(jobmanager)CU数量,默认值为
“1”。
tm_cus 否 Integer 每个taskmanager的CU数,默认值 为“1”。
API 参考 9 Flink 作业相关 API
参数名称 是否必选 参数类型 说明
tm_slot_num 否 Integer 每个taskmanager的slot数,默认值 为“(parallel_number*tm_cus)/
(cu_number-manager_cu_number)”。
operator_config 否 String 算子的并行度配置。
resume_checkpoin
t 否 Boolean 异常重启是否从checkpoint恢复。
resume_max_num 否 Integer 异常重试最大次数,单位:次/小 时。取值范围:-1或大于0。默认值 为“-1”,表示无限次数。
static_estimator_c
onfig 否 String 每个算子的流量/命中率配置,json 格式的字符串。例如:
{"operator_list":
[{"id":"0a448493b4782967b15058257032622 7","rate_factor":0.55},
{"id":"6d2677a0ecc3fd8df0b72ec675edf8f4","
rate_factor":1},
{"id":"ea632d67b7d595e5b851708ae9ad79d6
","rate_factor":0.55},
{"id":"bc764cd8ddf7a0cff126f51c16239658","
output_rate":2000}]}
runtime_config 否 String Flink作业运行时自定义优化参数。
响应消息
表9-13 响应参数说明 参数名称 是否必
选
参数类型 说明
is_success 否 Boolean 执行请求是否成功。“true”表示请求执 行成功。
message 否 String 消息内容。
job 否 Object 作业更新信息。具体请参考表9-14。
表9-14 job 参数说明
参数名称 是否必选 参数类
型
说明
update_time 否 Long 作业更新时间,毫秒数。
API 参考 9 Flink 作业相关 API
示例
● 请求样例
{ "name": "myjob",
"desc": "这是我的第一个作业", "queue_name": "testQueue",
"sql_body": "select * from source_table", "run_mode": "shared_cluster",
"cu_number": 4, "parallel_number": 4, "checkpoint_enabled": false, "checkpoint_mode": "exactly_once", "checkpoint_interval": 10,
"obs_bucket": "", "log_enabled": false, "smn_topic": "",
"restart_when_exception": false, "idle_state_retention": 3600, "edge_group_ids": [
"62de1e1c-066e-48a8-a79d-f461a31b2ee1", "2eb00f85-99f2-4144-bcb7-d39ff47f9002"
],
"dirty_data_strategy": "0", "udf_jar_url": "group/test.jar"
}
● 响应样例
{ "is_success": "true", "message": "作业更新成功",