AWS Glue Crawler解析DynamoDB导出数据如何获取属性名而非单一struct列
Glue Crawler解析DynamoDB导出JSON为独立列的配置方法
DynamoDB导出到S3的JSON默认把所有业务字段嵌套在Item节点下,同时每个字段带S/N/SS等类型标记,默认Crawler会直接把Item识别为单个struct列,按以下步骤配置即可解析为独立列:
- 配置专用JSON分类器
进入Glue控制台的「分类器」页面,新建分类器:
分类器类型选择JSON,JSON路径配置为$[*].Item,优先级设置为1(数值越小优先级越高,高于默认分类器即可)。
保存后将该分类器绑定到你使用的爬网程序,重新运行爬网。
这个配置的作用是直接提取DynamoDB导出JSON中Item节点下的所有属性作为表的根级字段,不会再把整个Item识别为单个struct列。 - 开启DynamoDB导出专属支持
完成上一步后如果字段还是带S/N/SS等类型标记的struct结构,需要修改爬网程序的数据源配置:
编辑爬网程序→找到对应的S3数据源,勾选该路径是DynamoDB表的Amazon S3导出选项,保存后重新运行爬网。
Glue会自动识别DynamoDB的类型标记,把字段值直接展开为对应原生类型的列,最终生成你需要的独立字段表结构。 - 异常排查
如果重新爬网后结构没有更新,先删除Crawler之前生成的旧表,再触发爬网,避免旧结构缓存导致配置不生效。
内容的提问来源于stack exchange,提问作者HSchmale
相关产品推荐
相关产品推荐

