spark单机版intelij开发(含maven)

https://www.jianshu.com/p/200473f264bc
https://blog.csdn.net/a2011480169/article/details/52712421

参考博客:
1、http://wwwlouxuemingcom.blog.163.com/blog/static/20974782201321953144457/
2、http://blog.csdn.net/stark_summer/article/details/42460527

本次具体实现过程:
intellij IDEA本来是不能开发Scala程序的,但是通过配置是可以的,但是通过intellij IDEA软件下载Scala插件总是失败,所以只能手动下载,但是手动下载过程中要注意:
1、一是scala的版本要和Intellij版本对应。如下图是查看方式:

 从上面显示的信息是:
Updatated: 2016/7/13
于是我们到下面的网站去找匹配的插件:
http://plugins.jetbrains.com/plugin/?idea&id=1347

当我们下载完插件之后:
把下载的.zip格式的scala插件放到Intellij的安装的plugins目录下;
再安装刚刚放到Intellij的plugins目录下的scala插件(注:直接安装zip文件)即可。如下图:

新建scala项目

导入spark所有jar包

import org.apache.spark.mllib.linalg.{Matrices, Matrix}
import org.apache.spark.{SparkContext, SparkConf}

/**
  * Created by Administrator on 2017/4/20.
  * xudong
  */
object WordCountLocal {
  def main(args: Array[String]) {
    /**
      * SparkContext 的初始化需要一个SparkConf对象
      * SparkConf包含了Spark集群的配置的各种参数
      */
    val conf=new SparkConf()
      .setMaster("local")//启动本地化计算
      .setAppName("testRdd")//设置本程序名称

    //Spark程序的编写都是从SparkContext开始的
    val sc=new SparkContext(conf)
    //以上的语句等价与val sc=new SparkContext("local","testRdd")
    val data=sc.textFile("e://hello.txt")//读取本地文件
//  val data=sc.textFile("file:///opt/modules/wc.input")//读取本地文件
    data.flatMap(_.split(" "))//下划线是占位符,flatMap是对行操作的方法,对读入的数据进行分割
      .map((_,1))//将每一项转换为key-value,数据是key,value是1
      .reduceByKey(_+_)//将具有相同key的项相加合并成一个
      .collect()//将分布式的RDD返回一个单机的scala array,在这个数组上运用scala的函数操作,并返回结果到驱动程序
      .foreach(println)//循环打印
  }
}

打包jar包,提交到spark集群计算

在spark上提交任务

spark-submit --master spark://192.168.47.244:7077 --class WordCountLocal /opt/modules/wordspark.jar

maven项目搭建

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.11</artifactId>
    <version>2.2.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-sql -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.11</artifactId>
    <version>2.2.1</version>
</dependency>

https://www.jianshu.com/p/f852b3b9e398

猜你喜欢

转载自blog.csdn.net/zhang__rong/article/details/87986758