【问题标题】:The optimal number of buckets in Amazon S3Amazon S3 中的最佳存储桶数
【发布时间】:2021-01-07 22:06:21
【问题描述】:

我想知道通过增加存储桶数量,Amazon S3 的行为是什么?据推测,根据文档:

默认情况下,您最多可以在每个 AWS 账户中创建 100 个存储桶。如果您需要额外的存储桶,您可以通过提交服务限制增加将您的账户存储桶限制增加到最多 1,000 个存储桶。无论您使用多个存储桶还是仅使用几个存储桶,性能都没有差异。

所以我很好奇基于桶数的 S3 性能图。

【问题讨论】:

  • "性能没有差别"
  • 但是当试图找到一个对象时,它会计算对象键的哈希值。所以当桶的数量尽可能多时,就会有很大的哈希空间,因此会对查找操作产生影响。
  • 或许不会。我相信亚马逊的文档。他们构建了这个东西,他们知道它是如何工作和扩展的。

标签: amazon-web-services amazon-s3 boto3 boto botocore


【解决方案1】:

存储在存储桶中的对象数量没有限制。理论上,您可以在一个存储桶中完成所有操作。或者,也许每个区域一个存储桶。

当存储桶有数百万个对象时,列出存储桶的内容可能会变得非常慢。在这里您可以使用Amazon S3 Inventory,它可以提供列出所有对象的每日或每周 CSV 文件。

除了列出存储桶的内容之外,性能不应受到存储桶大小的影响。但是,请参阅:Best Practices Design Patterns: Optimizing Amazon S3 Performance

【讨论】:

  • 问题是关于桶的数量而不是桶的大小。举个例子,1000个桶的性能等于100个桶的状态?
  • 分配给单个账户的桶数不会对任何事情产生影响。 Amazon S3 拥有数百万客户和数百万存储桶。再创建一个桶对桶的性能没有影响。
猜你喜欢
  • 2016-08-25
  • 1970-01-01
  • 2011-09-10
  • 1970-01-01
  • 1970-01-01
  • 2023-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多