调节mapper在多核上执行的方法及装置与流程

文档序号:11995526阅读:来源:国知局
调节mapper在多核上执行的方法及装置与流程

技术特征:
1.一种调节mapper在多核上执行的方法,其特征在于,在Hadoop的架构下包括Mapreduce引擎,所述Mapreduce引擎由JobTrackers和TaskTrackers组成,所述TaskTracker用于管理节点上的多个mapper,所述方法包括以下步骤:监控每个mapper的平均处理速度;将所述每个mapper的平均处理速度与全局的mapper的平均处理速度进行比较,以确定速度慢的mapper;确定所述速度慢的mapper所在的机器上是否有空闲资源;以及如果是,则将所述速度慢的mapper的单线程处理拆分成多线程处理,并将所述多线程处理分配到所述多核上执行。2.根据权利要求1所述的方法,其特征在于,进一步包括步骤:将所述多线程合并为单线程。3.根据权利要求1或2所述的方法,其特征在于,所述多线程处理在所述多核上执行时,采用无锁操作。4.根据权利要求1或2所述的方法,其特征在于,监控每个mapper的平均处理速度的步骤包括根据所述每个mapper的输入总量、已经处理的输入量和已经花费的时间计算出所述每个mapper的平均处理速度。5.根据权利要求4所述的方法,其特征在于,通过用所述每个mapper的平均处理速度之和除以mapper的数目得到全局的mapper的平均处理速度。6.根据权利要求4所述的方法,其特征在于,所述每个mapper的输入支持lseek。7.一种调节mapper在多核上执行的装置,其特征在于,在Hadoop的架构下包括Mapreduce引擎,所述Mapreduce引擎由JobTrackers和TaskTrackers组成,所述TaskTracker用于管理节点上的多个mapper,所述装置包括:监控模块,所述监控模块用于监控每个mapper的平均处理速度;比较模块,所述比较模块用于将所述每个mapper的平均处理速度与全局的mapper的平均处理速度进行比较,以确定速度慢的mapper;确定模块,所述确定模块用于确定所述速度慢的mapper所在的机器上是否有空闲资源;以及拆分模块,所述拆分模块用于在有空闲资源的情况下,将所述速度慢的mapper的单线程处理拆分成多线程处理,并将所述多线程处理分配到所述多核上执行。8.根据权利要求7所述的装置,其特征在于,进一步包括:合并模块,所述合并模块用于将所述多线程合并为单线程。9.根据权利要求7或8所述的装置,其特征在于,所述多线程处理在所述多核上执行时,采用无锁操作。10.根据权利要求7或8所述的装置,其特征在于,所述监控模块用于根据每个mapper的输入总量、已经处理的输入量和已经花费的时间计算出所述每个mapper的平均处理速度。11.根据权利要求10所述的装置,其特征在于,通过用所述每个mapper的平均处理速度之和除以mapper的数目得到全局的mapper的平均处理速度。12.根据权利要求10所述的装置,其特征在于,所述每个mapper的输入支持lseek。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1