
Hadoop
知乎哲也
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JobQueueJobInProgressListener
JobQueueJobInProgressListener继承自抽象类JobInprogressListener/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distribut原创 2015-01-28 10:36:20 · 478 阅读 · 0 评论 -
map/reduce 过程的认识(两者联系)
原文地址http://linglxia.iteye.com/blog/1396630转载 2014-11-12 20:08:51 · 610 阅读 · 0 评论 -
Reduce任务的Map输出复制器—ReduceCopier
原文地址:http://blog.csdn.net/xhh198781/article/details/7095842转载 2014-11-12 20:04:52 · 572 阅读 · 0 评论 -
由TaskTracker启动到Task执行
1 TaskTracker main函数 public static void main(String argv[]) throws Exception { StringUtils.startupShutdownMessage(TaskTracker.class, argv, LOG); if (argv.length != 0) { System.out.pr原创 2014-01-28 15:51:31 · 1127 阅读 · 0 评论 -
Hadoop作业提交跟踪
1 JobClient.runJob在配置好作业后,我们通过JobClient.runJob(conf)提交作业,从这开始 JobClient jc = new JobClient(job); RunningJob rj = jc.submitJob(job);该方法首先实例化一个JobClient,但后调用submitJob(job)2 submitJob原创 2014-01-02 22:58:55 · 841 阅读 · 0 评论 -
详谈JobInProgress中Map/Reduce任务分配
众所周知,JobTracker节点使用配置的任务调度器TaskScheduler来为某一个具体的TaskTracker节点分配任务,同时这个任务调度器只能决定给该TaskTracker节点分配哪一个Job或者那些Job的任务以及分配多少个任务,但是它却不能决定给当前的TaskTracker节点分配一个Job的具体的哪一个任务。另外,针对一个具体的TaskTracker节点而言,任何一个作业都可以判转载 2014-04-25 15:51:58 · 486 阅读 · 0 评论 -
JobTracker
从main方法开始跟踪1 mainmain的关键代码有两句,创建了实例并调用offerService方法。JobTracker tracker = startTracker(new JobConf()); tracker.offerService();2 startTrackermain方法中的startTracker调用了它的一个重载函数,该函数的主要代码原创 2014-02-02 19:56:40 · 863 阅读 · 0 评论 -
JobInProgress初始化为TaskInProgress
在http://blog.csdn.net/lizhe10177/article/details/17763879这篇文章中曾跟踪作业的提交,最终是通过listener.jobAdded(job)将作业提交到listener的初始化队列里 public void jobAdded(JobInProgress job) { synchronized (jobInitQueue) {原创 2014-02-06 14:22:06 · 1124 阅读 · 0 评论 -
TaskTracker
main函数JobTracker实现了线程接口,main方法创建一个JobTracker实例并且启动该线程JobConf conf=new JobConf(); // enable the server to track time spent waiting on locks ReflectionUtils.setContentionTracing原创 2014-01-29 21:38:27 · 539 阅读 · 0 评论 -
JobQueueTaskScheduler
注:我们以map任务为例,下面默认的任务都为map任务,任务数量也是map任务数量。其中的主要部分在于assignTasks函数。它的主要功能是:先得到TaskTracker的可用槽数,可用总槽数减去已用槽数,然后不断从JobTracker的待调度的作业中选择优先级别最高的作业来调度。当然这仅仅是我们的设想,而在JobQueueTaskScheduler的assignTasks函数实现中,有几原创 2014-01-29 23:57:29 · 659 阅读 · 0 评论 -
Hadoop源码之Configuration类
1 Configuration概况Configuration是Hadoop中与配置文件打交道的类,他也是JobConfiguration的父类。配置文件一般是内容为一系列xml数据格式的键值对。配置文件可以由一个字符串指定,也可以由一个Path实例指定。Hadoop默认情况下会加载两个配置文件,core-default.xml和core-site.xml,用户可以为程序加载额外的配置文件。原创 2014-01-03 17:09:48 · 709 阅读 · 0 评论 -
Hadoop调度源码分析 作业提交到完成初始化部分
2、MapReduce的调度过程MapReduce的调度可以分为两个部分:一是初始化部分,二是任务调度过程。下面结合上图来阐述这两个过程:初始化部分1.Masterreceives submitted tasks, and initializes it as map and reduce tasks;2. After initialization, put the转载 2013-12-31 21:47:53 · 821 阅读 · 0 评论 -
Hadoop调度源码分析 任务调度阶段
上一篇文章介绍了,hadoop的调度主要分为两部分:1)初始化部分2)任务调度部分,本文章主要介绍这部分的内容。任务调度阶段 任务调度阶段这部分主要通过心跳机制实现的。具体分为以下一些步骤:TaskTracker通过RPC调用向JobTracker发送Heartbeat,在发送心跳的时候,一般会传送TaskTracker节点上的资源的信息,比方说CPU usage、Di转载 2013-12-31 21:50:29 · 759 阅读 · 0 评论 -
Hadoop调度类图
篇博文对Hadoop的作业调度器进行了介绍,我们知道,JobTracker和TaskTracker是Hadoop作业调度过程中最核心的两个部分,前者负责map/reduce作业的调度与分派,后者负责map/reduce作业的实际执行,它们之间通过RPC机制进行通讯。下面将对Hadoop 0.20.2版本中作业调度相关源码进行分析,至于JobTracker和TaskTracker中与作业调度无关转载 2013-12-31 21:33:18 · 1184 阅读 · 0 评论