CN103995868B - 面向分布式系统的全局事务管理器及事务处理方法 - Google Patents
面向分布式系统的全局事务管理器及事务处理方法 Download PDFInfo
- Publication number
- CN103995868B CN103995868B CN201410214371.XA CN201410214371A CN103995868B CN 103995868 B CN103995868 B CN 103995868B CN 201410214371 A CN201410214371 A CN 201410214371A CN 103995868 B CN103995868 B CN 103995868B
- Authority
- CN
- China
- Prior art keywords
- affairs
- transaction
- data
- administration device
- resource management
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Abstract
一种面向分布式系统的全局事务管理器,包括一种面向分布式系统的全局事务管理器,其特征在于:包括应用装置、事务管理装置、资源管理装置、事务回滚装置、故障恢复装置和信息协调装置。其中故障恢复装置,用于设置异常和故障类型,判断事务运行过程中各业务阶段软硬件环境的异常和故障类型,向事务管理装置提交事务运行状态,触发控制过程;信息协调装置,用于全局属性事务的源数据和控制数据在本装置的副本间传递。本发明为业务活动提供强隔离性、严格一致性的分布式事务控制,具有良好的ACID特性;不依赖于具体的服务实现平台;对应用保持低侵入性,事务控制不影响正常业务代码的编写。还包括事务处理方法。
Description
技术领域
本发明涉及一种数据同步装置及同步方法,特别是涉及一种异构数据系统的数据同步装置及同步方法。
背景技术
随着大规模的异构分布式信息处理与应用的出现,利用计算机基本计算性能形成数据处理过程已经不能满足网络化的数据处理过程。完成一项具体事务需要涉及多个异构系统,需要进行数据处理的数据源往往来自于不同体系架构的异构系统,同时需要的源数据又往往不是各自异构系统中的静态数据,各异构系统中的静态数据形成源数据的处理过程又受系统架构制约。因此不同异构系统根据具体事务的需求,利用自身的数据处理过程对各自数据源的数据进行处理形成需求的一部分源数据,并提交针对具体事务的应用程序完成具体事务,需要一套高效的分布式事务处理标准。
目前针对分布在不同的物理节点上的不同类型的共享资源的事务处理,主要是基于X/Open DTP分布式事务处理标准及模型,该模型包括应用程序、资源管理器和事务管理器三种模块。其中应用程序用于完成具体事务的数据处理逻辑,以及人机交互;资源管理器用于完成对数据源的存储和控制;事务管理器用于协调和管理事务,提供给AP应用程序编程接口以及管理资源管理器。
但是直接根据上述模型形成的分布式事务处理系统存在缺陷。包括系统脆弱,故障点多,基础模型没有确定应用程序、资源管理器和事务管理器三种模块之间通信的保障机制。一旦出现故障,会造成异构系统间的数据冲突,没有设定可靠的数据还原机制会使得数据恢复困难。因此为了实现分布式事务处理,往往只能依靠个别厂商的集成系统,系统扩展性会下降,升级成本上升。更为重要的是个别厂商的集成系统针对的是数据集成方向,而对于异构网络的物理特性支持不好,不利于分布式事务处理在工业控制领域的应用。
发明内容
本发明的目的是提供一种面向分布式系统的全局事务管理器,现有事务处理在异构系统间无法可靠进行数据通信和数据处理的技术问题。
本发明的另一个目的是提供一种面向分布式系统的事务处理方法,解决在异构系统间无法可靠进行数据通信和数据处理的技术问题。
本发明的面向分布式系统的全局事务管理器,包括应用装置、事务管理装置、资源管理装置、事务回滚装置、故障恢复装置和信息协调装置,其中:
应用装置,用于对具体事务的作用边界和事务各阶段业务操作进行描述和定义,确定事务的业务逻辑,提供控制参数转发接口;
事务管理装置,用于设定具体事务的全局属性和分支属性,根据全局属性或分支属性,控制事务各业务阶段中源数据的提交、回滚和恢复;
资源管理装置,用于管理本事务分支中的静态数据,根据分支事务的业务阶段形成源数据;
事务回滚装置,用于保存本事务分支中各业务阶段所操作数据,根据回滚控制,将数据恢复到指定业务阶段之前;
故障恢复装置,用于设置异常和故障类型,判断事务运行过程中各业务阶段软硬件环境的异常和故障类型,向事务管理装置提交事务运行状态,触发控制过程;
信息协调装置,用于全局属性事务的源数据和控制数据在本装置的副本间传递。
在每一个异构系统中,应用装置部署在应用服务器中,资源管理装置、事务回滚装置、事务管理装置和故障恢复装置部署在中间件服务器中,信息协调装置部署在通信服务器中。
根据所述的面向分布式系统的全局事务管理器进行事务处理,包括以下步骤:
s01、在一个异构系统中,应用装置定义事务,启动事务;
s02、事务管理装置判断是否是全局事务,肯定时执行s04,否定时执行s03;
s03、事务管理装置控制应用装置直接访问资源管理装置;
s04、通过应用装置向信息协调装置传送事务定义参数,信息协调装置向各异构系统中的信息协调装置副本转发事务定义参数;
s05、各系统中的事务管理装置判断事务定义参数中属于本系统的业务阶段或事务分支;
s06、事务管理装置通过本系统的应用装置转发数据源请求至资源管理装置;
s07、资源管理装置形成源数据,事务管理装置通过应用装置将源数据发送至信息协调装置副本,信息在系统间传输;
s08、异构系统中的应用装置将源数据进行处理形成事务处理结果。
所述步骤s06之后包括以下步骤:
s09、事务回滚装置记录资源管理装置中的同步数据变化。
所述步骤s06之后包括以下步骤:
s10、故障恢复装置判断数据处理过程中的异常,根据故障类型触发事务管理装置;
s11、事务管理装置确定故障类型,通过本系统的应用装置、信息协调装置副本转发失败信号;
s12、事务管理装置控制事务回滚装置利用同步数据恢复原始状态。
本发明的面向分布式系统的全局事务管理器,具有以下有益效果:
为业务活动提供强隔离性、严格一致性的分布式事务控制,具有良好的ACID特性;
不依赖于具体的服务实现平台;
对应用保持低侵入性,事务控制不影响正常业务代码的编写。
下面结合附图对本发明的实施例作进一步说明。
附图说明
图1为本发明面向分布式系统的全局事务管理器的结构示意图;
图2为本发明面向分布式系统的全局事务管理器的一种具体数据通信信号传递结构示意图。
具体实施方式
如图1所示,本实施例中,包括应用装置01、事务管理装置02、资源管理装置03、事务回滚装置04、故障恢复装置05和信息协调装置06,其中:
应用装置01,用于对具体事务的作用边界和事务各阶段业务操作进行描述和定义,确定事务的业务逻辑,提供控制参数转发接口;
事务管理装置02,用于设定具体事务的全局属性和分支属性,根据全局属性或分支属性,控制事务各业务阶段中源数据的提交、回滚和恢复;
资源管理装置03,用于管理本事务分支中的静态数据,根据分支事务的业务阶段形成源数据;
事务回滚装置04,用于保存本事务分支中各业务阶段所操作数据,根据回滚控制,将数据恢复到指定业务阶段之前;
故障恢复装置05,用于设置异常和故障类型,判断事务运行过程中各业务阶段软硬件环境的异常和故障类型,向事务管理装置02提交事务运行状态,触发控制过程;
信息协调装置06,用于全局属性事务的源数据和控制数据在本装置的副本间传递。
在每一个异构系统中,分别部署一个本实施例的全局事务管理器,应用装置01部署在应用服务器中,资源管理装置03、事务回滚装置04、事务管理装置02和故障恢复装置05部署在中间件服务器中,信息协调装置06部署在通信服务器中。
通过本实施例,各异构系统间可以建立统一的系统资源处理事务,实现数据分享与共享的透明环境,全局事务可以直接部署在任一应用服务器中,全局事务与各系统内的分支事务共享数据源和运算等系统资源,不但聚合了数据和数据处理能力,还使事务可以跨域多个物理节点存在,为将业务活动中涉及到的若干分布的服务纳入同一个全局事务管理提供基础。
如图2所示,利用本实施例进行全局事务处理的方法流程包括以下主要步骤:
s01、在一个异构系统中,应用装置01定义事务,启动事务;
s02、事务管理装置02判断是否是全局事务,肯定时执行s04,否定时执行s03;
s03、事务管理装置02控制应用装置01直接访问资源管理装置03;
s04、通过应用装置01向信息协调装置06传送事务定义参数,信息协调装置06向各异构系统中的信息协调装置06副本转发事务定义参数;
s05、各系统中的事务管理装置02判断事务定义参数中属于本系统的业务阶段或事务分支;
s06、事务管理装置02通过本系统的应用装置01转发数据源请求至资源管理装置03;
然后执行s07、资源管理装置03形成源数据,事务管理装置02通过应用装置01将源数据发送至信息协调装置06副本,信息在系统间传输;
s08、异构系统中的应用装置01将源数据进行处理形成事务处理结果。
同时执行s09、事务回滚装置04记录资源管理装置03中的同步数据变化。
同时执行s10、故障恢复装置05判断数据处理过程中的异常,根据故障类型触发事务管理装置02;
s11、事务管理装置02确定故障类型,通过本系统的应用装置01、信息协调装置06副本转发失败信号;
s12、事务管理装置02控制事务回滚装置04利用同步数据恢复原始状态。
以上方法流程可以较好的实现X/Open DTP模型,满足基本分布式事务的同时,克服现有集成环境不易扩展的缺陷。通过资源管理器切入应用程序,使用事务回滚区存储回滚数据保障事务正常回滚的方法。
应用装置01的业务逻辑程序,描述了事务的边界和各种业务操作。
事务管理装置02负责管理全局事务,协调事务中的参与者,监控整个事务完成时的提交、失败时的回滚、故障恢复等。为保证GTC的高可用性,事务管理器支持多节点部署,且任意节点的启动、关闭对应用来说完全透明。
资源管理装置03管理资源,提供对资源的访问。具体说来,就是为应用程序提供数据的增加、删除、更新等操作以及并发控制等有关数据安全的服务,确保数据的一致性和完整性。实现上来说,资源管理器通过实现标准的数据源接口,做到与应用程序的无缝集成,对应用程序所采用的架构及平台没有特殊要求。
事务回滚装置04将所操作数据缓存,当事务因故障需要回滚时,事务管理器根据它记录的数据恢复数据至事务发起前状态。
故障恢复装置05解决事务在运行过程中因网络问题、硬件问题、系统自身故障问题导致的各类异常,保证在各类故障发生的情况下,及时的进行事务回滚,确保事务的ACID特性。
信息协调装置06在事务执行过程中各节点之间的通信服务,如:数据资源的传输、事务上下文的传播等。它使事务可以跨越多个物理节点存在,为将业务活动中涉及到的若干分布的服务纳入同一个全局事务管理提供基础。
在一个具体的资源管理过程中,利用本发明面向分布式系统的全局事务管理器进行全局事务管理的过程如下:
s01、资源系统发起开启全局事务请求,传递给事务管理装置02;
s02、事务管理装置02判断是否是全局事务,肯定时执行s04,否定时执行s03;
s03、事务管理装置02控制应用装置01访问资源管理装置03;
s04、资源管理系统向信息协调装置06传送事务定义参数,信息协调装置06向各异构系统中的信息协调装置06副本转发事务定义参数;
s05、各节点中的事务管理装置02判断事务定义参数中属于本系统的业务阶段或事务分支;
s06、事务管理装置02通过本系统的应用装置01转发数据源请求至资源管理装置03;
然后执行s07、资源管理装置03形成源数据,事务管理装置02通过应用装置01将源数据发送至信息协调装置06副本,信息在系统间传输;
s08、资源管理系统将源数据进行处理形成事务处理结果。
同时执行s09、事务回滚装置04记录资源管理装置03中的同步数据变化。
同时执行s10、故障恢复装置05判断数据处理过程中的异常,根据故障类型触发事务管理装置02;
s11、事务管理装置02确定故障类型,通过信息协调装置06副本转发失败信号;
s12、事务管理装置02控制事务回滚装置04利用同步数据恢复原始状态。
通过以上全局事务管理器和管理方法,解决了资源管理系统对600余种资源对象以及对象之间的存在上千种关联关系进行动态管理导致的高复杂性和高故障率。
既实现了各业务系统自设计之初就能够建设多个数据库,分别负责网络属性数据库、公共应用数据库、私有应用数据库,保证资源对象的核心稳定,保证了数据模型演变过程中的核心稳定、支持扩展、变化隔离;
又在运行过程中保证了系统性能的横向扩展,完成各个资源应用在事务处理过程中的协调一致,使得能够部署多套资源管理系统来应对客户需求,以负载均衡手段来解决各节点的负载压力。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (1)
1.一种面向分布式系统的全局事务管理器,其特征在于:包括应用装置(01)、事务管理装置(02)、资源管理装置(03)、事务回滚装置(04)、故障恢复装置(05)和信息协调装置(06),其中:
应用装置(01),用于对具体事务的作用边界和事务各阶段业务操作进行描述和定义,确定事务的业务逻辑,提供控制参数转发接口;
事务管理装置(02),用于设定具体事务的全局属性和分支属性,根据全局属性或分支属性,控制事务各业务阶段中源数据的提交、回滚和恢复;
资源管理装置(03),用于管理本事务分支中的静态数据,根据分支事务的业务阶段形成源数据;
事务回滚装置(04),用于保存本事务分支中各业务阶段所操作数据,根据回滚控制,将数据恢复到指定业务阶段之前;
故障恢复装置(05),用于设置异常和故障类型,判断事务运行过程中各业务阶段软硬件环境的异常和故障类型,向事务管理装置(02)提交事务运行状态,触发控制过程;
信息协调装置(06),用于全局属性事务的源数据和控制数据在本装置的副本间传递;
在每一个异构系统中,应用装置(01)部署在应用服务器中,资源管理装置(03)、事务回滚装置(04)、事务管理装置(02)和故障恢复装置(05)部署在中间件服务器中,信息协调装置(06)部署在通信服务器中;
面向分布式系统的全局事务管理器进行事务处理,包括以下步骤:
s01、在一个异构系统中,应用装置(01)定义事务,启动事务;
s02、事务管理装置(02)判断是否是全局事务,肯定时执行s04,否定时执行s03;
s03、事务管理装置(02)控制应用装置(01)直接访问资源管理装置(03);
s04、通过应用装置(01)向信息协调装置(06)传送事务定义参数,信息协调装置(06)向各异构系统中的信息协调装置(06)副本转发事务定义参数;
s05、各系统中的事务管理装置(02)判断事务定义参数中属于本系统的业务阶段或事务分支;
s06、事务管理装置(02)通过本系统的应用装置(01)转发数据源请求至资源管理装置(03);
s07、资源管理装置(03)形成源数据,事务管理装置(02)通过应用装置(01)将源数据发送至信息协调装置(06)副本,信息在系统间传输;
s08、异构系统中的应用装置(01)将源数据进行处理形成事务处理结果;
所述步骤s06之后包括以下步骤:
s09、事务回滚装置(04)记录资源管理装置(03)中的同步数据变化;
所述步骤s06之后包括以下步骤:
s10、故障恢复装置(05)判断数据处理过程中的异常,根据故障类型触发事务管理装置(02);
s11、事务管理装置(02)确定故障类型,通过本系统的应用装置(01)、信息协调装置(06)副本转发失败信号;
s12、事务管理装置(02)控制事务回滚装置(04)利用同步数据恢复原始状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410214371.XA CN103995868B (zh) | 2014-05-20 | 2014-05-20 | 面向分布式系统的全局事务管理器及事务处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410214371.XA CN103995868B (zh) | 2014-05-20 | 2014-05-20 | 面向分布式系统的全局事务管理器及事务处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103995868A CN103995868A (zh) | 2014-08-20 |
CN103995868B true CN103995868B (zh) | 2017-07-21 |
Family
ID=51310033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410214371.XA Active CN103995868B (zh) | 2014-05-20 | 2014-05-20 | 面向分布式系统的全局事务管理器及事务处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103995868B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106598992B (zh) * | 2015-10-15 | 2020-10-23 | 南京中兴软件有限责任公司 | 数据库的操作方法及装置 |
US9971822B1 (en) | 2015-12-29 | 2018-05-15 | Amazon Technologies, Inc. | Replicated state management using journal-based registers |
US10339127B2 (en) * | 2016-01-28 | 2019-07-02 | Oracle International Corporation | Guaranteed commit outcome in a distributed transaction processing system |
CN107766080B (zh) * | 2016-08-23 | 2021-11-09 | 阿里巴巴集团控股有限公司 | 事务消息处理方法、装置、设备及系统 |
CN106598703B (zh) * | 2016-12-08 | 2020-04-03 | 用友网络科技股份有限公司 | 集成系统的事务补偿方法和装置 |
CN108009011A (zh) * | 2017-12-04 | 2018-05-08 | 科大国创软件股份有限公司 | 一种基于java反射原理的工作流平台多接口事务链处理方法 |
CN108446167B (zh) * | 2018-02-09 | 2020-11-06 | 烽火通信科技股份有限公司 | 一种分布式事务处理方法及系统 |
US10698724B2 (en) * | 2018-04-10 | 2020-06-30 | Osisoft, Llc | Managing shared resources in a distributed computing system |
CN108845866B (zh) * | 2018-06-28 | 2021-06-29 | 创新先进技术有限公司 | 处理分布式事务的方法和装置 |
CN113127102A (zh) * | 2021-05-18 | 2021-07-16 | 中国农业银行股份有限公司 | 业务数据的处理方法、装置、设备、存储介质及程序 |
CN116303517B (zh) * | 2023-05-12 | 2023-08-22 | 无锡锡商银行股份有限公司 | 一种分布式事务调度管理系统及方法 |
CN117112149B (zh) * | 2023-10-24 | 2024-02-06 | 苔花科迈(西安)信息技术有限公司 | 一种矿区矿井业务流程联通方法、装置、介质及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102306197A (zh) * | 2011-09-22 | 2012-01-04 | 用友软件股份有限公司 | 保证跨数据源操作结果一致性的装置和方法 |
CN102317913A (zh) * | 2011-07-30 | 2012-01-11 | 华为技术有限公司 | 一种事务恢复方法和事务恢复装置 |
CN103559245A (zh) * | 2013-10-29 | 2014-02-05 | 华为技术有限公司 | 一种分布式事务提交故障的处理方法、装置和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7984020B2 (en) * | 2007-12-06 | 2011-07-19 | Sap Ag | System and method for business object sync-point and rollback framework |
-
2014
- 2014-05-20 CN CN201410214371.XA patent/CN103995868B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102317913A (zh) * | 2011-07-30 | 2012-01-11 | 华为技术有限公司 | 一种事务恢复方法和事务恢复装置 |
CN102306197A (zh) * | 2011-09-22 | 2012-01-04 | 用友软件股份有限公司 | 保证跨数据源操作结果一致性的装置和方法 |
CN103559245A (zh) * | 2013-10-29 | 2014-02-05 | 华为技术有限公司 | 一种分布式事务提交故障的处理方法、装置和系统 |
Non-Patent Citations (1)
Title |
---|
分布事务监控器的服务管理和监控技术研究;李松领;《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》;20040915(第3期);第2.1.3节、第2.2.1节、第3-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN103995868A (zh) | 2014-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103995868B (zh) | 面向分布式系统的全局事务管理器及事务处理方法 | |
US10713135B2 (en) | Data disaster recovery method, device and system | |
CN103647669B (zh) | 一种保证分布式数据处理一致性的系统及方法 | |
CN103778031B (zh) | 一种云环境下的分布式系统多级故障容错方法 | |
US8676760B2 (en) | Maintaining data integrity in data servers across data centers | |
CN102346460B (zh) | 一种基于事务的服务控制系统及其控制方法 | |
CN103473318B (zh) | 一种面向内存数据网格的分布式事务保障方法 | |
CN110569149B (zh) | 基于故障探测触发Oracle容灾自动应急切换的方法 | |
US10747776B2 (en) | Replication control using eventually consistent meta-data | |
CN102317913B (zh) | 一种事务恢复方法和事务恢复装置 | |
CN105630589A (zh) | 分布式流程调度系统及流程调度、执行方法 | |
CN106933843A (zh) | 数据库心跳检测方法以及装置 | |
CN102938705A (zh) | 一种高可用多机备份路由表管理与切换方法 | |
CN109298976B (zh) | 一种异构数据库集群备份系统及方法 | |
CN106506186A (zh) | 重建虚拟网络功能的方法和装置 | |
CN103618788A (zh) | 一种支持b/s结构系统高可用的方法 | |
CN108011846A (zh) | 网络功能虚拟化架构中管理业务的方法及装置 | |
CN115794499B (zh) | 一种用于分布式块存储集群间双活复制数据的方法和系统 | |
CN104573428B (zh) | 一种提高服务器集群资源有效性的方法及系统 | |
CN110119325A (zh) | 服务器故障处理方法、装置、设备及计算机可读存储介质 | |
CN106331081A (zh) | 一种信息同步方法及装置 | |
CN107357800A (zh) | 一种数据库高可用零丢失解决方法 | |
CN109408201B (zh) | 基于分布式数据库的事务管理方法 | |
CN116185697B (zh) | 容器集群管理方法、装置、系统、电子设备及存储介质 | |
Zhu et al. | IT disaster tolerance and application classification for data centers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20140820 Assignee: Kedaduochuang cloud Technology Co.,Ltd. Assignor: USTC SINOVATE SOFTWARE CO.,LTD. Contract record no.: X2023980034512 Denomination of invention: Global Transaction Manager and Transaction Processing Methods for Distributed Systems Granted publication date: 20170721 License type: Common License Record date: 20230407 |
|
EE01 | Entry into force of recordation of patent licensing contract |