Я запускаю среду singoenode hadoop. Когда я побежал $hadoop fsck /user/root/mydatadir -block
, я действительно запутался вокруг выхода он дал:Количество файлов Vs Количество блоков в HDFS
Status: HEALTHY
Total size: 998562090 B
Total dirs: 1
Total files: 50 (Files currently being written: 1)
Total blocks (validated): 36 (avg. block size 27737835 B) (Total open file blocks (not validated): 1)
Minimally replicated blocks: 36 (100.0 %)
Over-replicated blocks: 0 (0.0 %)
Under-replicated blocks: 36 (100.0 %)
Mis-replicated blocks: 0 (0.0 %)
Default replication factor: 2
Average block replication: 1.0
Corrupt blocks: 0
Missing replicas: 72 (200.0 %)
Number of data-nodes: 1
Number of racks: 1
Он говорит, что я написал 50 файлов и все же он использует только 36 блоков (я просто игнорировать файл в настоящее время написано).
Из моего понимания каждый файл использует по крайней мере 1 блок, хотя его размер меньше размера блока HDFS (для меня это 64 МБ, размер по умолчанию) .i.e, я ожидаю 50 блоков для 50 файлов. Что не так с моим пониманием?
Таким образом, несколько файлов могут находиться в одном блоке. Правильно ли это? –
Я обновил ответ, чтобы уточнить – javadba
В моем случае я не использовал никаких специальных форматов. Я пишу только файлы только одной вещи, они, возможно, меньше размера блока HDFS. –