CTAS 查询的注意事项和限制
下表介绍了您需要了解的有关 Athena 中 CTAS 查询的信息:
| 项目 | 您需要了解的内容 |
|---|---|
| CTAS 查询语法 |
CTAS 查询语法不同于用于创建表的 CTAS 查询的表、数据库或列名不应包含引号或反引号。为确保这一点,请确保您的表、数据库或列名没有保留关键字,并且不包含特殊字符(需要引号或反引号将它们括起来)。有关更多信息,请参阅表、数据库和列的名称。 |
| CTAS 查询与视图 |
CTAS 查询将新数据写入 Amazon S3 中的指定位置,而视图不会写入任何数据。 |
| CTAS 查询结果的位置 |
如果您的工作组为查询结果位置覆盖客户端设置,则 Athena 会在位置 如果您的工作组不覆盖查询结果位置,则可在 CTAS 查询中使用语法
如果省略 |
| 查找孤立文件 |
如果 |
| 用于存储查询结果的格式 |
如果您未指定数据存储格式,预设情况下,CTAS 查询的结果以 Parquet 格式存储。您可以使用 |
| 压缩格式 |
|
| 分区和存储桶限制 |
您可以对 CTAS 查询的结果数据进行分区和分桶。有关更多信息,请参阅分桶与分区。Athena 支持写入到 100 个唯一的分区和存储桶组合。例如,如果目标表中未定义任何存储桶,则最多可指定 100 个分区。如果指定了五个存储桶,则允许 20 个分区(每个分区有五个存储桶)。如果超过此计数,则会发生错误。 在指定目标表的属性的 有关绕过 100 个分区的限制的信息,请参阅使用 CTAS 和 INSERT INTO 创建带 100 多个分区的表。 |
| 加密 |
您可以加密 Amazon S3 中的 CTAS 查询结果,其方法类似于在 Athena 中加密其他查询结果。有关更多信息,请参阅加密在 Amazon S3 中存储的 Athena 查询结果 使用 JDBC 或 ODBC 时对 Athena 查询结果进行加密。 |
| 预期存储桶拥有者 | 对于 CTAS 语句,预期存储桶拥有者设置不适用于 Amazon S3 中的目标表位置。预期存储桶拥有者设置仅适用于您为 Athena 查询结果指定的 Amazon S3 输出位置。有关更多信息,请参阅使用 Athena 控制台指定查询结果位置。 |
| 数据类型 |
CTAS 查询的列数据类型与为原始查询指定的类型相同。 |