添加OBS转储任务
功能介绍
本接口用于添加OBS转储任务。
URI
POST /v2/{project_id}/streams/{stream_name}/transfer-tasks
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID。 |
stream_name |
是 |
String |
已创建的通道名称。 最大长度:60 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
destination_type |
是 |
String |
转储任务类型。
缺省值:NOWHERE 枚举值:
|
obs_destination_descriptor |
否 |
转储目的地为OBS的参数列表。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
task_name |
是 |
String |
转储任务的名称。 任务名称由英文字母、数字、中划线和下划线组成。长度为1~64个字符。 |
agency_name |
是 |
String |
在统一身份认证服务(IAM)中创建委托的名称,DIS需要获取IAM委托信息去访问您指定的资源。创建委托的参数设置如下:
如果有在Console控制台使用转储任务,会提示自动创建委托,自动创建的委托名称为:dis_admin_agency 最大长度:64 |
deliver_time_interval |
是 |
Integer |
根据用户配置的时间,周期性的将数据导入OBS,若某个时间段内无数据,则此时间段不会生成打包文件。 取值范围:30~900 缺省值:300 单位:秒 最小值:30 最大值:900 缺省值:300 |
consumer_strategy |
否 |
String |
偏移量。
缺省值:LATEST 缺省值:LATEST 枚举值:
|
file_prefix |
否 |
String |
在OBS中存储通道文件的自定义目录,多级目录可用“/”进行分隔,不可以“/”开头。 取值范围:英文字母、数字、下划线和斜杠,最大长度为50个字符。 默认配置为空。 最大长度:50 |
partition_format |
否 |
String |
将转储文件的生成时间使用“yyyy/MM/dd/HH/mm”格式生成分区字符串,用来定义写到OBS的Object文件所在的目录层次结构。
例如:2017/11/10/14/49,目录结构就是“2017 > 11 > 10 > 14 > 49”,“2017”表示最外层文件夹。 默认值:空 说明: 数据转储成功后,存储的目录结构为“obs_bucket_path/file_prefix/partition_format”。 枚举值:
|
obs_bucket_path |
是 |
String |
存储该通道数据的OBS桶名称。 |
destination_file_type |
否 |
String |
转储文件格式。
说明: “源数据类型”为“JSON”,“转储服务类型”为“OBS”时才可选择“parquet”或“carbon”格式。 缺省值:text 枚举值:
|
processing_schema |
否 |
ProcessingSchema object |
根据源数据的时间戳和已配置的"partition_format"生成对应的转储时间目录。将源数据的时间戳使用“yyyy/MM/dd/HH/mm”格式生成分区字符串,用来定义写到OBS的Object文件所在的目录层次结构。 |
record_delimiter |
否 |
String |
转储文件的记录分隔符,用于分隔写入转储文件的用户数据。 取值范围:
缺省值:\n |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
timestamp_name |
是 |
String |
源数据时间戳的属性名称。 |
timestamp_type |
是 |
String |
源数据时间戳的类型。
|
timestamp_format |
否 |
String |
源数据时间戳的类型为String时必选,用于根据时间戳格式生成OBS的时间目录。 取值范围:
枚举值:
|
响应参数
无
请求示例
- 添加OBS转储任务
POST https://{Endpoint}/v2/{project_id}/streams/{stream_name}/transfer-tasks { "destination_type" : "OBS", "obs_destination_descriptor" : { "task_name" : "newtask", "consumer_strategy" : "LATEST", "agency_name" : "dis_admin_agency", "destination_file_type" : "text", "obs_bucket_path" : "obsbucket", "file_prefix" : "", "partition_format" : "yyyy/MM/dd/HH/mm", "record_delimiter" : "|", "deliver_time_interval" : 30 } }
- 添加OBS转储任务(转储文件格式是parquet)
POST https://{Endpoint}/v2/{project_id}/streams/{stream_name}/transfer-tasks { "destination_type" : "OBS", "obs_destination_descriptor" : { "task_name" : "newtask", "consumer_strategy" : "LATEST", "agency_name" : "dis_admin_agency", "destination_file_type" : "parquet", "obs_bucket_path" : "obsbucket", "file_prefix" : "", "partition_format" : "yyyy/MM/dd/HH/mm", "record_delimiter" : "|", "deliver_time_interval" : 30 } }
响应示例
无
状态码
状态码 |
描述 |
---|---|
201 |
正常返回 |
错误码
请参见错误码。