一种自适应资源分配方法及装置制造方法及图纸

技术编号:15749809 阅读:152 留言:0更新日期:2017-07-03 15:11
本申请提供了一种自适应资源分配方法及装置。方法包括:统计一个周期内每个业务语句的请求时间、实际执行时间和响应时间;根据请求时间,确定每个业务语句所属的一个周期的不同时间段;根据每个时间段内每个业务语句的实际执行时间和响应时间,确定每个业务语句的类型,并调整下一个周期的同一时间段内不同类型业务语句的资源配额。通过本申请,系统能够根据运行期间接收到的业务请求类型及不同类型业务请求的负载情况,自适应地调整不同时间段内不同类型业务的资源配比,以达到既保证核心业务(例如交易型业务)能够稳定运行,又能充分利用系统资源的目的。

【技术实现步骤摘要】
一种自适应资源分配方法及装置
本申请属于信息处理
,尤其涉及一种自适应资源分配方法及装置。
技术介绍
在线交易库,一般指的是存放在线交易OLTP(OnlineTransactionProcessing,联机事务处理)数据的数据库,该在线交易库提供的是在线交易服务,对请求的响应时间十分敏感。数据仓库,一般指的是以提供在线数据分析OLAP(OnlineAnalyticalProcessing,联机分析处理)和商业智能(BI,BusinessIntelligence)功能为目的数据库,相对于在线交易库来说,数据仓库一次请求访问的数据量很大,对响应时间不是特别敏感。数据库系统通常用来满足两个大的方面的业务需求:1、满足关键的在线交易型业务的需求,需要支持完整的具备ACID(原子性Atomicity、一致性Consistency、隔离性Isolation、持久性Durability)特性的事务、具有非常短的请求响应时间和较大的吞吐率;2、满足数据挖掘和商务智能等分析型业务需求,分析型业务对事务的要求比较弱,但是单个请求访问的数据量很大(百千万行、上亿行),语句复杂,执行单个请求消耗的资源多,响应时间也相对较长,需要几分钟到若干小时不等。由于数据仓库中的数据通常定期从在线交易库中导入,所以数据仓库的时效性比在线交易库要差一些。当前在大多数企业中,上述两个数据库系统(在线交易库和数据仓库)是独立的,通过ETL系统和工具,定期将在线交易库中的数据导入到数据仓库中进行分析。随着业务发展的要求,越来越多的用户希望在一个数据库系统能够同时支持在线交易业务和分析型业务,减少数据的搬迁和冗余的存储,同时能够实时分析最新的交易数据。在线交易库和数据仓库的融合带来了一个问题,由于系统资源的总量有限而分析型查询请求又总是会消耗大量的系统资源,对在线交易应用产生很大的影响,例如:引起对延时十分敏感的在线交易事务超时或者积压,对核心业务造成损失。为了解决这个问题,部分数据库厂商也提供了解决方案。一个被广泛采用的方案是进行用户资源管理,为不同的用户静态设置不用的资源池,该资源池包括CPU(CentralProcessingUnit,中央处理器)、内存、IOPS(Input/OutputOperationsPerSecond,每秒读写操作次数)等资源。在一个部署混合业务的数据库系统中,为交易型业务和分析型业务各自使用不同的用户,配置不同的资源池。通过这种方案,在实现得比较好的系统中,这两类业务就能基本做到资源使用互相不影响。上述静态预配置资源方案虽然能够部分解决不同类型业务相互影响的问题,但是缺点也很明显。第一,管理员无法合理地在不同业务间进行资源分配。但是,资源合理分配需要对两类业务执行时的资源消耗有准确的度量。由于业务的复杂和多变,对资源的消耗通常不是一个稳定的值,而是一个随着时间周期不断变化的值,一个浅显的例子就是每类业务都有高峰期和低谷期,以业务高峰时的值来确定该类业务的分配和以低谷时的值来确定该类业务的分配显然会是两个截然不同的值。第二,预置的资源配额也不利于资源的充分利用,以在线交易型业务和分析型业务为例,这两类业务有很明显的时间周期特性,除了促销等特殊时点外,在线交易型业务的高峰期通常在白天,深夜通常是低谷期;但分析型业务往往是做周期性统计的,例如日结或者月结,高峰期大多数在夜间。因此,多数情况下无法事先确定在线交易型业务和分析型业务的实际资源使用情况,并且这两种类型的业务都会有高峰期和低谷期,且峰谷期对资源的需求截然不同,对系统管理员来说,很难做到预先设定合理的资源配额。针对传统的静态预配置资源方案无法根据资源使用情况实时调整资源配额的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请目的在于提供一种自适应资源分配方法及装置,可以自适应地调整不同时间段内的不同类型业务的资源配额,以达到既保证核心业务能够稳定运行,又能充分利用系统资源的目的。本申请提供一种自适应资源分配方法及装置是这样实现的:一种自适应资源分配方法,所述方法包括:统计一个周期内每个业务语句的请求时间、实际执行时间和响应时间;根据所述请求时间,确定每个业务语句所属的所述一个周期的不同时间段;根据每个时间段内每个业务语句的所述实际执行时间和所述响应时间,确定每个业务语句的类型,并调整下一个周期的同一时间段内不同类型业务语句的资源配额。一种自适应资源分配装置,所述装置包括:统计单元,用于统计一个周期内每个业务语句的请求时间、实际执行时间和响应时间;划分单元,用于根据所述请求时间,确定每个业务语句所属的所述一个周期的不同时间段;类型确定单元,用于根据每个时间段内每个业务语句的所述实际执行时间和所述响应时间,确定每个业务语句的类型;调整单元,用于调整下一个周期的同一时间段内不同类型业务语句的资源配额。通过本申请提供的自适应资源分配方法及装置,系统能够根据运行期间接收到的业务请求类型及不同类型业务请求的负载情况,自适应地调整不同时间段内不同类型业务的资源配比,以达到既保证核心业务(例如交易型业务)能够稳定运行,又能充分利用系统资源的目的。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请提出的自适应资源分配方法的一种实施例的方法流程图;图2是本申请所述自适应资源分配装置一种实施例的结构示意图;图3是本申请所述类型确定单元一种实施例的结构示意图;图4是本申请所述调整单元一种实施例的结构示意图;图5是应用本申请所述自适应资源分配方案的系统的结构示意图。具体实施方式为了使本
的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。关于本文中所使用的“第一”、“第二”、…等,并非特别指称次序或顺位的意思,也非用以限定本专利技术,其仅为了区别以相同技术用语描述的元件或操作。对于交易型业务和分析型业务的资源分配,由于多数情况下无法事先确定二者的实际资源使用情况,因此系统管理员很难做到预先设定合理的资源配额。在系统实际运作过程中,交易型业务和分析型业务有较好的时间周期互补性,相对于静态预配置资源分配方案,更佳的方案是系统能够根据业务的周期性动态调整资源分配,在交易型业务的高峰期,需要将资源更多地配置给交易型业务,限制分析型业务使用的资源总量;在交易型业务的低谷期,可以将资源更多地配置给分析型业务,有利于充分利用资源,快速完成分析任务,拿到供决策使用的分析结果。基于此,本申请提供了一种自适应资源分配方法及装置。下面结合附图对本申请所述的自适应资源分配方法及装置进行详细的说明。图1是本申请提出的自适应资源分配方法的一种实施例的方法流程图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结本文档来自技高网
...
一种自适应资源分配方法及装置

【技术保护点】
一种自适应资源分配方法,其特征在于,所述方法包括:统计一个周期内每个业务语句的请求时间、实际执行时间和响应时间;根据所述请求时间,确定每个业务语句所属的所述一个周期的不同时间段;根据每个时间段内每个业务语句的所述实际执行时间和所述响应时间,确定每个业务语句的类型,并调整下一个周期的同一时间段内不同类型业务语句的资源配额。

【技术特征摘要】
1.一种自适应资源分配方法,其特征在于,所述方法包括:统计一个周期内每个业务语句的请求时间、实际执行时间和响应时间;根据所述请求时间,确定每个业务语句所属的所述一个周期的不同时间段;根据每个时间段内每个业务语句的所述实际执行时间和所述响应时间,确定每个业务语句的类型,并调整下一个周期的同一时间段内不同类型业务语句的资源配额。2.根据权利要求1所述的方法,其特征在于,业务语句的类型包括:交易型业务语句和分析型业务语句。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:设置执行时间阈值;根据每个时间段内每个业务语句的所述实际执行时间,确定每个业务语句的类型,包括:判断每个时间段内每个业务语句的所述实际执行时间是否大于所述执行时间阈值;如果是,则判定该业务语句是分析型业务语句;如果否,则判定该业务语句是交易型业务语句。4.根据权利要求3所述的方法,其特征在于,根据每个时间段内每个业务语句的所述实际执行时间和所述响应时间,调整下一个周期的同一时间段内不同类型业务语句的资源配额,包括:将每个时间段内所有交易型业务语句的所述实际执行时间求和,得到每个时间段内的第一实际执行时间和;将每个时间段内所有交易型业务语句的所述响应时间求和,得到每个时间段内的第一响应时间和;将每个时间段内所有分析型业务语句的所述实际执行时间求和,得到每个时间段内的第二实际执行时间和;将每个时间段内所有分析型业务语句的所述响应时间求和,得到每个时间段内的第二响应时间和;根据所述第一实际执行时间和、所述第一响应时间和、所述第二实际执行时间和、所述第二响应时间和,调整下一个周期的同一时间段内所述交易型业务语句和所述分析型业务语句的资源配额。5.根据权利要求4所述的方法,其特征在于,根据所述第一实际执行时间和、所述第一响应时间和、所述第二实际执行时间和、所述第二响应时间和,调整下一个周期的同一时间段内所述交易型业务语句和所述分析型业务语句的资源配额,包括:判断所述第一响应时间和是否大于所述第一实际执行时间和,如果是,则判定所述交易型业务语句的资源配额过小,将所述分析型业务语句的资源配额减少;判断所述第二响应时间和是否大于所述第二实际执行时间和,如果是,则判定所述分析型业务语句的资源配额过小,将所述交易型业务语句的资源配额减少。6.根据权利要求5所述的方法,其特征在于,将所述分析型业务语句的资源配额减少,包括:将所述分析型业务语句的资源配额降低为预设的分析型业务语句的最低资源配额;将所述交易型业务语句的资源配额减少,包括:将所述交易型业务语句的资源配额降低为大于或等于以下二者的最大值:预设的交易型业务语句的最低资源配额、所述第一实际执行时间和实际消耗的资源配额。7.根据权利要求2所述的方法,其特征在于,所述方法还包括:对所述交易型业务语句和所述分析型业务语句进行优先级排序;其中,所述交易型业务语句的优先级高于所述分析型业务语句;在特定场景下,如果预设时间内所述交易型业务语句的请求量超出阈值,则将所述分析型业务语句的资源配额降为零,直至所述交易型业务语句的请求量低于所述阈值。8.根据权利要求2所述的方法,其特征在于,所述方法还包括:对所述交易型业务语句和所述分析型业务语句进行优先级排序;在系统资源低于资源阈值时,优先为优先级高的业务语句分配资源配额,和/或,将优先级低的业务语句的资源配额降为零。9.根据权利要求1所述的方法,其特征在于,所述一个周期是一天,一个时间段是一个小时。10.一种自适应资源分配装置,其特征在于,所...

【专利技术属性】
技术研发人员:蒋志勇阳振坤
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1