一种基于AEP内存的HBase集群性能优化方法及系统与流程

    专利2022-07-08  79


    本发明涉及服务器领域,具体涉及一种基于aep内存的hbase集群性能优化方法及系统。



    背景技术:

    伴随着互联网的发展和疫情的冲击,在线业务、在线数据正以爆炸式的速度急剧增进。传统内存资源已不能满足hbase高速率、低延迟处理数据,以及数据非易失性存储的要求。

    aep(apachepass,傲腾非易失性内存),具有提供持久化大容量内存的特性,它采用3dxpoint技术,读写速度、延迟是dram(dynamicrandomaccessmemory,动态随机存取存储器)和ssd(solidstatedrives,固态硬盘)无法比拟的。aep的使用已越来越多。

    为增加hbase集群可用内存容量,现有技术中常会在hbase集群服务器节点使用aep代替部分普通内存条。但现有技术中在hbase集群服务器节点使用aep代替部分普通内存条,存在以下缺点:

    (1)aep往往被当作甚至是全部被当作普通内存使用,丧失其特有的非易失性、低延迟性,造成资源浪费;

    (2)在hbase高水位高负载下,aep应用直访模式特性和大容量特性未充分利用,hbase集群极限读写性能无法得到有效的提升。

    为此,本发明提供一种基于aep内存的hbase集群性能优化方法及系统,用于解决上述问题。



    技术实现要素:

    针对现有技术的上述不足,本发明提供一种基于aep内存的hbase集群性能优化方法及系统,用于充分发挥aep特有的非易失性、低延迟性、大容量特性,提升hbase集群读写极限性能。

    第一方面,本发明提供一种基于aep内存的hbase集群性能优化方法,包括步骤:

    根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组;

    获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存;

    获取hbase集群的当前内存资源状态;

    依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额;

    依据内存配额,对hbase任务进行分发和执行;

    所述用户自定义的内存刷写规则,包括在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存。

    进一步地,用户自定义的分层聚类原则,包括1级分层聚类原则、2级分层聚类原则、...、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    进一步地,n=2;

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类;

    所述自定义的内存刷写规则,还包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额。

    进一步地,所述hbase集群内存的区分类型包括资源隔离类模式、aep直访模式、aep内存模式、aep内存 dram、dram模式;其中:

    在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类模式的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。

    进一步地,该hbase集群性能优化方法还包括步骤:在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    第二方面,本发明提供一种基于aep内存的hbase集群性能优化系统,包括:

    分层聚类单元,用于根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组;

    集群内存统一管理模块,用于获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存;还用于获取hbase集群的当前内存资源状态;

    内存刷写规则调控模块,用于依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额;所述用户自定义的内存刷写规则,包括在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存;

    hbase任务分发与执行单元,用于依据内存配额,对hbase集群的任务进行分发和执行。

    进一步地,在分层聚类单元中,所述用户自定义的分层聚类原则包括1级分层聚类原则、2级分层聚类原则、..、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    进一步地,n=2;

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类;

    在内存刷写规则调控模块中,所述自定义的内存刷写规则还包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额。

    进一步地,所述hbase集群内存的区分类型包括资源隔离类模式、aep直访模式、aep内存模式、aep内存 dram、dram模式;其中:

    在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类模式的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。

    进一步地,该hbase集群性能优化系统还包括:

    hbase多实例启闭模块,用于在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    本发明的有益效果在于,

    (1)本发明提供的基于aep内存的hbase集群性能优化方法及系统,能够采用分层聚类算法对hbase集群的hbase任务进行聚类,并能够按照分层聚类输出的任务分组为hbase任务进行内存配额,且在对每一个任务分组中的hbase任务进行内存配额时,优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存,一定程度上有助于充分发挥aep特有的非易失性、低延迟性、大容量特性。

    (2)本发明提供的基于aep内存的hbase集群性能优化方法及系统,还能够按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型对各任务分组进行内存配额,且在对任务分组进行内存配额时,能够优先对高优先级热数据的任务分组进行内存配额,一定程度上有助于解决业界高并发高负载下hbase集群任务的稳定性性能问题,成为hbase集群性能的控标点。

    (3)本发明提供的基于aep内存的hbase集群性能优化方法及系统,在hbase集群执行hbase任务时,可依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭,一定程度上有助于充分发挥集群内存资源,提升集群hbase读写极限性能。

    此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

    附图说明

    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

    图1是本发明一个实施例的方法的示意性流程图。

    图2是本发明一个实施例的系统的示意性框图。

    具体实施方式

    为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

    下面对本发明中出现的关键术语进行解释。

    图1是本发明一个实施例的方法的示意性流程图。

    如图1所示,该方法100包括:

    步骤110,根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组。

    可选地,用户自定义的分层聚类原则,可包括1级分层聚类原则、2级分层聚类原则、..、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    相对应地,根据上述用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组,实现方法步骤包括:

    依据第1类聚类基准,对hbase集群的hbase任务进行聚类,得到一组1级聚类分组;

    分别依据第2类聚类基准,对每一个1级聚类分组再次进行聚类,得到一组2级聚类分组;

    依此类推,

    分别依据第n类聚类基准,对每一个n-1级聚类分组中的hbase任务进行聚类,得到一组n级聚类分组,该组n级聚类分组即为所得到的全部的任务分组。

    具体实现时,用户可依据实际情况设置所述n的取值,可依据实际情况设置以上各方面的聚类基准。

    比如在本实施例中,n=2,即用户将hbase任务分层聚类原则设置为两层分层聚类原则,即具有1级分层聚类原则和2级分层聚类原则,则用户自定义的分层聚类原则为:

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类。

    所述hbase任务的aep直访模式、aep内存模式和普通内存模式,对应上述第2类聚类基准。

    用户自定义hbase任务的任务优先级、任务类型和冷热数据类型(冷数据/热数据/数据无要求)的各组合方式中,均包括hbase任务的任务优先级、任务类型和冷热数据类型。

    用户可在hbase集群中创建每个hbase任务时,为所创建的hbase任务设置对应的任务优先级,为所创建的hbase任务设置对应内存刷写的任务类型,并为所创建的hbase任务设置将要刷写的数据的冷热数据类型。

    其中,在本实施例中,所述任务类型包括读、写、扫描和读写混合。具体实现时,也可由本领域技术人员依据实际情况对本实施例中的任务类型的内容进行增加、删除与修改。

    在本实施例中,用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的一组组合(对应第1类聚类基准)为:

    高优先级、读、热数据;

    高优先级、扫描、热数据;

    高优先级、写、冷数据;

    高优先级、读写混合、数据无要求;

    中优先级、读、热数据;

    中优先级、扫描、热数据;

    中优先级、写、冷数据;

    中优先级、读写混合、数据无要求;

    低优先级、读、热数据;

    低优先级、扫描、热数据;

    低优先级、写、冷数据;

    低优先级、读写混合、数据无要求。

    上述组合(高优先级、读、热数据;高优先级、扫描、热数据;高优先级、写、冷数据;高优先级、读写混合、数据无要求;中优先级、读、热数据;中优先级、扫描、热数据;中优先级、写、冷数据;中优先级、读写混合、数据无要求;低优先级、读、热数据;低优先级、扫描、热数据;低优先级、写、冷数据;低优先级、读写混合、数据无要求),依次记为组合1、组合2、组合3、组合4、组合5、组合6、组合7、组合8、组合9、组合10、组合11、组合12。

    具体实现时,上述用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的一组组合,可以由本领域技术人员依据实际情况参照上述示例进行设置。

    在本实施例中,所述根据用户自定义的两层分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组,实现方法包括:

    (1)依据用户自定义的组合1、组合2、组合3、组合4、组合5、组合6、组合7、组合8、组合9、组合10、组合11、组合12,对hbase集群的hbase任务进行聚类,得到一组1级聚类分组(总计12个分组),依次记为1级聚类分组1、1级聚类分组2、1级聚类分组3、...、1级聚类分组12。

    (2)分别依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对1级聚类分组1、1级聚类分组2、1级聚类分组3、...、1级聚类分组12进行聚类,得到一组2级聚类分组;该组2级聚类分组即为所得到的全部的任务分组,包括:

    依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对1级聚类分组1进行聚类得到的所有的分组;

    依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对1级聚类分组2进行聚类得到的所有的分组;

    ...

    依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对1级聚类分组12进行聚类得到的所有的分组。

    本实施例中在采用分层聚类算法对hbase集群的hbase任务进行聚类之前,可对各聚类基准以及对各hbase任务以及对各hbase任务的任务优先级、任务类型和冷热数据类型采用数字编码进行标识。

    本实施例中的分层聚类,采用机器学习算法中的分层聚类算法实现,对集群中所有的hbase任务按照以上两级分层聚类原则(1级分层聚类原则和2级分层聚类原则)中用户自定义的所有聚类基准类进行层次分解,继而根据层次分解的结果梳理出hbase任务优先级排序、任务中app直访模式支持情况、业务热点数据的分布信息,为hbase集群内存差异性配额调度提供依据。

    步骤120,获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存。

    具体地,该步骤120实现时,使用hdmetricsapi接口分别获取hbase集群(具体为hbaseregionserver节点)的可用内存,并将信息存放于hbase集群的zookeeper注册表中。使用zookeeper为hbase集群提供一致性协调服务,保障hbase各节点内存信息的准确性和实时同步的高可靠性。

    步骤130,获取hbase集群的当前内存资源状态。

    具体地,获取到的当前内存资源状态,包括步骤120中获取到的hbase集群的可用内存的当前内存资源状态,比如可用内存的内存剩余量等。

    步骤140,依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额。

    其中,所述自定义的内存刷写规则,包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额;

    在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存。

    在本实施例中,将hbase集群中内存调度的差异性(即hbase集群内存的区分类型)分为5类:资源隔离类(对应资源隔离类模式)、aep直访模式、aep内存模式、aep内存 dram、dram模式。

    其中资源隔离类主要是为了保障高并发高负载下,高优先级热数据任务高效的性能;aep直访模式主要是用于高速缓存、低延迟、持久性要求高的任务;aep内存主要用于高速缓存,对非易失性没有要求的任务;aep内存 dram和dram主要是为了对性能没有什么要求的任务。

    其中,在本实施例中,所涉及的高优先级的hbase任务,要求高速缓存、低延迟并且持久性要求高;所涉及的中优先级的hbase任务,要求高速缓存,对非易失性没有要求;所涉及的低优先级的hbase任务,对性能(包括缓存性能、延迟性能、数据持久性能和非易失性能)没有什么要求。

    在本实施例中,在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。其中,所述对高优先级热数据的任务分组进行内存配额,即逐个对高优先级热数据的任务分组中的hbase任务进行资源隔离类的内存配额,并且对每一个hbase任务:设置资源隔离类配额为其所需最低内存的1.25倍。

    步骤150,依据内存配额,对hbase任务进行分发和执行。

    具体地,依据内存配额,按内存配额的顺序,对hbase任务进行分发和执行。

    可选地,作为本发明的一个实施例,本方法100还包括步骤:在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    比如在对hbase任务内存配额分完后,集群节点有较多剩余内存(对“较多剩余内存”的判定可由本领域技术人员依据实际情况进行设定),则自动启动多实例;若分配后无较多剩余内存(对“无较多剩余内存”的判定可由本领域技术人员依据实际情况进行设定),则不启动多实例。

    比如在对hbase任务内存进行配额时,可实时检测hbase集群的内存,并在检测发现内存不足时,检测是否存在多实例,若存在,则自动控制多实例关闭,并在配额完成且存在剩余内存时自动控制所关闭的多实例启动。

    如图2所示,本发明提供的系统200,包括:

    分层聚类单元201,用于根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组;

    集群内存统一管理模块202,用于获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存;还用于获取hbase集群的当前内存资源状态;

    内存刷写规则调控模块203,用于依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额;所述用户自定义的内存刷写规则,包括在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存;

    hbase任务分发与执行单元204,用于依据内存配额,对hbase集群的任务进行分发和执行。

    可选地,作为本发明的一个实施例,在分层聚类单元中,所述用户自定义的分层聚类原则包括1级分层聚类原则、2级分层聚类原则、..、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    可选地,作为本发明的一个实施例,所述n=2;

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类。

    可选地,作为本发明的一个实施例,在内存刷写规则调控模块203中,所述自定义的内存刷写规则,还包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额。

    可选地,作为本发明的一个实施例,所述hbase集群内存的区分类型包括资源隔离类模式、aep直访模式、aep内存模式、aep内存 dram、dram模式;其中:在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类模式的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。

    可选地,作为本发明的一个实施例,该系统200还包括:

    hbase多实例启闭模块,用于在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。

    尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。


    技术特征:

    1.一种基于aep内存的hbase集群性能优化方法,其特征在于,包括步骤:

    根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组;

    获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存;

    获取hbase集群的当前内存资源状态;

    依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额;

    依据内存配额,对hbase任务进行分发和执行;

    所述用户自定义的内存刷写规则,包括在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存。

    2.根据权利要求1所述的基于aep内存的hbase集群性能优化方法,其特征在于,用户自定义的分层聚类原则,包括1级分层聚类原则、2级分层聚类原则、...、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    3.根据权利要求2所述的基于aep内存的hbase集群性能优化方法,其特征在于,n=2;

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类;

    所述自定义的内存刷写规则,还包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额。

    4.根据权利要求3所述的基于aep内存的hbase集群性能优化方法,其特征在于,所述hbase集群内存的区分类型包括资源隔离类模式、aep直访模式、aep内存模式、aep内存 dram、dram模式;其中:

    在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类模式的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。

    5.根据权利要求1-4中任一项所述的基于aep内存的hbase集群性能优化方法,其特征在于,该hbase集群性能优化方法还包括步骤:在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    6.一种基于aep内存的hbase集群性能优化系统,其特征在于,包括:

    分层聚类单元,用于根据用户自定义的分层聚类原则,采用分层聚类算法对hbase集群的hbase任务进行聚类,得到一组任务分组;

    集群内存统一管理模块,用于获取hbase集群的可用内存,hbase集群的内存包括aep内存和普通内存;还用于获取hbase集群的当前内存资源状态;

    内存刷写规则调控模块,用于依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的hbase任务进行内存配额;所述用户自定义的内存刷写规则,包括在对每一个任务分组中的hbase任务进行内存配额时:对分组中的hbase任务逐个进行内存配额,并优先为任务分组内支持aep的hbase任务分配足够的内存且优先分配aep内存,之后为不支持aep的hbase任务分配内存且优先分配普通内存;

    hbase任务分发与执行单元,用于依据内存配额,对hbase集群的任务进行分发和执行。

    7.根据权利要求6所述的基于aep内存的hbase集群性能优化系统,其特征在于,在分层聚类单元中,所述用户自定义的分层聚类原则包括1级分层聚类原则、2级分层聚类原则、..、n级分层聚类原则,n为正整数且n≥2,其中:

    1级分层聚类原则,是依据用户自定义的第1类聚类基准进行聚类;

    2级分层聚类原则,是依据用户自定义的第2类聚类基准进行聚类;

    依此类推,

    n级分层聚类原则是依据用户自定义的第n类聚类基准进行聚类。

    8.根据权利要求7所述的基于aep内存的hbase集群性能优化系统,其特征在于,n=2;

    1级分层聚类原则,是依据用户自定义的hbase任务的任务优先级、任务类型和冷热数据类型的组合方式进行聚类;

    2级分层聚类原则,是依据hbase任务的aep直访模式、aep内存模式和普通内存模式,对每一个1级聚类分组分别进行聚类;

    在内存刷写规则调控模块中,所述自定义的内存刷写规则还包括:

    按照任务优先级递减并且刷写数据由热数据到冷数据的先后顺序,依据hbase集群的内存区分类型,对各任务分组进行内存配额;

    在对任务分组进行内存配额时,优先对高优先级热数据的任务分组进行内存配额。

    9.根据权利要求8所述的基于aep内存的hbase集群性能优化系统,其特征在于,所述hbase集群内存的区分类型包括资源隔离类模式、aep直访模式、aep内存模式、aep内存 dram、dram模式;其中:

    在对高优先级热数据的任务分组进行内存配额时,将高优先级热数据的任务分组进行资源隔离类模式的内存配额,并可受到保护,不会受到其他任务分组中hbase任务的抢占。

    10.根据权利要求6-9中任一项所述的基于aep内存的hbase集群性能优化系统,其特征在于,该hbase集群性能优化系统还包括:

    hbase多实例启闭模块,用于在hbase集群执行hbase任务时,依据所述内存配额和所述当前内存资源状态,自动控制集群hbase多实例的自动启动与关闭。

    技术总结
    本发明提供一种基于AEP内存的HBase集群性能优化方法及系统,均能够:采用分层聚类算法对Hbase集群的HBase任务进行聚类,得到一组任务分组;获取HBase集群的可用内存;获取HBase集群的当前内存资源状态;依据用户自定义的内存刷写规则和获取的当前内存资源状态,按照分层聚类输出的任务分组,为每一个任务分组中的HBase任务进行内存配额;依据内存配额对HBase任务进行分发和执行;所述用户自定义的内存刷写规则,包括在对每一个任务分组中的HBase任务进行内存配额时:对分组中的HBase任务逐个进行内存配额,并优先为任务分组内支持AEP的HBase任务分配足够的内存且优先分配AEP内存,之后为不支持AEP的HBase任务分配内存且优先分配普通内存。本发明用于提升HBase集群性能。

    技术研发人员:申晓青
    受保护的技术使用者:苏州浪潮智能科技有限公司
    技术研发日:2020.11.13
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-22963.html

    最新回复(0)