0

Hadoop の出力を HDFS に書き込むのではなく、txt ファイルに書き込む方法を考えています。たとえば、次のコードを入れます。

    // Create the job specification object
    Job job1 = new Job();
    job1.setJarByClass(Main.class);
    job1.setJobName("Day Measurment");

    // Setup input and output paths
    FileInputFormat.addInputPath(job1, new Path(args[0]));
    FileOutputFormat.setOutputPath(job1, new Path(args[1]));

    // Set the Mapper and Reducer classes
    job1.setMapperClass(DayMapper.class);
    job1.setReducerClass(LogReducer.class);

    // Specify the type of output keys and values
    job1.setOutputKeyClass(Text.class);
    job1.setOutputValueClass(LongWritable.class);

    // Wait for the job to finish before terminating
    job1.waitForCompletion(true);

    PrintWriter pw = new PrintWriter("hadoop.csv");
    pw.println("abc");
    pw.close();

プログラムをテストした後、Hadoop は正常に動作しますが、hadoop.csv しか取得できず、中身はありません。これは空のファイルで、中に「abc」はありません。

理由を教えてもらえますか?または、出力を HDFS ではなく通常のファイル (.csv または .log) に出力する方法を教えてください。

4

2 に答える 2