PutS3Object
描述:
将输入数据流写入到Amazon S3桶。 上传可使用PutS3Object方法 或者 PutS3MultipartUpload方法. PutS3Object方法发送文件采用单同步调用,且最大5GB限制。 较大的文件可通过启动、传输部分和完成上载的多点上传方法发送。同时将保存多点上传的每步的状态以便在集群时,可恢复断点续传。同时断点续传上传块大小至少是5MB,除非是最后一块。
标签:
Amazon, S3, AWS, Archive, Put
参数:
如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置, 参数还支持 表达式语言, 并且 如果将一个参数认定为"敏感", 表示是加密状态. 在输入一个敏感参数时, 确保 orchsym.properties 文件中存在属性设置 orchsym.sensitive.props.key.
名字 | 默认值 | 允许值列表 | 描述 |
---|---|---|---|
对象键名 | ${filename} | 指定写入的对象的键名 支持表达式语言 (支持流属性和变量) | |
桶名 | 指定写入的对象的桶名 支持表达式语言 (支持流属性和变量) | ||
Content Type | 设置存储内容对象的Content-Type给HTTP请求头。 该头设置是标准的MIME类型. 如果不提供,AWS S3的Java客户端将试图获得正确的类型。用户需确保在上载流上设置适当的类型。如果不设置,且也无法从文件扩展名获知,则默认的类型为"application/octet-stream"。 支持表达式语言 (支持流属性和变量) | ||
AccessKey访问秘钥 | 指定AWS的AccessKey访问秘钥 敏感状态 支持表达式语言 (仅支持变量) | ||
SecretKey秘钥 | 指定AWS的SecretKey秘钥 敏感状态 支持表达式语言 (仅支持变量) | ||
证书文件 | 指定包含AWSAccessKey访问秘钥和SecretKey秘钥的证书属性文件路径 | ||
AWS证书提供服务 | 控制器服务API: AWSCredentialsProviderService 实现: AWSCredentialsProviderControllerService | 用于提供AWS证书的服务 | |
对象标签前缀 | 指定读取输入数据流中的属性,将匹配的属性作为对象标签写入到S3。比如:输入数据流包含如下属性且需要作为对象标签,tagS3country, tagS3PII, 则该属性可设置'tagS3' 支持表达式语言 (支持流属性和变量) | ||
移除标签前缀 | 保留 | - 移除 - 保留 | 如果移除,将从'对象标签前缀'中匹配的结果中移除标签的前缀,比如:输入数据流包含如下属性且需要作为对象标签,tagS3country, tagS3PII, 且'对象标签前缀'参数设置为'tagS3',则写入对象的的标记为'country' 和 'PII'。 |
存储类 | 标准 | - 标准 - 低冗余 | 指定写入S3的存储类 |
地区 | 美国西部 (俄勒冈) | - 亚马逊政府云 (美国) - 美国东部 (弗吉尼亚) - 美国东部 (俄亥俄州) - 美国西部 (加利福尼) - 美国西部 (俄勒冈) - 欧洲 (爱尔兰) - 欧洲 (伦敦) - 欧洲 (巴黎) - 欧洲 (法兰克福) - 亚太 (孟买) - 亚太 (新加坡) - 亚太 (悉尼) - 亚太 (东京) - 亚太 (首尔) - 南美 (圣保罗) - 中国 (北京) - 中国 (宁夏) - 加拿大 (中部) | 指定地区区域名 |
通信超时 | 30 secs | 指定连接通信超时时间 | |
过期时间规则 | 指定对象的过期时间规则 支持表达式语言 (支持流属性和变量) | ||
用户列表(所有权限) | ${s3.permissions.full.users} | 具有完全操作对象权限的由逗号分隔符分隔的多个Amazon用户ID或E-Mail账号 支持表达式语言 (支持流属性和变量) | |
用户列表(读权限) | ${s3.permissions.read.users} | 具有对象读权限的由逗号分隔符分隔的多个Amazon用户ID或E-Mail账号 支持表达式语言 (支持流属性和变量) | |
用户列表(写权限) | ${s3.permissions.write.users} | 具有对象写权限的由逗号分隔符分隔的多个Amazon用户ID或E-Mail账号 支持表达式语言 (支持流属性和变量) | |
用户列表(访问控制读权限) | ${s3.permissions.readacl.users} | 具有对象访问控制的读权限的由逗号分隔符分隔的多个Amazon用户ID或E-Mail账号 支持表达式语言 (支持流属性和变量) | |
用户列表(访问控制写权限) | ${s3.permissions.writeacl.users} | 具有对象访问控制的写权限的由逗号分隔符分隔的多个Amazon用户ID或E-Mail账号 支持表达式语言 (支持流属性和变量) | |
拥有者 | ${s3.owner} | 指定对象的拥有者的Amazon ID 支持表达式语言 (支持流属性和变量) | |
访问控制 | ${s3.permissions.cannedacl} | 对象的访问控制设置。 可设置其中之一: BucketOwnerFullControl, BucketOwnerRead, LogDeliveryWrite, AuthenticatedRead, PublicReadWrite, PublicRead, Private; 但当其他权限参数被设置,则该参数被忽略 支持表达式语言 (支持流属性和变量) | |
SSL服务 | 控制器服务API: SSLContextService 实现: StandardRestrictedSSLContextService StandardSSLContextService | 指定是否启用SSL连接服务,如果设置,将被使用来创建安全连接 | |
服务URL | 指定用于替代AWS默认的主机、端口号以及路径的的服务URL。将根据AWS地区从AWS库中选择一个服务URL,允许使用其他S3兼容的服务URL。 支持表达式语言 (仅支持变量) | ||
签名 | 默认签名 | - 默认签名 - V4签名 - v2签名 | 通常AWS库使用默认的签名器,但是通过该参数,允许自定义指定S3兼容的老的签名服务 |
分块阀值 | 5 GB | 指定文件大小阀值,决定从使用普通的PutS3Object API 转变到 PutS3MultipartUpload API来支持断点续传。如果输入数据流文件大于该值,则将采用断点续传。有效值介于50MB 到 5GB. | |
分块大小 | 5 GB | 指定断点续传所用PutS3Multipart上传API的分块大小。在上传过程中,流文件将被分割成多块,但是最后发送的部分可能更小。有效值介于 50MB 到 5GB | |
分块上传时效间隔 | 60 min | 指定评估S3断点续传的实际间隔。当组件启动时,如果超过该间隔,将启动过期评估 | |
分块上传最大时间阀值 | 7 days | 指定S3断点续传的最大时间,当超过该时间阀值,任何上传将被终止。 | |
服务器端加密 | 无 | - 无 - AES256 | 指定服务器端使用的加密算法 |
Use Chunked Encoding | true | - true - false | Enables / disables chunked encoding for upload requests. Set it to false only if your endpoint does not support chunked uploading. |
Use Path Style Access | true | - true - false | Path-style access can be enforced by setting this property to true. Set it to true if your endpoint does not support virtual-hosted-style requests, only path-style requests. |
代理配置 | 控制器服务API: ProxyConfigurationService 实现: StandardProxyConfigurationService | 指定代理网络的配置服务,如果设置,可针对每个组件配置相同的代理设置。 支持代理:HTTP + AuthN | |
代理主机 | 指定代理主机名或IP 支持表达式语言 (仅支持变量) | ||
代理端口号 | 指定代理端口号 支持表达式语言 (仅支持变量) | ||
代理用户名 | 指定代理用户名 支持表达式语言 (未定义) | ||
代理用户密码 | 指定代理用户密码 敏感状态 支持表达式语言 (未定义) |
动态参数:
名字 | 值 | 描述 |
---|---|---|
The name of a User-Defined Metadata field to add to the S3 Object | The value of a User-Defined Metadata field to add to the S3 Object | 允许用户自定义写入S3的对象的键值对的元数据信息 支持表达式语言 (支持流属性和变量) |
连线:
名字 | 描述 |
---|---|
success | 数据流成功输出到此连线 |
failure | 数据流失败时,输出到此连线 |
读取属性:
名字 | 描述 |
---|---|
filename | 使用数据流文件的文件名作为对象文件名 |
写入属性:
名字 | 描述 |
---|---|
s3.bucket | 对象被写入S3的桶名 |
s3.key | 对象被写入S3的键名 |
s3.contenttype | 对象被写入S3的对象内容类型 |
s3.version | 对象被写入S3的对象版本 |
s3.etag | S3对象的ETag信息 |
s3.uploadId | 上传对象到S3的上传号 |
s3.expiration | S3对象的过期时间 |
s3.sseAlgorithm | 对象的服务器端加密算法 |
s3.usermetadata | S3对象的用户Metadata信息 |
状态管理:
该组件不保存状态。
限制:
该组件没有限制
输入流要求:
组件必须提供输入流。
系统资源考量:
未提供。