OSS支持标准存储、低频访问、归档存储、冷归档存储四种存储类型,您可以通过生命周期规则或者CopyObject的方式随时转换文件(Object)的存储类型。
通过生命周期规则自动转换Object的存储类型
OSS生命周期管理(Lifecycle)提供Object Transition机制,支持自动转换文件存储类型。
- 基于生命周期规则的存储类型转换规则
- 本地冗余(LRS)
本地冗余类型文件转换规则如下:
- 标准存储(LRS)类型可转换为低频访问(LRS)、归档存储(LRS)和冷归档存储(LRS)类型。
- 低频访问(LRS)类型可转换为归档存储(LRS)和冷归档存储(LRS)类型。
- 归档存储(LRS)类型转换为冷归档存储(LRS)类型。
- 同城冗余(ZRS)
同城冗余类型文件转换规则:仅支持标准存储(ZRS)类型转换为低频访问(ZRS)类型。
- 本地冗余(LRS)
- 基于生命周期规则的存储类型转换示例
例如Bucket的冗余类型为本地冗余,对Bucket内指定前缀的Object,可配置如下Lifecycle策略。策略说明如下:
- Object存储30天后,自动转换为低频访问类型。
- Object存储180天后,自动转换为归档存储类型。
- Object存储360天后,自动转换为冷归档存储类型。
- Object存储超过720天后,Object会被自动删除。
说明 如果一个Bucket同时配置了 Object保留指定周期后转换为低频访问、 Object保留指定周期后转换为归档存储 、Object保留指定周期后转换为冷归档存储和 Object保留指定周期后删除的策略,多条策略同时设置时,转换周期必须满足以下条件:转换为低频访问的周期<转换为归档的周期<转换为冷归档的周期<指定周期后删除
- 生命周期规则配置方式
操作方式 说明 控制台 Web应用程序,直观易用。 命令行工具 命令行工具,性能好。 Java SDK 丰富、完整的各类语言SDK demo。 Python SDK PHP SDK Go SDK C SDK .NET SDK Node.js SDK Ruby SDK
通过CopyObject接口手动转换Object的存储类型
- 基于CopyObject的存储类型转换规则
- 本地冗余(LRS)
各存储类型之间可任意转换。说明 归档或冷归档类型的文件需要解冻(Restore)之后才能修改存储类型。关于如何解冻文件,请参见 解冻文件。
- 同城冗余(ZRS)
仅支持标准存储(ZRS)和低频访问(ZRS)之间互相转换。
- 本地冗余(LRS)
- 基于CopyObject的存储类型转换操作方式
操作方式 说明 控制台 Web应用程序,直观易用。 命令行工具ossutil 命令行工具,性能好。 Java SDK 丰富、完整的各类语言SDK demo。 Python SDK Go SDK C++ SDK
注意事项
- 最小计量空间
对于小于64 KB的Object,会按照64 KB计算空间大小。
- 最短存储周期
低频访问类型的Object需要至少保存30天;归档存储类型的Object需至少保存60天 ;冷归档存储类型的Object需至少保存180天。若存储未满指定周期,会收取存储不足规定时长容量费用。
- 通过生命周期自动转换Object存储类型
通过生命周期转换Object存储类型时,不会重新计算Object的存储时间。例如a.txt作为标准存储类型已经在OSS中存储了10天,通过生命周期转换为低频访问类型,继续存储20天即满足最少存储30天的要求。详情请参见常见问题。
- 手动转换Object存储类型
手动转换Object存储类型时,会重新计算Object的存储时间。例如a.txt作为标准存储类型已经在OSS中存储了10天,手动将Object转换为低频访问类型,则需继续存储30天才满足最少存储30天的要求。
- 通过生命周期自动转换Object存储类型
- 解冻时间
归档存储和冷归档存储类型Object恢复为可读取状态需要一定的解冻时间,如果业务场景需要实时读取Object时,不建议将Object转换成归档存储或冷归档存储类型。
- 数据取回费用
访问低频访问类型的Object时,会根据实际访问量额外收取数据取回费用;解冻归档存储和冷归档存储类型的Object会额外收取数据解冻费用,此费用与流出流量费用是两个独立计费项。如果Object每月平均访问频率高于1次,Object转换成低频访问、归档存储或冷归档存储类型后的使用成本可能高于标准存储类型。
- 临时存储费用(公测期间暂不收取)
冷归档存储类型Object在数据解冻时会生成一份标准存储类型的Object副本用于访问。该Object在解冻时间结束前会以标准存储的存储费率计算临时存储费用。