Введите несоответствие значений из карты: ожидаемый org.apache.hadioop.io.Text, получатель org.apache.hadoop.io.DoubleWritable? - PullRequest
1 голос
/ 18 октября 2019

Я получаю ошибку:

java.io.IOException: несоответствие типов в значении с карты: ожидается org.apache.hadioop.io.Text, получатель org.apache.hadoop.io.DoubleWritable

Как это возможно с помощью следующего кода:

import org.apache.hadoop.mapreduce.*;

public static class RecordMapper extends Mapper<Object, Text, Text, DoubleWritable> {

        @Override
        public void map(Object key, Text value, Context ctx) throws IOException, InterruptedException {
            // ...
            Text newText = new Text(name);
            DoubleWritable newDoubleWritable = new DoubleWritable(newValue); 

            // till now everything is ok

            ctx.write(newText, newDoubleWritable); // ERROR !

            // fails above line
        }
public static void main(String[] args) {

    // ...
    job.setOutputKeyClass(Text.class);
    job.setOutputValueClass(DoubleWritable.class);
    job.setOutputFormatClass(TextOutputFormat.class);
    // ...
...