更新时间:2024-03-04 GMT+08:00

约束与限制

本章介绍OBS一些主要特性的使用限制。

表1 OBS使用限制

限制项

说明

带宽

单个账号默认的读写(GET/PUT)带宽上限是16Gbit/s。如果带宽达到该阈值,请求会触发流控

每秒请求数(Query Per Second, QPS

  • 单个账号默认的写请求(PUT Object)上限是6000请求每秒。
  • 单个账号默认的读请求(GET Object)上限是10000请求每秒。
  • 单个账号默认的列举类请求(LIST)上限是1000请求每秒。
说明:

如果用户在对象命名规则上使用了顺序前缀(如时间戳或字母顺序),可能导致大量对象的请求访问集中于某个特定分区,造成访问热点。会使热点分区上的请求速率受限,访问时延上升。

推荐使用随机前缀对象名,这样请求就会均匀分布在多个分区,达到水平扩展的效果。

访问规则

OBS基于DNS解析性能和可靠性的考虑,要求凡是携带桶名的请求,在构造URL的时候都必须将桶名放在domain前面,形成三级域名形式,又称为虚拟主机访问域名。

例如,如果您有一个位于eu-west-0区域的名为test-bucket的桶,期望访问桶中一个名为test-object对象的acl,正确的访问URL为https://test-bucket.oss.eu-west-0.prod-cloud-ocb.orange-business.com/test-object?acl

  • OBS中,桶名必须是全局唯一的且不能修改,即用户创建的桶不能与自己已创建的其他桶名称相同,也不能与其他用户创建的桶名称相同。
  • 桶创建成功后,桶名、所属区域和数据冗余存储策略均不允许修改。
  • 一个账号及账号下的所有IAM用户可创建的桶+并行文件系统的上限为100个。建议结合OBS细粒度权限控制能力,合理进行桶规划和使用。
  • 默认情况下,OBS系统和单个桶都没有总数据容量和对象数量的限制。
  • 删除桶之前必须确保桶内所有对象已彻底删除。
  • 用户删除桶后,需要等待30分钟才能创建同名桶和并行文件系统。

上传对象

  • OBS管理控制台支持批量上传文件,单次最多支持100个文件同时上传,总大小不超过5GB。如果只上传1个文件,则这个文件最大为5GB。
  • OBS Browser+、obsutil、API和SDK上传的单个对象最大是48.8TB。
  • 在未开启多版本控制功能的情况下,如果新上传的文件和桶内文件重名,则新上传的文件会自动覆盖老文件,且不会保留老文件的ACL等信息;如果新上传的文件夹和桶内文件夹重名,则上传后会将新老文件夹合并,合并过程如遇重名文件,会使用新上传的文件夹中的文件进行覆盖。
  • 在开启了多版本控制功能的情况下,如果新上传的文件和桶内文件重名,则会在老文件上新增一个版本。
  • 对象键(对象名)虽然可以使用任何UTF-8字符,但是建议按照对象键命名指导原则进行命名,有助于最大程度符合DNS、Web安全字符、XML分析器和其他API的要求。

删除对象

桶没有开启多版本控制功能时,对象删除后不可恢复,请谨慎操作。

恢复冷存储对象

  • 冷存储的对象正在恢复的过程中,不允许暂停或删除恢复任务。
  • 对象的恢复状态为恢复中时,对象不能再次恢复。
  • 数据恢复后,会产生一个标准存储类别的对象副本,即对象同时存在标准存储类别的对象副本和冷存储类别的对象。恢复有效期到期后标准存储类别的对象副本会自动删除。

生命周期管理

单个桶的生命周期规则条数没有限制,但一个桶中所有生命周期规则的XML描述总大小不能超过20KB。

跨区域复制

详见跨区域复制简介

自定义域名绑定

  • 桶版本号为3.0及以上的桶支持自定义绑定域名功能。
  • OBS自定义域名绑定暂时不支持HTTPS访问自定义域名,只支持HTTP访问自定义域名。
  • 一个自定义域名只能绑定到一个桶域名上。
  • 绑定的自定义域名后缀目前支持的范围为2~6个英文大小写字母。

ACL

  • 一个桶的桶ACL最多支持100条授权,所有桶ACL策略大小总和不超过50KB。
  • 一个对象的对象ACL最多支持100条授权,所有对象ACL策略大小不超过50KB。

桶策略

单个桶的桶策略条数(statement)没有限制,但一个桶中所有桶策略的JSON描述总大小不能超过20KB。

并行文件系统

详见《对象存储并行文件系统特性指南》