CN114996351A - 数据库弹性方法、数据库弹性装置及数据库弹****** - Google Patents

数据库弹性方法、数据库弹性装置及数据库弹****** Download PDF

Info

Publication number
CN114996351A
CN114996351A CN202210546286.8A CN202210546286A CN114996351A CN 114996351 A CN114996351 A CN 114996351A CN 202210546286 A CN202210546286 A CN 202210546286A CN 114996351 A CN114996351 A CN 114996351A
Authority
CN
China
Prior art keywords
database
target
instance
host device
migration
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
CN202210546286.8A
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.)
Juhaokan Technology Co Ltd
Original Assignee
Juhaokan Technology Co Ltd
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 Juhaokan Technology Co Ltd filed Critical Juhaokan Technology Co Ltd
Priority to CN202210546286.8A priority Critical patent/CN114996351A/zh
Publication of CN114996351A publication Critical patent/CN114996351A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种数据库弹性方法、数据库弹性装置及数据库弹******,应用于显示技术领域,可以提高云原生架构下本地盘数据库的弹性效率。该方法包括:接收对本地盘中的目标数据库的弹性请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;确定对该目标数据库的弹性变配方案;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。

Description

数据库弹性方法、数据库弹性装置及数据库弹******
技术领域
本申请实施例涉及数据处理技术。更具体地讲,涉及一种数据库弹性方法、数据库弹性装置及数据库弹******。
背景技术
目前,云原生架构下的弹性通常指对无状态节点的弹性调度,包括对运行的应用程序容器进行扩容。由于云原生架构下的弹性不涉及数据迁移,因此先创建后删除的调度方案,即可实现云原生架构下基于无状态节点或云盘的快速弹性。
虽然本地盘是性能最好使用最广泛的数据库结构,但本地盘数据库是有状态节点,云原生架构对本地盘的支持很差,因此如何实现云原生架构下本地盘数据库的快速弹性是亟待解决的问题。
由于本地盘数据库的弹性涉及数据迁移,如果以无状态节点使用的先创建后删除的调度方案作为云原生架构下本地盘数据库的弹性调度方案,则可能因为数据迁移耗费大量时间,导致数据迁移对原来的数据库性能造成影响,从而导致影响应用程序进程访问数据库中对应的业务,失去了云原生架构的优势,导致云原生架构下本地盘数据库的弹性效率较低。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种数据库弹性方法、数据库弹性装置、数据库弹******、服务设备、存储介质及程序产品,可以提高云原生架构下本地盘数据库的弹性效率。
第一方面,本申请实施例提供了一种数据库弹性方法,包括:接收对本地盘中的目标数据库的弹性请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;确定对该目标数据库的弹性变配方案;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
第二方面,本申请提供了一种数据库弹性装置,该装置包括:接收模块和确定模块;该接收模块,用于接收对本地盘中的目标数据库的弹性请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;该确定模块,用于确定对该目标数据库的弹性变配方案;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
第三方面,本申请提供了一种数据库弹******,该***包括:资源管理微服务模块,被配置为:接收针对目标数据库的目标请求,该目标请求为弹性请求或弹性评估请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;数据服务模块,被配置为:提供该目标数据库对应的目标实例所在的第一主机设备上的第一资源信息,该目标实例包括以下至少一项:第一数据库,第二数据库;第一资源信息包括第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,第一主机设备的空闲计算资源,第一主机设备的计算资源超载阈值;资源评估模块,被配置为:在该目标请求为扩容变配相关请求的情况下,基于该目标请求,从该数据服务模块获取第一资源信息,并根据第一资源信息,确定对该目标实例进行扩容变配的目标评估结果,该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;在该目标请求为弹性评估请求的情况下,将该目标评估结果发送至该资源管理微服务模块;资源池数据模块,被配置为:提供资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息,第二资源信息包括对应的目标主机设备的空闲计算资源;调度策略确定模块,被配置为:从该资源评估模块获取该目标评估结果;在该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,基于该目标评估结果,以及从该资源池数据模块获取的第二资源信息,确定对该目标实例进行扩容变配的迁移方案对应的迁移调度策略,该调度策略包括该迁移方案对应的迁移实例,以及该迁移实例需要迁移到的目标主机设备;资源调度模块,被配置为:在该目标请求为缩容变配对应的弹性请求的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略;在该目标请求为扩容请求,且该目标评估结果为直接弹性评估结果的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略;在该目标请求为扩容请求,且该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略,执行该目标评估结果对应的该迁移调度策略;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
第四方面,本申请提供了一种服务设备,包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面所述的数据库弹性方法。
第五方面,本申请提供了一种计算机可读存储介质,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第二方面所示的数据库弹性方法。
第六方面,本申请提供了一种计算机程序产品,其特征在于,包括:当计算机程序产品在计算机上运行时,使得计算机实现如第二方面所示的数据库弹性方法。
本申请实施例提供的技术方案与现有技术相比具有如下优点:本申请实施例中,接收对本地盘中的目标数据库的弹性请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;确定对该目标数据库的弹性变配方案;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。因此,针对本地盘数据库弹性,本申请实施例提出了在弹性过程中主库和备库分别变配,先对备库进行弹性变配处理,不影响应用程序访问主库中该应用程序对应的业务,然后对变配后的备库与原来的主库进行主备切换(变配后的备库切换为主库,得到变配后的主库,原来的主库切换为备库),如此切换后,应用程序可以继续访问变配后的主库中该应用程序对应的业务,然后在对切换后的备库进行弹性变配处理,得到变配后的配库,如此完成对数据库的弹性,且在数据库弹性过程中,对应用程序对应的业务的影响最小,可以提高弹性效率。
附图说明
为了更清楚地说明本申请实施例或相关技术中的实施方式,下面将对实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1示出了根据一些实施例的无状态节点弹性示意图;
图2示出了根据一些实施例的基于无状态节点弹性调度方案的本地盘数据库弹性示意图;
图3示出了根据一些实施例的数据库弹性***示意图;
图4示出了根据一些实施例的数据库弹性方法的流程示意图之一;
图5示出了根据一些实施例的数据库弹性方法的流程示意图之二;
图6示出了根据一些实施例的数据库弹性方法的流程示意图之三;
图7示出了根据一些实施例的数据库弹性方法的流程示意图之四;
图8示出了根据一些实施例的数据库弹性方法的流程示意图之五;
图9示出了根据一些实施例的迁移方案的迁移实例选择和目的主机设备的选择示意图;
图10示出了根据一些实施例的数据库弹性装置的结果示意图;
图11示出了根据一些实施例的数据库弹******的示意图;
图12示出了根据一些实施例的调度策略确定流程示意图;
图13示出了根据一些实施例的服务设备的结构示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请实施方式提供的主机设备和服务设备可以具有多种实现形式,例如,可以是电视、手机、平板电脑、笔记本电脑、掌上电脑、计算机设备等,具体可以根据实际情况确定,此处不做限定。
下面首先对本发明的权利要求书和说明书中涉及的一些名词或者术语进行解释说明。
本地盘数据库:即使用本地盘存储数据的数据库架构,通常一个数据库集群包括主库和备库,数据库集群的主库和备库可以在同一个主机设备上,也可以不在同一个主机设备上。
实例:若一个主机设备上包括一个数据库的主库和备库,则该主机设备上该数据库对应的实例为该数据库的主库和备库;若一个主机设备上仅包括一个数据库的主库,则该主机设备上该数据库对应的实例为该数据库的主库;若一个主机设备上仅包括一个数据库的备库,则该主机设备上该数据库对应的实例为该数据库的备库。
节点(node):针对本地盘,一个node代表一个主机设备(物理机),数据库的数据存储在主机设备的磁盘中。主机设备的磁盘中包括多个主库的数据,和/或,多个备库的数据。
Pod:一个或多个容器的组合,一个容器中包括一个主库或一个备库。
Kubernetes,通常称为k8s是开源容器集群管理***,用于自动部署、扩展和管理容器化(containerized)应用程序。该***基于容器运行时接口(Container RuntimeInterface,CRI)(如开源的应用容器引擎(Docker)、容器存储接口(Container StorageInterface,CSI)等)构建一个容器的调度服务。Kubernetes可以自动在一个容器集群中选择一个工作容器供使用。它旨在提供“跨主机集群的自动部署、扩展以及运行应用程序容器的平台”。它支持一系列容器工具,包括Docker、CRI-O等。
因为云原生架构下的无状态节点没有特殊状态,访问无状态服务的请求对于服务器来讲无差别处理(无状态服务可以部署在任意的服务器上对服务无影响,不像数据库一样必须服务器上有数据),且不涉及数据迁移,因此为了在弹性过程中尽量减小对应用程序业务的影响,云原生架构下的无状态节点的弹性采用先创建后删除的调度方案。
如图1所示,以弹性请求为扩容请求为例,云原生架构下无状态节点的扩容变配方案为先创建后删除的调度方案,具体包括,服务设备接收针对计算资源为2c4g的pod1和pod2的扩容请求,扩容请求要求将计算资源从2c4g扩大为4c8g,标记“1”指示服务设备根据扩容请求创建新的计算资源为4c8g的pod3和pod4,标记“2”指示服务设备将扩容请求转发到新建的pod3和pod4,标记“3”指示服务设备删掉(下线掉)原来的pod1和pod2。
随着当今云盘的性能发展和网络的优化,云盘数据库的存储计算分离模式已经比较成熟,云原生架构对云盘数据库的存储计算分离模式支持的较好,相当于把有状态部分下沉到了存储层,因此云原生架构下的云盘数据库的弹性也可以采用先创建后删除的调度方案,具体过程此处不予赘述。但是云盘数据库的性能仍然无法超越本地盘数据库的性能,本地盘数据库形态依然是当今主流。而本地盘数据库是有状态节点,如何实现云原生架构下的本地盘数据库弹性是亟待解决的问题。
如图2所示,以弹性请求为扩容请求,数据库的主库和备库在同一个主机设备上为例,假设云原生架构下本地盘数据库的扩容变配方案为无状态节点的先创建后删除的调度方案,服务设备接收对node3中数据库的扩容请求,标记“4”指示服务设备在node4中新建主库和备库,标记“5”指示服务设备对数据库中的数据进行数据迁移,标记“6”指示服务设备把扩容请求转发到node4中新建的主库和备库,标记“7”指示服务设备下线掉原来的主库和备库。该过程存在以下问题:数据迁移速度较慢,数据迁移所需的迁移时长较大,数据量越大迁移时长越长,1T数据要迁移接近十多个小时,导致弹性效率较低,且数据迁移对原来的数据库性能造成影响,影响数据库业务,失去了云原生架构的优势。
如图3所示,本申请实施例提供一种数据库弹性***,该***中包括服务设备310和资源池320中的多个主机设备321,其中服务设备310用于管理资源池320中的每个主机设备321中的数据库,为每个数据库弹性变配提供合理的弹性变配方案,以及弹性变配方案对应的弹性调度策略。
为了更加详细的说明本方案,以下将以示例性的方式结合图4至图9进行说明,可以理解的是,图4至图9中所涉及的步骤在实际实现时可以包括更多的步骤,或者更少的步骤,并且这些步骤之间的顺序也可以不同,以能够实现本申请实施例中提供的数据库弹性方法为准。
图4为根据本申请一个或多个实施例实现数据库弹性方法的步骤流程图,该数据库弹性方法的执行主体可以为服务设备,也可以为服务设备中能够实现该数据库弹性方法的功能模块或功能实体,此处不做限定。该数据库弹性方法可以包括:
401、接收对本地盘中的目标数据库的弹性请求。
其中,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库。
402、确定对该目标数据库的弹性变配方案。
其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
如图5所示,基于弹性变配方案对目标数据库进行弹性变配的过程包括:
501、将第一数据库对应的应用程序进程停掉。
502、调用k8s api进行第一数据弹性变配处理,得到第三数据库。
其中,应用程序编程接口为Application Programming Interface,简称api。
503、拉起第三数据库。
504、调用HA服务进行主备切换,将第三数据库切换为主库,将第二数据库切换为备库。
其中,高可用性为high availability,简称HA。
505、将第二数据库对应的应用程序进程停掉。
506、调用k8s api进行第二数据库库弹性变配处理,得到第四数据库。
507、拉起第四数据库。
通过上述步骤501至步骤507,实现对目标数据库的弹性变配,将第一数据库作为备库,第二数据库作为主库的目标数据库进行弹性变配,得到将第三数据库作为主库,第四数据库作为备库的目标数据库。
本申请实施例中,针对本地盘数据库弹性,提出了在弹性过程中主库和备库分别变配,先对备库进行弹性变配处理,不影响应用程序访问主库中该应用程序对应的业务,然后对变配后的备库与原来的主库进行主备切换(变配后的备库切换为主库,得到变配后的主库,原来的主库切换为备库),如此切换后,应用程序可以继续访问变配后的主库中该应用程序对应的业务,然后在对切换后的备库进行弹性变配处理,得到变配后的配库,如此完成对数据库的弹性,且在数据库弹性过程中,对应用程序对应的业务的影响最小,可以提高弹性效率。
其中,第一主机设备上包括该目标数据库对应的目标实例,该目标实例包括以下至少一项:第一数据库,第二数据库。
可以理解,若目标数据库包括的第一数据库和第二数据库均在第一主机设备上,则目标实例为第一数据库和第二数据库;若仅目标数据库包括的第一数据库在第一主机设备上,则目标实例为第一数据库;若仅目标数据库包括的第二数据库在第一主机设备上,则目标实例为第二数据库。
可选地,该弹性请求为缩容请求,该弹性变配为缩容变配,由于缩容变配是缩小第一主机设备上目标实例占用的计算资源,因此可以在第一主机设备上直接进行缩容变配,不涉及实例迁移,可以提高本地盘数据库的缩容效率。
可选地,该弹性请求为扩容请求,该弹性变配为扩容变配,由于扩容变配是扩大第一主机设备上目标实例占用的计算资源,因此直接在第一主机设备上对目标实例进行扩容变配可能导致第一主机设备上各实例所占用的计算资源超出第一主机设备上的总计算资源,此种情况下,需要考虑从第一主机设备上迁出一个合适的实例,以使第一主机设备上各实例所占用的计算资源不超出第一主机设备上的总计算资源。由于k8s支持主机设备短时有一定的资源超卖,因此也可以根据实际情况考虑是先迁后弹,还是先弹后迁。进一步地,还可以根据实际情况考虑是迁出第一主机设备上的其他实例,还是迁出第一主机设备上的目标实例。
示例性地,结合图4,如图6所示,在上述步骤402之前,本申请实施例提供的数据库弹性方法还可以包括:
403、基于该扩容请求,获取第一资源信息。
其中,第一资源信息包括第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,以及第一主机设备的空闲计算资源,第一主机设备的计算资源超载阈值。
404、根据第一资源信息,确定对该目标实例进行扩容变配的目标评估结果。
其中,不同的目标评估结果对应不同的弹性方案。
需要说明的是,第一资源信息为实时在线资源,目标评估结果为针对第一主机设备的在线资源评估结果。
本申请实施例中,通过根据第一资源信息,对目标实例进行扩容变配评估,得到目标评估结果,不同的目标评估结果对应不同的弹性方案,如此可以通过进行扩容变配评估,确定合适的弹性方案,以提高数据库弹性效率。
可选地,该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果。
其中,该直接弹性评估结果包括:该目标实例进行扩容变配所需的调整计算资源小于或等于第一主机设备的空闲计算资源(说明第一主机设备上计算资源充足),在第一主机设备上执行该弹性变配方案中与该目标实例相关的方案。
可以理解,在第一主机设备上的空闲资源充足的情况下,弹性方案为直接在第一主机设备上执行该弹性变配方案中与该目标实例相关的方案,如此可以提高对目标数据库的弹性效率。
其中,在第一主机设备上执行该弹性变配方案中与该目标实例相关的方案具体可以理解为:若目标实例为目标数据库中第一数据库和第二数据库,则在第一主机设备上执行该弹性变配方案;若目标实例仅为目标数据库中第一数据库,则在第一主机设备上执行该弹性变配方案中与第一数据库相关的方案(如将第一数据库进行弹性变配处理,得到第三数据库,然后将第三数据库由备库切换为主库);若目标实例仅为目标数据库中第二数据库,则在第一主机设备上执行该弹性变配方案中与第二数据库相关的方案(如将第二数据库由主库切换为备库,将切换为备库的第二数据库进行弹性变配处理,得到第四数据库)。
其中,该先弹后迁评估结果包括:该调整计算资源大于第一主机设备的空闲计算资源(说明第一主机设备上计算资源不足)且小于或等于目标资源(说明第一主机设备资源超卖的情况下允许目标实例在第一主机设备上进行扩容变配),在第一主机设备上先执行该弹性变配方案中与该目标实例相关的方案,再执行第一迁移方案,该目标资源为第一主机设备的空闲计算资源与该计算资源超载阈值之和,第一迁移方案为将第一主机设备上的第一实例从第一主机设备上迁移到第二主机设备上。
可以理解,在第一主机设备上计算资源不足,但资源超卖的情况下允许目标实例在第一主机设备上进行扩容变配,弹性方案为在第一主机设备上先执行该弹性变配方案中与该目标实例相关的方案,再执行第一迁移方案。
其中,该先迁后弹评估结果包括:该调整计算资源大于该目标资源(说明第一主机设备资源超卖的情况下也不允许目标实例在第一主机设备上进行扩容变配),且该目标实例占用的存储资源大于或等于第一实例占用的存储资源(说明第一主机设备上占用的存储资源小于目标实例,且迁出之后对目标实例进行扩容变配不会使得第一主机设备超载的第一实例),在第一主机设备上先执行第一迁移方案,再执行该弹性变配方案中与该目标实例相关的方案。
其中,第一实例占用的计算资源大于或等于调整计算资源与第一主机设备的空闲计算资源的差值。
可以理解,在第一主机设备资源超卖的情况下也不允许目标实例在第一主机设备上进行扩容变配,且第一主机设备上包括合适的第一实例的情况下,可以先对第一实例执行第一迁移方案,再对目标实例执行该弹性变配方案中与该目标实例相关的方案,如此,因为第一实例占用的存储资源小于目标实例占用的存储资源,因此迁移第一实例,相比于直接迁移目标实例,可以节约时间,进而可以提高对目标实例的弹性效率,可以提高对目标数据库的弹性效率。
需要说明的是,本申请实施例中,该先迁后弹评估结果还可以包括:该调整计算资源大于该目标资源,且该目标实例占用的存储资源大于或等于第一实例占用的存储资源,在第一主机设备上先执行第一迁移方案,再执行该弹性变配方案中与该目标实例相关的方案,最后再执行第三迁移方案。
可以理解,在执行第一迁移方案之后,在第一主机设备超卖的情况下,可以实现对目标实例的扩容变配,然后再通过第三迁移方案使得第一主机设备上各实例占用的计算资源小于或等于第一主机设备上的总计算资源。
本申请实施例中,该先迁后弹评估结果对应第一迁移方案和该弹性变配方案中与该目标实例相关的方案,还是对应第一迁移方案、该弹性变配方案中与该目标实例相关的方案和第三迁移方案,可以根据具体情况确定,此处不做限定。
其中,该直接迁移评估结果包括:该调整计算资源大于该目标资源(说明第一主机设备资源超卖的情况下也不允许目标实例在第一主机设备上进行扩容变配),且该目标实例占用的存储资源小于第一主机上的任意第二实例占用的存储资源(说明第一主机设备上没有合适的可迁移实例,目标实例即为第一主机设备上最合适的可迁移实例),执行第二迁移方案的同时执行该弹性调度方案中与该目标实例相关的方案,第二迁移方案为将该目标实例从第一主机设备上迁移到第三主机设备上。
需要说明的是,在目标实例包括目标数据库中的第一数据库和第二数据库的情况下,本申请实施例中,目标实例占用的存储资源为第一数据库占用的存储资源,执行第二迁移方案的同时执行该弹性调度方案中与该目标实例相关的方案具体包括:执行将第一数据库从第一主机设备上迁移到第三主机设备上的同时执行弹性变配处理,得到第三主机设备上的第三数据库,对第三数据库和第二数据库进行主备切换,然后执行将第二数据库从第一主机设备上迁移到第三主机设备上的同时执行弹性变配处理,得到第三主机设备上的第四数据库。
需要说明的是,在目标评估结果为直接迁移评估结果,目标实例包括目标数据库中的第一数据库和第二数据库的情况下,假设将作为备库的第一数据库迁出并扩容变配,作为主库的第二数据库可以在第一主机设备上实现扩容变配,则可以仅将第一数据库迁出并扩容变配,在第一主机设备上对第二数据库直接进行扩容变配;也可以先将第一数据库迁出并扩容变配,再将第二数据库迁出并扩容变配,且迁出并扩容变配后的第一数据库(第三数据库)和第二数据库(第四数据库)仍在同一主机设备上。
需要说明的是,在目标实例仅包括目标数据库中的第一数据库的情况下,本申请实施例中,目标实例占用的存储资源为第一数据库占用的存储资源;在目标实例仅包括目标数据库中的第二数据库的情况下,本申请实施例中,目标实例占用的存储资源为第二数据库占用的存储资源。
需要说明的是,以执行将第一数据库从第一主机设备上迁移到第三主机设备上的同时执行弹性变配处理为例对执行第二迁移方案的同时执行该弹性调度方案中与该目标实例相关的方案进行说明,该过程包括:在第三主机设备上创建第三数据库对应的实例,将第一数据库对应的数据(可以是远程备份数据,也可以是第一主机设备的存储资源中存储的数据)拷贝到第三主机设备的空闲存储资源中,将第三主机设备的存储资源中存储的第一数据库对应的数据挂载到第三数据对应的容器上,在第三主机设备上拉起第三数据库,删除第一主机设备上的第一数据库(删除第一数据库对应的容器,删除所述第一数据库占用存储资源中的数据)。
其中,每个第二实例占用的计算资源均大于或等于调整计算资源与第一主机设备的空闲计算资源的差值。
可以理解,在第一主机设备资源超卖的情况下也不允许目标实例在第一主机设备上进行扩容变配,且目标实例即为第一主机设备上最合适的可迁移实例的情况下,执行第二迁移方案的同时执行该弹性调度方案中与该目标实例相关的方案,如此,因为目标实例占用的存储资源小于第一主机上的任意第二实例占用的存储资源,则迁移目标实例所需的时间,小于迁移任意第二实例所需的时间,因此迁移目标实例可以节约时间,进而可以提高对目标实例的弹性效率,可以提高对目标数据库的弹性效率。
示例性地,如图7所示,对目标实例进行扩容变配评估的过程包括:
700、获取第一资源信息。
701、判断调整计算资源是否小于或等于第一主机设备的空闲计算资源。
若调整计算资源小于或等于第一主机设备的空闲计算资源,则执行下述步骤702,否则执行步骤703。
702、确定直接弹性评估结果。
703、判断调整计算资源是否小于或等于目标资源。
若调整计算资源小于或等于目标资源,则执行下述步骤704,否则执行步骤705。
704、确定先弹后迁评估结果。
705、判断该目标实例占用的存储资源是否大于或等于第一实例占用的存储资源。
若该目标实例占用的存储资源大于或等于第一实例占用的存储资源,则执行下述步骤706,否则执行步骤707。
706、确定先迁后弹评估结果。
707、确定直接迁移评估结果。
可选地,本申请实施例中,该弹性变配处理可以为先删除后创建处理,也可以为先创建后删除处理。
可选地,在该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果的情况下,该弹性变配处理为先删除后创建处理。可以理解,此种情况下,弹性变配处理为先删除后创建处理,可以最大程度确保目标实例所在主机设备的调度资源充足,从而可以实现目标实例在主机设备上执行弹性变配方案,可以提高目标数据库的弹性效率。
可选地,在所述目标评估结果包括直接迁移评估结果的情况下,所述弹性变配处理为先创建后删除处理。可以理解,此种情况下,因为实例迁移涉及数据迁移,数据迁移耗时比较久,因此如果先删除备库,假如迁移过程中主库有异常就会导致应用程序进程对应的业务不可用,而先创建后删除处理可以避免这个问题,进而可以提高数据库弹性效率。
在确定目标评估结果之后,可以根据目标评估结果确定对应的弹性策略,具体可以参考下述图12中的相关描述,此处不予赘述。在确定弹性策略之后,根据对应的弹性策略确定是否迁移,迁移哪个实例,以及迁移对应的目的主机设备,具体可以根据下述步骤405和步骤406,或者步骤405和步骤407的相关描述。
可选地,该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;结合图6,如图8所示,本申请实施例提供的数据库弹性方法还可以包括:
405、基于该扩容请求,获取资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息。
可以按照任意标准从资源池中选择该至少一个目标主机设备,本申请实施例不做限定。
其中,第二资源信息包括对应的目标主机设备的空闲计算资源。
406、在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,基于第一资源信息和第二资源信息,从第一主机设备上的实例中确定满足第一条件的第一实例,从该至少一个目标主机设备中确定满足第二条件的第二主机设备。
其中,第一条件包括:占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例,也就是说,第一实例为第一主机设备上占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例。如此在第一实例迁移至第二主机设备上,且目标实例进行扩容变配之后,第一主机设备上各个实例占用的计算资源不会超过第一主机设备上的总计算资源。
其中,第二条件包括:空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备,也就是说,第二主机设备为至少一个目标主机设备中空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备,如此在第一实例迁移至第二主机设备上之后,第二主机设备上各个实例占用的计算资源不会超过第二主机设备上的总计算资源。
本申请实施例中通过设置合适的第一条件、第二条件,确定了合理的第一迁移方案对应的迁移调度策略,进而可以更好地保证目标数据库的弹性效率,可以降低对其他实例的应用程序进程对应的业务的影响。
407、在该目标评估结果为该直接迁移评估结果的情况下,基于第一资源信息和第二资源信息,从该至少一个目标主机设备中确定满足第三条件的第三主机设备。
其中,第三条件包括:空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备,也就是说,第三主机设备为至少一个目标主机设备中空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备,如此在目标实例迁移至第三主机设备上之后,第三主机设备上各个实例占用的计算资源不会超过第二主机设备上的总计算资源。
本申请实施例中通过设置合适的第三条件,确定了合理的第二迁移方案对应的迁移调度策略,进而可以更好地保证目标数据库的弹性效率,可以降低对目标实例的应用程序进程对应的业务的影响。
可选地,第二资源信息包括对应的目标主机设备的空闲存储资源;在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,第一条件具体包括以下任一项:占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例中,占用的计算资源最小的实例;占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差,且占用的存储资源最小的实例。
可以理解,第一实例为第一主机设备上占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例中,占用的计算资源最小的实例(如此,可以从计算资源角度确定最合适的第一实例),或者,第一实例为第一主机设备上占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差,且占用的存储资源最小的实例(如此,可以结合计算资源角度和存储资源角度确定最合适的第一实例,而且可以降低数据迁移时长)。如此在第一实例迁移至第二主机设备上,且目标实例进行扩容变配之后,第一主机设备上各个实例占用的计算资源不会超过第一主机设备上的总计算资源。
可选地,第二资源信息包括对应的目标主机设备的空闲存储资源;第二条件具体包括以下任一项:空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源最大的目标主机设备;空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备。
可以理解,第二主机设备为至少一个目标主机设备中空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源最大的目标主机设备(如此,可以从空闲计算资源角度确定最合适的第二主机设备),或者,第二主机设备为至少一个目标主机设备中空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备(如此,可以结合空闲计算资源角度和空闲存储资源角度确定最合适的第二主机设备,而且可以提高数据迁移速度,降低数据迁移时长),如此在第一实例迁移至第二主机设备上之后,第二主机设备上各个实例占用的计算资源不会超过第二主机设备上的总计算资源。
本申请实施例中通过设置更合适的第一条件、第二条件,确定了更合理的第一迁移方案对应的迁移调度策略,进而可以更好地保证目标数据库的弹性效率,可以降低对其他实例的应用程序进程对应的业务的影响。
可选地,第二资源信息包括对应的目标主机设备的空闲存储资源;在该目标评估结果为该直接迁移评估结果的情况下,第三条件具体包括以下任一项:空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源最大的目标主机设备;空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备。
可以理解,第三主机设备为至少一个目标主机设备中空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源最大的目标主机设备(如此,可以从空闲计算资源角度确定最合适的第三主机设备),或者,第三主机设备为至少一个目标主机设备中空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备(如此,可以结合空闲计算资源角度和空闲存储资源角度确定最合适的第三主机设备,而且可以提高数据迁移速度,降低数据迁移时长),如此在目标实例迁移至第三主机设备上之后,第三主机设备上各个实例占用的计算资源不会超过第二主机设备上的总计算资源。
本申请实施例中通过设置更合适的第三条件,确定了更合理的第二迁移方案对应的迁移调度策略,进而可以更好地保证目标数据库的弹性效率,可以降低对目标实例的应用程序进程对应的业务的影响。
可选地,第一资源信息还包括第一主机设备上每个实例的固定标签,该固定标签用于指示对应的实例允许迁移的主机设备;第二资源信息还包括对应的目标主机设备的设备标签;在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,第一实例的固定标签与第二主机设备的设备标签匹配;在该目标评估结果为该直接迁移评估结果的情况下,该目标实例的固定标签与第三主机设备的设备标签匹配。
可以理解,结合固定标签和设备标签,可以确定更合理的第一实例、第二主机设备或第三主机设备,如此,可以更好地保证目标数据库的弹性效率,可以降低对目标实例的应用程序进程对应的业务的影响。
可选地,第一迁移方案包括:在第二主机设备上创建第一实例;将第一实例对应的远程备份数据以容器(第二主机上新建的第一实例对应的容器)所具备的最大网络速度和最大的读写速度(IOPS)拷贝到第二主机设备的空闲存储资源中(即将第一实例对应的远程备份数据挂载(mount)到第二主机设备上的第一实例的容器上),第一实例对应的远程备份数据是预设时长内更新过的数据;拉起第一实例;删除第一主机设备上的第一实例。
其中,第一实例可以包括一个数据库的主库和备库,也可以仅包括一个数据看的主库,也可以仅包括一个数据库的备库,具体可以根据实际情况确定,此处不做限定。
可以理解,若第一数据库包括一个数据库的主库和备库,则对第一实例的迁移包括先对第一实例中的备库进行迁移,然后主备库切换,在对第一实例中的旧主库进行迁移,具体对第一实例的迁移对应的描述可以参考上述对目标实例的迁移的相关描述,此处不再赘述。
可选地,第二迁移方案包括:在第三主机设备上创建该目标实例对应的扩容变配后的实例;将该目标实例对应的远程备份数据以容器(第三主机设备上新建的扩容变配后的实例对应的容器)所具备的最大网络速度和最大的读写速度拷贝到第三主机设备的空闲存储资源中(即将目标实例对应的远程备份数据挂载到第三主机设备上的扩容变配后的实例的容器上),该目标实例对应的远程备份数据是该预设时长内更新过的数据;拉起该扩容变配后的实例;删除第一主机设备上的该目标实例。
其中,预设时长可以根据实际情况确定,此处不做限定。
本申请实施例中,实例对应的远程备份数据是预设时长内更新过的数据,则拷贝远程备份数据相比迁移原实例所在的主机设备上的数据,可以以容器所具备的最大网络速度和最大的读写速度拷贝,因此,可以提高数据拷贝速度,可以提高实例迁移效率。而且可以降低对第一主机设备上的各实例(第一实例或目标实例,以及其他实例)的业务的影响。
可选地,第一迁移方案包括:在第二主机设备上创建第一实例;将第一主机设备上第一实例对应的数据以限定网络速度和限定读写速度拷贝到第二主机设备的空闲存储资源中(即迁移原实例所在的主机设备上的数据);拉起第一实例;删除第一主机设备上的第一实例。
可选地,第二迁移方案包括:在第三主机设备上创建该目标实例对应的扩容变配后的实例;第一主机设备上该目标实例对应的数据以限定网络速度和限定读写速度拷贝到第三主机设备的空闲存储资源中(即迁移原实例所在的主机设备上的数据);拉起该扩容变配后的实例;删除第一主机设备上的该目标实例。
其中,限定网络速度和限定读写速度具体可以根据实际情况确定,此处不做限定。
本申请实施例中,在实例对应的远程备份数据不是预设时长内更新过的数据的情况下,迁移原实例所在的主机设备上的数据,可以保证数据是最新的,因此可以降低对第一实例或目标实例的业务的影响。
需要说明的是,本申请实施例中,该目标评估结果可以为直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果和直接迁移评估结果中的任一种;该目标评估结果也可以为直接弹性评估结果和先迁后弹评估结果中的任一种(此种情况下不考虑主机设备超卖的情况,也不考虑直接迁移目标实例的情况);该目标评估结果也可以为直接弹性评估结果、先迁后弹评估结果和直接迁移评估结果中的任一种(此种情况下不考虑主机设备超卖的情况);目标评估结果还可以未其他的可行性评估结果。也就是说,在本申请实施例的发明构思下可以设置任意的目标评估结果类型,具体可以根据实际情况确定,本申请实施例不做限定。
示例性地,因为是私有云环境,数据库资源池以平衡负载模式部署,为了达到最快迁移,会选取第一主机设备上数据量(占用存储资源)最小的实例(第一实例或目标实例)进行迁移,迁移目的设备选取规则为选择剩余空闲资源最大的目标主机设备。具体迁移方式如图9所示。
由图9可见,服务设备将第一主机设备上目标数据库实例资源作为动态向量,动态向量包含N1:CPU,N2:内存大小,N3:固定标签,N4:存储空间,对第一主机设备上所有N4向量做升序排序,然后选取第一个N1~N3符合要求的实例作为待迁实例(第一实例或目标实例);将每台目标主机设备的第二资源信息作为静态向量,静态向量包含S1:CPU分配比(即CPU空闲资源占比),S2:内存分配比(即内存空闲资源占比),S3:磁盘分配比(即磁盘空闲资源占比),S4:设备标签,首先过滤掉S4向量中不满足待迁实例反亲和策略的主机设备,对剩余主机设备的S1~S3向量做加权处理S=(S1+S2+S3)/3,选取S最小的目标主机设备作为目的主机设备(即第二主机设备或第三主机设备)。
图10为本公开实施例示出的一种数据库弹性装置的结构框图,如图10所示,该装置包括:接收模块1001和确定模块1002;该接收模块1001,用于接收对本地盘中的目标数据库的弹性请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;该确定模块1002,用于确定对该目标数据库的弹性变配方案;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
可选地,该弹性请求为扩容请求,该弹性变配为扩容变配,第一主机设备上包括该目标数据库对应的目标实例,该目标实例包括以下至少一项:第一数据库,第二数据库;该装置还包括:获取模块,用于在确定对该目标数据库的弹性变配方案之前,基于该扩容请求,获取第一资源信息,第一资源信息包括第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,以及第一主机设备的空闲计算资源,第一主机设备的计算资源超载阈值;该确定模块1002,还用于根据第一资源信息,确定对该目标实例进行扩容变配的目标评估结果。
可选地,该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;其中,该直接弹性评估结果包括:该目标实例进行扩容变配所需的调整计算资源小于或等于第一主机设备的空闲计算资源,在第一主机设备上执行该弹性变配方案中与该目标实例相关的方案;该先弹后迁评估结果包括:该调整计算资源大于第一主机设备的空闲计算资源且小于或等于目标资源,在第一主机设备上先执行该弹性变配方案中与该目标实例相关的方案,再执行第一迁移方案,该目标资源为第一主机设备的空闲计算资源与该计算资源超载阈值之和,第一迁移方案为将第一主机设备上的第一实例从第一主机设备上迁移到第二主机设备上;该先迁后弹评估结果包括:该调整计算资源大于该目标资源,且该目标实例占用的存储资源大于或等于第一实例占用的存储资源,在第一主机设备上先执行第一迁移方案,再执行该弹性变配方案中与该目标实例相关的方案;该直接迁移评估结果包括:该调整计算资源大于该目标资源,且该目标实例占用的存储资源小于第一主机上的任意第二实例占用的存储资源,执行第二迁移方案的同时执行该弹性调度方案中与该目标实例相关的方案,第二迁移方案为将该目标实例从第一主机设备上迁移到第三主机设备上。
可选地,在该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果的情况下,该弹性变配处理为先删除后创建处理。
可选地,在所述目标评估结果包括直接迁移评估结果的情况下,所述弹性变配处理为先创建后删除处理。
可选地,该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;该获取模块,还用于基于该扩容请求,获取资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息,第二资源信息包括对应的目标主机设备的空闲计算资源;该确定模块1002,还用于在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,基于第一资源信息和第二资源信息,从第一主机设备上的实例中确定满足第一条件的第一实例,从该至少一个目标主机设备中确定满足第二条件的第二主机设备;第一条件包括:占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例;第二条件包括:空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备;该确定模块1002,还用于在该目标评估结果为该直接迁移评估结果的情况下,基于第一资源信息和第二资源信息,从该至少一个目标主机设备中确定满足第三条件的第三主机设备;第三条件包括:空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备。
可选地,第二资源信息包括对应的目标主机设备的空闲存储资源;在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,第一条件具体包括以下任一项:占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差的实例中,占用的计算资源最小的实例;占用的计算资源大于或等于该调整计算资源与第一主机设备的空闲计算资源之差,且占用的存储资源最小的实例;第二条件具体包括以下任一项:空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源最大的目标主机设备;空闲计算资源大于或等于第一实例占用的计算资源的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备;在该目标评估结果为该直接迁移评估结果的情况下,第三条件具体包括以下任一项:空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源最大的目标主机设备;空闲计算资源大于或等于该目标实例占用的计算资源与该调整计算资源之和的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备。
可选地,第一资源信息还包括第一主机设备上每个实例的固定标签,该固定标签用于指示对应的实例允许迁移的主机设备;第二资源信息还包括对应的目标主机设备的设备标签;在该目标评估结果为该先弹后迁评估结果或该先迁后弹评估结果的情况下,第一实例的固定标签与第二主机设备的设备标签匹配;在该目标评估结果为该直接迁移评估结果的情况下,该目标实例的固定标签与第三主机设备的设备标签匹配。
可选地,第一迁移方案包括:在第二主机设备上创建第一实例;将第一实例对应的远程备份数据以容器所具备的最大网络速度和最大的读写速度拷贝到第二主机设备的空闲存储资源中,第一实例对应的远程备份数据是预设时长内更新过的数据;拉起第一实例;删除第一主机设备上的第一实例。
可选地,第二迁移方案包括:在第三主机设备上创建该目标实例对应的扩容变配后的实例;将该目标实例对应的远程备份数据以容器所具备的最大网络速度和最大的读写速度拷贝到第三主机设备的空闲存储资源中,该目标实例对应的远程备份数据是该预设时长内更新过的数据;拉起该扩容变配后的实例;删除第一主机设备上的该目标实例。
可选地,第一迁移方案包括:在第二主机设备上创建第一实例;将第一主机设备上第一实例对应的数据以限定网络速度和限定读写速度拷贝到第二主机设备的空闲存储资源中;拉起第一实例;删除第一主机设备上的第一实例。
可选地,第二迁移方案包括:在第三主机设备上创建该目标实例对应的扩容变配后的实例;第一主机设备上该目标实例对应的数据以限定网络速度和限定读写速度拷贝到第三主机设备的空闲存储资源中;拉起该扩容变配后的实例;删除第一主机设备上的该目标实例。
本申请实施例中,该数据库弹性装置的各模块可以实现上述方法实施例提供的数据库弹性方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
图11为本公开实施例示出的一种数据库弹******的结构框图,如图11所示,该***包括:资源管理微服务模块1101,被配置为:接收针对目标数据库的目标请求,该目标请求为弹性请求或弹性评估请求,该目标数据库包括作为备库的第一数据库和作为主库的第二数据库;数据服务模块1102,被配置为:提供该目标数据库对应的目标实例所在的第一主机设备上的第一资源信息,该目标实例包括以下至少一项:第一数据库,第二数据库;第一资源信息包括第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,第一主机设备的空闲计算资源,第一主机设备的计算资源超载阈值;资源评估模块1103,被配置为:在该目标请求为扩容变配相关请求的情况下,基于该目标请求,从该数据服务模块获取第一资源信息,并根据第一资源信息,确定对该目标实例进行扩容变配的目标评估结果,该目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;在该目标请求为弹性评估请求的情况下,将该目标评估结果发送至该资源管理微服务模块;资源池数据模块1104,被配置为:提供资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息,第二资源信息包括对应的目标主机设备的空闲计算资源;调度策略确定模块1105,被配置为:从该资源评估模块获取该目标评估结果;在该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,基于该目标评估结果,以及从该资源池数据模块获取的第二资源信息,确定对该目标实例进行扩容变配的迁移方案对应的迁移调度策略,该调度策略包括该迁移方案对应的迁移实例,以及该迁移实例需要迁移到的目标主机设备;资源调度模块1106,被配置为:在该目标请求为缩容变配对应的弹性请求的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略;在该目标请求为扩容请求,且该目标评估结果为直接弹性评估结果的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略;在该目标请求为扩容请求,且该目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,执行弹性变配方案中与该目标实例相关的方案对应的弹性调度策略,执行该目标评估结果对应的该迁移调度策略;其中,该弹性变配方案包括:对第一数据库进行弹性变配处理,得到变配后的第三数据库;对第三数据库和第二数据库进行主备切换,将第三数据库切换为该目标数据库的主库,将第二数据库切换为该目标数据库的备库;对第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的第三数据库和作为备库的第四数据库得到弹性变配后的该目标数据库。
本申请实施例中,该数据库弹******的各模块可以实现上述方法实施例提供的数据库弹性方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例中,主要优化云原生架构下数据库本地盘形态的快速弹性,引入数据库弹******,负责资源评估与产出调度策略,调度策略***会根据当前资源使用情况与预期资源量评估出最佳弹性方案,并划分为四个场景,分别是云数据库所在的主机资源充足,资源不足但未超过超载阈值,资源不足但是有更好的选择,资源不足但是没有更好选择,针对不同场景做出不同的快速弹性调度方案,提出了资源评估策略,资源调度策略,资源调度方法。
如图11所示,数据库弹******请求入口在资源管理微服务模块,收到针对目标数据库的目标请求(扩容评估请求或者扩容请求)后会将目标请求发送给资源评估模块,资源评估模块接收到目标请求后,跟数据微服务模块交互获得目标数据库所在的主机设备上的各实例资源信息(例如第一主机设备上的第一资源信息),资源评估模块会根据目标数据库所在的主机设备上的各实例资源信息做出资源的详细评估信息(得到目标评估结果,如果目标请求为扩容评估请求,则将目标评估结果返回给资源管理微服务模块),以及从资源池数据模块获取资源池中的至少一个目标主机设备中的每个目标主机设备的第二资源信息,并将目标评估结果以及至少一个第二资源信息提交给调度策略模块,调度策略模块会根据目标评估结果以及至少一个第二资源信息提交给调度策略模块,决策出一个最佳调度策略,并将最佳的调度策略发送给资源调度模块,资源调度模块根据最佳调度策略进行相应的资源调度。
其中,资源评估模块主要是按照相关数据进行多维度资源评估,分为主机计算资源评估、存储资源评估、资源池资源评估。本机设备(如目标实例所在的第一主机设备)的资源评估为在线评估,每次会根据评估请求参数对本机计算资源(cpu和内存)进行评估,评估时会减除本机实例已占用资源,为了最大程度完成本机弹性,本机弹性所有弹性操作会遵循先删除后创建策略使本机资源达到最高利用。存储资源评估为在离线结合方式,本机存储会在线计算实时量,非本机存储会使用离线数据。资源池资源全部使用离线数据,此部分数据是由监控采集模块分时导入。整个评估流程如图7所示,评估结果有四种。
其中,调度策略模块主要执行调度策略的决策,调度核心是尽量不动数据,不得不动时尽可能少动,用最有效率的方式完成弹性。本部分主要针对本机无法完成弹性条件的调度策略优化,分为三种优化策略:第一种为先弹后迁策略,针对主机未超过负载阈值的场景,会优先对本实例需求完成本机弹性,然后下发离线迁移调度的任务,做到最终可达;第二种为先迁后弹策略,本机实在无法满足弹性条件的会评估本机上所有数据库实例,找到最适合迁出的实例进行数据迁移,然后对本实例进行本机弹性;第三种为本实例迁移策略,本实例就是那个最适合迁出的实例,则会针对本实例进行数据迁移调度以及弹性调度。
示例性地,如图12所示,调度策略模块执行调度策略的决策过程包括:
1201、获取目标评估结果。
1202、判断目标评估结果是否为直接弹性评估结果。
若目标评估结果为直接弹性评估结果,则执行下述步骤1203,否则执行下述步骤1204。
1203、确定直接本机弹性策略。
1204、判断目标评估结果是否为先弹后迁评估结果。
若目标评估结果为先弹后迁评估结果,则执行下述步骤1205,否则执行下述步骤1206。
1205、确定先弹后迁弹性策略。
1206、判断目标评估结果是否为先迁后弹评估结果。
若目标评估结果为先迁后弹评估结果,则执行下述步骤1207,否则执行下述步骤1208。
1207、确定先迁后弹弹性策略。
1208、确定直接迁移弹性策略。
其中,资源调度模块是一个执行者,根据调度策略模块产出的调度策略进行实例调度,分为本机调度和迁移调度两种,本机调度采用先删除后创建的方式,最大程度确保本机调度资源充足;迁移调度采用备份数据优先的方式,将远程备份数据mount到本地后以容器所具备的最大网络和IOPS快速拷贝数据并拉起实例。
示例性地,假如备库弹性之前是2c4g,要弹性到4c8g,直接弹性策略,如果备库所在的主机设备还有2c4g的空闲资源,则直接在第一主机设备上进行弹性,先把备库变为4c8g,做主备切换,用同样的方法对原来的主库进行弹性,这样就无需迁移数据了,整体时间在1分钟左右;先弹后迁策略,假如备库所在的主机设备没有2c4g的空闲资源了,判断下若在该主机设备上进行弹性策略,主机设备是否超过了事先设置的超载阈值,比如此主机设备设置了资源可以超出4c8g,则用直接弹性策略同样方法进行扩容,扩容后再在本主机上找到合适的实例迁出;先迁后弹方案,假如在该主机设备上进行弹性策略,主机设备超出了超载阈值也不够扩容的,先找到一个最适合迁出的实例进行迁移,迁移后再对当前要扩容的备库用直接弹性策略同样方法进行扩容;直接迁移方案,当前备库就是最适合迁出的,则直接对备库进行迁出。
图13为本公开实施例提供的一种服务设备的结构示意图,用于对实现本公开实施例中任意数据库弹性方法的服务设备进行示例性说明,不应理解为对本公开实施例的具体限定。
如图13所示,服务设备1300可以包括处理器(例如中央处理器、图形处理器等)1301,其可以根据存储在只读存储器(ROM)1302中的程序或者从存储装置1308加载到随机访问存储器(RAM)1303中的程序而执行各种适当的动作和处理。在RAM 1303中,还存储有服务设备1300操作所需的各种程序和数据。处理器1301、ROM 1302以及RAM 1303通过总线1304彼此相连。输入/输出(I/O)接口1305也连接至总线1304。
通常,以下装置可以连接至I/O接口1305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1306;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1307;包括例如磁带、硬盘等的存储装置1308;以及通信装置1309。通信装置1309可以允许服务设备1300与其他设备进行无线或有线通信以交换数据。虽然示出了具有各种装置的服务设备1300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1309从网络上被下载和安装,或者从存储装置1308被安装,或者从ROM 1302被安装。在该计算机程序被处理器1301执行时,可以执行本公开实施例提供的任意方法中限定的功能。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种数据库弹性方法,其特征在于,包括:
接收对本地盘中的目标数据库的弹性请求,所述目标数据库包括作为备库的第一数据库和作为主库的第二数据库;
确定对所述目标数据库的弹性变配方案;
其中,所述弹性变配方案包括:对所述第一数据库进行弹性变配处理,得到变配后的第三数据库;
对所述第三数据库和所述第二数据库进行主备切换,将所述第三数据库切换为所述目标数据库的主库,将所述第二数据库切换为所述目标数据库的备库;
对所述第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的所述第三数据库和作为备库的所述第四数据库得到弹性变配后的所述目标数据库。
2.根据权利要求1所述的方法,其特征在于,所述弹性请求为扩容请求,所述弹性变配为扩容变配,第一主机设备上包括所述目标数据库对应的目标实例,所述目标实例包括以下至少一项:所述第一数据库,所述第二数据库;
所述确定对所述目标数据库的弹性变配方案之前,所述方法还包括:
基于所述扩容请求,获取第一资源信息,所述第一资源信息包括所述第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,以及所述第一主机设备的空闲计算资源,所述第一主机设备的计算资源超载阈值;
根据所述第一资源信息,确定对所述目标实例进行扩容变配的目标评估结果。
3.根据权利要求2所述的方法,其特征在于,所述目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;
其中,所述直接弹性评估结果包括:所述目标实例进行扩容变配所需的调整计算资源小于或等于所述第一主机设备的空闲计算资源,在所述第一主机设备上执行所述弹性变配方案中与所述目标实例相关的方案;
所述先弹后迁评估结果包括:所述调整计算资源大于所述第一主机设备的空闲计算资源且小于或等于目标资源,在所述第一主机设备上先执行所述弹性变配方案中与所述目标实例相关的方案,再执行第一迁移方案,所述目标资源为所述第一主机设备的空闲计算资源与所述计算资源超载阈值之和,所述第一迁移方案为将所述第一主机设备上的第一实例从所述第一主机设备上迁移到第二主机设备上;
所述先迁后弹评估结果包括:所述调整计算资源大于所述目标资源,且所述目标实例占用的存储资源大于或等于所述第一实例占用的存储资源,在所述第一主机设备上先执行所述第一迁移方案,再执行所述弹性变配方案中与所述目标实例相关的方案;
所述直接迁移评估结果包括:所述调整计算资源大于所述目标资源,且所述目标实例占用的存储资源小于所述第一主机上的任意第二实例占用的存储资源,执行第二迁移方案的同时执行所述弹性调度方案中与所述目标实例相关的方案,所述第二迁移方案为将所述目标实例从所述第一主机设备上迁移到第三主机设备上。
4.根据权利要求3所述的方法,其特征在于,在所述目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果的情况下,所述弹性变配处理为先删除后创建处理;
在所述目标评估结果包括直接迁移评估结果的情况下,所述弹性变配处理为先创建后删除处理。
5.根据权利要求3所述的方法,其特征在于,所述目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;
所述方法还包括:
基于所述扩容请求,获取资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息,所述第二资源信息包括对应的目标主机设备的空闲计算资源;
在所述目标评估结果为所述先弹后迁评估结果或所述先迁后弹评估结果的情况下,基于所述第一资源信息和所述第二资源信息,从所述第一主机设备上的实例中确定满足第一条件的所述第一实例,从所述至少一个目标主机设备中确定满足第二条件的所述第二主机设备;所述第一条件包括:占用的计算资源大于或等于所述调整计算资源与所述第一主机设备的空闲计算资源之差的实例;所述第二条件包括:空闲计算资源大于或等于所述第一实例占用的计算资源的目标主机设备;
在所述目标评估结果为所述直接迁移评估结果的情况下,基于所述第一资源信息和所述第二资源信息,从所述至少一个目标主机设备中确定满足第三条件的所述第三主机设备;所述第三条件包括:空闲计算资源大于或等于所述目标实例占用的计算资源与所述调整计算资源之和的目标主机设备。
6.根据权利要求5所述的方法,其特征在于,所述第二资源信息包括对应的目标主机设备的空闲存储资源;
在所述目标评估结果为所述先弹后迁评估结果或所述先迁后弹评估结果的情况下,所述第一条件具体包括以下任一项:
占用的计算资源大于或等于所述调整计算资源与所述第一主机设备的空闲计算资源之差的实例中,占用的计算资源最小的实例;
占用的计算资源大于或等于所述调整计算资源与所述第一主机设备的空闲计算资源之差,且占用的存储资源最小的实例;
所述第二条件具体包括以下任一项:
空闲计算资源大于或等于所述第一实例占用的计算资源的目标主机设备中,空闲计算资源最大的目标主机设备;
空闲计算资源大于或等于所述第一实例占用的计算资源的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备;
在所述目标评估结果为所述直接迁移评估结果的情况下,所述第三条件具体包括以下任一项:
空闲计算资源大于或等于所述目标实例占用的计算资源与所述调整计算资源之和的目标主机设备中,空闲计算资源最大的目标主机设备;
空闲计算资源大于或等于所述目标实例占用的计算资源与所述调整计算资源之和的目标主机设备中,空闲计算资源和空闲存储资源的加权值最大的目标主机设备。
7.根据权利要求6所述的方法,其特征在于,所述第一资源信息还包括所述第一主机设备上每个实例的固定标签,所述固定标签用于指示对应的实例允许迁移的主机设备;
所述第二资源信息还包括对应的目标主机设备的设备标签;
在所述目标评估结果为所述先弹后迁评估结果或所述先迁后弹评估结果的情况下,所述第一实例的固定标签与所述第二主机设备的设备标签匹配;
在所述目标评估结果为所述直接迁移评估结果的情况下,所述目标实例的固定标签与所述第三主机设备的设备标签匹配。
8.根据权利要求3至7中任一项所述的方法,其特征在于,所述第一迁移方案包括:
在所述第二主机设备上创建所述第一实例;
将所述第一实例对应的远程备份数据以容器所具备的最大网络速度和最大的读写速度拷贝到所述第二主机设备的空闲存储资源中,所述第一实例对应的远程备份数据是预设时长内更新过的数据;
拉起所述第一实例;
删除所述第一主机设备上的所述第一实例;
所述第二迁移方案包括:
在所述第三主机设备上创建所述目标实例对应的扩容变配后的实例;
将所述目标实例对应的远程备份数据以容器所具备的最大网络速度和最大的读写速度拷贝到所述第三主机设备的空闲存储资源中,所述目标实例对应的远程备份数据是所述预设时长内更新过的数据;
拉起所述扩容变配后的实例;
删除所述第一主机设备上的所述目标实例。
9.一种数据库弹性装置,其特征在于,所述装置包括:接收模块和确定模块;
所述接收模块,用于接收对本地盘中的目标数据库的弹性请求,所述目标数据库包括作为备库的第一数据库和作为主库的第二数据库;
所述确定模块,用于确定对所述目标数据库的弹性变配方案;
其中,所述弹性变配方案包括:对所述第一数据库进行弹性变配处理,得到变配后的第三数据库;
对所述第三数据库和所述第二数据库进行主备切换,将所述第三数据库切换为所述目标数据库的主库,将所述第二数据库切换为所述目标数据库的备库;
对所述第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的所述第三数据库和作为备库的所述第四数据库得到弹性变配后的所述目标数据库。
10.一种数据库弹******,其特征在于,所述***包括:
资源管理微服务模块,被配置为:接收针对目标数据库的目标请求,所述目标请求为弹性请求或弹性评估请求,所述目标数据库包括作为备库的第一数据库和作为主库的第二数据库;
数据服务模块,被配置为:提供所述目标数据库对应的目标实例所在的第一主机设备上的第一资源信息,所述目标实例包括以下至少一项:所述第一数据库,所述第二数据库;所述第一资源信息包括所述第一主机设备上每个实例占用的计算资源和每个实例占用的存储资源,所述第一主机设备的空闲计算资源,所述第一主机设备的计算资源超载阈值;
资源评估模块,被配置为:在所述目标请求为扩容变配相关请求的情况下,基于所述目标请求,从所述数据服务模块获取所述第一资源信息,并根据所述第一资源信息,确定对所述目标实例进行扩容变配的目标评估结果,所述目标评估结果包括以下任一项:直接弹性评估结果、先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果;
在所述目标请求为弹性评估请求的情况下,将所述目标评估结果发送至所述资源管理微服务模块;
资源池数据模块,被配置为:提供资源池中至少一个目标主机设备中每个目标主机设备对应的第二资源信息,所述第二资源信息包括对应的目标主机设备的空闲计算资源;
调度策略确定模块,被配置为:从所述资源评估模块获取所述目标评估结果;
在所述目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,基于所述目标评估结果,以及从所述资源池数据模块获取的第二资源信息,确定对所述目标实例进行扩容变配的迁移方案对应的迁移调度策略,所述调度策略包括所述迁移方案对应的迁移实例,以及所述迁移实例需要迁移到的目标主机设备;
资源调度模块,被配置为:在所述目标请求为缩容变配对应的弹性请求的情况下,执行弹性变配方案中与所述目标实例相关的方案对应的弹性调度策略;
在所述目标请求为扩容请求,且所述目标评估结果为直接弹性评估结果的情况下,执行弹性变配方案中与所述目标实例相关的方案对应的弹性调度策略;
在所述目标请求为扩容请求,且所述目标评估结果包括以下任一项:先弹后迁评估结果、先迁后弹评估结果、直接迁移评估结果的情况下,执行弹性变配方案中与所述目标实例相关的方案对应的弹性调度策略,执行所述目标评估结果对应的所述迁移调度策略;
其中,所述弹性变配方案包括:对所述第一数据库进行弹性变配处理,得到变配后的第三数据库;
对所述第三数据库和所述第二数据库进行主备切换,将所述第三数据库切换为所述目标数据库的主库,将所述第二数据库切换为所述目标数据库的备库;
对所述第二数据库进行弹性变配处理,得到变配后的第四数据库,以基于作为主库的所述第三数据库和作为备库的所述第四数据库得到弹性变配后的所述目标数据库。
CN202210546286.8A 2022-05-18 2022-05-18 数据库弹性方法、数据库弹性装置及数据库弹****** Pending CN114996351A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210546286.8A CN114996351A (zh) 2022-05-18 2022-05-18 数据库弹性方法、数据库弹性装置及数据库弹******

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210546286.8A CN114996351A (zh) 2022-05-18 2022-05-18 数据库弹性方法、数据库弹性装置及数据库弹******

Publications (1)

Publication Number Publication Date
CN114996351A true CN114996351A (zh) 2022-09-02

Family

ID=83028194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210546286.8A Pending CN114996351A (zh) 2022-05-18 2022-05-18 数据库弹性方法、数据库弹性装置及数据库弹******

Country Status (1)

Country Link
CN (1) CN114996351A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109521943A (zh) * 2017-09-19 2019-03-26 腾讯科技(深圳)有限公司 云数据库实例的分配方法及相关产品
CN109586952A (zh) * 2018-11-07 2019-04-05 广州虎牙信息科技有限公司 服务器扩容方法、装置
CN112115311A (zh) * 2020-08-28 2020-12-22 苏宁金融科技(南京)有限公司 一种图数据库的弹性扩缩容方法、装置、设备及存储介质
CN113918282A (zh) * 2021-10-09 2022-01-11 京东科技信息技术有限公司 一种数据库访问方法、装置、电子设备及计算机可读介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109521943A (zh) * 2017-09-19 2019-03-26 腾讯科技(深圳)有限公司 云数据库实例的分配方法及相关产品
CN109586952A (zh) * 2018-11-07 2019-04-05 广州虎牙信息科技有限公司 服务器扩容方法、装置
CN112115311A (zh) * 2020-08-28 2020-12-22 苏宁金融科技(南京)有限公司 一种图数据库的弹性扩缩容方法、装置、设备及存储介质
CN113918282A (zh) * 2021-10-09 2022-01-11 京东科技信息技术有限公司 一种数据库访问方法、装置、电子设备及计算机可读介质

Similar Documents

Publication Publication Date Title
JP7138126B2 (ja) リソース配置を最適化するための適時性リソース移行
US10873623B2 (en) Dynamically modifying a cluster of computing nodes used for distributed execution of a program
KR101547498B1 (ko) 하이브리드 클라우드 환경에서 데이터를 분산하는 방법 및 장치
US8458284B2 (en) Systems and methods for efficient live application migration within bandwidth constrained networks
EP2710470B1 (en) Extensible centralized dynamic resource distribution in a clustered data grid
US8260840B1 (en) Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
CN110262901B (zh) 一种数据处理方法及数据处理***
CN110383764B (zh) 无服务器***中使用历史数据处理事件的***和方法
CN108900626B (zh) 一种云环境下数据存储方法、装置及***
US10810054B1 (en) Capacity balancing for data storage system
JP5780377B2 (ja) 情報処理システム、及びアプリケーションの移転方法
Han et al. EdgeTuner: Fast scheduling algorithm tuning for dynamic edge-cloud workloads and resources
CN115686805A (zh) Gpu资源共享的方法和装置、调度gpu资源共享的方法和装置
JP2022112614A (ja) リソースの移動スケジュールを決定する装置
WO2022111456A1 (zh) 基于众核***的核共享方法及装置、电子设备、介质
CN112631680B (zh) 微服务容器调度***、方法、装置和计算机设备
CN114816272B (zh) Kubernetes环境下的磁盘管理***
CN116418826A (zh) 对象存储***扩容方法、装置、***及计算机设备
CN114996351A (zh) 数据库弹性方法、数据库弹性装置及数据库弹******
WO2018188959A1 (en) Method and apparatus for managing events in a network that adopts event-driven programming framework
CN109376001A (zh) 一种资源分配的方法及设备
CN112416517A (zh) 一种虚拟化计算组织控制管理***及方法
KR101681651B1 (ko) 데이터베이스 관리 시스템 및 방법
US20230418681A1 (en) Intelligent layer derived deployment of containers
US20220350656A1 (en) Increase assignment effectiveness of kubernetes pods by reducing repetitive pod mis-scheduling

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