数据自动转移系统及方法

文档序号:6528245阅读:161来源:国知局
专利名称:数据自动转移系统及方法
技术领域
本发明涉及一种数据库管理系统,尤指一种用于在数据库间转移数据的系统及方法。
背景技术
在自动化生产系统中,生产线上的所有数据都会储存在一本地数据库,以便日后产品出现问题时进行查询。然而,随着生产线的不停运行,储存在本地数据库中的数据也将会越来越多,当数据达到一定数量时,整体数据库的性能将会受到严重影响,经常会造成生产线反应极慢,甚至停线,给生产的顺利进行造成严重影响。
一般的解决方法为,转移本地数据库中较旧的数据到远程的另一数据库,然后在本地的数据库中删除这些较旧的数据。而通常的方法为采用手工每隔一段时间,删除一定数量的旧数据,删除一次后再进行下一次。采用此种方法每次都需要修改删除语句,如数据时间段等,且因每次删除数量小,删除的次数太多,没有足够多的时间转移旧数据;且因全部手工操作,容易出现操作失误,导致数据丢失,同时操作人员必须随线等待。若每次删除数据量多一些,则删除数据时会造成锁表,锁表时间一长又会对生产线造成影响,造成生产线时快时慢。随着生产线产能的扩张,此问题日益突出。

发明内容本发明第一实施方式提供一种数据自动转移系统,用于自动将数据从一第一数据库转移到一第二数据库,包括一控制模块,及一数据转移模块,其中所述控制模块用以控制所述数据转移模块,使所述数据转移模块自动从一第一数据库抓取数据,并将被抓取的数据储存至一第二数据库,及自动删除所述第一数据库中被抓取过的数据。
本发明另一实施方式提供一种数据自动转移方法,用于自动将数据从一第一数据库转移至一第二数据库,包括以下步骤从第一数据库抓取数据;当数据抓取完毕后,连接第一数据库与第二数据库;当第一数据库与第二数据库连接成功后,将从第一数据库中抓取的数据储存至第二数据库;及当数据储存成功后,自动删除第一数据库中被抓取过的数据。
本发明的数据自动转移系统及方法可自动从一数据库转移数据到另一数据库,并将转移过的数据进行自动删除,节省人力及删除时间,高效快捷。

图1是本发明数据自动转移系统的实施环境图。
图2是本发明一实施方式中数据自动转移系统的功能模块图。
图3是本发明另一实施方式中数据自动转移系统的功能模块图。
图4是本发明一实施方式中数据自动转移方法的流程图。
图5是本发明另一实施方式中数据自动转移方法的流程图。
具体实施方式参阅图1,所示为本发明数据自动转移系统的实施环境图。数据自动转移系统1运行在服务器及数据库架构层面,用于将第一数据库5中的数据自动转移至第二数据库7中,并将第一数据库5中转移过的数据自动删除。其中,第一数据库5为本地数据库,用于储存生产线3所产生的生产数据,第二数据库7为远程数据库。在本发明之实施方式中,数据自动转移系统主要用于转移储存在第一数据库5中的历史数据。在本发明之实施方式中,数据自动转移系统运行在结构化查询语言服务器2000(SQL SERVER 2000)环境中,通过利用SQLSERVER 2000内置的数据传输服务工具、SQL SERVER代理并结合存储过程及SQL脚本语言开发,在操作系统及数据库层面实现数据自动转移和删除等所有功能,而不用通过外置第三方软件,是数据库对数据库的直接数据传输及数据库系统内调用存储过程并通过SQLSERVER代理排程自动进行删除,可节省传输时间及删除数据时间,节省人力,非常高效及简捷。
参阅图2,所示为本发明一实施方式中数据自动转移系统1的功能模块图。在本实施方式中,数据自动转移系统1包括控制模块10及数据转移模块20。控制模块10用于控制数据转移模块20的运行。在第一实施方式中,控制模块10可为SQL SERVER代理。数据转移模块20在控制模块10的控制下,自动从第一数据库5抓取数据,并将被抓取的数据储存至第二数据库7,以及自动删除第一数据库5中被抓取过的数据。
在本实施方式中,数据转移模块20包括一数据抓取子模块200、一数据库连接子模块202、一数据导出子模块204及一数据自动清除子模块210。其中,数据抓取子模块200用于自动从第一数据库5抓取数据。数据库连接子模块202用于当数据抓取子模块200抓取数据完毕后,连接第一数据库5与第二数据库7,使之可以相互通信。在另一实施例中,数据库连接子模块202还可用以加密第一数据库5与第二数据库7的连接,使得只有特定的人员才可进入查看此连接,以增强安全性。数据导出子模块204用于在第一数据库5与第二数据库7的连接建立后,将第一数据库5中被抓取的数据储存至第二数据库7中。数据自动清除子模块210用于当被抓取的数据成功储存至第二数据库7中后,自动删除第一数据库5中被抓取过的数据。其中,数据自动清除子模块210按预定之时间间隔及删除量自动删除第一数据库5中被抓取过的数据,用户可修改该预定时间间隔及删除量。
参阅图3,所示为本发明另一实施方式中数据自动转移系统1的功能模块图。在另一实施方式中,第一数据库5及第二数据库7均包含一正式表及一临时表。其中第一数据库5的正式表用于储存生产线3所产生的生产数据,第二数据库7的正式表用于储存从第一数据库5转移过来的数据,第一数据库5和第二数据库7的临时表均用于在数据转移过程中暂存数据。在另一实施方式中,数据自动转移系统1包括控制模块10及数据转移模块20。控制模块10用于控制数据转移模块20的运行。在另一实施方式中,控制模块10可为SQL SERVER代理。数据转移模块20在控制模块10的控制下,自动从第一数据库5抓取数据,并将被抓取的数据储存至第二数据库7,以及自动删除第一数据库5中被抓取过的数据。
在另一实施方式中,数据转移模块20除包括数据抓取子模块200、数据库连接子模块202、数据导出子模块204及数据自动清除子模块210外,还包括一数据插入子模块206。在另一实施方式中,数据抓取子模块200用于自动从第一数据库5的正式表抓取数据至第一数据库5的临时表,其中第一数据库5临时表的数据数量远小于第一数据库5正式表中的数据数量。数据库连接子模块202的作用仍为当数据抓取子模块200抓取数据完毕后,连接第一数据库5与第二数据库7,使之可以相互通信。在另一实施例中,数据库连接子模块202还可用以加密第一数据库5与第二数据库7的连接,使得只有特定的人员才可进入查看此连接,以增强安全性。数据导出子模块204的作用为当第一数据库5与第二数据库7的连接建立后,将第一数据库5临时表中的数据导出至第二数据库7的临时表中。数据插入子模块206用于当第一数据库5临时表中的数据完全导出至第二数据库7的临时表中后,将第二数据库7临时表中的数据储存至第二数据库7的正式表中。当第二数据库7的临时表向第二数据库7的正式表储存数据时,数据插入子模块206会自动侦测等待储存的数据与第二数据库7的正式表中的数据是否有重复,若重复则不储存此等待储存的数据而转向侦测下一数据;若不重复,则储存此等待储存的数据至第二数据库7的正式表中,如此,可保证储存至第二数据库7的正式表中数据的单一性。
自动清除子模块210的作用位当第二数据库7临时表中的数据完全储存至第二数据库7的正式表中后,自动将第一数据库5正式表中的被抓取过的数据删除。其中,自动清除子模块210还可用于自动删除第一数据库5的临时表中的数据。自动清除子模块210时根据第一数据库5的临时表中的数据删除第一数据库5的正式表中的数据。自动清除子模块210在删除第一数据库5的正式表中的数据时,是按照预定之时间间隔及删除量进行删除的,避免一次性删除第一数据库5的正式表中被抓取过的数据,从而减少对生产线3的影响。在本发明的第二实施方式中,数据转移模块20还可包括一临时数据清除子模块208,当第二数据库7临时表中的数据完全储存至第二数据库7的正式表中后,用于删除第二数据库7的临时表中的数据。
参阅图4,所示为本发明一实施方式中数据自动转移方法的流程图,数据自动转移方法用于将数据从第一数据库5自动转移至第二数据库7。在步骤S400,数据转移模块20的数据抓取子模块200在控制模块10的控制下,开始自动从第一数据库5抓取数据。在步骤S402,当数据抓取完毕后,数据库连接模块202连接第一数据库5与第二数据库7并对此连接进行加密。在步骤S404,当第一数据库5与第二数据库7的连接建立后,数据导出模块204将从第一数据库5中抓取的数据储存至第二数据库7中。在步骤S406,当从第一数据库5中抓取的数据被成功储存至第二数据库7中后,数据自动清除子模块210按预定之时间间隔及删除量自动删除第一数据库5中被抓取过的数据。这样,即完成从第一数据库5自动转移数据至第二数据库7,且整个流程可在控制模块10的控制下自动循环进行。上述步骤若有任何一步发生错误,数据转移模块20内执行该出错步骤的相应模块将会通知控制模块10停止整个工作流程,并将错误纪录在日志内,操作人员可通过控制模块10检查并排除错误,及重新开始此流程。
参阅图5,所示为本发明的另一实施方式中数据自动转移方法的流程图。在本发明之另一实施方式中,第一数据库5及第二数据库7均包括一正式表及临时表,因而数据自动转移方法同本发明的第一实施方式中数据自动转移方法相比发生相应改变,具体如下所述。在步骤S500,数据转移模块20的数据抓取子模块200在控制模块10的控制下,开始自动从第一数据库5的正式表抓取数据至第一数据库5的临时表。在步骤S502,当数据抓取完毕后,数据库连接模块202连接第一数据库5与第二数据库7并对此连接进行加密。在步骤S504,当第一数据库5与第二数据库7的连接建立后,数据导出模块204将第一数据库5的临时表中的数据导出至第二数据库7的临时表。
在步骤S506,待数据导出成功后,数据插入子模块206将第二数据库7的临时表中的数据储存到第二数据库7的正式表中,在第二数据库7的临时表向第二数据库7的正式表储存数据时,数据插入子模块206会自动侦测等待储存的数据与第二数据库7的正式表中的数据数据是否有重复,若重复则不储存此等待储存的数据而转向侦测下一数据;若不重复,则储存此等待储存的数据至第二数据库7的正式表中。在步骤S508,当第二数据库7的临时表中的数据完全储存至第二数据库7的正式表中后,临时数据清除子模块208删除第二数据库7的临时表中的数据。在步骤S510,当从第一数据库5中抓取的数据被成功储存至第二数据库7的正式表中后,数据自动清除子模块210按预定之时间间隔及删除量并参照第一数据库5的临时表中的数据自动删除第一数据库5的正式表中被抓取过的数据及删除第一数据库5的临时表中的数据。这样,即完成从第一数据库5的正式表自动转移数据至第二数据库7的正式表,且整个流程可在控制模块10的控制下自动循环进行。上述步骤若有任何一步发生错误,数据转移模块20内执行该出错步骤的相应模块将会通知控制模块10停止整个工作流程,并将错误纪录在日志内,操作人员可通过控制模块10检查并排除错误,及重新开始此流程。
本发明之数据自动转移系统1及其方法只需预先设定好每一次抓取数据的范围及运行时间,即可自动从储存生产线3数据的第一数据库5转移及删除数据,无须人员值守,如此可节省大量人力。本发明之数据自动转移方法流程中的每一步都是在上一步成功完成后才开始作业,避免人为操作失误,同时确保数据完全成功转移到第二数据库7后才开始自动删除数据,不会出现错删数据的问题。本发明数据自动转移系统1的数据自动清除子模块210依照第一数据库5临时表及正式表的比对进行删除正式表中的数据,防止误删数据的可能;同时可自由限定每次删除的数据量,减少删除动作对第一数据库5的影响,从而减少对生产线3的影响。通过本发明,可以在第二数据库7自动建立生产线3数据的历史数据库,极大减轻建立第一数据库5的工作负荷,提高工作效率。本发明之数据自动转移系统及方法除可用于大型制造现场的生产管制系统外,还可应用于大型网站、银行、超级市场及机场物流等需要对大量数据整合操作之场合。
权利要求
1.一种数据自动转移系统,其特征在于包括一控制模块,及一数据转移模块,其中所述控制模块用以控制所述数据转移模块,使所述数据转移模块自动从一第一数据库抓取数据,并将被抓取的数据储存至一第二数据库,及自动删除所述第一数据库中被抓取过的数据。
2.如权利要求1所述的数据自动转移系统,其特征在于所述第一数据库及第二数据库均包括一正式表,用于最终储存数据,及一临时表,用于在数据转移过程中暂存数据。
3.如权利要求1或2所述的数据自动转移系统,其特征在于所述数据转移模块包括一数据抓取子模块,用于从所述第一数据库抓取数据。
4.如权利要求3所述的数据自动转移系统,其特征在于所述数据转移模块包括一数据库连接子模块,用于在数据抓取完毕后连接所述第一数据库与所述第二数据库。
5.如权利要求4所述的数据自动转移系统,其特征在于所述数据连接子模块还用于加密所述第一数据库与所述第二数据库的连接。
6.如权利要求4所述的数据自动转移系统,其特征在于所述数据转移模块包括一数据导出子模块,当所述第一数据库与所述第二数据库连接成功后,用于将被抓取的数据储存至所述第二数据库。
7.如权利要求1或2所述的数据自动转移系统,其特征在于所述数据转移模块包括一数据自动清除子模块,当被抓取的数据被成功储存到所述第二数据库后,用于自动删除所述第一数据库中被抓取过的数据。
8.如权利要求7所述的数据自动转移系统,其特征在于所述数据自动清除子模块按预定时间间隔及删除量自动删除所述第一数据库中被抓取过的数据。
9.如权利要求2所述的数据自动转移系统,其特征在于所述的数据转移模块包括一数据插入子模块,用于将所述第二数据库的临时表中的数据储存到所述第二数据库的正式表中。
10.如权利要求9所述的数据自动转移系统,其特征在于所述的数据插入子模块还用以自动识别重复数据,当所述第二数据库的临时表正在储存的资料与所述第二数据库的正式表中的资料重复时,停止对重复数据的储存,而继续储存所述临时表中的下一资料至所述正式表。
11.如权利要求9或10所述的数据自动转移系统,其特征在于所述的数据转移模块包括一临时数据清除模块,当数据储存成功后,用于删除所述第二数据库的临时表中的数据。
12.一种数据自动转移方法,用于自动将数据从一第一数据库转移至一第二数据库,其特征在于包括如下步骤从所述第一数据库抓取数据;当数据抓取完毕后,连接所述第一数据库与所述第二数据库;当所述第一数据库与所述第二数据库连接成功后,将从所述第一数据库中抓取的数据储存至所述第二数据库;及当数据储存成功后,自动删除所述第一数据库中被抓取的数据。
13.如权利要求12所述的数据自动转移方法,其特征在于所述第一数据库及第二数据库均包括一正式表,用于最终储存数据,及一临时表,用于在数据转移过程中暂存数据。
14.如权利要求12或13所述的数据自动转移方法,其特征在于连接所述第一数据库与所述第二数据库的步骤后更包括加密所述第一数据库与所述第二数据库的连接的步骤。
15.如权利要求13所述的数据自动转移方法,其特征在于从所述第一数据库抓取资料的步骤包括从所述第一数据库的正式表抓取数据至所述第一数据库的临时表。
16.如权利要求13所述的数据自动转移方法,其特征在于将从所述第一数据库中抓取的资料储存至所述第二数据库的步骤包括以下步骤将所述第一数据库的临时表中的资料导出到所述第二数据库的临时表中;当数据导出成功后,将所述第二数据库的临时表中的数据储存到所述第二数据库的正式表中;及当数据储存成功后,自动删除所述第二数据库临时表中的数据。
17.如权利要求16所述的数据自动转移方法,其特征在于当所述第二数据的临时表中正在储存的数据与所述第二数据库正式表中的数据重复时,停止储存重复数据而继续进行下一数据的储存。
18.如权利要求13所述的数据自动转移方法,其特征在于删除所述第一数据库中被抓取过的数据包括删除所述第一数据库的正式表中被抓取过的数据及删除所述第一数据库的临时表中的数据。
19.如权利要求18所述的数据自动转移方法,其特征在于删除所述第一数据库的正式表中被抓取的数据是按预定的时间间隔及删除量自动删除。
全文摘要
一种数据自动转移系统,用于自动将数据从第一数据库转移到第二数据库,包括一控制模块及一数据转移模块。数据转移模块在控制模块的控制下,可自动从第一数据库抓取数据,将被抓取的数据储存至第二数据库,并自动删除第一数据库中被抓取过的数据。该数据转移模块包括一数据抓取子模块、一数据库连接子模块、一数据导出子模块、一数据插入子模块、一临时数据清除模块及一数据自动清除子模块。本发明还提供一种相应的数据自动转移方法。本发明的数据自动转移系统及方法可自动从一数据库转移数据到另一数据库,并将转移过的数据进行自动删除,节省人力及删除时间,高效快捷。
文档编号G06F17/30GK1858730SQ200510034569
公开日2006年11月8日 申请日期2005年5月6日 优先权日2005年5月6日
发明者赵锋 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1