Подтвердить что ты не робот

Любой Open Source Pregel как структура для распределенной обработки больших графиков?

Google описал новую структуру для распределенной обработки на массивных графиках.

http://portal.acm.org/citation.cfm?id=1582716.1582723

Я хотел знать, есть ли аналогичные Hadoop (Map-Reduce) какие-либо реализации с открытым исходным кодом этой структуры?

Я на самом деле в процессе написания Pseudo-распределенного с использованием модуля python и многопроцессорности и, следовательно, хотел знать, попытался ли кто-то еще попробовать его реализовать. Поскольку общедоступная информация об этой структуре крайне ограничена. (Ссылка выше и сообщение в блоге Google Research)

4b9b3361

Ответ 2

Основным проектом Hadoop для распределенной обработки графа является проект Hama. Тем не менее, он все еще находится в инкубации.

Проект разбил свою работу на две области; пакет матрицы и пакет графа.

Update:

Лучшим вариантом будет проект Apache Giraph, основанный на Google Pregel.

Ответ 3

Да, новый проект Golden Orb, который представляет собой реализацию Pregel с открытым исходным кодом, написанную на Java, которая работает как на HBASE, так и на Cassandra.

Он был отправлен на инкубатор Apache для одобрения, и компания Ravel, занимающаяся Golden Orb, заявила, что выпускает ее в этом месяце (http://www.raveldata.com/goldenorb/).

См. http://www.quora.com/Graph-Databases/What-open-source-graph-databases-support-horizontal-scaling

UPDATE: GraphX GraphLab2 на Spark, реализованный Joey Gonzalez, создатель GraphLab2.

Уникальные примитивы Spark делают GraphX-Pregel самой быстрой версией Pregel на основе JVM. Spark написан в Scala, но Spark имеет API Java и Python.

См...

P.S. Существует также Bagel, который был первым разрезом в Pregel on Spark. Оно работает; однако GraphX ​​будет способом продвижения вперед.

Ответ 4

Два проекта из Университета Карнеги-Меллона обеспечивают вычисление в стиле Pregel на графиках:

Модель программирования не такая же, как Pregel, поскольку они не основаны на обмене сообщениями, а на непосредственном изменении данных графика (края, вершины). В принципе, в этих рамках легко эмулировать Pregel.

Ответ 5

Существует также Signal/Collect the framework, написанная в Scala, и теперь использующая Akka http://code.google.com/p/signal-collect/

https://github.com/uzh/signal-collect

На своем веб-сайте:

В Signal/Collect алгоритм записывается с точки зрения вершин и ребер. Как только график будет указан, ребра будут сигнализировать и собирать вершины. Когда ребро сигнализирует, он вычисляет сообщение, основанное на состоянии его исходной вершины. Затем это сообщение отправляется по краю в целевую вершину ребра. Когда вершина собирает, она использует полученные сообщения для обновления своего состояния. Эти операции выполняются параллельно по всему графику до тех пор, пока не будут собраны все сообщения и все вершинные состояния будут сходиться.

Многие алгоритмы имеют очень простые и элегантные реализации в Signal/Collect. Вы найдете больше информации о модели и функциях программирования в вики проекта. Пожалуйста, найдите время, чтобы изучить некоторые из приведенных ниже алгоритмов.

Ответ 6

Я создаю структуру под названием Phoebus. Это реализация Прегеля, написанная в Эрланге. Оформите мою запись blog для применения модели Pregel к поиску путей.

Ответ 7

Apache Giraph в настоящее время находится в инкубаторе и находится в очень активной разработке, с коммиттерами из LinkedIn, Twitter, Facebook и академических кругов, которые хотят довести его до масштаб производства очень быстро. Это довольно прямое моделирование на Pregel и первоначально было разработано на Yahoo! Исследование. Мы ищем новых участников и имеем несколько вводных вопросов JIRA, чтобы помочь людям начать работу с проектом. Мы хотели бы, чтобы вы были вовлечены.

Ответ 8

Стэнфордские студенты разработали реализацию Pregel с открытым исходным кодом. http://infolab.stanford.edu/gps/