Кластер Hadoop.2 быстрых, 4 средних и 8 медленных машин?

StackOverflow https://stackoverflow.com/questions/976250

  •  13-09-2019
  •  | 
  •  

Вопрос

Мы собираемся приобрести новое оборудование, которое будет использоваться только для кластера Hadoop, и застряли в выборе того, что нам следует приобрести.Допустим, у нас есть бюджет в 5 тысяч долларов. Должны ли мы купить две супер-хорошие машины по 2500 долларов каждая, четыре по цене около 1200 долларов каждая или восемь по цене около 600 долларов каждая?Будет ли Hadoop работать лучше на более медленных машинах или на небольшом количестве гораздо более быстрых машин?Или, как и большинство вещей, «это зависит»?:-)

Это было полезно?

Решение

Как правило, лучше, если Hadoop получит несколько дополнительных менее мощных компьютеров.Вы почти никогда не увидите узлы данных с оперативной памятью более 16 ГБ и двумя четырехъядерными процессорами, и часто они меньше этого размера.

Вам всегда нужно запускать его в качестве узла имени (главного), и, как правило, вы не запускаете также узел данных (рабочий/подчиненный) на одном и том же компьютере, хотя вы могли бы это сделать, поскольку ваш кластер небольшой.Однако если вы этого не сделаете, то при получении двух машин у вас останется только один рабочий узел, что несколько противоречит цели.(Не совсем, потому что на слейве все равно можно параллельно запускать 4-8 заданий, но все же.)

В то же время вам не нужен кластер из 1000 486.Если ваш бюджет составляет 5 тысяч долларов, я бы подвел баланс и сделал 4 машины по 1200 долларов.Они обеспечат достойный базовый уровень с точки зрения индивидуальной производительности, у вас будет 3 узла данных для распределения работы, и у вас будет место для расширения вашего кластера, если вам нужно.

Что следует иметь в виду:вам понадобится запускать несколько карт или сокращать задачи для каждого узла данных, а это означает, что несколько JVM работают одновременно.Я бы постарался получить как минимум 4 ГБ, а лучше 8 ГБ оперативной памяти.ЦП менее важен, поскольку большинство заданий MR связаны с вводом-выводом.Скорее всего, вы могли бы приобрести такую ​​машину за целевую цену в 1200 долларов, так что это мой голос.

Другие советы

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

Мы выбрали 4-ядерные серверы Dell с 2 процессорами, то есть по 8 ядер на коробку.16 ГБ памяти на блок, что составляет 2 ГБ на ядро, немного мало, поскольку вам нужна память как для ваших задач, так и для буферизации диска.5 жестких дисков по 500 ГБ, и мне бы хотелось, чтобы вместо этого мы выбрали диски емкостью терабайт или выше.

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

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

Больше дисков означает большую одновременную пропускную способность дисков на одно ядро, поэтому иметь столько же дисков, сколько и ядер, — это хорошо.Бенчмаркинг, по-видимому, показывает, что конфигурации RAID работают медленнее, чем конфигурация JBOD (просто монтируются диски и распределяется нагрузка Hadoop по ним), а JBOD также более надежен.

ПОСЛЕДНИЙ!Обязательно приобретите память ECC.Hadoop передает терабайты данных через память, и некоторые пользователи обнаружили, что конфигурации памяти без ECC могут иногда приводить к однобитовым ошибкам в наборах данных размером в терабайт.Отладка этих ошибок — кошмар.

Рекомендую посмотреть эту презентацию: http://www.cloudera.com/hadoop-training-thinking-at-scaleЗдесь описаны различные плюсы и минусы.

Я думаю, что ответ также зависит от ваших ожиданий от роста кластера и используемых вами сетевых технологий.Если вас устраивает Ethernet 1 ГБ, то тип машины менее важен.В то же время, если вам нужен 10-гигабитный Ethernet, вам следует выбрать меньшее количество лучших компьютеров, чтобы снизить стоимость сети.

еще одна ссылка: http://hadoopilluminated.com/hadoop_book/Hardware_Software.html(отказ от ответственности:Я соавтор этой бесплатной книги по Hadoop)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top