Hadoop Reducer: как я могу выводить в несколько каталогов, используя умозрительное выполнение?

У меня есть редуктор, который должен выводить результаты в разные каталоги, чтобы впоследствии мы могли использовать вывод в качестве входных данных для Hive в качестве секционированной таблицы. (Hive создает разделы на основе имени папки). Для того, чтобы писать в эти места, в настоящее время мы не используем какую-либо инфраструктуру Hadoop для этого, мы просто пишем в разные места ».за Hadoop 'назад, так сказать. Другими словами, мы не используем hadoopAPI для вывода этих файлов.

У нас были проблемы сmapred.reduce.tasks.speculative.execution установлен вtrue, Я понимаю, что это так, потому что несколько попыток для одной и той же задачи пишут в одно и то же место.

Есть ли способ правильно использовать Hadoop 's API для вывода в несколько разных папок из одного и того же редуктора, так что я также могу использоватьmapred.reduce.tasks.speculative.execution=true ? (Я знаю о MultipleOutputs, которые яЯ не уверен, поддерживает спекулятивное исполнение.)

Если так, есть ли способ сделать этоа также вывод на S3?

Ответы на вопрос(2)

Ваш ответ на вопрос