ALTER TABLE SET TBLPROPERTIES - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

ALTER TABLE SET TBLPROPERTIES

向表中添加自定义或预定义元数据属性并设置其分配的值。要查看表中的属性,请使用 SHOW TBLPROPERTIES 命令。

Apache Hive 托管表不受支持,因此设置 'EXTERNAL'='FALSE' 没有效果。

摘要

ALTER TABLE table_name SET TBLPROPERTIES ('property_name' = 'property_value' [ , ... ])

参数

SET TBLPROPERTIES ('property_name' = 'property_value' [ , ... ])

将要添加的元数据属性指定为 property_name,将每个属性的值指定为 property value。如果 property_name 已存在,其值将设置为新指定的 property_value

以下预定义表属性具有特殊用途。

预定义属性 描述
classification 为 Amazon Glue 指示数据类型。可能的值为 csvparquetorcavrojson。在 CloudTrail 控制台中为 Athena 创建的表将 cloudtrail 添加为 classification 属性的值。有关更多信息,请参阅 CREATE TABLE 的 TBLPROPERTIES 部分。
has_encrypted_data 指示由 LOCATION 指定的数据集是否已加密。有关更多信息,请参阅 CREATE TABLE根据 Amazon S3 中的加密数据集创建表 的 TBLPROPERTIES 部分。
orc.compress 指定 ORC 格式的数据压缩格式。有关更多信息,请参阅 ORC SerDe
parquet.compression 指定 Parquet 格式的数据压缩格式。有关更多信息,请参阅 Parquet SerDe
write.compression 指定文本文件或 JSON 格式的数据压缩格式。对于 Parquet 和 ORC 格式,请分别使用 parquet.compressionorc.compress 属性。
compression_level 指定要使用的压缩级别。此属性仅适用于 ZSTD 压缩。可能的值介于 1 和 22 之间。默认值为 3。有关更多信息,请参阅 使用 ZSTD 压缩级别
projection.* 分区投影中使用的这些自定义属性可让 Athena 了解在对表运行查询时应使用哪种分区模式。有关更多信息,请参阅 将分区投影与 Amazon Athena 结合使用
skip.header.line.count 定义表时忽略数据中的表头。有关更多信息,请参阅 忽略标题
storage.location.template 指定投影分区的自定义 Amazon S3 路径模板。有关更多信息,请参阅 设置分区投影

示例

以下示例将为表属性添加一条注释。

ALTER TABLE orders SET TBLPROPERTIES ('notes'="Please don't drop this table.");

以下示例将修改表 existing_table 以使用 Parquet 文件格式以及 ZSTD 压缩和 ZSTD 压缩级别 4。

ALTER TABLE existing_table SET TBLPROPERTIES ('parquet.compression' = 'ZSTD', 'compression_level' = 4)