上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 53 下一页

Spark源码分析 – Deploy

摘要: 参考, Spark源码分析之-deploy模块 Client Client在SparkDeploySchedulerBackend被start的时候, 被创建, 代表一个application和spark cluster进行通信 Client的逻辑很简单, 封装ClientActor, 并负责该Actor的start和stop 而ClientActor的关键在于preSta... 阅读全文
posted @ 2014-01-02 17:50 fxjwind 阅读(1794) 评论(0) 推荐(0) 编辑

Spark源码分析 – DAGScheduler

摘要: DAGScheduler的架构其实非常简单, 1. eventQueue, 所有需要DAGScheduler处理的事情都需要往eventQueue中发送event 2. eventLoop Thread, 会不断的从eventQueue中获取event并处理 3. 实现TaskSchedulerListener, 并注册到TaskScheduler中, 这样TaskScheduler可以随时... 阅读全文
posted @ 2013-12-30 15:32 fxjwind 阅读(2662) 评论(4) 推荐(0) 编辑

Spark 源码分析 -- Task

摘要: Task是介于DAGScheduler和TaskScheduler中间的接口 在DAGScheduler, 需要把DAG中的每个stage的每个partitions封装成task 最终把taskset提交给TaskScheduler /** * A task to execute on a worker node. */private[spark] abstract c... 阅读全文
posted @ 2013-12-30 15:30 fxjwind 阅读(2111) 评论(0) 推荐(0) 编辑

Spark 源码分析 -- Stage

摘要: 理解stage, 关键就是理解Narrow Dependency和Wide Dependency, 可能还是觉得比较难理解 关键在于是否需要shuffle, 不需要shuffle是可以随意并发的, 所以stage的边界就是需要shuffle的地方, 如下图很清楚 并且Stage分为两种, shuffle map stage, in which case its tasks' r... 阅读全文
posted @ 2013-12-26 16:37 fxjwind 阅读(2760) 评论(0) 推荐(0) 编辑

Spark源码分析 – SparkContext

摘要: Spark源码分析之-scheduler模块 这位写的非常好, 让我对Spark的源码分析, 变的轻松了许多 这里自己再梳理一遍 先看一个简单的spark操作, val sc = new SparkContext(……)val textFile = sc.textFile("README.md")textFile.filter(line => line.contains(... 阅读全文
posted @ 2013-12-24 18:03 fxjwind 阅读(8265) 评论(2) 推荐(0) 编辑

Spark源码分析 -- PairRDD

摘要: 和一般RDD最大的不同就是有两个泛型参数, [K, V]表示pair的概念 关键的function是, combineByKey, 所有pair相关操作的抽象 combine是这样的操作, Turns an RDD[(K, V)] into a result of type RDD[(K, C)] 其中C有可能只是简单类型, 但经常是seq, 比如(Int, Int) to (Int, Seq[I... 阅读全文
posted @ 2013-12-24 15:21 fxjwind 阅读(4116) 评论(1) 推荐(1) 编辑

Spark源码分析 – Dependency

摘要: Dependency 依赖, 用于表示RDD之间的因果关系, 一个dependency表示一个parent rdd, 所以在RDD中使用Seq[Dependency[_]]来表示所有的依赖关系 Dependency的base class 可见Dependency唯一的成员就是rdd, 即所依赖的rdd, 或parent rdd /** * Base class for... 阅读全文
posted @ 2013-12-24 15:20 fxjwind 阅读(2792) 评论(0) 推荐(0) 编辑

Spark 源码分析 -- RDD

摘要: 关于RDD, 详细可以参考Spark的论文, 下面看下源码 A Resilient Distributed Dataset (RDD), the basic abstraction in Spark. Represents an immutable, partitioned collection of elements that can be operated on in paral... 阅读全文
posted @ 2013-12-24 15:19 fxjwind 阅读(6138) 评论(0) 推荐(0) 编辑

Scala 泛型

摘要: 参考,Programing in Scalascala中的协变和逆变--------------------------------------------------------------------------------------------------------------------... 阅读全文
posted @ 2013-12-18 15:32 fxjwind 阅读(7368) 评论(0) 推荐(0) 编辑

The Log: What every software engineer should know about real-time data's unifying abstraction

摘要: http://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying主要的思想, 将所有的系统都可以看作两部分,真正的数据log系统和各种各样的query engine 所有的一致性由log系统来保证,其他各种query engine不需要考虑一致性,安全性,只需要不停的从log系统来同步数据,如果数据丢失或crash可以从log系统replay来恢复 可以看出kafka系统在linke... 阅读全文
posted @ 2013-12-18 10:41 fxjwind 阅读(1419) 评论(2) 推荐(0) 编辑
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 53 下一页