本文介绍: maven创建一个spark项目

一、安装scala环境

        官网下载地址 Download | The Scala Programming Language,本次使用版本为sacla2.11.12,将压缩包解压至指定目录,配置好环境变量,控制台验证是否安环境是否可用:

二、添加pom依赖

     创建一个maven项目

1、添加scala的sdk依赖

  <properties>
    <scala.version>2.11.12</scala.version>
  </properties>
 
   <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-library</artifactId>
      <version>${scala.version}</version>
    </dependency>
 
    <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-compiler</artifactId>
      <version>${scala.version}</version>
    </dependency>
 
    <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-reflect</artifactId>
      <version>${scala.version}</version>
    </dependency>

2、添加spark依赖

  <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_2.11</artifactId>
      <version>2.4.8</version>
    </dependency>
 
    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-streaming_2.11</artifactId>
      <version>2.4.8</version>
      <scope>provided</scope>
    </dependency>

三、入门应用

1、数据源

   test_spark.txt

中国 河南
中国 浙江
河南 郑州
浙江 杭州
河南 洛阳
浙江 宁波
美国 纽约
纽约 华尔街
美国 吉利福尼亚
加利福尼亚 落砂机

2、编码实现

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
 
object SparkWordCount {
  def main(args: Array[String]): Unit = {
    ///使用本地模式连接spark
    val conf = new SparkConf().setAppName("WordCount").setMaster("local")
    val sc = new SparkContext(conf)
    ///读取文件中每一行字符 存入到是数据集合RDD中
    val lines: RDD[String] = sc.textFile("D:/workplace/java-item/res/file/test_spark.txt")
    /// 将数据集合进行扁平化操作  以字符空格分割
    val tuples = lines.flatMap(_.split(" ")).groupBy(word => word).map({ case (w, l) => (w, l.size) }).collect()
    tuples.foreach(println)
  }
}

原文地址:https://blog.csdn.net/fengchengwu2012/article/details/135729263

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_61537.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注