ли Col1 одинакова для всех строк. Если да, то используйте два набора фильтра еще и есть, чтобы найти значение Uniq между col1 & COL4 и удалить значение использования THN NULL ниже шаги
Filter_One захватит COL1 & COL4 где COL4 не NULL
Filter_Two будет захватывать Col1, Col2, Col3. Используйте Регистрация Filter_one &
Filter_Two, где Filter_two будет напечатана первая, вторая, третья колонна
и будет pronted на 4-й позиции Filter_one второй колонке,
надеюсь, то же самое будет помогать
сценарий Pig будет как:
Filter_one = foreach Load_Data generate $0 as col1, $3 as col4;
Filter_one_temp = filter Filter_one by ($1 is not null);
Filter_two = foreach Load_Data generate $0 as col1, $1 as col2, $2 as col3;
Join_filter = JOIN Filter_two by $0 LEFT, Filter_one_temp by $0;
generetate_output = foreach Join_filter generate $0 as col1, $1 as col2 , $2 as col3,$4 as col4;
store generetate_output into 'dfs_path' using PigStorage(',');
, как хранит то же самое с, разделитель поэтому выход будет как
(ABC,34,23,XYZ)
(ABC,12,78,XYZ)
(ABC,4,21,XYZ)
(ABC,22,54,XYZ)
(DEF,32,455,JKL)
(DEF,21,45,JKL)
(DEF,45,687,JKL)
(DEF,232,565,JKL)
(DEF,23,32,JKL)
Вот что я пробовал делать в самом начале. Но он не дает желаемого результата. Показывает эту ошибку: «ОШИБКА 1070: Не удалось решить org.apache.pig.piggybank.storage.CSVExcelStorage с помощью импорта: [, java.lang., Org.apache.pig.builtin., Org.apache.pig.impl.builtin .] " –
В этом случае ошибка при импорте данных, если это так, пожалуйста, следуйте приведенной ниже ссылке, в которой указывается исключение импорта avod [Link1] (http://stackoverflow.com/questions/17816078/csv-reading- in-pig-csv-file-contains-quoted-comma) или [Link2] (http://stackoverflow.com/questions/19573764/error-using-csvloader-from-piggybank) – Deb
Хорошо, что соединения работают нормально после того, как я зарегистрировал файл банка piggybank. Но я не могу создать логику для реализации сценария, когда в Col 1 есть разные группы строк, а значения Col 4 должны заполняться для соответствующих групп в Col 1. (Как показано в отредактированной версии вопроса). Не могли бы вы помочь в этом отношении? –