Hodoop碰到的问题628

725 阅读1分钟

windows执行mapreduce报错信息如下

Exception in thread "main" java.net.UnknownHostException: Invalid host name: local host is: (unknown); destination host is: "hadoop1":8032; java.net.UnknownHostException;

重启下电脑没什么事了...莫名其妙

Exception message: /bin/bash: line 0: fg: no job control

Stack trace: ExitCodeException exitCode=1: /bin/bash: line 0: fg: no job control

设置Configura如下

conf.set("mapreduce.app-submission.cross-platform","true");

报错如下

Exception in thread "main" java.io.IOException: java.net.ConnectException: Call From SKY-20180605RQV/192.168.0.172 to 0.0.0.0:10020 failed on connection exception: java.net.ConnectException: Connection refused: no further information;

运行MapReduce时异常

自定义map输出对象 报错如下

java.lang.Exception: java.lang.RuntimeException: java.lang.NoSuchMethodException: com.Information.<init>()
   at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462)
   at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:529)

原因 没有在自定义的writeble中设置无参构造函数

2.mapreduce输出中文变成乱码

添加如下代码

 public static Text transformTextToUTF8(Text text, String encoding) {
       String value = null;
       try {
           value = new String(text.getBytes(), 0, text.getLength(), encoding);
       } catch (UnsupportedEncodingException e) {
           e.printStackTrace();
       }
       return new Text(value);
   }

map中

 Text newText = transformTextToUTF8(value, "GBK");
        String  a= newText.toString();