一种数据同步方法、系统及装置制造方法及图纸

技术编号:4329111 阅读:175 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开了一种数据同步的方法,该方法为:第一系统对本系统存储的树结构数据进行节点更新后,将所述树结构数据中根节点到更新的节点间的路径的信息发送给第二系统;所述第二系统根据所述路径的信息对本系统存储的树结构数据进行节点更新。本发明专利技术实施例还公开了数据同步的系统和装置。采用本发明专利技术,能够有效的降低两个系统之间进行数据同步所需要的工作量。

【技术实现步骤摘要】

本专利技术涉及数据处理领域,尤其涉及一种数据同步方法、系统及装置
技术介绍
随着信息化的发展,企业中往往存在多个业务系统,为了提高办公效率, 需要将某个业务系统的数据同步到另外一个系统,使得两个业务系统中的数据 保持相同。 数据的组织结构有很多种,目前在业务系统中广泛存在的是树结构数据, 树结构数据中包含一个根节点,根节点下可以包含一个或多个子节点,对于各 个子节点,其下可以包含一个或多个孙节点,如此类推,一个树结构数据可以 包含多级节点。若A节点包含B节点,则称A节点为B节点的父节点,B节 点为A节点的子节点。 举例说明,如图1A所示,为一树结构的部门数据,该部门数据包含根部 门,根部门下包含子部门A和子部门B,子部门A下又包含孙部门A1和孙部 门A2,子部门B下又包含孙部门B1和孙部门B2,孙部门A1下包含曾孙部 门A11,孙部门B2下包含曾孙部门B21,根部门为第一级部门,子部门A和 子部门B为第二级部门,孙部门A1、A2、B1和B2为第三级部门,曾孙部门 A11和B21为第四级部门。 目前,将业务系统A中的树结构数据同步到另外业务系统B中的方法主 要有如下三种: 第一种,将A系统中的树结构数据重写到B系统中。 由于A系统和B系统中的数据表示逻辑、编程语言、数据库类型、数据 -->存储规则等不同,在将A系统中的树结构数据重写到B系统之前,A系统的 开发人员需要与B系统的开发人员进行沟通交流,在了解了B系统的数据表 示逻辑、编程语言、数据库类型、数据存储规则等后,才能按照B系统的数据 表示逻辑、编程语言、数据库类型、数据存储规则将A系统中的树结构数据重 写到B系统中,开发人员的工作量非常大。 第二种,A系统实时的将本系统中的数据同步到B系统中:A系统中新增 节点时,为该新增的节点分配唯一编号,将该节点的数据内容、该节点的唯一 编号(新增节点编号)、该节点的名称和该节点的父节点的唯一编号(父节点 编号)发送给B系统,B系统在本系统中存储的相应树结构数据中,查找父节 点编号对应的节点,在该节点下创建新增节点,记录新增节点的名称、数据内 容和新增节点编号;A系统中修改某一节点的数据内容时,将修改后的数据内 容、该节点的唯一编号(修改节点编号)发送给B系统,B系统在本系统中存 储的相应树结构数据中,查找修改节点编号对应的节点,将该节点的数据内容 修改为接收到的数据内容;A系统中删除某一节点时,将该节点的唯一编号(删 除节点编号)发送给B系统,B系统在本系统中存储的相应树结构数据中,查 找删除节点编号对应的节点,并将该节点删除。 由于需要系统为每个节点分配、记录唯一编号,对于两个系统来说,实现 数据同步所付出的工作量较大,并且,大量的唯一编号必然会占用系统较多的 存储资源。 第三种,将系统A和系统B的数据使用相同的表示逻辑、编程语言、存 储规则存储在第三方系统中,使系统A和系统B共享数据。 该种方法中开发人员也需要重写系统A和系统B的数据,对于开发人员 来说需要付出的工作量十分大。 综上,现有的在两个系统中同步树结构数据的方法存在工作量大等缺陷。
技术实现思路
-->本专利技术实施例提供一种数据同步的方法、系统及装置,用于降低实现两个 系统中树结构数据同步需要付出的工作量。 本专利技术实施例提供一种数据同步的方法,该方法包括: 第一系统对本系统存储的树结构数据进行节点更新后,将所述树结构数据 中根节点到更新的节点间的路径的信息发送给第二系统; 所述第二系统根据所述路径的信息对本系统存储的树结构数据进行节点 更新。 本专利技术实施例提供一种数据同步的系统,该系统包括: 信息发送装置,用于对本装置中存储的树结构数据进行节点更新后,将所 述树结构数据中根节点到更新的节点间的路径的信息发送给数据同步装置; 数据同步装置,用于接收所述路径的信息,根据所述路径的信息对本装置 存储的树结构数据进行节点更新。 本专利技术实施例提供一种信息发送装置,该装置包括: 节点更新单元,用于对本装置中存储的树结构数据进行节点更新; 信息发送单元,用于在所述节点更新单元进行节点更新后,将所述树结构 数据中根节点到更新的节点间的路径的信息发送给其他装置。 本专利技术实施例提供一种数据同步装置,该装置包括: 信息接收单元,用于接收其他装置发来的树结构数据中根节点到更新的节 点间的路径的信息; 数据更新单元,用于根据所述路径的信息对本装置存储的树结构数据进行 节点更新。 本专利技术中,第一系统在对本系统存储的树结构数据进行节点更新后,将树 结构数据中根节点到更新的节点间的路径的信息发送给第二系统,第二系统根 据接收到的路径的信息对本系统存储的树结构数据进行节点更新,以达到两个 系统数据同步的目的。由于本专利技术实施例提供的方案中不需要将第一系统的树 结构数据重写到B系统中,也不需要系统为每个节点分配并记录唯一编号,大 -->大降低了实现系统间数据同步需要付出的工作量。 附图说明 图1A为现有技术中树结构数据的示例图; 图1B为本专利技术实施例提供的方法的流程示意图; 图2A为本专利技术实施例中第一系统存储的树结构数据的示意图; 图2B为本专利技术实施例中第一系统创建节点的示意图; 图2C为本专利技术实施例中第二系统存储的树结构数据的示意图; 图2D为本专利技术实施例中第二系统创建节点的示意图; 图3A为本专利技术实施例中第一系统修改节点的示意图; 图3B为本专利技术实施例中第二系统修改节点的示意图; 图4A为本专利技术实施例中第一系统删除节点的示意图; 图4B为本专利技术实施例中第二系统删除节点的示意图; 图5为本专利技术实施例提供的系统的结构示意图; 图6为本专利技术实施例提供的装置的结构示意图; 图7为本专利技术实施例提供的装置的结构示意图。 具体实施方式 为了减少在两个系统中同步树结构数据时的工作量并节省系统存储资源, 本专利技术实施例提供一种数据同步的方法,实现采用树结构存储节点数据的两个 系统间的数据同步,本方法中,第一系统在树结构数据中增加、删除或修改节 点时,将树结构数据中根节点到增加、删除或修改的节点间的路径的信息发送 给第二系统,第二系统根据接收到的路径信息对本系统中存储的相应树结构数 据进行节点更新。 节点之间的路径的含义如下:如果树结构数据中存在一个节点序列: -->K1,K2,...,Kj,使得节点Ki是节点Ki+1的父节点(1≤i<j),则称该节点序 列是树结构数据中从节点K1到节点Kj的一条路径。在树结构数据中,对于每 个节点都会存在根节点到该节点的路径,若该节点为根节点,那么根节点到根 节点的路径上的节本文档来自技高网
...

【技术保护点】
一种数据同步的方法,其特征在于,该方法包括:    第一系统对本系统存储的树结构数据进行节点更新后,将所述树结构数据中根节点到更新的节点间的路径的信息发送给第二系统;    所述第二系统根据所述路径的信息对本系统存储的树结构数据进行节点更新。

【技术特征摘要】
1、一种数据同步的方法,其特征在于,该方法包括: 第一系统对本系统存储的树结构数据进行节点更新后,将所述树结构数据 中根节点到更新的节点间的路径的信息发送给第二系统; 所述第二系统根据所述路径的信息对本系统存储的树结构数据进行节点 更新。 2、如权利要求1所述的方法,其特征在于,所述进行节点更新为创建新 的节点时,所述更新的节点为创建的节点,所述树结构数据中根节点到创建的 节点间的路径的信息包括所述路径上的节点序列; 所述第二系统根据所述路径的信息在本系统存储的相应树结构数据中进 行节点更新包括: 所述第二系统根据所述节点序列在本系统存储的树结构数据中创建节点, 创建的节点为所述节点序列中包含的、并且本系统中存储的树结构数据中未包 含的节点。 3、如权利要求2所述的方法,其特征在于,所述节点序列中包含根节点; 所述第二系统根据所述节点序列在本系统中存储的树结构数据中创建节点包 括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若未查找 到,则创建所述根节点。 4、如权利要求3所述的方法,其特征在于,所述路径上还包含除根节点 之外的其他节点;所述第二系统根据所述节点序列在本系统中存储的树结构数 据中创建节点包括: 所述第二系统将所述节点序列中与所述其他节点相邻并在该其他节点之 前的节点作为所述其他节点的父节点,在本系统中所述父节点的子节点中查找 所述其他节点,若未查找到,则在本系统中所述父节点下创建所述其他节点。 -->5、如权利要求1-4中任一所述的方法,其特征在于,所述进行节点更新 为修改已有节点的数据内容时,所述更新的节点为修改的节点,所述树结构数 据中根节点到修改的节点间的路径的信息包括所述路径上的节点序列以及修 改后的节点的数据内容; 所述第二系统根据所述路径的信息在本系统存储的树结构数据中进行节 点更新包括: 所述第二系统根据所述节点序列以及修改后的节点的数据内容在本系统 存储的树结构数据中创建或修改节点。 6、如权利要求5所述的方法,其特征在于,所述节点序列中仅包含根节 点;所述第二系统根据所述节点序列在本系统存储的树结构数据中创建或修改 节点包括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若未查找 到,则创建所述根节点;若查找到,则根据所述修改后的节点的数据内容对查 找到的节点的数据内容进行修改。 7、如权利要求5所述的方法,其特征在于,所述节点序列中仅包含根节 点和末节点;所述第二系统根据所述节点序列在本系统存储的树结构数据中创 建或修改节点包括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若未查找 到,则创建所述根节点,并在创建的根节点下创建所述末节点;若查找到: 在查找到的节点的子节点中查找所述末节点,若未查找到,则在查找到的 根节点下创建所述末节点;若查找到,则根据所述修改后的节点的数据内容对 查找到的末节点的数据内容进行修改。 8、如权利要求5所述的方法,其特征在于,所述节点序列中包含根节点、 末节点和至少一个中间节点;所述第二系统根据所述节点序列在本系统存储的 相应树结构数据中创建或修改节点包括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若未查找 -->到,则创建所述根节点; 对于各个中间节点,将所述节点序列中与该中间节点相邻并在该中间节点 之前的节点作为所述中间节点的父节点,在本系统中所述父节点的子节点中查 找所述中间节点,若未查找到,则在本系统中所述父节点下创建所述中间节点; 将所述节点序列中与所述末节点相邻并在该末节点之前的节点作为所述 末节点的父节点,在本系统中所述父节点的子节点中查找所述末节点,若未查 找到,则在本系统中所述父节点下创建所述末节点;若查找到,则根据所述修 改后的节点的数据内容对查找到的末节点的数据内容进行修改。 9、如权利要求1-4、6-8中任一所述的方法,其特征在于,所述进行节点 更新为删除已有的节点时,所述更新的节点为删除的节点,所述树结构数据中 根节点到删除的节点间的路径的信息包括所述路径上的节点序列; 所述第二系统根据所述路径的信息在本系统存储的树结构数据中进行节 点更新包括: 所述第二系统根据所述节点序列在本系统存储的树结构数据中创建或删 除节点。 10、如权利要求9所述的方法,其特征在于,所述节点序列中仅包含根节 点;所述第二系统根据所述节点序列在本系统存储的树结构数据中创建或删除 节点包括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若查找到, 则删除查找到的节点以及该节点的所有子孙节点。 11、如权利要求9所述的方法,其特征在于,所述节点序列中仅包含根节 点和末节点;所述第二系统根据所述节点序列在本系统存储的树结构数据中创 建或删除节点包括: 所述第二系统在本系统存储的树结构数据中查找所述根节点,若未查找 到,则创建所述根节点;若查找到: 在查找到的节点下查找所述末节点,若查找到,则删除查找到的末节点以 -->及该末节点的所有子孙节点。 12、如权利要求9所述的方法,其特征在于,...

【专利技术属性】
技术研发人员:赵洪岩陈春和田朝飞
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:11[中国|北京]

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

1
相关领域技术
  • 暂无相关专利