Предположим, что у нас есть файл с именем details.txt со следующими данными
421,Rajiv,Reddy,21,9848022337,Hyderabad
549,Ramprakash,Reddymasi,22,8341592775,Kolkata
278,Divya,Khanna,22,9848022339,Delhi
126,Kathi,Agarwal,21,9848022330,Pune
789,Srinivas,Mohanthy,23,9848022336,Bhuwaneshwar
245,Archana,Mishra,23,9848022335,Chennai
128,Komal,Nayak,24,9848022334,trivendram
111,Bharathi,Nambiayar,24,9848022333,Chennai`
У меня есть следующий скрипт:
grunt> student_details = LOAD 'details.txt' USING PigStorage(',')
as (id:int, firstname:chararray, lastname:chararray,age:int, phone:chararray, city:chararray);
Я получу текущую дату и времяв pig grunt shell, используя следующие вычисления:
grunt> %default FILE `date "+%Y%m%d%H%M%S"`
Я хочу сохранить эти данные в каталогах с папками времени данных, каждая из которых содержит три записи, как показано ниже:
grunt> STORE first_3 INTO '$FILE' using PigStorage(',');
grunt> %default FILE `date "+%Y%m%d%H%M%S"`
grunt> STORE second_3 INTO '$FILE' using PigStorage(',');
grunt> %default FILE `date "+%Y%m%d%H%M%S"`
grunt> STORE next_3 INTO '$FILE' using PigStorage(',');
Проблемавот я не знаю сколько там входных записей. Есть ли способ разделить входные записи на основе подсчета с помощью циклов.