You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Glue创建含STRUCT类型表后,Athena查询报数据类型无效错误

解决AWS Glue创建带嵌套字段表时的HIVE_INVALID_METADATA错误

问题原因

AWS Glue数据目录底层兼容Hive元数据规范,Hive中定义嵌套对象使用的是ROW类型而非STRUCT类型。你在Glue中直接指定STRUCT类型会触发元数据校验不通过,导致查询报错。

解决方案

在Glue中定义嵌套字段时,将类型从STRUCT替换为ROW,和Hive建表语句保持一致:

原Glue中的类型定义:

STRUCT <  
  field1: STRING,
  field2: STRING
>

修改为:

ROW <  
  field1: STRING,
  field2: STRING
>

操作步骤

  • 登录AWS Glue控制台,找到目标表testtable
  • 进入表编辑页面,修改testrecord列的数据类型为上述ROW格式
  • 保存表结构后,重新执行查询即可正常访问

补充说明

通过Athena执行CREATE TABLE语句能正常工作,是因为Athena会自动按照Hive兼容的元数据格式同步到Glue数据目录,自动使用ROW类型存储嵌套字段的元数据,避开了手动在Glue中指定类型的格式问题。

内容的提问来源于stack exchange,提问作者oceansize

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 07:18:19