Hadoop - это файловая система, и задача map-Reduce состоит в том, чтобы обрабатывать большие объемы данных, которые обычно не помещаются в памяти, поэтому входные и выходные данные обычно каким-то образом хранятся на дисках (файлы .k.a.)
Классы Hadoop mapreduce поставляются с поддержкой чтения различных типов файлов, поддерживаемых hadoop (текстовые файлы, последовательные файлы), вы также можете написать свои собственные источники, например, HBase поставляется с оберткой для уменьшения карты r, которая читает его формат файла. Я не пробовал этого, но вы можете, как показывает статья, на которую указывает Правин, читать из других источников
Вывод еще проще - поскольку вы пишете код Java, вы можете делать все что угодно на этапе сокращения, поэтому, если вы хотите, скажем, поместить сообщения в очередь на этапе сокращения, просто сделайте это