CN116954863A - 数据库调度方法、装置、设备及存储介质 - Google Patents
数据库调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116954863A CN116954863A CN202310944807.XA CN202310944807A CN116954863A CN 116954863 A CN116954863 A CN 116954863A CN 202310944807 A CN202310944807 A CN 202310944807A CN 116954863 A CN116954863 A CN 116954863A
- Authority
- CN
- China
- Prior art keywords
- database
- instance
- resource pool
- scheduling
- instances
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000004891 communication Methods 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000002159 abnormal effect Effects 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 3
- 230000003362 replicative effect Effects 0.000 claims description 2
- 238000013508 migration Methods 0.000 description 9
- 230000005012 migration Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 235000019633 pungent taste Nutrition 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据库调度方法、装置、设备及存储介质。云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个所述资源池部署有至少一个数据库的一个或多个实例;在所述数据库具有多个实例时,多个所述实例部署在同一资源池或不同资源池中,所述方法应用于调度系统,包括:接收目标终端针对第一数据库的访问请求,根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例。调用所述目标实例,对所述访问请求进行处理,得到访问结果,并输出所述访问结果。本申请的方法,减少多个资源池负载不均衡的情况,提升多个资源池的资源利用率。
Description
技术领域
本申请涉及数据库领域,尤其涉及一种数据库调度方法、装置、设备及存储介质。
背景技术
随着数据库技术的发展,目前存在多种数据库的类型,例如云数据库、物理数据库、备份数据库等。对于一个数据库,可能存在多个数据库实例,这些数据库实例建立在资源池上,该资源池为数据库实例提供资源。随着数据库实例中包括的业务数据的数据量的日益增长,数据库实例的调度问题的关注度也逐渐提升。然而,目前对于数据库实例的调度只支持对单个区域内的单个资源池的调度,存在数据库实例调度效果较差的问题。
因此,如何实现跨区域的多资源池数据库实例调度,提升数据库实例调度效果是亟需解决的问题。
发明内容
本申请提供一种数据库调度方法、装置、设备及存储介质,用以解决现有技术中如何实现跨区域的多资源池数据库实例调度,提升数据库实例调度效果的问题。
第一方面,本申请提供一种数据库调度方法,云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个所述资源池部署有至少一个数据库的一个或多个实例;在所述数据库具有多个实例时,多个所述实例部署在同一资源池或不同资源池中,所述方法应用于调度系统,包括:
接收目标终端针对第一数据库的访问请求;
根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例;
调用所述目标实例,对所述访问请求进行处理,得到访问结果;
输出所述访问结果。
可选的,所述根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例,包括:
根据所述访问请求的访问类型、部署有所述第一数据库的实例的资源池的负载情况,以及,所述目标终端所在的区域,从所述第一数据库的实例中确定目标实例。
可选的,所述方法还包括:
获取数据库的实例的调度策略;所述调度策略包括下述至少一项:基于访问量的调度策略、基于业务部署需求的调度策略、基于业务使用需求的调度策略;
根据所述数据库的实例的调度策略,对所述数据库的实例进行调整。
可选的,所述根据所述数据库的实例的调度策略,对所述数据库的实例进行调整,包括:
监控所述资源池的资源使用情况;
根据所述资源池的资源使用情况,以及,所述数据库的实例的调度策略,均衡所述资源池上部署的数据库的实例。
可选的,所述根据所述数据库的实例的调度策略,对所述数据库的实例进行调整,包括:
监控所述资源池的运行状态;
在所述资源池的运行状态异常时,根据所述数据库的实例的调度策略,将其上部署的数据库的实例迁移至其他资源池上。
可选的,所述方法还包括:
接收第二数据库的实例的创建请求;
根据所述第二数据库的实例的调度策略,以及,各所述资源池的资源使用情况,从所述资源池中确定目标资源池;
在所述目标资源池上部署所述第二数据库的实例。
可选的,所述在所述目标资源池上部署所述第二数据库的实例,包括:
异步复制所述第二数据库的实例的主副本;
将复制的所述第二数据库的实例的从副本部署在所述目标资源池上。
第二方面,本申请提供一种数据库调度装置,云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个所述资源池部署有至少一个数据库的一个或多个实例;在所述数据库具有多个实例时,多个所述实例部署在同一资源池或不同资源池中,所述装置应用于调度系统,包括:操作模块、管理模块、调度模块、数据安全传输模块;
操作模块,用于接收目标终端针对第一数据库的访问请求;
管理模块,用于根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例;
调度模块,用于调用所述目标实例,对所述访问请求进行处理,得到访问结果;
数据安全传输模块,用于输出所述访问结果。
第三方面,本申请提供一种电子设备,包括:处理器、通信接口,以及存储器;所述处理器分别与所述通信接口和所述存储器通信连接;
所述存储器存储计算机执行指令;
所述通信接口与外部设备进行通信交互;
所述处理器执行所述存储器存储的计算机执行指令,以实现如方面中任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如方面中任一项所述的数据库调度方法。
第五方面,本申请提供一种计算机程序产品,所述计算机程序产品被处理器执行时用于实现如方面中任一项所述的数据库调度方法。
本申请提供的数据库调度方法、装置、设备及存储介质,通过接收目标终端针对第一数据库的访问请求,根据访问请求的访问类型,以及,部署有第一数据库的实例的资源池的负载情况,从该第一数据库的实例中确定目标实例。调用目标实例,对访问请求进行处理,得到访问结果并输出该访问结果,以在部署了第一数据库的实例的多个区域的资源池中,确定更适合处理该访问请求的目标实例,从而减少多个资源池负载不均衡的情况,提升多个资源池的资源利用率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种云计算平台的结构示意图;
图2为本申请实施例提供的一种数据库调度方法的流程示意图;
图3为本申请实施例提供的另一种数据库调度方法的流程示意图;
图4为本申请实施例提供的又一种数据库调度方法的流程示意图;
图5为本申请实施例提供的一种数据库调度的结构示意图;
图6为本申请实施例提供的一种数据库调度装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
为了便于理解,首先对目前的数据库实例调度方法进行介绍。本申请所说的数据库可以是Oracle数据库、ACCESS数据库、SQL数据库、MySQL数据库等任意一种数据库,本申请对此不作限制。
资源池是基于物理主机的计算资源进行划分的,对于物理主机或物理主机集群所在的不同区域,对应不同的资源池。目前,在同一个资源池上,可以部署一个或多个数据库实例,以供用户实现数据库的使用需求。每一个数据库实例在该资源池内占用一部分的资源量,且每个数据库实例所占用的资源是与其他数据库实例所占用的资源之间是相互隔离的。目前的数据库实例调度方案会在存在负载较大的数据库实例时,为该数据库实例调整其所占用的资源量,或者将该数据库实例迁移至该资源池中能够满足该数据库实例资源需求量的计算资源分区上。此外,若该资源池中还存在该数据库实例的备用数据库实例、或者副本数据库实例,数据库实例调度方法还可以根据该数据库实例的访问负载,确定是否需要将该数据库实例的访问需求调度至其他能够实现该访问需求的数据库实例,或该数据库实例的备用数据库实例上,从而减轻该数据库的访问负载。
然而,目前的数据库实例调度方案只支持针对单个资源池中的多个数据库实例进行调度和分配,当存在多个资源池时,则需要为每个资源池提供管理系统,对每个资源池进行管理和运维。当资源池越多时,其操作成本也会相应增加。此外,当存在多个资源池时,目前针对单个资源池的数据库实例调度方案无法使多个资源池之间产生有效的协同,往往会出现多个资源池负载不均衡的情况,导致资源利用率较低的问题。
有鉴于此,本申请提供了一种数据库调度方法,通过调度系统对分布在不同区域的资源池上的数据库实例进行调度,根据不同区域的资源池的负载情况和业务需求的区域特征,进行跨区域的数据库实例的调度,从而减少多个资源池负载不均衡的情况,提升多个资源池的资源利用率。
图1为本申请实施例提供的一种云计算平台的结构示意图。如图1所示,该云计算平台可以包括:调度系统,以及,至少两个分布在不同区域的资源池,每个资源池部署有至少一个数据库的一个或多个实例。在该数据库具有多个实例时,多个实例部署在同一资源池或不同资源池中。该云计算平台例如可以是OpenStack云计算平台。示例性的,如图1所示,对于数据库1的实例,其分别部署在资源池1和资源池2上,该资源池1和资源池2分别分布在不同的区域1和区域2上。在资源池1中部署了两个该数据库1的实例(即数据库1实例1,数据库1实例2)。
其中,该调度系统用于管理该云计算平台下的所有数据库实例,根据实时的数据库访问需求、资源池使用情况、业务需求的区域特征等因素,动态分配和调度数据库实例,以保证数据库性能、降低数据库成本。该调度系统还用于根据数据库访问的优先级和业务需求的区域特征,将数据库访问请求分配至访问效率更优、或者访问延迟更低的数据库实例。其中,资源池的使用情况可以是每个资源池主动周期性采集并上报的,上报的数据可以包括该资源池的中央处理器(Central Processing Unit,CPU),内存,磁盘,网络等资源的总量和已使用量,以及每个数据库的访问量,访问延迟,数据吞吐量,错误率等信息。该资源池的使用情况还可以是该调度系统周期性从资源池中采集的,从而监控该资源池的使用情况、数据库实例的可用性等。在该调度系统调度该云计算平台下的资源池时,针对其所使用的指令、消息等数据的传输,还可以选择传输策略和传输通道,以保证数据的安全传输。
本申请提供的数据库调度方法的执行主体可以是部署了图1中所说的调度系统的终端设备,或者是该终端设备的处理芯片,还可以是实现该数据库调度方法的软件或程序代码。当执行主体为部署了该调度系统的终端设备时,该终端设备例如可以是具备计算功能的电脑、手机等计算设备,该计算设备上可以部署有运行该数据库调度方法的软件或程序代码,通过该软件或程序代码对该云计算平台中的数据库实例进行调度。
下面,在图1所示的云计算平台下,以执行主体为实现该方法的调度系统所在的终端设备为例,通过具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例提供的一种数据库调度方法的流程示意图。如图2所示,该方法可以包括:
S201、接收目标终端针对第一数据库的访问请求。
其中,该第一数据库具备至少两个实例,该第一数据库的实例部署在同一个资源池或不同的资源池中。该目标终端为该第一数据库的用户的终端设备,例如可以是电脑、手机、平板电脑等。该目标终端的访问请求可以包括读取、修改、写入、删除该第一数据库中的数据等操作请求。该访问请求可以通过该调度系统与该目标终端之间的通信连接进行传输。该访问请求中可以包括用户的标识、业务标识等,该用户标识用于标识该用户的身份,该业务标识用于标识该访问请求对应的业务数据。
S202、根据访问请求的访问类型,以及,部署有第一数据库的实例的资源池的负载情况,从该第一数据库的实例中确定目标实例。
其中,该访问类型可以包括该访问请求的热度类型、该访问请求的业务类型等。该热度类型可以根据访问请求的访问量划分为高热度类型、中热度类型、低热度类型等;该访问请求的业务类型可以表征该业务类型所在的实例,或者该业务类型的推荐实例,或者该业务类型需要避开的特定实例等。
该第一数据库的实例的资源池的负载情况可以包括访问量的负载情况、资源负载情况等。访问量越大时,访问量的负载越高,资源池中剩余空闲资源越少时,资源负载越高。
一种可能的实现方式,当访问请求的访问类型为该访问请求的热度类型时,可以根据该热度类型,以及,部署有第一数据库的实例的资源池的访问量的负载情况,从该第一数据库的实例中确定目标实例。例如当该访问请求的热度类型为高,则需要根据部署有第一数据库的实例的资源池的访问量的负载情况中,选择访问量负载较低区域的资源池中的实例作为目标实例,以减轻访问量负载较高的资源池的访问量负载压力。
当访问请求的访问类型为该访问请求的业务类型时,可以根据该业务类型缩小该访问请求的目标实例的选择范围。例如,该业务类型指示了具体包涵盖业务类型的业务数据的区域范围,则可以排除该区域以外的其他区域的资源池上的第一数据库的实例;或者是调度系统根据该业务类型分析出该业务类型的反亲和需求,则排除具备反亲和业务数据的区域的资源池上的第一数据库的实例。在缩小目标实例的选择范围后,进一步通过部署有第一数据库的实例的资源池的负载情况,选择负载较低的资源池上的实例作为目标实例。例如可以是选择当前负载最低的资源池上的实例作为目标实例,或者选择负载情况低于预设阈值的任意资源池上的实例作为目标实例等。
另一种可能的实现方式,进一步考虑目标终端所在的区域,从该第一数据库的实例中确定目标实例。
根据该访问请求的访问类型、部署有该第一数据库的实例的资源池的负载情况,以及,该目标终端所在的区域,从该第一数据库的实例中确定目标实例。其中,该目标终端所在的区域的信息可以携带在该访问请求中,或者是调度系统在接收该访问请求时,根据该目标终端的互联网协议地址(Internet Protocol Address,IP)确定该目标终端所在的区域。在上一种实现方式下,进一步根据该目标终端所在的区域,确定与该目标终端所在区域邻近的分布了该第一数据库所在的资源池的区域,将预设距离阈值内的区域的资源池上的该第一数据库的实例作为目标实例,例如可以是将距离最近的区域的资源池上的该第一数据库的实例作为目标实例。
S203、调用目标实例,对访问请求进行处理,得到访问结果。
调度系统从该目标实例所在的资源池中调用该目标实例,并将该访问请求调度至该目标实例中,该目标实例根据该访问请求中的包括的具体操作,对该目标实例中的数据进行处理,并输出该访问结果。示例性的,该访问请求用于读取该目标实例中的特定业务数据,则该访问结果从该目标实例中获取的该特定业务数据。
S204、输出访问结果。
该访问结果可以是直接输出至用户的目标终端上,也可以是根据实际需求,输出至用户指定的其他终端设备上等,本申请对于该输出方式不做限制。
本申请实施例提供的方法,通过接收目标终端针对第一数据库的访问请求,根据访问请求的访问类型,以及,部署有第一数据库的实例的资源池的负载情况,从该第一数据库的实例中确定目标实例。调用目标实例,对访问请求进行处理,得到访问结果并输出该访问结果,以在部署了第一数据库的实例的多个区域的资源池中,确定更适合处理该访问请求的目标实例,从而减少多个资源池负载不均衡的情况,提升多个资源池的资源利用率。
该调度系统除了调度针对数据库的访问请求外,还可以对该数据库的实例所在的资源池进行调度。图3为本申请实施例提供的另一种数据库调度方法的流程示意图。如图3所示,该方法还可以包括:
S301、获取数据库的实例的调度策略。
其中,该调度策略包括下述至少一项:基于访问量的调度策略、基于业务部署需求的调度策略、基于业务使用需求的调度策略。
该基于访问量的调度策略可以基于每个数据库的实例的访问量,将该数据库的实例按照进行分流,例如当数据库1具备三个数据库实例,数据库1的实例1的访问量较高、数据库1的实例2和实例3的访问量较低,则该调度系统可以将该数据库1的访问请求主要调度至实例2和实例3,从而减轻实例1的访问量负载。
该基于业务部署需求的调度策略可以基于该业务和其他业务之间的关系,迁移数据库的实例至其他资源池,或者,在同一个资源池中部署数据库实例和该数据库实例的从属实例,或者,在不同的资源池中分别部署该数据库实例的主实例和备用实例。对于该数据库的多个实例,可以采取多种部署方式在同一个或多个资源池中进行部署,该部署方式了例如可以是主从模式、双活模式、集群模式、两地三中心模式等。对于主从模式的实例部署,通常在同一个资源池中部署该主实例和从属实例;对于除主从实例之外的多个实例部署,则通常选取多个资源池进行部署,该多个资源池可以是不同区域的资源池,示例性的,在资源池1中部署该数据库的实例,在资源池2中部署该数据库的备份实例,以在该资源池1故障时,能够将该数据库的访问请求切换至该资源池2中的备份实例进行操作。可选的,还可以根据业务之间的亲和需求和反亲和需求调度数据库的实例,例如,存在亲和需求关系的业务对应的实例部署在同一个资源池中,存在反亲和需求关系的业务对应的实例部署在不同的资源池中。
该基于业务使用需求的调度策略为基于使用该业务的用户的区域特点调度数据库实例。例如,使用该业务的用户大部分为区域1中的用户,则将该业务对应的数据库的实例调度至该区域1的资源池中,或者,与该区域1相邻的区域的资源池中,从而降低该数据库的实例的响应延迟,提高数据处理效率。
该数据库的实例的调度策略可以是预先存储在该调度系统中的,也可以是调度系统的管理员在调度系统运行过程中,根据实际需求实时输入的。当该数据库的实例的调度策略可以是预先存储在该调度系统中时,调度系统通过直接从存储有该调度策略的存储器中获取该调度策略;当该数据库的实例的调度策略时从外部接收时,则通过从传输该调度策略的通信接口获取该调度策略。
S302、根据数据库的实例的调度策略,对数据库的实例进行调整。
一种可能的实现方式,根据资源池的资源使用情况对数据库的实例进行调整。
S302A1、监控该资源池的资源使用情况。
该资源池的资源使用情况可以包括该资源池的CPU资源,内存资源,磁盘资源,网络资源等资源的总量和资源已使用量。该资源池的资源使用情况可以是该资源池周期性上报给该调度系统的,例如可以是每分钟上报一次、每10秒钟上报一次等;该资源池的资源使用情况还可以是该调度系统周期性的从该资源池中采样获取的。
S302A2、根据该资源池的资源使用情况,以及,数据库的实例的调度策略,均衡该资源池上部署的数据库的实例。
当该资源池的资源使用情况表征该资源池的资源负载压力较大时,例如CPU资源占用率过高、内存资源占用率过高等情况,则需要将该资源池上的数据库的实例迁移至其他资源池上。
在具备迁移实例的需求后,可以根据实际需求,从上述任意一种数据库的实例的调度策略中选择与该实际需求相符的调度策略。例如,以调度策略为基于访问量的调度策略为例,该调度系统可以将资源访问量较低的实例迁移到其他资源占用率较低的资源池上。再例如,以调度策略为基于业务使用需求的调度策略为例,对使用该实例的业务的用户使用频次较低、或者响应延迟较高的实例调度到与使用该实例的业务的用户的目标终端所在的区域相邻的,且资源占用率较低的资源池上。
上述仅是以一种调度策略为例对如何根据该资源池的资源使用情况,以及,数据库的实例的调度策略,均衡该资源池上部署的数据库的实例进行说明,在实际使用过程中,还可以综合上述多种调度策略均衡该资源池上部署的数据库的实例。例如,可以根据各种调度策略对该资源池上的实例进行打分,根据打分的结果,确定最终的调度方案。示例性的,在单一的调度策略中,可以根据访问量的排序、业务部署需求的排序、业务使用需求的排序分别进行打分,然后根据实际需求设定每种调度策略的权重参数,根据该打分与该权重参数获取最终的打分结果,并根据最终的打分结果均衡该资源池上部署的数据库的实例。
另一种可能的实现方式,根据资源池的运行状态对数据库的实例进行调整。
S302B1、监控该资源池的运行状态。
其中,该资源池的运行状态可以包括对该资源池的网络连接状态、该资源池的物理主机的运行状态等。该调度系统可以监控该资源池的网络连接是否正常,例如是否存在异常掉线的情况、丢包的情况、延迟过高的情况等,还可以监控该资源池的物理主机是否运行正常,例如是否因高负载导致物理主机无法正常使用,或者物理主机故障导致该资源池出现部分资源不可用的情况等。
S302B2、在该资源池的运行状态异常时,根据该数据库的实例的调度策略,将其上部署的数据库的实例迁移至其他资源池上。
在该资源池的运行状态异常时,确定该资源池上存在的数据库的实例,和/或,受到资源池的运行状态异常影响的数据库的实例。调度系统可以将该资源池上存在的所有数据库的实例迁移至其他资源池上,或者,仅将受到资源池的运行状态异常影响的数据库的实例迁移至其他资源池上,以使该其他资源池能够接管该待迁移实例,减小资源池的运行状态异常对用户使用数据库的影响。
在迁移之前,调度系统可以根据该数据库的实例的调度策略,确定待迁移的数据库的实例的目标迁移资源池。其中,对于不同的数据库的实例可以采用不同的调度策略,也可以采用相同的调度策略。例如,可以根据该待迁移实例的业务部署需求、和/或、该待迁移实例的业务使用需求,确定该待迁移实例的目标迁移资源池。
一种可能的实现方式,从其他资源池中确定符合该待迁移实例的业务部署需求的资源池,并根据该其他资源池中与该业务部署需求匹配度最高的资源池作为目标迁移资源池;或者,从其他资源池中确定符合该待迁移实例的业务使用需求的资源池,并根据该其他资源池中与该业务使用需求匹配度最高的资源池作为目标迁移资源池;或者,综合考虑该业务部署需求和业务使用需求,确定目标迁移资源池等。
另一种可能的实现方式,将该待迁移实例迁移至符合该待迁移实例的资源需求量的资源池上。其中,可以针对每个待迁移实例进行单独迁移,将待迁移实例迁移至多个目标迁移资源池上,也可以将所有待迁移实例迁移至同一个目标迁移资源池上,本申请对此不作限制。
本申请实施例提供的方法,通过获取数据库的实例的调度策略,根据该数据库的实例的调度策略,结合资源池的资源使用情况和运行状态,对数据库的实例进行调整,以使得该资源池上的数据库的实例能够迁移至负载更小、和/或、更适合该实例的业务部署需求、和/或、更适合该实例的业务使用需求的资源池上,避免资源池故障对用户访问数据库造成影响,从而减少多个资源池负载不均衡的情况,提升多个资源池的资源利用率和数据库访问能力的稳定性。
在图3所示的数据库调度方法下,该调度系统还可以对创建数据库的新实例进行调度。图4为本申请实施例提供的又一种数据库调度方法的流程示意图。如图4所示,该方法还可以包括:
S401、接收第二数据库的实例的创建请求。
其中,该第二数据库的实例的创建请求可以是请求在该云计算平台下的任意一个或多个区域的资源池上创建该第二数据库的实例。该调度系统可以根据接收的该第二数据库的实例的创建请求,在至少一个资源池上创建该第二数据库的实例,该至少一个资源池可以是该第二数据库已有实例中的任意实例所在的资源池,也可以是不存在该第二数据库的实例的资源池。
S402、根据第二数据库的实例的调度策略,以及,各资源池的资源使用情况,从该资源池中确定目标资源池。
根据第二数据库的实例的调度策略,确定该实例的目标资源池范围,例如可以根据该实例对应的业务数据的业务部署需求,确定符合该业务部署需求的资源池作为该实例的目标资源池范围,和/或,根据该实例对应的业务数据的业务使用需求,确定符合该业务使用需求的资源池作为该实例的目标资源池范围。
在确定目标资源池范围后,根据该目标资源池范围内的各资源池的资源使用情况,例如根据资源占用率,或者剩余资源量,确定符合该实例所需资源量的资源池作为目标资源池。
S403、在目标资源池上部署第二数据库的实例。
该调度系统可以复制该第二数据库的实例的主副本,并将该主副本部署到该目标资源池上。
一种可能的实现方式,该目标资源池为该第二数据库的实例的主副本所在的资源池,则可以通过同步复制的方式,在该第二数据库的实例的主副本所在的资源池上复制该实例的从副本。从而实现该数据库的实例的主从模式的部署。
另一种可能的实现方式,该目标资源池为该第二数据库的实例的主副本所在的资源池之外的资源池,则需要异步复制该第二数据库的实例的主副本,并将该异步复制的该第二数据库的实例的从副本部署在该目标资源池上。可选的,在完成该第二数据库的实例的从副本的部署后,还可以在该目标资源池上再次复制该第二数据库的实例的新副本,作为该第二数据库的实例的从副本的备用数据库。
再一种可能的实现方式,该目标资源池为该第二数据库的实例的主副本所在的资源池,以及,其他资源池。图5为本申请实施例提供的一种数据库调度的结构示意图。如图5所示,该目标资源池包括该第二数据库的实例的主副本所在的资源池A,以及,不存在该第二数据库的实例的资源池B。该调度系统可以在该资源池A上通过同步复制的方法,在该资源池A上部署该第二数据库的实例的从副本,并在该资源池B上部署该第二数据库的实例的从副本,以及,该第二数据库的实例的新副本。
本申请实施例提供的方法,通过接收第二数据库的实例的创建请求,根据第二数据库的实例的调度策略,以及,各资源池的资源使用情况,从资源池中确定目标资源池,并在目标资源池上部署第二数据库的实例,以在多区域的资源池上创建该第二数据库的实例,从而提高了多资源池部署数据库的实例的灵活性,增强了数据库实例在资源池之间的协同效果。
图6为本申请实施例提供的一种数据库调度装置的结构示意图。云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个资源池部署有至少一个数据库的一个或多个实例;在数据库具有多个实例时,多个实例部署在同一资源池或不同资源池中,方法应用于调度系统。如图6所示,该数据库调度装置可以包括:操作模块11、管理模块12、调度模块13、数据安全传输模块14。在一种可能的实现方式下,还可以包括:算法模块15。
操作模块11,用于接收目标终端针对第一数据库的访问请求。
管理模块12,用于根据该访问请求的访问类型,以及,部署有该第一数据库的实例的资源池的负载情况,从该第一数据库的实例中确定目标实例。
调度模块13,用于调用该目标实例,对该访问请求进行处理,得到访问结果。
数据安全传输模块14,用于输出该访问结果。
在一种可能的实现方式下,管理模块12,具体用于根据该访问请求的访问类型、部署有该第一数据库的实例的资源池的负载情况,以及,该目标终端所在的区域,从该第一数据库的实例中确定目标实例。
在另一种可能的实现方式下,管理模块12,还用于从算法模块15中获取数据库的实例的调度策略。调度模块13,还用于根据该数据库的实例的调度策略,对该数据库的实例进行调整。该调度策略包括下述至少一项:基于访问量的调度策略、基于业务部署需求的调度策略、基于业务使用需求的调度策略。
在该实现方式下,可选的,管理模块12,具体用于监控该资源池的资源使用情况。调度模块13,具体用于根据该资源池的资源使用情况,以及,该数据库的实例的调度策略,均衡该资源池上部署的数据库的实例。
可选的,管理模块12,具体用于监控该资源池的运行状态。并在该资源池的运行状态异常时,调度模块13,具体用于根据该数据库的实例的调度策略,将其上部署的数据库的实例迁移至其他资源池上。
其中,可选的,操作模块11,还用于接收第二数据库的实例的创建请求。管理模块12,还用于根据该第二数据库的实例的调度策略,以及,各该资源池的资源使用情况,从该资源池中确定目标资源池。调度模块13,还用于在该目标资源池上部署该第二数据库的实例。
在该实现方式下,调度模块13,具体用于异步复制该第二数据库的实例的主副本。将复制的该第二数据库的实例的从副本部署在该目标资源池上。
本申请实施例提供的数据库调度装置,可以执行上述方法实施例中的数据库调度方法,其实现原理和技术效果类似,在此不再赘述。
图7为本申请实施例提供的一种电子设备的结构示意图。其中,该电子设备用于执行前述所说的数据库调度方法,例如可以是前述所说的部署了调度系统的终端设备等。如图7所示,该电子设备700可以包括:至少一个处理器701、存储器702、通信接口703。
存储器702,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。
存储器702可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器701用于执行存储器702存储的计算机执行指令,以实现前述方法实施例所描述的方法。其中,处理器701可能是一个CPU,或者是特定集成电路(ApplicationSpecific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
处理器701通过通信接口703可以与外部设备进行通信交互,外部设备例如可以是前述所说的用户的目标终端等。在具体实现上,如果通信接口703、存储器702以及处理器701独立实现,则通信接口703、存储器702以及处理器701可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果通信接口703、存储器702和处理器701集成在一块芯片上实现,则通信接口703、存储器702和处理器701可以通过内部接口完成通信。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或者光盘等各种可以存储程序代码的介质,具体的,该计算机可读存储介质中存储有程序指令,程序指令用于上述实施例中的方法。
本申请还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。计算设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得计算设备实施上述数据库调度方法。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种数据库调度方法,其特征在于,云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个所述资源池部署有至少一个数据库的一个或多个实例;在所述数据库具有多个实例时,多个所述实例部署在同一资源池或不同资源池中,所述方法应用于调度系统,所述方法包括:
接收目标终端针对第一数据库的访问请求;
根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例;
调用所述目标实例,对所述访问请求进行处理,得到访问结果;
输出所述访问结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例,包括:
根据所述访问请求的访问类型、部署有所述第一数据库的实例的资源池的负载情况,以及,所述目标终端所在的区域,从所述第一数据库的实例中确定目标实例。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取数据库的实例的调度策略;所述调度策略包括下述至少一项:基于访问量的调度策略、基于业务部署需求的调度策略、基于业务使用需求的调度策略;
根据所述数据库的实例的调度策略,对所述数据库的实例进行调整。
4.根据权利要求3所述的方法,其特征在于,所述根据所述数据库的实例的调度策略,对所述数据库的实例进行调整,包括:
监控所述资源池的资源使用情况;
根据所述资源池的资源使用情况,以及,所述数据库的实例的调度策略,均衡所述资源池上部署的数据库的实例。
5.根据权利要求3所述的方法,其特征在于,所述根据所述数据库的实例的调度策略,对所述数据库的实例进行调整,包括:
监控所述资源池的运行状态;
在所述资源池的运行状态异常时,根据所述数据库的实例的调度策略,将其上部署的数据库的实例迁移至其他资源池上。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收第二数据库的实例的创建请求;
根据所述第二数据库的实例的调度策略,以及,各所述资源池的资源使用情况,从所述资源池中确定目标资源池;
在所述目标资源池上部署所述第二数据库的实例。
7.根据权利要求6所述的方法,其特征在于,所述在所述目标资源池上部署所述第二数据库的实例,包括:
异步复制所述第二数据库的实例的主副本;
将复制的所述第二数据库的实例的从副本部署在所述目标资源池上。
8.一种数据库调度装置,其特征在于,云计算平台包括:调度系统,以及,至少两个分布在不同区域的资源池,每个所述资源池部署有至少一个数据库的一个或多个实例;在所述数据库具有多个实例时,多个所述实例部署在同一资源池或不同资源池中,所述装置应用于调度系统,包括:操作模块、管理模块、调度模块、数据安全传输模块;
操作模块,用于接收目标终端针对第一数据库的访问请求;
管理模块,用于根据所述访问请求的访问类型,以及,部署有所述第一数据库的实例的资源池的负载情况,从所述第一数据库的实例中确定目标实例;
调度模块,用于调用所述目标实例,对所述访问请求进行处理,得到访问结果;
数据安全传输模块,用于输出所述访问结果。
9.一种电子设备,其特征在于,包括:处理器,通信接口以及存储器,所述处理器分别与所述通信接口和所述存储器通信连接;
所述存储器存储计算机执行指令;
所述通信接口与外部设备进行通信交互;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的数据库调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310944807.XA CN116954863A (zh) | 2023-07-28 | 2023-07-28 | 数据库调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310944807.XA CN116954863A (zh) | 2023-07-28 | 2023-07-28 | 数据库调度方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116954863A true CN116954863A (zh) | 2023-10-27 |
Family
ID=88452572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310944807.XA Pending CN116954863A (zh) | 2023-07-28 | 2023-07-28 | 数据库调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116954863A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117370078A (zh) * | 2023-10-31 | 2024-01-09 | 广州鼎甲计算机科技有限公司 | 数据库备份管理方法、装置、计算机设备和存储介质 |
-
2023
- 2023-07-28 CN CN202310944807.XA patent/CN116954863A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117370078A (zh) * | 2023-10-31 | 2024-01-09 | 广州鼎甲计算机科技有限公司 | 数据库备份管理方法、装置、计算机设备和存储介质 |
CN117370078B (zh) * | 2023-10-31 | 2024-05-28 | 广州鼎甲计算机科技有限公司 | 数据库备份管理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111338774B (zh) | 分布式定时任务调度系统及计算装置 | |
EP3487149B1 (en) | Data shard storage method, device and system | |
JP2010134518A (ja) | 計算機システムの構成管理方法、計算機システム及び構成管理プログラム | |
CN109873714B (zh) | 云计算节点配置更新方法及终端设备 | |
US11953997B2 (en) | Systems and methods for cross-regional back up of distributed databases on a cloud service | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN111158949A (zh) | 容灾架构的配置方法、切换方法及装置、设备和存储介质 | |
EP4293510A1 (en) | Data migration method and apparatus, and device, medium and computer product | |
CN116954863A (zh) | 数据库调度方法、装置、设备及存储介质 | |
CN110569302A (zh) | 一种基于lucene的分布式集群的物理隔离的方法及装置 | |
CN113553179A (zh) | 分布式键值存储负载均衡方法及系统 | |
CN113992695B (zh) | 网元设备间业务协同的方法和网元设备 | |
JP2012027656A (ja) | ディザスタリカバリシステムのための管理装置、方法及びプログラム | |
JP4469252B2 (ja) | ストレージネットワークシステム及びホスト計算機並びに物理パス割当方法 | |
CN116954816A (zh) | 容器集群控制方法、装置、设备及计算机存储介质 | |
CN107645396B (zh) | 一种集群扩容方法及装置 | |
WO2021169287A1 (zh) | 主从架构配置方法、装置、设备以及计算机可读存储介质 | |
CN116781711A (zh) | 一种节点部署方法、装置及电子设备 | |
CN105307130A (zh) | 一种资源分配方法及系统 | |
CN104468674B (zh) | 数据迁移方法及装置 | |
CN102868594B (zh) | 一种消息处理方法和装置 | |
CN113032107B (zh) | 一种云数据库的资源管理方法、装置及系统 | |
CN109788007B (zh) | 一种基于两地三中心的云平台及其通信方法 | |
CN109257201B (zh) | 一种License的发送方法和装置 | |
US11343199B2 (en) | Resource reservation management device and resource reservation management method |
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 |