Пилотный кластер

Ниже приведен пример планирования пилотного кластера Hadoop на основе сбалансированного типа нагрузки (balanced workload pattern). Даже небольшой и простой кластер требует не менее трех узлов DataNode и один NameNode. Можно использовать один физический сервер (или виртуальную машину) или различные машины.

Более подробная информация о нагрузке приведена в руководстве Требования к оборудованию в зависимости от типа нагрузки.

Параметры

Для пилотного проекта выбираем следующие начальные условия:

  • Объем данных — около 500 ТБ.

  • Коэффициент репликации равен трём.

  • Период сохранения данных равен одному году.

  • Характер нагрузки — сбалансированный.

  • Формат данных: 20% — простой текст, AVRO, Parquet, Jason, ORC, и другие; 80% — сжатые данные в формате GZIP и Snappy.

Оборудование

Спецификация на узлы DataNode зависит от объема хранимых и анализируемых данных.

Объем данных

В соответствии с коэффициентом репликации, равным трём, нам необходимо хранить данные объемом 500 ТБ * 3 = 1500 ТБ в течение одного года. Предположим, что 20% данных находятся в контейнерном формате, а 80% — архивированные данные в формате Parquet, сжатые с помощью Snappy. Эффективность сжатия составляет 70-80%, примем 80%. Расчет объема хранилища выглядит следующим образом:

требуемый объем хранилища = объем данных * % контейнерные данные + объем данных * % в сжатом виде * ожидаемая компрессия

При заданных условиях требуемый объем равен

1500 * 0.2 + 1500 * 0.8 * (1 - 0.8) = 540 ТБ

Кроме учтенных хранимых данных, необходимо также пространство для обработки данных и выполнения других задач. Поэтому следует предусмотреть дополнительное пространство. Предположим, что в среднем каждый день кластер обрабатывает 10% всех хранимых данных и процесс обработки создает в три раза больше временных данных. Таким образом, нам необходимо около 30% дополнительного объема.

Требуемый объем хранилища для данных и различных видов обработки будет 540 + 540 * 0.3 = 702 ТБ.

Для узлов DataNode рекомендуются обычные дисковые накопители. Файловая система требует для служебных целей около 20% от пространства хранения данных. Поэтому необходимо увеличить требования к пространству еще на 20%. Теперь мы имеем окончательное значение 702 * (1 + 0.2) = 842.4 ТБ, которое округлим до 845 ТБ.

Количество узлов DataNode

Вычислим количество узлов DataNode, необходимых для образования хранилища объемом 845 ТБ. Предположим, что в каждый узел мы устанавливаем 12 обычных дисковых устройств объемом по 4 ТБ. Следовательно, объем хранилища в одном узле будет 48 ТБ.

Необходимое количество узлов DataNode будет 845 / 48 ~ 18.

ПРИМЕЧАНИЕ
Нет необходимости устанавливать весь кластер в первый же день. Можно наращивать его размер, начиная с установки 20% от требуемого количества узлов и постепенно увеличивая до 100%.

Процессор и память

Согласно рекомендациям следующие характеристики удовлетворяют требованиям пилотного кластера:

  • 8 ядер процессора;

  • 128 ГБ оперативной памяти.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней