Привет У меня есть несколько файлов журнала запросов в следующей форме:Вход Hadoop/MapReduce
q_string q_visits q_date
0 red ballons 1790 2012-10-02 00:00:00
1 blue socks 364 2012-10-02 00:00:00
2 current 280 2012-10-02 00:00:00
3 molecular 259 2012-10-02 00:00:00
4 red table 201 2012-10-02 00:00:00
У меня есть файл в день, за каждый месяц на протяжении года. То, что я хотел бы сделать, это:
(1) Группа файлов в месяц (или более конкретно группе все из q_strings, принадлежащих каждому месяцу)
(2) Так как же q_string может появиться на несколько дней , Я хотел бы сгруппировать те же самые q_strings в течение месяца, суммируя по q_visits по всем экземплярам этого q_string
(3) Нормализовать q_visits против сгруппированной q_string (делением суммы q_visits для сгруппированной q_string на сумма q_visits по всем q_строкам в течение месяца)
Ожидает, что выход будет иметь аналогичную схему для ввода, за исключением того, чтобы иметь дополнительный столбец с нормализованными ежемесячными томами q_visit.
Я делаю это в Python/Pandas, но теперь у вас больше данных и чувствую, что проблема облегчается для MapReduce.
Можно ли было легко реализовать в EMR/AWS? Концептуально, каков будет рабочий процесс MR для выполнения вышеуказанного? Я хотел бы сохранить кодирование в Python, поэтому, вероятно, будет использовать потоковое вещание.
Заранее благодарим за любую помощь.