-1
я хочу использовать Hadoop для вычисления расстояния bewteen точек и сортировать их результат порядка по ключу, при запуске hadoop jar knn.jar input output
, я получаю ошибки следующим образом:Когда я сортировки данных с помощью Hadoop, я получаю ошибку
13/11/28 15:35:38 INFO mapred.JobClient: Task Id : attempt_2013
10221205_0036_m_000000_0, Status : FAILED
java.io.IOException: Type mismatch in key from map: expected or
g.apache.hadoop.io.Text, recieved org.apache.hadoop.io.DoubleWr
itable
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.col
lect(MapTask.java:1019)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.
write(MapTask.java:690)
at org.apache.hadoop.mapreduce.TaskInputOutputContext.w
rite(TaskInputOutputContext.java:80)
at xautjzd.knn.hadoop.apache.KNN$KNNMapper.map(KNN.java
:35)
at xautjzd.knn.hadoop.apache.KNN$KNNMapper.map(KNN.java
:1)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:1
45)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTas
k.java:764)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:36
4)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native M
ethod)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs
(UserGroupInformation.java:1190)
at org.apache.hadoop.mapred.Child.main(Child.java:249)
Мой код:
Как сказать ошибка s есть несоответствие типов. Можете ли вы показать свой класс драйверов, чтобы увидеть типы данных, которые вы установили для ввода карты? В основном в зависимости от выбранного вами формата ввода, картографу будет задан ключ. Так что подтвердите это или напишите свой код драйвера – abhinav