Переменная / циклическая последовательность заданий - PullRequest
1 голос
/ 03 сентября 2010

Я рассматриваю возможность использования hadoop / mapreduce для решения проекта и не совсем понял, как настроить поток работ, состоящий из переменного числа уровней, которые должны обрабатываться последовательно.

например:.

Job 1: Map source data into X levels.
Job 2: MapReduce Level1 -> appends to Level2
Job 3: MapReduce Level2 -> appends to LevelN
Job N: MapReduce LevelN -> appends to LevelN+1

И так до финального уровня. Ключ заключается в том, что каждый уровень должен включать свои собственные конкретные исходные данные, а также результаты предыдущего уровня.

Я смотрел на свинью, улей, хамаке и каскадирование, но пока не видел четкой поддержки для чего-то подобного.

Кто-нибудь знает эффективный способ сделать это? Сейчас я склоняюсь к написанию оболочки для hamake, которая будет генерировать файл hamake на основе параметров (количество уровней известно во время выполнения, но может меняться при каждом запуске).

Спасибо!

Ответы [ 2 ]

1 голос
/ 03 сентября 2010

Oozie http://yahoo.github.com/oozie/ - это сервер с открытым исходным кодом, который Yahoo выпустила для управления рабочим процессом Hadoop & Pig, как вы просите

Cloudera имеет его в своем последнем дистрибутиве с очень хорошей документацией https://wiki.cloudera.com/display/DOC/Oozie+Installation

вот видео http://sg.video.yahoo.com/watch/5936767/15449686 от Yahoo

0 голосов
/ 05 сентября 2010

Вы можете с легкостью сгенерировать код pig для этого, используя Piglet, Ruby Pig DSL http://github.com/iconara/piglet

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...