Как размер блока HDFS по умолчанию, равный 128 МБ, может минимизировать отношение seekTime / TransferTime - PullRequest
1 голос
/ 10 апреля 2020

Я довольно долго путался по этому вопросу. Существует довольно много объяснений того, почему HDFS использует такой большой размер блока по сравнению с размером блока файловой системы os или блока диска. Я понимаю объяснение о том, что это снизит объем трафика и требования к хранилищу NameNode для управления метаданными c. Меня всегда смущает объяснение «минимизации отношения seekTime / TransferTime». Как говорится в следующем посте. Почему блок в HDFS такой большой?

Я знаю, что мой вопрос может показаться глупым, потому что я не учусь в CS, поэтому мне не хватает некоторых знаний по таким темам, как композиция современного компьютер et c. Извините меня за это.

Моя путаница в основном вызвана следующими соображениями:

Блок будет храниться как непрерывная часть информации на диске , что означает, что общее время для его полного прочтения - это время для его нахождения (время поиска) + время для чтения его содержимого без выполнения больше поиска

  1. Это тот случай, когда весь блок HDFS будет постоянно храниться на диске?
  2. Когда происходит поиск? Это не случается один раз за блок на диске?
  3. Если он хранится непрерывно, тогда мы можем прочитать весь блок только с однократным поиском?

Думаю, мои сомнения имеет свои основания, так как заключение большого блока HDFS может сократить время поиска / передачи, может быть действительным только при соблюдении всех трех условий. В противном случае, заключение не имеет смысла для меня. Надеюсь, кто-нибудь может сказать мне, где я могу найти solid правду, чтобы доказать свою догадку. Спасибо заранее.

...