Я новичок в программировании Hadoop, ищу помощи в pig. У меня есть данные из формата simple.txt
как разделитель ,
. У меня есть два варианта использования. Я хочу сделать ltrim(rtrim())
для всех столбцов и перейти к UPPER
для выбранных полей.
Вот мой сценарий:
party = Load '/party_test_pig.txt' USING PigStorage(',') AS(....);
Trim_party = FOREACH Upper_party GENERATE TRIM(*);
Upper_party = FOREACH party GENERATE UPPER(col1), UPPER(col2), UPPER(col3);
Upper_party:
После того, как я сделал его заглавным, я хочу просмотреть все столбцы, а не только столбцы, которые переводятся в верхний регистр.
Trim_party:
провел небольшое исследование и выяснил, что для обрезки всех столбцов мне придется написать UDF. Я могу сделать Trim_party = FOREACH Upper_party GENERATE TRIM(col1)...TRIM(coln);
, но мне кажется, что это неэффективно и отнимает много времени.
Есть ли другой способ заставить этот скрипт работать без написания UDF для Trim?
Заранее спасибо.