Minio中桶规则

时间:2024-04-10 16:53:13

https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html

Minio中桶规则

A bucket is owned by the AWS account that created it. Bucket ownership is not transferable. When you create a bucket, you choose the Region to create the bucket in. After you create a bucket, you can't change its Region.

By default, you can create up to 100 buckets in each of your AWS accounts. If you need additional buckets, you can increase your account bucket limit to a maximum of 1,000 buckets by submitting a service limit increase. There is no difference in performance whether you use many buckets or just a few. For information about how to increase your bucket limit, see AWS Service Limits in the AWS General Reference.

默认情况下,每个AWS帐户最多可以创建100个存储桶。如果您需要额外的存储桶,您可以通过提交服务限制增加,将您的帐户存储桶限制增加到最多1000个存储桶。无论使用多个存储桶还是仅使用几个存储桶,性能都没有区别。有关如何增加bucket限制的信息,请参阅AWS通用参考资料中的AWS服务限制。

Reusing Bucket Names 重用Bucket名称

If a bucket is empty, you can delete it. After a bucket is deleted, the name becomes available for reuse. However, after you delete the bucket, you might not be able to reuse the name for various reasons. For example, when you delete the bucket and the name becomes available for reuse, another account, might create a bucket with the name. Additionally, some time may pass before you can reuse the name of a deleted bucket. If you want to use the same bucket name, we recommend that you don't delete the bucket.

如果bucket为空,则可以将其删除。删除一个bucket之后,该名称就可以重用了。但是,删除bucket之后,由于各种原因,您可能无法重用该名称。例如,当您删除bucket并且名称可供重用时,另一个帐户可能会创建一个具有该名称的bucket。另外,在重用已删除bucket的名称之前,可能需要一些时间。如果要使用相同的bucket名称,建议不要删除bucket。

Objects and Buckets 对象和存储桶

There is no limit to the number of objects that you can store in a bucket. You can store all of your objects in a single bucket, or you can organize them across several buckets. However, you can't create a bucket from within another bucket.

存储在bucket中的对象数量没有限制。您可以将所有对象存储在一个bucket中,也可以跨多个bucket组织它们。但是,不能从另一个bucket中创建bucket。

Bucket Operations Bucket操作

The high-availability engineering of Amazon S3 is focused on get, put, list, and delete operations. Because bucket operations work against a centralized, global resource space, it is not appropriate to create or delete buckets on the high-availability code path of your application. It is better to create or delete buckets in a separate initialization or setup routine that you run less often.

Amazon S3的高可用性工程专注于get、put、list和delete操作。由于bucket操作针对集中的全局资源空间,因此不适合在应用程序的高可用性代码路径上创建或删除bucket。最好在单独的初始化或设置例程中创建或删除运行频率较低的bucket。

Bucket Naming and Automatically Created Buckets Bucket命名和自动创建的Bucket

If your application automatically creates buckets, choose a bucket naming scheme that is unlikely to cause naming conflicts. Ensure that your application logic will choose a different bucket name if a bucket name is already taken.

如果应用程序自动创建bucket,请选择不太可能导致命名冲突的bucket命名方案。确保应用程序逻辑将选择不同的bucket名称(如果已采用bucket名称)。

Rules for Bucket Naming Bucket命名规则

After you create an S3 bucket, you can't change the bucket name, so choose the name wisely.

创建S3 bucket后,不能更改bucket名称,所以要明智地选择名称。

Important 重要的

On March 1, 2018, we updated our naming conventions for S3 buckets in the US East (N. Virginia) Region to match the naming conventions that we use in all other worldwide AWS Regions. Amazon S3 no longer supports creating bucket names that contain uppercase letters or underscores. This change ensures that each bucket can be addressed using virtual host style addressing, such as https://myawsbucket.s3.us-east-1.amazonaws.com. We highly recommend that you review your existing bucket-creation processes to ensure that you follow these DNS-compliant naming conventions.

2018年3月1日,我们更新了美国东部(弗吉尼亚州北部)地区S3存储桶的命名约定,以匹配我们在全球所有其他AWS地区使用的命名约定。Amazon S3不再支持创建包含大写字母或下划线的bucket名称。此更改确保每个bucket都可以使用虚拟主机方式寻址,如https://myawsbucket.s3.us-east-1.amazonaws.com。我们强烈建议您检查现有的bucket创建过程,以确保遵循这些符合DNS的命名约定。

Rules 规则

The following are the rules for naming S3 buckets in all AWS Regions:

以下是在所有AWS区域中命名S3存储桶的规则:

  • Bucket names must be unique across all existing bucket names in Amazon S3.

  • Bucket名称在Amazon S3中的所有现有Bucket名称中必须是唯一的。

  • Bucket names must comply with DNS naming conventions.

  • Bucket名称必须符合DNS命名约定。

  • Bucket names must be at least 3 and no more than 63 characters long.

  • 存储桶名称的长度必须至少为3个字符,且不得超过63个字符。

  • Bucket names must not contain uppercase characters or underscores.

  • Bucket名称不能包含大写字符或下划线。

  • Bucket names must start with a lowercase letter or number.

  • Bucket名称必须以小写字母或数字开头。

  • Bucket names must be a series of one or more labels. Adjacent labels are separated by a single period (.). Bucket names can contain lowercase letters, numbers, and hyphens. Each label must start and end with a lowercase letter or a number.

  • Bucket名称必须是一系列一个或多个标签。相邻的标签用一个句点(.)分隔。Bucket名称可以包含小写字母、数字和连字符。每个标签必须以小写字母或数字开头和结尾。

  • Bucket names must not be formatted as an IP address (for example, 192.168.5.4).

  • Bucket名称不能格式化为IP地址(例如192.168.5.4)。

  • When you use virtual hosted–style buckets with Secure Sockets Layer (SSL), the SSL wildcard certificate only matches buckets that don't contain periods. To work around this, use HTTP or write your own certificate verification logic. We recommend that you do not use periods (".") in bucket names when using virtual hosted–style buckets.

  • 当使用带有安全套接字层(SSL)的虚拟托管样式存储桶时,SSL通配符证书只匹配不包含句点的存储桶。要解决此问题,请使用HTTP或编写自己的证书验证逻辑。建议在使用虚拟托管样式存储桶时,不要在存储桶名称中使用句点(“.”)。

Legacy Non–DNS-Compliant Bucket Names

传统的不符合DNS的Bucket名称

Beginning on March 1, 2018, we updated our naming conventions for S3 buckets in the US East (N. Virginia) Region to require DNS-compliant names.

从2018年3月1日开始,我们更新了美国东部(弗吉尼亚州北部)地区S3存储桶的命名约定,以要求符合DNS的名称。

The US East (N. Virginia) Region previously allowed more relaxed standards for bucket naming, which could have resulted in a bucket name that is not DNS-compliant. For example, MyAWSbucket was a valid bucket name, even though it contains uppercase letters. If you try to access this bucket by using a virtual-hosted–style request (https://MyAWSbucket.s3.us-east-1.amazonaws.com/yourobject), the URL resolves to the bucket myawsbucket and not the bucket MyAWSbucket. In response, Amazon S3 returns a "bucket not found" error. For more information about virtual-hosted–style access to your buckets, see Virtual Hosting of Buckets.

美国东部(N.Virginia)地区此前允许更宽松的bucket命名标准,这可能导致bucket名称不符合DNS。例如,MyAWSbucket是一个有效的bucket名称,即使它包含大写字母。如果尝试使用虚拟托管样式的请求(https://MyAWSbucket.s3.us-east-1.amazonaws.com/yourobject)访问此bucket,则URL将解析为bucket MyAWSbucket,而不是bucket MyAWSbucket。作为响应,Amazon S3返回一个“bucket not found”错误。有关虚拟托管式访问存储桶的详细信息,请参阅存储桶的虚拟托管。

The legacy rules for bucket names in the US East (N. Virginia) Region allowed bucket names to be as long as 255 characters, and bucket names could contain any combination of uppercase letters, lowercase letters, numbers, periods (.), hyphens (-), and underscores (_).

美国东部(弗吉尼亚州北部)地区的旧版桶名规则允许桶名长达255个字符,桶名可以包含大写字母、小写字母、数字、句点(.)、连字符(-)和下划线(u)的任意组合。

The name of the bucket used for Amazon S3 Transfer Acceleration must be DNS-compliant and must not contain periods ("."). For more information about transfer acceleration, see Amazon S3 Transfer Acceleration.

用于Amazon S3传输加速的bucket的名称必须符合DNS,并且不能包含句点(“.”)。有关传输加速的更多信息,请参见Amazon S3传输加速。