zoukankan      html  css  js  c++  java
  • spark开发常见问题之一:java.io.IOException: Could not locate executable nullinwinutils.exe in the Hadoop binaries.

    最近在学习研究pyspark机器学习算法,执行代码出现以下异常:
    19/06/29 10:08:26 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
    java.io.IOException: Could not locate executable nullinwinutils.exe in the Hadoop binaries.
    at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:379)
    at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:394)
    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:387)
    at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:80)
    ...........
    19/06/29 10:08:26 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
    从程序运行度方面来说,这个异常并不影响spark程序的继续执行。但是作为一个程序员看到异常就如出现bug,必须让这种异常消失!
    分析异常:根据提示应该是Hadoop binaries.中缺少winutils.exe这个配置。
    解决方法:
    1.首先检查本地window环境是否已经安装hadoop,若没有则先配置hadoop环境变量
    1)下载Hadoop,我本次操作使用的是hadoop-2.7.3,当然你可以根据自己需求去官网下载
    官网下载地址:
    网盘分享我使用的版本:
    链接: https://pan.baidu.com/s/1-ssNBynSzrC5iG5ozwqAUA 提取码: zdu5 
    2)配置windows环境变量。本机是windows10系统
    先添加HADOOP_HOME配置

    在配置path路径:

    3) 下载winutils.exe,hadoop.dll放到hadoop环境的bin目录,建议尽量使用版本匹配的,必然hadoop-2.6就使用2.6版本的。2.7版本就使用2.7.。理论上2.7版本可以使用在2.6版本上

    这里提供hadoop-2.7.3版本的这2个文件:链接: https://pan.baidu.com/s/1r5rZWqU2O7wu2WtAhmt1KA 提取码: pxr9

     

    4)重启电脑再次测试 异常提示消失

    提醒:这个异常提示并不一定是spark程序开发时才会出现。在做hadoop程序开发必然写mapreduce程序时 也会遇到同样情况。操作方法一致即可。

  • 相关阅读:
    mongodb
    python中读取文件的read、readline、readlines方法区别
    uva 129 Krypton Factor
    hdu 4734
    hdu 5182 PM2.5
    hdu 5179 beautiful number
    hdu 5178 pairs
    hdu 5176 The Experience of Love
    hdu 5175 Misaki's Kiss again
    hdu 5174 Ferries Wheel
  • 原文地址:https://www.cnblogs.com/liuys635/p/12191230.html
Copyright © 2011-2022 走看看