源码分析
文章平均质量分 76
fannk
这个作者很懒,什么都没留下…
展开
-
Dubbo源代碼分析-configuration
dubbo的官方網站為: http://code.alibabatech.com/wiki/display/dubbo/User+Guide#UserGuide-ServiceProvider 这个章节分析Dubbo的configure模块。 Spring启动的时候,会到spring.handlers文件中查找相应的namespacehandler, 并将其存入到m...原创 2012-11-15 17:36:13 · 170 阅读 · 0 评论 -
flume源码分析-SinkProcessor
flume包括三种sink processor,DefaultSinkProcessor,FailoverSinkProcessor,LoadBalancingSinkProcessor Default sink processor that only accepts a single sink, passing on process results without any additi...原创 2014-07-14 15:28:13 · 434 阅读 · 0 评论 -
flume源码分析-ChannelSelector
flume自带两种channelSelector。一种是MultiplexingChannelSelector,另一种是ReplicatingChannelSelector。 ReplicatingChannelSelector是将event发送到每个channel public class ReplicatingChannelSelector extends AbstractChan...原创 2014-07-14 14:22:47 · 850 阅读 · 0 评论 -
Spark源码分析13-Tuning Spark
We can refer to the link http://spark.incubator.apache.org/docs/latest/tuning.html for detail tuning document. After tuning, spark can process 200M logs every minutes in one single work ...原创 2014-05-15 17:48:37 · 74 阅读 · 0 评论 -
Spark源码分析12-yarn部署
明天写原创 2014-05-13 22:08:06 · 99 阅读 · 0 评论 -
Spark源码分析11-BlockManager
BlockManager主要在deriver和excutor构造。在deriver构造了一个BlockManagerMasterActor对象,主要负责收集block的info。在executor创建了BlockManagerMasterActor的ref,并且将ref封装到BlockManagerMaster中用于与BlockManagerMasterActor的通信。BlockManage...原创 2014-05-13 22:06:59 · 75 阅读 · 0 评论 -
Spark源码分析9-Excutor
Excutor主要分为两部分,一是ExecutorBackend,二是Executor。ExecutorBackend用来接收信息,调用Executor执行task。我们以CoarseGrainedExecutorBackend为例介绍Excutor。 worker会调用java命令启动CoarseGrainedExecutorBackend。在run函数中创建了CoarseGrainedEx...原创 2014-05-11 10:48:33 · 235 阅读 · 0 评论 -
Spark源码分析8-client 如何选择将task提交给那个excutor
spark中很重要的一点就是task具体分配到哪个excutor上执行,如果分配不合理,将会消耗很多额外的资源。例如:executor1用flume receiver接收到数据,并将数据保存到block1上,excutor2用flume receiver接收到数据,并将数据保存到block2上。RDD将有两个patition,将对应产生两个task. task1处理block1,task2处理...原创 2014-05-08 15:33:07 · 164 阅读 · 0 评论 -
Spark源码分析7-Metrics的分析
spark用metrics-core这个jar包来做spark 各个部件metrics的管理 Metrics.properties.template文件是用来配置metrics的,metrics的配置分为两部分,一是source,二是sink。有些类似于flume的source和sink的概念。Source用来收集work,master,deriver,executor等的信息。Source...原创 2014-05-08 11:37:11 · 220 阅读 · 0 评论 -
Spark源码分析6-Worker
Worker 主要负责管理excutor和driver,并向master报告excutor和driver的状态 Worker的启动 类似于master,创建了worker的actor private[spark] object Worker { def main(argStrings: Array[String]) { val args = new WorkerA...原创 2014-05-08 11:31:05 · 78 阅读 · 0 评论 -
Spark源码分析5-Master
本节主要分析Master 的主要功能。 Master主要分为两块. 1. Master leader的选举。2.Master对work,application,deriver的管理 首先看Master是怎么启动的 调用了 actorSystem.actorOf()创建了Master Actor对象 def main(argStrings: Array[String]) { ...原创 2014-05-07 11:15:41 · 103 阅读 · 0 评论 -
Spark源码分析4-RDD computor
Excutor在接收到task后会调用RDD的computor方法来计算最后的结果,下图是每个RDD的computor函数原创 2014-05-06 14:46:35 · 91 阅读 · 0 评论 -
Spark源码分析3-The connect between driver,master and excutor
这一节讲述的是driver,master,excutor 之间交互的流程,从register application到launch task原创 2014-05-06 14:41:37 · 91 阅读 · 0 评论 -
Spark源码分析2-Driver generate jobs and launch task
Driver generate jobs and launch task 1. Driver将按照DStream的compute方法生成RDD的依赖列表 2. 按照RDD的关系生成stage的列表,stage分为两种:finalStage和shuffledStage . 1)每个ShuffledRDD 都会产生一个shuffledStage,shuffledstage用来将shu...原创 2014-05-06 14:34:16 · 107 阅读 · 0 评论 -
Spark源码分析1-部署与整体架构
Spark官网:http://spark.apache.org/docs/latest/ Apache Spark is a fast and general-purpose cluster computing system. It provides high-level APIs in Scala, Java, and Python that make parallel jobs easy...2014-05-06 10:26:35 · 96 阅读 · 0 评论 -
flume源码分析-Sink
Sink 将从channel接收event,然后将event发往目标地址。 /** * * A simple sink which reads events from a channel and writes them to HBase. * This Sink uses an aysnchronous API internally and is likely to * per...原创 2014-07-14 17:01:45 · 272 阅读 · 0 评论