Как назначаются задачи маппера и редуктора - PullRequest
0 голосов
/ 09 ноября 2018

При выполнении задания MR Hadoop делит входные данные на N разделений и затем запускает соответствующие программы N Map для их отдельной обработки.
1. Как данные разделяются (разделяются на разные inputSplits)?
2.Как запланировано разделение (как вы решаете, на каком компьютере TaskTracker должна работать программа Map, которая обрабатывает разделение)?
3.Как читать разделенные данные?
4.Как назначить задачу уменьшения?
В hadoop1.X
enter image description here
В hadoop 2.x
enter image description here

Оба вопроса имеют некоторую взаимосвязь,поэтому я спросил их вместе, вы можете показать, в какой части вы хороши.

заранее спасибо.

1 Ответ

0 голосов
/ 10 ноября 2018

Данные хранятся / читаются в блоках HDFS заранее определенного размера и читаются различными типами RecordReader с помощью сканеров байтов, и знают, сколько байтов нужно прочитать, чтобы определить, когда необходимо вернуть InputSplit.

Хорошим упражнением для лучшего понимания является создание собственного RecordReader и создание маленьких и больших файлов из одной маленькой записи, одной большой записи и множества записей. В случае с множеством записей вы пытаетесь разделить запись на два блока, но этот тестовый пример должен быть таким же, как одна большая запись на два блока.

Задача сокращения может быть установлена ​​клиентом действия MapReduce.

Начиная с Hadoop 2 + YARN, это изображение устарело

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...