2016-11-16 3 views
0

Я получаю некоторую ошибку при запуске моей работы MapReduce WordCount.FAILED Ошибка: java.io.IOException: Инициализация всех коллекционеров завершилась неудачно

Error: java.io.IOException: Initialization of all the collectors failed. Error in last collector was :class wordcount.wordmapper at org.apache.hadoop.mapred.MapTask.createSortingCollector(MapTask.java:414) at org.apache.hadoop.mapred.MapTask.access$100(MapTask.java:81) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) atorg.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1693)at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) Caused by: java.lang.ClassCastException: class wordcount.wordmapperat java.lang.Class.asSubclass(Class.java:3165)at org.apache.hadoop.mapred.JobConf.getOutputKeyComparator(JobConf.java:892) at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.init(MapTask.java:1005) at org.apache.hadoop.mapred.MapTask.createSortingCollector(MapTask.java:402)

+1

Делитесь своим текстом wordcount –

ответ

0

То же самое происходит со мной во время работы задания mapredue. Импортируйте правильный класс Text.

Если вы импортировали ниже импорта, вы получите эту ошибку:

import com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider.Text; 

Изменить его к этому.

import org.apache.hadoop.io.Text; 
0

Ваш класс должен иметь конструктор по умолчанию, если вы определили какой-либо параметризованный конструктор, конструктор по умолчанию автоматически удаляется. Вы должны явно определить этот конструктор. Можете ли вы показать фрагмент кода?

Class SampleClass 
{ 
    int a; 
    public SampleClass(int param) 
    { 
    a = param; 
    } 

    public SampleClass() 
    { 
    } 
}