【发布时间】:2019-09-17 13:30:00
【问题描述】:
我有以下 json 对象结构
{
"id": "1",
"media": {
"twitter": "",
"facebook": "{\"id\":\"9999\",\"first_name\":\"abc\",\"last_name\":\"xyz\",\"name\":\"abc xyz\"}"
}
}
以下是表定义
CREATE EXTERNAL TABLE Ext_JSON_data(
id string,
media map<string,struct<id:string,first_name:string,last_name:string,name:string,email:string>>
)
ROW FORMAT SERDE
'org.openx.data.jsonserde.JsonSerDe'
WITH SERDEPROPERTIES (
'serialization.format' = '1'
)
LOCATION
's3://bucket/folder/'
谁能帮我在 Athena 中读取这个 JSON 数据
【问题讨论】:
-
你有点少了一层抽象,不是吗? { id, media: { facebook : { id, first, last } } } 在您的媒体地图 定义
-
对不起,我无法得到你的提示。请您详细解释一下吗?
-
我没有时间形成正确的答案,但是你显示的数据sn-p,有数据:{“id”:“”,“媒体”:{“facebook”:{“ id": "", "name": "" }, "twitter": "" } } ,在你的 Athena 定义中就像你假设 { "id": "", "media": { "id": "" , "名称": "" } }
-
我猜你正在寻找类似
json_parse(prestosql.io/docs/current/functions/json.html#json_parse) 的东西,对吗? -
我正在寻找类似这个线程的东西,也尝试过相同的查询,但在我的情况下它不起作用stackoverflow.com/questions/48553340/…
标签: json amazon-web-services amazon-s3 amazon-athena