如何在Windows上设置Spark?
我正在尝试在Windows上安装Apache Spark 经过一点搜索,我了解到独立模式是我想要的。 为了在windows中运行Apache spark,我应该下载哪些二进制文件?我在spark下载页面看到了hadoop和cdh的发行版如何在Windows上设置Spark?,windows,apache-spark,Windows,Apache Spark,我正在尝试在Windows上安装Apache Spark 经过一点搜索,我了解到独立模式是我想要的。 为了在windows中运行Apache spark,我应该下载哪些二进制文件?我在spark下载页面看到了hadoop和cdh的发行版 我在网上没有这方面的参考资料。对此,我们非常感谢您的逐步指导 我发现Windows上最简单的解决方案是从源代码构建 您可以大致遵循以下指南: 下载并安装Maven,并将Maven\u OPTS设置为指南中指定的值 但是,如果您只是在玩Spark,实际上不需要它在
我在网上没有这方面的参考资料。对此,我们非常感谢您的逐步指导 我发现Windows上最简单的解决方案是从源代码构建 您可以大致遵循以下指南: 下载并安装Maven,并将
Maven\u OPTS
设置为指南中指定的值
但是,如果您只是在玩Spark,实际上不需要它在Windows上运行,因为您自己的机器正在运行Windows,我强烈建议您在linux虚拟机上安装Spark。最简单的入门方法可能是下载Cloudera或Hortonworks制作的现成图像,然后使用Spark的捆绑版本,或者从源代码或从Spark网站获得的编译二进制文件安装自己的图像。您可以从以下位置下载Spark: 我向您推荐此版本:Hadoop 2(HDP2、CDH5) 从1.0.0版开始,windows中就有运行spark的.cmd脚本 使用7zip或类似工具打开包装 首先,可以执行/bin/spark-shell.cmd--master local[2]
要配置实例,您可以按照以下链接进行操作:您可以使用以下方法设置Spark:
- 从源头上建设
- 使用预构建版本
首先,我尝试用SBT构建Spark源代码,但这需要hadoop。为了避免这些问题,我使用了预构建版本 我下载了Hadoop2.x版本的预构建版本并运行了它,而不是源代码。 为此,您需要先安装Scala 我在这里整理了所有步骤:
希望对你有帮助 > P>这是修复它在Windows中运行而不需要重建所有的东西——比如如果你没有MS-VS的最新版本(你需要一个Win32 C++编译器,但是你可以安装MSVS社区版)。 我曾在Spark 1.2.2和mahout 0.10.2以及2015年11月的最新版本中尝试过这一点。有很多问题,包括Scala代码试图运行一个bash脚本(mahout/bin/mahout),但该脚本不起作用。当然,sbin脚本还没有移植到windows,如果没有安装hadoop,winutils就会丢失 (1)安装scala,然后将spark/hadoop/mahout解压到C:的根目录中,在其各自的产品名称下 (2)将\mahout\bin\mahout重命名为mahout.sh.was(我们不需要它)
<强>(3)编译以下Win32 C++程序,并将可执行文件复制到名为C:\MaulOut\Bi\MaOutt的文件(即,右.exe后缀,如Linux可执行文件)
(4)创建脚本\mahout\bin\mahout.bat并粘贴到下面的内容中,尽管_CP类路径中JAR的确切名称将取决于spark和mahout的版本。根据您的安装更新任何路径。使用不带空格的8.3路径名。请注意,在这里的类路径中不能使用通配符/星号set SCALA_HOME=C:\Progra~2\scala
set SPARK_HOME=C:\spark
set HADOOP_HOME=C:\hadoop
set MAHOUT_HOME=C:\mahout
set SPARK_SCALA_VERSION=2.10
set MASTER=local[2]
set MAHOUT_LOCAL=true
set path=%SCALA_HOME%\bin;%SPARK_HOME%\bin;%PATH%
cd /D %SPARK_HOME%
set SPARK_CP=%SPARK_HOME%\conf\;%SPARK_HOME%\lib\xxx.jar;...other jars...
set MAHOUT_CP=%MAHOUT_HOME%\lib\xxx.jar;...other jars...;%MAHOUT_HOME%\xxx.jar;...other jars...;%SPARK_CP%;%MAHOUT_HOME%\lib\spark\xxx.jar;%MAHOUT_HOME%\lib\hadoop\xxx.jar;%MAHOUT_HOME%\src\conf;%JAVA_HOME%\lib\tools.jar
start "master0" "%JAVA_HOME%\bin\java" -cp "%SPARK_CP%" -Xms1g -Xmx1g org.apache.spark.deploy.master.Master --ip localhost --port 7077 --webui-port 8082 >>out-master0.log 2>>out-master0.err
start "worker1" "%JAVA_HOME%\bin\java" -cp "%SPARK_CP%" -Xms1g -Xmx1g org.apache.spark.deploy.worker.Worker spark://localhost:7077 --webui-port 8083 >>out-worker1.log 2>>out-worker1.err
...you may add more workers here...
cd /D %MAHOUT_HOME%
"%JAVA_HOME%\bin\java" -Xmx4g -classpath "%MAHOUT_CP%" "org.apache.mahout.sparkbindings.shell.Main"
<> P>变量MaUutuPCP的名称不应该更改,因为它在C++代码中被引用。
当然,您可以注释掉启动Spark master和worker的代码,因为Mahout将根据需要运行Spark;我只是把它放在批处理作业中,向您展示如果您想在不使用Mahout的情况下使用Spark,如何启动它
(5)以下教程是一个很好的开始:
https://mahout.apache.org/users/sparkbindings/play-with-shell.html
您可以在以下位置启动Mahout Spark实例:
"C:\Program Files (x86)\Google\Chrome\Application\chrome" --disable-web-security http://localhost:4040
下面是一个可以从任何python控制台运行的简单的最小脚本。 它假定您已提取已下载到C:\Apache\Spark-1.6.1中的Spark库 这可以在Windows中工作,而无需构建任何内容,并解决Spark会抱怨递归酸洗的问题
import sys
import os
spark_home = 'C:\Apache\spark-1.6.1'
sys.path.insert(0, os.path.join(spark_home, 'python'))
sys.path.insert(0, os.path.join(spark_home, 'python\lib\pyspark.zip'))
sys.path.insert(0, os.path.join(spark_home, 'python\lib\py4j-0.9-src.zip'))
# Start a spark context:
sc = pyspark.SparkContext()
#
lines = sc.textFile(os.path.join(spark_home, "README.md")
pythonLines = lines.filter(lambda line: "Python" in line)
pythonLines.first()
在本地模式下安装Spark的步骤:
java
,然后按enter键。
如果收到消息,“Java”不被识别为内部或外部命令。
您需要配置环境变量,Java\u HOME
和PATH
指向jdk的路径
Control Panel\System and Security\System
中设置SCALA\u HOME
转到“Adv System settings”,并在环境变量的路径变量中添加%SCALA\u HOME%\bin
SBT\u HOME
设置为环境变量,其值为
winutils.exe
。由于Windows上没有本地Hadoop安装,我们必须下载winutils.exe
,并将其放置在已创建的Hadoop
主目录下的bin
目录中。
在环境变量中设置HADOOP\u HOME=
SPARK\u HOME
并添加%SPARK\u HOME%\bin
sparkshell
http://localhost:4040/
在浏览器中查看SparkContext web UI
尝试使用spark-2.x.x,构建spark源代码对我来说不起作用
Spark-2.0.0-bin-hadoop2.7.tar.gz
路径
:;%SPARK\u HOME%\bin代码>
import sys
import os
spark_home = 'C:\Apache\spark-1.6.1'
sys.path.insert(0, os.path.join(spark_home, 'python'))
sys.path.insert(0, os.path.join(spark_home, 'python\lib\pyspark.zip'))
sys.path.insert(0, os.path.join(spark_home, 'python\lib\py4j-0.9-src.zip'))
# Start a spark context:
sc = pyspark.SparkContext()
#
lines = sc.textFile(os.path.join(spark_home, "README.md")
pythonLines = lines.filter(lambda line: "Python" in line)
pythonLines.first()
mkdir C:\tmp\hive
%HADOOP_HOME%\bin\winutils.exe chmod 777 /tmp/hive
%SPARK_HOME%\bin\spark-shell
C:\Users\Desktop\A\spark\bin>spark-shell
C:\Users\Desktop\A\spark\bin>pyspark
pip install findspark
import findspark
findspark.init()
from pyspark import SparkContext
from pyspark import SparkConf