CN113495840A - 基于瓶颈资源定位及参数调优的大数据平台测试方法 - Google Patents

基于瓶颈资源定位及参数调优的大数据平台测试方法 Download PDF

Info

Publication number
CN113495840A
CN113495840A CN202110692336.9A CN202110692336A CN113495840A CN 113495840 A CN113495840 A CN 113495840A CN 202110692336 A CN202110692336 A CN 202110692336A CN 113495840 A CN113495840 A CN 113495840A
Authority
CN
China
Prior art keywords
resource
data
parameter
bottleneck
information
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
Application number
CN202110692336.9A
Other languages
English (en)
Inventor
李红辉
张骏温
王睿
杨秀杰
王文浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jiaotong University
Original Assignee
Beijing Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jiaotong University filed Critical Beijing Jiaotong University
Priority to CN202110692336.9A priority Critical patent/CN113495840A/zh
Publication of CN113495840A publication Critical patent/CN113495840A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种基于瓶颈资源定位及参数调优的大数据平台测试方法,包括:将开源工具与大数据平台集成后对大数据平台进行资源的日常监控;根据日常监控资源计算各资源的信息增益率;根据所述信息增益率,基于改进信息增益的瓶颈资源定位方法定位出导致大数据平台出现性能瓶颈的瓶颈资源;根据定位的瓶颈资源,基于敏感度筛选出调优参数集;利用自动化脚本对调优参数集的参数进行修改,得到最优的参数配置。本方法可以及时定位导致大数据平台出现性能瓶颈的资源,推荐出选定参数的最优参数配置集合,达到自动化、全面化参数调优的目标。

Description

基于瓶颈资源定位及参数调优的大数据平台测试方法
技术领域
本发明涉及媒体通信技术领域,尤其涉及一种基于瓶颈资源定位及参数调优的大数据平台测试方法。
背景技术
随着大数据的关注度越来越高,大数据平台的测试工具和评测基准吸引了学术界和工业界的广泛研究,以Hadoop为例的大数据平台自带了一些测试基准程序,主要包括用于测试HDFS性能的TestDFSIO、用于文本排序的TeraSort、用于测试MapReduce小型作业响应能力的MRbench和用于统计单词出现频次的WordCount。这些基准测试程序具有效率高和成本低的优点,广泛应用于以Hadoop为测试对象的科研中。
目前Hadoop性能优化工作大致分为四种:基于数据的优化、基于作业调度策略的优化、基于特定应用的优化和基于运行环境配置参数的优化。
基于数据的优化是以数据块为基本单位,通过改进Hadoop大数据平台中数量处理的模式提高数据处理效率,从而实现平台的性能提升。现有技术中的相关方式主要包括:通过使用MapReduce编程模型完成小文件的合并,从而提高了Hadoop处理小文件的性能;针对现有的MapReduce框架在一个任务中主要在用一个map/reduce作业执行数据处理,并不是直接支持数据迭代应用提出了一个Dacoop框架,其延伸了MapReduce编程接口对重复处理的数据进行指定,引入基于共享内存的数据缓存机制对数据进行首次访问后的缓存,并采用缓存感知的任务调度,使得缓存的数据能够在数据迭代应用的map/reduce作业之间共享,通过这种处理方式可以提升Hadoop在处理数据迭代应用程序方面的性能。
基于作业调度策略的优化是以任务为单位,通过改进作业调度的策略提高作业处理的效率,提高大数据平台的性能。Hadoop默认任务调度模型的问题在于缺乏动态性和灵活性,现有技术中提出了一种以CPU占用率作为负载指标,在循环分配任务时根据反馈的负载指标判断节点负载情况的算法,从而动态适应负载变化,该算法有效地提高了平台的性能;还有文献在分析Hadoop缺省及改进作业调度算法基础上,引入了吞食行为和跳跃行为改进人工鱼群算法改善了作业调度,在异构环境下提高平台的性能。
基于特定应用的优化是指通过修改系统代码等优化手段提升这一类应用在Haoop平台中的性能。从应用程序着手,现有技术中提出了多个解决方法,进行了MapReduce优化算法、脚本/编译语言的对比、小文件预处理等多个实验,通过对优化技术和实验结果进行分析得出了优化应用程序是提高大数据平台性能的有效手段的结论。
上述前三个方法的缺陷在于需要的前置知识较多,工作量繁重,而且修改系统等方式使得源码更加难以维护,增加了系统的耦合度。基于运行环境配置参数的优化是通过一些方式对大数据平台的相关配置参数进行调整从而实现平台的性能提升,相对于前三个方法,对参数的调优是更为简便和快速有效的。由于系统性能与大量配置参数直接相关,这些参数控制系统执行的各个方面,从低级内存设置和线程数量到更高级别的决策,如资源管理和负载平衡。配置参数设置不当会对整体系统性能和稳定性产生不利影响。目前基于配置参数优化的研究包括基于规则的方法、基于成本建模的方法、基于模拟的方法以及基于机器学习的方法。
基于规则的方法帮助用户根据人类专家的经验、在线教程或调优说明来调优一些系统参数。它们通常不需要模型或日志信息,并且适合于快速引导系统。Hadoop书籍、在线教程和行业提出的参数调优指南提供了设置配置参数设置的几个经验法则。对某些参数使用简单但有效的规则,可以很容易地识别和避免容易出错的配置设置,并提供优化以获得更好的性能;基于成本建模的方法通过使用基于对系统内部的深入理解而开发的分析成本函数来建立有效的性能预测模型。建立模型通常需要一些实验日志和一些输入统计数据;基于模拟的方法是基于模块化或完整的系统模拟来构建性能预测模型,使用户能够在不同的参数设置或集群资源下模拟执行。模拟有助于以合理的低训练开销准确地学习特征,而构建模拟器需要全面了解内部系统动态以及数据和工作负载;基于机器学习的方法通过使用机器学习方法来建立性能预测模型。机器学习模型不需要理解系统、作业和数据的内部以及模型本身随着更多的训练数据而改进,因此可以使用机器学习技术来排列或识别与大数据平台性能有很强相关性的参数。
现有测试工具主要关注作业运行时间、吞吐率等传统测试目标,并不会对整个系统状态进行监控,并且在测试过程中缺乏对各类资源的监控。现有的测试工具和方法在大数据平台出现性能瓶颈时,无法及时定位产生瓶颈的原因,无法及时采取合理的策略进行调整。并且对资源造成影响的主要是参数组合,因此调优主要是对于参数进行调整,目前进行参数调优的方法多种多样,主要缺点是缺乏自动化参数调优,参数组合选取不全面,以及策略不合理。
因此,需要一种可以及时定位导致大数据平台出现性能瓶颈的大数据平台测试方法。
发明内容
本发明提供了一种基于瓶颈资源定位及参数调优的大数据平台测试方法,以解决现有技术中存在的缺陷。
为了实现上述目的,本发明采取了如下技术方案。
一种基于瓶颈资源定位及参数调优的大数据平台测试方法,包括:
S1将开源工具与大数据平台集成后对大数据平台进行资源的日常监控;
S2根据日常监控资源计算各资源的信息增益率;
S3根据所述信息增益率,基于改进信息增益的瓶颈资源定位方法定位出导致大数据平台出现性能瓶颈的瓶颈资源;
S4根据定位的瓶颈资源,基于敏感度筛选出调优参数集;
S5利用自动化脚本对调优参数集的参数进行修改,得到最优的参数配置。
优选地,开源工具为Ganglia。
优选地,将开源工具与大数据平台集成包括:
安装相关组件:在每一个被监控节点和主控节点安装Ganglia工具及其相关组件;在每一个被监控节点安装Gmond来收集资源使用信息,在主监控节点安装Gmetad来收集gmond节点广播的数据信息的同时还需要安装RRDTool来存储收集的相关数据,安装Gweb以图形的方式显示数据信息;
对Ganglia进行配置:
对于主监控节点修改gmetad.conf文件中的数据源相关的参数,主要包括集群名称、监控服务的地址和端口;对于被监控节点,修改gmond.conf文件,其中该配置文件中的集群名称参数与gmeta.conf保持一致,从而保证主从节点共同服务;
修改大数据平台的相关配置文件:
修改Hadoop的配置文件hadoop-metrics2.properties和Hbase的配置文件hadoop-metrics2.properties,使得Ganglia从细粒度地监控Hadoop和Hbase地相关信息。
优选地,计算各资源的信息增益率,包括:
S41将Ganglia工具收集负载执行时间段的各种资源的利用率数据离散化;
S42计算离散化后各个数据集的信息熵以及各个数据集划分的数据子集的信息熵,然后计算每种资源的信息增益;
S43定义资源a在资源数据总集合D中的信息熵IV(D,a),然后在IV(D,a)的基础上定义按资源a划分资源数据集合D的信息增益率。
优选地,基于改进信息增益的瓶颈资源定位方法,包括:在执行测试时不断加大大数据平台负载的压力,同时收集相关资源利用率数据,在大数据平台性能出现瓶颈后,将采集到的资源利用率和时间满意度离散化,计算各个资源的信息增益率,最后将具有最高信息增益率的资源作为该负载的瓶颈资源。
优选地,S5由选定参数集合、输入参数值列表、自动修改参数脚本和剪枝策略步骤得到。
优选地,剪枝策略包括:
记录默认参数配置下的负载执行时间T0;
当其他参数配置下,如果负载执行时间小于T0,则将时间合对应的参数配置记录到结果文件中;如果负载执行到T0时刻还未执行完毕,不再继续执行测试,对应的负载时间做统一的特殊记录,不再继续等待该负载执行结束,直接进行下一次参数配置下的测试;
当所有参数集合都完成配置且测试结束后,从记录测试结果的文件中找出最短执行时间的参数配置,即为选定参数集合中的最优配置。
优选地,各个数据集的信息熵、各个数据集划分的数据子集的信息熵和每种资源的信息增益分别如下式(1)、(2)和(3)所示:
Figure BDA0003126615800000051
Figure BDA0003126615800000061
Gain(D,a)=Ent(D)-Ent(D,a) (3)
其中,i为划分的等级,Pi为第i个等级出现的概率,D为资源数据集;资源a有V个可能的取值,则资源a把资源数据集合D划分为V个数据子集{D1,D2,…,Dv},|Dv|表示数据子集Dv中的数据个数,|D|为总资源数据集的个数。
优选地,信息增益率根据下式(4)所示:
Figure BDA0003126615800000062
其中,
Figure BDA0003126615800000063
Gain_radio(D,a)为资源a划分资源数据集合D的信息增益率,Gain(D,a)为资源a的信息增益,IV(D,a)资为源a在资源数据总集合D中的信息熵,资源a把资源数据集合D划分为V个数据子集{D1,D2,…,Dv},|Dv|表示数据子集Dv中的数据个数,|D|为总资源数据集的个数。
由上述本发明的基于瓶颈资源定位及参数调优的大数据平台测试方法提供的技术方案可以看出,本发明通过计算各类资源的信息增益率来确定瓶颈资源,确定瓶颈资源之后,根据敏感度确定出每类资源的最相关参数,将这些参数值进行组合,自动化配置在大数据平台中抓取相应的负载执行时间,进而选出执行时间最短的参数组合作为最优配置参数组合,可以对整个系统状态以及各类资源利用率进行监控;可以及时定位导致大数据平台出现性能瓶颈的资源,进而采取合理的策略进行调优,避免资源的闲置浪费和过多的盲投放,可以提高对资源的有效安排管理;可以推荐出选定参数的最优参数配置集合,达到自动化、全面化参数调优的目标。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为实施例的基于瓶颈资源定位及参数调优的大数据平台测试方法流程示意图;
图2为性能测试平台构架示意图;
图3为测试脚本流程图
图4为修改参数值shell脚本流程图;
图5为参数自动化调优流程图;
图6为K-means调优效果验证结果示意图;
图7为TeraSort、TestDFSIO负载调优效果验证结果示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作的组。应该理解,这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以具体实施例为例做进一步的解释说明,且并不构成对本发明实施例的限定。
实施例
图1为本实施例的基于瓶颈资源定位及参数调优的大数据平台测试方法流程示意图,图2为性能测试平台构架示意图,参照图2,性能测试平台从整体上主要分为负载测试平台、资源监控平台和参数调优平台三个部分。首先利用负载测试平台选取相关负载对大数据平台进行性能测试,然后利用性能监控平台监控大数据平台的资源利用情况,通过分析负载测试期间测试结果确定瓶颈资源,最后利用参数调优平台针对该负载类型进行参数调优。
参照图1,具体步骤包括:
S1将开源工具与大数据平台集成后对大数据平台进行资源的日常监控。
其中,开源工具为Ganglia,Ganglia工具主要由Gmetad、Gmond、Gweb和RRDTool四个部分组成。
将开源工具与大数据平台集成包括:
安装相关组件:在每一个被监控节点和主控节点安装Ganglia工具及其相关组件;在每一个被监控节点安装Gmond来收集资源使用信息,在主监控节点安装Gmetad来收集gmond节点广播的数据信息的同时还需要安装RRDTool来存储收集的相关数据,安装Gweb以图形的方式显示数据信息;
对Ganglia进行配置:
对于主监控节点修改gmetad.conf文件中的数据源相关的参数,主要包括集群名称、监控服务的地址和端口;对于被监控节点,修改gmond.conf文件,其中该配置文件中的集群名称参数与gmeta.conf保持一致,从而保证主从节点共同服务;
修改大数据平台的相关配置文件:
修改Hadoop的配置文件hadoop-metrics2.properties和Hbase的配置文件hadoop-metrics2.properties,使得Ganglia从细粒度地监控Hadoop和Hbase地相关信息。
最后启动主监控节点和监控节点的相关服务,启动成功后通过Gweb端的访问可以观察到大数据平台运行情况。
负载测试平台的主要工作是通过负载对大数据平台进行性能测试,本实施例中主要通过shell脚本集成TeraSort、TestDFSIO负载,通过输入负载名称和对应的参数值自动化执行对大数据平台的性能测试。不同的测试负载对应不同的参数和参数值,而且利用这些负载对大数据系统进行性能测试时需要输入复杂的命令。针对以上问题,该shell脚本将不同的负载集成在了一起,并简化了命令行的输入,图3为测试脚本流程图。
通过上述集成,实现对硬件资源的日常监控
S2根据日常监控资源计算各资源的信息增益率。
利用C4.5算法构建决策树时,会选用信息增益率最大的属性作为影响最大的属性。因此计算资源的信息增益率,选择信息增益率最大的资源为影响系统性能指标最大的资源。当系统的性能产生瓶颈或者不再满足用户的需求时,该资源被定义为瓶颈资源。
S21将Ganglia工具收集负载执行时间段的各种资源的利用率数据离散化。
示意性地,本实施例将各种资源利用率按照相同的离散化规则划分为5个等级,关于系统性能使用时间满意度来评价,将时间满意度划分为3个等级,划分的等级表分别如下表1和表2所示:
表1资源利用率等级表
Figure BDA0003126615800000101
表2时间满意度等级表
Figure BDA0003126615800000102
S22计算离散化后各个数据集的信息熵以及各个数据集划分的数据子集的信息熵,然后计算每种资源的信息增益;
将数据离散化后,首先计算数据集的信息熵,在此时用信息熵可以衡量系统复杂度的信息量。根据上述对各数据的等级划分可知决策属性有3个等级,记为Yi(i=1,2,3)。假设在整个资源数据集合D中,Yi出现的概率为Pi,则资源数据集D的信息熵如下式(1)所示:
Figure BDA0003126615800000103
然后计算根据几种资源划分后的数据集子集的信息熵,假设资源a有V个可能的取值,则资源a可以把资源数据集合D划分为V个数据子集{D1,D2,…,Dv},其中|Dv|表示数据子集Dv中的数据个数,|D|为总资源数据集的个数。则按资源a划分后的资源数据子集的信息熵如下式(2)所示:
Figure BDA0003126615800000104
最后,计算每种资源的信息增益,信息增益表示样本划分前后信息熵的差值,可以理解为按某种资源划分数据集后导致的期望熵的下降。按资源a划分资源数据集合D的信息增益下式(3)所示:
Gain(D,a)=Ent(D)-Ent(D,a) (3)
信息增益越大,说明该资源对于性能指标的影响越大。本实施例针对的资源数据主要涉及CPU利用率、内存利用率和磁盘IO利用率三种,假设磁盘IO利用率离散化的取值种类多于内存利用率和磁盘IO利用率,那么根据信息增益的公式可知基于信息增益会偏向取值较多的属性,因此在这种情况下磁盘IO的信息增益会偏大,为解决多值偏向的问题,采用信息增益率衡量每个资源对于性能的影响程度。
S43定义资源a在资源数据总集合D中的信息熵IV(D,a),然后在IV(D,a)的基础上定义按资源a划分资源数据集合D的信息增益率。
信息增益率根据下式(4)所示:
Figure BDA0003126615800000111
其中,
Figure BDA0003126615800000112
Gain_radio(D,a)为资源a划分资源数据集合D的信息增益率,Gain(D,a)为资源a的信息增益。
S3根据信息增益率,基于改进信息增益的瓶颈资源定位方法定位出导致大数据平台出现性能瓶颈的瓶颈资源。
基于改进信息增益的瓶颈资源定位方法,包括:在执行测试时不断加大大数据平台负载的压力,同时收集相关资源利用率数据,在大数据平台性能出现瓶颈后,将采集到的资源利用率和时间满意度离散化,计算各个资源的信息增益率,最后将具有最高信息增益率的资源作为该负载的瓶颈资源。
S4根据定位的瓶颈资源,基于敏感度筛选出调优参数集。
S5利用自动化脚本对调优参数集的参数进行修改,得到最优的参数配置。
由选定参数集合、输入参数值列表、自动修改参数脚本和剪枝策略步骤得到。
修改参数值shell脚本流程为,首先需要显示参数列表,之后输入需要修改的参数ID以及对应的参数值,最终定位需要修改的参数配置文件,根据输入的参数值进行修改,具体流程如图4所示。
剪枝策略包括:
1)记录默认参数配置下的负载执行时间T0;
2)当其他参数配置下,如果负载执行时间小于T0,则将时间合对应的参数配置记录到结果文件中;如果负载执行到T0时刻还未执行完毕,不再继续执行测试,对应的负载时间做统一的特殊记录,不再继续等待该负载执行结束,直接进行下一次参数配置下的测试;
3)当所有参数集合都完成配置且测试结束后,从记录测试结果的文件中找出最短执行时间的参数配置,即为选定参数集合中的最优配置。具体流程步骤如图5所示。
本实施例对于所述方法的效果进行了如下验证:
使用K-Means,K-Means算法属于内存密集型应用程序,由于利用该算法对大量数据进行聚类操作时,通过资源监控模块确定内存为此时大数据平台的潜在瓶颈资源,因此通过敏感度选择与内存相关性强的参数进行针对性调优。图6为验证结果示意图,参照图6,在默认参数值配置下的程序执行时间为716s,经本方法调优过后得到的执行时间为504s,比默认配置执行时间缩短了29.61%。该调优方法的有效性以及实用性得到了证明。
利用负载TestDFSIO向大数据平台写入30GB文件时,图7为验证结果示意图,参照图7,在默认参数配置执行时间为373.29s,经过参数调优后的执行时间为229.77s,缩短了38.45%;同理,利用负载TeraSort执行对大数据平台10GB数据进行排序时,在默认参数配置执行时间为428s,经过参数调优后的执行时间为312s,缩短了27.1%。实验结果表明不同参数配置下的优化效果不同,该自动化参数调优工具能够一定程度地优化负载的执行时间,从而有效缓解因不同资源导致的系统性能瓶颈。
综上所述,本方法主要涉及到三个方面:一是能够自动修改配置参数的shell脚本,二是设计了基于敏感度的参数选定策略,为了能够及时通过调整参数缓解不同资源导致的系统瓶颈,选定与此时瓶颈资源相关性比较高的参数进行调优,减少调整其余无效或者低效参数的时间浪费;三是设计了参数自动化调优工具,将自动修改配置文件参数的脚本与集成测试脚本联动在一起,将选定的参数组合排列在一起,根据组合的参数值完成测试,并且将不同配置下的性能指标记录在结果文件中,最后给出选定参数集合中的最优配置推荐。
本领域技术人员应能理解上述输入框的应用类型仅为举例,其他现有的或今后可能出现的输入框应用类型如可适用于本发明实施例,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (9)

1.一种基于瓶颈资源定位及参数调优的大数据平台测试方法,其特征在于,包括:
S1将开源工具与大数据平台集成后对大数据平台进行资源的日常监控;
S2根据日常监控资源计算各资源的信息增益率;
S3根据所述信息增益率,基于改进信息增益的瓶颈资源定位方法定位出导致大数据平台出现性能瓶颈的瓶颈资源;
S4根据定位的瓶颈资源,基于敏感度筛选出调优参数集;
S5利用自动化脚本对调优参数集的参数进行修改,得到最优的参数配置。
2.根据权利要求1所述的方法,其特征在于,所述开源工具为Ganglia。
3.根据权利要求1所述的方法,其特征在于,所述将开源工具与大数据平台集成包括:
安装相关组件:在每一个被监控节点和主控节点安装Ganglia工具及其相关组件;在每一个被监控节点安装Gmond来收集资源使用信息,在主监控节点安装Gmetad来收集gmond节点广播的数据信息的同时还需要安装RRDTool来存储收集的相关数据,安装Gweb以图形的方式显示数据信息;
对Ganglia进行配置:
对于主监控节点修改gmetad.conf文件中的数据源相关的参数,主要包括集群名称、监控服务的地址和端口;对于被监控节点,修改gmond.conf文件,其中该配置文件中的集群名称参数与gmeta.conf保持一致,从而保证主从节点共同服务;
修改大数据平台的相关配置文件:
修改Hadoop的配置文件hadoop-metrics2.properties和Hbase的配置文件hadoop-metrics2.properties,使得Ganglia从细粒度地监控Hadoop和Hbase地相关信息。
4.根据权利要求1所述的方法,其特征在于,所述计算各资源的信息增益率,包括:
S41将Ganglia工具收集负载执行时间段的各种资源的利用率数据离散化;
S42计算离散化后各个数据集的信息熵以及各个数据集划分的数据子集的信息熵,然后计算每种资源的信息增益;
S43定义资源a在资源数据总集合D中的信息熵IV(D,a),然后在IV(D,a)的基础上定义按资源a划分资源数据集合D的信息增益率。
5.根据权利要求1所述的方法,其特征在于,所述基于改进信息增益的瓶颈资源定位方法,包括:在执行测试时不断加大大数据平台负载的压力,同时收集相关资源利用率数据,在大数据平台性能出现瓶颈后,将采集到的资源利用率和时间满意度离散化,计算各个资源的信息增益率,最后将具有最高信息增益率的资源作为该负载的瓶颈资源。
6.根据权利要求1所述的方法,其特征在于,所述S5由选定参数集合、输入参数值列表、自动修改参数脚本和剪枝策略步骤得到。
7.根据权利要求6所述的方法,其特征在于,所述剪枝策略包括:
记录默认参数配置下的负载执行时间T0;
当其他参数配置下,如果负载执行时间小于T0,则将时间合对应的参数配置记录到结果文件中;如果负载执行到T0时刻还未执行完毕,不再继续执行测试,对应的负载时间做统一的特殊记录,不再继续等待该负载执行结束,直接进行下一次参数配置下的测试;
当所有参数集合都完成配置且测试结束后,从记录测试结果的文件中找出最短执行时间的参数配置,即为选定参数集合中的最优配置。
8.根据权利要求4所述的方法,其特征在于,所述各个数据集的信息熵、各个数据集划分的数据子集的信息熵和每种资源的信息增益分别如下式(1)、(2)和(3)所示:
Figure FDA0003126615790000031
Figure FDA0003126615790000032
Gain(D,a)=Ent(D)-Ent(D,a) (3)
其中,i为划分的等级,Pi为第i个等级出现的概率,D为资源数据集;资源a有V个可能的取值,则资源a把资源数据集合D划分为V个数据子集{D1,D2,…,Dv},|Dv|表示数据子集Dv中的数据个数,|D|为总资源数据集的个数。
9.根据权利要求4所述的方法,其特征在于,所述信息增益率根据下式(4)所示:
Figure FDA0003126615790000033
其中,
Figure FDA0003126615790000034
Gain_radio(D,a)为资源a划分资源数据集合D的信息增益率,Gain(D,a)为资源a的信息增益,IV(D,a)资为源a在资源数据总集合D中的信息熵,资源a把资源数据集合D划分为V个数据子集{D1,D2,…,Dv},|Dv|表示数据子集Dv中的数据个数,|D|为总资源数据集的个数。
CN202110692336.9A 2021-06-22 2021-06-22 基于瓶颈资源定位及参数调优的大数据平台测试方法 Pending CN113495840A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110692336.9A CN113495840A (zh) 2021-06-22 2021-06-22 基于瓶颈资源定位及参数调优的大数据平台测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110692336.9A CN113495840A (zh) 2021-06-22 2021-06-22 基于瓶颈资源定位及参数调优的大数据平台测试方法

Publications (1)

Publication Number Publication Date
CN113495840A true CN113495840A (zh) 2021-10-12

Family

ID=77997369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110692336.9A Pending CN113495840A (zh) 2021-06-22 2021-06-22 基于瓶颈资源定位及参数调优的大数据平台测试方法

Country Status (1)

Country Link
CN (1) CN113495840A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929667A (zh) * 2012-10-24 2013-02-13 曙光信息产业(北京)有限公司 一种hadoop集群性能的优化方法
CN105897503A (zh) * 2016-03-30 2016-08-24 广东工业大学 基于资源信息增益的Hadoop集群瓶颈检测算法
CN106533792A (zh) * 2016-12-12 2017-03-22 北京锐安科技有限公司 一种监控和配置资源的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929667A (zh) * 2012-10-24 2013-02-13 曙光信息产业(北京)有限公司 一种hadoop集群性能的优化方法
CN105897503A (zh) * 2016-03-30 2016-08-24 广东工业大学 基于资源信息增益的Hadoop集群瓶颈检测算法
CN106533792A (zh) * 2016-12-12 2017-03-22 北京锐安科技有限公司 一种监控和配置资源的方法及装置

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
JAYMARCO: "Ganglia监控Hadoop及Hbase集群性能实践方法", 《HTTP://BLOG.ITPUB.NET/28833846/VIEWSPACE-2723434/》 *
周世龙等: "Hadoop视角下的Nutch爬行性能优化", 《计算机应用》 *
张巍: "《城市径流有毒污染物的环境行为》", 31 January 2014 *
张志军: "《大数据技术在高校中的应用研究》", 30 September 2017 *
徐江峰等: "基于机器学习的HBase配置参数优化研究", 《计算机科学》 *
李耘书等: "基于微操作的Hadoop参数自动调优方法", 《计算机应用》 *
王春梅等: "Hadoop云计算平台的参数优化算法", 《华中师范大学学报(自然科学版)》 *
王琳等: "高效支持负载聚合的程序资源敏感度获取及分析方法", 《西安交通大学学报》 *
谭造乐等: "基于信息增益的Hadoop瓶颈检测算法", 《电信科学》 *

Similar Documents

Publication Publication Date Title
Hernández et al. Using machine learning to optimize parallelism in big data applications
US9367601B2 (en) Cost-based optimization of configuration parameters and cluster sizing for hadoop
US9635101B2 (en) Proposed storage system solution selection for service level objective management
CN102227121B (zh) 基于机器学习的分布式缓存策略自适应切换方法及系统
Castiglione et al. Exploiting mean field analysis to model performances of big data architectures
US9406029B2 (en) Modeler for predicting storage metrics
US9122739B1 (en) Evaluating proposed storage solutions
US20040243555A1 (en) Methods and systems for optimizing queries through dynamic and autonomous database schema analysis
EP2811792A1 (en) A method for operating a mobile telecommunication device
Bei et al. Configuring in-memory cluster computing using random forest
Kim et al. Efficient distributed selective search
CN114780233A (zh) 基于微服务链路分析和强化学习的调度方法及装置
Kitsos et al. Scalable entity-based summarization of web search results using MapReduce
Al-Sayeh et al. A gray-box modeling methodology for runtime prediction of apache spark jobs
Liu et al. Mr-cof: a genetic mapreduce configuration optimization framework
Mozaffari et al. Feedback control loop design for workload change detection in self-tuning NoSQL wide column stores
Shi et al. Performance models of data parallel DAG workflows for large scale data analytics
CN113495840A (zh) 基于瓶颈资源定位及参数调优的大数据平台测试方法
Yang et al. Improving f2fs performance in mobile devices with adaptive reserved space based on traceback
Li et al. Efficient multi-attribute precedence-based task scheduling for edge computing in geo-distributed cloud environment
Roitman et al. Maintaining dynamic channel profiles on the web
Cao A practical, real-time auto-tuning framework for storage systems
Chen et al. SimCost: cost-effective resource provision prediction and recommendation for spark workloads
Li et al. A method to identify spark important parameters based on machine learning
Elnaffar et al. Is it DSS or OLTP: automatically identifying DBMS workloads

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