首页> 外文期刊>ACM transactions on autonomous and adaptive systems >Improving Data-Analytics Performance Via Autonomic Control of Concurrency and Resource Units
【24h】

Improving Data-Analytics Performance Via Autonomic Control of Concurrency and Resource Units

机译:通过自主控制并发和资源单位来提高数据分析性能

获取原文
获取原文并翻译 | 示例

摘要

Many big-data processing jobs use data-analytics frameworks such as Apache Hadoop (currently also known as YARN). Such frameworks have tunable configuration parameters set by experienced system administrators and/or job developers. However, tuning parameters manually can be hard and time-consuming because it requires domain-specific knowledge and understanding of complex inter-dependencies among parameters. Most of the frameworks seek efficient resource management by assigning resource units to jobs, the maximum number of units allowed in a system being part of the static configuration of the system. This static resource management has limited effectiveness in coping with job diversity and workload dynamics, even in the case of a single job. The work reported in this article seeks to improve performance (e.g., multiple-jobs makespan and job completion time) without modification of either the framework or the applications and avoiding problems of previous self-tuning approaches based on performance models or resource usage. These problems include (1) the need for time-consuming training, typically offline and (2) unsuitability for multi-jobs/tenant environments. This article proposes a hierarchical self-tuning approach using (1) a fuzzy-logic controller to dynamically adjust the maximum number of concurrent jobs and (2) additional controllers (one for each cluster node) to adjust the maximum number of resource units assigned to jobs on each node. The fuzzy-logic controller uses fuzzy rules based on a concave-downward relationship between aggregate CPU usage and the number of concurrent jobs. The other controllers use a heuristic algorithm to adjust the number of resource units on the basis of both CPU and disk IO usage by jobs. To manage the maximum number of available resource units in each node, the controllers also take resource usage by other processes (e.g., system processes) into account. A prototype of our approach was implemented for Apache Hadoop on a cluster running at CloudLab. The proposed approach was demonstrated and evaluated with workloads composed of jobs with similar resource usage patterns as well as other realistic mixed-pattern workloads synthesized by SWIM, a statistical workload injector for MapReduce. The evaluation shows that the proposed approach yields up to a 48% reduction of the jobs makespan that results from using Hadoop-default settings.
机译:许多大数据处理作业使用数据分析框架,例如Apache Hadoop(当前也称为纱线)。此类框架具有由经验丰富的系统管理员和/或作业开发人员设置的可调配置参数。但是,手动调整参数可能是艰难且耗时的,因为它需要参数中的特定于域的知识和对复杂的依赖关系的理解。大多数框架通过将资源单位分配给作业来寻求高效的资源管理,系统中允许的最大单位数是系统静态配置的一部分。即使在单个作业的情况下,这种静态资源管理在应对工作分集和工作量动态的有效性有限。本文中报告的工作旨在提高性能(例如,多职位,工作完成时间),而无需修改框架或应用程序,并避免基于性能模型或资源使用情况的先前自我调整方法的问题。这些问题包括(1)需要耗时的训练,通常离线和(2)不适合多职位/租户环境。本文提出了一种使用(1)模糊逻辑控制器的分层自我调整方法,以动态调整并发作业的最大数量和(2)附加控制器(每个群集节点一个)来调整分配给的最大资源单元数量每个节点上的作业。模糊逻辑控制器使用基于聚合CPU使用率和并发作业数量之间的凹形关系的模糊规则。另一个控制器使用启发式算法根据作业的CPU和磁盘IO使用来调整资源单元数量。要管理每个节点中的可用资源单元的最大数量,控制器还将其他进程(例如,系统进程)承担资源使用情况。我们的方法的原型是为Apache Hadoop上运行在CloudLab运行的群集。通过由具有类似资源使用模式的作业组成的工作负载以及由Swim合成的其他现实混合模式工作负载,统计工作负载注射器的工作负载进行了演示和评估了所提出的方法。评估表明,所提出的方法率达到了使用Hadoop默认设置的作业MapsEsp的48%减少了48%。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号