Распределенная система проектирования - PullRequest
1 голос
/ 16 декабря 2010

В распределенной системе определенный узел распределяет единицы работы 'X' равномерно по узлам 'N' (через передачу сообщений сокета).

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

В реальной ситуации это было бы похоже на изменение 10 узлов в Hadoop-подобной системе, когда каждый узел обрабатывал 100 ГБ на 1 000 000 узлов, а каждый узел обрабатывал 1 МБ.

  • Каково влияние установки большего количества соединений в этом случае? Это большие издержки в функции poll ()?
  • Какой лучший подход?

Ответы [ 3 ]

3 голосов
/ 17 декабря 2010

Похоже, вам нужно будет проконсультироваться Закон Амдала .

По крайней мере, я подсчитал, сколько машин на высокоскоростном коммутаторе было оптимальным для моих параллельных вычислений.

1 голос
/ 19 декабря 2010

Должен ли он использовать сокеты и передачу сообщений между супервизором и рабочим?

Вы можете использовать какой-либо тип очереди, поэтому избегайте нагрузки на супервизора.Или распределенная файловая система, аналогичная HDFS, для распределения задач и сбора результатов.

Это также зависит от количества узлов, на которых вы планируете развертывать Workers.1 000 000 узлов - это очень большое число, поэтому в этом случае вам придется распределить задачи по нескольким очередям.

Осторожно, что произойдет, если все узлы завершат свои задачи одновременновремя.Было бы целесообразно внести некоторую изменчивость, когда они могут запросить новую задачу.ZooKeeper (http://hadoop.apache.org/zookeeper/) - это то, что вы также можете использовать для синхронизации заданий.

0 голосов
/ 17 декабря 2010

Можете ли вы измерить стоимость вашей сети?Время, потраченное на работу на рабочей машине, должно быть только частью стоимости передачи и получения сообщения.

Также можете ли вы описать нотацию O для обработки каждого рабочего результата в основной результат?

Ожидает ли ваш мастер круговой прием ответов?

Кстати - если ваши рабочие узлы заканчивают работу быстрее, но при недостаточном использовании ресурсов процессора у вас может отсутствовать компромиссный вариант проектирования?* Конечно, вы можете быть правилом или исключением из любого закона (аргумент / устаревшее исследование).; -)

...