Spark在Windows下的环境搭建方法(3)

选择图中红色标记进行下载,这里上面的src版本就是源码,需要对Hadoop进行更改或者想自己进行编译的可以下载对应src文件,我这里下载的就是已经编译好的版本,即图中的“hadoop-2.7.1.tar.gz”文件。

下载并解压到指定目录,,我这里是C:\Hadoop,如图所示:

然后到环境变量部分设置HADOOP_HOME为Hadoop的解压目录,如图所示:

然后再设置该目录下的bin目录到系统变量的PATH下,我这里也就是C:\Hadoop\bin,如果已经添加了HADOOP_HOME系统变量,也可用%HADOOP_HOME%\bin来指定bin文件夹路径名。这两个系统变量设置好后,开启一个新的cmd窗口,然后直接输入spark-shell命令。如图所示:

正常情况下是可以运行成功并进入到Spark的命令行环境下的,但是对于有些用户可能会遇到空指针的错误。这个时候,主要是因为Hadoop的bin目录下没有winutils.exe文件的原因造成的。这里的解决办法是:

可以去https://github.com/steveloughran/winutils选择你安装的Hadoop版本号,然后进入到bin目录下,找到winutils.exe文件,下载方法是点击winutils.exe文件,进入之后在页面的右上方部分有一个Download按钮,点击下载即可。 如图所示:

下载winutils.exe文件

将下载好winutils.exe后,将这个文件放入到Hadoop的bin目录下,我这里是C:\Hadoop\hadoop-2.7.1\bin。

 

在打开的cmd中输入

复制代码 代码如下:
C:\Hadoop\hadoop-2.7.1\bin\winutils.exe chmod 777 /tmp/Hive //修改权限,777是获取所有权限

但是我们发现报了一些其他的错(Linux环境下也是会出现这个错误)

<console>:14: error: not found: value spark
    import spark.implicits._
        ^
 <console>:14: error: not found: value spark
    import spark.sql

其原因是没有权限在spark中写入metastore_db 这个文件。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1721.html