全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210640508.2 (22)申请日 2022.06.08 (71)申请人 西北工业大 学 地址 710129 陕西省西安市友谊西路127号 西北工业大 学计算机学院 (72)发明人 朱思文 庄元  (74)专利代理 机构 济南信达专利事务所有限公 司 37100 专利代理师 李世喆 姜鹏 (51)Int.Cl. G06F 16/23(2019.01) G06F 16/27(2019.01) (54)发明名称 分布式事务处 理系统及方法 (57)摘要 本发明提供一种分布式事务处理系统及方 法, 包括: 一个面向客户端的融合服务器以及与 所述融合服务器连接的多个增量服务器, 每一个 增量服务器具有多个对应的备份服务器, 每一个 增量服务器用于存储增量数据, 所述多个增量服 务器所存储的增量数据未重叠; 所述融合服务器 用于: 在接收到所述客户端发送 来的数据更新请 求时, 获取数据划分规则; 根据所述数据请求所 涉及到的数据信息和所述数据划分规则, 确定本 次数据更新涉及到的增量服务器; 若所涉及到的 增量服务器的数量为N, 则将本次数据更新所对 应的物理更新计划拆分为N个更新子计划; 控制 所涉及到的N个增量服务器执行各自对应的更新 子计划, 实现数据更新。 本发明可 以提高增量数 据的处理效率。 权利要求书2页 说明书16页 附图5页 CN 115017168 A 2022.09.06 CN 115017168 A 1.一种分布式事务处理系统, 其特征在于, 包括: 一个面向客户端的融合服务器以及与 所述融合服务器通信连接的多个增量服务器, 每一个增量服务器具有多个对应的备份服务 器, 每一个增量服务器用于存储增量数据, 所述多个增量服务器所存储的增量数据未重叠; 其中: 所述融合服务器用于: 在接收到所述客户端发送来的数据更新请求时, 获取数据划分 规则; 根据所述数据请求所涉及到的数据信息和所述数据划分规则, 确定本次数据更新所 涉及到的增量服务器; 若 所涉及到的增量服务器的数量为N, 则将本次数据更新所对应的物 理更新计划拆分为N个更新子计划; 控制所涉及到的N个增量服务器执行各自对应的更新子 计划, 实现数据更新; 其中, 所述数据划分规则包括多个数据 表和多个组之 间的第一映射关 系以及所述多个组和所述多个增量 服务器之间的第二映射关系, N 为大于1的正整数。 2.根据权利要求1所述的系统, 其特 征在于, 所述融合服务器用于执行的步骤: 控制所涉及到的N个增量服务器执行各自对应的更 新子计划, 具体包括: 判断涉及到的每一个增量 服务器是否已经开启局部事务; 若是, 则将对应的更新子计划发送至该增量服务器中, 以使所述增量服务器执行所述 对应的更新子计划; 否则, 将事务开启标记和对应的更新子计划发送至该增量服务器, 以使该增量服务器 在开启事务后将局部事务 ID返回至所述融合 服务器, 并执 行所述对应的更新子计划。 3.根据权利要求1所述的系统, 其特征在于, 所述第 一映射关系为按照表级别或者记录 级别进行划分得到的映射关系; 其中: 在按照表级别划分得到的第一映射关系中, 一个数据表对应一个组; 在按照记录级别划分得到的第一映射关系中, 一个数据表中的至少一行对应一个组, 一个数据表对应至少一个组。 4.根据权利要求1所述的系统, 其特征在于, 所述多个增量服务器中的一个增量服务器 为协调者服务器, 所涉及到的各个增量服务器为参与者服务器; 所述协调者服务器中记录 有由各个参与者服务器的标识形成的列表信息以及各个参与者服务器各自对应的局部事 务ID; 每一个参与者 服务器中记录有所述协调者 服务器的标识; 所述协调者 服务器用于: 向各个参与者 服务器发送预处 理请求; 所述参与者服务器用于: 在接收到所述预处理请求后, 根据所述参与者服务器对应的 更新子计划执 行对应的局部事务, 在事务执 行完毕后向所述协调者 服务器发送确认信息; 所述协调者服务器还用于: 在接收到所有的参与者服务器返回的确认信息后, 向所有 的参与者 服务器发送事务 提交通知; 所述参与者服务器还用于: 在接收到所述协调者服务器发送来的事务提交通知时, 向 所述融合 服务器发送所述 参与者服务器对应的局部事务 提交信息 。 5.根据权利要求 4所述的系统, 其特 征在于, 所述协调者 服务器还用于: 执 行如下步骤: 若协调者 服务器超时, 则检测所述协调者 服务器是否存在未决事务; 若存在未决事务, 则判断针对检测到的未决事务是否写过日志信息; 若还未写过任何日志, 则中止并进行回滚操作;权 利 要 求 书 1/2 页 2 CN 115017168 A 2若已经写过准备日志, 则停止接收所述参与者服务器返回的确认信息, 并判断是否已 经接收到所有参与者 服务器返回的确认信息; 若已经接收到全部参与者服务器返回的确认信息, 则向系统表写入提交的事务状态, 并向各个参与者服务器发送所述事务提交通知, 以使 各个参与者服务器向所述融合服务器 发送所述局部事务 提交信息 。 6.根据权利要求5所述的系统, 其特 征在于, 所述协调者服务器还用于: 若未接收到全部参与者服务器返回的确认信息, 则向所述 系统表写入回滚的事务状态, 并向各个参与者服务器发送 回滚通知, 以使各个参与者服务 器向所述融合 服务器发送回滚信息 。 7.根据权利要求5所述的系统, 其特 征在于, 所述参与者服务器还用于: 执 行如下步骤: 若所述参与者服务器超时或者在宕机重启后对本地的日志信 息回放完毕, 则检测所述 参与者服务器是否存在未决事务; 若存在未决事务, 则针对所述未决事务, 从所述系统表查询未决事务的事务状态; 若查询到对应的事务状态, 则按照查询到的事务状态进行相应处 理; 若未查询到对应的事务状态, 则判断所述协调者 服务器是否为 正常状态; 若为正常状态, 则等待下一次超时处 理; 若为非正常状态, 则再次确认所述系统表中是否记录有对应的事务状态; 若未记录有对应的事务状态, 则向所述系统表写入回滚的事务状态, 并结束对应的局 部事务; 若记录有对应的事务状态, 则按照查询到的事务状态进行相应处 理。 8.根据权利要求1所述的系统, 其特 征在于, 任意一个增量服务器还用于: 在宕机重启后, 回放本地的日志信 息; 若在回放的过程中 出现了准备日志, 则根据所述准备日志进行相 应的更新操作; 若在所述准备日志之后出现 了提交日志, 则向所述融合服务器发送所述局部事务提交信息; 若在所述准备日志之后出 现了回滚日志, 则向所述融合 服务器发送局部事务的所述回滚信息 。 9.根据权利要求1所述的系统, 其特 征在于, 本次更新所涉及到的每一个增量服务器还用于: 将局部事务对应的内存表版本信 息返 回至所述融合 服务器; 对应的, 所述融合服务器还用于: 根据涉及到的各个增量服务器发送来的内存表版本 信息, 确定各个增量 服务器的局部事务是否针对同一版本的内存表执 行。 10.一种分布式事务处理方法, 其特征在于, 基于权利要求1~9任一项所述的分布式事 务处理系统实现, 所述方法包括: 所述融合服务器在接收到所述客户端发送来的数据更新请求时, 获取数据划分规则; 根据所述数据请求所涉及到的数据信息和所述数据划分规则, 确定本次数据更新所涉及到 的增量服务器; 若 所涉及到的增量服务器的数量为N, 则将本次数据更新所对应的物理更新 计划拆分为N个更新子计划; 控制所涉及到的N个增量服务器执行各自对应的更新子计划, 实现数据更新; 其中, 所述数据划分规则包括多个数据表和多个组之间的第一映射关系以 及所述多个组和所述多个增量 服务器之间的第二映射关系, N 为大于1的正整数。权 利 要 求 书 2/2 页 3 CN 115017168 A 3

PDF文档 专利 分布式事务处理系统及方法

文档预览
中文文档 24 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共24页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 分布式事务处理系统及方法 第 1 页 专利 分布式事务处理系统及方法 第 2 页 专利 分布式事务处理系统及方法 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 00:49:35上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。