CN108491226A - 基于集群缩放的Spark配置参数自动调优方法 - Google Patents
基于集群缩放的Spark配置参数自动调优方法 Download PDFInfo
- Publication number
- CN108491226A CN108491226A CN201810110273.XA CN201810110273A CN108491226A CN 108491226 A CN108491226 A CN 108491226A CN 201810110273 A CN201810110273 A CN 201810110273A CN 108491226 A CN108491226 A CN 108491226A
- Authority
- CN
- China
- Prior art keywords
- configuration
- distributed memory
- computational frame
- parameter
- spark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Supply And Distribution Of Alternating Current (AREA)
Abstract
本发明公开的一种基于集群缩放的Spark配置参数自动调优方法,其步骤为:(1)搭建集群;(2)选择配置参数集合;(3)确定配置参数取值类型和范围;(4)缩放集群;(5)训练随机森林模型;(6)筛选最佳配置;(7)验证配置效果。本发明可以应用于海量数据处理技术领域中,通过缩放分布式内存计算框架Spark内存配置参数取值范围和待处理数据量,缩短评价每个配置的时间,通过随机森林模型建立配置与分布式内存计算框架Spark集群性能影响力之间的关系,搜索出使多台硬件配置相同计算机组成的分布式内存计算框架Spark集群性能最佳的配置。
Description
技术领域
本发明属于计算机技术领域,更进一步涉及海量数据处理技术领域中的一种基于集群缩放的Spark配置参数自动调优方法。本发明可通过缩放分布式内存计算框架Spark集群和训练随机森林模型,得到优于默认配置下分布式内存计算框架Spark集群性能的配置。
背景技术
分布式内存计算框架Spark是基于内存计算的大数据并行计算框架。分布式内存计算框架Spark基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将分布式内存计算框架Spark部署在大量的廉价硬件之上,形成集群。目前,分布式内存计算框架Spark已经发展成为包含众多子项目的大数据计算平台,分布式内存计算框架Spark已经被很多巨头使用,包括Amazon、eBay以及Yahoo!。很多组织都在拥有成千上万节点的集群上运行分布式内存计算框架Spark。配置参数优化一直是分布式内存计算框架Spark的研究热点之一,由于配置参数众多(多于100个),性能受配置参数影响很大,使用默认配置远没有达到最佳性能。因此,针对分布式内存计算框架Spark的配置参数自动优化是一个亟待解决的问题。
深圳先进技术研究院所在其申请的专利文献“一种数据感知的Spark配置参数自动优化方法”(申请号:201611182310.5申请日期:2016.12.20公开号:CN106648654A)中公开了一种数据感知的Spark配置参数自动优化方法。该方法通过选定Spark应用程序,进一步确定上述应用程序中影响Spark性能的参数,确定上述参数的取值范围;在取值范围内随机生成参数,并生成配置文件配置Spark,配置后运行应用程序并收集数据;将收集的Spark运行时间、输入数据集、配置参数值数据构成横向量,多个向量构成训练集,通过随机森林算法对上述训练集进行建模;使用构建好的性能模型,通过遗传算法搜索最优配置参数。该方法存在的不足之处是,需要在实际环境上评价每个配置对分布式内存计算框架Spark集群性能影响力,作为随机森林模型的训练集,浪费大量时间成本。
中国科学院大学所在其申请的专利文献“一种Spark平台性能自动优化方法”(申请号:201610068611.9申请日期:2016.02.01公开号:CN105868019A)中公开了一种Spark平台性能自动优化方法,该方法通过Spark平台的执行机制创建一Spark应用性能模型,针对一设定的Spark应用,选取该Spark应用的部分数据负载在该Spark平台上运行,采集Spark应用运行时的性能数据;将采集的性能数据输入Spark应用性能模型,确定运行该Spark应用时Spark应用性能模型中各参数的取值;计算Spark平台在不同配置参数组合时的性能(应用总执行时间),得到Spark平台性能最优时的配置参数组合。该方法存在的不足之处是,分布式内存计算框架Spark应用性能模型的创建需要理解分布式内存计算框架Spark的执行机制,模型创建过程复杂,难度高。
发明内容
本发明的目的是针对现有技术分布式内存计算框架Spark配置参数自动优化方法时间成本高和模型创建过程复杂的缺点,提出一种基于集群缩放的Spark配置参数自动调优方法。
实现本发明目的的思路是,按集群缩放比例缩放分布式内存计算框架Spark内存配置参数取值范围和输入数据量,缩短评价每个配置对分布式内存计算框架Spark集群性能影响力的时间,可以花费更少的时间获得充足的训练集,训练出更精确的随机森林模型。使用随机森林模型和筛选最佳配置方法,搜索出使多台硬件配置相同计算机组成的分布式内存计算框架Spark集群性能最佳的配置。
本发明的具体步骤包括如下:
(1)搭建集群:
搭建由多台装有分布式内存计算框架Spark的硬件配置相同的计算机组成的集群;
(2)选择配置参数集合:
从分布式内存计算框架Spark集群的所有待修改的配置参数中,选择优化标准中推荐修改的配置参数,组成待优化的配置参数集合;
(3)确定配置参数取值类型和范围:
根据参数说明标准,设置分布式内存计算框架Spark集群中待优化的配置参数集合中每个参数的取值类型和范围,从每个参数的取值范围中提取默认取值,将所有默认取值组成默认配置;
(4)缩放集群:
利用分布式内存计算框架Spark集群缩放策略,缩放待优化的配置参数集合中的内存配置参数的取值范围和待处理数据;
(5)训练随机森林模型:
(5a)记录搜索过程的起始时刻;
(5b)将待优化的配置参数集合组成多维空间作为搜索空间,利用均匀采样策略,对搜索空间进行采样,得到在搜索空间中均匀分布的配置参数集合,作为初始搜索配置参数集合;
(5c)利用配置评价策略,评价初始搜索配置参数集合中的所有配置,得到按分布式内存计算框架Spark集群性能影响力从大到小排序的训练集;
(5d)从训练集中取得前个配置,形成迭代搜索配置参数集合,m表示用户指定的每次迭代搜索过程中搜索的配置总数;
(5e)将训练集输入到随机森林模型中训练模型;
(6)筛选最佳配置:
(6a)利用均匀采样策略,生成配置参数集合,从该参数集合中随机取出个配置,利用配置评价策略评价每个配置,如果该配置对分布式内存计算框架Spark集群性能影响力大于训练集中的第一个配置,创建一个有序配置参数集合,将该配置放入按分布式内存计算框架Spark集群性能影响力降序排序的有序配置参数集合中,将每个配置评价结果加入到训练集中;
(6b)对迭代搜索配置参数集合中的每个实际配置,按照范围逼近策略,缩减搜索空间,利用均匀采样策略,生成配置参数集合;将配置参数集合中的每个配置输入到随机森林模型中,预测配置对分布式内存计算框架Spark集群的性能影响力,获得预测结果中性能影响力最大的预测配置;
(6c)利用配置评价策略,获得预测配置的对分布式内存计算框架Spark集群的性能影响力,将预测配置与该配置对分布式内存计算框架Spark集群的性能影响力组成序列,加入到训练集,按照配置替换策略中的两种情形替换实际配置;如果实际配置未被替换,则下次搜索不对该实际配置采用范围逼近策略;
(6d)用完成配置替换时的时间减去搜索过程起始时刻,得到搜索过程的时间;
(6e)判断搜索过程的时间是否小于用户指定的搜索时间,若是,则执行步骤(6a),否则,执行步骤(6f);
(6f)提取训练集中对分布式内存计算框架Spark集群性能影响力最大的配置作为最佳配置;
(7)验证配置效果:
(7a)利用分布式内存计算框架Spark集群还原策略,还原缩减后的内存配置的取值和待处理数据,得到待验证配置和实际待处理数据;
(7b)利用配置评价策略,分别评价待验证配置和默认配置对分布式内存计算框架Spark集群的性能影响力,将大于默认配置对分布式内存计算框架Spark集群的性能影响力的待验证配置,作为自动调优的分布式内存计算框架Spark的配置参数。
本发明与现有技术相比有以下优点:
第一,由于本发明利用分布式内存计算框架Spark集群缩放策略,缩放待优化的配置参数集合中的内存配置参数的取值范围和待处理数据,缩短了评价每个配置对分布式内存计算框架Spark集群性能影响力的时间,进而克服了现有技术需要在实际环境上评价每个配置对分布式内存计算框架Spark集群性能影响力,作为随机森林模型的训练集,浪费大量时间成本的问题,使得本发明减少了获取模型训练集的时间成本。
第二,本发明通过将训练集输入到随机森林模型中训练模型中,由随机森林模型直接模拟框架Spark的执行机制,克服了现有技术分布式内存计算框架Spark应用性能模型的创建需要理解分布式内存计算框架Spark的执行机制,模型创建过程复杂,难度高的问题,使得本发明降低了用户对分布式内存计算框架Spark集群进行优化的门槛。
附图说明
图1为本发明的流程图;
图2为本发明的仿真实验图。
具体实施方式
下面结合附图对本发明做进一步描述。
参照附图1,对本发明的具体步骤做进一步描述。
步骤1,搭建集群。
搭建由多台装有分布式内存计算框架Spark的硬件配置相同的计算机组成的集群。
步骤2,选择配置参数集合。
从分布式内存计算框架Spark集群的所有待修改的配置参数中,选择优化标准中推荐修改的配置参数,组成待优化的配置参数集合。
分布式内存计算框架Spark官方文档中的优化页面中,优化标准详细说明了应该被进行优化的配置参数。
步骤3,确定配置参数取值类型和范围。
根据参数说明标准,设置分布式内存计算框架Spark集群中待优化的配置参数集合中每个参数的取值类型和范围,从每个参数的取值范围中提取默认取值,将所有默认取值组成默认配置。
分布式内存计算框架Spark官方文档中的配置页面中,参数说明标准详细说明了每个配置参数集合的作用,默认值,和取值范围。
步骤4,缩放集群。
利用分布式内存计算框架Spark集群缩放策略,缩放待优化的配置参数集合中的内存配置参数的取值范围和待处理数据。
分布式内存计算框架Spark集群缩放策略的步骤如下:
第1步,按照下式,计算分布式内存计算框架Spark集群缩放比例:
其中,R表示分布式内存计算框架Spark集群缩放比例,表示向下取整操作,log2表示以2为底的对数操作,M表示每台计算机的内存大小,单位为兆。
第2步,按照下式,计算缩放后的内存配置参数的取值范围:
其中,m表示缩放后的内存配置参数,∈表示属于符号。
第3步,按照下式,计算缩放后的待处理数据:
其中,d表示缩放后的待处理数据,D表示缩放前的待处理数据。
步骤5,训练随机森林模型。
记录搜索过程的起始时刻。
将待优化的配置参数集合组成多维空间作为搜索空间,利用均匀采样策略,对搜索空间进行采样,得到在搜索空间中均匀分布的配置参数集合,作为初始搜索配置参数集合。
均匀采样策略的步骤如下:
第1步,将搜索空间中的每个维度按照k等分,得到k个相同大小的区间,其中,k为用户指定的初始搜索中待搜索的配置参数集合的总数。
第2步,在每个区间内随机选取一个浮点数。
第3步,将所有区间内选取的浮点数组成一个k维序列,随机打乱k维序列中浮点数的顺序,得到乱序的k维序列。
第4步,将所有维度中乱序的k维序列中每个相同位置的浮点数组成一个序列,每个序列作为一个配置,得到k个配置参数集合。
利用配置评价策略,评价初始搜索配置参数集合中的所有配置,得到按分布式内存计算框架Spark集群性能影响力从大到小排序的训练集。
配置评价策略是指,以待评价配置,运行分布式内存计算框架Spark集群,使用用户指定的分析方法分析待处理数据,记录分析数据所需时间,将该时间的倒数作为分布式内存计算框架Spark集群性能影响力,将配置与该配置对分布式内存计算框架Spark集群性能影响力组成一个序列,其中,所述用户指定的分析方法是指,用户从统计分析,机器学习,网页检索领域中所选的任意一种数据处理方法。
从训练集中取得前个配置,形成迭代搜索配置参数集合,m表示用户指定的每次迭代搜索过程中搜索的配置总数。
将训练集输入到随机森林模型中训练模型。
步骤6,筛选最佳配置。
利用均匀采样策略,生成配置参数集合,从该参数集合中随机取出个配置,利用配置评价策略评价每个配置,如果该配置对分布式内存计算框架Spark集群性能影响力大于训练集中的第一个配置,创建一个有序配置参数集合,将该配置放入按分布式内存计算框架Spark集群性能影响力降序排序的有序配置参数集合中,将每个配置评价结果加入到训练集中。
均匀采样策略的步骤如下:
第1步,将搜索空间中的每个维度按照k等分,得到k个相同大小的区间,其中,k为用户指定的初始搜索中待搜索的配置参数集合的总数。
第2步,在每个区间内随机选取一个浮点数。
第3步,将所有区间内选取的浮点数组成一个k维序列,随机打乱k维序列中浮点数的顺序,得到乱序的k维序列。
第4步,将所有维度中乱序的k维序列中每个相同位置的浮点数组成一个序列,每个序列作为一个配置,得到k个配置参数集合。
配置评价策略是指,以待评价配置,运行分布式内存计算框架Spark集群,使用用户指定的分析方法分析待处理数据,记录分析数据所需时间,将该时间的倒数作为分布式内存计算框架Spark集群性能影响力,将配置与该配置对分布式内存计算框架Spark集群性能影响力组成一个序列,其中,所述用户指定的分析方法是指,用户从统计分析,机器学习,网页检索领域中所选的任意一种数据处理方法。
对迭代搜索配置参数集合中的每个实际配置,按照范围逼近策略,缩减搜索空间,利用均匀采样策略,生成配置参数集合;将配置参数集合中的每个配置输入到随机森林模型中,预测配置对分布式内存计算框架Spark集群的性能影响力,获得预测结果中性能影响力最大的预测配置。
均匀采样策略的步骤如下:
第1步,将搜索空间中的每个维度按照k等分,得到k个相同大小的区间,其中,k为用户指定的初始搜索中待搜索的配置参数集合的总数。
第2步,在每个区间内随机选取一个浮点数。
第3步,将所有区间内选取的浮点数组成一个k维序列,随机打乱k维序列中浮点数的顺序,得到乱序的k维序列。
第4步,将所有维度中乱序的k维序列中每个相同位置的浮点数组成一个序列,每个序列作为一个配置,得到k个配置参数集合。
范围逼近策略的步骤如下:
第1步,在搜索空间训练集中的所有配置中每个维度上,从大于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为上边界,从小于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为下边界。
第2步,以每个维度的上下边界作为该维度的取值范围,将所有维度的取值范围组成缩减后的搜索空间。
利用配置评价策略,获得预测配置的对分布式内存计算框架Spark集群的性能影响力,将预测配置与该配置对分布式内存计算框架Spark集群的性能影响力组成序列,加入到训练集,按照配置替换策略中的两种情形替换实际配置;如果实际配置未被替换,则下次搜索不对该实际配置采用范围逼近策略。
配置评价策略是指,以待评价配置,运行分布式内存计算框架Spark集群,使用用户指定的分析方法分析待处理数据,记录分析数据所需时间,将该时间的倒数作为分布式内存计算框架Spark集群性能影响力,将配置与该配置对分布式内存计算框架Spark集群性能影响力组成一个序列,其中,所述用户指定的分析方法是指,用户从统计分析,机器学习,网页检索领域中所选的任意一种数据处理方法。
配置替换策略中的两种情形替换实际配置是指:
A.对于预测配置性能影响力大于实际配置的情形,用预测配置替换实际配置。
B.对于有序配置参数集合不为空的情形,从有序配置参数集合中提取第一个配置替换实际配置。
范围逼近策略的步骤如下:
第1步,在搜索空间训练集中的所有配置中每个维度上,从大于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为上边界,从小于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为下边界。
第2步,以每个维度的上下边界作为该维度的取值范围,将所有维度的取值范围组成缩减后的搜索空间。
用完成配置替换时的时间减去搜索过程起始时刻,得到搜索过程的时间。
判断搜索过程的时间是否小于用户指定的搜索时间,若是,则重新执行步骤6,否则,提取训练集中对分布式内存计算框架Spark集群性能影响力最大的配置作为最佳配置。
步骤7,验证配置效果。
利用分布式内存计算框架Spark集群还原策略,还原缩减后的内存配置的取值和待处理数据,得到待验证配置和实际待处理数据。
分布式内存计算框架Spark集群还原策略的步骤如下:
第1步,按照下式,计算还原后的内存配置:
C=(m-300)×R+300
其中,C表示还原后的内存配置。
第2步,按照下式,计算还原后的待处理数据:
D=d×R
其中,D表示缩放前的待处理数据。
利用配置评价策略,分别评价待验证配置和默认配置对分布式内存计算框架Spark集群的性能影响力,将大于默认配置对分布式内存计算框架Spark集群的性能影响力的待验证配置,作为自动调优的分布式内存计算框架Spark的配置参数。
下面结合仿真实验对本发明的效果作进一步验证说明。
1.仿真条件:
本发明的仿真实验环境是,选择阿里云上6台硬件配置完全一样装有分布式内存计算框架Spark的计算机,搭建分布式内存计算框架Spark集群。仿真实验中每台计算机的规格参数如表1所示。
表1计算机参数规格一览表
操作*** | CentOS 6.8 |
处理器核数 | 4 |
内存 | 32GB |
硬盘 | 250GB |
2.仿真内容:
以三次不同的用户输入,使用基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法进行仿真实验,验证在搜索出的配置下分布式内存计算框架Spark集群性能的表现优于默认配置,每次仿真实验序号,每次用户指定的待处理数据,分析方法,搜索时间,初始搜索中待搜索的配置参数集合的总数k和每次迭代搜索过程中搜索的配置总数m如表2所示。
表2仿真参数一览表
序号 | 待处理数据 | 分析方法 | 搜索时间 | k | m |
1 | 506.9M | PageRank(网页检索) | 485分钟 | 317 | 20 |
2 | 7.5G | LogisticRegression(机器学习) | 360分钟 | 163 | 20 |
3 | 76.5G | WordCount(统计分析) | 320分钟 | 211 | 20 |
3.仿真结果分析:
参照附图2,对本发明的仿真结果做进一步描述。图2中的横坐标代表的每次用户输入的序号,纵坐标表示分布式内存计算框架Spark集群分析待处理数据的时间,单位为秒。图2中的斜线柱形代表默认配置,实体柱形代表优化配置。图2记录了三次用户输入中,分布式内存计算框架Spark集群在优化配置与默认配置下,使用用户指定的分析方法完成分析待处理数据的时间。图2中,相同序号下的实体柱形都低于斜线柱形,可以看出,在三次用户输入得到的优化配置下,分布式内存计算框架Spark集群分析待处理数据的时间都小于默认配置,表明在优化配置下,分布式内存计算框架Spark集群性能优于默认配置,验证了基于集群缩放的Spark配置参数自动调优方法的有效性。
综上所述,本发明公开的一种基于集群缩放的Spark配置参数自动调优方法,解决了现有技术分布式计算框架Spark配置参数自动优化方法时间成本高和模型创建过程复杂的问题。具体步骤包括:(1)搭建集群;(2)选择配置参数集合;(3)确定配置参数取值类型和范围;(4)缩放集群;(5)训练随机森林模型;(6)筛选最佳配置;(7)验证配置效果。本发明的缩放分布式内存计算框架Spark集群过程,训练随机森林模型和筛选最佳配置为本实验的创新点,通过缩放分布式内存计算框架Spark集群,减少了获取训练集的时间成本;通过训练随机森林模型和筛选最佳配置集合,解决了模型创建过程复杂的问题,得到了优于默认配置下分布式内存计算框架Spark集群性能的优化配置。本发明可以应用于海量数据处理技术领域中,通过按集群缩放比例缩放分布式内存计算框架Spark内存配置参数取值范围和输入数据量,搜索出使多台硬件配置相同计算机组成的分布式内存计算框架Spark集群性能最佳的配置参数。
Claims (7)
1.一种基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于,按集群缩放比例缩放分布式内存计算框架Spark内存配置参数取值范围和输入数据量,搜索出使多台硬件配置相同计算机组成的分布式内存计算框架Spark集群性能最佳的配置,具体步骤包括如下:
(1)搭建集群:
搭建由多台装有分布式内存计算框架Spark的硬件配置相同的计算机组成的集群;
(2)选择配置参数集合:
从分布式内存计算框架Spark集群的所有待修改的配置参数中,选择优化标准中推荐修改的配置参数,组成待优化的配置参数集合;
(3)确定配置参数取值类型和范围:
根据参数说明标准,设置分布式内存计算框架Spark集群中待优化的配置参数集合中每个参数的取值类型和范围,从每个参数的取值范围中提取默认取值,将所有默认取值组成默认配置;
(4)缩放集群:
利用分布式内存计算框架Spark集群缩放策略,缩放待优化的配置参数集合中的内存配置参数的取值范围和待处理数据;
(5)训练随机森林模型:
(5a)记录搜索过程的起始时刻;
(5b)将待优化的配置参数集合组成多维空间作为搜索空间,利用均匀采样策略,对搜索空间进行采样,得到在搜索空间中均匀分布的配置参数集合,作为初始搜索配置参数集合;
(5c)利用配置评价策略,评价初始搜索配置参数集合中的所有配置,得到按分布式内存计算框架Spark集群性能影响力从大到小排序的训练集;
(5d)从训练集中取得前个配置,形成迭代搜索配置参数集合,m表示用户指定的每次迭代搜索过程中搜索的配置总数;
(5e)将训练集输入到随机森林模型中训练模型;
(6)筛选最佳配置:
(6a)利用均匀采样策略,生成配置参数集合,从该参数集合中随机取出个配置,利用配置评价策略评价每个配置,如果该配置对分布式内存计算框架Spark集群性能影响力大于训练集中的第一个配置,创建一个有序配置参数集合,将该配置放入按分布式内存计算框架Spark集群性能影响力降序排序的有序配置参数集合中,将每个配置评价结果加入到训练集中;
(6b)对迭代搜索配置参数集合中的每个实际配置,按照范围逼近策略,缩减搜索空间,利用均匀采样策略,生成配置参数集合;将配置参数集合中的每个配置输入到随机森林模型中,预测配置对分布式内存计算框架Spark集群的性能影响力,获得预测结果中性能影响力最大的预测配置;
(6c)利用配置评价策略,获得预测配置的对分布式内存计算框架Spark集群的性能影响力,将预测配置与该配置对分布式内存计算框架Spark集群的性能影响力组成序列,加入到训练集,按照配置替换策略中的两种情形替换实际配置;如果实际配置未被替换,则下次搜索不对该实际配置采用范围逼近策略;
(6d)用完成配置替换时的时间减去搜索过程起始时刻,得到搜索过程的时间;
(6e)判断搜索过程的时间是否小于用户指定的搜索时间,若是,则执行步骤(6a),否则,执行步骤(6f);
(6f)提取训练集中对分布式内存计算框架Spark集群性能影响力最大的配置作为最佳配置;
(7)验证配置效果:
(7a)利用分布式内存计算框架Spark集群还原策略,还原缩减后的内存配置的取值和待处理数据,得到待验证配置和实际待处理数据;
(7b)利用配置评价策略,分别评价待验证配置和默认配置对分布式内存计算框架Spark集群的性能影响力,将大于默认配置对分布式内存计算框架Spark集群的性能影响力的待验证配置,作为自动调优的分布式内存计算框架Spark的配置参数。
2.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(4)中所述的分布式内存计算框架Spark集群缩放策略的步骤如下:
第一步,按照下式,计算分布式内存计算框架Spark集群缩放比例:
其中,R表示分布式内存计算框架Spark集群缩放比例,表示向下取整操作,log2表示以2为底的对数操作,M表示每台计算机的内存大小,单位为兆;
第二步,按照下式,计算缩放后的内存配置参数的取值范围:
其中,m表示缩放后的内存配置参数,∈表示属于符号;
第三步,按照下式,计算缩放后的待处理数据:
其中,d表示缩放后的待处理数据,D表示缩放前的待处理数据。
3.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(5b)、步骤(6a)、步骤(6b)中所述的均匀采样策略的步骤如下:
第一步,将搜索空间中的每个维度按照k等分,得到k个相同大小的区间,其中,k为用户指定的初始搜索中待搜索的配置参数集合的总数;
第二步,在每个区间内随机选取一个浮点数;
第三步,将所有区间内选取的浮点数组成一个k维序列,随机打乱k维序列中浮点数的顺序,得到乱序的k维序列;
第四步,将所有维度中乱序的k维序列中每个相同位置的浮点数组成一个序列,每个序列作为一个配置,得到k个配置参数集合。
4.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(5c)、步骤(6a)、步骤(6c)中所述的配置评价策略是指,以待评价配置,运行分布式内存计算框架Spark集群,使用用户指定的分析方法分析待处理数据,记录分析数据所需时间,将该时间的倒数作为分布式内存计算框架Spark集群性能影响力,将配置与该配置对分布式内存计算框架Spark集群性能影响力组成一个序列,其中,所述用户指定的分析方法是指,用户从统计分析,机器学习,网页检索领域中所选的任意一种数据处理方法。
5.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(6b)、步骤(6c)中所述范围逼近策略的步骤如下:
第一步,在搜索空间训练集中的所有配置中每个维度上,从大于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为上边界,从小于待处理配置取值的其它配置中,提取与待处理配置取值距离最短的其它配置取值作为下边界;
第二步,以每个维度的上下边界作为该维度的取值范围,将所有维度的取值范围组成缩减后的搜索空间。
6.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(6c)中所述按照配置替换策略中的两种情形替换实际配置是指:
A.对于预测配置性能影响力大于实际配置的情形,用预测配置替换实际配置;
B.对于有序配置参数集合不为空的情形,从有序配置参数集合中提取第一个配置替换实际配置。
7.根据权利要求1所述的基于集群缩放的分布式内存计算框架Spark配置参数自动调优方法,其特征在于:步骤(7a)中所述的分布式内存计算框架Spark集群还原策略的步骤如下:
第一步,按照下式,计算还原后的内存配置:
C=(m-300)×R+300
其中,C表示还原后的内存配置;
第二步,按照下式,计算还原后的待处理数据:
D=d×R
其中,D表示缩放前的待处理数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810110273.XA CN108491226B (zh) | 2018-02-05 | 2018-02-05 | 基于集群缩放的Spark配置参数自动调优方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810110273.XA CN108491226B (zh) | 2018-02-05 | 2018-02-05 | 基于集群缩放的Spark配置参数自动调优方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108491226A true CN108491226A (zh) | 2018-09-04 |
CN108491226B CN108491226B (zh) | 2021-03-23 |
Family
ID=63344582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810110273.XA Active CN108491226B (zh) | 2018-02-05 | 2018-02-05 | 基于集群缩放的Spark配置参数自动调优方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108491226B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388565A (zh) * | 2018-09-27 | 2019-02-26 | 西安电子科技大学 | 基于生成式对抗网络的软件***性能优化方法 |
CN110134665A (zh) * | 2019-04-17 | 2019-08-16 | 北京百度网讯科技有限公司 | 基于流量镜像的数据库自学习优化方法及装置 |
CN111259933A (zh) * | 2020-01-09 | 2020-06-09 | 中国科学院计算技术研究所 | 基于分布式并行决策树的高维特征数据分类方法及*** |
CN111629048A (zh) * | 2020-05-22 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | spark集群最优配置参数确定方法、装置及设备 |
CN112418311A (zh) * | 2020-11-21 | 2021-02-26 | 安徽理工大学 | 一种通信网络风险评估的分布式随机森林方法 |
CN113032367A (zh) * | 2021-03-24 | 2021-06-25 | 安徽大学 | 面向动态负载场景的大数据***跨层配置参数协同调优方法和*** |
WO2022111125A1 (zh) * | 2020-11-27 | 2022-06-02 | 深圳先进技术研究院 | 一种基于随机森林的图数据处理框架自动调优方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103327118A (zh) * | 2013-07-09 | 2013-09-25 | 南京大学 | 一种针对云计算中web应用的智能虚拟机集群缩放方法及*** |
CN105868019A (zh) * | 2016-02-01 | 2016-08-17 | 中国科学院大学 | 一种Spark平台性能自动优化方法 |
CN106648654A (zh) * | 2016-12-20 | 2017-05-10 | 深圳先进技术研究院 | 一种数据感知的Spark配置参数自动优化方法 |
CN106844673A (zh) * | 2017-01-24 | 2017-06-13 | 山东亿海兰特通信科技有限公司 | 一种基于公安数据获取多维人员关系亲密度的方法及*** |
US20170168814A1 (en) * | 2015-12-15 | 2017-06-15 | Impetus Technologies, Inc. | System and Method for Registration of a Custom Component in a Distributed Computing Pipeline |
CN107360026A (zh) * | 2017-07-07 | 2017-11-17 | 西安电子科技大学 | 分布式消息中间件性能预测与建模方法 |
US20170364795A1 (en) * | 2016-06-15 | 2017-12-21 | Akw Analytics Inc. | Petroleum analytics learning machine system with machine learning analytics applications for upstream and midstream oil and gas industry |
-
2018
- 2018-02-05 CN CN201810110273.XA patent/CN108491226B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103327118A (zh) * | 2013-07-09 | 2013-09-25 | 南京大学 | 一种针对云计算中web应用的智能虚拟机集群缩放方法及*** |
US20170168814A1 (en) * | 2015-12-15 | 2017-06-15 | Impetus Technologies, Inc. | System and Method for Registration of a Custom Component in a Distributed Computing Pipeline |
CN105868019A (zh) * | 2016-02-01 | 2016-08-17 | 中国科学院大学 | 一种Spark平台性能自动优化方法 |
US20170364795A1 (en) * | 2016-06-15 | 2017-12-21 | Akw Analytics Inc. | Petroleum analytics learning machine system with machine learning analytics applications for upstream and midstream oil and gas industry |
CN106648654A (zh) * | 2016-12-20 | 2017-05-10 | 深圳先进技术研究院 | 一种数据感知的Spark配置参数自动优化方法 |
CN106844673A (zh) * | 2017-01-24 | 2017-06-13 | 山东亿海兰特通信科技有限公司 | 一种基于公安数据获取多维人员关系亲密度的方法及*** |
CN107360026A (zh) * | 2017-07-07 | 2017-11-17 | 西安电子科技大学 | 分布式消息中间件性能预测与建模方法 |
Non-Patent Citations (4)
Title |
---|
BAO LIANG等: "An Orthogonal Genetic Algorithm for QoS-Aware Service Composition", 《COMPUTER JOURNAL》 * |
HADJ AHMED BOUARARA等: "A Fireworks Algorithm for Modern Web Information Retrieval with Visual Results Mining", 《INTERNATIONAL JOURNAL OF SWARM INTELLIGENCE RESEARCH》 * |
詹剑锋等: "BigDataBench:开源的大数据***评测基准", 《计算机学报》 * |
鲍亮: "基于函数式编程的Web服务组合技术研究", 《中国博士学位论文全文数据库·信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388565A (zh) * | 2018-09-27 | 2019-02-26 | 西安电子科技大学 | 基于生成式对抗网络的软件***性能优化方法 |
CN109388565B (zh) * | 2018-09-27 | 2021-08-06 | 西安电子科技大学 | 基于生成式对抗网络的软件***性能优化方法 |
CN110134665A (zh) * | 2019-04-17 | 2019-08-16 | 北京百度网讯科技有限公司 | 基于流量镜像的数据库自学习优化方法及装置 |
CN110134665B (zh) * | 2019-04-17 | 2021-05-25 | 北京百度网讯科技有限公司 | 基于流量镜像的数据库自学习优化方法及装置 |
CN111259933A (zh) * | 2020-01-09 | 2020-06-09 | 中国科学院计算技术研究所 | 基于分布式并行决策树的高维特征数据分类方法及*** |
CN111259933B (zh) * | 2020-01-09 | 2023-06-13 | 中国科学院计算技术研究所 | 基于分布式并行决策树的高维特征数据分类方法及*** |
CN111629048A (zh) * | 2020-05-22 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | spark集群最优配置参数确定方法、装置及设备 |
CN111629048B (zh) * | 2020-05-22 | 2023-04-07 | 浪潮电子信息产业股份有限公司 | spark集群最优配置参数确定方法、装置及设备 |
CN112418311A (zh) * | 2020-11-21 | 2021-02-26 | 安徽理工大学 | 一种通信网络风险评估的分布式随机森林方法 |
WO2022111125A1 (zh) * | 2020-11-27 | 2022-06-02 | 深圳先进技术研究院 | 一种基于随机森林的图数据处理框架自动调优方法 |
CN113032367A (zh) * | 2021-03-24 | 2021-06-25 | 安徽大学 | 面向动态负载场景的大数据***跨层配置参数协同调优方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN108491226B (zh) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108491226A (zh) | 基于集群缩放的Spark配置参数自动调优方法 | |
CN107341270B (zh) | 面向社交平台的用户情感影响力分析方法 | |
CN102567391B (zh) | 一种分类预测混合模型的建立方法及装置 | |
CN105589806B (zh) | 一种基于SMOTE+Boosting算法的软件缺陷倾向预测方法 | |
CN103778548B (zh) | 商品信息与关键词匹配方法、商品信息投放方法及装置 | |
CN103744928B (zh) | 一种基于历史访问记录的网络视频分类方法 | |
CN102591917B (zh) | 一种数据处理方法、***及相关装置 | |
CN110543616B (zh) | 基于工业大数据的smt锡膏印刷体积预测方法 | |
CN102279887B (zh) | 一种文档分类方法、装置及*** | |
CN105718490A (zh) | 一种用于更新分类模型的方法及装置 | |
CN110502361A (zh) | 面向bug报告的细粒度缺陷定位方法 | |
CN103310003A (zh) | 一种基于点击日志的新广告点击率预测方法及*** | |
CN106803799B (zh) | 一种性能测试方法和装置 | |
CN105871879B (zh) | 网元异常行为自动检测方法及装置 | |
CN104268142B (zh) | 基于可拒绝策略的元搜索结果排序方法 | |
CN107067182A (zh) | 面向多维意象的产品设计方案评估方法 | |
CN103530347A (zh) | 一种基于大数据挖掘的互联网资源质量评估方法及*** | |
CN108537273A (zh) | 一种针对不均衡样本执行自动化机器学习的方法 | |
CN107943792A (zh) | 一种语句分析方法、装置及终端设备、存储介质 | |
CN105069077A (zh) | 搜索方法及装置 | |
CN105893669A (zh) | 一种基于数据挖掘的全局仿真性能预测方法 | |
CN106960248A (zh) | 一种基于数据驱动预测用户问题的方法及装置 | |
CN108733791A (zh) | 网络事件检测方法 | |
CN111476296A (zh) | 样本生成方法、分类模型训练方法、识别方法及对应装置 | |
CN103795592B (zh) | 网络水军的检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230602 Address after: Building 1, Science and Technology Innovation Service Center, No. 856 Zhongshan East Road, High tech Zone, Shijiazhuang City, Hebei Province, 050035 Patentee after: Hegang Digital Technology Co.,Ltd. Address before: 710071 Taibai South Road, Yanta District, Xi'an, Shaanxi Province, No. 2 Patentee before: XIDIAN University |