You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@pig.apache.org by Eli Finkelshteyn <el...@thebackplane.com> on 2013/03/01 20:40:43 UTC

Re: Parsing a Complex JSON String?

The JsonLoader works, but problem is I'm not loading a JSON file, but just trying to parse a json string as part of a bigger data set. That's why I needed to use JsonStringToMap.

On Feb 28, 2013, at 1:34 PM, Dmitriy Ryaboy wrote:

> Does the EB json loader with
> 
> elephantbird.jsonloader.nestedLoad = true
> 
> Work?
> 
> 
> 
> On Thu, Feb 28, 2013 at 10:44 AM, Eli Finkelshteyn <el...@thebackplane.com>
> wrote:
>> 
>> Hi Folks,
>> 
>> I want to parse a string of complex JSON in Pig. Specifically, I want Pig
> to understand my JSON array as a bag instead of as a single chararray. When
> using JsonLoader, I can do this easily by specifying the schema, as in this
> question. Is there any way to either have Pig figure out my schema for me,
> or to specify it when Pig is parsing a string? I've been using
> JsonStringToMap, but can't find a way to specify Schema, or to have it
> properly understand my JSON array is an array and not a single char array.
> I looked at the code in JsonStringToMap, and it looks like it always
> specifies the schema for me as just a map of chararrays, which won't work
> for anything but the simplest JSON of a form like {string: string…}. Any
> ideas?
>> 
>> Eli