一种基于高可用架构下的通信方法和节点技术

技术编号:14804964 阅读:66 留言:0更新日期:2017-03-15 00:03
本发明专利技术实施例提供一种基于高可用架构下的通信方法和节点,基于高可用的集群数据库环境,主访问节点仅仅需要与其中一台服务节点进行网络通信,便可以通过该服务节点将所要进行的数据操作转发到集群中的其它服务节点上去,以达到各个服务节点数据同步操作的目的。在无需主访问节点向多个节点进行相同操作,减少重复操作,无需主访问节点向多个节点建立网络连接并发送相同的操作内容,降低通信网络资源利用率的基础上,还存在层次少,路径简单的特点,提高了数据操作的效率,避免了管理复杂的问题。

【技术实现步骤摘要】

本专利技术涉及通信、分布式集群领域,尤其涉及一种基于高可用架构下的通信方法和节点
技术介绍
现在的分布式集群数据库普遍采用多节点数据库并行工作模式,如DB2DPF架构等,将海量数据通过一定的算法分散到不同的节点以提高读写操作的并行度。在考虑提高并行执行效率的同时,为了保证数据的高可用性,不同的节点之间也要求能对其它节点的数据进行相应的备份,以便于在某些节点出现异常的情况下,其它节点可以替代该节点继续进行工作,从而使整体系统的对外服务能够照常进行,这也即所谓的分布式集群数据库的高可用性。在高可用的分布式集群数据库环境中,由于同一内容的数据在多个节点都存在备份,当需要进行数据操作时,就要对各个节点上的数据进行一致性操作,以保证各个节点的数据一致,也即在不失分布式并行操作优势的前提下,同时保证数据库的高可用性及数据一致性。目前,为了确保数据一致性,基于高可用架构下的通信方法主要是,主访问节点首先通过网络连接到所有具有该数据备份的节点,然后分别对各个节点进行相同的数据操作,以达到各节点数据一致的目的,此时的网络架构图如图1所示。但这种通信方式至少存在以下问题:1、多点互备存在重复操作主访问节点向分布式集群数据库中的多个节点的相同数据进行相同操作时,就会存在相同数据计算重复多次(重复次数视节点数量而定)进行的情况,这会大大提高系统资源消耗量,从而严重降低数据操作的执行效率。2、传统一对多通信网络资源利用率低主访问节点一般是通过分布式集群数据库外部网络向分布式集群数据库内部多个节点建立网络连接并发送相同的操作内容。相同的数据内容被多次进行网络发送,这会成数倍增加网络数据传送量,大大增加了网络数据传送压力,从而严重降低了分布式集群数据库外部网络使用效率。3、存在节点性能木桶原理在主访问节点对各节点进行操作结果确认时,需要等待多个节点上的操作全部确认完毕,才能确定本次操作是否完成。由于各个节点的处理性能不尽相同,因此主访问节点不得不等待多个节点中性能最差的节点操作完毕,才能确认完成此次操作。这期间,其它性能较优的节点处于停滞等待状态,分布式集群数据库整体使用效率低下。基于高可用架构下的另一种通信方法中,提供了一种分布式数据复制的最佳地权衡复制开销和一致性级别的方法和系统。通过层次方式逐步将数据分发到后续的节点,从而确定最优链路。此时的网络架构图如图2所示,在系统10中,包括多个根据预定层次布置的专用服务器12,多个叶节点D服务器20,多个中间节点D服务器16,一个根节点D服务器14。系统10中还包括多个与特定域或组织关联并被称为O服务器22的资源发现服务器,分布式O服务器跨广域网18与D服务器通信,此外,其他O服务器还可以通过一个或多个局域网24与D服务器通信。在这种通过层次分发实现通信的方式下,尽管通信性能相对于第一种实现方式得到了优化,但仍存在着层次过多、路径无规律等问题,层次过多则数据操作的效率仍然存在瓶颈,路径无规律则会造成管理复杂。
技术实现思路
本专利技术实施例提供一种基于高可用架构下的通信方法和节点,用于提高数据操作的效率,并降低管理的复杂度。一种基于高可用架构下的通信方法,所述方法包括:高可用分布式集群数据库中随机选择的一个子集群中的代理节点与主访问节点建立网络连接;与主访问节点建立网络连接的代理节点,确定主访问节点请求的数据操作涉及的子集群信息和第二数据操作请求信息;与主访问节点建立网络连接的代理节点,分别与数据操作涉及的每个子集群中的代理节点建立集群内节点连接,并发送第二数据操作请求,其中,每个数据操作涉及的子集群中的代理节点根据接收到的第二数据操作请求,指示本集群内与数据操作相关的节点执行数据操作,并在确定本子集群内节点的数据操作结束时,汇总本子集群内节点的数据操作执行结果;与主访问节点建立网络连接的代理节点,针对每个数据操作涉及的子集群,接收该子集群中的代理节点汇总后上报的数据操作执行结果,并将对各代理节点上报的数据操作执行结果进行汇总后发送给主访问节点;其中,所述子集群是按照预先设定的第一规则,对所述高可用分布式集群数据库中的节点进行划分得到的,且划分得到的子集群中,至少一个子集群中节点数量不少于两个;一个子集群中的代理节点是根据预先设定的第二规则,从该子集群的节点中选择的一个节点。一种节点,所述节点包括:网络连接模块,用于与主访问节点建立网络连接;确定模块,用于确定主访问节点请求的数据操作涉及的子集群信息和第二数据操作请求信息,其中,所述子集群是按照预先设定的第一规则,对所述高可用分布式集群数据库中的节点进行划分得到的,且划分得到的子集群中,至少一个子集群中节点数量不少于两个;集群连接模块,用于分别与确定模块确定出的数据操作涉及的每个子集群中的代理节点建立集群内节点连接,并发送确定模块确定出的第二数据操作请求,其中,一个子集群中的代理节点是根据预先设定的第二规则,从该子集群的节点中选择的一个节点;接收模块,用于针对每个数据操作涉及的子集群,接收该子集群中的代理节点汇总后上报的数据操作执行结果,以及接收第二数据操作请求;执行模块,用于根据接收模块接收到的第二数据操作请求,指示本集群内与数据操作相关的节点执行数据操作,并在确定本子集群内节点的数据操作结束时,汇总本子集群内节点的数据操作执行结果,上报给与主访问节点建立网络连接的代理节点;发送模块,用于将对接收模块接收到的数据操作执行结果进行汇总后发送给主访问节点。一种节点,所述节点包括:第一连接模块,用于与主访问节点建立网络连接,并接收主访问节点发送的第一数据操作请求;处理模块,用于根据第一连接模块接收到的第一数据操作请求,确定出主访问节点请求的数据操作涉及的子集群信息和第二数据操作请求信息;第二连接模块,用于与高可用分布式集群数据库中随机选择的一个子集群中的代理节点建立网络连接,并将处理模块确定出的子集群信息和第二数据操作请求信息发送给与该代理节点,其中,所述子集群是按照预先设定的第一规则,对所述高可用分布式集群数据库中的节点进行划分得到的,且划分得到的子集群中,至少一个子集群中节点数量不少于两个;一个子集群中的代理节点是根据预先设定的第二规则,从该子集群的节点中选择的一个节点。根据本专利技术实施例提供的方案,基于高可用的集群数据库环境,主访问节点仅仅需要与其中一台服务节本文档来自技高网
...

【技术保护点】
一种基于高可用架构下的通信方法,其特征在于,所述方法包括:高可用分布式集群数据库中随机选择的一个子集群中的代理节点与主访问节点建立网络连接;与主访问节点建立网络连接的代理节点,确定主访问节点请求的数据操作涉及的子集群信息和第二数据操作请求信息;与主访问节点建立网络连接的代理节点,分别与数据操作涉及的每个子集群中的代理节点建立集群内节点连接,并发送第二数据操作请求,其中,每个数据操作涉及的子集群中的代理节点根据接收到的第二数据操作请求,指示本集群内与数据操作相关的节点执行数据操作,并在确定本子集群内节点的数据操作结束时,汇总本子集群内节点的数据操作执行结果;与主访问节点建立网络连接的代理节点,针对每个数据操作涉及的子集群,接收该子集群中的代理节点汇总后上报的数据操作执行结果,并将对各代理节点上报的数据操作执行结果进行汇总后发送给主访问节点;其中,所述子集群是按照预先设定的第一规则,对所述高可用分布式集群数据库中的节点进行划分得到的,且划分得到的子集群中,至少一个子集群中节点数量不少于两个;一个子集群中的代理节点是根据预先设定的第二规则,从该子集群的节点中选择的一个节点。

【技术特征摘要】
1.一种基于高可用架构下的通信方法,其特征在于,所述方法包括:
高可用分布式集群数据库中随机选择的一个子集群中的代理节点与主访
问节点建立网络连接;
与主访问节点建立网络连接的代理节点,确定主访问节点请求的数据操作
涉及的子集群信息和第二数据操作请求信息;
与主访问节点建立网络连接的代理节点,分别与数据操作涉及的每个子集
群中的代理节点建立集群内节点连接,并发送第二数据操作请求,其中,每个
数据操作涉及的子集群中的代理节点根据接收到的第二数据操作请求,指示本
集群内与数据操作相关的节点执行数据操作,并在确定本子集群内节点的数据
操作结束时,汇总本子集群内节点的数据操作执行结果;
与主访问节点建立网络连接的代理节点,针对每个数据操作涉及的子集
群,接收该子集群中的代理节点汇总后上报的数据操作执行结果,并将对各代
理节点上报的数据操作执行结果进行汇总后发送给主访问节点;
其中,所述子集群是按照预先设定的第一规则,对所述高可用分布式集群
数据库中的节点进行划分得到的,且划分得到的子集群中,至少一个子集群中
节点数量不少于两个;一个子集群中的代理节点是根据预先设定的第二规则,
从该子集群的节点中选择的一个节点。
2.如权利要求1所述的方法,其特征在于,与主访问节点建立网络连接
的代理节点,确定主访问节点请求的数据操作涉及的子集群信息和第二数据操
作请求信息,具体包括:
与主访问节点建立网络连接的代理节点,接收主访问节点发送的第一数据
操作请求,根据该第一数据操作请求确定数据操作涉及的子集群信息和第二数
据操作请求信息。
3.如权利要求1所述的方法,其特征在于,高可用分布式集群数据库中

\t随机选择的一个子集群中的代理节点与主访问节点建立网络连接,具体包括:
高可用分布式集群数据库中随机选择的一个子集群中的代理节点,通过预
处理节点与主访问节点建立网络连接;
与主访问节点建立网络连接的代理节点,确定主访问节点请求的数据操作
涉及的子集群信息和第二数据操作请求信息,具体包括:
与主访问节点建立网络连接的代理节点,接收预处理节点发送的主访问节
点请求的数据操作涉及的子集群信息和第二数据操作请求信息,主访问节点请
求的数据操作涉及的子集群信息和第二数据操作请求信息是预处理节点接收
主访问节点发送的第一数据操作请求,根据该第一数据操作请求确定出的。
4.如权利要求1所述的方法,其特征在于,与主访问节点建立网络连接
的代理节点,分别与数据操作涉及的每个子集群中的代理节点建立集群内节点
连接,并发送第二数据操作请求之后,所述方法还包括:
与主访问节点建立网络连接的代理节点,向主访问节点发送数据操作请求
确认接收信息,指示主访问节点发送新的数据操作请求。
5.如权利要求1所述的方法,其特征在于,与主访问节点建立网络连接
的代理节点,分别与数据操作涉及的每个子集群中的代理节点建立集群内节点
连接,具体包括:
与主访问节点建立网络连接的代理节点,在与数据操作涉及的一个子集群
中的代理节点建立集群内节点连接失败时,指示该子集群根据预先设定的第二
规则,重新确定代理节点,并与该重新确定出的代理节点建立集群内节点连接。
6.如权利要求1~5任一所述的方法,其特征在于,所述第一预设规则为
随机划分,或者为根据节点中数据的至少一个指定字段的内容范围进行划分。
7...

【专利技术属性】
技术研发人员:朱祥磊徐丽娜陈刚宫钦
申请(专利权)人:中国移动通信集团山东有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1