摘要

目前基于Spark的应用十分广泛,合理的参数配置会使Spark作业具备较高的执行效率,很多学者对虚拟机集群上的Spark参数调优进行了深入研究。近年来,容器作为一种新兴的云计算基础设施越来越广泛地被应用于服务集群中,因而对基于容器集群的Spark参数调优进行研究也具有重要意义。文章研究了Docker容器集群中Spark的参数配置问题,提出了一种新型的参数调优方法(ContainerOpt),使用机器学习方法学习并预测作业在不同参数组合下的性能,同时引入节点自动伸缩机制,使输入规模较大的作业可以获得更优的性能。文章还提出了由时间和资源共同决定的性能表示模型,代替传统的基于单一执行时间的性能表示模型,从而在作业执行时间和资源占用之间达到较好的平衡。实验结果表明,相较于默认配置,该参数调优方法可提升50%的执行效率。

  • 单位
    同济大学; 嵌入式系统与服务计算教育部重点实验室