[发明专利]应用于分布式数据库的解决2PC模型单点故障问题的方法在审
申请号: | 201410854727.6 | 申请日: | 2014-12-31 |
公开(公告)号: | CN104504130A | 公开(公告)日: | 2015-04-08 |
发明(设计)人: | 李淼;吕迅;朱宏军;武新;崔维力 | 申请(专利权)人: | 天津南大通用数据技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 天津滨海科纬知识产权代理有限公司12211 | 代理人: | 杨慧玲 |
地址: | 300384天津市滨海新区高新区华苑*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用于 分布式 数据库 解决 pc 模型 单点 故障 问题 方法 | ||
技术领域
本发明属于分布式数据库技术领域,尤其是涉及一种应用于分布式数据库的解决2PC模型单点故障问题的方法。
背景技术
分布式数据库(distributed database,DDB)是指分布在计算机网络上的一组逻辑相关的多个数据库的组合,网络中的每个站点逻辑上由单个计算机组合,因此,对于分布式数据库需考虑两种事务:局部事务和全局事务。局部事务是指访问和更新一个站点的事务,局部事务的操作与集中式数据库中的事务操作一样;全局事务是访问和更新多个局部站点的事务,为了保证全局事务的原子性,则需要所有站点的局部事务的执行保持一致,即所有站点要么全部执行事务,要么全部撤销事务。
现有技术中,应用最为广泛的原子提交协议有:两阶段提交协议2PC和三阶段提交协议3PC。两阶段提交协议2PC是把本地事务的处理扩展到分布式事务中,解决了分布式事务提交原子性的问题,同时两阶段提交协议的实现比较简单且可靠。但是,两阶段提交协议仍然存在一些固有的缺陷:即当系统中某个站点因本身问题或者通信线路的不畅而长时间没有响应时,会导致整个事务不能正常提交,这样会使整个系统陷入阻塞状态;协调者本身超时,即在参与者长时间没有等待协调者发送的命令,则认为协调者超时。两阶段提交协议的这个缺陷严重影响了分布式数据库系统的性能,及其系统资源的利用率。
发明内容
针对上述问题,本发明的目的是提供一种应用于分布式数据库的解决2PC模型单点故障问题的方法,尤其适合于分布式数据库在不同节点上访问同一资源的一致性保证。
为了解决上述技术问题,本发明采用的设计思想是:以传统2PC协议模型为基础,使用心跳通知技术,冗余思想,TTL生命时间参考值,信号统计参考值建立优化的协调者,和协调者选择机制保证一致性。
为解决上述技术问题,本发明采用的技术方案是:
一种应用于分布式数据库的解决2PC模型单点故障问题的方法,包含:
建立一列从协调者队列,存入多个站点作为从协调者,其中每个从协调者的功能和协调者是相同的;
协调者与多个参与者之间按照两阶段提交协议通过数据包进行通信;同时,协调者和所有从协调者之间每隔一时间段进行一次通信,此时间段小于系统设置的超时的时间段长度;
若从协调者在这个时间段后没有收到协调者发送的消息,则认为协调者发生阻塞,系统立即根据一定算法从从协调者队列中选择一最优从协调者作为新的协调者与多个参与者进行通信。
优选的,所述协调者与参与者之间进行通信的数据包包括一个报头和数据本身,所述报头的结构中有一个TTL字段,该字段表示一个IP数据报最多能够经过多少路由器;数据包在网络中传递时每经过一个路由器,其TTL值就自动减1,当数据包到达一个路由器时,该路由器发现此数据包的TTL值为0,则将丢弃该数据包,表示协调者没有收到参与者发送的消息,或是参与者没有收到协调者的命令。
优选的,所述从协调者队列内的各站点在入队时,按编号从小到大入队,且编号小的站点优先级比较高。
优选的,所述系统立即根据一定算法从从协调者队列中选择一最优从协调者作为新的协调者与多个参与者进行通信,具体是,
通过统计各个从协调者接收的数据数目,在一天24小时的不同时段的数目变化来判断哪个从协调者,在某个时段性能最好;
通过统计各从协调者在不同任务环境下接收数据的数目,来决定不同环境下在最优从协调者;
通过统计从协调者接收数据数目的方法来判断各从协调者的性能;
根据上述三个方面统计各从协调的在不同环境下的表现,接收数据数目越多越稳定的协调者就是更优的协调者。
优选的,所有的从协调者接收来自协调者的状态同步数据,不对协调者回复任何消息,不发送任何消息给参与者;每个从协调者成功接收数据后会更新成功接收数据的次数。
优选的,所述协调者发生阻塞后,新的协调者可以根据各参与者发送的最后一个消息来确定各个参与者的事务处理状态,而不必再发送消息来确定。
优选的,所述从协调者队列中的各站点之间会通信,以确定对方的存在。
本发明具有的优点和积极效果是:
对于参与者来说,协调者永远不会阻塞,解决了单点故障问题;同时,也能够保障工作中有高性能的协调者。
附图说明
图1是本发明原路结构示意图;
图2是本发明分布式数据库协作过程示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津南大通用数据技术股份有限公司;,未经天津南大通用数据技术股份有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410854727.6/2.html,转载请声明来源钻瓜专利网。