随笔分类 -  Mapreduce

摘要:首先简单介绍PageRank的算法公式:(图片来源:http://en.wikipedia.org/wiki/Page_rank)PR(A)即A的PageRank值;d为阻尼因子,一般设为0.85;L(B)即B网站所有的出链数量(即B网站内的所有链接的数量)。所以公式的意义是:A的PageRank值... 阅读全文
posted @ 2014-03-01 17:28 Vicky01200059 阅读(1240) 评论(0) 推荐(0)
摘要:上一篇文章浅析了FairScheduler的assignTasks()方法,介绍了FairScheduler任务调度的原理。略过了最后一步通过JobScheduler获取Task时调用JobInProgress的五个方法:obtainNewNodeLocalMapTask(),obtainNewNo... 阅读全文
posted @ 2013-12-15 20:49 Vicky01200059 阅读(354) 评论(0) 推荐(0)
摘要:首先需要了解FairScheduler是如何在各个Pool之间分配资源,以及每个Pool如何在Job之间分配资源的。FairScheduler的分配资源发生在update()方法中,而该方法由一个线程UpdateThread每隔updateInterval(由mapred.fairscheduler... 阅读全文
posted @ 2013-12-11 00:33 Vicky01200059 阅读(227) 评论(0) 推荐(0)
摘要:前两篇文章简单介绍了hadoop心跳机制的两个重要角色:JT和TT,虽然不是太详细,但是大纸业说清楚了一些事,在JT篇的最后对于JT返回TT的心跳响应中的一些命令一笔带过,这篇文章将重要介绍这些命令:ReinitTrackerAction,KillTaskAction,KillJobAction,C... 阅读全文
posted @ 2013-12-07 22:17 Vicky01200059 阅读(298) 评论(0) 推荐(0)
摘要:上一篇浅析了Hadoop心跳机制的TT(TaskTracker)方面,这一篇浅析下JT(JobTracker)方面。我们知道心跳是TT通过RPC请求调用JT的heartbeat()方法的,TT在调用JT的heartbeat回收集自身的状态信息封装到TaskTrackerStatus对象中,传递给JT... 阅读全文
posted @ 2013-12-05 00:36 Vicky01200059 阅读(278) 评论(0) 推荐(0)
摘要:在Hadoop中JT(JobTracker)与TT(TaskTracker)之间的通信是通过心跳机制完成的。JT实现InterTrackerProtocol协议,该协议定义了JT与TT之间的通信机制——心跳。心跳机制实际上就是一个RPC请求,JT作为Server,而TT作为Client,TT通过RP... 阅读全文
posted @ 2013-12-03 23:37 Vicky01200059 阅读(379) 评论(0) 推荐(0)
摘要:看到一篇文章,列出了几个使用MapReduce完成的算法(附有实现案例),但是还是想自己实现下,所以自己写了一个,后来看了下案例,不是太一样,但是我实现了,不管效果如何,或者好不好看,总之我实现了。这里就跟大家分享下,同时也希望能得到一个建议。首先介绍下我的实现思想:1.两个矩阵相乘,我们假设为a[... 阅读全文
posted @ 2013-11-28 23:42 Vicky01200059 阅读(295) 评论(0) 推荐(0)
摘要:JobTracker是hadoop的mapreduce框架中最重要的一个类,这个类负责整个集群的作业控制和资源管理。JobTracker的启动是在用户启动hadoop集群时启动的,也就是在hadoop启动完之后使用jps命令看到的jobTracker进程,启动代码是在start-mapred.sh中... 阅读全文
posted @ 2013-11-24 23:52 Vicky01200059 阅读(288) 评论(0) 推荐(0)
摘要:上一篇文章说到了jobTracker中的submitJob()方法,这个方法最终会调用listener.jobAdded(job),将Job注册到TaskScheduler中,由其进行调度。今天接着研究。hadoop中默认的TaskScheduler是JobQueueTaskScheduler,采用... 阅读全文
posted @ 2013-11-21 22:31 Vicky01200059 阅读(198) 评论(0) 推荐(0)
摘要:上一篇文章说到jobClient提交job的过程,这篇文章是接着上一篇文章继续写的。上一篇说到jobSubmitClient.submitJob( jobId, submitJobDir.toString(), jobCopy.getCredentials())这里,这里就是jobTracker进行... 阅读全文
posted @ 2013-11-20 00:29 Vicky01200059 阅读(129) 评论(0) 推荐(0)
摘要:hadoop的job提交过程相对来说还是有点复杂的,所以在学习源码的时候会显得有些乱,时常看了后面忘了前面,所以在看了多遍之后决定用文章的方式记录下来,一边自己下次再看的时候能够清晰些,同时也为初次接触这方面源码的同学提供一些帮助吧。希望自己可以写的足够详细。(本文针对hadoop1.2.1)1.j... 阅读全文
posted @ 2013-11-18 23:59 Vicky01200059 阅读(138) 评论(0) 推荐(0)