CN108234177A - 一种HBase配置参数自动调优方法及装置、用户设备 - Google Patents
一种HBase配置参数自动调优方法及装置、用户设备 Download PDFInfo
- Publication number
- CN108234177A CN108234177A CN201611192297.1A CN201611192297A CN108234177A CN 108234177 A CN108234177 A CN 108234177A CN 201611192297 A CN201611192297 A CN 201611192297A CN 108234177 A CN108234177 A CN 108234177A
- Authority
- CN
- China
- Prior art keywords
- parameter
- hbase
- configuration
- performance model
- value
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Abstract
本发明公开了一种HBase配置参数自动调优方法及装置、用户设备,该方法包括:获取HBase数据库配置参数后,首先根据该HBase配置参数随机生成多组HBase配置文件,然后模拟负载,并根据生成的多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵,再根据该参数吞吐矩阵构建基于随机森林的性能模型,最后将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。可见,实施本发明实施例,能够实现HBase配置参数自动调优,不再依赖于实施者的个人能力和经验,大大提高了作业效率。
Description
技术领域
本发明涉及数据库领域,尤其涉及一种HBase配置参数自动调优方法及装置、用户设备。
背景技术
HBase(Hadoop Database,HBase)数据库是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase广泛使用在国内外大型互联网公司,同时也被很多中小型IT企业所广泛采用。
HBase参数调优是系统部署、运维过程中的一项重要活动。HBase架构设计复杂,涉及一系列模块化的组件。这些组件包括负责网络通信的远程过程调用、缓存和缓冲区等。这些组件的行为和组件间的交互都由一系列参数控制。这些参数影响请求队列大小,缓存策略和并行程度等,是影响HBase性能的决定性因素。但是,这些参数的默认值仅仅能够尽量保证系统的稳定运行,远远达不到性能优化。因此,参数调优有很大的性能提升空间。
参数调优能够提高系统性能,可以减少投资运维成本。例如,对某个特定的HBase应用,其设计吞吐目标是10000操作/秒,默认参数配置情况下需要30台服务器才能够达到10000操作/秒。但是通过参数调优,20台服务器就能够达到10000操作/秒。这意味着只需部署20台服务器即可满足应用的性能需求,节约了33%的系统投资成本。
虽然,参数调优是降低成本的有效途径,但参数调优的实施面临着一系列挑战如如何克服参数见的干扰。当前,参数调优的效果依赖于具体的实施者,经验丰富并且对HBase架构有深入理解的工程师能够达到比较好的效果,但是对于一般技术背景的工程师,参数调优的效果往往不佳。并且,手动调优效率低,耗时长。手动调优的方法通常是尝试一组组不同的参数值,实际实施过程中,一组组尝试显得很不现实。以HBase参考手册为例,其推荐了超过二十个配置参数。即使每个参数只有2个取值,也存在着超过2的20次方个组合。
发明内容
本发明实施例公开了一种HBase配置参数自动调优方法及装置、用户设备,实现了HBase配置参数自动调优,不再依赖于实施者的个人能力和经验。
本发明实施例第一方面公开一种HBase配置参数自动调优方法,包括:
获取HBase(Hadoop Database,HBase)数据库配置参数,并根据所述HBase配置参数随机生成多组HBase配置文件;
模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;
根据所述参数吞吐矩阵构建基于随机森林的性能模型,所述性能模型以HBase配置参数为输入,系统吞吐为输出;
将所述性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中,将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数的步骤包括:
将第一配置参数输入性能模型,然后将所述性能模型输入遗传算法计算评估值;
如果所述评估值不是最优值,则将第一配置参数进行杂交和变异后生成第二配置参数;
再将第二配置参数作为第一配置参数重复执行将第一配置参数输入性能模型的步骤,直到获取最优值为止,所述最优值对应的第一配置参数即为最优HBase配置参数。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中,获取HBase配置参数,并根据所述HBase配置参数随机产生多组HBase配置文件的步骤包括:
根据HBase参考手册选择若干个HBase配置参数;
确定每个HBase配置参数的上限值、下限值和步长,并根据所述上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中,
模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵的步骤包括:
根据所述HBase配置文件将HBase依次更新参数配置;
每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存所述参数配置和对应的吞吐量,直至完成所有HBase配置文件;
生成参数吞吐矩阵。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法中,性能模型还包括时延特征。
本发明实施例第二方面公开一种HBase配置参数自动调优装置,包括:
HBase配置文件生成模块,用于获取HBase配置参数,并根据所述HBase配置参数随机生成多组HBase配置文件;
参数吞吐矩阵生成模块,用于模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;
性能模型构建模块,用于根据所述参数吞吐矩阵构建基于随机森林的性能模型,所述性能模型以HBase配置参数为输入,系统吞吐为输出;
遗传算法模块,用于将所述性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。
作为一种可选的实施方式,在本发明实施例第二方面中,所述遗传算法模块包括:
输入单元,用于将第一配置参数输入性能模型;
评估值计算单元,用于将输入单元输入的性能模型输入遗传算法计算评估值;
判断单元,用于判断评估值计算单元计算的估值是否是最优值;
第二配置参数生成单元,用于当判断单元判断出评估值不是最优值时,将第一配置参数进行杂交和变异后生成第二配置参数。
作为一种可选的实施方式,在本发明实施例第二方面中,所述HBase配置文件生成模块包括:
配置参数选择单元,用于根据HBase参考手册选择若干个HBase配置参数;
HBase配置文件生成单元,用于确定每个HBase配置参数的上限值、下限值和步长,并根据所述上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件。
作为一种可选的实施方式,在本发明实施例第二方面中,所述参数吞吐矩阵生成模块包括:
参数配置更新单元,用于根据HBase配置文件生成单元生成的HBase配置文件将HBase依次更新参数配置;
吞吐量获取单元,用于每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存所述参数配置和对应的吞吐量,直至完成所有HBase配置文件;
参数吞吐矩阵生成单元,用于根据所述参数配置和对应的吞吐量生成参数吞吐矩阵。
本发明实施例第三方面公开一种用户设备,包括本发明实施例第二方面公开的所述HBase配置参数自动调优装置。
与现有技术相比,本发明实施例具备以下有益效果:
本发明实施例中,获取HBase数据库配置参数后,首先根据该HBase配置参数随机生成多组HBase配置文件,然后模拟负载,并根据生成的多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵,再根据该参数吞吐矩阵构建基于随机森林的性能模型,最后将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。可见,实施本发明实施例,能够实现HBase配置参数自动调优,不再依赖于实施者的个人能力和经验,大大提高了作业效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种HBase配置参数自动调优方法的流程示意图;
图2是本发明实施例公开的另一种HBase配置参数自动调优方法的流程示意图;
图2-1是本发明实施例二中遗传算法的搜索空间示意图;
图3是本发明实施例公开的一种HBase配置参数自动调优装置的结构示意图;
图4是本发明实施例公开的另一种HBase配置参数自动调优装置的结构示意图;
图5是本发明实施例公开的一种用户设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种HBase配置参数自动调优方法及装置、用户设备,实现了HBase配置参数自动调优。以下进行结合附图进行详细描述。
实施例一
请参阅图1,图1是本发明实施例公开的一种HBase配置参数自动调优方法的流程示意图。如图1所示,该HBase配置参数自动调优方法可以包括以下步骤:
101、获取HBase数据库配置参数,并根据HBase配置参数随机生成多组HBase配置文件;
首先获取HBase数据库配置参数,并根据HBase配置参数随机生成多组HBase配置文件,具体的:根据HBase参考手册选择若干个HBase配置参数,确定每个参数的上限值、下限值和步长。每个参数分别随机取值,构成多组,例如构成600组随机产生的HBase配置文件。部分配置参数见表1-1。
表1-1
根据上限值、下限值和步长,利用随机函数随机取值,生成HBase配置文件。
102、模拟负载,并根据多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;
模拟负载,并根据多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵,具体的:首先根据HBase配置文件将HBase依次更新参数配置,每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存参数配置和对应的吞吐量,直至完成所有HBase配置文件,生成参数吞吐矩阵,其中参数吞吐矩阵包括了参数配置数据和对应的吞吐量。
103、根据参数吞吐矩阵构建基于随机森林的性能模型;
根据参数吞吐矩阵构建基于随机森林的性能模型,具体的:随机森林由一系列组合决策树构成,每颗决策树都可以用来做预测。本实施例中训练以HBase配置参数为输入,系统吞吐为输出的随机森林模型。该模型的优点是避免过度拟合,可以达到稳定的高精度模型。构建的性能模型以HBase配置参数为输入,系统吞吐为输出。
104、将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数;
步骤103中构建了性能模型,将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数;具体的:首先将第一配置参数输入性能模型,然后将性能模型输入遗传算法计算评估值;再判断该评估值是不是最优值,如果不是最优值,则将第一配置参数进行杂交和变异后生成第二配置参数;再将第二配置参数作为第一配置参数重复执行将第一配置参数输入性能模型的步骤,直到获取最优值为止,其中,最优值对应的第一配置参数即为最优HBase配置参数。
在图1所描述的方法,获取HBase数据库配置参数后,首先根据该HBase配置参数随机生成多组HBase配置文件,然后模拟负载,并根据生成的多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵,再根据该参数吞吐矩阵构建基于随机森林的性能模型,最后将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。可见,实施本发明实施例,能够实现HBase配置参数自动调优,不再依赖于实施者的个人能力和经验,大大提高了作业效率。
实施例二
请参阅图2,图2是本发明实施例公开的另一种HBase配置参数自动调优方法的流程示意图。如图2所示,该HBase配置参数自动调优方法可以包括以下步骤:
YCSB(Yahoo!Cloud Serving Benchmark)是一套学术界和工业界普遍使用的基准测试工具,其作用是模拟真实的应用操作HBase集群。YCSB定义了五个基本操作,分别是读、写,更新,插入和扫描等。每个负载由四个属性构成,包括:(1)基本操作的类型;(2)各操作所占的比例;(3)操作对应的记录大小,该大小默认为1024KB;(4)各操作的先后顺序等。在测试结束时,YCSB以日志方式汇报程序的性能,包括吞吐和时延。
在本实施例中,首先需要通过YCSB模拟出一个真实的HBase应用,该应用由一系列基本操作与HBase数据库交互,例如读、插入、更新一条记录。
201、根据Hbase参考手册选择若干个HBase配置参数;
首先根据HBase参考手册选择若干个HBase配置参数。
202、确定每个HBase配置参数的上限值、下限值和步长,并根据上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件;
确定每个HBase配置参数的上限值、下限值和步长后,根据上限值、下限值和步长,利用随机函数随机取值,生成HBase配置文件,HBase配置文件包含随机取值的多个配置方案。
203、根据HBase配置文件将HBase依次更新参数配置;
首先初始化HBase数据库,创建HBase表,将每个HBase表建立若干子分区,并插入样本数据。再根据HBase配置文件将HBase依次更新参数配置。
204、每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存参数配置和对应的吞吐量,直至完成所有HBase配置文件;
每一次根据HBase配置文件将HBase数据库更新参数配置后,执行HBase命令操作获取对应吞吐量,并保存参数配置和对应的吞吐量,直至完成所有HBase配置文件。每次执行操作命令后还获取本次操作对应的时延,并对应保存该时延数据。
205、生成参数吞吐矩阵;
根据保存的参数配置和对应的吞吐量生成参数吞吐矩阵,其中参数吞吐矩阵包括了参数配置数据和对应的吞吐量。
206、根据参数吞吐矩阵构建基于随机森林的性能模型;
在步骤205中生成参数吞吐矩阵后,再将该矩阵作为训练样本输入到随机森林模型中进行训练,并构建出性能模型,其中,构建的性能模型以HBase配置参数为输入,系统吞吐为输出。该性能模型包括配置参数、对应的吞吐量以及时延等特征。
207、将第一配置参数输入性能模型,然后将性能模型输入遗传算法计算评估值;
将步骤206构建的性能模型作为遗传算法的输入。首先将初始化的配置参数输入性能模型,再将该性能模型输入遗传算法进行迭代搜索。具体参加图2-1,图2-1中横轴代表吞吐量,纵轴代表时延,点0代表默认HBase参数对应的性能点,遗传算法用于在0点的右下空间寻找离0点最远的点。w1和w2分别是吞吐量和时延对应的优化优先级。一组具体的w1和w2值确定了一个方向,在这个方向上,距离0点最远的点对应的配置参数即为给定应用对应的最优参数。初始化权重w1+w2=1,在w1=w2=0.5的情况下,点B即为最优参数在性能空间对应的点。根据设置权重可以设置侧重优化吞吐还是侧重优化时延,参数调优实施者只需配置不同的优化优先级,本发明就可以计算出在该优化目标下对应的最优参数。
将第一配置参数输入性能模型,如果是第一次迭代,则第一配置参数为初始化配置参数,如果不是第一次迭代,则第一配置为上一次迭代过程中产生的第二配置参数;输入配置参数后,开始迭代过程,进行评估值的计算。
208、判断评估值是否是最优值;
计算得到评估值后,判断该评估值是否是最优值,如果是最优值,则执行步骤211,结束本流程;如果不是最优值,则执行步骤209。
209、将第一配置参数进行杂交和变异后生成第二配置参数;
如果当前计算得到的评估值不是目标最优值,则将第一配置参数进行杂交和变异操作,产生新的配置参数,即第二配置参数。
210、将第二配置参数作为第一配置参数返回步骤207;
将第二二配置参数作为第一配置参数返回步骤207,直至迭代搜索到最优值。该最优值对应的配置参数即为最优配置参数。
211、结束流程。
其中,实施图2所描述的方法以随机森林建立性能模型,以遗传算法搜索最优配置;通过机器学习的方法进行自动调优代替传统的手动调优方法,不再依赖于实施者的个人能力和经验,大大提高了作业效率。进一步的,本实施例中的方法既可以优化吞吐也可以优化时延,参数调优实施者只需配置不同的优化优先级,本发明就可以计算出在该优化目标下对应的最优参数。
实施例三
请参阅图3,图3是本发明实施例公开的一种HBase配置参数自动调优装置的结构示意图。如图3所示,该HBase配置参数自动调优装置可以包括:
HBase配置文件生成模块301,用于获取HBase配置参数,并根据所述HBase配置参数随机生成多组HBase配置文件;具体的:根据HBase参考手册选择若干个HBase配置参数,确定每个参数的上限值、下限值和步长。每个参数分别随机取值,构成多组,例如构成600组随机产生的HBase配置文件。根据上限值、下限值和步长,利用随机函数随机取值,生成HBase配置文件。
参数吞吐矩阵生成模块302,用于模拟负载,并根据HBase配置文件生成模块301生成的多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;具体的:首先根据HBase配置文件将HBase依次更新参数配置,每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存参数配置和对应的吞吐量,直至完成所有HBase配置文件,生成参数吞吐矩阵,其中参数吞吐矩阵包括了参数配置数据和对应的吞吐量。
性能模型构建模块303,用于根据参数吞吐矩阵生成模块302生成的参数吞吐矩阵构建基于随机森林的性能模型,其中,性能模型以HBase配置参数为输入,系统吞吐为输出;具体的:随机森林由一系列组合决策树构成,每颗决策树都可以用来做预测。本实施例中训练以HBase配置参数为输入,系统吞吐为输出的随机森林模型。该模型的优点是避免过度拟合,可以达到稳定的高精度模型。
遗传算法模块304,用于将性能模型构建模块303构建的性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数;具体的:首先将第一配置参数输入性能模型,然后将性能模型输入遗传算法计算评估值;再判断该评估值是不是最优值,如果不是最优值,则将第一配置参数进行杂交和变异后生成第二配置参数;再将第二配置参数作为第一配置参数重复执行将第一配置参数输入性能模型的步骤,直到获取最优值为止,其中,最优值对应的第一配置参数即为最优HBase配置参数。
其中,实施图3所描述的装置,HBase配置文件生成模块301获取HBase数据库配置参数后,首先根据该HBase配置参数随机生成多组HBase配置文件,然后参数吞吐矩阵生成模块302模拟负载,并根据生成的多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵,性能模型构建模块303再根据该参数吞吐矩阵构建基于随机森林的性能模型,最后遗传算法模块304将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。可见,实施本发明实施例,能够实现HBase配置参数自动调优,不再依赖于实施者的个人能力和经验,大大提高了作业效率。
实施例四
请参阅图4,图4是本发明实施例公开的另一种HBase配置参数自动调优装置的结构示意图。其中,图4所示的HBase配置参数自动调优装置是由于图3所示的HBase配置参数自动调优装置进行优化得到的。与图3所示的HBase配置参数自动调优装置相比,图4所示的HBase配置参数自动调优装置中:
遗传算法模块304包括:
输入单元3041,用于将第一配置参数输入性能模型;将第一配置参数输入性能模型,如果是第一次迭代,则第一配置参数为初始化配置参数,如果不是第一次迭代,则第一配置为上一次迭代过程中产生的第二配置参数。
评估值计算单元3042,用于将输入单元3041输入的性能模型输入遗传算法计算评估值;首先将初始化的配置参数输入性能模型,再将该性能模型输入遗传算法进行迭代搜索。设置吞吐量和时延对应的优化优先级。即需要初始化权重吞吐量优先级和延时优先级的权重,根据设置权重可以设置侧重优化吞吐还是侧重优化时延,参数调优实施者只需配置不同的优化优先级,本发明就可以计算出在该优化目标下对应的最优参数。具体可参照实施例二中的步骤207。
判断单元3043,用于判断评估值计算单元3042计算的估值是否是最优值;
第二配置参数生成单元3044,用于当判断单元3043判断出评估值不是最优值时,将第一配置参数进行杂交和变异后生成第二配置参数。第二配置参数是作为新的第一配置参数继续进入遗传算法进行迭代搜索的,直至迭代搜索到目标最优值。
作为一种可选的实施方式,图4所示的装置中,HBase配置文件生成模块301包括:
配置参数选择单元3011,用于根据HBase参考手册选择若干个HBase配置参数;
HBase配置文件生成单元3012,用于确定每个HBase配置参数的上限值、下限值和步长,并根据上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件。具体的,根据上限值、下限值和步长,利用随机函数随机取值,生成HBase配置文件,HBase配置文件包含随机取值的多个配置方案。
作为一种可选的实施方式,图4所示的装置中,参数吞吐矩阵生成模块302包括:
参数配置更新单元3021,用于根据HBase配置文件生成单元生成的HBase配置文件将HBase依次更新参数配置;
吞吐量获取单元3022,用于每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存所述参数配置和对应的吞吐量,直至完成所有HBase配置文件;进一步的,吞吐量获取单元3022还用于在每次执行操作命令后还获取本次操作对应的时延,并对应保存该时延数据。
参数吞吐矩阵生成单元3023,用于根据吞吐量获取单元3022获取的参数配置和对应的吞吐量生成参数吞吐矩阵,其中参数吞吐矩阵包括了参数配置数据和对应的吞吐量。
其中,实施图4所描述的装置,通过以随机森林建立性能模型,以遗传算法搜索最优配置;通过机器学习的方法进行自动调优代替传统的手动调优方法,不再依赖于实施者的个人能力和经验,大大提高了作业效率。进一步的,本实施例中的方法既可以优化吞吐也可以优化时延,参数调优实施者只需配置不同的优化优先级,本发明就可以计算出在该优化目标下对应的最优参数。
实施例五
请参阅图5,图5是本发明实施例公开的一种用户设备的结构示意图。其中,图5所示的用户设备包括图3~图4任意一种HBase配置参数自动调优装置。实施图5所示的用户设备,能够实现HBase配置参数自动调优,不再依赖于实施者的个人能力和经验,在较短的时间内达到很好的优化效果,大大提高了作业效率。并且将机器学习算法集成于软件工具中,该方法简单有效易操作,适合在广大中小型IT企业推广。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种HBase配置参数自动调优方法及装置、用户设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种HBase配置参数自动调优方法,其特征在于,包括:
获取HBase数据库配置参数,并根据所述HBase配置参数随机生成多组HBase配置文件;
模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;
根据所述参数吞吐矩阵构建基于随机森林的性能模型,所述性能模型以HBase配置参数为输入,系统吞吐为输出;
将所述性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。
2.根据权利要求1所述的方法,其特征在于,所述将性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数的步骤包括:
将第一配置参数输入性能模型,然后将所述性能模型输入遗传算法计算评估值;
如果所述评估值不是最优值,则将第一配置参数进行杂交和变异后生成第二配置参数;
再将第二配置参数作为第一配置参数重复执行将第一配置参数输入性能模型的步骤,直到获取最优值为止,所述最优值对应的第一配置参数即为最优HBase配置参数。
3.根据权利要求2所述的方法,其特征在于,所述获取HBase配置参数,并根据所述HBase配置参数随机产生多组HBase配置文件的步骤包括:
根据HBase参考手册选择若干个HBase配置参数;
确定每个HBase配置参数的上限值、下限值和步长,并根据所述上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件。
4.根据权利要求3所述的方法,其特征在于,所述模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵的步骤包括:
根据所述HBase配置文件将HBase依次更新参数配置;
每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存所述参数配置和对应的吞吐量,直至完成所有HBase配置文件;
生成参数吞吐矩阵。
5.根据权利要求1-3所述的方法,其特征在于,所述性能模型还包括时延特征。
6.一种HBase配置参数自动调优装置,其特征在于,包括:
HBase配置文件生成模块,用于获取HBase配置参数,并根据所述HBase配置参数随机生成多组HBase配置文件;
参数吞吐矩阵生成模块,用于模拟负载,并根据所述多组HBase配置文件完成相同数量的参数配置,生成参数吞吐矩阵;
性能模型构建模块,用于根据所述参数吞吐矩阵构建基于随机森林的性能模型,所述性能模型以HBase配置参数为输入,系统吞吐为输出;
遗传算法模块,用于将所述性能模型输入遗传算法,通过遗传算法的迭代计算获取最优HBase配置参数。
7.根据权利要求6所述的装置,其特征在于,所述遗传算法模块包括:
输入单元,用于将第一配置参数输入性能模型;
评估值计算单元,用于将输入单元输入的性能模型输入遗传算法计算评估值;
判断单元,用于判断评估值计算单元计算的估值是否是最优值;
第二配置参数生成单元,用于当判断单元判断出评估值不是最优值时,将第一配置参数进行杂交和变异后生成第二配置参数。
8.根据权利要求7所述的装置,其特征在于,所述HBase配置文件生成模块包括:
配置参数选择单元,用于根据HBase参考手册选择若干个HBase配置参数;
HBase配置文件生成单元,用于确定每个HBase配置参数的上限值、下限值和步长,并根据所述上限值、下限值和步长将每个参数分别随机取值,生成多组HBase配置文件。
9.根据权利要求8所述的装置,其特征在于,所述参数吞吐矩阵生成模块包括:
参数配置更新单元,用于根据HBase配置文件生成单元生成的HBase配置文件将HBase依次更新参数配置;
吞吐量获取单元,用于每次更新参数配置后执行HBase命令操作获取对应吞吐量,并保存所述参数配置和对应的吞吐量,直至完成所有HBase配置文件;
参数吞吐矩阵生成单元,用于根据所述参数配置和对应的吞吐量生成参数吞吐矩阵。
10.一种用户设备,其特征在于,包括权利要求6~权利要求9任意一项所述的HBase配置参数自动调优装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611192297.1A CN108234177A (zh) | 2016-12-21 | 2016-12-21 | 一种HBase配置参数自动调优方法及装置、用户设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611192297.1A CN108234177A (zh) | 2016-12-21 | 2016-12-21 | 一种HBase配置参数自动调优方法及装置、用户设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108234177A true CN108234177A (zh) | 2018-06-29 |
Family
ID=62650954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611192297.1A Pending CN108234177A (zh) | 2016-12-21 | 2016-12-21 | 一种HBase配置参数自动调优方法及装置、用户设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108234177A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871958A (zh) * | 2019-02-01 | 2019-06-11 | 东软医疗系统股份有限公司 | 训练模型的方法、装置及设备 |
CN109947745A (zh) * | 2019-03-28 | 2019-06-28 | 浪潮商用机器有限公司 | 一种数据库优化方法及装置 |
CN111339066A (zh) * | 2020-05-20 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 数据库优化方法、装置、电子设备及计算机可读存储介质 |
WO2020228378A1 (zh) * | 2019-05-14 | 2020-11-19 | 华为技术有限公司 | 一种确定数据库的配置参数的方法及装置 |
CN113032367A (zh) * | 2021-03-24 | 2021-06-25 | 安徽大学 | 面向动态负载场景的大数据系统跨层配置参数协同调优方法和系统 |
CN113064879A (zh) * | 2021-03-12 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 数据库参数调整方法、装置及计算机可读存储介质 |
CN113204539A (zh) * | 2021-05-12 | 2021-08-03 | 南京大学 | 一种融合系统语义的大数据系统参数自动优化方法 |
CN115130322A (zh) * | 2022-07-22 | 2022-09-30 | 中国原子能科学研究院 | 束流整形装置的优化方法和优化装置 |
CN116719584A (zh) * | 2023-08-09 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机、存储介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064664A (zh) * | 2012-11-28 | 2013-04-24 | 华中科技大学 | 一种基于性能预估的Hadoop参数自动优化方法和系统 |
CN103701635A (zh) * | 2013-12-10 | 2014-04-02 | 中国科学院深圳先进技术研究院 | 一种在线配置Hadoop参数的方法和装置 |
CN105653355A (zh) * | 2015-12-30 | 2016-06-08 | 中国科学院深圳先进技术研究院 | Hadoop的配置参数的计算方法及系统 |
-
2016
- 2016-12-21 CN CN201611192297.1A patent/CN108234177A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064664A (zh) * | 2012-11-28 | 2013-04-24 | 华中科技大学 | 一种基于性能预估的Hadoop参数自动优化方法和系统 |
CN103701635A (zh) * | 2013-12-10 | 2014-04-02 | 中国科学院深圳先进技术研究院 | 一种在线配置Hadoop参数的方法和装置 |
CN105653355A (zh) * | 2015-12-30 | 2016-06-08 | 中国科学院深圳先进技术研究院 | Hadoop的配置参数的计算方法及系统 |
Non-Patent Citations (2)
Title |
---|
NI LUO ET AL.: "Performance Modeling for Spark Using SVM", 《2016 7TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND BIG DATA (CCBD)》 * |
ZHENDONG BEI ET AL.: "RFHOC: A Random-Forest Approach to Auto-Tuning Hadoop"s Configuration", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871958A (zh) * | 2019-02-01 | 2019-06-11 | 东软医疗系统股份有限公司 | 训练模型的方法、装置及设备 |
CN109947745B (zh) * | 2019-03-28 | 2021-08-20 | 浪潮商用机器有限公司 | 一种数据库优化方法及装置 |
CN109947745A (zh) * | 2019-03-28 | 2019-06-28 | 浪潮商用机器有限公司 | 一种数据库优化方法及装置 |
WO2020228378A1 (zh) * | 2019-05-14 | 2020-11-19 | 华为技术有限公司 | 一种确定数据库的配置参数的方法及装置 |
CN111339066A (zh) * | 2020-05-20 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 数据库优化方法、装置、电子设备及计算机可读存储介质 |
CN113064879A (zh) * | 2021-03-12 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 数据库参数调整方法、装置及计算机可读存储介质 |
CN113032367A (zh) * | 2021-03-24 | 2021-06-25 | 安徽大学 | 面向动态负载场景的大数据系统跨层配置参数协同调优方法和系统 |
CN113204539A (zh) * | 2021-05-12 | 2021-08-03 | 南京大学 | 一种融合系统语义的大数据系统参数自动优化方法 |
CN113204539B (zh) * | 2021-05-12 | 2023-08-22 | 南京大学 | 一种融合系统语义的大数据系统参数自动优化方法 |
CN115130322A (zh) * | 2022-07-22 | 2022-09-30 | 中国原子能科学研究院 | 束流整形装置的优化方法和优化装置 |
CN115130322B (zh) * | 2022-07-22 | 2023-11-03 | 中国原子能科学研究院 | 束流整形装置的优化方法和优化装置 |
CN116719584A (zh) * | 2023-08-09 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机、存储介质及程序产品 |
CN116719584B (zh) * | 2023-08-09 | 2024-01-19 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机、存储介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108234177A (zh) | 一种HBase配置参数自动调优方法及装置、用户设备 | |
Morris et al. | The use of soil organic matter as a criterion of the relative sustainability of forest management alternatives: a modelling approach using FORECAST | |
CN107368891A (zh) | 一种深度学习模型的压缩方法和装置 | |
Moosavian | Soccer league competition algorithm for solving knapsack problems | |
CN107832885A (zh) | 一种基于自适应迁移策略bbo算法的舰艇编队火力分配方法 | |
Nordström et al. | Evaluating continuous cover forestry based on the forest owner’s objectives by combining scenario analysis and multiple criteria decision analysis | |
Othman et al. | Simulation-based optimization of StarCraft tactical AI through evolutionary computation | |
Pukkala | Dealing with ecological objectives in the Monsu planning system | |
CN107115673A (zh) | 一种基于行为树的行为执行方法和装置 | |
Barreiro et al. | StandsSIM-MD: a management driven forest SIMulator | |
Harris et al. | A memetic algorithm for the quadratic assignment problem with parallel local search | |
Rinke et al. | A scalable algorithm for simulating the structural plasticity of the brain | |
Periaux et al. | Evolutionary optimization and game strategies for advanced multi-disciplinary design: applications to aeronautics and UAV design | |
CN108304929A (zh) | 一种点格棋最佳招法的确定方法及系统 | |
CN104392317A (zh) | 一种基于遗传文化基因算法的项目调度方法 | |
KR100621559B1 (ko) | 인공지능 학습을 통한 게이머의 게임 스타일 이식시스템및 그 이식방법 | |
Frank et al. | The statistics proxy server | |
CN101840456A (zh) | 一种基于接口关联模型的产品设计变更影响分析方法 | |
CN112190945A (zh) | 游戏数据处理方法和装置、计算机可读存储介质、电子设备 | |
Wang et al. | Mining experiential patterns from game-logs of board game | |
CN113256462B (zh) | 基于云计算的电竞教育系统 | |
Pretzsch | Biometrical models as tools for forest ecosystem management | |
Kurtz | Climate Change and the Ecology of the Political: Crisis, Hegemony, and the Struggle for Climate Justice | |
Dagli et al. | Data partitioning for ensemble model building | |
Ford | Sensitivity analysis |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |