Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Pig >> mail # user >> Loading Map's in Pig


Copy link to this message
-
Re: Loading Map's in Pig
good finding !
On Thu, Aug 30, 2012 at 1:43 PM, Cheolsoo Park <[EMAIL PROTECTED]>wrote:

> Looking at PigStorage source code, this looks like what's happening.
>
> When the comma ',' is the delimiter, PigStorage splits the input string as
> follows:
>
> 151364,[id#812,pref#secondary]
>
> =>
>
> 151364
> [id#812
> pref#secondary]
>
> Now "[id#812" is not a map literal, so it ends up being null.
>
> Thanks,
> Cheolsoo
>
> On Thu, Aug 30, 2012 at 10:09 AM, pablomar
> <[EMAIL PROTECTED]>wrote:
>
> > I guess it is because you are using ',' as separator (there is a comma
> > between your val and the map) and then again inside the map (is that a
> bug
> > ?)
> >
> > I tried with a space to separate the int from the map (input.txt):
> > 151364 [id#812,pref#secondary]
> > 121211 [id#212,pref#primary]
> >
> > and with this script:
> > data = load 'input.txt' using PigStorage(' ') as (val:int, m:Map[]);
> > dump data;
> >
> > I got:
> > (151364,[id#812,pref#secondary])
> > (121211,[id#212,pref#primary])
> >
> >
> >
> > On Thu, Aug 30, 2012 at 9:49 AM, Srini <[EMAIL PROTECTED]> wrote:
> >
> > > Hi,
> > >
> > > I'm trying to load the following  records using PigStorage(',') as
> > > (val:int, m:map[ ])... When I see dump of output I only get first
> column
> > > and empty value..
> > >
> > > 151364,[id#812,pref#secondary]
> > >
> > > 121211,[id#212,pref#primary]
> > >
> > > Could some one suggest me how to load above records..
> > >
> > > Thanks,
> > > Srinivas
> > >
> >
>