CN106331132A - 一种分布式数据库中节点的替换方法及装置 - Google Patents
一种分布式数据库中节点的替换方法及装置 Download PDFInfo
- Publication number
- CN106331132A CN106331132A CN201610777664.8A CN201610777664A CN106331132A CN 106331132 A CN106331132 A CN 106331132A CN 201610777664 A CN201610777664 A CN 201610777664A CN 106331132 A CN106331132 A CN 106331132A
- Authority
- CN
- China
- Prior art keywords
- node
- metadata
- new
- new node
- replaced
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种分布式数据库中节点的替换方法及装置,其中,所述方法包括:将原节点设置为不可用状态;将新节点设置为与原节点相同的IP地址;接收节点替换命令,根据命令中的IP地址判断替换的节点类型;根据所述节点类型对节点进行替换。通过在替换过程中设置相同的IP地址替换节点,并根据节点类型进行节点的替换,在此期间集群仍然可以对外提供正常的服务,不需要中断。
Description
技术领域
本发明属于分布式数据库技术领域,尤其是涉及一种分布式数据库中节点的替换方法及装置。
背景技术
分布式数据库是指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展,传统的关系型数据库开始从集中式模型向分布式架构发展,基于关系型的分布式数据库在保留了传统数据库的数据模型和基本特征下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。
在分布式数据库系统中,当集群规模不断扩大时,集群节点的损坏会成为一个比较常见的现象,同时随着数据量的增大,单个节点的计算能力和存储能力也会成为瓶颈。这两种情况下都需要对集群节点进行替换升级,原有的集群节点替换时需要停止当前的集群服务,替换节点就是进行副本节点的数据全量通过文件拷贝的方式进行节点替换,该种节点替换方式影响业务系统的运行。
发明内容
本发明实施例提供了一种分布式数据库中节点的替换方法及装置,以解决现有技术中节点替换影响系统运行的技术问题。
一方面,本发明实施例提供了一种分布式数据库中节点的替换方法,包括:
将原节点设置为不可用状态;
将新节点设置为与原节点相同的IP地址;
接收节点替换命令,根据命令中的IP地址判断替换的节点类型;
根据所述节点类型对节点进行替换。
进一步的,所述节点类型包括:管理节点和计算节点。
进一步的,所述节点为管理节点时,所述根据所述节点类型对节点进行替换,包括:
选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。
进一步的,在所述节点为计算节点时,所述根据所述节点类型对节点进行替换,包括:
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;
将该副本数据所在的机器的元数据和数据同步到新节点上;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
另一方面,本发明实施例还提供了一种分布式数据库中节点的替换装置,包括:
状态设置单元,用于将原节点设置为不可用状态;
地址设置单元,将新节点设置为与原节点相同的IP地址;
判断单元,用于接收节点替换命令,根据命令中的IP地址判断替换的节点类型;
替换单元,用于根据所述节点类型对节点进行替换。
进一步的,所述节点类型包括:管理节点和计算节点。
进一步的,所述替换单元包括:
选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。
进一步的,所述替换单元包括:
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;
将该副本数据所在的机器的元数据和数据同步到新节点上;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
本发明实施例提供的分布式数据库中节点的替换方法及装置,通过在替换过程中设置相同的IP地址替换节点,并根据节点类型进行节点的替换,在此期间集群仍然可以对外提供正常的服务,不需要中断。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的分布式数据库中节点的替换方法的流程示意图;
图2是本发明实施例二提供的分布式数据库中节点的替换方法的流程示意图;
图3是本发明实施例三提供的分布式数据库中节点的替换方法的流程示意图;
图4是本发明实施例四提供的分布式数据库中节点的替换装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的分布式数据库中节点的替换方法的流程图,本实施例可适用于在分布式数据库中对损坏节点进行替换的情况,该方法可以由分布式数据库中节点的替换装置来执行,该装置可由软件/硬件方式实现,并可集成于分布式数据库系统中。
参见图1,所述分布式数据库中节点的替换方法,包括:
S110,将原节点设置为不可用状态。
通过统一的管理集群的任何一个节点作为入口执行设置旧节点不可用的命令,示例性的,所述命令可以为替换SQL,SQL参数包含需要替换节点的IP。
S120,将新节点设置为与原节点相同的IP地址。
由于原有节点已从集群中移除,所以可将新节点的IP地址设置为与原有节点相同的IP地址。
S130,接收节点替换命令,根据命令中的IP地址判断替换的节点类型。
管理节点根据SQL中参数的IP来判断该所属的节点类型,示例性的,所述节点类型包括:管理节点和计算节点。
S140,根据所述节点类型对节点进行替换。
按照不同的替换执行逻辑对节点进行替换。
本实施例提供的分布式数据库中节点的替换方法,通过在替换过程中设置相同的IP地址替换节点,并根据节点类型进行节点的替换,在此期间集群仍然可以对外提供正常的服务,不需要中断。
实施例二
图2是本发明实施例二提供的分布式数据库中节点的替换方法的流程示意图,本发明实施例以上述实施例为基础,进一步的,将所述根据所述节点类型对节点进行替换,具体优化为:在所述节点为管理节点时,选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;所述新节点在同步期间执行元数据的日志同步;检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。对转换后的数据进行压缩。
参见图2,所述分布式数据库中节点的替换方法,包括:
S210,将原节点设置为不可用状态。
S220,将新节点设置为与原节点相同的IP地址。
S230,接收节点替换命令,根据命令中的IP地址判断替换的节点类型。
S240,在所述节点为管理节点时,选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点。
选择任何一个可用的管理节点的元数据同步到被替换的新节点上。
S250,所述新节点在同步期间执行元数据的日志同步。
新替换的节点执行期间积累的元数据的同步日志进行增量元数据的同步。
S260,检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。对转换后的数据进行压缩。
本实施例通过将所述根据所述节点类型对节点进行替换,具体优化为:在所述节点为管理节点时,选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;所述新节点在同步期间执行元数据的日志同步;检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。对转换后的数据进行压缩。可以实现对管理节点的替换。
实施例三
图3是本发明实施例三提供的分布式数据库中节点的替换方法的流程示意图,本发明实施例以上述实施例为基础,进一步的,将所述根据所述节点类型对节点进行替换,具体优化为:在所述节点为计算节点时,通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;将该副本数据所在的机器的元数据和数据同步到新节点上;所述新节点在同步期间执行元数据的日志同步;检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
参见图3,所述分布式数据库中节点的替换方法,包括:
S310,将原节点设置为不可用状态。
S320,将新节点设置为与原节点相同的IP地址。
S330,接收节点替换命令,根据命令中的IP地址判断替换的节点类型。
S340,在所述节点为计算节点时,通过管理节点中的元数据查询中旧节点机器副本数据所在的机器。
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器,元数据反应了存储的数据的位置对应关系。根据元数据确定节点机器副本数据所在的机器。
S350,将该副本数据所在的机器的元数据和数据同步到新节点上。
S360,所述新节点在同步期间执行元数据的日志同步。
新替换的节点执行期间积累的数据的同步日志进行增量数据的同步,
S370,检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
增量元数据同步完成后检查新节点的元数据版本和选择的同步节点的元数据版本是否相同,增量数据同步完成后检查新节点的数据版本和选择的同步节点的数据版本是否相同,如果元数据和数据版本都相同,则设置被替换的新节点可用,后续该节点在集群中可见,元数据版本或者数据版本不同时继续进行增量元数据和数据的同步,该节点仍然不可用,在集群中仍然不可见,在此期间集群仍然可以对外提供正常的服务,不需要中断。
本实施例通过将所述根据所述节点类型对节点进行替换,具体优化为:在所述节点为计算节点时,通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;将该副本数据所在的机器的元数据和数据同步到新节点上;所述新节点在同步期间执行元数据的日志同步;检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。实现对计算节点的替换。
实施例四
图4是本发明实施例四提供的分布式数据库中节点的替换装置的结构示意图,如图4所示,所述装置包括:
状态设置单元410,用于将原节点设置为不可用状态;
地址设置单元420,将新节点设置为与原节点相同的IP地址;
判断单元430,用于接收节点替换命令,根据命令中的IP地址判断替换的节点类型;
替换单元440,用于根据所述节点类型对节点进行替换。
进一步的,所述节点类型包括:管理节点和计算节点。
进一步的,所述替换单元包括:
选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。
进一步的,所述替换单元包括:
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;
将该副本数据所在的机器的元数据和数据同步到新节点上;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
本发明实施例提供的分布式数据库中节点的替换方法及装置,通过在替换过程中设置相同的IP地址替换节点,并根据节点类型进行节点的替换,在此期间集群仍然可以对外提供正常的服务,不需要中断。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种分布式数据库中节点的替换方法,其特征在于,包括:
将原节点设置为不可用状态;
将新节点设置为与原节点相同的IP地址;
接收节点替换命令,根据命令中的IP地址判断替换的节点类型;
根据所述节点类型对节点进行替换。
2.根据权利要求1所述的方法,其特征在于,所述节点类型包括:管理节点和计算节点。
3.根据权利要求2所述的方法,其特征在于,在所述节点为管理节点时,所述根据所述节点类型对节点进行替换,包括:
选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。
4.根据权利要求2所述的方法,其特征在于,在所述节点为计算节点时,所述根据所述节点类型对节点进行替换,包括:
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;
将该副本数据所在的机器的元数据和数据同步到新节点上;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
5.一种分布式数据库中节点的替换装置,其特征在于,包括:
状态设置单元,用于将原节点设置为不可用状态;
地址设置单元,将新节点设置为与原节点相同的IP地址;
判断单元,用于接收节点替换命令,根据命令中的IP地址判断替换的节点类型;
替换单元,用于根据所述节点类型对节点进行替换。
6.根据权利要求5所述的装置,其特征在于,所述节点类型包括:管理节点和计算节点。
7.根据权利要求6所述的装置,其特征在于,所述替换单元包括:
选择任何一个可用的管理节点的元数据,并将所述元数据同步到新节点;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本和其他可用的管理节点的元数据版本是否相同,如果相同,设定新节点可见。
8.根据权利要求6所述的装置,其特征在于,所述替换单元包括:
通过管理节点中的元数据查询中旧节点机器副本数据所在的机器;
将该副本数据所在的机器的元数据和数据同步到新节点上;
所述新节点在同步期间执行元数据的日志同步;
检查新节点的元数据版本或者数据版本和选择的同步节点是否相同,如果相同,设定新节点可见。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610777664.8A CN106331132A (zh) | 2016-08-31 | 2016-08-31 | 一种分布式数据库中节点的替换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610777664.8A CN106331132A (zh) | 2016-08-31 | 2016-08-31 | 一种分布式数据库中节点的替换方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106331132A true CN106331132A (zh) | 2017-01-11 |
Family
ID=57790090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610777664.8A Pending CN106331132A (zh) | 2016-08-31 | 2016-08-31 | 一种分布式数据库中节点的替换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106331132A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597819A (zh) * | 2018-12-07 | 2019-04-09 | 北京字节跳动网络技术有限公司 | 用于更新数据库的方法和装置 |
CN113596172A (zh) * | 2021-08-04 | 2021-11-02 | 百度在线网络技术(北京)有限公司 | 分布式集群中节点更新方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103475732A (zh) * | 2013-09-25 | 2013-12-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟地址池的分布式文件系统数据卷部署方法 |
CN103491192A (zh) * | 2013-09-30 | 2014-01-01 | 北京搜狐新媒体信息技术有限公司 | 一种分布式系统的Namenode切换方法和系统 |
CN103631820A (zh) * | 2012-08-27 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 分布式文件系统的元数据管理方法及设备 |
CN105528368A (zh) * | 2014-09-30 | 2016-04-27 | 北京金山云网络技术有限公司 | 一种数据库迁移方法及装置 |
-
2016
- 2016-08-31 CN CN201610777664.8A patent/CN106331132A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103631820A (zh) * | 2012-08-27 | 2014-03-12 | 阿里巴巴集团控股有限公司 | 分布式文件系统的元数据管理方法及设备 |
CN103475732A (zh) * | 2013-09-25 | 2013-12-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟地址池的分布式文件系统数据卷部署方法 |
CN103491192A (zh) * | 2013-09-30 | 2014-01-01 | 北京搜狐新媒体信息技术有限公司 | 一种分布式系统的Namenode切换方法和系统 |
CN105528368A (zh) * | 2014-09-30 | 2016-04-27 | 北京金山云网络技术有限公司 | 一种数据库迁移方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597819A (zh) * | 2018-12-07 | 2019-04-09 | 北京字节跳动网络技术有限公司 | 用于更新数据库的方法和装置 |
CN109597819B (zh) * | 2018-12-07 | 2020-12-18 | 北京字节跳动网络技术有限公司 | 用于更新数据库的方法和装置 |
CN113596172A (zh) * | 2021-08-04 | 2021-11-02 | 百度在线网络技术(北京)有限公司 | 分布式集群中节点更新方法和装置 |
CN113596172B (zh) * | 2021-08-04 | 2023-11-14 | 百度在线网络技术(北京)有限公司 | 分布式集群中节点更新方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105550229B (zh) | 分布式存储系统数据修复的方法和装置 | |
US9207929B2 (en) | Integrated system and firmware update method | |
CN100375046C (zh) | 文件更新设备及方法 | |
CN106339274A (zh) | 一种数据快照获取的方法及系统 | |
CN103744906A (zh) | 一种数据同步系统、方法及装置 | |
CN106164865A (zh) | 用于数据复制的依赖性感知的事务批处理 | |
CN105069134A (zh) | 一种Oracle统计信息自动收集方法 | |
CN106407308A (zh) | 一种分布式数据库的扩容方法及装置 | |
CN103885717B (zh) | 一种数据复制方法及装置 | |
CN104965850A (zh) | 一种基于开源技术的数据库高可用实现方法 | |
CN102890682A (zh) | 构建索引的方法、检索方法、装置及系统 | |
CN106528071B (zh) | 目标代码的选取方法及装置 | |
US20140156596A1 (en) | Replication control using eventually consistent meta-data | |
CN104346373A (zh) | 分区日志队列同步管理方法及设备 | |
CN105518641A (zh) | 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统 | |
CN110232097A (zh) | 一种数据同步方法及装置 | |
CN105357042A (zh) | 一种高可用集群系统及其主节点和从节点 | |
CN103593449A (zh) | 一种数据库资源回收方法及系统 | |
CN105740248A (zh) | 一种数据同步方法、装置及系统 | |
CN106250566A (zh) | 一种分布式数据库及其数据运算的管理方法 | |
CN103605617A (zh) | 一种记录存储数据发生变化的方法及装置 | |
CN109739684A (zh) | 基于向量时钟的分布式键值数据库的副本修复方法与装置 | |
CN106331132A (zh) | 一种分布式数据库中节点的替换方法及装置 | |
CN111176665B (zh) | 大容量emmc镜像制作方法和装置 | |
CN108574718A (zh) | 一种云主机创建方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170111 |