If I  Store the temporary result and then Load, the problem disappears.
Thanks for all your help!
________________________________________
From: Steve Terrell <sterr...@oculus360.us>
Sent: Friday, May 6, 2016 7:36:33 AM
To: user
Subject: Re: BinSedesTuple cannot be cast to or.apache.pig.pen.util.ExampleTuple

Can you reduce the script and input to the bare minimum needed to reproduce
the problem?

On Thu, May 5, 2016 at 11:11 PM, Chloe Huang <chloe.hu...@ussuning.com>
wrote:

> Hi Guys,
>
>
> When I am running my Pig Script, I am doing OK with small data sets. But
> if I use the same script for big data sets, I got this Exception:
>
> ERROR 0: Exception while executing (Name: Kff: Filter[bag] - scope-142
> Operator Key: scope-142):
> org.apache.pig.backend.executionengine.ExecException: ERROR 0: Exception
> while executing [PORelationToExprProject (Name:
> RelationToExpressionProject[bag][*] - scope-134 Operator Key: scope-134)
> children: null at []]: java.lang.ClassCastException:
> org.apache.pig.data.BinSedesTuple cannot be cast to
> org.apache.pig.pen.util.ExampleTuple
>
>
> And I am using the following script:
>
> F = LOAD './q' AS (ori_query:chararray, t:chararray, w:chararray,
> wordCnts:long);
>
>
> G = JOIN F by t, E by word;
>
>
> H = FOREACH G GENERATE F::ori_query as ori_query, F::t as word, F::w as
> weight, F::wordCnts as wordCnts, E::proID as proID, E::proScore as proScore;
>
>
> I = FOREACH H GENERATE ori_query, proID, wordCnts,
> que_udfs.getQueryScore(weight, proScore) as queryScore;
>
>
> J = COGROUP I BY (ori_query, proID);
>
>
> K = FOREACH J GENERATE group.ori_query as ori_query, group.proID as proID,
> I.wordCnts as wordCnts, I.queryScore as queryScore, SIZE(I.queryScore) as
> matchCnts;
>
> K_fil = FILTER K BY (ori_query is not NULL) AND (proID is not NULL);
>
>
> Kgetter = FOREACH K_fil {
>
>         count = limit wordCnts 1;
>
>         GENERATE ori_query, proID, flatten(count) as count, queryScore,
> matchCnts;
>
> }
>
> Kff = FILTER Kgetter BY (count is not NULL) and (matchCnts is not NULL)
> and (count == matchCnts) and (queryScore is not NULL);
>
> E has this data format:
>
> 8801    102588050       0.555555555556
>
> ZERO    102588050       0.0
>
> s       102588050       0.555555555556
>
> zero    102588050       0.555555555556
>
> US      102588050       0.0376254180602
>
> hello   102588050       0.0376254180602
>
> people  102588050       0.0376254180602
>
> any     102588050       0.0376254180602
>
> F has this data format:
>
> 8801           8801s   4.285714285714286       2
>
> hello Media    hello   5.714285714285715       2
>
> ZERO mate s    ZERO    7.127210931539155       3
>
> ZERO mate s    mate    0.6432799241636031      3
>
> ZERO mate s    s       2.229509144297241       3
>
> US             US      10.0                    1
>
> any people     any     0.1620255817609147      2
>
> any people     people  9.837974418239085       2
>
>
> Does anyone has any idea why this Exception is happening?
>
> Many thanks in advance!
>
> Best Regards,
> Chloe
>
>
>

Reply via email to