Это мой ответ для вашего # 1:
Вы не можете напрямую контролировать, куда идут задачи карты в вашем кластере или куда файлы отправляются в вашем кластере.JobTracker и NameNode обрабатывают их соответственно.JobTracker попытается отправить задачи карты в локальные данные, чтобы повысить производительность.(Я должен был догадаться, что вы имели в виду для вашего вопроса, если я не понял его правильно, уточните)
Это мой ответ для вашего # 2:
MultipleOutputs
- это то, что вы ищете, когда хотите записать несколько файлов из одного редуктора.