如何使用Pig读取非分隔的JSON?

问题描述 投票:1回答:2

我有一个json文件,原始文本如下所示:

{a:1,b:2,c:3}{a:3,b:3,c:5}{a:3,b:3,c:9}

raw = LOAD 'jsonfile.text' USING JsonLoader('a:chararry,b:chararray,c:chararry') ;

dump raw;

只返回1条记录。

日志的实际摘录:

输入:成功读取1条记录(630644858字节):“s3n://logstash/ls.s3.ip-10-45-56-56.2016-03-02T23.10.part42.txt”

输出:成功存储1条记录(1900字节):“hdfs:// nameservice1 / tmp / temp-1489272670 / tmp-1959659634”

看起来只有JSON的第一条记录正在被读取。 Json文件未分隔。

有人有任何提示吗?

json hadoop apache-pig
2个回答
1
投票

我建议做第一次传球,它可以替换}{ - > }\n{。然后你将每行有一个有效的json对象,json解析应该工作。


0
投票

检查twitter大象鸟罐,可用于处理任何类型的JSON数据。

检查这个以供参考 - 使用类似于您的JSON数据的示例猪脚本!

https://gist.github.com/neilkod/2898455

希望这可以帮助!! <> <

© www.soinside.com 2019 - 2024. All rights reserved.