файл на hdfs с 3 репликациями будет храниться на 3 хостах?


Введите описание изображения здесь

Файл на hdfs с 3 репликациями будет храниться на 3 хостах ? Или хранить не только на 3 хостах ?

1 2

1 ответ:

Файл с коэффициентом репликации 3 будет иметь каждый из своих блоков, которые все вместе составляют его, сохраненный три раза (HDFS хранит блоки, а не файлы). Если у вас есть 3 узла (как в верхней части вашего рисунка), то каждый блок будет храниться один раз в каждом узле. Если у вас есть 1 узел, все блоки будут храниться в том же узле (один раз, как Брендон.Белл прокомментировал). Если у вас есть 5 узлов и каждый файл использует более одного блока (как в нижней части рисунка), то да, будет использоваться более 3 узлов.

Причина-отказоустойчивость. Предполагая, что любые два хоста становятся недоступными (на нижнем рисунке), вы все равно можете получить все блоки, которые составляют ваши файлы. Например, если host4 и host5 не работают, то вы все еще можете получить block1 от host1 и block2 от host2.

Для получения более подробной информации, пожалуйста, обратитесь к этой документации. Я также нашел хороший комикс о репликации hadoop, в этом посте.