2015-05-29 2 views
0

Я работаю над большими данными, и мой проект состоит из графиков с текстовыми данными. Мне нужно рассчитать сходство между вершинами, вероятностями перескока, количеством подключенных компонентов, вектором рангов страницы и случайным ходом в один проект сам по себе.Путаница между hadoop, giraph и twister

Я реализовал их в hadoop, но я думаю, что это занимает больше времени (графики имеют 2500 узлов 4000 ребер 600 подключенных компонентов, занимающих 25 минут), так что может быть лучшим выбором для их реализации: apache hadoop или apache giraph или apache twister ?

+0

Ваш вопрос не имеет никакого смысла. Если вы уже применили сходство между вершинами, вероятностями вероятностей, количеством подключенных компонентов, вектором ранжирования страницы и случайным ходом для ваших данных с использованием Hadoop (при условии MapReduce), и если все они занимают 25 минут, я бы сказал, что это не так уж плохо. Возможно, вы должны попробовать фильтр и оптимизировать его дальше. –

ответ

1

Нахождение подключенных компонентов, вычисление Page Rank и случайная прогулка являются примерами итерационных алгоритмов. Традиционная модель программирования Map-Reduce не является хорошим вариантом для итеративных алгоритмов (особенно для графиков). Причина в том, что на каждой итерации сокращения карты все данные должны передаваться от преобразователей к редукторам (например, высокие I/O и Network). В Contrast Giraph идеально подходит для таких алгоритмов. В giraph все данные разбиваются на разделы и загружаются один раз и на каждой итерации (супер-шаг), только результат передается по машинам.

0

Хотя это время, так как этот вопрос был опубликован, я подумал о том, чтобы качать в эту тему своим опытом. Что касается вашей обработки времени обработки, это зависит от того, сколько обработки вы делаете с вашими данными? Выполняете ли вы все вышеупомянутые вычисления в одном задании MR или нескольких заданиях MR в одной программе? Если да, то возможно, что это может занять время. Также сколько итераций вы используете для расчета ранга страницы? Каков размер вашего кластера?

Я бы пошел с ответом Масуда на выбор Giraph для обработки графа и хотел бы добавить больше. Существует несколько причин, по которым обработка графиков сложна с помощью модели Map Reduce Programming.

  1. Вы должны были бы разделить графики как они не помещаются на одной машине. (Диапазон разделения держать окрестности вместе , например, если у вас узлов/пользователей из 5 различных университетов, то большинство вероятно, вы бы все узлы из одного университета на одной и той же машины)

  2. Вы, возможно, потребуется выполнить репликацию ваших данных.

  3. Уменьшение связи между разделами.

Возвращаясь к вашей второй беспокойство, не имея каких-либо знаний о Apache Twister, я хотел бы пойти на Apache Giraph, как она построена специально для крупномасштабных распределенных Graph Алгоритмы, где структура обрабатывает всю тяжелую обработку нужно, что Приходите. Это в основном из-за особенностей алгоритмов графов, таких как перемещение графика, передача информации по их краям другим узлам и т. Д.

Недавно я использовал Giraph для одного из моих проектов с большими данными, и это было отличное обучение. Вы должны изучить это, если я не буду слишком поздно отвечать.

Чтобы получить подробное объяснение, вы можете обратиться к этим slides.