CN116595100A - 分布式数据库的扩容方法 - Google Patents
分布式数据库的扩容方法 Download PDFInfo
- Publication number
- CN116595100A CN116595100A CN202310629181.3A CN202310629181A CN116595100A CN 116595100 A CN116595100 A CN 116595100A CN 202310629181 A CN202310629181 A CN 202310629181A CN 116595100 A CN116595100 A CN 116595100A
- Authority
- CN
- China
- Prior art keywords
- capacity expansion
- distributed database
- data
- current limiting
- tool
- 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 164
- 230000008569 process Effects 0.000 claims abstract description 119
- 230000005540 biological transmission Effects 0.000 claims description 48
- 238000007726 management method Methods 0.000 abstract description 27
- 238000013468 resource allocation Methods 0.000 abstract description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2219—Large Object storage; Management thereof
-
- 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)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种分布式数据库的扩容方法,包括利用资源管理组工具或者限流算法,限制分布式数据库扩容过程中网络IO和磁盘IO的资源。本发明提供了一种分布式数据库的扩容方法中,影响最大的就是扩容使用到的网络IO和磁盘IO,通过资源管理组工具对扩容使用到的网络IO和磁盘IO的进程进行资源分配或者通过资源管理组工具对扩容使用到的网络IO和磁盘IO的进程进行流速率限制,可以有效地限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,进而在分布式数据库扩容过程中,避免分布式数据库的用户的正常业务受到影响。
Description
技术领域
本发明涉及数据库技术领域,特别是涉及一种分布式数据库的扩容方法。
背景技术
随着信息时代发展,需要存储的数据越来越多,无共享的分布式数据库在存储大量数据方面使用的越来越多,随着数据规模的增长,之前的节点规划赶不上变化,因此节点扩容也是越来普遍。对于一些业务必须一直在线的情况,在数据库扩容的过程中,用户要求数据库扩容要对现有的业务影响小,不能让扩容占用大量的资源,不然可能会导致正常业务无法及时响应,影响客户体验。因此,控制扩容资源使用就变得非常重要。目前扩容资源控制主流方式是采用资源组的方式来控制,但是只支持控制实例级、库级,并没有控制扩容整个过程级别的资源限制功能。在无共享分布式数据库集群扩容过程中,对分布式数据库的正常业务影响最大的就是扩容过程中使用到的网络IO和磁盘IO,如何限制扩容使用到的网络IO和或者磁盘IO占用的资源是目前亟需解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式数据库的扩容方法,能够解决在分布式数据库扩容过程中,使用到的网络IO和或者磁盘IO占用的资源过多的问题,从而避免分布式数据库的用户的正常业务受到影响。
具体地,本发明提供了一种分布式数据库的扩容方法,包括:
利用资源管理组工具和/或者限流算法,限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源。
可选地,所述分布式数据库的扩容方法还包括:
执行扩容工具,以进行扩容;
所述利用所述限流算法来限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源包括:
在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式;
所述算法限流限制模式中具有所述限流算法,所述算法限流限制模式配置成根据所述限流算法和所述限流速率来限制所述分布式数据库扩容过程需要进行的所述数据读写和/或所述数据发送的流速率,以限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源。
可选地,所述的在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式,包括:
增加新节点,并控制所述扩容工具对所述新节点进行初始化;
建立所述扩容工具与所述数据库服务器主节点的连接;
通过所述扩容工具向所述数据库服务器主节点下达扩容数据重分布命令和配置算法限流速率参数的命令;
在所述数据库服务器主节点接收到所述扩容数据重分布命令和所述配置算法限流速率参数的命令后,配置所述限流速率,
通过所述数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式。
可选地,所述的通过所述数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式,包括:
所述数据库服务器主节点将所述扩容数据重分布命令和所述限流速率发送给所述数据库服务器的下层数据节点;
所述数据库服务器的下层数据节点进行扩容;
在所述数据库服务器的下层数据节点的扩容进程中,通过所述数据读写或者数据发送的函数调用利用所述限流速率的所述限流算法;
利用所述限流速率运行所述限流算法来限制所述分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率。
可选地,所述的利用所述限流速率的参数运行所述限流算法来限制所述分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率,包括:
获取所述数据读写和/或所述数据发送的流量;
比较所述数据读写和/或所述数据发送的流量与所述限流速率对应的流量;
若所述数据读写和/或所述数据发送的流量小于所述限流速率对应的流量,不限制所述数据读写和/或所述数据发送;
若所述数据读写和/或所述数据发送的流量大于或等于所述限流速率对应的流量,进行进程等待,以限制所述数据读写和/或所述数据发送,进而使所述数据读写和/或所述数据发送的最大流量为所述限流速率对应的流量。
可选地,所述分布式数据库的扩容方法还包括:
统计进程等待的时间,所述的统计进程等待的时间包括:
记录进入限制所述数据读写和/或所述数据发送的时间;
计算所述数据读写和/或所述数据发送的流量按照所述限流速率对应的流量运行的运行时间;
根据当前时间,最后一次进入限制所述数据读写和/或所述数据发送的时间、和所述运行时间确定所述进程等待的时间。
可选地,判断所述分布式数据库能否支持利用资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源;
若分布式数据库不能支持利用资源管理组工具来控制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,利用所述限流算法来限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源;
若分布式数据库能支持利用资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,利用所述资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源。
可选地,利用所述资源管理组工具控制所述分布式数据库扩容过程中网络IO和磁盘IO的资源包括:
通过所述资源管理组工具创建扩容控制组并设置扩容控制组的限额;
所述扩容控制组依据所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额;
可选地,所述的通过所述资源管理组工具创建扩容控制组并设置扩容控制组的限额,包括:
利用所述资源管理组工具在数据库服务器主节点调用资源管理器,并把创建扩容控制组并设置扩容控制组的限额的命令下发给所述数据库服务器的下层数据节点;
所述数据库服务器的下层数据节点通过所述资源管理组工具在所述下层数据节点调用资源管理器执行本地操作,创建扩容控制组并设置所述扩容控制组的所述限额。
可选地,所述分布式数据库的扩容方法还包括:
执行扩容工具,以进行扩容;
所述的所述扩容控制组依据所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额,包括:
增加新节点,并控制所述扩容工具对所述新节点进行初始化;
建立扩容工具与所述数据库服务器主节点连接;
通过扩容工具向所述数据库服务器主节点下达扩容数据重分布命令;
所述数据库服务器主节点接收到所述扩容数据重分布命令并执行,以进行扩容,得到扩容用的进程,并将扩容用的进程加入所述扩容控制组,所述扩容控制组依据所述限额对扩容用的进程中的网络IO和磁盘IO的资源进行资源限额。
可选地,所述分布式数据库的扩容方法还包括:
可任一时刻获取扩容控制组的限额,并更新扩容控制组的限额,以使所述扩容控制组依据更新后的所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额。
本发明的分布式数据库的扩容方法中,在分布式数据库扩容过程中,影响最大的就是扩容使用到的网络IO和磁盘IO,通过资源管理组工具对扩容使用到的网络IO和磁盘IO的进程进行资源分配或者通过资源管理组工具对扩容使用到的网络IO和磁盘IO的进程进行流速率限制,可以有效地限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,进而在分布式数据库扩容过程中,避免分布式数据库的用户的正常业务受到影响。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其它目的、优点和特征。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
图1是根据本发明一个实施例的分布式数据库的扩容方法的示意流程图;
图2是根据本发明另一个实施例的分布式数据库的扩容方法的示意流程图;
图3是根据本发明另一个实施例的分布式数据库的扩容方法的示意流程图。
具体实施方式
分布式数据库系统通常使用较小的计算机系统,每台计算机可单独放在一个地方,每台计算机中都可能有DBMS的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。
随着信息时代发展,需要存储的数据越来越多,无共享的分布式数据库在存储大量数据方面使用的越来越多,随着数据规模的增长,之前的节点规划赶不上变化,因此节点扩容也是越来普遍。对于一些业务必须一直在线的情况,在数据库扩容的过程中,用户要求数据库扩容要对现有的业务影响小,不能让扩容占用大量的资源,不然可能会导致正常业务无法及时响应,影响客户体验。因此,控制扩容资源使用就变得非常重要。目前扩容资源控制主流方式是采用资源组的方式来控制,但是只支持控制实例级、库级,并没有控制扩容整个过程级别的资源限制功能。在无共享分布式数据库集群扩容过程中,对分布式数据库的正常业务影响最大的就是扩容过程中使用到的网络IO和磁盘IO,如何限制扩容使用到的网络IO和或者磁盘IO占用的资源是目前亟需解决的问题。鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式数据库的扩容方法,能够解决在分布式数据库扩容过程中,使用到的网络IO和或者磁盘IO占用的资源过多的问题,从而避免分布式数据库的用户的正常业务受到影响。
图1是根据本发明一个实施例的分布式数据库的扩容方法的示意流程图。如图1所示,并参考图2至图3,本发明实施例提供了一种分布式数据库的扩容方法,包括利用资源管理组工具或者限流算法,限制分布式数据库扩容过程中网络IO和磁盘IO的资源。
在分布式数据库扩容过程中,影响最大的就是扩容使用到的网络IO和磁盘IO,通过资源管理组工具单独对扩容使用到的网络IO和磁盘IO的进程进行资源分配或者通过限流算法对扩容使用到的网络IO和磁盘IO的进程进行流速率限制,可以有效地限制分布式数据库扩容过程中网络IO和磁盘IO的资源,进而在分布式数据库扩容过程中,避免分布式数据库的用户的正常业务受到影响,提高用户的满意度。
在本发明的一些实施例中,分布式数据库的扩容方法还包括执行扩容工具,以进行扩容。利用限流算法来限制分布式数据库扩容过程中网络IO和磁盘IO的资源包括:在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式。算法限流限制模式中具有限流算法,算法限流限制模式配置成根据限流算法和限流速率来限制分布式数据库扩容过程需要进行的数据读写和/或数据发送的流速率,以限制分布式数据库扩容过程中网络IO和磁盘IO的资源。
通过扩容工具进行扩容,并在扩容进程中获取限流速率,以在限流算法工作中,可以采用限流速率的参数来限制数据读写和/或数据发送的流速率,流量大的数据读写和/或数据发送会被限制,从而可以减少这些流量大的数据读写和/或数据发送对使用分布式数据具的用户的正常业务的影响。这里的数据读写或者数据发送的函数主要是读表、写表、写日志、重分布发送数据等。
在本发明的一些实施例中,在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式,包括增加新节点,并控制扩容工具对新节点进行初始化,初始化的新节点只有元数据。建立扩容工具与数据库服务器主节点的连接。通过扩容工具向数据库服务器主节点下达扩容数据重分布命令和配置算法限流速率参数的命令。在数据库服务器主节点接收到扩容数据重分布命令和配置算法限流速率参数的命令后,配置限流速率。通过数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式。
在一些实施例中,建立扩容工具与数据库服务器主节点的连接包括扩容工具连接数据库服务器主节点,并向数据库服务器主节点发送连接信息和数据库服务器主节点接收到连接信息,并和扩容工具建立连接。
进一步地,在本发明的一些实施例中,通过数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式,包括数据库服务器主节点将扩容数据重分布命令和限流速率发送给数据库服务器的下层数据节点。数据库服务器的下层数据节点进行扩容。在数据库服务器的下层数据节点的扩容进程中,通过数据读写或者数据发送的函数调用利用限流速率的限流算法。利用限流速率运行限流算法来限制分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率。也就是说,算法限流限制模式最终是通过限制扩容过程需要进行的数据读写以及数据发送来进行限流从而达到限制分布式数据库扩容过程中网络IO和磁盘IO的资源的目的。
进一步地,在本发明的一些实施例中,如图2所示,利用限流速率的参数运行限流算法来限制分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率,包括:获取数据读写和/或数据发送的流量。比较数据读写和/或数据发送的流量与限流速率对应的流量。若数据读写和/或数据发送的流量小于限流速率对应的流量,不限制数据读写和/或数据发送。若数据读写和/或数据发送的流量大于或等于限流速率对应的流量,进行进程等待,以限制数据读写和/或数据发送,进而使数据读写和/或数据发送的最大流量为限流速率对应的流量。
获取数据读写和/或数据发送的流量包括由计数器来统计数据读写和/或数据发送的流量。在一些实施例中,比较数据读写和/或数据发送的流量与限流速率对应的流量可以是比较数据读写和/或数据发送的流量与限流速率与数据读写和/或数据发送的进程时间的乘积。也就是说,如果数据读写和/或数据发送的流量大于限流速率与数据读写和/或数据发送的进程时间的乘积就认为数据读写和/或数据发送的流速过大,如果继续进行,就会占用过多的资源,影响分布式数据库的用户的正常业务,所以数据读写和/或数据发送的进程只能等待,从而起到限制的作用。
在本发明的一些实施例中,如图2所示,分布式数据库的扩容方法还包括统计进程等待的时间。统计进程等待的时间包括记录进入限制数据读写和/或数据发送的时间。计算数据读写和/或数据发送的流量按照限流速率对应的流量运行的运行时间。根据当前时间,最后一次进入限制数据读写和/或数据发送的时间、和运行时间确定进程等待的时间。也就是说,进程等待的时间等于数据发送的时间减去最后一次进入限制数据读写和/或数据发送的时间。采用这种方法来控制进程等待的时间,可以使得对数据读写和/或数据发送的进程进行更精确的控制,避免进程等待时间过程,延缓分布式数据库的扩容进度。
在本发明的一些实施例中,利用资源管理组工具控制分布式数据库扩容过程中网络IO和磁盘IO的资源包括通过资源管理组工具创建扩容控制组并设置扩容控制组的限额。扩容控制组依据限额对扩容过程中网络IO和磁盘IO的资源进行资源限额。
进一步地,在本发明的一些实施例中,如图3所示,通过资源管理组工具创建扩容控制组并设置扩容控制组的限额,包括利用资源管理组工具在数据库服务器主节点调用资源管理器,并把创建扩容控制组并设置扩容控制组的限额的命令下发给数据库服务器的下层数据节点。数据库服务器的下层数据节点通过资源管理组工具在下层数据节点调用资源管理器执行本地操作,创建扩容控制组并设置扩容控制组的限额。
在本发明的一些实施例中,在利用资源管理组工具在数据库服务器主节点调用资源管理器前,分布式数据库的扩容方法还包括增加资源管理组工具。资源管理组工具是一个管理控制组的工具,用来创建、设置、查看、销毁控制组。
进一步地,在本发明的一些实施例中,如图3所示,分布式数据库的扩容方法还包括执行扩容工具,以进行扩容。扩容控制组依据限额对扩容过程中网络IO和磁盘IO的资源进行资源限额,包括增加新节点,并控制扩容工具对新节点进行初始化。建立扩容工具与数据库服务器主节点连接。通过扩容工具向数据库服务器主节点下达扩容数据重分布命令。数据库服务器主节点接收到扩容数据重分布命令并执行,以进行扩容,得到扩容用的进程,并将扩容用的进程加入扩容控制组,扩容控制组依据限额对扩容用的进程中的网络IO和磁盘IO的资源进行资源限额。
也就是说,数据库服务器主节点将扩容数据重分布命令发送给数据库服务器的下层数据节点,数据库服务器的下层数据节点进行扩容。得到扩容用的进程,并将扩容用的进程加入扩容控制组,扩容控制组依据限额对扩容用的进程中的网络IO和磁盘IO的资源进行资源限额。将扩容用的进程加入扩容控制组包括将扩容进程以及相应的子进程和下层数据节点扩容期间使用的进程加入扩容控制组,而扩容控制组会自动对扩容进程以及相应的子进程和下层数据节点扩容期间使用的进程进行资源限额。
在本发明的一些实施例中,分布式数据库的扩容方法还包括可任一时刻获取扩容控制组的限额,并更新扩容控制组的限额,以使扩容控制组依据更新后的限额对扩容过程中网络IO和磁盘IO的资源进行资源限额。也就是说,根据用户的业务量来更新扩容控制组的限额,当使用分布式数据库的用户的业务量多的时候,减少扩容控制组的限额,当使用分布式数据库的用户的业务量少的时候,增加扩容控制组的限额。比如,工作日的工作时间,使用分布式数据库的用户的业务量比较多,就可以减少扩容控制组的限额。而在其余时间,随着布式数据库的用户的业务量减少,就可以增加扩容控制组的限额。从而在尽可能减少对数据库的用户的业务量的影响的情况下,尽快完成分布式数据库的扩容。
在本发明的一些实施例中,分布式数据库的扩容方法还包括判断分布式数据库能否支持利用资源管理组工具来限制分布式数据库扩容过程中网络IO和磁盘IO的资源。若分布式数据库不能支持利用资源管理组工具来控制分布式数据库扩容过程中网络IO和磁盘IO的资源,利用限流算法来限制分布式数据库扩容过程中网络IO和磁盘IO的资源。若分布式数据库能支持利用资源管理组工具来限制分布式数据库扩容过程中网络IO和磁盘IO的资源,利用资源管理组工具来限制分布式数据库扩容过程中网络IO和磁盘IO的资源。
本发明实施例还提供了一种机器可读存储介质,其上存储有机器可执行程序,其特征在于,机器可执行程序被处理器执行时实现包括上述任一实施例中的方法。
本实施例提供的流程图并不旨在指示方法的操作将以任何特定的顺序执行,或者方法的所有操作都包括在所有的每种情况下。此外,方法可以包括附加操作。在本实施例方法提供的技术思路的范围内,可以对上述方法进行附加的变化。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
Claims (10)
1.一种分布式数据库的扩容方法,其特征在于,包括:
利用资源管理组工具和/或者限流算法,限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源。
2.根据权利要求1所述的分布式数据库的扩容方法,其特征在于,还包括:
执行扩容工具,以进行扩容;
所述利用所述限流算法来限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源包括:
在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式;
所述算法限流限制模式中具有所述限流算法,所述算法限流限制模式配置成根据所述限流算法和所述限流速率来限制所述分布式数据库扩容过程需要进行的所述数据读写和/或所述数据发送的流速率,以限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源。
3.根据权利要求2所述的分布式数据库的扩容方法,其特征在于,
所述的在执行扩容工具的过程中,获取限流速率并启动算法限流限制模式,包括:
增加新节点,并控制所述扩容工具对所述新节点进行初始化;
建立所述扩容工具与所述数据库服务器主节点的连接;
通过所述扩容工具向所述数据库服务器主节点下达扩容数据重分布命令和配置算法限流速率参数的命令;
在所述数据库服务器主节点接收到所述扩容数据重分布命令和所述配置算法限流速率参数的命令后,配置所述限流速率;
通过所述数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式。
4.根据权利要求3所述的分布式数据库的扩容方法,其特征在于,
所述的通过所述数据库服务器主节点进行数据重分布以进行扩容,同时启动算法限流限制模式,包括:
所述数据库服务器主节点将所述扩容数据重分布命令和所述限流速率发送给所述数据库服务器的下层数据节点;
所述数据库服务器的下层数据节点进行扩容;
在所述数据库服务器的下层数据节点的扩容进程中,通过所述数据读写或者数据发送的函数调用利用所述限流速率的所述限流算法;
利用所述限流速率运行所述限流算法来限制所述分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率。
5.根据权利要求4所述的分布式数据库的扩容方法,其特征在于,
所述的利用所述限流速率的参数运行所述限流算法来限制所述分布式数据库扩容过程需要进行的数据读写和/或者数据发送的流速率,包括:
获取所述数据读写和/或所述数据发送的流量;
比较所述数据读写和/或所述数据发送的流量与所述限流速率对应的流量;
若所述数据读写和/或所述数据发送的流量小于所述限流速率对应的流量,不限制所述数据读写和/或所述数据发送;
若所述数据读写和/或所述数据发送的流量大于或等于所述限流速率对应的流量,进行进程等待,以限制所述数据读写和/或所述数据发送,进而使所述数据读写和/或所述数据发送的最大流量为所述限流速率对应的流量。
6.根据权利要求5所述的分布式数据库的扩容方法,其特征在于,还包括:
统计进程等待的时间,所述的统计进程等待的时间包括:
记录进入限制所述数据读写和/或所述数据发送的时间;
计算所述数据读写和/或所述数据发送的流量按照所述限流速率对应的流量运行的运行时间;
根据当前时间,最后一次进入限制所述数据读写和/或所述数据发送的时间、和所述运行时间确定所述进程等待的时间。
7.根据权利要求1所述的分布式数据库的扩容方法,其特征在于,还包括:
判断所述分布式数据库能否支持利用资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源;
若分布式数据库不能支持利用资源管理组工具来控制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,利用所述限流算法来限制所述分布式数据库扩容过程中所述网络IO和所述磁盘IO的资源;
若分布式数据库能支持利用资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源,利用所述资源管理组工具来限制所述分布式数据库扩容过程中网络IO和磁盘IO的资源。
8.根据权利要求1所述的分布式数据库的扩容方法,其特征在于,
利用所述资源管理组工具控制所述分布式数据库扩容过程中网络IO和磁盘IO的资源包括:
通过所述资源管理组工具创建扩容控制组并设置扩容控制组的限额;
所述扩容控制组依据所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额。
9.根据权利要求8所述的分布式数据库的扩容方法,其特征在于,
所述的通过所述资源管理组工具创建扩容控制组并设置扩容控制组的限额,包括:
利用所述资源管理组工具在数据库服务器主节点调用资源管理器,并把创建扩容控制组并设置扩容控制组的限额的命令下发给所述数据库服务器的下层数据节点;
所述数据库服务器的下层数据节点通过所述资源管理组工具在所述下层数据节点调用资源管理器执行本地操作,创建扩容控制组并设置所述扩容控制组的所述限额。
10.根据权利要求8所述的分布式数据库的扩容方法,其特征在于,还包括:
执行扩容工具,以进行扩容;
所述的所述扩容控制组依据所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额,包括:
增加新节点,并控制所述扩容工具对所述新节点进行初始化;
建立扩容工具与所述数据库服务器主节点连接;
通过扩容工具向所述数据库服务器主节点下达扩容数据重分布命令;
所述数据库服务器主节点接收到所述扩容数据重分布命令并执行,以进行扩容,得到扩容用的进程,并将扩容用的进程加入所述扩容控制组,所述扩容控制组依据所述限额对扩容用的进程中的网络IO和磁盘IO的资源进行资源限额;
所述分布式数据库的扩容方法还包括:
可任一时刻获取扩容控制组的限额,并更新扩容控制组的限额,以使所述扩容控制组依据更新后的所述限额对扩容过程中网络IO和磁盘IO的资源进行资源限额。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310629181.3A CN116595100A (zh) | 2023-05-30 | 2023-05-30 | 分布式数据库的扩容方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310629181.3A CN116595100A (zh) | 2023-05-30 | 2023-05-30 | 分布式数据库的扩容方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116595100A true CN116595100A (zh) | 2023-08-15 |
Family
ID=87608211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310629181.3A Pending CN116595100A (zh) | 2023-05-30 | 2023-05-30 | 分布式数据库的扩容方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116595100A (zh) |
-
2023
- 2023-05-30 CN CN202310629181.3A patent/CN116595100A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5491810A (en) | Method and system for automated data storage system space allocation utilizing prioritized data set parameters | |
JP4532423B2 (ja) | サーバシステム | |
US20060268321A1 (en) | Method and system for scheduling jobs in a computer system | |
US11528194B2 (en) | Enterprise control plane for data streaming service | |
CN104793988A (zh) | 跨数据库分布式事务的实现方法和装置 | |
CN108959510B (zh) | 一种分布式数据库的分区级连接方法和装置 | |
CN110781214A (zh) | 数据库读写方法、装置、计算机设备和存储介质 | |
US5884311A (en) | Method and system for dynamically configuring a relational database | |
US8151079B2 (en) | Computer system, storage area allocation method, and management computer | |
CN109885642B (zh) | 面向全文检索的分级存储方法及装置 | |
WO2022257719A1 (zh) | 数据库事务处理的方法、系统、电子设备及存储介质 | |
CN112463450A (zh) | 一种增量备份管理方法、系统、电子设备及存储介质 | |
CN112596762A (zh) | 一种滚动升级方法及装置 | |
US11429311B1 (en) | Method and system for managing requests in a distributed system | |
US20050071449A1 (en) | Policy driven autonomic computing-programmatic policy definitions | |
EP2662783A1 (en) | Data archiving approach leveraging database layer functionality | |
CN113641651A (zh) | 一种业务数据管理方法、系统及计算机存储介质 | |
CN115982101B (zh) | 基于多机房副本放置策略的机房数据迁移方法与装置 | |
CN112835638A (zh) | 一种基于嵌入式应用程序的配置信息管理方法及装置 | |
JP2006251990A (ja) | データベース再編成プログラムおよびデータベース再編成方法 | |
CN116595100A (zh) | 分布式数据库的扩容方法 | |
CN112115115B (zh) | 基于数据仓库的文件移动方法、设备和存储介质 | |
CN114816272A (zh) | Kubernetes环境下的磁盘管理系统 | |
KR102214697B1 (ko) | 데이터베이스 관리 시스템에서 데이터 저장을 위한 공간 관리를 제공하는 컴퓨터 프로그램 | |
JP2005316624A (ja) | データベース再編成プログラム、データベース再編成方法、及びデータベース再編成装置 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 100102 201, 2 / F, 101, No. 5 building, No. 7 Rongda Road, Chaoyang District, Beijing Applicant after: China Electronics Technology Group Jincang (Beijing) Technology Co.,Ltd. Address before: 100102 201, 2 / F, 101, No. 5 building, No. 7 Rongda Road, Chaoyang District, Beijing Applicant before: BEIJING KINGBASE INFORMATION TECHNOLOGIES Inc. Country or region before: China |