摘 要: | MapReduce 作业性能与内存配置存在极大的相关性,针对准确预测作业内存困难问题,根据Java 虚拟机( JVM) 的分代内存管理特点,提出了一种分代内存预测方法.首先使用回归模型对年轻代与垃圾回收平均时间的关系进行建模,将寻找合理年轻代内存大小的问题转换为一个受约束的非线性优化问题,并设计搜索算法来求解该优化问题.文中还建立MapReduce 作业的Map 任务和Reduce 任务性能与内存的关系模型,求解最佳性能的内存需求,从而获得Map 任务和Reduce 任务的年长代内存大小; 使用聚类算法预测JVM 晋升对象阈值,优化JVM 配置,减少了JVM 的垃圾回收暂停时间.实验结果表明,文中提出的方法能准确预测作业的内存需求,显著提升作业运行性能.
|