2015-07-07 3 views
1

У меня есть файл содержит следующее:PIG: Столбцы в строках

id_v^id_f^id_s1,id_s2,id_s3,id_s4 
id_v1^id_f1^id_s2,id_s3,id_s4 
id_v2^id_f2^id_s2,id_s1,id_s4 

этот файл является «^» с разделителями CSV. я хочу, чтобы нормализовать его таким образом, используя свинью:

id_v^id_f^id_s1 
id_v^id_f^id_s2 
id_v^id_f^id_s3 
id_v^id_f^id_s4 
id_v1^id_f2^id_s2 
id_v1^id_f2^id_s3 
id_v1^id_f2^id_s4 
... 

Может кто-нибудь мне помочь?

С уважением

ответ

1

Ok. Пусть Предположим, что это мое file.Lets сказать имя файла id_v.txt

id_v^id_f^id_s1,id_s2,id_s3,id_s4 
id_v1^id_f1^id_s2,id_s3,id_s4 
id_v2^id_f2^id_s2,id_s1,id_s4 

Ниже приведен код Pig

A = load '/user/cloudera/inputfiles/id_v.txt' using PigStorage('^') as(v:chararray,f:chararray,data:chararray); 
B = foreach A generate v,f,FLATTEN(TOKENIZE(data)) as data; 
dump B; 

Ниже O/P Произведенное выше код ..

(id_v,id_f,id_s1) 
(id_v,id_f,id_s2) 
(id_v,id_f,id_s3) 
(id_v,id_f,id_s4) 
(id_v1,id_f1,id_s2) 
(id_v1,id_f1,id_s3) 
(id_v1,id_f1,id_s4) 
(id_v2,id_f2,id_s2) 
(id_v2,id_f2,id_s1) 
(id_v2,id_f2,id_s4) 
+0

Спасибо @Surender. Спасибо всем, что мне нужно. –