2015-07-15 2 views
0

Предположим, у меня есть 3 файла, которые я хочу сохранить в HDFS, и вы хотите их прочитать через MapReduce.Блоки и мапперы на основе размера файла

Итак, есть 3 файлов внутри места HDFS /omega/usecase/input в file1.txt, file2.txt, file3.txt

Размер этих 3 файлов file1.txt(64MB),file2.txt(32MB),file3.txt(1MB)

позволяет также предположить, что размер блока по умолчанию является 64MB и фактор репликации 3

Я хотел бы знать, сколько блоков будет для этих 3 файлов и сколько картостроителей будут выполнены, если я пишу программу MapReduce, которая будет читать входной реж /omega/usecase/input

+0

Возможный дубликат [Малые файлы и блоки HDFS] (http://stackoverflow.com/questions/8562934/small-files-and-hdfs-blocks) – vanekjar

+0

Итак, ответ должен быть 3 Mappers? это верно? –

ответ

0

В HDFS будет 3 блока (по одному на каждый файл).

Каждый из этих блоков будет реплицирован на три разные машины. Поэтому они примерно занимают в 3 раза больше всех файлов = 3 * (64 + 32 + 1) MB.

Когда вы выполняете задание M/R, по умолчанию будет по умолчанию по 3 (по одному на каждый блок).

+0

Хорошо. @Vanekjar .. Спасибо .. –

0

3 блокирует каждый файл (блок - это просто логическое разделение).

И три процесса преобразования по одному на блок.

+0

Право .. Получил это сейчас, спасибо, сэр –

Смежные вопросы