本教程介绍的是Windows环境下的Spark调试环境的搭建步骤。
一、组件介绍
首先列举搭建此环境需要的各个组件:
· JDK,安装JDK 6或者JDK 7(必备条件)
· IDEA,有两个版本:Ultimate Edition & Community Edition,后者是free的,而且完全能满足学习者所有的需求
· Scala,Spark是用Scala语言写成的,在本地编译执行需要这个包
· SBT,scala工程构建的工具
· Git,IDEA自动下载SBT插件时可能会用到的工具
二、安装步骤
1、安装Scala。(建议2.10.2 版本)
完成后,在windows命令行中输入scala
,检查是否识别此命令。
如果不识别,查看环境变量Path中是否有....scalabin
(我的电脑右键,属性 -> 高级系统设置 -> 环境变量),没有的手动将Scala文件夹下的bin目录的路径
Scal
2、安装SBT
运行SBT的安装程序,运行完成后,重新打开windows命令行,输入sbt
,检查是否识别此命令。没有的话,手动配置环境变量,添加...sbtbin
运行完SBT的安装程序之后,并不意味着完成了sbt的安装,在windows命令放下输入sbt
后,SBT会自动的下载安装它所需要的程序包,请耐心等待全部下载成功。
3、安装Git
运行Git的安装程序,安装完成后,重新打开windows命令行,检查时候识别git
命令。
4、安装IDEA、安装IDEA的Scala插件
打开IDEA,在‘Welcome to IntelliJ IDEA’界面的‘Quick Start’栏,点击Configure
,选择Plugins
。
在弹出的窗口中可以看到已安装的插件,现在IDEA默认还没有Scala的插件。需要点击左下角的Install JetBrains plugin...
,在搜索框中输入‘scala’,点击安装。安装完成后可能会要求重启一下IDEA。
至此,相关组件已经安装完成。
三、搭建Spark开发调试环境
在intellij IDEA中创建scala project,并依次选择“File”–> “project structure” –> “Libraries”,选择“+”,将spark-hadoop 对应的包导入,比如导入spark-assembly-
四、测试Spark代码
创建scala 非sbt工程。
新建scala class,可以使用以下代码测试
import scala.math.random
import org.apache.spark._
/** Computes an approximation to pi */
object drt {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("Spark Pi")
.setMaster("local") //关键
val spark = new SparkContext(conf)
val slices = if (args.length > 0) args(0).toInt else 2
val n = 100000 * slices
val count = spark.parallelize(1 to n, slices).map { i =>
val x = random * 2 - 1
val y = random * 2 - 1
if (x*x + y*y < 1) 1 else 0
}.reduce(_ + _)
println("Pi is roughly " + 4.0 * count / n)
spark.stop()
}
}
代码中 .setMaster("local")语句非常关键,网上教程中有在run configuration里配置program argument的,我实测没有用。代码里加set local即可以解决问题,避免set master url问题,在本机调试代码。
要是你的工程执行完成后,console里能出现Pi is roughly。。。证明调试环境配置成功,Enjoy Spark with IDEA!