[发明专利]一种基于机器学习的集群配置自动优化方法和系统在审
申请号: | 201910830574.4 | 申请日: | 2019-09-04 |
公开(公告)号: | CN112445746A | 公开(公告)日: | 2021-03-05 |
发明(设计)人: | 鲁真妍;喻之斌 | 申请(专利权)人: | 中国科学院深圳先进技术研究院 |
主分类号: | G06F15/16 | 分类号: | G06F15/16;G06F15/177 |
代理公司: | 北京市诚辉律师事务所 11430 | 代理人: | 耿慧敏 |
地址: | 518055 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 机器 学习 集群 配置 自动 优化 方法 系统 | ||
本发明提供一种基于机器学习的集群配置自动优化方法和系统。该方法包括:收集训练样本集,该训练样本集反映配置参数和集群性能的对应关系;基于所述训练样本集通过机器学习获得集群性能预测模型,将待优化的多组配置参数输入到所述集群性能预测模型,获得预测的集群性能;对于待优化的各组配置参数,以预测的集群性能作为其适应值,利用遗传算法寻找使集群性能最优的配置参数组合。利用本发明的方法和系统能够在配置参数组合形成的高维空间里,有效地寻找一个最优解,从而改善了集群性能。
技术领域
本发明涉及分布式搜索引擎技术领域,尤其涉及一种基于机器学习的集群配置自动优化方法和系统。
背景技术
目前,集群的应用日益普及,例如,ElasticSearch是一种使用广泛的分布式搜索引擎。由于ElasticSearch通常应用于有巨大吞吐量需求的场景之中,其性能对提高工业生产效率有着非常重要的影响。在使用中,常常需要让插入数据或检索数据的速度满足指定的要求。但由于其配置选项的数目较多,往往很难手动调整参数使其达到最优性能。
对于ElasticSearch的性能优化,目前主要是采用手动调优的方式。在了解ElasticSearch集群的原理后,结合一些优化策略,手动调整集群的配置参数。
然而,ElasticSearch拥有上百个配置选项,对于不同的数据和软硬件环境来说,能达到最佳性能的配置参数是不同的。大量的配置参数在给软件使用带来灵活性的同时,也给有性能优化需求的使用者带来了负担。不同的配置选项对性能指标有不同的影响,他们彼此之间也存在相关性。使用者必须对搜索引擎的工作过程和结构有深入的了解,才能在不同的情况下对配置参数做出合适的调整,在一定程度上提高集群的性能。由于大量参数与性能关系的复杂性,在实际使用过程中,经常出现不当配置,使得工作效率大幅下降,甚至集群崩溃的情况。
因此,需要对现有技术进行改进,提供面向集群的配置自动优化方法。
发明内容
本发明的目的在于克服上述现有技术的缺陷,提供一种基于机器学习的集群配置自动优化方法和系统,能够利用机器学习方法自动高效地获得最优的配置参数,从而显著改善集群性能。
根据本发明的第一方面,提供了一种基于机器学习的集群配置自动优化方法。该方法包括以下步骤:
收集训练样本集,该训练样本集反映配置参数和集群性能的对应关系;
基于所述训练样本集通过机器学习获得集群性能预测模型,将待优化的多组配置参数输入到所述集群性能预测模型,获得各组配置参数的预测的集群性能;
对于待优化的各组配置参数,以预测的集群性能作为其适应值,利用遗传算法寻找使集群性能最优的配置参数。
在一个实施例中,收集训练样本集包括:
对于随机产生的一组配置参数,将其划分为静态配置部分和动态配置部分;
将静态配置部分在启动集群前写入到文件中,并将该文件发送到集群的各节点,将动态配置部分在启动集群后提供给集群的应用程序编程接口,并向集群发出修改配置参数的请求;
在集群修改所请求的配置参数后,通过运行基准测试程序,获得该组配置参数对应的集群性能。
在一个实施例中,运行基准测试程序包括:
在ElasticSearch集群上,搭建EsRally集群,在各节点上启动Rally守护进程,该守护进程允许Rally与远程计算机进行通信;
在所搭建的EsRally集群中选择一个节点作为运行Rally测试的基准协调器;
运行数据收集脚本,收集各组配置参数对应的集群性能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院深圳先进技术研究院,未经中国科学院深圳先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910830574.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种适合前端的人脸识别网络的设置方法
- 下一篇:一种浪涌保护电路