gpt4 book ai didi

hadoop - 如何将LinkedIn Json文件导入Hive外部表?

转载 作者:行者123 更新时间:2023-12-02 20:10:21 25 4
gpt4 key购买 nike

以下是使用API​​从LinkedIn导出的JSON文件。

{
"numResults": 21,
"people":
{ "total": 21,
"values":
{ "firstName": "Kshitiz",
"headline": "Interbank Derivatives Bank Treasury",
"id": "aK8sji3rN7",
"industry": "Financial Services",
"lastName": "Jain",
"locations": {"country": {"code": "in"},
"name": "Mumbai Area, India"
},
"numConnections": 500,
"pictureUrl": "http://m3.licT5WVdExyDEYDzE6cp0VwZ"
}
}

}

将上述json文档保存在文本文件中,并导入到hadoop目录/ sample中。

使用以下命令创建外部表。还添加了Serde的JAR文件。
create external table linkedi(numResults int,people Struct<total:int,values:Struct<firstName:String,headline:String,id:String,industry:String,lastName:String,locations:Struct<country:Struct<code:String>,name:String>,numConnections:int,pictureUrl:String>>)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde' location '/sample';

运行 select statement ( select * from linkedi;)时,它显示以下错误。

OK Failed with exception java.io.IOException:java.lang.ClassCastException: org.json.JSONObject cannot be cast to [Ljava.lang.Object; Time taken: 0.213 seconds



显示错误的原因是什么?表格的结构是否有错误?

最佳答案

您使用的SerDe不支持嵌套JSON。您可以尝试先展平JSON或
尝试使用:
hive-json-serde.googlecode.com/files/hive-json-serde-0.2.jar

关于hadoop - 如何将LinkedIn Json文件导入Hive外部表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16728949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com