一种基于贝叶斯优化的流数据处理系统配置参数调优方法技术方案

技术编号:37817045 阅读:13 留言:0更新日期:2023-06-09 09:47
本公开涉及一种基于贝叶斯优化的流数据处理系统配置参数调优方法,所述方法包括以下步骤:确定当前流处理系统的要改进的性能指标,根据该性能指标,确定要调优的一组配置参数;生成样本集,该样本集中的每一个样本,由一组配置参数值和其对应的性能指标值组成;对每一个样本,将其中的性能指标值作为输出,该性能指标值对应的那组配置参数值作为输入,使用随机森林算法建立性能模型;将所述性能指标作为贝叶斯优化算法的目标,对所述性能模型的参数进行搜索,将搜索到的一组配置参数值作为最优配置参数值,其对应的性能指标值为当前流数据处理系统的最优性能指标值。本公开方法可以对高维参数进行调优,具有很好的通用性。具有很好的通用性。具有很好的通用性。

【技术实现步骤摘要】
一种基于贝叶斯优化的流数据处理系统配置参数调优方法


[0001]本公开涉及大数据处理领域,具体涉及一种贝叶斯优化的流数据处理系统配置参数调优方法。

技术介绍

[0002]流数据处理系统在现如今的大数据处理领域越来越流行,目前大量的公司使用它来做实时的资源监控以及实时的数据分析。诸如Apache Flink,Apache Storm以及Spark Structured Streaming等流行的流处理框架,已经被广泛应用在许多知名的互联网公司上(Alibaba和Twitter等)。
[0003]流数据处理系统通常提供了许多(比如超过300个)资源配置参数,比如CPU核数,任务使用的内存等等。这些与I/O行为,负载平衡等有关的资源配置参数,我们称之为关键配置参数。这些关键配置参数会严重影响流数据处理系统的性能(比如吞吐以及延迟)。合理调整这些关键配置参数,会显著提高流数据处理系统的性能;反之,不合理的配置参数设置会导致集群资源的浪费,系统性能的下降以及任务运行失败等恶果。
[0004]虽然对于大多数流数据处理系统(比如Flink等),官方推荐了一套默认的资源配置参数。然而在实际流处理任务中,由于具体任务工作负载以及作业本身特征的不同,默认配置参数在大多数场景下会使得系统的性能遭到限制并且导致资源浪费等。
[0005]流数据处理系统中的关键配置参数需要结合集群硬件资源以及运行的具体作业等情况进行合理设置。人工调参的时间成本高且难以达到系统的性能最优值,现有的流数据处理系统配置参数自动调优方法又主要存在以下缺点:

调参方法不具备通用性,往往只能对一个特定的流处理框架进行调优;

调参考虑的参数往往很少(不超过10个),故参数调优后也并未达到系统性能的最优值;

性能调优考虑的指标因素往往比较单一(即只考虑吞吐或者延迟),但实际上对于流数据处理系统,吞吐和延迟都是重要的性能指标,并且高吞吐的场景下系统未必会有低的延迟。

技术实现思路

[0006]鉴于此,一方面,本专利技术提供一种贝叶斯优化的流数据处理系统配置参数调优方法,所述方法包括下述步骤:
[0007]S100、确定当前流处理系统的要改进的性能指标,根据该性能指标,确定要调优的一组配置参数;
[0008]S200、生成样本集,该样本集中的每一个样本,由一组配置参数值和其对应的性能指标值组成;
[0009]S300、对每一个样本,将其中的性能指标值作为输出,该性能指标值对应的那组配置参数值作为输入,使用随机森林算法建立性能模型;
[0010]S400、将所述性能指标作为贝叶斯优化算法的目标,对所述性能模型的参数进行搜索,将搜索到的一组配置参数值作为最优配置参数值,其对应的性能指标值为当前流数
据处理系统的最优性能指标值。
[0011]在所述方法中,其中:所述性能指标包括吞吐量、延迟时间、吞吐量与延迟时间的比率。
[0012]在所述方法中,所述步骤S200包括下述步骤:
[0013]S201、对每个配置参数,在该配置参数的值阈范围内,为该配置参数设定值,从而得到N组配置参数值;
[0014]S202、获取一组配置参数的值,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;
[0015]S203、将该组配置参数的值写入所述流数据处理系统中,启动数据输入流,运行所述流数据处理系统的时间长度为T1;获取当前流数据处理系统下的性能指标值;
[0016]S204、判断是否还存在配置参数组,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;若存在这样的配置参数组,则执行步骤S202;
[0017]N为设定值,T1为设定值。
[0018]在所述方法中,所述步骤S201中设定值的方法采用拉丁超立方抽样方法。
[0019]在所述方法中,所述步骤S202之前,还包括下述步骤:
[0020]S2021、获取一组配置参数的值,该组配置参数的值未进行标记;将组配置参数的值写入所述流数据处理系统中,运行所述流数据处理系统的时间长度为T2;
[0021]S2022、若所述流数据处理系统在运行时间长度T2后,停止运行,则标记该组配置参数的值为失败;否则,标记该组配置参数的值成功;
[0022]S2023、判断是否还存在配置参数组,对该组配置参数的值未进行标记;若存在这样的配置参数组,则执行步骤S2021;
[0023]T2为设定值。
[0024]与现有技术相比:
[0025]本公开方法具有通用性,可以适用于能够运行在流框架下的程序进行配置参数调优,并且能够根据选择的性能指标,用于高维配置参数调优,调优时间开销少。
[0026]另一方面,本公开实现了一种基于贝叶斯优化的流数据处理系统配置参数调优装置,所述装置包括下述模块:
[0027]确定参数模块:确定当前流处理系统的要改进的性能指标,根据该性能指标,确定要调优的一组配置参数;
[0028]样本生成器:生成样本集,该样本集中的每一个样本,由一组配置参数值和其对应的性能指标值组成;
[0029]建模模块:对每一个样本,将其中的性能指标值作为输出,该性能指标值对应的那组配置参数值作为输入,使用随机森林算法建立性能模型;
[0030]搜索模块:将所述性能指标作为贝叶斯优化算法的目标,对所述性能模型的参数进行搜索,将搜索到的一组配置参数值作为最优配置参数值,其对应的性能指标值为当前流数据处理系统的最优性能指标值。
[0031]在所述装置中,所述性能指标包括吞吐量、延迟时间、吞吐量与延迟时间的比率。
[0032]在所述装置中,所述样本生成器包括下述单元:
[0033]配置参数生成单元:对每个配置参数,在该配置参数的值阈范围内,为该配置参数
设定值,从而得到N组配置参数值;
[0034]配置参数获取单元:获取一组配置参数的值,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;
[0035]性能收集单元:将该组配置参数的值写入所述流数据处理系统中,启动数据输入流,运行所述流数据处理系统的时间长度为T1;获取当前流数据处理系统下的性能指标值;
[0036]判断单元:判断是否还存在配置参数组,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;若存在这样的配置参数组,则调用配置参数获取单元;
[0037]N为设定值,T1为设定值。
[0038]在所述装置中,所述配置参数生成单元采用拉丁超立方抽样方法为配置参数设定值。
[0039]在所述装置中,所述样本生成器还包括配置参数区分单元;所述配置参数区分单元,对每一组配置参数的值进行成功和失败得标记,具体方法如下:
[0040]获取一组配置参数的值,该组配置参数的值未进行标记;
[0041]将组配置参数的值写入所述流数据处本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于贝叶斯优化的流数据处理系统配置参数调优方法,其特征在于,所述方法包括以下步骤:S100、确定当前流处理系统的要改进的性能指标,根据该性能指标,确定要调优的一组配置参数;S200、生成样本集,该样本集中的每一个样本,由一组配置参数值和其对应的性能指标值组成;S300、对每一个样本,将其中的性能指标值作为输出,该性能指标值对应的那组配置参数值作为输入,使用随机森林算法建立性能模型;S400、将所述性能指标作为贝叶斯优化算法的目标,对所述性能模型的参数进行搜索,将搜索到的一组配置参数值作为最优配置参数值,其对应的性能指标值为当前流数据处理系统的最优性能指标值。2.根据权利要求1所述的方法,其特征在于,所述性能指标包括吞吐量、延迟时间、吞吐量与延迟时间的比率。3.根据权利要求1所述的方法,其特征在于,所述步骤S200包括下述步骤:S201、对每个配置参数,在该配置参数的值阈范围内,为该配置参数设定值,从而得到N组配置参数值;S202、获取一组配置参数的值,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;S203、将该组配置参数的值写入所述流数据处理系统中,启动数据输入流,运行所述流数据处理系统的时间长度为T1;获取当前流数据处理系统下的性能指标值;S204、判断是否还存在配置参数组,在该组配置参数的值下,所述流处理系统还未负载运行以获得性能指标值;若存在这样的配置参数组,则执行步骤S202;N为设定值,T1为设定值。4.根据权利要求3所述的方法,其特征在于,所述步骤S201中设定值的方法采用拉丁超立方抽样方法。5.根据权利要求3所述的方法,其特征在于,所述步骤S202之前,还包括下述步骤:S2021、获取一组配置参数的值,该组配置参数的值未进行标记;将组配置参数的值写入所述流数据处理系统中,运行所述流数据处理系统的时间长度为T2;S2022、若所述流数据处理系统在运行时间长度T2后,停止运行,则标记该组配置参数的值为失败;否则,标记该组配置参数的值成功;S2023、判断是否还存在配置参数组,对该组配置参数的值未进行标记;若存在这样的配置参数组,则执行步骤S2021;T2为设定值。6.一种基于贝叶斯优化的流...

【专利技术属性】
技术研发人员:黄世鑫朱港亚陈超辛锦瀚喻之斌王峥杨永魁单亚龙李玉泽
申请(专利权)人:中国科学院深圳先进技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1