Spark算子

一、编写spark程序的准备工作(程序入口 SparkContext)

1.创建SparkConf

val conf = new SparkConf().setMaster("local[2]").setAppName("hello-app")

2.创建sparkContext

val sc: SparkContext = new SparkContext(conf)

二、基于sparkContext创建RDD 

简略的说, RDD 有三种创建方式

  1. RDD 可以通过本地集合直接创建
  2. RDD 也可以通过读取外部数据集来创建
  3. RDD 也可以通过其它的 RDD 衍生而来

通过本地集合直接创建 RDD

val list = List(1, 2, 3, 4, 5, 6)
val rddParallelize = sc.parallelize(list, 2)
val rddMake = sc.makeRDD(list, 2)

通过读取外部文件创建 RDD 

val source1: RDD[String] = sc.textFile("hdfs://node01:8020/dataset/wordcount.txt")
val source2: RDD[String] = sc.textFile("/data/input/wordcount.txt")

通过其它的 RDD 衍生新的 RDD

val source: RDD[String] = sc.textFile("hdfs://node01:8020/dataset/wordcount.txt", 20)
val words = source.flatMap { line => line.split(" ") }

 三、RDD算子的使用

RDD 中的算子从功能上分为两大类(Transformation和Action)

  1. Transformation(转换) 它会在一个已经存在的 RDD 上创建一个新的 RDD, 将旧的 RDD 的数据转换为另外一种形式后放入新的 RDD。
  2. Action(动作) 执行各个分区的计算任务, 将的到的结果返回到 Driver 中。

 spark 常用的 Transformation 算子如下表:

Spark 常用的 Action 算子如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wanglingli95

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值