成本管理
对象存储OSS的存储空间(Bucket)开启版本控制后,针对数据的覆盖和删除操作将会以历史版本的形式保存下来。在创建Bucket时可以直接开启,如果创建时没设置,完成创建后可以在Bucket列表看到版本控制,点击开启即可。如下图:
当目标存储空间dreamspark开启版本控制后,我在7月3日通过ossutil上传了名为09.jpg的文件,此后通过ossutil在7月4日的不同时间内对09.jpg文件进行了多次覆盖或不指定versionID的删除操作,OSS对该文件的每一次覆盖和删除操作均生成全局唯一的随机字符串versionID,并将文件以历史版本的形式保存在目标Bucket中。点击历史版本,显示。如下图:需要了解命令行工具ossutil的点击这里进行学习。
开启版本控制功能后,针对数据的覆盖和删除操作将会以历史版本的形式保存下来。版本控制功能本身不收取任何费用,但对当前版本和所有历史版本的文件都会收取存储费用。当Bucket累积了大量的历史版本或者过期删除标记时,您可以结合生命周期的规则删除不必要的历史版本以及过期删除标记,从而减少存储成本并有效提升列举Object的性能。
选择数据管理 > 生命周期
单击创建规则,可以参考如下说明配置生命周期规则。
配置项 | 配置方法 |
状态 | 选择启动。 |
策略 | 选择配置到整个Bucket。 |
文件过期策略 | 选择清理对象删除标记。 |
文件过期策略 | 选择过期天数。 |
删除文件 | 设置为60天,Object会在其被转换为历史版本的60天后过期,并在过期的第二天被删除。 |
碎片过期策略 | 选择过期天数。 |
删除碎片 | 设置为60天,因分片上传产生的碎片60天后过期,并在过期的第二天被删除。 |
使用生命周期过期策略管理不同版本Object时,有如下注意事项:
- 当前版本Object过期策略
- 在开启版本控制的情况下,如果生命周期规则中的过期策略作用于当前版本Object,OSS会添加删除标记将当前版本Object作为历史版本Object保留,而不是删除当前版本Object,且删除标记将成为Object的当前版本。
- 在暂停版本控制的情况下,如果生命周期规则中的过期策略作用于当前版本Object,OSS会添加删除标记作为当前版本,且versionID为null。由于OSS保证同一个Object只会有一个versionID为null的版本,因此原versionID为null的版本将被覆盖。
- 历史版本Object过期策略
在开启或暂停版本控制的情况下,如果生命周期规则中的过期策略作用于历史版本Object,OSS会永久删除历史版本Object,且无法恢复永久删除的历史版本Object。
传输加速
在开始体验之前,有必要简单认识下对象存储OSS,它是一款海量、安全、低成本、高可靠的云存储服务,可提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性,具有与平台无关的RESTful API接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。用户可以使用提供的API、SDK接口或者OSS迁移工具轻松地将海量数据移入或移出阿里云OSS。数据存储到阿里云OSS以后,您可以选择标准存储(Standard)作为移动应用、大型网站、图片分享或热点音视频的主要存储方式,也可以选择成本更低、存储期限更长的低频访问存储(Infrequent Access)、归档存储(Archive)、冷归档存储(Cold Archive)或者深度冷归档(Deep Cold Archive)作为不经常访问数据的存储方式。
接下来进入正题,我们开始从创建一个Bucket开始,找到控制台,搜索进入对象存储OSS的控制台页面,点击Bucket列表,点击创建Bucket。如下图:
在创建Bucket过程中,有几个点要注意:一是Bucket的名称必须唯一,填写的时候会自动识别,不唯一会给出提示重新命名;二是存储类型要明确,可以根据不同的存储周期来选择需要的类型,从而降低成本;三是读写权限要设定好,如果这里没想好可以默认,后期可以针对性调整。
用户可以通过OSS控制台、命令行管理工具ossutil、图形化管理工具ossbrowser、SDK、REST API等方式上传文件到OSS,下面展示如何通过OSS控制实现文件的上传和下载,文件上传会先进入扫描,确保内容的合规,用户点击上传文件才开始上传流程。如下图:
由于用户所处的地域和网络质量情况参差不齐,传统访问服务往往得不到良好的访问体验,致使用户体验下降。而要让用户得到更好的访问体验,务必在用户所在节点都部署上访问服务,这样既不高效还非常耗费成本。对象存储OSS提供传输加速和CDN加速两种加速管理服务。用户可在控制台选择对应的Bucket,选择Bucket 配置>传输加速,即可开启服务。如下图:
开启传输加速后,Bucket会在保留默认Endpoint的基础上,新增以下两种传输加速Endpoint。
- 全球加速Endpoint:地址为oss-accelerate.aliyuncs.com。传输加速接入点分布在全球各地,全球各地的Bucket均可以使用该域名进行传输加速。
- 非中国内地加速Endpoint:地址为oss-accelerate-overseas.aliyuncs.com。传输加速接入点分布在除中国内地以外的各地域,仅在中国香港及海外各地域Bucket绑定未备案的域名做CNAME指向时使用。
官方提供了四种方式来使用传输加速服务,第一种就是浏览器,通过浏览器访问OSS时,将文件URL的Endpoint字段需替换为传输加速Endpoint,例如https://dreamspark.oss-cn-shenzhen.aliyuncs.com/myphoto.jpg需改为https://dreamspark.oss-accelerate.aliyuncs.com/myphoto.jpg。如果文件访问权限为私有,则还需要加上签名信息;第二种就是利用命令行工具ossutil,添加参数 -e oss-accelerate.aliyuncs.com,将配置文件内的Endpoint替换为传输加速Endpoint;第三种是使用图形化管理工具ossbrowser,需要注意的是通过ossbrowser访问OSS时,除了要填写AccessKey(AK)信息以外,还必须指定预设OSS路径;第四种就是使用阿里云SDK。
配置了传输加速,怎么才能知道效果呢,官方提供了两种方式来验证,第一种就是在线测试,如下图:
第二种使用命令行工具ossutil,如下图:
从图上可以很直观的了解到开启了传输加速服务后,访问速度得到了提升。
除了传输加速服务外,用户还可以配置CDN加速服务,因为涉及到很多细节,这里就不做具体演示了,各位可移步使用CDN加速OSS访问。
官方还提供了加速使用场景,各位在具体工作中可以根据具体的应用场景来进行选择。
- 远距离数据传输加速
例如全球性的论坛、Top在线协同办公平台等,部分客户会因传输距离较远导致上传和下载体验非常差。传输加速功能可以让全球各地的客户使用优化后的网络来传输数据,极大地提升上传和下载速度,让不同地域的用户都能有很好的访问体验。
- GB、TB级大文件上传和下载
通过互联网远距离上传和下载大文件时,经常会因为网络延迟过大而导致传输失败。传输加速功能使用优化的互联网传输链路、调优的协议栈与传输算法,可大幅减少远距离互联网传输超时的比例。您还可以让传输加速功能与分片上传、断点续传下载结合,形成远距离大文件上传和下载的解决方案。
- 非静态、非热点数据下载加速
例如相册应用、游戏、电商、社交应用的评论内容、企业门户网站、金融类APP等,用户的下载体验直接影响产品竞争力和客户留存率。传输加速功能作为专为OSS上传、下载加速而设计的功能,可以最大限度利用客户端的网络能力,提升用户的下载体验。