应用于分布式文件系统的任务调度方法和设备的制造方法_4

文档序号:9810536阅读:来源:国知局

[0079]所述处理器31在根据所述数据块的标识获取所述数据块的待读取副本的存储信息时,具体用于:
[0080]根据所述任务对应的数据块的标识,获取所述数据块的副本信息;
[0081]根据所述数据块的副本信息,获取所述数据块的各个副本所在的数据节点的资源使用率,确定资源使用率最低的数据节点;
[0082]若所述资源使用率最低的数据节点只有一个,则将所述资源使用率最低的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息;
[0083]若所述资源使用率最低的数据节点为多个,则获取所述各资源使用率最低的数据节点的预取数据块个数,从所述各资源使用率最低的数据节点中选取预取数据块个数最少的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息。
[0084]在将所述数据块的元数据添加到预取数据成功表之后,所述处理器31还用于:将所述数据节点的预取计数值加I。
[0085]所述处理器31在获取待处理的任务对应的数据块的标识之前,还用于:接收客户端提交的Map Reduce作业;将所述Map Reduce作业划分为多个待处理的任务。
[0086]所述处理器31在根据所述数据块的标识获取所述数据块的待读取副本之前,还用于:判断所述预取数据成功表中是否包含所述数据块的元数据;若不包含,则根据所述数据块的标识获取所述数据块的待读取副本。
[0087]本实施例的元数据节点,可以用于执行实施例一提供的技术方案,其实现原理类似,此处不再赘述。
[0088]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0089]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【主权项】
1.一种应用于分布式文件系统的任务调度方法,其特征在于,包括: 元数据节点获取待处理的任务对应的数据块的标识,并根据所述数据块的标识获取所述数据块的待读取副本的存储信息; 所述元数据节点根据所述待读取副本的存储信息,向所述待读取副本所在的数据节点发送预取指令,所述预取指令用于指示所述数据节点从所述数据节点的硬盘驱动器中读取所述数据块,并将所述数据块写入所述数据节点的固态硬盘; 所述元数据节点将所述数据块的元数据添加到预取数据成功表,所述预取数据成功表中的任务优先被所述元数据节点调度,在所述元数据节点调度所述待处理的任务时,所述元数据节点根据所述预取数据成功表中保存的所述数据块的元数据从所述数据节点的固态硬盘中读取所述数据块。2.根据权利要求1所述的方法,其特征在于,所述元数据节点根据所述数据块的标识获取所述数据块的待读取副本的存储信息,包括: 所述元数据节点根据所述任务对应的数据块的标识,获取所述数据块的副本信息; 所述元数据节点根据所述数据块的副本信息,获取所述数据块的各个副本所在的数据节点的资源使用率,确定资源使用率最低的数据节点; 若所述资源使用率最低的数据节点只有一个,则所述元数据节点将所述资源使用率最低的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息; 若所述资源使用率最低的数据节点为多个,则所述元数据节点获取所述各资源使用率最低的数据节点的预取数据块个数,从所述各资源使用率最低的数据节点中选取预取数据块个数最少的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息。3.根据权利要求2所述的方法,其特征在于,所述元数据节点在将所述数据块的元数据添加到预取数据成功表之后,所述方法还包括: 所述元数据节点将所述数据节点的预取计数值加I。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述元数据节点获取待处理的任务对应的数据块的标识之前,所述方法还包括: 所述元数据节点接收客户端提交的Map Reduce作业; 所述元数据节点将所述Map Reduce作业划分为多个待处理的任务。5.根据权利要求1所述的方法,其特征在于,所述元数据节点根据所述数据块的标识获取所述数据块的待读取副本之前,所述方法还包括: 所述元数据节点判断所述预取数据成功表中是否包含所述数据块的元数据; 若不包含,则所述元数据节点根据所述数据块的标识获取所述数据块的待读取副本。6.—种元数据节点,其特征在于,包括: 获取模块,用于获取待处理的任务对应的数据块的标识,并根据所述数据块的标识获取所述数据块的待读取副本的存储信息; 发送模块,用于根据所述待读取副本的存储信息,向所述待读取副本所在的数据节点发送预取指令,所述预取指令用于指示所述数据节点从所述数据节点的硬盘驱动器中读取所述数据块,并将所述数据块写入所述数据节点的固态硬盘; 处理模块,用于将所述数据块的元数据添加到预取数据成功表,所述预取数据成功表中的任务优先被所述元数据节点调度,在所述元数据节点调度所述待处理的任务时,所述处理模块还用于根据所述预取数据成功表中保存的所述数据块的元数据从所述数据节点的固态硬盘中读取所述数据块。7.根据权利要求6所述的元数据节点,其特征在于,所述获取模块具体用于: 根据所述任务对应的数据块的标识,获取所述数据块的副本信息; 根据所述数据块的副本信息,获取所述数据块的各个副本所在的数据节点的资源使用率,确定资源使用率最低的数据节点; 若所述资源使用率最低的数据节点只有一个,则将所述资源使用率最低的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息; 若所述资源使用率最低的数据节点为多个,则获取所述各资源使用率最低的数据节点的预取数据块个数,从所述各资源使用率最低的数据节点中选取预取数据块个数最少的数据节点上的副本作为所述数据块的待读取副本,并获取所述待读取副本的存储信息。8.根据权利要求7所述的元数据节点,其特征在于,所述处理模块还用于: 将所述数据节点的预取计数值加I。9.根据权利要求6-8中任一项所述的元数据节点,其特征在于,所述获取模块还用于: 接收客户端提交的Map Reduce作业; 将所述Map Reduce作业划分为多个待处理的任务。10.根据权利要求6所述的元数据节点,其特征在于,所述获取模块还用于: 判断所述预取数据成功表中是否包含所述数据块的元数据; 若不包含,则根据所述数据块的标识获取所述数据块的待读取副本。
【专利摘要】本发明实施例提供一种应用于分布式文件系统的任务调度方法和设备,包括:元数据节点获取待处理的任务对应的数据块的标识,并根据该数据块的标识获取该数据块的待读取副本的存储信息,然后,向待读取副本所在的数据节点发送预取指令,以将该数据块从该数据节点的HDD中预取到SSD中,在预取成功后,元数据节点将所该数据块的元数据添加到预取数据成功表,后续在调度该任务时,元数据节点根据该数据块的元数据直接从SSD中读取该数据块。本发明中,由于在Map?Reduce中元数据节点预先知道有哪些待处理的任务,以及这些任务对应的数据块的标识,因此,元数据节点能够准确的将将要处理的数据块预先从HDD中读取到SSD中,提高了缓存的命中率。
【IPC分类】G06F17/30
【公开号】CN105574008
【申请号】CN201410535260
【发明人】贾士博, 岳银亮
【申请人】华为技术有限公司, 中国科学院计算技术研究所
【公开日】2016年5月11日
【申请日】2014年10月11日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1