文档首页/ 数据接入服务 DIS/ API参考/ API说明/ 转储任务管理/ 更新转储任务 - UpdateTransferTask
更新时间:2025-11-25 GMT+08:00

更新转储任务 - UpdateTransferTask

功能介绍

该接口用于更新转储任务。

调用方法

请参见如何调用API

URI

PUT /v2/{project_id}/streams/{stream_name}/transfer-tasks

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释

项目ID。获取方法,请参见获取项目ID

约束限制

不涉及

取值范围

只能由英文字母和数字组成,且长度为[1-64]个字符。

默认取值

不涉及

stream_name

String

参数解释

通道名称,可使用自动生成的由前缀“dis-”加4位随机字符或数字组成的名称,例如:dis-HvB1,也可自定义。

约束限制

不涉及

取值范围

只能由英文字母和数字组成,且长度为[1-64]个字符。

默认取值

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释

用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。请参见认证鉴权-Token认证

约束限制

不涉及

取值范围

长度为[1-32768]个字符。

默认取值

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

destination_type

String

参数解释

转储任务类型,OBS:转储到OBS。

约束限制

不涉及

取值范围

不涉及

默认取值

OBS

obs_destination_descriptor

OBSDestinationDescriptorRequest object

转储目的地为OBS的参数列表。

表4 OBSDestinationDescriptorRequest

参数

是否必选

参数类型

描述

task_name

String

参数解释

转储任务的名称。

约束限制

不涉及

取值范围

英文字母、数字、中划线和下划线组成,长度为1~64个字符。

默认取值

不涉及

agency_name

String

参数解释

在统一身份认证服务(IAM)中创建委托的名称,DIS需要获取IAM委托信息去访问您指定的资源。如果已经创建过委托,可以使用IAM服务提供的查询委托列表接口,获取有效可用的委托名称。如果有在Console控制台、调用接口使用转储任务,会提示自动创建委托,自动创建的委托名称为:dis_admin_agency。

约束限制

创建委托的参数设置如下

  • 委托类型:云服务

  • 云服务:DIS

  • 持续时间:永久

  • “所属区域”为“全局服务”,“项目”为“对象存储服务”对应的“策略”包含“Tenant Administrator”。

取值范围

长度不超过64位,且不可配置为空。

默认取值

不涉及

deliver_time_interval

Integer

参数解释

根据用户配置的时间,周期性的将数据导入OBS,若某个时间段内无数据,则此时间段不会生成打包文件,单位:秒。

约束限制

不涉及

取值范围

大小为30-900之间的整数。

默认取值

不涉及

deliver_size_interval

Integer

参数解释

转储文件大小,用户定义本地缓存达到的大小阈值来触发一次转储,单位:MB。

约束限制

不涉及

取值范围

大小为1到300之间的整数。

默认取值

不涉及。

consumer_strategy

String

参数解释

偏移量。

约束限制

修改转储任务时偏移量的值根据创建转储任务时的值决定,如创建据创建转储任务时偏移量为最大偏移量,修改时也是最大。

取值范围

  • LATEST:最大偏移量,即获取最新的数据。

  • TRIM_HORIZON:最小偏移量,即读取最早的数据。

默认取值

不涉及。

file_prefix

String

参数解释

在OBS中存储通道文件的自定义目录,默认配置为空。

约束限制

多级目录可用“/”进行分隔,不可以“/”开头。

取值范围

英文字母、数字、下划线和斜杠,最大长度为50个字符。

默认取值

partition_format

String

参数解释

将转储文件的生成时间使用“yyyy/MM/dd/HH/mm”格式生成分区字符串,用来定义写到OBS的Object文件所在的目录层次结构。数据转储成功后,存储的目录结构为“obs_bucket_path/file_prefix/partition_format”。如2017/11/10/14/49,目录结构就是“2017 > 11 > 10 > 14 > 49”,“2017”表示最外层文件夹。

约束限制

不涉及

取值范围

  • N/A:置空,不使用日期时间目录。

  • yyyy:年

  • yyyy/MM:年/

  • yyyy/MM/dd:年/月/日

  • yyyy/MM/dd/HH:年/月/日/时

  • yyyy/MM/dd/HH/mm:年/月/日/时/分

默认取值

N/A

obs_bucket_path

String

参数解释

存储该通道数据的OBS桶名称。

约束限制

由英文小写字母、数字、中划线、下划线和点组成。

取值范围

由英文小写字母、数字、中划线、下划线和点组成,长度为3~63个字符。

默认取值

不涉及

destination_file_type

String

参数解释

转储文件格式。

约束限制

“源数据类型”为“JSON”,“转储服务类型”为“OBS”时才可选择“csv”和“parquet”格式。

取值范围

  • text:转储目标格式为Text,缺省值。

  • csv: 转储目标格式为CSV。

  • parquet:转储目标格式为Parquet。

默认取值

Text

processing_schema

ProcessingSchema object

参数解释

根据源数据的时间戳和已配置的“partition_format”生成对应的转储时间目录。将源数据的时间戳使用“yyyy/MM/dd/HH/mm”格式生成分区字符串,用来定义写到OBS的Object文件所在的目录层次结构。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

record_delimiter

String

参数解释

转储文件的记录分隔符,用于分隔写入转储文件的用户数据。

约束限制

由英文小写字母、数字、中划线、下划线和点组成。

取值范围

  • 逗号 “,”,默认值

  • 分号 “;”

  • 竖线 “|”

  • 换行符 “\n”

  • 空 “NULL”

默认取值

“\n”

表5 ProcessingSchema

参数

是否必选

参数类型

描述

timestamp_name

String

参数解释

源数据时间戳的属性名称。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

timestamp_type

String

参数解释

源数据时间戳的类型。

约束限制

不涉及

取值范围

  • String:String类型

  • Timestamp:Long类型的13位时间戳

默认取值

不涉及。

timestamp_format

String

参数解释

源数据时间戳的类型为String时必选,用于根据时间戳格式生成OBS的时间目录。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

响应参数

状态码:200

正常返回

请求示例

更新转储任务。

PUT https://{Endpoint}/v2/{project_id}/streams/{stream_name}/transfer-tasks

{
  "destination_type" : "OBS",
  "obs_destination_descriptor" : {
    "agency_name" : "dis_admin_agency",
    "task_name" : "task-test1",
    "consumer_strategy" : "LATEST",
    "cross_account_dump" : false,
    "destination_file_type" : "text",
    "obs_bucket_path" : "obsbucket",
    "file_prefix" : "",
    "partition_format" : "yyyy/MM/dd/HH/mm",
    "record_delimiter" : "|",
    "deliver_time_interval" : 300
  }
}

响应示例

状态码

状态码

描述

200

正常返回

错误码

请参见错误码