【Spark】Spark RDD操作、转化操作和行动操作

本文详细介绍了Spark中的RDD操作,包括如何创建RDD,重点讲解了转化操作(如map, flatMap, filter等)和行动操作(如collect, reduce, saveAsTextFile等)。转化操作是惰性的,仅在执行行动操作时实际计算。RDD的lineage记录了所有转化步骤,而行动操作则将结果返回或存储到外部系统。" 125376314,7371989,ThingsBoard教程:计算室内室外温度差,"['物联网', 'ThingsBoard', '规则引擎', '设备模拟', '数据处理']
摘要由CSDN通过智能技术生成

一、创建RDD

1、外部数据集(external datasets)

var rdd = sc.textFile("hdfs://hadoop-senior.ibeifeng.com:8020/user/root/mapreduce/wordcount/input/wc.input")
rdd.collect
res6: Array[String] = Array(hadoop hive, hive hadoop, hbase sqoop, hbase sqoop, hadoop hive)
rdd.map(s => s.length).reduce((x, y) => (x + y))
res9: Int = 55

2、并行化数据集(parallelized collections)

scala> val datas = Array(1, 2, 3, 4, 5, 6)
datas: Array[Int] = Array(1, 2, 3, 4, 5, 6)

scala> val arrRdd = sc.parallelize(datas)
arrRdd: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[6] at parallelize at <console>:23
scala> arrRdd.map(num => num * num).collect
res5: Array[Int] = Array(1, 4, 9, 16, 25, 36)

二、转化操作

转化操作(transformations),创建一个新的数据集RDD;lazy懒

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值