使用的是Ubuntu16.04
1、下载Intelli Idea的Community版本,并解压放到/opt/路径下,这里下载的为2016.3.5版本
http://www.jetbrains.com/idea/download/#section=windows
2、打开终端,进入解压后的idea目录,运行bin下idea.sh
cd /opt/idea
bin/idea.sh
3、点击右下角的configure-plugins-Install JetBrains Plugins,找到Scala并Install
4、点击create new project新建项目,选择创建scala程序,点击下一步,在Project JDK中选择自己的JDK路径,点击完成
5、点击菜单栏ProjectStructure,在Modules中,右键src,在src下建main文件夹,再在main下面建一个scala文件夹,右键点击这两个文件夹,将类型改为Source
在Libraries中,点添加-Java加入spark的jar包。如果没有scalaJDK则还需点添加-scalaJdk
点击Apply和Ok保存设置
6、右键scala文件夹,new-package新建包test1,然后右键test1 new-ScalaClass新建scala文件,以下为scala内容,建立一个rdd并保存在本地。
package test1
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.SparkContext._
object test1 {
def main(args: Array[String]){
if(args.length == 0){
System.err.print("Usage:test1<file1>")
System.exit(1)
}
val conf = new SparkConf().setAppName("test1")
val sc = new SparkContext(conf)
//建立rdd并保存到arg(0)指定的路径下
val num = 1 to 10
val rdd1 = sc.parallelize(num)
rdd1.saveAsTextFile(args(0))
sc.stop()
}
}
7、点击菜单栏ProjectStructure,在Artifas中点击绿色+ jar-from modules,指定main class为要运行的test1,点击确定
点击Build-Build Artifacts-Build,Build结束后,可以看到项目下out文件夹中有mytest.jar
打开终端,切换到spark路径下,将此jar包放到spark路径下
cp /home/zyt/IdeaProjects/mytest1/out/artifacts/mytest1_jar/mytest1.jar
启动master和worker,并提交代码,其中指定了参数为本地的路径,即将rdd保存到本地/home/mytest1下
bin/spark-submit --master spark://ubuntu:7077 --class test1.test1 mytest1.jar file:///home/mytest1
运行结果如下,可以看到代码已经成功运行
打开网页localhost:8080可以看到任务已经完成
然后打开/home 可以看到有一个叫mytest1的文件夹,文件夹中有三个文件
其中part-00000和part-00001中内容分别为12345和678910,说明rdd已经成功保存。