Ответ 1
Задайте для свойства конфигурации mapred.textoutputformat.separator
значение ";"
Я думаю, что название уже объясняет мой вопрос. Я хотел бы изменить
key (tab space) value
в
key;value
во всех выходных файлах редукторы генерируются с выхода картографов.
Я не мог найти хорошую документацию по этому вопросу с помощью Google. Кто-нибудь может дать часть кода о том, как это сделать?
Задайте для свойства конфигурации mapred.textoutputformat.separator
значение ";"
В отсутствие лучшей документации, вот что я собрал:
setTextOutputFormatSeparator(final Job job, final String separator){
final Configuration conf = job.getConfiguration(); //ensure accurate config ref
conf.set("mapred.textoutputformat.separator", separator); //Prior to Hadoop 2 (YARN)
conf.set("mapreduce.textoutputformat.separator", separator); //Hadoop v2+ (YARN)
conf.set("mapreduce.output.textoutputformat.separator", separator);
conf.set("mapreduce.output.key.field.separator", separator);
conf.set("mapred.textoutputformat.separatorText", separator); // ?
}
вы можете использовать свойство "KEY_VALUE_SEPERATOR" для "KeyValueLineRecordReader", чтобы указать разделитель по вашему выбору.