#hadoop #hdfs #fsck
#hadoop #hdfs #fsck
Вопрос:
Я знаю, что как недостаточно реплицируемые блоки, так и неправильно реплицируемые блоки возникают из-за меньшего количества узлов данных по отношению к установленному коэффициенту репликации.
Но в чем разница между ними?
При перенастройке коэффициента репликации на 1, где доступный узел данных равен 1, были удалены как недостаточно реплицированные блоки, так и ошибка отсутствующей реплики. Обеспечил это, выполнив команду hdfs fsck /
Ответ №1:
Из «Hadoop: окончательное руководство» Тома Уайта:
Чрезмерно реплицированные блоки Это блоки, которые превышают их целевую репликацию для файла, к которому они принадлежат. Обычно избыточная репликация не является проблемой, и HDFS автоматически удаляет лишние реплики.
Недостаточно реплицируемые блоки Это блоки, которые не соответствуют своей целевой репликации для файла, к которому они принадлежат. HDFS автоматически создаст новые реплики недостаточно реплицированных блоков, пока они не будут соответствовать целевой репликации. Вы можете получить информацию о реплицируемых блоках (или ожидающих репликации) с помощью hdfs dfsadmin -metasave .
Неправильно реплицированные блоки Это блоки, которые не удовлетворяют политике размещения реплик блоков (см. Раздел Размещение реплик). Например, для трехуровневой репликации в кластере с несколькими цепочками, если все три реплики блока находятся на одной стойке, то блок реплицируется неправильно, поскольку реплики должны быть распределены по крайней мере на две стойки для обеспечения устойчивости. HDFS автоматически повторно реплицирует неправильно реплицированные блоки, чтобы они соответствовали политике размещения в стойке.
Поврежденные блоки Это блоки, все реплики которых повреждены. Блоки с хотя бы одной неповрежденной репликой не сообщаются как поврежденные; namenode будет реплицировать неповрежденную реплику до тех пор, пока не будет выполнена целевая репликация.
Отсутствующие реплики Это блоки, у которых нет реплик нигде в кластере.
Надеюсь, это ответ на ваш вопрос.