CN101344894A - 一种应用系统间数据同步的方法和装置 - Google Patents
一种应用系统间数据同步的方法和装置 Download PDFInfo
- Publication number
- CN101344894A CN101344894A CNA2008101474940A CN200810147494A CN101344894A CN 101344894 A CN101344894 A CN 101344894A CN A2008101474940 A CNA2008101474940 A CN A2008101474940A CN 200810147494 A CN200810147494 A CN 200810147494A CN 101344894 A CN101344894 A CN 101344894A
- Authority
- CN
- China
- Prior art keywords
- application system
- communication
- ensemble
- data
- module
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种应用系统间数据同步的方法和装置,初始化缓冲机模块;加载和解析应用系统信息集合和同步操作信息集合到数据同步模块;获取所有需要同步的应用系统信息集合和同步操作信息集合;轮询应用系统,进行数据同步操作;判断数据同步更新是否成功,如果没有成功,把没有成功同步的应用系统信息集合和同步操作信息集合放入缓冲机模块中,利用线程轮询应用系统,进行数据同步更新,直至成功;如果成功,更新应用系统的缓存。采用了本发明的技术方案,能够在应用场景发生变化时,只需要简单修改已有的应用系统信息集合和同步操作信息集合即能满足新的应用需要,并且应用系统发生意外时也可以完成数据同步。
Description
技术领域
本发明涉及数据缓冲同步技术领域,尤其涉及一种应用系统间数据同步的方法和装置。
背景技术
在一个应用环境中,会有各种各样的应用系统来解决不同的业务,每个应用系统会涉及到与其他应用系统相关的数据库进行数据的存取。而这些应用系统间又会有些基础数据存在着很强的关联,比如人员信息,部门信息等,当某个应用系统的一条基础数据修改后,与之关联的其他应用系统相对应的数据必须保证得到修改,也就是说,要保证数据的一致性。如何保证不同应用系统中的基础数据的一致性相当重要。
通常采用人工的方式,把涉及到需要修改的基础数据,逐个应用系统去同步一遍。这样就会很麻烦,而且在手工同步的过程中也可能会发生一些人为的错误,导致基础数据不同步修改或修改不一致的情况发生。
为了保证基础数据的同步性、一致性,常规的操作方式是把其中的一个应用系统设定统一维护的入口,所有发生变化的基础数据都在规定的入口处进行修改,这样就解决了基础数据的一致性问题。之后剩下的基础数据同步性的工作由硬编码的方式来完成。将需要同步的数据直接在编码中实现,同时通过编码调用外部应用系统的接口,将数据操作事件通知给外部应用系统缓存部分。例如,对统一入口应用系统A进行插入某种基础数据操作,需要将这些基础数据同时插入到应用系统B和应用系统C,那么硬编码会在编码中将对应用系统B和应用系统C的操作写在编码中。
这种应用系统在应用场景改变时就需要修改源编码来满足要求,随着应用场景的不断变化,需要不断地修改源编码,因而会导致编码维护的难度越来越大。由于是硬编码,所以需要进行修改编码后重新编译和部署,才能满足业务的要求。
为减少修改源编码带来的不便,还可以通过配置文件来进行数据的同步。例如,对统一入口应用系统A进行了插入数据操作,需要将这些数据同时插入到应用系统B和应用系统C中。此时,读取配置文件获取应用系统B和应用系统C的应用系统信息和同步操作信息,将数据更新到应用系统B和应用系统C中。
虽然通过配置文件的方式可以进行数据同步,配置文件中的信息为应用系统信息集合和同步操作信息集合,对数据的同步操作可以由硬编码来实现;当有新的应用系统想得到数据库操作通知时,也需要修改编码,影响了应用系统的扩展性。而且,当需要同步的应用系统发生故障时,会导致数据同步出现中断,使数据同步不成功的问题。
发明内容
本发明的目的在于提出一种应用系统间数据同步的方法和装置,能够在应用场景发生变化时,只需要简单修改已有的应用系统信息集合和同步操作信息集合即能满足新的应用需要,并且当应用系统发生意外时也可以完成数据同步。
为达此目的,本发明采用以下技术方案:
一种应用系统间数据同步的方法,包括以下步骤:
A、初始化缓冲机模块;
B、加载和解析应用系统信息集合和同步操作信息集合到数据同步模块;
C、所述数据同步模块获取所有需要同步的应用系统信息集合和同步操作信息集合;
D、轮询所述应用系统,进行数据同步操作;
E、判断所述数据同步更新是否成功,如果成功,则转至步骤G,如果没有成功,则转至步骤F;
F、把没有成功同步的应用系统信息集合和同步操作信息集合放入所述缓冲机模块中,利用线程轮询所述应用系统,进行数据同步更新,并转至步骤E;
G、更新所述应用系统的缓存,并结束。
步骤B还包括以下步骤:
预先建立所述应用系统信息集合和同步操作信息集合。
步骤B进一步包括以下步骤:
将所述应用系统信息集合和同步操作信息集合写入配置文件中;
当所述应用系统启动后,将所述配置文件加载到所述数据同步模块的缓存中。
步骤C中,根据操作类型和操作的数据对象在所述配置文件中检索所有需要的应用系统信息集合和同步操作信息集合。
所述应用系统信息集合和同步操作信息集合包括需要同步的应用系统、系统连接方式和操作代码片段。
步骤E中,数据同步模块根据返回值判断所述数据同步更新是否成功。
一种应用系统间数据同步的装置,包括同步信息模块、解析模块、数据同步模块、更新模块和缓冲机模块,
所述同步信息模块用于生成应用系统信息集合和同步操作信息集合配置文件;
所述解析模块用于所述应用系统启动时将所述同步信息模块中的配置文件加载到所述数据同步模块;
所述数据同步模块用于获取需要的应用系统信息集合和同步操作信息集合,并对所述应用系统进行数据同步操作;
所述更新模块用于将同步成功后的数据发送给对应的所述应用系统缓存;
缓冲机模块用于存储没有成功同步的应用系统信息集合和同步操作信息集合。
采用了本发明的技术方案,可以根据自身的特点和具体的应用场景需要,定制出同步信息,实现数据之间一致性同步。数据之间的关联逻辑不需要在编码中实现,和具体的编码无关,只需要将数据之间的关联写入配置文件。当数据之间的关联发生变化时,可以通过修改配置文件的触发信息就能实现,维护相当方便,可以很方便实现应用的扩展。同时很好的解决了同步系统发生故障时的处理方法。
附图说明
图1是本发明具体实施方式中应用系统间数据同步系统的结构示意图;
图2是本发明具体实施方式中应用系统间同步信息的结构示意图;
图3是本发明具体实施方式中应用系统间数据同步流程图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
本发明技术方案的主要思想是通过预先制定应用系统信息集合和同步操作信息集合,根据应用系统信息集合和同步操作信息集合将数据同步至相关联的应用系统中,并更新相应系统缓存部分,如果需要进行同步应用系统发生故障不能被同步,就把需要同步的数据放入缓冲机中,等待发生故障的应用系统恢复正常后,由缓冲机自动取出数据进行同步,并更新相应系统缓存部分。
图1是本发明具体实施方式中应用系统间数据同步系统的结构示意图。如图1所示,该应用系统间数据同步的装置,包括同步信息模块101、解析模块102、数据同步模块103、更新模块104和缓冲机模块105,同步信息模块生成应用系统信息集合和同步操作信息集合配置文件,解析模块在应用系统启动时将同步信息模块中的配置文件加载到数据同步模块,数据同步模块获取需要的应用系统信息集合和同步操作信息集合,并对应用系统进行数据同步操作,更新模块将同步成功后的数据发送给对应的应用系统缓存,缓冲机模块存储没有成功同步的应用系统信息集合和同步操作信息集合。
图2是本发明具体实施方式中应用系统间同步信息的结构示意图。如图2所示,sync节点包含应用系统信息集合systems和同步操作信息集合switch。
其中应用系统信息集合systems下包含了同步的各个应用系统(sys1,sys2,等等),而每个应用系统下又包括了name、driver、class、url、user、password等属性,其中name是对应系统的名称,driver是对数据源的连接驱动,class是对应系统的实体映射,url是对应数据源的连接地址,user是数据源的用户名,password是数据源的密码。
同步操作信息集合switch下包含了同步的各个基础数据属性(baseobject 1,base object2,等等),而每个基础数据下包括了type 1,type 2,等对基础数据各类操作属性,比如增加操作、修改操作、删除操作等,每个操作属性type下又有class和code属性,code属性和class属性是一对一的,code属性为操作编码,是对应某个应用系统的某个基础数据的某种操作的具体实现编码,code属性中内容都是不一样的。
同步操作信息集合class属性值与应用系统下的class属性值是相对应的,利用class属性值就可以进行操作编码和连接信息的关联。根据操作类型和操作的数据对象在配置文件的switch集合下寻找到对应的class属性,再利用同步操作信息集合class属性值与应用系统下的class属性值是相对应的这一特点,就可以找到相应的应用系统信息集合。
图3是本发明具体实施方式中应用系统间数据同步流程图。如图3所示,应用系统间数据同步流程包括以下步骤:
步骤301、初始化缓冲机模块。
步骤302、建立上述的应用系统信息集合和同步操作信息集合。
步骤303、同步信息模块将建立的应用系统信息集合和同步操作信息集合写到XML格式的配置文件中。
步骤304、当应用系统启动时,解析模块将应用系统信息集合和同步操作信息集合配置文件加载解析到数据同步模块。
步骤305、数据同步模块根据操作类型和操作的数据对象在配置文件中检索所有需要同步的应用系统信息集合和同步操作信息集合,其中包括需要同步的应用系统、系统连接方式和操作代码片段。
步骤306、数据同步模块轮询需要同步的应用系统,进行数据同步操作。
步骤307、数据同步模块根据返回值判断数据同步更新是否成功,全程监视执行数据同步更新的编码,如果在执行的过程中没有发生任何错误返回值为TRUE,证明更新成功,如果在执行的过程中有错误发生返回值为FALSE,证明更新失败,如果成功,则转至步骤310,如果失败,则转至步骤308。
步骤308、把没有成功同步的应用系统信息集合和同步操作信息集合放入缓冲机模块中。
步骤309、利用线程轮询应用系统,进行数据同步更新,并转至步骤307。
步骤310、更新应用系统的缓存,并结束。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (7)
1、一种应用系统间数据同步的方法,其特征在于,包括以下步骤:
A、初始化缓冲机模块;
B、加载和解析应用系统信息集合和同步操作信息集合到数据同步模块;
C、所述数据同步模块获取所有需要同步的应用系统信息集合和同步操作信息集合;
D、轮询所述应用系统,进行数据同步操作;
E、判断所述数据同步更新是否成功,如果成功,则转至步骤G,如果没有成功,则转至步骤F;
F、把没有成功同步的应用系统信息集合和同步操作信息集合放入所述缓冲机模块中,利用线程轮询所述应用系统,进行数据同步更新,并转至步骤E;
G、更新所述应用系统的缓存,并结束。
2、根据权利要求1所述的一种应用系统间数据同步的方法,其特征在于,步骤B还包括以下步骤:
预先建立所述应用系统信息集合和同步操作信息集合。
3、根据权利要求2所述的一种应用系统间数据同步的方法,其特征在于,步骤B进一步包括以下步骤:
将所述应用系统信息集合和同步操作信息集合写入配置文件中;
当所述应用系统启动后,将所述配置文件加载到所述数据同步模块的缓存中。
4、根据权利要求3所述的一种应用系统间数据同步的方法,其特征在于,步骤C中,根据操作类型和操作的数据对象在所述配置文件中检索所有需要的应用系统信息集合和同步操作信息集合。
5、根据权利要求4所述的一种应用系统间数据同步的方法,其特征在于,所述应用系统信息集合和同步操作信息集合包括需要同步的应用系统、系统连接方式和操作代码片段。
6、根据权利要求1所述的一种应用系统间数据同步的方法,其特征在于,步骤E中,数据同步模块根据返回值判断所述数据同步更新是否成功。
7、一种应用系统间数据同步的装置,其特征在于,包括同步信息模块、解析模块、数据同步模块、更新模块和缓冲机模块,
所述同步信息模块用于生成应用系统信息集合和同步操作信息集合配置文件;
所述解析模块用于所述应用系统启动时将所述同步信息模块中的配置文件加载到所述数据同步模块;
所述数据同步模块用于获取需要的应用系统信息集合和同步操作信息集合,并对所述应用系统进行数据同步操作;
所述更新模块用于将同步成功后的数据发送给对应的所述应用系统缓存;
缓冲机模块用于存储没有成功同步的应用系统信息集合和同步操作信息集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101474940A CN101344894B (zh) | 2008-08-21 | 2008-08-21 | 一种应用系统间数据同步的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101474940A CN101344894B (zh) | 2008-08-21 | 2008-08-21 | 一种应用系统间数据同步的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101344894A true CN101344894A (zh) | 2009-01-14 |
CN101344894B CN101344894B (zh) | 2012-11-07 |
Family
ID=40246897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101474940A Expired - Fee Related CN101344894B (zh) | 2008-08-21 | 2008-08-21 | 一种应用系统间数据同步的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101344894B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413154A (zh) * | 2010-09-21 | 2012-04-11 | 北大方正集团有限公司 | 一种系统之间数据信息同步的方法及装置 |
CN104536784A (zh) * | 2014-12-23 | 2015-04-22 | 北京国双科技有限公司 | 实时系统更新方法及装置 |
CN107315764A (zh) * | 2017-05-11 | 2017-11-03 | 北京奇艺世纪科技有限公司 | 一种非关系型数据库关联数据的更新方法及系统 |
CN108280142A (zh) * | 2017-12-29 | 2018-07-13 | 武汉钢铁工程技术集团通信有限责任公司 | 一种新旧系统异动数据对接的方法 |
CN112231409A (zh) * | 2020-10-23 | 2021-01-15 | 北京人大金仓信息技术股份有限公司 | 数据库同步的初始化装载方法、装置、设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000163344A (ja) * | 1998-11-27 | 2000-06-16 | Nec Corp | ネットワーク管理システムのデータベース復旧方式 |
CN1223948C (zh) * | 2002-11-15 | 2005-10-19 | 鸿富锦精密工业(深圳)有限公司 | 数据同步系统和方法 |
CN101123490B (zh) * | 2007-09-21 | 2012-05-30 | 北京意科通信技术有限责任公司 | 用消息服务机制实现不同服务器间发收同步数据的方法 |
-
2008
- 2008-08-21 CN CN2008101474940A patent/CN101344894B/zh not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413154A (zh) * | 2010-09-21 | 2012-04-11 | 北大方正集团有限公司 | 一种系统之间数据信息同步的方法及装置 |
CN102413154B (zh) * | 2010-09-21 | 2014-04-09 | 北大方正集团有限公司 | 一种系统之间数据信息同步的方法及装置 |
CN104536784A (zh) * | 2014-12-23 | 2015-04-22 | 北京国双科技有限公司 | 实时系统更新方法及装置 |
CN104536784B (zh) * | 2014-12-23 | 2018-02-23 | 北京国双科技有限公司 | 实时系统更新方法及装置 |
CN107315764A (zh) * | 2017-05-11 | 2017-11-03 | 北京奇艺世纪科技有限公司 | 一种非关系型数据库关联数据的更新方法及系统 |
CN107315764B (zh) * | 2017-05-11 | 2020-04-21 | 北京奇艺世纪科技有限公司 | 一种非关系型数据库关联数据的更新方法及系统 |
CN108280142A (zh) * | 2017-12-29 | 2018-07-13 | 武汉钢铁工程技术集团通信有限责任公司 | 一种新旧系统异动数据对接的方法 |
CN108280142B (zh) * | 2017-12-29 | 2022-01-04 | 武汉钢铁工程技术集团通信有限责任公司 | 一种新旧系统异动数据对接的方法 |
CN112231409A (zh) * | 2020-10-23 | 2021-01-15 | 北京人大金仓信息技术股份有限公司 | 数据库同步的初始化装载方法、装置、设备和存储介质 |
CN112231409B (zh) * | 2020-10-23 | 2024-04-26 | 北京人大金仓信息技术股份有限公司 | 数据库同步的初始化装载方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101344894B (zh) | 2012-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130117229A1 (en) | Method and A System for Integrating Data from a Source to a Destination | |
CN101344894B (zh) | 一种应用系统间数据同步的方法和装置 | |
EP2637083A1 (en) | Method and device for displaying startup interface of multimedia terminal | |
CN101346757A (zh) | 管理多媒体场景中字符字体的方法以及相应的计算机程序和终端 | |
EP2328302B1 (en) | A method and device for maintaining a changelog in data synchronization | |
JP2010531025A5 (zh) | ||
KR20090034898A (ko) | 웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체 | |
CN103533011A (zh) | 一种基于云端的智能终端数据配置方法及系统 | |
CN105512171A (zh) | 数据库同步的方法及装置 | |
CN104268033A (zh) | 终端数据的存储方法、恢复终端默认设置的方法及装置 | |
CN103488754A (zh) | 一种异构文档协作云服务间透明互操作的方法 | |
CN102752294A (zh) | 基于设备能力的多终端数据同步方法和系统 | |
CN100450013C (zh) | 通信设备配置数据的存储方法 | |
CN101147128A (zh) | 使计算机应用中资源管理自动化的方法 | |
CN101515279A (zh) | 一种信息远程同步方法及系统 | |
CN104486393A (zh) | 资源配置与回收方法和资源配置与回收系统 | |
CN101377737A (zh) | 应用系统资源管理装置 | |
CN112783482B (zh) | 一种可视化表单生成方法、装置、设备及存储介质 | |
CN101887375B (zh) | 一种人机命令系统的实现方法及其系统 | |
CN103581262A (zh) | 一种主备数据同步方法、装置和系统 | |
CN100433005C (zh) | 搜索系统索引切换的方法及搜索系统 | |
CN101794217B (zh) | 实现应用程序与文档库系统的扩展模块交互的方法及系统 | |
CN111506668B (zh) | 机器人集群智能化数据同步方法及系统 | |
US9940055B2 (en) | Operator panel with applications for operating production systems | |
CN107888430A (zh) | 虚拟机管理操作同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121107 Termination date: 20150821 |
|
EXPY | Termination of patent right or utility model |