用于复制和同步的系统和方法技术方案

技术编号:5446818 阅读:226 留言:0更新日期:2012-04-11 18:40
本发明专利技术的实施例提供一种对等且多线程的复制和同步机制。本发明专利技术的实施例还可以在复制品之间的通信丢失的情况下实现可用替换服务并在复制品之间的通信恢复时实现完全自动恢复。复制和同步机制还可以提供条目级同步和对事务的支持。复制和同步机制将已由于对等端之间的通信丢失而独立地进行的改变合并。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的实施例涉及用于提供网络数据服务器中的复制(implication)和同步 机制的系统和方法。更特别地,本专利技术的实施例涉及使得能够实现稳健、高速的数据访问以 供在具有许多订户的通信网络中使用的系统和方法,所述订户的各自数据可以被部署在集 中式数据仓库(repository)中以供在网络内运行的各种应用程序访问。
技术介绍
现有技术中的复制和同步机制具有许多限制。这些限制包括单线程和单进程机 制。目录系统代理(DSA)中的一个服务器通常充当对该DSA的所有更新的主站(primary) 或母站(master),而不管涉及多少其他服务器或通信距离有多大。单个消息的丢失通常被 视为同步的失去。需要一种自动晋升机制(到主站)以允许第二服务器在现有主站发生故 障的情况下承担主站的责任。在没有此类机制的情况下,可能存在相当长的其间不可能有 更新的时间段。然而,从单独服务器的角度来看,可能不能将到主站服务器的通信的丢失与 该主站的故障区别开。在没有其它“上帝之眼的观点”信息的情况下,服务器可以在原始主 站仍在操作时决定使其自己晋升为主站(结果有两个独立的主站),或者在实际上原始主 站已发生故障时决定不使其自己晋升(结果没有主站)。从具有双主站中恢复可能需要手动过程且易于发生暂时、甚至永久性数据丢失。
技术实现思路
本专利技术的实施例提供一种对等且多线程的用于网络数据仓库的复制和同步机制。 本专利技术的实施例还可以在托管(host)网络数据仓库的复制品(r印lica)之间的通信丢失 的情况下实现可用替换服务,并在复制品之间的通信恢复时提供完全自动的恢复。在计算 机(例如服务器)上托管所述复制品,并且在某些实施例中,可以在计算机上托管多于一 个的复制品。复制和同步机制的实施例还可以提供用于片状(flaky)(有损耗)网络中的 网络数据库的稳健处理。根据本专利技术的实施例,复制和同步机制还可以提供条目级(entry level)同步和对事务(transaction)的支持。本专利技术的实施例提供一种用于对等网络中的网络数据仓库的实时数据管理的系 统。该系统包括在第一服务器计算机中托管的多个复制品中的第一复制品。第一复制品被 配置为接受对第一复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓 库中的条目。第一复制品还被配置为将复制品条目进行更新以包括所接受数据更新。第一 复制品还被配置为确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复 制品中的复制品和所述第一复制品之间的复制协议的状态,其中,所述第一复制品具有与 所述多个复制品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复 制品条目的协调有关。第一复制品还可以确定第一复制品上的所更新复制品条目是否违反 复制协议,其中,复制协议的违反指示第一复制品上的所接受数据更新未能被拷贝(copy) 到复制协议的另一复制品方。第一复制品可以针对具有活动(active)状态且对于所接受 数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复 制品。本专利技术的实施例可以包括被配置为类似于上述第一复制品的其它复制品。本专利技术的实施例还提供一种用于对等计算网络中的网络数据仓库的实时数据管 理的方法。该方法包括接受对多个复制品中的第一复制品中的网络数据仓库的条目的数据 更新,该第一复制品在多个服务器中的第一服务器上被托管,第一复制品包含网络数据仓 库的至少一部分作为对应于网络数据仓库中的条目的多个复制品条目。该方法还要求识别 对应于该条目的第一复制品上的多个复制品的复制品条目。该方法还包括检查所述多个复 制品中的第一复制品与其它复制品之间的复制协议,其中,每个复制协议描述所述多个复 制品中的第一复制品与另一复制品之间的关系。该方法还包括确定所述多个复制品中的第 一复制品和第二复制品之间的第一复制协议的状态,所述第二复制品在所述多个服务器中 的第二服务器上被托管。该方法包括更新第一复制品上的已识别复制品条目。该方法还要 求如果第一复制协议处于活动状态且如果可以将所接受数据更新拷贝到第二复制品,则 复制第二复制品上的所接受数据更新。本专利技术的实施例提供一种用于管理在多个服务器上部署的网络数据仓库中的数 据的系统。第一复制品被配置为用于与所述多个复制品中的其它复制品通信并在所述多个 服务器中的服务器上被托管。第一复制品上的第一复制信息库被配置为包含网络数据仓库 的至少一部分,所述第一复制信息库包括多个复制品条目,以使得每个复制品条目对应于 网络数据仓库中的条目。事务模块被配置为接收对第一复制信息库中的复制品条目的数据 更新。第一添加增量(delta)模块被配置为创建第一复制信息库中的多个复制品条目中的第一复制品条目的第一条目增量(entry delta),并为第一条目增量提供来自事务模块的 所接收数据更新,且创建所述多个复制品中的第二复制品中的第二复制品条目的所接收数 据更新的副本(copy)。第一锁定模块被配置为锁定第一复制信息库中的第一复制品条目。 第一增量OK(delta-OK)模块被配置为确认(validate)第一条目增量具有与第一数据复制 品条目相容的特性,其中,第一添加增量模块还被配置为在第一增量OK模块已确认第一条 目增量之后通过网络将所接收数据更新的副本发送到具有第二数据复制品条目的第二复 制品。提交(commit)模块被配置为在从锁定模块接收到成功指示符之后请求条目增量的 应用,所述成功指示符与对网络数据仓库中的条目的改变相关联。第一应用模块被配置为 将第一条目增量应用于第一复制信息库中的第一复制品条目,以使得对第一复制品中的条 目的请求随后提供所接收数据更新,该第一应用模块被配置为在接收到来自提交模块的请 求之后应用第一条目增量。第一解锁模块被配置为在第一应用模块已向第一复制品条目应 用第一条目增量之后将第一数据复制品条目解锁。本专利技术的实施例可以包括被配置为类似 于上述第一复制品的其它复制品。本专利技术的实施例提供一种用于管理在多个服务器上部署的网络数据仓库中的数 据的系统。第一复制品被配置为用于与所述多个复制品中的其它复制品通信;第一复制品 在所述多个服务器的服务器上被托管。第一复制品还包括被配置为包含网络数据仓库的至 少一部分的第一复制信息库,第一复制信息库包括多个复制品条目,以使得每个复制品条 目对应于网络数据仓库中的条目,第一复制信息库还包括所述多个复制品中的每个复制品 与其它复制品之间的多个复制协议。状态确定模块被配置为确定所述多个复制品中的复制 品之间的复制协议,且所述多个复制品中的另一复制品由于通信丢失而处于不活动状态, 所述状态确定模块还被配置为确定在第一复制品与另一复制品之间已恢复通信。同步模块 被配置为请求所述多个复制品的复制品中的条目的更新数据,其在复制协议的不活动状态 期间改变,所述同步模块还被配置为控制所述多个复制品中的另一复制品的更新,以解决 产生的对复制协议的违反,直至复制协议被恢复至活动状态为止。本专利技术的实施例提供一种用于管理在多个复制品上部署的网络数据仓库中的数 据的方法,其中,每个复制品包含网络数据仓库的至少一部分且每个复制品被配置为用于 与所述多个复制品中的其它复制品通信,所述复制品在服本文档来自技高网...

【技术保护点】
一种用于对等计算网络中的网络数据仓库的实时数据管理的系统,包括:多个复制品中的第一复制品,托管在第一服务器计算机中,第一复制品被配置为:接受对第一复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓库中的条目,将第一复制品上的复制品条目进行更新以包括所接受数据更新,确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复制品中的复制品和所述第一复制品之间的复制协议的状态,其中,所述第一复制品具有与所述多个复制品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复制品条目的协调有关,确定第一复制品上的所更新复制品条目是否违反复制协议,其中,复制协议的违反指示第一复制品上的所接受数据更新未能被拷贝到复制协议的另一复制品方,以及针对具有活动状态且对于所接受数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复制品;以及所述多个复制品中的第二复制品,托管在第二服务器计算机中,第二复制品被配置为:接受对第二复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓库中的条目,将第二复制品上的复制品条目进行更新以包括所接受数据更新,确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复制品中的复制品和所述第二复制品之间的复制协议的状态,其中,所述第二复制品具有与所述多个复制品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复制品条目的协调有关,确定第二复制品上的所更新复制品条目是否违反复制协议,其中,复制协议的违反指示第二复制品上的所接受数据更新未能被拷贝到复制协议的另一复制品方,以及针对具有活动状态且对于所接受数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复制品。...

【技术特征摘要】
【国外来华专利技术】US 2007-9-28 60/975956一种用于对等计算网络中的网络数据仓库的实时数据管理的系统,包括多个复制品中的第一复制品,托管在第一服务器计算机中,第一复制品被配置为接受对第一复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓库中的条目,将第一复制品上的复制品条目进行更新以包括所接受数据更新,确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复制品中的复制品和所述第一复制品之间的复制协议的状态,其中,所述第一复制品具有与所述多个复制品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复制品条目的协调有关,确定第一复制品上的所更新复制品条目是否违反复制协议,其中,复制协议的违反指示第一复制品上的所接受数据更新未能被拷贝到复制协议的另一复制品方,以及针对具有活动状态且对于所接受数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复制品;以及所述多个复制品中的第二复制品,托管在第二服务器计算机中,第二复制品被配置为接受对第二复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓库中的条目,将第二复制品上的复制品条目进行更新以包括所接受数据更新,确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复制品中的复制品和所述第二复制品之间的复制协议的状态,其中,所述第二复制品具有与所述多个复制品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复制品条目的协调有关,确定第二复制品上的所更新复制品条目是否违反复制协议,其中,复制协议的违反指示第二复制品上的所接受数据更新未能被拷贝到复制协议的另一复制品方,以及针对具有活动状态且对于所接受数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复制品。2.权利要求1的系统,还包括所述多个复制品中的第三复制品,托管在第一服务器计算机中,第二复制品被配置为接受对第三复制品上的复制品条目的数据更新,每个复制品条目对应于网络数据仓库 中的条目,将第三复制品上的复制品条目进行更新以包括所接受数据更新, 确定具有与网络数据仓库中的条目相对应的复制品条目的所述多个复制品中的复制 品和所述第三复制品之间的复制协议的状态,其中,所述第三复制品具有与所述多个复制 品中的每个复制品的复制协议,每个复制协议与该协议的复制品方之间的复制品条目的协 调有关,确定第三复制品上的所更新复制品条目是否违反复制协议,其中,复制协议的违反指 示第三复制品上的所接受数据更新未能被拷贝到复制协议的另一复制品方,以及针对具有活动状态且对于所接受数据更新而言未被违反的复制协议将所接受数据更新复制到所述多个复制品中的其它复制品。3.权利要求1的系统,其中,所述第一复制品还被配置为使所述第一复制品上的复制品条目与具有复制协议的多个复制品中的其它复制品上 的复制品条目同步,所述复制协议已由于所接受数据更新不能被拷贝到所述多个复制品中 的其它复制品而被第一复制品上的所接受数据更新违反。4.权利要求3的系统,其中,所述第一复制品还被配置为在协商中应用合并规则来确 定最佳议定的条目内容,其复制品条目已经历独立且不相容的更新。5.权利要求4的系统,其中,第一复制品被配置为应用的合并规则包括(使用于复制品 条目的后面的数据改变优先于用于复制品条目的先前的数据改变,并优先于基于时间的优 先而应用客户端优先次序)中的至少一个。6.权利要求1的系统,其中,所述第一复制品还被配置为确定第一复制品与第二复制品之间的复制协议已变为活动状态;以及使第一复制品上的复制品条目与第二复制品上的复制品条目同步,以便在第一复制品 与第二复制品之间的复制协议不活动时,将数据更新采用于未被更新的第一复制品和第二 复制品上的复制品。7.权利要求1的系统,其中,所述第一复制品还被配置为确定第一复制品与多个其它复制品之间的多个复制协议已变为活动状态,与所述多个其它复制品协商以确定第一复制品和所述多个其它复制品上需要的附加 数据更新的最小数目,以便使第一复制品上的复制品条目与所述多个其它复制品上的复制 品条目同步,以便在所述多个复制协议不活动时将数据更新采用于所述多个复制品上的复 制品条目。8.权利要求7的系统,其中,所述多个复制品还被配置为在协商中应用合并规则来确 定最佳议定的条目内容,其复制品条目已经历独立且不相容的更新。9.权利要求8的系统,其中,多个复制品被配置为应用的合并规则包括(使用于复制品 条目的后面的数据改变优先于用于复制品条目的先前的数据改变,并优先于基于时间的优 先而应用客户端优先次序)中的至少一个。10.权利要求7的系统,还包括服务质量模块,被配置为暂停所述多个复制品中的复制品在该复制品降到由客户端或 代表客户端设置的同步服务质量阈值之下时对关于客户端的网络数据仓库的数据查询进 行响应的能力。11.权利要求1的系统,其中,所述第一复制品还包括第一复制信息库,被配置为包括多个复制品条目,以使得每个复制品条目对应于网络 数据仓库中的条目;第一事务模块,被配置为接收对第一复制信息库中的复制品条目的数据更新;第一添加增量模块,被配置为创建第一复制信息库中的多个复制品条目中的第一复 制品条目的第一条目增量,并为第一条目增量提供来自事务模块的所接收数据更新,且被 配置为创建所述多个复制品中的第二复制品中的第二复制品条目的所接收数据更新的副 本;第一锁定模块,被配置为锁定第一复制信息库中的第一复制品条目;第一增量OK模块,被配置为确认第一条目增量具有与第一复制品条目相容的特性,其 中,所述第一添加增量模块还被配置为在第一增量OK模块已确认第一条目增量之后通过 网络将所接收数据更新的副本发送到具有第二复制品条目的第二复制品;提交模块,被配置为在从锁定模块接收到成功指示符之后请求条目增量的应用,所述 成功指示符与对网络数据仓库中的条目的改变相关联;第一应用模块,被配置为将第一条目增量应用于第一复制信息库中的第一复制品条 目,以使得对第一复制品中的条目的请求将随后提供所接收数据更新,第一应用模块被配 置为在接收到来自提交模块的请求之后应用第一条目增量;以及第一解锁模块,被配置为在第一应用模块已向第一复制品条目应用第一条目增量之后 将第一复制品条目解锁。12.权利要求11的系统,其中,所述第二复制品还包括第二复制信息库,被配置为包括多个复制品条目,以使得每个复制品条目对应于网络 数据仓库中的条目;第二添加增量模块,被配置为从所述第一添加增量模块接收数据更新并在第二复制品 条目上创建第二条目增量;第二锁定模块,被配置为将用于第二条目增量的第二复制信息中的第二复制品条目锁 定并在将第二复制品条目锁定之后向第一复制品发送成功指示符;第二应用模块,被配置为将第二条目增量应用于第二复制品条目,以使得对第二复制 品中的条目的请求随后将提供所接收数据更新,第二应用模块被配置为在接收到来自提交 模块的请求之后应用第一条目增量;以及第二解锁模块,被配置为在向第二复制品条目应用第二条目增量之后将第二数据复制 品条目解锁。13.权利要求11的系统,其中,所述第一复制品还包括通信模块,被配置为确定所述多个复制品中的一个复制品与另一复制品之间的复制协 议是否已由于第一复制品与其它复制品之间的通信丢失而变成不活动的,该通信模块还被 配置为确定在第一复制品与另一复制品之间已经恢复通信;以及同步模块,被配置为请求在不活动状态期间被改变的第一复制品中的条目的更新数 据,该同步模块还被配置为控制另一复制品的更新以解决复制协议的违反,直至复制协议 恢复到活动状态为止。14.权利要求11的系统,所述第一复制品还包括第一排队模块,被配置为当第一锁定模块已将第一复制信息库中的第一复制品条目锁 定时使到第一锁定模块的请求排队;以及优先级模块,被配置为在第一接收条目增量的处理未完成的同时确定第二接收条目增 量优先于第一接收条目增量,且还被配置为命令第一解锁模块将第一数据复制品解锁,且 还被配置为使第一排队模块上的第一接收条目增量排队,直至对于第二接收条目增量而言 处理已完成为止。15.权利要求14的系统,其中,所述优先级模块还被配置为识别用于第一接收条目增 量的第一优先级数并识别用于第二接收条目增量的第二优先级数目,且还被配置为确定第 二优先级数优先于第一优先级数。16.权利要求14的系统,其中,所述优先级模块还被配置为识别与关联于第一接收条 目增量的第一外部用户相关联的第一优先级数且被配置为识别与关联于第二接收条目增 量的第二外部用户相关联的第二优先级数,并确定第二优先级数优先于第一优先级数。17.权利要求11的系统,所述第一复制品还包括第一排队模块,被配置为当第一锁定模块已将第一复制信息库中的第一复制品条目锁 定时使到第一锁定模块的请求排队。18.权利要求11的系统,其中,所述事务模块还被配置为接收来自外部用户的事务请 求以将第一复制品条目进行更新以包括所接收数据改变,其中,所述事务模块还被配置为 在接收到事务请求之后使第一添加增量模块创建第一条目增量。19.权利要求11的系统,其中,所述第一事务模块还被配置为在第一复制品已接收到 成功指示符之后通知外部用户事务请求已被成功确认,且还被配置为接收来自外部用户的 请求以将数据改变提交给第一复制品条目和第二复制品条目。20.权利要求11的系统,其中,所述事务模块还被配置为在将第一复制品条目解锁并 将第二复制品条目解锁之后通知外部用户数据改变已被成功地应用于网络数据仓库。21.一种用于管理在多个服务器上部署的网络数据仓库中的数据的系统,包括第一复制品,被配置为用于与多个复制品中的其它复制品进行通信,在所述多个服务 器中的服务器上被托管的第一复制品还包括第一复制信息库,被配置为包含网络数据仓库的至少一...

【专利技术属性】
技术研发人员:K瓦克菲尔德
申请(专利权)人:阿珀蒂奥有限公司
类型:发明
国别省市:GB[英国]

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

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