![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spark
文章平均质量分 78
iteye_4143
这个作者很懒,什么都没留下…
展开
-
spark源码梳理(0)-说明
本系列文章为对Spark主要逻辑源码学习整理。主要参考《Spark技术内幕》一书(简称《内幕》)。《内幕》主要以源码模块为主线进行横向解析。本文则致力于由“事件”触发的纵向逻辑为主线,例如Action算子、Transform算子、集群启动等,这个角度基本Spark运行时的调用栈。各主线直接没有必然的先后联系 如无特别说明,本文基于Spark 2.10版本源码,并且仅讨论Standalo...原创 2016-01-03 16:58:01 · 107 阅读 · 0 评论 -
spark源码梳理(1)-Action提交1
1.概述 Action算子是触发Spark计算的入口,属于Spark核心逻辑。本文梳理Action触发、计算、返回的整个数据流 本文涉及代码主体位于org.apache.spark.scheduler/rdd/executor几个模块。核心类:RDD、SparkContext、DAGScheduler、TaskSchedulerImpl、CoarseGrainedSchedulerB...原创 2016-01-03 16:58:22 · 129 阅读 · 0 评论 -
spark源码梳理(1)-Action提交2
续上篇 Step 5-TaskSchedulerImpl override def submitTasks(taskSet: TaskSet) { val tasks = taskSet.tasks logInfo("Adding task set " + taskSet.id + " with " + tasks.length + " tasks") this.s...原创 2016-01-14 17:53:47 · 146 阅读 · 0 评论 -
spark枚举类作为Key时跨进程问题
最近在集群上跑spark时发现有些reduceByKey操作结果不符合预期,大致伪代码如下(公司统一用java,就没写成scala,用了scala的简写节省字数)。就是类似WordCount的简单计算,DimType是一个枚举类 JavaPairRDD<DimType, Long> rawRdd=...; JavaPairRDD<DimTy...原创 2016-01-21 15:09:54 · 124 阅读 · 0 评论 -
hadoop/spark关闭钩子研究
引子:在使用spark和hadoop的时候,遇到一些进程退出时的报错。因此顺便研究了一下jvm以及一些开源框架的关闭钩子的机制。这篇文章不涉及底层native实现,仅限Java层面 1.jvm关闭钩子 注册jvm关闭钩子通过Runtime.addShutdownHook(),实际调用ApplicationShutdownHooks.add()。后者维护了一个钩子集合IdentityH...原创 2016-02-06 09:39:11 · 308 阅读 · 0 评论 -
Spark Streaming有状态计算的实际问题
1.背景 spark streaming有状态计算(如UV)通常采用DStream.updateStateByKey(实际是PairDStreamFunctions增强到DStream的),具体实现网上讲的很多。spark streaming是持续计算,有状态时不能通过简单的DAG/lineage容错,所以必须设置checkpoint(否则Job启动会报错) checkpoint会持久化当...原创 2016-04-08 18:30:14 · 626 阅读 · 0 评论