发明名称 Hadoop大数据平台中基于网络I/O代价评估的ReduceTask数据本地性调度方法
摘要 本发明涉及一种Hadoop大数据平台中基于网络I/O代价评估的ReduceTask数据本地性调度方法,属于云计算平台优化技术领域。该方法通过评估以每个所记录的Host节点为ReduceTask执行节点时,其它节点上的Map输出数据拷贝到该Host节点的网络I/O代价,以此作为分配ReduceTask的优先权,来为优先权高的节点分配Reduce任务,从而达到降低Map输出数据拷贝到Reduce节点的网络I/O代价,使得所选Reduce节点具有最佳的数据本地性。该方法为ReduceTask的分配加入了数据本地性,从而使得Shuffle阶段的数据拷贝带来的网络负载降低,节省了Hadoop集群的网络带宽资源。
申请公布号 CN105426255A 申请公布日期 2016.03.23
申请号 CN201510999364.X 申请日期 2015.12.28
申请人 重庆邮电大学 发明人 尚凤军;闫辰云
分类号 G06F9/50(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 北京同恒源知识产权代理有限公司 11275 代理人 廖曦
主权项 一种Hadoop大数据平台中基于网络I/O代价评估的ReduceTask数据本地性调度方法,其特征在于:包括以下步骤:步骤一:为JobTracker初始化的每个用户作业(Job)维护一张映射表,它是关于JobTracker分配给某个Host节点的MapTask与这个Host的映射表,即<HostId,MapTaskId>,每当JobTracker分配一个新的该作业的MapTask,便将新的映射条目更新到这张表;步骤二:为每个JobTracker初始化的用户作业(Job)维护一张映射表,即<网络I/O代价,HostId>,是集群中分配了该作业的MapTask的物理节点与其网络I/O代价的映射,这一部分的Host与步骤一中的Host一样,但是去除了重复的Host节点;除此之外还包含另一些Host节点,它们是与上一部分Host节点同子区域(即有相同的拓扑路径长度)的一个代表节点(储备节点)与其网络I/O代价的映射;步骤三:由步骤一中的映射表<HostId,MapTaskId>,将相同HostId上分配过该项作业的MapTask数合并,得出每个Host对应的MapTask数;由Hadoop集群的网络拓扑树分别得出各记录节点与所要计算的作为ReduceTask执行节点的拓扑距离;由以上数据根据网络I/O代价计算模型计算出以步骤二中的任意一个物理节点为ReduceTask执行节点的网络I/O代价,并将结果更新到步骤二中的映射表中;步骤四:当MapTask完成数达到配置文件mapred‑default.xml中由参数mapred.reduce.slowstart.completed.maps设定的门限值,JobTracker便可以开始分配ReduceTask,分配ReduceTask的策略就是按照步骤三中的当前Hadoop集群中<网络I/O代价,HostId>映射表,节点的网络I/O代价越小则优先级越高的原则为节点分配ReduceTask。
地址 400065 重庆市南岸区黄桷垭崇文路2号