对象存储 · S3

存储账单里,一半以上通常都是冷数据

把访问频率低的对象挪到合适的存储类别,是零业务改造的纯收益动作。我们做过最大的一次单项优化省了每月 ¥21 万。

  • 典型降本存储成本降 45%-70%
  • 业务改造无需改代码
  • 生效周期规则生效后 1-30 天

存储类别选择

单价为大致量级参考,实际以 AWS 官方价格页为准
存储类别取回延迟最短存储期适用数据
S3 Standard毫秒高频访问的热数据、网站静态资源
S3 Intelligent-Tiering毫秒访问模式不确定的数据,自动分层最省心
S3 Standard-IA毫秒30 天月访问几次的备份、日志归档
S3 One Zone-IA毫秒30 天可再生的副本数据,容忍单可用区风险
S3 Glacier Instant Retrieval毫秒90 天季度访问一次的医疗影像、媒资
S3 Glacier Flexible Retrieval分钟-小时90 天年度访问的合规归档
S3 Glacier Deep Archive12 小时180 天法规要求长期保存、几乎不取回

注意最短存储期:提前删除会按最短期收费,频繁写删的桶不适合直接上 IA 或 Glacier。

生命周期规则示例

json lifecycle-policy.json
{
  "Rules": [
    {
      "ID": "app-logs-tiering",
      "Status": "Enabled",
      "Filter": { "Prefix": "logs/" },
      "Transitions": [
        { "Days": 30,  "StorageClass": "STANDARD_IA" },
        { "Days": 90,  "StorageClass": "GLACIER_IR" },
        { "Days": 365, "StorageClass": "DEEP_ARCHIVE" }
      ],
      "Expiration": { "Days": 2555 }
    },
    {
      "ID": "unknown-access-pattern",
      "Status": "Enabled",
      "Filter": { "Prefix": "user-uploads/" },
      "Transitions": [
        { "Days": 0, "StorageClass": "INTELLIGENT_TIERING" }
      ]
    },
    {
      "ID": "cleanup-incomplete-uploads",
      "Status": "Enabled",
      "Filter": {},
      "AbortIncompleteMultipartUpload": { "DaysAfterInitiation": 7 }
    },
    {
      "ID": "expire-old-versions",
      "Status": "Enabled",
      "Filter": {},
      "NoncurrentVersionTransitions": [
        { "NoncurrentDays": 30, "StorageClass": "GLACIER_IR" }
      ],
      "NoncurrentVersionExpiration": { "NoncurrentDays": 365 }
    }
  ]
}

第三条规则最容易被忽略:未完成的分段上传会一直计费,很多桶里躺着几 TB 的僵尸分片。

落地流程

  1. 01

    开启 Storage Lens 与清单报告

    先看清桶里有什么:对象数量、大小分布、前缀分布、最近访问时间。没有数据就没法做决策。

    交付物:Storage Lens 看板、S3 Inventory 清单、冷热数据分布报告

    1-2 天(数据积累需等待)

  2. 02

    识别访问模式

    结合 CloudTrail 数据事件或服务端访问日志,统计前缀级别的读取频率与最后访问时间。

    交付物:前缀级访问热度表、可分层数据量清单

    3-5 天

  3. 03

    小范围验证

    先在一个非核心前缀上应用规则,观察一周,确认没有意外的取回费用和业务报错。

    交付物:验证报告、取回成本实测数据

    7 天

  4. 04

    全量推广与监控

    IaC 化生命周期规则,纳入版本管理,配置存储成本异动告警。

    交付物:Terraform 模块、成本告警规则、月度节省报表

    2-3 天

小对象要小心

Glacier 类别每个对象有 8-40KB 的元数据开销。如果桶里是几百万个 2KB 的小文件,转 Glacier 可能不省钱甚至更贵。这种情况应该先做打包合并,或者用 Intelligent-Tiering。

下一步

把云的复杂度交给我们,你只管做业务

留下需求,沐杉云的解决方案架构师会在一个工作日内联系你,提供免费的现状评估、迁移方案草案与 TCO 测算表。