2013-08-13 3 views
0

Я очень новичок в кластерных вычислениях и хотел узнать больше о различном программном обеспечении, используемом для кластерных вычислений, и которое лучше всего подходит для конкретных задач. В частности, проблема, которую я пытаюсь решить, включает сценарий типа «Менеджер/Рабочие», в котором один менеджер отвечает за создание от 100 до 1000 рабочих мест. Каждое задание, в то время как относительно большое, должно выполняться на небольшом кадре. То есть Менеджер скажет каждое задание: «Передвиньте один кадр и сообщите мне». Выполнение одного кадра будет очень маленьким, поэтому латентность между менеджером и рабочими машинами должна быть очень маленькой, порядка микросекунд.Лучший способ иметь один процесс, распределенный по кластеру

Спасибо! Любая информация была бы оценена, даже материал, который не идеально соответствует описанному мной сценарию, просто чтобы дать мне отправную точку. Некоторое, что я исследовал до сих пор, это Hadoop, Хондондор и Акка.

+0

Не знаю о других, но Hadoop звучит не очень хорошо, как для автономной пакетной обработки больших данных. Не совсем похоже на то, что вы описали. – jbird

+0

Вы правы; извините, я был очень рано в процессе исследования, когда я спросил об этом. Кандидатами для использования являются JPPF, Akka, Twitter Storm, Open MPI и Open DDS. – jekelija

ответ

0

Поскольку для вас важна латентность связи, вам следует, вероятно, рассмотреть возможность использования MPI. Нелегко писать простые программы Master/Worker с использованием MPI, и это, вероятно, даст вам лучшую производительность, особенно если ваш кластер имеет высокопроизводительные сети, такие как infiniband.

Если, по-видимому, вы используете Java, вам нужно будет провести некоторое исследование, чтобы определить хороший пакет Java/MPI. Вы найдете здесь несколько предложений: Java openmpi.

+0

На самом деле, мы используем C++, просто не нашли много там для C++. OpenMPI кажется отличным, что вы знаете, как OpenDDS сравнивается? – jekelija

+0

@jekelija Я не могу сказать, что я ничего не знаю о OpenDDS, но, похоже, он больше ориентирован на корпоративные вычисления, а не на кластерные вычисления. Возможно, стоит подумать, но из вашего описания он может быть более тяжелым, чем вам нужно. –