Так что моя функция сокращения карт работает нормально на моей локальной виртуальной машине, но на Azure это дает мне Input path not found
ошибку. У меня есть два набора функций преобразователя и редуктора, вывод из первого редуктора поступает во временную папку, которая является входом для второго преобразователя.
FileInputFormat.addInputPath(job, new Path(args[0]));
FileSystem.get(conf).delete(new Path("file:///tmp/inter/"),true);
FileOutputFormat.setOutputPath(job, new Path("file:///tmp/inter/"));
boolean complete = job.waitForCompletion(true);
Job job2 = Job.getInstance(conf, "Q4a");
job2.setJarByClass(Q4a.class);
job2.setMapperClass(TokenizerMapper2.class);
job2.setCombinerClass(CountReducer2.class);
job2.setReducerClass(CountReducer2.class);
job2.setOutputKeyClass(Text.class);
job2.setOutputValueClass(Text.class);
// FileInputFormat.addInputPath(job2, new Path("file:///tmp/inter/part*"));
FileInputFormat.addInputPath(job2, new Path("file:///tmp/inter/"));
FileOutputFormat.setOutputPath(job2, new Path(args[1]));
System.exit(job2.waitForCompletion(true) ? 0 : 1);
Первый полностью выполняется преобразователь и редуктор, а затем выдается ошибка. Строка 58 является последней строкой в вставленном коде, но я считаю, что ошибка из-за временного пути ввода? Нужно ли ссылаться на временные файлы другим способом в Azure? Любая помощь очень ценится, спасибо.