检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
发布下载OBS对象的算子 案例概述 开发算子代码 测试算子功能 发布算子
接下来我们将在其中添加“下载OBS对象功能”让函数功能更加丰富。 图5 测试结果 添加OBS下载逻辑(涉及AK/SK获取) 下载OBS的方式参考下载对象,示例采用二进制下载方式,主要代码如下所示。 如图6所示,执行结果中已经获取到目标对象的大小 size: 292685。 # -*-
解析视频的元数据信息,包括:视频时长、视频格式、码率等。用于视频播放时获取时长,分辨率展示 等等。 流程一览 操作步骤 在OBS服务中创建桶 在OBS服务控制台创建两个桶,一个用于上传待处理的数据对象,一个用于存储处理后的数据对象。桶的详细介绍参见创建桶。 数据输入桶:“piccomp”
使用限制 区域限制 当前支持使用的区域为:北京四、上海一、上海二、广州、新加坡。 使用限制 当前仅支持OBS对象桶,不支持并行文件系统。 当前仅支持创建串行的工作流。 一个事件触发器仅支持关联一个工作流,一个工作流可同时被多个事件触发器关联。 当前暂不支持创建重名工作流,即使工作
Event传递真实值。例如,云市场 appkey,算子回调函数地址。 Event :算子的触发事件信息,例如OBS对象信息,桶名,动态参数。 父主题: 发布下载OBS对象的算子
表1 DWR与其他云服务的关系 服务类别 服务名称 交互关系 存储服务 对象存储服务(Object Storage Service,OBS) OBS作为DWR数据处理的数据源,当上传至OBS或存储在OBS的数据产生的事件满足触发器规则时,DWR将自动启动关联的工作流进行数据处理。
basename(objectKey) obsServer = 'obs.cn-north-7.ulanqab.huawei.com' # 使用obs sdk obsClient = newObsClient(context, obsServer) # 获取对象元数据 resp
=gramname/p1_v1,p2_v2 HTTP/1.1 Host: bucket.obs.cn-north-4.myhuaweicloud.com Authorization: OBS H4IPJX0TQTHTHEBQQCEC:sc2PM13Wlfcoc/YZLK0MwsI2Zpo=
或者转码。 通过API启动工作流(同步和异步都支持) 在少数场景下,用户对单个对象或者一类对象进行的复杂操作是有区别的,这就要求用户通过API调用方式来实现单个对象粒度的复杂任务处理,可以指定某个对象立即执行某个特定的工作流。 图1 数据处理工作流 优势 简单易用:通过控制台的图形化界面,轻松按需搭建数据处理流程。
资源和成本规划 资源 资源说明 数量 每月费用 OBS 算子请求OBS API。 1 通过算子对数据进行处理,都会涉及到对OBS API的调用,每调用一次API都计算一次请求次数。对象存储服务OBS会根据调用API的请求次数进行费用收取,收取详情参见OBS请求费用说明。 FunctionGraph函数
资源和成本规划 资源 资源说明 数量 每月费用 OBS 算子请求OBS API。 1 通过算子对数据进行处理,都会涉及到对OBS API的调用,每调用一次API都计算一次请求次数。对象存储服务OBS会根据调用API的请求次数进行费用收取,收取详情参见OBS请求费用说明。 FunctionGraph函数
ResponseElements struct { OBSRequestID string `json:"x-obs-request-id"` OBSID2 string `json:"x-obs-id-2"` } //OBSInfo OBS信息 type OBSInfo struct {
成测试,具备发布条件。具备发布条更重要的是动态参数的存在让用户拥有了与算子交互的接口。 动态参数中的桶名称、对象是由用户输入的参数,而触发器中的桶名称、对象则是面向触发器使用,二者不可混淆。 父主题: 发布下载OBS对象的算子
流执行媒资转码算子,则会采用异步方式执行,且返回值会格式异常。 流程一览 操作步骤 在OBS服务中创建桶 在OBS服务控制台创建两个桶,一个用于上传待处理的数据对象,一个用于存储处理后的数据对象。桶的详细介绍参见创建桶。 数据输入桶:“piccomp” 数据处理后输出桶:“piccomp-output”
圆角剪切 是 对象存储服务OBS 普通裁剪 是 对象存储服务OBS 索引剪切 是 对象存储服务OBS 图片水印 是 对象存储服务OBS 文字水印 是 对象存储服务OBS 缩略图 是 对象存储服务OBS 内切圆裁剪 是 对象存储服务OBS 自适应旋转 是 对象存储服务OBS 基础旋转 是
"obs:bucket:ListBucketMultipartUploads", "obs:object:AbortMultipartUpload", "obs:object:PutObject", "obs:object:GetObject" ], "resource": [] } ]
最佳实践 创建视频转码工作流 发布下载OBS对象的算子 抽帧截图(官方算子) 抽帧截图(自定义算子) 视频解析 媒资转码 常见问题 了解更多常见问题、案例和解决方案 热门案例 触发器配置不当导致“无限循环”触发工作流如何处理? 如何测试算子? 一个事件触发器可以设置多个前缀或者后缀吗?
算子费用主要由三部分组成:OBS API调用费、FunctionGraph函数及函数工作流费、算子费。 表1 计费项 计费项 说明 OBS API调用费 算子请求OBS API的调用费。 通过算子对数据进行处理,都会涉及到对OBS API的调用,每调用一次API都计算一次请求次数。对象存储服务OBS
需要对视频抽帧截图时,在不编写额外代码的情况下使用抽帧截图算子对视频进行指定时间点截帧。 约束与限制 该抽帧截图算子目前暂不支持中文对象。 方案架构 1. 用户使用对象域名向OBS发送请求 2. DWR收到请求同步执行位于FunctionGraph的视频截图抽帧算子实例,调用MPC服务 3. MPC服务完成抽帧截图,将结果写回租户桶
"obs:object:AbortMultipartUpload", "obs:object:PutObject", "obs:bucket:GetBucketAcl", "obs:object:GetObject"