Spark_02

Posted 走多远才算远

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark_02相关的知识,希望对你有一定的参考价值。

spark-core:
rdd api => 算子
scala:
高阶函数/ 高阶api

1.构建rdd
1.从已经存在集合
2.已经存在外部数据源
1.textFile :
1.Spark creates one partition for each block of the file hdfs [没有问题的]
2. you cannot have fewer partitions than blocks

val rdd = sc.textFile("hdfs://bigdata32:9000/wc.data")  2
3 =》 3 

	保存: 
		saveAstextFile: 

落地hdfs文件的个数:
mapreduce =》 reduce task数量
spark-core =》 最终的rdd的分区数

2.RDD 相关的操作
1.transformations 【转换操作】:
create a new dataset from an existing one
2.actions 【触发job执行的操作】
which return a value to the driver program 【spark client、控制台】
after running a computation on the dataset. 【rdd】
构建rdd:
1.从已经存在集合
2.已经存在外部数据源
3.从已经存在rdd转换生成一个新的rdd
transformation:
1.All transformations in Spark are lazy =》 懒加载

rdda => rddb =>rddc  => 不会立即执行 不会触发job的执行
rdd.map().fitler. 
=》 rdd 血缘关系 

action:
触发作业的执行

好处: mapreduce
1=>2=>3=>4
spark-core: job pipiline
1=>2=>3=>4 action => job作业的执行

transformation:

1.map : 一一映射
处理rdd里面每一个元素

2.filter
map相关的算子、kv类型的算子、other算子
3.map相关的算子
makeRDD =>了解 =》 parallelize
map vs mapPartitions:
1.map 一个作用的rdd里面每一个元素
2.mapPartitions 作用的rdd里面 分区

需求: spark-core:
	map filter =》 不让用 如何实现 功能?  平台
		MapPartitionsRDD

Actions

1.collect()
2.foreach() 输出 :
driver :
1.控制台
2.hdfs 不这样用
3.db

以上是关于Spark_02的主要内容,如果未能解决你的问题,请参考以下文章

大数据技术之_27_电商平台数据分析项目_02_预备知识 + Scala + Spark Core + Spark SQL + Spark Streaming + Java 对象池

大数据技术之_19_Spark学习_02_Spark Core 应用解析+ RDD 概念 + RDD 编程 + 键值对 RDD + 数据读取与保存主要方式 + RDD 编程进阶 + Spark Cor

Spark Shuffle过程详细分析

为啥 Spark 作业失败并显示“退出代码:52”

Spark - 使用 groupBy 减少组合数量

提高 Spark.SQL 中的数据整理性能