NameNode периодически получает отчет Heartbeat и Block от каждого из узлов данных в кластере. Получение пульса означает, что DataNode исправен и работает нормально.
Blockreport содержит список всех блоков в DataNode. Когда NameNode замечает, что он не получил сообщение пульса от узла данных через определенное время, узел данных помечается как мертвый. Поскольку блоки будут недостаточно реплицированы, система начнет репликацию блоков, которые были сохранены в мертвом DataNode.
Самый простой способ понять этот сценарий - это когда узел данных не работает, и другие узлы данных не могут узнать, что соседний узел данных сохранил. Блоки реплицируются в узлах данных в соответствии с инструкциями Namenode, которые, в свою очередь, проверяют блоки мертвого узла данных из его fsimage, и это займет менее 5 секунд, чтобы решить, что будет реплицировано. После того, как будет решено, репликация займет пару минут.