spark
文章平均质量分 90
Wang_AI
这个作者很懒,什么都没留下…
展开
-
Spark源码解读之RDD依赖Dependency
Spark中RDD有transform和action两种类型的算子操作,transform会生成一个子RDD,子RDD与之前的父RDD之间存在依赖关系,目前有两种依赖关系:NarrowDependency和ShuffleDependency。NarrowDependency又分为OneToOneDependency和RangeDependency两种。现在来看下org.apache.spark.D原创 2016-12-03 19:28:58 · 2268 阅读 · 0 评论 -
Spark源码解读之SparkContext初始化
SparkContext初始化是Driver应用程序提交执行的前提,这里以local模式来了解SparkContext的初始化过程。本文以val conf = new SparkConf().setAppName("mytest").setMaster("local[2]")val sc = new SparkContext(conf)为例,打开debug模式,然后进行分析。原创 2016-12-13 17:24:27 · 8618 阅读 · 1 评论 -
Spark源码解读之Job提交
上一篇讲解了Spark源码解读之RDD构建和转换过程,上一篇的RDD操作都是transform,也就是说结果会是一个新的RDD,并不会进行真正地计算,真正会引发Spark计算操作时action。比如first、count、collect。WordCounts.collect()会真正出发一个Job的执行。RDD的collect源码如下: // 返回RDD所包含的所有元素 def原创 2016-12-31 17:30:22 · 1148 阅读 · 0 评论 -
Spark源码解读之Stage划分和提交
上一篇讲解了Spark源码解读之Job提交,这一篇主要讲解Stage划分和提交。调用流程:org.apache.spark.scheduler.DAGScheduler.handleJobSubmittedorg.apache.spark.scheduler.DAGScheduler.submitStageorg.apache.spark.scheduler.DAGSche原创 2017-01-02 14:42:25 · 1439 阅读 · 0 评论 -
Spark源码解读之RDD构建和转换过程
上一节讲了Spark Context的初始化过程,发现其实一行简单的new SparkContext(sparkConf)代码,spark内部会去做很多事情。这节主要讲RDD的构建过程。一、 RDD概述 RDD (Resilient Distributed Dataset) ,一个弹性分布式数据集,Spark中的基本抽象。代表一个不变(只读)的、可以并行操作的元素的分区集合。Spar原创 2016-12-15 18:46:54 · 2376 阅读 · 0 评论