Spark_Core实例学习(三)SparkWordCount分析

搭建spark本地的运行环境

idea具体操作

下载spark的压缩包
https://archive.apache.org/dist/spark/spark-3.0.0/spark-3.0.0-bin-hadoop3.2.tgz

在这里插入图片描述
解压下载好的spark,找到spark的路径,将jars文件夹下的jar包导入
在这里插入图片描述
导入之后就能使用spark了

WordCount编程

import org.apache.spark.{SparkConf, SparkContext}

/**
 1. @author 公羽
 2. @time : 2021/5/9 16:46
 3. @File : learn2.java
 */
object learn2 {
  def main(args: Array[String]): Unit = {
    val config = new SparkConf().setAppName("test1").setMaster("local[6]").set("spark.driver.host","localhost")
    val sc  = new SparkContext(config)
    val rdd1 = sc.textFile("C:\\Users\\lenovo\\Desktop\\test.txt")
//    flatMap[U: ClassTag](f: T => TraversableOnce[U]):
    //    RDD[U]
    val rdd2 = rdd1.flatMap(x => x.split(",")).map(line => line -> 1).reduceByKey(_ + _)
    rdd2.foreach(lines => println(lines))
  }
}

在这里插入图片描述

原理分析

基本流程:

  1. 先是textFile()读取到数据
  2. 将数据输送给flatMap()进行扁平化处理
  3. 处理完后再将数据输送给map()进行二元组化
  4. 最后根据reduceBykey()进行组合
    下一步都会用到上一步的结果
    在这里插入图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值