随笔分类 -  Apache Spark

上一页 1 2

Spark源码分析 -- SchedulableBuilder
摘要:SchedulableBuilder就是对Scheduleable tree的封装, 在Pool层面(中间节点), 完成对TaskSet的调度(FIFO, FAIR) 在TaskSetManager 层面(叶子节点), 完成对TaskSet中task的调度(locality)以及track(retry) TaskSetManager 用于封装TaskSet, 主要提供对单个Ta... 阅读全文

posted @ 2014-01-06 15:30 fxjwind 阅读(1435) 评论(0) 推荐(0) 编辑

Spark源码分析 -- TaskScheduler
摘要:Spark在设计上将DAGScheduler和TaskScheduler完全解耦合, 所以在资源管理和task调度上可以有更多的方案 现在支持, LocalSheduler, ClusterScheduler, MesosScheduler, YarnClusterScheduler 先分析ClusterScheduler, 即standalone的Spark集群上, 因为比较单纯不涉及其他的... 阅读全文

posted @ 2014-01-03 18:25 fxjwind 阅读(2033) 评论(0) 推荐(0) 编辑

Spark源码分析 – SchedulerBackend
摘要:SchedulerBackend, 两个任务, 申请资源和task执行和管理 对于SparkDeploySchedulerBackend, 基于actor模式, 主要就是启动和管理两个actor Deploy.Client Actor, 负责资源申请, 在SparkDeploySchedulerBackend初始化的时候就会被创建, 然后Client会去到Master上注册, 最终完成在W... 阅读全文

posted @ 2014-01-03 17:25 fxjwind 阅读(2857) 评论(0) 推荐(0) 编辑

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 阅读(1790) 评论(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 阅读(2654) 评论(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 阅读(2102) 评论(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 阅读(2751) 评论(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 阅读(8263) 评论(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 阅读(4106) 评论(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 阅读(2783) 评论(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 阅读(6124) 评论(0) 推荐(0) 编辑

Spark入门
摘要:http://spark.incubator.apache.org/ http://spark.incubator.apache.org/documentation.html http://ampcamp.berkeley.edu/3/exercises/data-exploration-using-spark.html, 非常好的hand-on exercises 源码分析 http:/... 阅读全文

posted @ 2013-11-14 11:21 fxjwind 阅读(3881) 评论(0) 推荐(0) 编辑

Discretized Streams, 离散化的流数据处理
摘要:Discretized Streams: An Efficient and Fault-Tolerant Model for Stream Processing on Large Clusters 当前的流处理方案, Yahoo!’s S4, Twitter’s Storm, 都是采用传统的"record at-a-time”处理模式, 当收到一条record, 或者更新状态, 或者产生新... 阅读全文

posted @ 2013-09-22 15:42 fxjwind 阅读(1698) 评论(0) 推荐(1) 编辑

Spark - A Fault-Tolerant Abstraction for In-Memory Cluster Computing
摘要:http://spark-project.org/ 项目首页 http://shark.cs.berkeley.edu/ shark项目主页 Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing 为什么需要Spark? 当前已经有比较多的compu... 阅读全文

posted @ 2013-03-30 14:46 fxjwind 阅读(2090) 评论(1) 推荐(0) 编辑

Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center
摘要:http://incubator.apache.org/mesos/research.html, Mesos Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center 为什么需要Mesos? 现在有越来越多的compute framework, 并且每个framework都有自己的适用场景和优缺点... 阅读全文

posted @ 2013-03-27 16:55 fxjwind 阅读(1010) 评论(0) 推荐(0) 编辑

上一页 1 2