Hadoop Reducer: как я могу выводить в несколько каталогов, используя умозрительное выполнение?
У меня есть редуктор, который должен выводить результаты в разные каталоги, чтобы впоследствии мы могли использовать вывод в качестве входных данных для Hive в качестве секционированной таблицы. (Hive создает разделы на основе имени папки). Для того, чтобы писать в эти места, в настоящее время мы не используем какую-либо инфраструктуру Hadoop для этого, мы просто пишем в разные места ».за Hadoop 'назад, так сказать. Другими словами, мы не используем hadoopAPI для вывода этих файлов.
У нас были проблемы сmapred.reduce.tasks.speculative.execution
установлен вtrue
, Я понимаю, что это так, потому что несколько попыток для одной и той же задачи пишут в одно и то же место.
Есть ли способ правильно использовать Hadoop 's API для вывода в несколько разных папок из одного и того же редуктора, так что я также могу использоватьmapred.reduce.tasks.speculative.execution=true
? (Я знаю о MultipleOutputs, которые яЯ не уверен, поддерживает спекулятивное исполнение.)
Если так, есть ли способ сделать этоа также вывод на S3?