OSS新特性:支持文件上传、复制时,指定Object的存储类型以及修改已有文件的存储类型-阿里云开发者社区

开发者社区> 阿里云存储服务> 正文
登录阅读全文

OSS新特性:支持文件上传、复制时,指定Object的存储类型以及修改已有文件的存储类型

简介: 用户在上传、复制文件时,可灵活地指定文件的存储类型为Standard、IA、Archive;用户也可以修改实时修改文件的存储类型,比如从低频型(IA)修改为标准型。

对象存储OSS发布新特性:文件上传、复制,支持指定Object的存储类型。用户在上传、复制文件时,可灵活地指定文件的存储类型为Standard、IA、Archive;用户也可以修改实时修改文件的存储类型,比如从低频型(IA)修改为标准型。


文件上传、复制操作,支持指定Object存储类型,用户可以用来做什么?

直接上传低频、归档类型的文件,而不需等待生命周期管理做类型转换

  • 之前:用户创建一个标准型的Bucket ,上传到该Bucket的文件都默认是标准型,需要等待生命周期将文件转换低频、归档类型。由于生命周期管理是定时异步操作,转换时间粒度在天级别。
  • 现在:用户在上传文件时,直接可指定文件类型为低频、归档类型。

实时改变文件的存储类型

  • 用户除了可设置生命周期管理规则,将符合规则的文件,自动按天级别,从标准转成低频、归档,或从低频转成归档。现在,可以通过覆写单个文件,实时改变文件的存储类型,并且可以在标准、低频、归档之间任意转换。

说明:

  1. 此操作涉及到数据覆盖操作,如果“低频型”或“归档型”对象分别在创建后 30 和 60 天内被覆盖,则它们会产生“提前删除“费用。比如,低频型对象创建10天后,被覆写修改成归档型或标准型,则会产生20天的提前删除费用。
    2.低频、归档文件的读取,会涉及数据取回的费用,具体可参考OSS计费说明

哪些RESTFul API支持指定Object存储类型?

支持设置Object存储类型的API

在请求Head中,增加x-oss-storage-class的Head信息,取值为Standard、IA、Archive

  • 文件上传:PutObject, InitMultipartUpload, AppendObject
  • 文件复制:CopyObject、InitMultipartUpload(大文件拷贝,配合UploadpartCopy)

示例:RESTFul API 直接上传归档型文件

PUT /oss.jpg HTTP/1.1 
Host: oss-example.oss-cn-hangzhou.aliyuncs.com Cache-control: no-cache 
Expires: Fri, 19 Oct 2018 05:38:42 GMT 
Content-Encoding: utf-8
Content-Disposition: attachment;filename=oss_download.jpg 
Date: Fri, 19 Oct 2018 06:03:28 GMT 
Content-Type: image/jpg 
Content-Length: 344606 
x-oss-storage-class: Archive
Authorization: OSS n6qrrqxo2oawuk53otfjbyc:kZoYNv66bsmc10+dcGKw5x2PRrk=  

[344606 bytes of object data]

如何使用ossutil上传、复制是指定存储类型的文件或修改文件存储类型?

使用ossutil上传指定存储类型的文件

  • 示例:上传单个文件,指定存储类型。
    以下命令,上传一个低频型的文件。
ossutil64.exe cp ./bigcsv_normal_1000.csv  oss://testosspicwhj/ --meta X-oss-Storage-Class:IA

上传完成后,查看文件类型:

ossutil64.exe ls oss://testosspicwhj/bigcsv_normal_1000.csv

可以看到,文件类型是低频型(IA)
image

  • 示例:上传文件夹,指定存储类型。
    以下命令,上传一个文件夹,其所有文件都指定为归档型。
ossutil64.exe cp ./ossutil_output/  oss://testosspicwhj/ossutil_output/ -r --meta X-oss-Storage-Class:Archive

上传完成后,查看文件类型:

ossutil64.exe ls oss://testosspicwhj/ossutil_output/ 

可以看到,该文件夹下所有文件都是Archive类型
image

使用ossutil复制文件时,指定目标文件的存储类型

  • 示例1:复制某一个文件,且复制后的文件类型指定为归档型(Archive)
ossutil64.exe cp oss://testosspicwhj/bigcsv_normal_1000.csv  oss://testosspicwhj/csv_copy.csv --meta X-oss-Storage-Class:Archive

使用ossutil覆写已有文件,以修改存储类型-使用cp命令

说明:此操作涉及到数据覆盖操作,如果“低频型”或“归档型”对象分别在创建后 30 和 60 天内被覆盖,则它们会产生“提前删除“费用。比如,低频型对象创建10天后,被覆写修改成归档型或标准型,则会产生20天的提前删除费用。

  • 示例1:覆写单个文件,修改文件的存储类型,如从标准型(Standard)修改为归档型(Archive)
ossutil64.exe cp oss://testosspicwhj/pics/Koala.jpg oss://testosspicwhj/pics/Koala.jpg --meta X-oss-Storage-Class:Archive
  • 示例2:覆写文件夹,修改文件夹所有文件的存储类型,如从低频型(IA)修改为标准型(Standard)
ossutil64.exe cp oss://testosspicwhj/pics/ oss://testosspicwhj/pics/ -r --meta X-oss-Storage-Class:Standard
  • 示例3:覆写文件夹,修改文件夹所有文件的存储类型,从归档型(Archive)修改为标准型(Standard)
ossutil64.exe restore oss://testosspicwhj/pics/ -r
ossutil64.exe cp oss://testosspicwhj/pics/ oss://testosspicwhj/pics/ -r --meta X-oss-Storage-Class:Standard

首先,将Archive文件恢复为可读状态(执行命令后,1分钟生效);然后 ,修改存储类型。

其他说明:

  • 功能开放情况说明:OSS所有区域,上述OSS的相关RESTFul API都已支持x-oss-storage-class请求Head,可指定文件的存储类型,可参考API帮助文档
  • ossutil新版本发布: ossutil1.4.2版本已发布,可参考帮助
  • OSS SDK、控制台、OSSBrowser,后续接口或操作会逐步支持指定文件的存储类型

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: