我正在使用pig分析从Cassandra加载的数据。一,我得到列的是产品ID和产品信息以JSON格式的字符串:在Pig中解析JSON格式的字符串
row | ... | items | ... 1 | ... | "[{"id":"1", "useless_info":"blah"}, {"id":"2", "useless_info":"bleh"}]" | ... 2 | ... | "[{"id":"3"}]" | ... . | . | . | .
请注意,有些行会在字符串中的额外的东西,而其他人只会有ID。
不管怎么说,我需要做的是分析每一个“项目”字符串和生成的ID号:
row | id | ... | 1 | 1 | ... | 1 | 2 | ... | 2 | 3 | ... | etc
据我所知,没有JSON解析器猪在那里,只装和存储功能(像elephantbird)。是否有可能像REGEX_EXTRACT那样做我想要的东西,还是必须编写自己的UDF(或者有更好,更漂亮,更聪明的方法)?
在此先感谢您的帮助!我使用的是猪0.93
可能重复的[我如何解析JSON在猪?](http://stackoverflow.com/q/5013003/90527) – outis 2012-03-29 03:10:30
是的,我看了那篇博客文章 - 他们正在使用[elephantbird](http: //eric.lubow.org/2011/hadoop/pig-queries-parsing-json-on-amazons-elastic-map-reduce-using-s3-data/)来加载JSON格式的数据。我的数据实际上是所有字符串(并且已经加载到Pig中),并且只有一个部分具有类似JSON的格式(需要解析) – hriundel 2012-03-29 03:33:04