数据库同步系统与方法

文档序号:6542757阅读:138来源:国知局
专利名称:数据库同步系统与方法
技术领域
本发明关于一种数据库同步系统与方法,特别是关于一种同步多服务器的数据库的同步系统与方法。
背景技术
大型企业由于人事组织庞大,研发技术及制造产品种类繁杂,为了有效管理企业内的各类信息如人事、生产设备、研发流程以及财务等信息,企业内部设置数据库以期能够随时地且确实地掌控上述重要的信息。然而大型企业的据点经常跨越海洋以及陆地的限制分布于世界各地之中,大型企业中这些跨区域的据点彼此间的人事、生产设备、研发流程以及财务等信息亦有所差异,且不同据点所使用的数据库亦可能有所不同,这些资料以及数据库的差异性使得企业内部无法顺利实时整合信息,企业内部员工必须花费心思以取得整合各据点资料的信息。
如图1A所示,一使用者将一份资料存放在三个服务器第一服务器11、第二服务器12以及第三服务器13之中,当使用者于一客户端14更新第一服务器11之中的资料时,若要在第二服务器12以及第三服务器13之中更新一模一样的资料势必要登入第二服务器12以及第三服务器13,并在第二服务器12以及第三服务器13之中找出要更新的资料加以更新,这种人工更新的方法对于使用者不仅繁杂,且如果使用者在某一数据库输入错误资料,或者是遗漏而没有更新某一服务器,这样会造成应当是相同内容的同一笔资料在不同的服务器却有不同的内容。因此,仅靠人工方式更新多服务器中的资料不够方便也不够可靠,若能够以自动更新的机制则可改进前述情况。
如图1B所示,使用者将一份资料存放在第一服务器11、第二服务器12以及第三服务器13之中,第一服务器11、第二服务器12以及第三服务器13形成一环状网络,在其中一个数据库的内容更新时,将更新资料依照顺时针或逆时针方式依序更新环状路径上的数据库内容。当使用者于一客户端14更新第一服务器11中的资料时,第一服务器11将更新资料传送至第二服务器12,第二服务器12更新之后将更新资料传送至第三服务器13,第三服务器更新之后再将更新资料传送至第一服务器11,最后第一服务器11就可以知道整个资料更新已经完成。
环状服务器虽然能够更新资料,但是在更新的过程中使用者未必能够继续正常使用服务器。在多服务器的情况之下,依照环状路径依序传输更新资料需要耗费许多时间,使得整体更新的时间较长,这种情况当服务器是以网际网络互相连接的时候更是明显,因此各服务器内资料的实时性以及正确性亦受到影响。另外,当服务器是以网际网络互相连接并传输资料时的时候,传输错误或传输停止的情况使得资料需要重新传输,且找出传输问题的原因亦因为网络范围广泛,使得环状网络之中错误发生地点可能散布在各地,无法有效集中缩小问题点,排除困难时必须要各地的信息管理人员互相配合协调找出错误、找出有问题的机器以及找出错误的资料,所以传输错误难以在短时间之内有效排除,整体资料更新的时间亦受到影响。再者,环状服务器之中无法有效监视控管各服务器更新资料的传递,进而使得各主机彼此间的传输问题难以掌握清楚,且系统的维护亦比较不容易。
有鉴于此,提供一种数据库同步系统与方法,以期能够在不影响使用者的情况下自动同步多服务器的数据库中的资料,并监视控管多服务器的数据库中的资料更新流程,正是当前的重要课题之一。

发明内容
有鉴于上述课题,本发明提供一种能够自动更新多服务器的数据库中的资料,并监视控管多服务器的数据库中的资料更新流程的数据库同步系统与方法。
于是,依本发明的数据库同步系统,其包含一第一子系统以及多个第二子系统,其中第一子系统包含一第一数据库,第二子系统分别包含一第二数据库、一资料选取模块与一资料融合模块,其中资料选取模块执行一要求更新程序,以便自第一子系统取得第一数据库内的资料,资料融合模块利用一融合(merge)方式使得第二数据库内的资料与第一数据库内的资料同步,其中融合方式包含插入(insert)、删除(delete)与更新(update)。
另外,本发明提供一种数据库同步方法,其与一第一子系统及多个第二子系统配合,第一子系统包含一第一数据库且第二子系统分别包含一第二数据库,包含由第二子系统分别执行一要求更新程序,以便自第一子系统取得第一数据库内的资料,以及利用一融合方式使得各第二数据库内的资料与第一数据库内的资料同步,其中融合方式包含插入、删除与更新。
承上所述,因依本发明的数据库同步系统与方法是将第一数据库中与第二数据库的资料以融合方式处理,故能够在不影响使用者的情况下自动更新多个数据库的资料,并且可以提高各数据库内的资料的实时性与正确性;此外,本发明的数据库同步系统与方法能够有效地监视控管多服务器的资料更新流程,进而加强各主机彼此间的传输问题的掌握度,且使得系统的维护更加简单。


图1A为一示意图,显示公知的人工更新资料;图1B为一示意图,显示公知的以环状服务器更新资料;图2为一示意图,显示依本发明较佳实施例的数据库同步系统;图3为一示意图,显示依本发明较佳实施例的数据库同步系统,其中数据库同步系统更包含询问更新模块;图4为一示意图,显示依本发明较佳实施例的数据库同步系统,其中监控使用者界面显示在监视器中的窗口;图5为一流程图,显示依本发明较佳实施例的数据库同步方法;以及图6为一流程图,显示依本发明较佳实施例的数据库同步方法,其中数据库同步方法判断第二数据库内的资料是否新于第一数据库内的资料。
组件符号说明11第一服务器
12第二服务器13第三服务器14客户端2第一子系统21第一数据库211第一资料22询问更新模块221询问更新程序23第一更新记录模块24询问更新记录文件25监控使用者界面3第二子系统31第二数据库311第二资料312第三资料313第四资料32资料选取模块321要求更新程序33资料融合模块34第二更新记录模块35要求更新记录文件4监视器S01-S02数据库同步方法S11-S15数据库同步方法具体实施方式
以下将参照相关图式,说明依本发明较佳实施例的数据库同步系统与方法。
请参照图2所示,依本发明较佳实施例的数据库同步系统,其包含一第一子系统2以及多个第二子系统3,其中第一子系统2包含一第一数据库21,第二子系统3分别包含一第二数据库31、一资料选取模块32与一资料融合模块33。
资料选取模块32执行一要求更新程序321,以便自第一子系统2取得第一数据库21内的资料,第二子系统3更可定时执行要求更新程序321。
资料融合模块33利用一融合(merge)方式使得第二数据库31内的资料与第一数据库21内的资料同步,其中融合方式包含插入(insert)、删除(delete)与更新(update)。当第二数据库31内并无第一数据库内的第一资料211时,在第二数据库31依据第一资料211插入一第二资料311,当第二数据库31储存未见于第一数据库21的一第三资料312时,在第二数据库31删除第三资料312,当第二数据库31储存第一资料211所对应的第四资料313时,依据第一资料211更新第四资料313。
在本实施例中,第一子系统2与第二子系统3可以通过网际网络联机,且第二数据库31可为异质性数据库,且当第二子系统3与第一子系统2若因网络联机问题而无法互相联机,当第二子系统3与第一子系统2恢复联机之后,可以依照上述方法将第二数据库31与第一数据库21在无法互相联机时所产生的差异资料加以同步整合。
请参照图3所示,本实施例的第一子系统2更可包含一询问更新模块22以及一第一更新记录模块23,第二子系统3更可包含一第二更新记录模块34。
询问更新模块22执行一询问更新程序221,并通过比对资料更新的时间(例如比对两个数据库内的资料更新记录),判断第二数据库31内的资料是否新于第一数据库21内的资料,当第二数据库31内的资料新于第一数据库21内的资料,经由第一子系统2传送第二数据库31内的资料至其余第二数据库。由于判断的过程仅比对资料的更新时间,所以第一数据库21内的资料并不需要复制到第二数据库31。另外,询问更新模块22可定时执行询问更新程序221。
第二更新记录模块34依据所述要求更新程序建立一要求更新记录文件35。第一更新记录模块23依据询问更新程序建立一询问更新记录文件24,并依据要求更新程序321与询问更新程序221建立一监控使用者界面25,监控使用者界面25可以随时反应本实施例的系统状态。另外,第一更新记录模块23更可仅依据要求更新程序321建立监控使用者界面25,亦可仅依据询问更新程序221建立监控使用者界面25。
请参照图4所示,监控使用者界面25可以显示在监视器4中的窗口,监控使用者界面25更可包含要求更新记录文件35与询问更新记录文件24的内容,因此系统人员能够依据要求更新记录文件35、询问更新记录文件24以及监控使用者界面25得知本实施例的系统状况,并能够在系统发生错误时找出相关原因。
请参照图5所示,依本发明较佳实施例的数据库同步方法,其与一第一子系统及多个第二子系统配合,第一子系统包含一第一数据库且第二子系统分别包含一第二数据库,包含步骤S01至步骤S02。
在步骤S01之中,由第二子系统分别执行一要求更新程序,以便自第一子系统取得第一数据库内的资料。
在步骤S02之中,利用一融合方式使得各第二数据库内的资料与第一数据库内的资料同步,其中融合方式包含插入、删除与更新。
本实施例中的数据库同步方法已于图2的实施例中讨论过,故此不再赘述。
请参照图6所示,本实施例的数据库同步方法更可包含步骤S11至步骤S15。
在步骤S11之中,由第一子系统执行一询问更新程序,判断第二数据库内的资料是否新于第一数据库内的资料。
在步骤S12之中,当第二数据库内的资料新于第一数据库内的资料,经由第一子系统传送第二数据库内的资料至第二数据库。
在步骤S13之中,由第二子系统依据要求更新程序建立一要求更新记录文件。
在步骤S14之中,由第一子系统依据询问更新程序建立一询问更新记录文件。
在步骤S15之中,由第一子系统依据要求更新程序与询问更新程序建立一监控使用者界面。
本实施例中的数据库同步方法已于图3与图4的实施例中讨论过,故此不再赘述。
综上所述,因依本发明的数据库同步系统与方法是将第一子系统的第一数据库与第二子系统的第二数据库内的资料以融合方式处理,故能够在不影响使用者的情况下自动更新多个数据库的资料,并且可以提高各数据库内的资料的实时性与正确性;此外,本发明的数据库同步系统与方法能够有效地监视控管多服务器的资料更新流程,进而加强各主机彼此间的传输问题的掌握度,且使得系统的维护更加简单。
以上所述仅为举例性,而非为限制性的。任何未脱离本发明的精神与范畴,而对其进行等效修改或变更,均应包含于所附的权利要求中。
权利要求
1.一种数据库同步方法,其与一第一子系统及多个第二子系统配合,所述第一子系统包含一第一数据库且所述第二子系统分别包含一第二数据库,所述数据库同步方法包含由所述第二子系统分别执行一要求更新程序,以便自所述第一子系统取得所述第一数据库内的资料;以及利用一融合方式使得各所述第二数据库内的资料与所述第一数据库内的资料同步,其中所述融合方式包含插入、删除与更新。
2.如权利要求第1项所述的数据库同步方法,更包含由所述第二子系统分别定时执行一要求更新程序,以便自所述第一子系统取得所述第一数据库内的资料。
3.如权利要求第1项所述的数据库同步方法,更包含由所述第一子系统执行一询问更新程序,判断各所述第二数据库内的资料是否新于所述第一数据库内的资料;当各所述第二数据库内的资料新于所述第一数据库内的资料时,经由所述第一子系统传送各所述第二数据库内的资料至各所述第二数据库;由所述第一子系统定时执行一询问更新程序,判断各所述第二数据库内的资料是否新于所述第一数据库内的资料;由所述第一子系统依据所述询问更新程序建立一询问更新记录文件;以及由所述第一子系统依据所述询问更新程序建立一监控使用者界面。
4.如权利要求第1项所述的数据库同步方法,更包含由所述第一子系统依据所述要求更新程序建立一监控使用者界面。由所述第二子系统依据所述要求更新程序建立一要求更新记录文件。
5.如权利要求第1项所述的数据库同步方法,其中所述第一子系统与各所述第二子系统以网际网络联机,各所述第二数据库为异质性数据库。
6.一种数据库同步系统,包含一第一子系统,其包含一第一数据库;以及多个第二子系统,其分别包含一第二数据库、一资料选取模块与一资料融合模块,其中所述资料选取模块执行一要求更新程序,以便自所述第一子系统取得所述第一数据库内的资料,资料融合模块利用一融合方式使得所述第二数据库内的资料与所述第一数据库内的资料同步,其中所述融合方式包含插入、删除与更新。
7.如权利要求第6项所述的数据库同步系统,其中所述第二子系统分别定时执行一要求更新程序,以便自所述第一子系统取得所述第一数据库内的资料。
8.如权利要求第6项所述的数据库同步系统,其中所述第一子系统更包含一询问更新模块,其执行一询问更新程序,判断各所述第二数据库内的资料是否新于所述第一数据库内的资料,当各所述第二数据库内的资料新于所述第一数据库内的资料时,经由所述第一子系统传送各所述第二数据库内的资料至各所述第二数据库,其中所述第一子系统定时执行所述询问更新程序,判断各所述第二数据库内的资料是否新于所述第一数据库内的资料;以及一第一更新记录模块,其依据所述询问更新程序建立一询问更新记录文件、依据所述询问更新程序建立一监控使用者界面、依据所述要求更新程序建立一监控使用者界面。
9.如权利要求第6项所述的数据库同步系统,其中所述第二子系统更包含一第二更新记录模块,其依据所述要求更新程序建立一要求更新记录文件。
10.如权利要求第6项所述的数据库同步系统,其中所述第一子系统与各所述第二子系统以网际网络联机,且各所述第二数据库为异质性数据库。
全文摘要
一种数据库同步系统与方法,其包含一第一子系统以及多个第二子系统,其中第一子系统包含一第一数据库,第二子统分别包含一第二数据库、一资料选取模块与一资料融合模块,其中资料选取模块执行一要求更新程序,以便自第一子系统取得第一数据库内的资料,资料融合模块利用一融合(merge)方式使得第二数据库内的资料与第一数据库内的资料同步,其中融合方式包含插入(insert)、删除(delete)与更新(update)。
文档编号G06F17/30GK1652116SQ200510059390
公开日2005年8月10日 申请日期2005年3月29日 优先权日2005年3月29日
发明者李怡庆, 赖文树, 游宗颖 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1