1.构建独立应用,采用Maven搭建Spark应用程序
a.创建Scala工程(略)
b.加载spark-core_2.11依赖库:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.1.2</version>
</dependency>
注意:spark-core_{版本号},版本号应为scala的对应版本。
c.编写spark Driver端程序
1).创建SparkConf对象,并指定集群模式和AppName;
2).创建SparkContext对象,生成sc
3).创建RDD
4).针对业务需求,编写相应的RDD操作
2.WordCount案例
object WordCount {
def main(args: Array[String]): Unit = {
//构建Spark的conf对象,并通过setMaster方法设置集群模式运行的方式{“本地”},通过setAppName方法指定应用名字
val conf = new SparkConf().setMaster("local").setAppName("wordcount")
val sc = new SparkContext(conf);
val rdd = sc.textFile("file:///D:/测试数据/spark_wordcount.txt")
// val rdd1 = rdd.flatMap(x=> x.split(" "))
// val rdd2 = rdd1.map(x=>(x,1))
// val rdd3 = rdd2.reduceByKey((x,y)=>x+y)
// rdd3.saveAsTextFile("file:///D:/测试数据/spark_wordcount_res")
rdd.flatMap(x=>x.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("file:///D:/测试数据/spark_wordcount_res0")
}
}