Что вы порекомендуете по поводу дисков для Hadoop?
Вы рекомендуете использовать SAS или просто подключить диск через SATA? А может еще что-то? Каковы плюсы и минусы каждого варианта?
(Решение о размере диска принято, на каждом сервере будет около 5-6 дисков по 2 ТБ)
В современных установках Hadoop обычно используется несколько дисков SATA потребительского уровня в коробке.
Точное количество дисков на узел во многом зависит от вашего приложения. В Yahoo, например, они в основном привязаны к размеру диска, поэтому имеет смысл использовать большое количество дисков на узел. Я видел стелс-технологию, которая может насыщать большое количество приводных каналов, поэтому наличие нескольких задних панелей с большим количеством дисков имеет смысл.
Если вы только начинаете, я бы порекомендовал либо 6 x 2 ТБ SATA, либо 12 x 2 ТБ SATA. Есть несколько хороших коробок Supermicro, которые дают вам четыре узла в одном шасси 2U с 12 дисками на передней панели, что приятно и компактно, но наличие только 2 дисков по 2 ТБ на узел может быть своего рода ограничением. В том же форм-факторе 2U можно разместить 1 или 2 узла с теми же 12 дисками на лицевой панели. Поскольку само шасси стоит денег, это может иметь значение.
Еще одно соображение заключается в том, что многие центры обработки данных ограничены мощностью на квадратный фут. В кластере Hadoop затрачиваемая мощность делится на два направления: часть - на ЦП / память, а большая часть - на поддержание вращения дисков. Поскольку эти ограничения, вероятно, не позволят вам заполнить стойку сверхкомпактными блоками с 4 узлами, вы можете пойти дальше и получить блоки с одним узлом, чтобы вы могли добавлять диски позже, когда сочтете нужным.
Если вы не ограничены дисковым пространством, вам следует учитывать общую пропускную способность сети. Здесь хорошо иметь больше сетевых карт на диск, поэтому квадроциклы хороши.
Точно так же каковы ваши требования к памяти? 24 ГБ ОЗУ для двухъядерного четырехъядерного компьютера в последнее время довольно стандартно, но вам может потребоваться больше или вы сможете обойтись меньшим. Для вашего приложения может оказаться полезным наличие большего совокупного объема памяти на том же количестве дисков.
В этой ситуации единственная проблема, связанная с производительностью, - это то, что диски SAS обычно лучше работают в сценариях с высокой нагрузкой, но только вы знаете свою ожидаемую нагрузку.
Я бы сказал, что вы хотите выбирать диски корпоративного класса, как бы вы ни пошли, Hadoop может быть довольно интенсивным в течение 24 часов, и вам нужен диск, который был разработан для работы 24/365, и многие из более дешевых дисков просто выиграли. Делаю это надежно.
WD2003FYYS от WD очень ценится.
Что ж, поскольку вы используете Hadoop, избыточность находится в приложении, поэтому вам не нужно думать о избыточности на каждом узле в отношении хранилища. Это, конечно, должно быть подкреплено хорошими процедурами о том, как снова перевести узел в оперативный режим в случае сбоя хранилища.
Думаю, 2xSATA диска в RAID0 должны это делать. Но я действительно не знаю, получите ли вы что-нибудь от этого недостатка производительности с Hadoop, это может только добавить сложности.
Создавайте с учетом неудач, и Hadoop впечатлит. Я использую все свои кластеры с дисками, отличными от корпоративных, и у меня не было сбоев в работе 24/7. Снижение затрат значительно перевешивает любые потенциальные сбои, кроме того, на большинство дисков предоставляется 5-летняя гарантия, так что вы просто отправляете их для получения RMAd и двигайтесь дальше.
По моему опыту, я обычно обновляю диски до того, как они умирают, но YMMV.
Все датаноды должны работать как ext2, не вести журналов и не использовать какие-либо RAID ... Hadoop - это ваш рейд с тем, как вы устанавливаете уровни репликации.