【问题标题】:Loading JSON data into hive tables将 JSON 数据加载到配置单元表中
【发布时间】:2018-03-08 02:04:22
【问题描述】:

我尝试将简单的JSON 记录从文件加载到配置单元表中,如下所示。每条JSON 记录位于单独的一行中。

{"Industry":"Manufacturing","Phone":null,"Id":null,"type":"Account","Name":"Manufacturing"}
{"Industry":null,"Phone":"(738) 244-5566","Id":null,"type":"Account","Name":"Sales"}
{"Industry":"Government","Phone":null,"Id":null,"type":"Account","Name":"Kansas City Brewery & Co"}

但我找不到任何serde 来将逗号(,) 分隔的JSON 记录数组加载到配置单元表中。输入是一个包含JSON记录的文件,如下图...

[{"Industry":"Manufacturing","Phone":null,"Id":null,"type":"Account","Name":"Manufacturing"},{"Industry":null,"Phone":"(738) 244-5566","Id":null,"type":"Account","Name":"Sales"},{"Industry":"Government","Phone":null,"Id":null,"type":"Account","Name":"Kansas City Brewery & Co"}]

有人可以给我推荐一个serde 来解析这个JSON 文件吗?

谢谢

【问题讨论】:

  • 我从 mulesoft 应用程序中获取第二个示例(JSON 记录数组)。我无法使用serdes 将此数据加载到配置单元表中。但是当我尝试使用第一个示例(每条记录在单独的行中)时,serde 工作正常
  • 这是我从 mulesoft 应用程序获得的格式,我确信它是正确的 JSON 格式。参考:adobe.github.io/Spry/samples/data_region/JSONDataSetSample.html
  • Hive 旨在处理由 记录 组成的表,这些表存储在巨大的 文件 中。你得到的是一个小消息,它应该由应用程序处理,并可能流式传输到一个表中。只需这样做:构建一个将消息流式传输到 Hive 表的应用程序。

标签: json hive hive-serde


【解决方案1】:

你可以查看这个serde:https://github.com/rcongiu/Hive-JSON-Serde

另一个相关帖子:Parse json arrays using HIVE

【讨论】:

  • 您是否验证了建议的 SerDe 可以满足 OP 需求?
猜你喜欢
  • 1970-01-01
  • 2018-07-27
  • 1970-01-01
  • 2016-10-11
  • 1970-01-01
  • 1970-01-01
  • 2015-05-03
  • 1970-01-01
相关资源
最近更新 更多