Spark学习笔记3
IDEA编写scala代码并打包上传集群运行
我们在IDEA上的maven项目已经搭建完成了,现在可以写一个简单的spark代码并且打成jar包
上传至集群,来检验一下我们的spark搭建后是否真正可以使用了
1.今天就和大家写一个计算π的spark代码
下面我把已经写好了的代码放在下面,大家可以借以参考一下
package day02 import org.apache.spark.{SparkConf, SparkContext}
import scala.math.random
object SparkPi02 { def main(args: Array[String]): Unit = { val spark = new SparkContext( new SparkConf().setAppName("SparkPi02")) val slices = if (args.length > 0) args(0).toInt else 2 val n = math.min(100000L * slices,Int.MaxValue).toInt val count = spark.parallelize(1 until 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() } }
写好我们的代码之后还要做一件非常重要的事情,就是把这个代码打包上传到我们的集群里
2.这里来给大家演示一下如何把代码打成jar包和上传到集群的操作
有两种方法可以打包
第一种:
把IDEA右侧的一个叫maven project的目录打开
打开之后点击你的项目名称,然后点击lifecycle,点住clean和package,双击
之后自动开始打包
打包完成以后去项目的target下面查看一下包是否成功导出
上面可以看到已经成功的打包出来了,然后把打好的jar包上传至集群某个文件夹下
然后到spark的bin目录下执行命令:
./spark-submit \
--class 包名加类名 \
--master spark://节点名://7077 \
--jar包在你的集群的绝对路径 \
参数值
回车,就开始执行jar包了,下面是结果的展示
到这里为止,我们已经成功的运行了!
转载本文请和本文作者联系,本文来自博客园一袭白衣一