用于使第二数据库与第一数据库同步的计算机网络系统及相应过程技术方案

技术编号:2830384 阅读:221 留言:0更新日期:2012-04-11 18:40
一种计算机网络系统,用于根据/利用第一数据库来对第二数据库进行构建和/或同步,所述计算机网络系统通过至少在第一数据库上执行的工作单元,从至少一个应用程序工作站中进行访问,以生成、改变或删除数据库的内容,其中,至少一个第一服务器,用于指导并保持第一数据库,所述服务器与至少一个应用程序工作站连接;至少一个第二服务器,用于指导并保持第二数据库;至少一个数据连接,用于将两个服务器连接;提供了软件程序模块,以及建立该软件程序模块并对该软件程序模块进行编程,以执行第一数据库与第二数据库之间的比较、获得与两个数据库的信息内容的质量有关的状态,以及从数据比较开始,产生与错误的和/或缺少的记录、以及修正错误的和/或缺少的记录的错误检测和处理功能有关的错误日志文件。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及用于根据/利用第一数据库构建和/或使第二数据库同 步的计算机网络系统和过程。具体地,本专利技术涉及要将第一、已有的 数据库转移至要新近构造的第二数据库的那些计算机网络系统。
技术介绍
在具有一个或多个前端站/应用程序和后端的复杂系统中,传统 地,以首先迁移前端,然后再迁移后端的方式发生迁移。实际中,出 于各种原因(高复杂度,系统的长故障时间),通常不指示前端和后端 的同步迁移。首先,在消除了从现有数据库平台至新数据库平台的单步迁移(所谓大爆炸)的大DP工程的情况下,出于多种原因(例 如,由于还没有完成访问新数据库的所有应用程序,由于仍必须详细 研究新数据库的操作行为等),需要一种允许从现有数据库到新数据库 的受控、逐渐的转换的系统方式。此外,通常存在使两个数据库在特定定义的时间点处(例如,在 一天的结束处)处于实际一致的状态中的操作需求。换言之,应当在 两个数据库系统中连续地保持数据同步,以及用户也应当能够例如使 用应用程序软件程序来保持数据。由于甚至在数据最初从第一数据库传输至第二数据库(初始加 载)之后,由于连续保持第一数据库,可以在短时间内出现保存在该 数据库中的数据的非常大量的改变,所以需要对于计算时间和转移成 本有效的方式。如果在第一数据库中在线保持改变,以及改变尽可能 同时(至少接近于实时)在第二数据库中可用,则也增加了系统需求。 在一些情况下,对于集体或群体的改变,还需要离线保持(在低操作 时),并且必须可以离线保持。由于通常执行从第一数据库平台至第二数据库平台的迁移,以及 出于大多数来自技术或IT观点(快速访问、更加复杂的询问选项、硬 件系统平台的改变等)的应用的原因(企业流优化、企业重组等),存 在对于第一和第二数据库之间的物理实施方式、结构和组织形式的大 部分显著的差别。在第一和第二数据库之间存在对于系统构造(硬件、 操作系统、数据库设计和数据库实现)的结构上的显著差别时,尤其 加强了这一方面。在这种情况下,不能以相同的方式对要在第一数据 库中作出的改变(=现有条目的改变、检测,创建和填充新条目)进 行映射,即,在第二数据库中不同(1: 1)。此外,通常改变是复杂的, 即,改变影响了第一数据库中的第一多个条目,但是由于不同的结构 和组织形式,第二数据库中的不同多个条目,或者输入第二数据库中 的不同地改变和/或附加字段。该环境也以与出现在第一数据库中的相 同的方式排除了对第二数据库中改变的立即保持。最后,必须考虑在大DP工程的情况下的通常多个计算机程序应 用对数据库迸行访问和改变。尤其在类似的在线系统的情况下,该环 境(同时访问)对于保持第二数据库的更新的策略具有显著的影响。由于在包括两个数据库和/或将两个数据库平台彼此连接的网络中消息/数据流的经过次数(times),以及实时或在线环境或甚至混合环境(实时和批处理系统)的其它影响(文件长度、优先级等),不可 能直接确保改变对于应用软件程序可用,其中,该应用软件程序以确 切地与在第一数据库中所执行的相同的序列来访问第二数据库。换言 之,当将数据从一个数据库转移至另一数据库时,该数据可以被早先传输的数据超越。这具有以下不期望的结果较旧改变可以将较新 改变的数据重设为旧值。此外,由于这些影响,可能会出现还未在 第二数据库中完全保持记录,从而不完全改变的问题,因而在最后, 误差数据对于访问第二数据库的应用软件程序可用。不是最少地,必须产生作用,从而迁移过程并不显著地(理论上 根本不)限制原始数据库的质量、可操作性、性能等。US 6,223,187 Bl (Boothby等)公开了一种计算机实现的方法, 用于使位于第一计算机中的第一数据库和位于第二计算机中的第二数据库同步。为此,使用位于第一计算机上的第一历史数据文件,并包 含了在终止前一同步时再现第一数据库的记录的记录。在从上次同步 起不改变或添加第一数据库的记录的情况下,第一计算机发送第二计 算机所使用的第二计算机信息以标识要重新改变的第一数据库的记录。在该方法中,历史数据文件包含两个数据库的先前同步结果的拷 贝。该历史数据文件用于确定数据库中从前一同步起的改变,并重新 存储不再发送的记录。如果不存在历史数据文件,则将来自两个数据 库的所有记录加载到工作存储器中并进行比较。在这种情况下,同步 是如下过程将两个数据库的记录与历史数据文件进行比较以识别从 前一同步起的两个数据库中的每个中的改变、添加或去除,并确定必 须对数据库做出哪些添加、去除或更新,以使两个数据库的记录同步。
技术实现思路
本专利技术的目的是提供一种计算机网络,它可以有效地使两个数据 库平台同步,同时避免了如上所述的先前方法的缺点和问题。为了实现该目的,本专利技术提供了具有权利要求l特征的计算机网络 系统。本专利技术还提供了执行第一和第二数据库之间的比较,以获得与两 数据库的信息内容相等有关的状态。从数据比较开始,根据本专利技术, 产生与错误和/或丢失记录有关的报告(错误日志文件)。最后,还提 供了对错误和/或丢失记录进行修正的功能。为此,根据本专利技术,提供了具有控制表和数据表的数据容器。它 用于模拟在第一数据库环境和第二数据库环境中的交易同类(bracket)。还将根据数据比较的错误记录写入该容器。该错误检测和处理是两数据库之间同步的子功能。它基于错误曰 志文件和数据容器的结构。在同步期间,将所有消息写入数据容器并 从中进行处理。如果在同步期间出现错误,则同样识别数据。然后创 建从数据容器至错误日志文件的链接,然后显示/示出错误。为此,根据本专利技术,将软件程序组件错误日志文件、数据容器、同步、重新传递和数据相等期间的错误处理组合为一个逻辑单元。允 许同步、初始加载和数据相等成分的合并后报告的GUI对于用户可用。 还提供了由于条目而手动发起用于数据修正的重新传递的选项。可以提供重复功能,用于执行对第一和第二数据库之间所识别差 异的立即修正。另一功能,重新传递功能包括一组功能在表中选择 第二数据库环境下的错误或丢失记录;生成相应的改变,并经由返回 第二数据库环境的同步过程传播该改变。重新传递功能修正以下三种 可能错误 记录在第一数据库中消失,但是出现在第二数据库中。记录在第一数据库中出现,但是在第二数据库中消失。记录在第一数据库中出现,但是以错误的内容出现在第二数据库中。数据比较系统将两个数据库的数据仓彼此比较,并发现尽可能多 的差异。如果两个系统上的数据结构几乎完全相同,则可以容易地执 行比较。关键问题是在特定关键点(时间上)必须彼此比较地大量数据。数据比较系统实质上具有三个组件错误检测,错误分析和错误一方面,错误检测包括对来自两个数据库的数据进行撤出和处理。 为此,计算散列值并彼此比较。如果存在差异,则从适合的数据库中 取得数据。错误检测的另一部分是比较程序,该比较程序将来自第一 和第二数据库的讹误数据与同步的错误日志文件中的文档差异(以及 在数据容器中用于同步的数据)进行详细比较。在数据容器中,存在 通过执行重复功能,对将新数据应用于相应数据库的立即尝试。错误分析包括错误处理的处理功能,用于分析来自错误日志文件 和数据容器的数据并将它们彼此链接。然后,由GUI (图形用户界面) 显示该数据。然后,如果必要,可以手动执行对包本文档来自技高网
...

【技术保护点】
一种计算机网络系统,用于根据/利用第一数据库(DB1)来对第二数据库(DB2)进行构建和/或同步,在至少来自至少一个应用程序工作站的第一数据库(DB1)上执行由工作单元(UOW)进行的访问,以生成、改变或删除数据库(DB1)的内容,所述计算机网络系统包括:1.1.至少一个第一服务器(S1),用于指导并保持第一数据库(DB1),所述服务器与至少一个应用程序工作站连接,1.2.至少一个第二服务器(S2),用于指导并保持第二数据库(DB2),1.3.至少一个数据连接,用于将两个服务器(S1、S2)连接,其中1.4.提供了软件程序模块,建立所述软件程序模块并进行编程,以便1.5.执行第一和第二数据库(DB1,DB2)之间的比较,以获得用于同步和与两个数据库(DB1,DB2)的信息内容的等同有关的状态,其中1.6.从数据比较开始,产生与错误的和/或缺少的记录有关的错误日志文件,以及1.7.错误检测和处理功能修正/添加错误的和/或缺少的记录,其特征在于1.8.在计算机网络系统中提供数据容器,所述数据容器包括控制表格和数据表格,并用于在第二数据库的环境下模拟来自第一数据库的环境的交易同类,以及1.9.将根据数据比较的错误的/缺少的记录写入该容器中,1.10.数据比较包括三个组件错误检测、错误分析和错误修正,以及1.11.错误检测包括从两个数据库(DB1,DB2)中撤回并处理计算机网络系统中的数据,计算散列值并彼此比较,1.12.如果存在差异,则从相应的数据库(DB1,DB2)中获取数据,1.13.详细地比较来自第一和第二数据库(DB1,DB2)的破坏数据,将差异写入同步错误日志文件,并将其数据写入数据容器。...

【技术特征摘要】
【国外来华专利技术】EP 2005-3-31 05007073.91.一种计算机网络系统,用于根据/利用第一数据库(DB1)来对第二数据库(DB2)进行构建和/或同步,在至少来自至少一个应用程序工作站的第一数据库(DB1)上执行由工作单元(UOW)进行的访问,以生成、改变或删除数据库(DB1)的内容,所述计算机网络系统包括1.1.至少一个第一服务器(S1),用于指导并保持第一数据库(DB1),所述服务器与至少一个应用程序工作站连接,1.2.至少一个第二服务器(S2),用于指导并保持第二数据库(DB2),1.3.至少一个数据连接,用于将两个服务器(S1、S2)连接,其中1.4.提供了软件程序模块,建立所述软件程序模块并进行编程,以便1.5.执行第一和第二数据库(DB1,DB2)之间的比较,以获得用于同步和与两个数据库(DB1,DB2)的信息内容的等同有关的状态,其中1.6.从数据比较开始,产生与错误的和/或缺少的记录有关的错误日志文件,以及1.7.错误检测和处理功能修正/添加错误的和/或缺少的记录,其特征在于1.8.在计算机网络系统中提供数据容器,所述数据容器包括控制表格和数据表格,并用于在第二数据库的环境下模拟来自第一数据库的环境的交易同类,以及1.9.将根据数据比较的错误的/缺少的记录写入该容器中,1.10.数据比较包括三个组件错误检测、错误分析和错误修正,以及1.11.错误检测包括从两个数据库(DB1,DB2)中撤回并处理计算机网络系统中的数据,计算散列值并彼此比较,1.12.如果存在差异,则从相应的数据库(DB1,DB2)中获取数据,1.13.详细地比较来自第一和第二数据库(DB1,DB2)的破坏数据,将差异写入同步错误日志文件,并将其数据写入数据容器。2. 如前述权利要求所述的计算机网络系统,其中 2丄错误检测和处理功能是两个数据库之间的同步的子功能,并基于错误日志文件和数据容器,其中2.2.在同步期间,将所有消息写入数据容器并从中进行处理。3. 如前述权利要求之一所述的计算机网络系统,其中 3丄如果在同步期间发生错误,将数据标识为错误的,以及 3.2.然后创建从数据容器至错误日志文件的链接,然后显示/示出错误。4. 如前述权利要求之一所述的计算机网络系统,其中 4丄将软件程序组件错误日志文件、数据容器、同步、重新传递和数据等同化期间的错误处理组合为一个逻辑单元,使提供了同步、 初始加载和数据等同化组件的统一报告的GUI可用。5. 如前述权利要求之一所述的计算机网络系统,其中 5丄提供了重复功能,以执行对第一和第二数据库之间所标识的差异的立即修正。6. 如前述权利要求之一所述的计算机网络系统,其中 6丄提供了重新传递功能,所述重新传递功能包括以下一组功能-在表格中选择在第二数据库(DB2)的环境下的错误的或缺少的记录; 生成相应的改变,并通过同步过程将它发送回第二数据库的环境中。7. 如前述权利要求之一所述的计算机网络系统,其中 7丄重新传递功能修正了三种可能的错误,记录在第一数据库(DB1)中消失,但是出现在第二数据库(DB2)中,*记录在第一数据库(DB1)中出现,但是在第二数据库(DB2) 中消失,,记录在第一数据库(DB1)中出现,但是以错误的内容出现在第二数据库(DB2)中。8. 如前述权利要求之一所述的计算机网络系统,其中 8丄从数据容器中,通过执行重复功能而将新数据应用于相应的数据库。9. 如前述权利要求之一所述的计算机网络系统,其中 9丄通过封装模块(KM)来发生工作单元(UOW)对第一数据库(DB1)的访问,建立所述封装模块(KM)并进行编程,从而 9丄1.将工作单元(UOW)转发至所述封装模块,9.1.2. 将所述封装模块接收的工作单元(UOW)分解为一个或 更多个消息(Ml...Mn),9.1.3. 在第一数据库(DB1)中输入消息(Ml...Mn),以及 9丄4.将消息(Ml…Mn)发送至第二数据库(DB2)。10. 如前述权利要求之一所述的计算机网络系统,其中 IO丄建立封装模块程序(KM)并进行编程,以通过应用软件程序和改变了第一数据库的其它程序来执行那些访问,其中,这些程序 将它们用于第一数据库(DB1)的改变命令指向封装模块程序(KM), 所述封装模块程序用于执行对第一数据库(DB1)的实际访问。11. 如前述权利要求之一所述的计算机网络系统,其中 ll丄建立第二数据库(DB2)的控制器(HS)并进行编程,以便ll丄l.用于读取从输入等待队列(Qin)发送至所述控制器的消 息(Ml…Mn),1L1.2.用于检查属于一个工作单元(UOW)的所有消息 (Ml...Mn)是否已到达输入等待队列(Qin),11丄3.用于在属于一个工作单元(UOW)的所有消息 (Ml...Mn)到达了输入等待队列(Qin)时,执行第二数据库(DB2) 中的适当的改变,以及可选地11丄4.用于依据特定条件,将相应改变或包含所述改变并属于 一个工作单元(UOW)的消息(Ml...Mn)至少部分地分发至其它数 据库或应用程序。12. 如前述权利要求之一所述的计算机网络系统,其中12丄建立封装模块程序(KM)并进行编程,从而依据到达预定 参数,将来自批处理运行的工作单元(UOW)分解为相应的消息 (Ml...Mn),并将所述消息写入转移数据库(Ql),以及12.2.提供了监视器软件模块,建立所述监视器软件模块并进行编 程,在到达预定参数之后,以将转移数据库(Ql)的内容传输至第二 数据库(DB2)。13. 如前述权利要求之一所述的计算机网络系统,其中 13丄对于从第一数据库(DB1)接收数据的每个数据库或应用程序,第二数据库(DB2)的控制器(HS)向共存元件程序模块供给数 据,建立所述共存元件程序模块并进行编程,13丄1.以特别地对用于相关数据库或应用程序的数据进行同 步,以及13丄2.以执行与第二数据库(DB2)或应用程序、或者在与相 关应用程序关联的数据库中的输入等待队列(Qi...

【专利技术属性】
技术研发人员:迈克尔班克汉斯贝特洛克
申请(专利权)人:瑞士银行股份有限公司
类型:发明
国别省市:CH[瑞士]

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

1