Большие данные Hadoop 1-го поколения. Я очень новичок в Apache Hadoop. Я просто сомневался, что мой вопрос не имеет значения.Как происходит разделение блоков в HDFS?
Проблема: проблема с количеством слов (сухая отладка).
Пример:
Имя файла: test.txt
Размер файла: 120 MB
Размер блока по умолчанию: Содержимое 64 MB
Файл:
Hello StackOverflow
Hi StackOverflow
Hola StackOverflow
Mushi Mushi StackOverflow
.....
.....
.....
Mushi Mushi StackOverflow
Номер блоков будет: 2 (64 МБ + 56 МБ)
Блок 1 содержит:
Hello StackOverflow
Hi StackOverflow
Hola StackOverflow
Mushi Mus
Блок 2 содержит:
hi StackOverflow
.....
.....
.....
Mushi Mushi StackOverflow
Примечание: Здесь Муши слово разделяется между блоком 1 и блок 2, потому что в слове "Мус" размер блока стал 64 МБ, оставшееся слово «привет» перешло в блок 2.
Теперь мои вопросы: Q1) Возможно ли сценарий?
Q2) If No Why?
Q3) Если да, то какой будет счетчик слов.
Q4) Каким будет выход Mapper для обоих блоков.
В некоторой степени я понял, что вход-разделение является логическим представлением, а его размер по умолчанию - ваш размер блока, то есть 64 МБ. но как он будет размещать данные (которые были в других блоках) из других блоков, если он (вход-разделение 1) завершил 64 МБ пространства, будет ли он автоматически увеличивать размер входных разрывов? – user3676578
Размер InputSplit будет увеличен, и данные будут загружены в ОЗУ узла Mapper. –
Но узел Mapper ничего не знает о другом узле данных, тогда как он получит данные из другого узла Mapper, которые находятся в ОЗУ? Извините, но я не могу создать картинку в своем уме. – user3676578