CN108183971A - 一种分布式系统中的节点选举方法 - Google Patents

一种分布式系统中的节点选举方法 Download PDF

Info

Publication number
CN108183971A
CN108183971A CN201810124907.7A CN201810124907A CN108183971A CN 108183971 A CN108183971 A CN 108183971A CN 201810124907 A CN201810124907 A CN 201810124907A CN 108183971 A CN108183971 A CN 108183971A
Authority
CN
China
Prior art keywords
node
target data
database
identification information
control node
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.)
Granted
Application number
CN201810124907.7A
Other languages
English (en)
Other versions
CN108183971B (zh
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.)
Poly Polytron Technologies Inc
Juhaokan Technology Co Ltd
Original Assignee
Poly Polytron Technologies Inc
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 Poly Polytron Technologies Inc filed Critical Poly Polytron Technologies Inc
Priority to CN201810124907.7A priority Critical patent/CN108183971B/zh
Publication of CN108183971A publication Critical patent/CN108183971A/zh
Application granted granted Critical
Publication of CN108183971B publication Critical patent/CN108183971B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种分布式系统中的节点选举方法及节点。该方法包括:分布式系统中参与所述节点选举的各节点均与数据库建立第一连接,且所述各节点通过所述第一连接访问所述数据库中的目标数据;成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作;其中,所述控制节点是所述数据库采用并发事务处理策略选举出的一个节点。由于数据库支持访问的节点数远远大于分布式系统中的节点数,因此,分布式系统中需要参与选举的节点均访问数据库时,数据库也能够选举出控制节点,从而保证了系统正常工作。

Description

一种分布式系统中的节点选举方法
本申请是2015年03月13日提出的发明名称为“一种分布式系统中的节点选举方法及节点”的中国发明专利申请201510113095.2的分案申请。
技术领域
本发明涉及分布式技术领域,尤其涉及一种分布式系统中的节点选举方法及节点。
背景技术
分布式技术的发展方向是去中心化,即不会预定义分布式系统(例如集群)的主节点或需要完成某个任务的执行节点,而是动态选举主节点或任务的执行节点(以下将主节点和执行节点统称为控制节点)。
目前,分布式系统中控制节点的选举可以通过共享存储方式实现。
共享存储方式选举控制节点是指,分布式系统的多个节点均访问系统中的共享分区,其中成功访问到该共享分区(即取得共享分区的文件锁)的节点作为控制节点。控制节点退出分布式系统后,其拥有的文件锁会释放掉,其余节点感知后可以发起新一轮的选举。
其中,共享分区支持的节点数有限。当分布式系统中需要参与选举的节点数量超过共享分区支持的节点数时,会由于访问共享分区的节点数超过共享分区支持的节点数,导致共享分区无法正常工作,进而无法完成控制节点的选举,分布式系统无法正常工作。
发明内容
本发明的目的是提供一种分布式系统中的节点选举方法及节点,以解决以共享存储方式进行节点选举时,因受限于共享分区可支持的节点数有限,而导致的分布式系统不能正常工作的问题。
本发明的目的是通过以下技术方案实现的:
一种分布式系统中的节点选举方法,包括:
分布式系统中参与所述节点选举的各节点均与数据库建立第一连接,且所述各节点通过所述第一连接访问所述数据库中的目标数据;
成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作;
其中,所述控制节点是所述数据库采用并发事务处理策略选举出的一个节点。
其中,所述成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作至少包括:所述成功访问到所述目标数据的节点保持所述第一连接。
基于上述任意方法实施例,可选的,成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作还包括:通过与所述数据库建立的第二连接,向所述数据库的控制节点表中插入一条记录,所述记录包括所述控制节点的标识信息和所述标识信息的时间戳,并周期性通过所述第二连接更新所述记录。
相应的,未成功访问到所述目标数据的节点从所述控制节点表中获取所述控制节点的标识信息,并根据获取的标识信息与所述控制节点建立连接。
可选的,未成功访问到所述目标数据的节点从所述控制节点表中获取所述控制节点的标识信息,包括:
所述未成功访问到所述目标数据的节点确定当前时间;
所述未成功访问到所述目标数据的节点至少一次从所述控制节点表中查找时间戳标识的时间晚于确定的所述当前时间的控制节点的标识信息;
所述未成功访问到所述目标数据的节点获取查找到的,且时间戳标识的时间最晚的控制节点的标识信息。
其中,所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的次数不超过预定次数;所述成功访问到所述目标数据的节点更新所述记录的周期是根据所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的时间间隔确定的。
基于上述任意方法实施例,可选的,所述数据库中的目标数据为所述分布式系统的标识信息,或为节点选举所对应的任务的标识信息。
基于与方法相同的发明构思,还提供一种分布式系统中的节点,包括:
连接建立单元,用于与数据库建立第一连接;
选举单元,用于通过与所述第一连接访问所述数据库中的目标数据;
第一处理单元,用于成功访问到所述目标数据后,作为控制节点在所述分布式系统中执行相应操作;
其中,所述控制节点是所述数据库采用并发事务处理策略选举出的一个节点。
其中,所述第一处理单元用于:
保持所述第一连接。
可选的,所述连接建立单元还用于:与所述数据库建立第二连接。
相应的,所述第一处理单元还用于:通过所述第二连接向所述数据库的控制节点表中插入一条记录,所述记录包括所述控制节点的标识信息和所述标识信息的时间戳,并周期性通过所述第二连接更新所述记录;
相应的,所述节点还包括第二处理单元,用于:从所述控制节点表中获取所述控制节点的标识信息,并根据获取的标识信息与所述控制节点建立连接。
可选的,从所述控制节点表中获取所述控制节点的标识信息时,所述第二处理单元用于:
确定当前时间;
至少一次从所述控制节点表中查找时间戳标识的时间晚于确定的所述当前时间的控制节点的标识信息;
获取查找到的,且时间戳标识的时间最晚的控制节点的标识信息。
其中,所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的次数不超过预定次数;所述成功访问到所述目标数据的节点更新所述记录的周期是根据所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的时间间隔确定的
基于上述任意节点实施例,可选的,所述数据库中的目标数据为所述分布式系统的标识信息,或为节点选举所对应的任务的标识信息。
本发明实施例提供的技术方案,分布式系统中参与选举的各节点均访问该数据库中的目标数据,利用数据库的并发事务处理能力进行决策,允许其中一个节点成功访问目标数据,从而选举出控制节点。不同配置的数据库均可以支持1万以上的节点连接,而大规模分布式系统的节点数通常在1千左右。由于数据库支持访问的节点数远远大于分布式系统中的节点数,因此,分布式系统中需要参与选举的节点均访问数据库时,数据库也能够选举出控制节点,从而保证了系统正常工作。
附图说明
图1为本发明实施例提供的一种方法流程图;
图2为本发明实施例提供的控制节点处理流程图;
图3为本发明实施例提供的从节点处理流程图;
图4为本发明实施例提供的节点示意图。
具体实施方式
下面将结合附图,对本发明实施例提供的技术方案进行详细说明。
如图1所示,本发明实施例提供的分布式系统中的节点选举方法具体包括如下操作:
步骤100、分布式系统中参与所述节点选举的各节点均与数据库建立第一连接。
步骤110、上述各节点通过上述第一连接访问上述数据库中的目标数据。
现有的数据库均具备并发事务处理能力,检测及处理死连接的能力。
由于数据库具有并发事务处理能力,因此,当多个节点均通过与数据库建立的第一连接访问目标数据时,数据库能够通过决策允许其中一个节点成功访问该目标数据,则成功访问该目标数据的节点为控制节点。而其他节点会收到访问失败的反馈。
步骤120、成功访问到上述目标数据的节点作为控制节点,在分布式系统中执行相应操作。
其中,成功访问到上述目标数据的节点是数据库采用并发事务处理策略选举出的一个节点。
本发明实施例提供的技术方案,分布式系统中参与选举的各节点均访问该数据库中的目标数据,利用数据库的并发事务处理能力进行决策,允许其中一个节点成功访问目标数据,从而选举出控制节点。不同配置的数据库均可以支持1万以上的节点连接,而大规模分布式系统的节点数通常在1千左右。由于数据库支持访问的节点数远远大于分布式系统中的节点数,因此,分布式系统中需要参与选举的节点均访问数据库时,数据库也能够选举出控制节点,从而保证了系统正常工作。
另外,利用数据库的检测及处理死连接的能力,还能够在控制节点失效后,及时释放掉失效后的控制节点对目标数据的访问权限,以使得其他节点重新发起选举。
本发明实施例中,如果选举分布式系统的主节点,上述数据库中的目标数据可以为节点所在分布式系统的标识信息。如果选举某个任务的执行节点,上述数据库中的目标数据可以为节点选举所对应的任务的标识信息。
其中,可以在数据库中保存多个不同的目标数据。例如,保存不同分布式系统的标识信息,保存不同任务的标识信息。相应的,数据库可以同时支持多个分布式系统的主节点选举,以及多个任务的执行节点选举。
本发明实施例中,上述步骤120的操作至少包括:保持上述第一连接。
另外,上述步骤120的操作还包括作为主节点提供主节点服务,或者作为执行节点执行某任务。
其中,在作为主节点提供主节点服务的过程中或者作为执行节点执行某任务时,保持上述第一连接,直至不再继续作为主节点或直至任务执行完成,则不需要继续保持上述第一连接。
其中,选举出的控制节点保持上述第一连接的实现方式具体可以是:不提交第一连接上的事务,且持续(定期或不定期)通过第一连接与数据库进行交互。例如,使用第一连接执行SQL语句,以保持第一连接活跃,避免第一连接断开。其中,通过第一连接与数据库进行交互的时间间隔不超过数据库判断第一连接断开的周期(也称时限)。
其中,选举出的控制节点定期通过第一连接与数据库进行交互的周期不超过数据库判断第一连接断开的周期。最好是小于数据库判断第一连接断开的周期。
本发明实施例中,选举出的控制节点还可以通过与数据库建立的第二连接向数据库的控制节点表中插入一条记录,该记录包括上述控制节点的标识信息和该标识信息的时间戳,并周期性通过与数据库建立的第二连接更新上述记录。
其中,如果定期通过第一连接与数据库进行交互,那么通过第一连接与数据库进行交互的周期,和更新控制节点表中的上述记录的周期,可以相同,也可以不同。
其中,上述记录中的时间戳既可以是控制节点生成的,也可以是控制节点触发数据库生成的。
其中,更新上述记录可以是更新标识信息的时间戳。例如,插入一条新的记录,该记录中包括上述控制节点的标识信息和该标识信息的更新后的时间戳;又例如,在上述记录中增加更新后的时间戳;又例如,将上述记录中的时间戳替换为更新后的时间戳。等等。
相应的,未成功访问到目标数据的节点从上述控制节点表中获取上述控制节点的标识信息,根据获取的标识信息与控制节点建立连接。
在与控制节点建立连接后,未成功访问到上述目标的节点(此时作为从节点)要与控制节点保持心跳。
其中,未成功访问到目标数据的节点从上述控制节点表中获取上述控制节点的标识信息,其实现方式可以是:
未成功访问到目标数据的节点确定当前时间;
该未成功访问到目标数据的节点至少一次从上述控制节点表中查找时间戳标识的时间晚于上述确定的当前时间的控制节点的标识信息;
该未成功访问到目标数据的节点获取查找到的,且时间戳标识的时间最晚的控制节点的标识信息。
其中,每次查找,均是查找控制节点表中时间戳标识的时间晚于第一次确定的当前时间的控制节点的标识信息。
其中,查找控制节点的标识信息的次数不超过预定次数,该预定次数可以根据实际运行需求配置。
应当指出的是,未成功访问到目标数据的节点除了按照上述实现方式获取上述控制节点的标识信息,还可以采用其他实现方式获取控制节点的标识信息。例如,通过侦听控制节点发送的控制节点的标识信息。
在此基础上,成功访问到目标数据的节点(即控制节点)更新上述记录的周期,是未成功访问到目标数据的节点查找上述控制节点的标识信息的时间间隔确定的。
具体的,成功访问到目标数据的节点(即控制节点)更新上述记录的周期,不超过(或者小于)未成功访问到目标数据的节点查找上述控制节点的标识信息的时间间隔。
由于一旦未成功访问到目标数据的节点查找到时间戳标识的时间晚于确定的当前时间的控制节点的标识信息,即可将相应的节点确定为控制节点,并将其标识信息作为控制节点的标识信息。因此,查找到时间戳标识的时间晚于确定的当前时间的节点的标识信息的时间间隔,即查找控制节点的标识信息的时间间隔。
其中,如果存在以下任意状况,节点需重新进行一次选举流程。需要重新进行一次选举流程的状况包括:未成功访问到目标数据的节点没有获取到上述控制节点的标识信息,或者未成功访问到目标数据的节点没有成功与上述控制节点建立连接,或者未成功访问到目标数据的节点与上述控制节点保持心跳失败,或者上述控制节点与上述数据库的第一连接断开,或者上述控制节点未能成功向上述数据库中的控制节点表中插入记录,或者上述控制节点成功向上述数据库中的控制节点表中插入记录后,未能成功更新该记录。
基于上述任意方法实施例,节点还可以标记本节点的状态。相应的,本发明实施例定义了三种节点状态,分别为:
Master态,节点作为控制节点,提供控制节点服务;
Slave态,节点作为从节点,提供从节点服务;
Unknown态,节点不知道本节点的角色,也不知道分布式系统的状态,不对外提供服务。
节点在运行期间一定会属于某种状态。
具体的,节点的操作系统启动后或者重新进行一次选举流程后,更新本节点状态为Unknown态。节点在成功访问目标数据后,更新本节点状态为Master态。节点在与控制节点建立连接后,更新本节点状态为Slave态。
下面以分布式集群中选举主节点为例,对本发明实施例提供的方法进行详细说明。
分布式集群中节点通过访问数据库中的目标数据来选举主节点。该数据库可以部署在分布式集群的各节点之外的服务器上,也可以部署在分布式集群中的某个节点上。
为采用本发明实施例提供的方法进行主节点选举,节点和数据库有如下预置条件:
1、集群的各节点通过NTP或其他方式保持时间同步。
2、集群所有节点到数据库(以下称中心DB)的网络与集群的各节点之间的网络可用性保持一致。
3、中心DB支持通常的RDBMS的ACID属性。
4、中心DB具备检测及处理死连接的能力。
5、中心DB本身能够保证可用性。
另外,中心DB中至少包括文件锁表和控制节点表(在集群系统中,也称主节点表)。其中,文件锁表如表1所示,其中存储的数据为分布式系统的标识信息(本实施例中具体为集群的标识信息)。主节点表如表2所示,其中存储控制节点数据,具体包括集群的标识信息,以及每个集群的标识信息对应的主节点的标识信息和每条主节点的标识信息的时间戳。
表1
表2
本方案实现主要分为以下两部分:
第一部分:选举及Master流程
如图2所示,处理流程为:
开始选举前所有节点均为Unknown态。
所有节点建立一条到数据库的第一连接C1,并通过C1访问数据库的文件锁表中本集群的标识信息。具体是发出类似“Select*from cluster_lock where cluster_name=’集群的标识信息’for update”的语句。
如成功访问到文件锁表中本集群的标识信息,则说明拿到了代表Master的文件锁,不提交C1上的事务。然后使用当前时间的时间戳登记Master数据,即另外创建一个到中心DB的第二连接C2,使用C2在主节点表中插入一条本集群的标识信息对应的记录,该记录是本节点的标识信息和当前时间的时间戳,然后提交C2上的事务。
成功访问到文件锁表中本集群的标识信息的节点还将本节点的状态变更为Master态,开始对外提供Master的服务。
Master在后台通过单独线程更新时间戳信息。此更新包含2步内容:
使用C1执行SQL语句,以保持C1到中心DB的活跃,避免C1断掉。
使用C2在主节点表中插入一条记录,node_name使用本节点的标识信息,timestamp使用当前时间信息,提交事务。
后台更新的时间间隔需考虑DB判断Client连接断开的时限,及Slave的重试间隔。(如每秒更新一次)
如更新失败,则停止Master服务。
释放C1上获得的文件表中的本集群的标识信息,即释放掉锁定的目标数据,相应的,中心DB利用其检测及处理死连接的能力检测到Master异常,断开C1,回滚掉Master未完成的事务。
进入Master失败处理流程,即将本节点状态置为Unknown态,并通过访问文件锁表中本集群的标识信息重新进入节点选举流程。
如锁定失败,则进入Slave流程。
第二部分:Slave流程
如图3所示,处理流程如下:
未成功访问文件锁表中本集群的标识信息后,进入Slave流程。获得当前时间的时间戳T1。
根据T1,获得Master的信息:
Select*from cluster_master where cluster_name=’集群的标识信息’andtimestamp=(select max(timestamp)from cluster_master where cluster_name=’集群的标识信息’and timestamp>T1)
即得到时间戳字段比T1大的,并且时间戳字段最大的那条Master数据。
如失败,重试n次,重试间隔取1秒,均失败,进入Master失败流程。考虑Master更新信息的时间延迟,n>5。
如成功,则连接Master,确认Master的可用性。可用性包含2部分:Master节点可连接;Master节点的回复信息中表明自己是Master。
如连接失败,重试n次,均失败,进入Master失败流程。
验证Master后,将本节点状态变更为Slave态,对外提供Slave服务。
与Master保持心跳,如心跳失败,进入Master失败流程。
Slave需要与Master保持心跳以检测Master是否可用,心跳信息中需要包含Master的角色,以确认Master是否能提供服务。
基于与方法同样的发明构思,本发明实施例还提供一种分布式系统中的节点,如图4所示,包括:
连接建立单元401,用于与数据库建立第一连接;
选举单元402,用于通过与所述第一连接访问所述数据库中的目标数据;
第一处理单元403,用于成功访问到所述目标数据后,作为控制节点在所述分布式系统中执行相应操作。
其中,所述控制节点是所述数据库采用并发事务处理策略选举出的一个节点。
本发明实施例提供的技术方案,分布式系统中参与选举的各节点均访问该数据库中的目标数据,利用数据库的并发事务处理能力进行决策,允许其中一个节点成功访问目标数据,从而选举出控制节点。不同配置的数据库均可以支持1万以上的节点连接,而大规模分布式系统的节点数通常在1千左右。由于数据库支持访问的节点数远远大于分布式系统中的节点数,因此,分布式系统中需要参与选举的节点均访问数据库时,数据库也能够选举出控制节点,从而保证了系统正常工作。
另外,利用数据库的检测及处理死连接的能力,还能够在控制节点失效后,及时释放掉对目标数据的访问权限,以使得其他节点重新发起选举。
其中,所述第一处理单元可以用于:保持所述第一连接。
基于上述任意节点实施例,所述第一处理单元还用于:通过所述第二连接向所述数据库的控制节点表中插入一条记录,所述记录包括所述控制节点的标识信息和所述标识信息的时间戳,并周期性通过所述第二连接更新所述记录;
所述节点还包括第二处理单元,用于:从所述控制节点表中获取所述控制节点的标识信息,并根据获取的标识信息与所述控制节点建立连接。
其中,从所述控制节点表中获取控制节点的标识信息时,所述第二处理单元用于:
确定当前时间;
至少一次从所述控制节点表中查找时间戳标识的时间晚于确定的所述当前时间的控制节点的标识信息;
获取查找到的,且时间戳标识的时间最晚的控制节点的标识信息;
其中,所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的次数不超过预定次数;所述成功访问到所述目标数据的节点更新所述记录的周期是根据所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的时间间隔确定的。
基于上述任意节点实施例,所述数据库中的目标数据可以为所述分布式系统的标识信息,也可以为节点选举所对应的任务的标识信息。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (2)

1.一种分布式系统中的节点选举方法,其特征在于,包括:
分布式系统中参与所述节点选举的各节点均与数据库建立第一连接,且所述各节点通过所述第一连接访问所述数据库中的目标数据;
成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作;
其中,所述控制节点是所述数据库采用并发事务处理策略选举出的一个节点;
所述成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作还包括:
通过与所述数据库建立的第二连接,向所述数据库的控制节点表中插入一条记录,所述记录包括所述控制节点的标识信息和所述标识信息的时间戳,并周期性通过所述第二连接更新所述记录;
所述方法还包括:未成功访问到所述目标数据的节点从所述控制节点表中获取所述控制节点的标识信息,并根据获取的标识信息与所述控制节点建立连接;
所述未成功访问到所述目标数据的节点从所述控制节点表中获取控制节点的标识信息,包括:
所述未成功访问到所述目标数据的节点确定当前时间;
所述未成功访问到所述目标数据的节点至少一次从所述控制节点表中查找时间戳标识的时间晚于确定的所述当前时间的控制节点的标识信息;
所述未成功访问到所述目标数据的节点获取查找到的,且时间戳标识的时间最晚的控制节点的标识信息;
其中,所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的次数不超过预定次数;所述成功访问到所述目标数据的节点更新所述记录的周期是根据所述未成功访问到所述目标数据的节点查找所述控制节点的标识信息的时间间隔确定的;
所述成功访问到所述目标数据的节点作为控制节点,在所述分布式系统中执行相应操作包括:所述成功访问到所述目标数据的节点保持所述第一连接;
所述选举出的控制节点保持第一连接的实现方式具体为:不提交第一连接上的事务,且持续通过第一连接与数据库进行交互。
2.根据权利要求1所述的方法,其特征在于,所述数据库中的目标数据为所述分布式系统的标识信息,或为节点选举所对应的任务的标识信息。
CN201810124907.7A 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法 Active CN108183971B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810124907.7A CN108183971B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810124907.7A CN108183971B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法
CN201510113095.2A CN104767794B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法及节点

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201510113095.2A Division CN104767794B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法及节点

Publications (2)

Publication Number Publication Date
CN108183971A true CN108183971A (zh) 2018-06-19
CN108183971B CN108183971B (zh) 2021-08-10

Family

ID=53649393

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201510113095.2A Active CN104767794B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法及节点
CN201810124907.7A Active CN108183971B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201510113095.2A Active CN104767794B (zh) 2015-03-13 2015-03-13 一种分布式系统中的节点选举方法及节点

Country Status (1)

Country Link
CN (2) CN104767794B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708177A (zh) * 2018-07-09 2020-01-17 阿里巴巴集团控股有限公司 分布式系统中的异常处理方法、系统和装置
CN110764690A (zh) * 2018-07-28 2020-02-07 阿里巴巴集团控股有限公司 分布式存储系统及其领导节点选举方法和装置
CN110798499A (zh) * 2018-08-03 2020-02-14 高新兴科技集团股份有限公司 一种分布式服务的协调系统及方法
CN113742417A (zh) * 2020-05-29 2021-12-03 同方威视技术股份有限公司 多级分布式共识方法及系统、电子设备及计算机可读介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203420A (zh) * 2016-03-18 2017-09-26 北京京东尚科信息技术有限公司 任务调度实例的主从切换方法和装置
CN107800733B (zh) * 2016-08-31 2021-01-15 阿里巴巴集团控股有限公司 分布式系统中会话标识的生成方法及设备
WO2019061384A1 (zh) * 2017-09-30 2019-04-04 麦格创科技(深圳)有限公司 分布式爬虫系统中任务管理器的选举方法及系统
CN110321199B (zh) * 2019-07-09 2022-04-12 成都卫士通信息产业股份有限公司 一种共用数据变更的通知方法、装置、电子设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267345A (zh) * 2008-03-10 2008-09-17 中兴通讯股份有限公司 业务节点备份方法及分布式系统
CN101854373A (zh) * 2009-04-01 2010-10-06 华为技术有限公司 任务切换方法、服务器节点及集群系统
CN102929696A (zh) * 2012-09-28 2013-02-13 北京搜狐新媒体信息技术有限公司 一种分布式系统中心节点构建、提交、监控方法及装置
CN103118084A (zh) * 2013-01-21 2013-05-22 浪潮(北京)电子信息产业有限公司 一种主节点的选举方法及节点

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271537B2 (en) * 2010-11-15 2012-09-18 Sas Institute Inc. Grid computing system alongside a distributed database architecture
CN102904752B (zh) * 2012-09-25 2016-06-29 新浪网技术(中国)有限公司 一种节点选举方法、节点设备及系统
CN103902617B (zh) * 2012-12-28 2017-06-09 华为技术有限公司 分布式数据库同步方法和系统
CN103491168A (zh) * 2013-09-24 2014-01-01 浪潮电子信息产业股份有限公司 一种集群选举设计方法
CN103607297B (zh) * 2013-11-07 2017-02-08 上海爱数信息技术股份有限公司 一种计算机集群系统的故障处理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267345A (zh) * 2008-03-10 2008-09-17 中兴通讯股份有限公司 业务节点备份方法及分布式系统
CN101267345B (zh) * 2008-03-10 2010-12-08 中兴通讯股份有限公司 业务节点备份方法及分布式系统
CN101854373A (zh) * 2009-04-01 2010-10-06 华为技术有限公司 任务切换方法、服务器节点及集群系统
CN102929696A (zh) * 2012-09-28 2013-02-13 北京搜狐新媒体信息技术有限公司 一种分布式系统中心节点构建、提交、监控方法及装置
CN103118084A (zh) * 2013-01-21 2013-05-22 浪潮(北京)电子信息产业有限公司 一种主节点的选举方法及节点

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708177A (zh) * 2018-07-09 2020-01-17 阿里巴巴集团控股有限公司 分布式系统中的异常处理方法、系统和装置
CN110764690A (zh) * 2018-07-28 2020-02-07 阿里巴巴集团控股有限公司 分布式存储系统及其领导节点选举方法和装置
CN110764690B (zh) * 2018-07-28 2023-04-14 阿里云计算有限公司 分布式存储系统及其领导节点选举方法和装置
CN110798499A (zh) * 2018-08-03 2020-02-14 高新兴科技集团股份有限公司 一种分布式服务的协调系统及方法
CN110798499B (zh) * 2018-08-03 2023-01-24 高新兴科技集团股份有限公司 一种分布式服务的协调系统及方法
CN113742417A (zh) * 2020-05-29 2021-12-03 同方威视技术股份有限公司 多级分布式共识方法及系统、电子设备及计算机可读介质

Also Published As

Publication number Publication date
CN104767794B (zh) 2018-05-01
CN108183971B (zh) 2021-08-10
CN104767794A (zh) 2015-07-08

Similar Documents

Publication Publication Date Title
CN104767794B (zh) 一种分布式系统中的节点选举方法及节点
CN103116596B (zh) 在分布式数据库中执行快照隔离的系统和方法
EP3224746B1 (en) System and method for massively parallel processing database
CN102640108B (zh) 已复制数据的监控
US8055735B2 (en) Method and system for forming a cluster of networked nodes
CN109729129A (zh) 存储集群的配置修改方法、存储集群及计算机系统
CN105930498A (zh) 一种分布式数据库的管理方法及系统
CN109656911A (zh) 分布式并行处理数据库系统及其数据处理方法
EP2919130A1 (en) Method and system for synchronizing distributed database
CN105684377A (zh) 一种创建支持mpp数据库中的可重读隔离级别的分布式事务管理器的系统和方法
CN108881489A (zh) 一种分布式服务的协调系统及方法
CN113515499B (zh) 一种数据库服务方法及系统
JP7438603B2 (ja) トランザクション処理方法、装置、コンピュータデバイス及びコンピュータプログラム
CN106936899A (zh) 分布式统计分析系统的配置方法及分布式统计分析系统
KR101296778B1 (ko) NoSQL 데이터베이스를 위한 결과적 트랜잭션 처리 방법
KR20140138670A (ko) 2-단계 커미트 호출들의 엄격한 순서화에 근거하여 트랜잭션 복구를 지원하는 시스템들 및 방법들
US11436110B2 (en) Distributed database remote backup
CN111544895B (zh) 排行榜处理方法及装置、电子设备、存储介质
CN113646749A (zh) Iot分区管理和负载平衡
CN110635941A (zh) 一种数据库节点集群故障迁移方法与装置
CN110830582B (zh) 一种基于服务器集群选主方法和装置
US20170017680A1 (en) Method for handling writes in database clusters with temporarily disjoint nodes
CN105323271B (zh) 一种云计算系统以及云计算系统的处理方法和装置
CN104052799B (zh) 一种利用资源环实现高可用存储的方法
WO2003054711A1 (en) A system and method for management of a storage area network

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
GR01 Patent grant
GR01 Patent grant