跳至内容

导入具有嵌套数组的JSON

0

【以下的问题经过翻译处理】 有一段JSON文件如下:

{

"userid" : "10",

"actions" :

[

{"type":"flip", "timestamp":"5pm"},

{"type":"jump", "timestamp":"6pm"}

]

}

需要将其导入到Redshift的一个表格中,该表格有列"userid, type, timestamp"字段。

现在需要把文件转换成展开的结构,是否可以使用标准的复制命令实现?

专家
已提问 2 年前23 查看次数
1 回答
0

【以下的回答经过翻译处理】 目前无法使用 COPY 导入此类数据。但是,您可以将数据定义为 Spectrum 外部表,并使用我们的嵌套数据支持将数据导入。<https://docs.aws.amazon.com/redshift/latest/dg/tutorial-query-nested-data .html>

创建外部表 spectrum.nested_example
     ( 用户 ID 整数
     , 动作数组<struct<type:varchar(20), timestamp:varchar(20)>>
     )
行格式 SERDE 'org.openx.data.jsonserde.JsonSerDe'
位置 's3://benchmark-files/temp/nested_data/nested_example/'
;

选择 u.userid
      ,一种
      ,a.时间戳
来自 spectrum.nested_example u
INNER JOIN c.actions a ON true
;

专家
已回答 2 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。