[发明专利]一种数据感知的Spark配置参数自动优化方法在审
申请号: | 201611182310.5 | 申请日: | 2016-12-20 |
公开(公告)号: | CN106648654A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 罗妮;喻之斌;贝振东;姜春涛;须成忠;熊文 | 申请(专利权)人: | 深圳先进技术研究院 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06K9/62 |
代理公司: | 深圳市科进知识产权代理事务所(普通合伙)44316 | 代理人: | 赵勍毅 |
地址: | 518055 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 感知 spark 配置 参数 自动 优化 方法 | ||
技术领域
本发明属于电子信息、大数据、云计算等技术领域,特别涉及一种数据感知的Spark配置参数自动优化方法。
背景技术
Spark是UC Berkeley AMP lab(加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce通用并行框架。它发展迅速,仅用了短短五年时间,就成为Apache基金的顶级项目。由于Spark具有将中间结果存储在内存中的特点,Spark运行迭代和交互式程序比传统的磁盘计算框架Hadoop提高了10倍。由于Spark在大数据分析领域具有重要地位,根据Typesafe公司的调查,2015年已有超过500家企业使用Spark。
配置参数优化一直是大数据系统的研究热点之一,由于配置参数众多(多于100个),性能受配置参数影响很大,应用程序具有不同特点。因此使用默认配置远未达到最佳性能。Spark是一种新兴的大数据内存计算框架,由于Spark具有“内存计算”的特性,集群中的所有资源:CPU、网络带宽、内存,都会成为制约Spark程序的瓶颈。而不同的Spark应用程序又具有不同特点,比如Kmeans指令局部性好但数据局部性差,PageRank的shuffle和迭代选择都比KMeans多,WordCount不包含迭代等等。本发明要解决的问题是对特定的集群环境、输入数据集和应用程序,为自动Spark找到最优的配置参数。
基于随机森林的Hadoop参数自动优化方法RFHOC(A Random-Forest Approach to Auto-Tuning Hadoop’s Configuration,简称RFHOC)是一种针对运行在一个给定集群上的应用程序的配置参数优化方法,主要分为三个步骤:
1.性能测试
2.构建性能模型
3.迭代搜索最优配置
当用户第一次运行一个Hadoop应用程序时,RFHOC workload profiler收集运行时Hadoop的配置参数和MapReduce阶段的执行时间。随后,不同阶段的执行时间和对应的配置参数将作为随机森林算法的输入用于构建性能预测模型。RFHOC为map和reduce阶段分别构建回归模型用于预测各个阶段的性能。首先每个阶段要产生一个训练集S,S的每一行为向量vj,vj包含了每次执行时间和对应的Hadoop配置参数值。建好性能模型后,RFHOC运用遗传算法搜索Hadoop最优参数。遗传算法使用随机森林模型预测的性能和对应的配置作为输入做全局搜索。Map和reduce阶段的执行时间相加为程序运行的总时间,也是遗传算法的适应值。
现有技术是手动配置参数和自动配置参数。手动配置参数方法弊端在于太耗时,而且要求用户对Spark的运行机制、参数的意义,作用和取值范围具有较深的了解。用户需要手动增大或减少Spark参数值,然后配置Spark,运行应用程序,找到使执行时间最短的参数值。由于不同集群环境、不同应用程序、和不同输入数据集的最优配置参数不同,手动配置参数方法是一个耗时、枯燥的工作。
现有的自动配置参数方法缺点在于性能模型精度低、建模成本高。有些方法用人工神经网络(Artificial Neural Network)、支持向量机(Support Vector Machine)建模,但是若要达到较高精度(10%以内),需要使用很庞大的训练集。
发明内容
基于上述情况,有必要提供了一种数据感知的Spark配置参数自动优化方法。
一种数据感知的Spark配置参数自动优化方法,包括如下步骤:
收集数据;所述收集数据具体包括:选定Spark应用程序,进一步确定上述应用程序中影响Spark性能的参数,确定上述参数的取值范围;在取值范围内随机生成参数,并生成配置文件配置Spark,配置后运行应用程序并收集数据;所述数据包括但不限于:Spark运行时间、输入数据集、配置参数值;
构建性能模型;将收集的Spark运行时间、输入数据集、配置参数值数据构成横向量,多个向量构成训练集,通过随机森林算法对上述训练集进行建模;
搜索最优配置参数;使用构建好的性能模型,通过遗传算法搜索最优配置参数。
进一步的,在所述搜索最优配置参数步骤之后还包括一验证步骤,所述验证步骤为将搜索到的最优配置参数进行配置Spark,并运行验证执行时间是否为最短。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳先进技术研究院,未经深圳先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611182310.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置