《OD学Spark》20161022

Posted 沙漏哟

tags:

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

一、Spark Streaming

1. 什么是Spark Shuffle

Wide Dependencies

*ByKey: groupByKey,reduceByKey

关联操作:join,cogroup

 

窄依赖:

父RDD的每个分区的数据,仅仅只会给子RDD的一个分区。

Spark性能优化:

开发优化:

依据业务场景及数据,使用较好的RDD的方法

(1)能使用reduceByKey不要使用groupByKey

(2)适当的时候已经处理的数据RDD,进行重新分区

repartition

reduceByKey(func, numPartitions)

coalse

 

SCALA中的拉链编程

val rdd = sc.parallelize(List(1,2,3,4,5))

val rdd2 = sc.parallelize(List("aa", "bb", "cc", "dd", "ee"))

rdd.zip(rdd2)

rdd.zip(rdd2).collect

 

2. MapReduce Shuffle

Spark Stages

(1)ResultStage

Stage阶段运行Jobs输出结果

ResultTask

(2)ShuffleMapStage

Stage阶段的RDD会发生Shuffle过程,

ShuffleMapTask

每个Stage中的所有任务的逻辑处理相同(functions)

 

Spark Scheduler

RDD Objects -> DAGScheduler -> TaskScheduler -> Worker

 

以上是关于《OD学Spark》20161022的主要内容,如果未能解决你的问题,请参考以下文章

《OD学spark》20160924scala基础

Spark学习之Spark安装

spark学习之作业优化

spark学习之作业优化

Spark-core学习之八 SparkShuffle & Spark内存管理

spark学习之处理数据倾斜