MapReduce 环境中应用程序总 CPU 使用率的建模与预测
分布式、并行与集群计算
2012-07-30 v2 性能
摘要
近期,企业开始在公有云和私有云中使用 MapReduce 作为处理大量数据(如垃圾邮件检测和不同数据挖掘任务)的流行计算框架。此类环境中的两个挑战性问题是:(1) 选择合适的 MapReduce 配置参数值(例如 mapper 数量、reducer 数量和 DFS 块大小),以及 (2) 预测用户应从服务提供商租赁的资源量。目前,选择配置参数和估算所需资源的任务完全由用户负责。本文提出了一种在 MapReduce 环境中配置作业总 CPU 使用率(以时钟周期计)的方法。对于 MapReduce 作业,基于该作业在不同配置参数值(例如 mapper 数量和 reducer 数量)下的过往执行情况,构建总 CPU 使用率(以时钟周期计)的 profile。随后,使用多项式回归对这些配置参数与作业总 CPU 使用率(以时钟周期计)之间的关系进行建模。我们还简要研究了输入数据缩放对测得的总 CPU 使用率(以时钟周期计)的影响。由此导出的模型结合缩放结果,可用于为具有不同输入数据规模的相同作业配置总 CPU 使用率(以时钟周期计)。我们使用三个实际应用(WordCount、Exim MainLog 解析和 TeraSort)验证了模型的准确性。结果表明,在我们拥有的 20 节点虚拟 Hadoop 集群中,生成的资源调配选项所预测的总 CPU 使用率(以时钟周期计)与实测值的偏差小于 8%。
引用
@article{arxiv.1203.4054,
title = {On Modelling and Prediction of Total CPU Usage for Applications in MapReduce Environments},
author = {Nikzad Babaii Rizvandi and Javid Taheri and Reza Moraveji and Albert Y. Zomaya},
journal= {arXiv preprint arXiv:1203.4054},
year = {2012}
}
备注
This paper has been accepted to 12th International Conference on Algorithms and Architectures for Parallel Processing (ICA3PP 2012)