之前我们在【敏捷云 · 成本优化系列】中,连接分享了五篇关于成本优化的文章(
底部有前五篇的链接 ),后台收到不少希望我们能推送更多关于成本优化方面内容的留言。好!满足你们。今天我们的【成本优化系列】推送的内容是:S3的最佳优化实践。 在之前的分享中, 提到过一些存储优化的建议, 今天我们通过详细的优化案例来给大家分享在 S3 存储优化过程中的细节操作。虽然 S3 的存储成本本来就不高,但不少客户在使用一段时间 Amazon S3 服务后,都不可避免地考虑到成本优化方面的问题。 在现实状况下,由于多年的数据堆积和后期系统开发等方面因素,不能很准确定义出存储桶中的数据情况(比如某个文件夹下面有多少文件是 30 天以内需要访问的,多少文件是 30 天之外会访问的,多少文件是 0KB 的文件,多少文件是小于 128KB 的文件等)。在些状况下进行 S3 成本优化,过程中可能会遇到很多问题,甚至不恰当的优化方式不但不会降低成本反而会导致费用的进一步增加。所以不能仅靠粗略估计,而是需要通过更细致的分析进行各种优化方式的优劣对比,找到最合适的优化方案。 下面我们一起来看看 S3 成本优化的最佳实践过程吧。
S3存储类型概要
S3存储类型分为
- S3标准
- S3智能分层
- S3-IA (包括one zone)
- S3 Glacier
- S3 Glacier Deep Archive
我们看一下如此案例怎样优化才是最佳。
S3成本优化过程
注意下面优化的部分提到的内容不涉及到开启了版本控制的桶,对于开启了版本控制的桶虽逻辑相同,但是查询方法会有差异。
1
利用生命周期管理清理掉未完成的分段上传文件
分段上传是针对一些大的文件到S3桶AWS给出的推荐上传方法。但是传输过程中某几个分段失败了,留下了其他的不完整文件分段。由于这部分文件是隐藏文件但却占用空间,在做优化之前,通常建议把这部分从桶上删除掉。如果想了解有多少这类文件可以使用如下命令进行查询(AWS CLI命令)。
aws s3api list-multipart-uploads –bucket my-bucket
很多对存储桶应用较多的用户这类费用甚至占到S3桶总费用的10%。参考以下文档对整桶配置生命周期根据需要清理这些未完成文件分段,使用生命周期删除文件并不产生额外费用。
h