Я рассматриваю возможность использования hadoop/mapreduce для выполнения проекта и не совсем понял, как настроить поток заданий, состоящий из переменного количества уровней, которые должны обрабатываться последовательно.
E.g.:
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 на основе параметров (количество уровней известно во время выполнения, но может меняться при каждом запуске).
Спасибо!