重命名 Athena 中的分区列名称
Posted
技术标签:
【中文标题】重命名 Athena 中的分区列名称【英文标题】:Rename the partition column name in Athena 【发布时间】:2020-01-13 09:34:11 【问题描述】:我有一个由 Glue 通过抓取 S3 中的镶木地板文件自动创建的 Athena 表。它将文件夹名称作为分区并将此分区列命名为“partition_0”。 现在,我想将此分区重命名为“snapshot_date”,并且可以使用“edit_schema”选项在 Glue UI 中执行此操作。但另一方面,当我尝试使用 Java 代码做同样的事情时,我无法做到。 这是我通过 java 代码运行以完成此操作的查询。
Alter table test_java_crawler.pao_java_input_data change column `partition_0` `snapshot_date` string
我收到以下错误:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Invalid column reference partition_0
有没有办法使用 java 以编程方式修改此分区名称?如果是,您能否指出用于此目的的 API?
【问题讨论】:
【参考方案1】:我已经使用 Glue 客户端使用此功能实现了此功能: https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/glue/model/UpdateTableResult.html,提供更新分区键的选项。
【讨论】:
以上是关于重命名 Athena 中的分区列名称的主要内容,如果未能解决你的问题,请参考以下文章