如何在 Athena 中导入嵌套的 json 文件

问题描述

以下是我尝试在 Amazon Athena 的表中创建的嵌套 json 格式。

谁能帮我创建表和查询表

{
  "Environment": "agilent-aws-sbx-21","Source1": "sdx:HD3,dev:HQ2,test:HT1,prod:HP1","Source2": "","Source3": "","Source4": ""
}

我试过这样但查询没有执行

CREATE EXTERNAL TABLE cfg_env ( environment string,source1 string,source2 string,source3 string,souce4 string ) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' WITH SERDEPROPERTIES ( 'serialization.format' = '1' )存储为 INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeytextoutputFormat' LOCATION 's3://agilent-aws-sbx-21-enterprise-analytics/it_share/ config/config_env/'TBLPROPERTIES('classification'='json');

解决方法

我试过这样但查询没有执行

创建外部表 cfg_env ( environment 字符串, source1 字符串, source2 字符串, source3 字符串, souce4 字符串 ) 行格式 SERDE 'org.openx.data.jsonserde.JsonSerDe' 具有 SERDE 属性 ( 'serialization.format' = '1' ) 存储为输入格式 'org.apache.hadoop.mapred.TextInputFormat' 输出格式 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' 位置 's3://agilent-aws-sbx-21-enterprise-analytics/it_share/config/config_env/' TBLPROPERTIES ('classification'='json');