Amazon S3 表存储桶、表和命名空间命名规则
创建表存储桶时,您选择存储桶名称和 AWS 区域,该名称在所选区域中对于您的账户必须是唯一的。创建表存储桶后,无法更改存储桶名称或区域。表存储桶名称必须遵循特定的命名规则。有关表存储桶及其中的表和命名空间的命名规则的更多信息,请参阅以下主题。
表存储桶命名规则
创建 Amazon S3 表存储桶时,需要指定表存储桶名称。与其它存储桶类型一样,无法重命名表存储桶。与其它存储桶类型不同,表存储桶不在全局命名空间中,因此,您账户中的每个存储桶名称只需要在当前 AWS 区域内保持唯一即可。
有关通用存储桶命名规则,请参阅通用存储桶命名规则。有关目录存储桶命名规则的信息,请参阅目录存储桶命名规则。
以下命名规则适用于表存储桶。
-
存储桶名称必须介于 3 到 63 个字符之间。
-
存储桶名称只能由小写字母、数字和连字符 (
-
) 组成。 -
存储桶名称必须以字母或数字开头和结尾。
-
存储桶名称不得包含任何下划线 (
_
) 或句点 (.
)。 -
存储桶名称不得以下面的任何保留前缀开头:
-
xn--
-
sthree-
-
amzn-s3-demo-
-
aws
-
-
存储桶名称不得以下面的任何保留后缀结尾:
-
-s3alias
-
--ol-s3
-
--x-s3
-
--table-s3
-
表和命名空间的命名规则
以下命名规则适用于表存储桶中的表和命名空间:
-
名称长度必须介于 1 到 255 个字符之间。
-
名称只能由小写字母、数字和下划线 (
_
) 组成。 -
名称必须以字母或数字开头和结尾。
-
名称不得包含连字符 (
-
) 或句点 (.
)。 -
表名称在命名空间内必须是唯一的。
-
命名空间在表存储桶中必须是唯一的。
-
命名空间名称不得以保留前缀
aws
开头。
重要
创建表时,请确保在表名称和表定义中全部使用小写字母。例如,请确保列名称全部为小写。如果表名称或表定义包含大写字母,则 AWS Lake Formation 或 AWS Glue Data Catalog 不支持该表。在这种情况下,Amazon Athena 等 AWS 分析服务将无法看到您的表,即使表存储桶与 AWS 分析服务集成,也不例外。
如果表定义包含大写字母,则在 Athena 中运行 SELECT
查询时会收到以下错误消息:“GENERIC_INTERNAL_ERROR: Get table request failed: com.amazonaws.services.glue.model.ValidationException: Unsupported Federation Resource - Invalid table or column names.”