предположим, что есть 5 файлов по 150 мб каждый. Теперь, когда я помещаю эти файлы в hdfs (где размер блока составляет 64 МБ), сколько будет количества блоков для каждого файла и общих блоков. Также, сколько будет числа разделов для всех файлов. и сколько числа картографов
Будет 3 blocks
на файл (64 МБ, 64 МБ, 32 МБ). Таким образом, общее количество блоков 5*3 = 15
Таким образом, число расщеплений будет равно 15. Таким образом, No of mapper (если используется FileInputFormat
) = 15.
Объяснение:
HDFS не занимает целый блок для хранения файла размером <размер блока. Мы можем рассмотреть пример: предположим, размер блока HDFS = 64 МБ. У нас есть несколько файлов для хранения с размером = 10 МБ, тогда узел имени будет: · Поиск доступного блока
· Клиент будет записывать дату в нее
· После закрытия записи считается, что файл закрыт для записи. т.е. файл создается с размером 10 МБ
· Затем в этом блоке доступно 53 МБ. Это будет освобождено и добавлено в свободное место.
· Таким образом, блок для этого файла занимает только 10 МБ (произойдет изменение размера блока)
Ваши файлы хранятся в hdf.
1file =100mb
block size=64mb
поэтому 1 file split in 2 block
.
у вас есть 5 файлов
5*2=10blocks.
1 картограф на каждый раскол, поэтому
10blocks=10mapper
пожалуйста, подтвердите, в вашем заголовке файлов размером 150 мб, но в вопросе 100mb. он будет тем же самым делением, что и выше.