Използвам сложен оператор foreach, за да генерирам данните си. Това е примерен ред:
(2013-07-01)
По-долу е моят код:
joined_data = foreach old_data {
date = old_data::date;
month = SUBSTRING(date, 5, 7);
generate date, month;
};
Когато продължа и използвам таблицата, получавам следната грешка:
<file script.pig, line 24, column 66> Invalid field projection. Projected field [month] does not exist in schema: old_data::date:chararray,:chararray.
Защо месецът няма име? Ясно го нарекох.
Когато пиша:
joined_data = foreach data {
date = old_data::date;
month = SUBSTRING(date, 5, 7);
generate date, $1;
};
Кодът никога не завършва изпълнението си (не може да завърши етапа на намаляване).
Някаква идея защо се случва това и как мога да се уверя, че Pig ще разпознае името, което дадох на колоната за месеца?
Благодаря.