本发明专利技术针对现有技术中系统需要花费大量的资源来处理数据库操作从而会耗尽系统内存、导致系统崩溃的缺陷,提供一种能够克服这些缺陷的对数据库进行同步的方法和系统。本发明专利技术提供一种对数据库进行同步的方法,该方法包括:在有数据更新请求时,服务器端将该数据更新请求写入文件中;以及对数据库进行更新的装置监测并读取所述文件中的所述数据更新请求以对所述数据库进行更新。本发明专利技术还提供一种对数据库进行同步的系统,该系统包括:服务器端,用于在有数据更新请求时,将该数据更新请求写入文件中;以及对数据库进行更新的装置,用于监测并读取所述文件中的所述数据更新请求以对所述数据库进行更新。
【技术实现步骤摘要】
【专利摘要】本专利技术针对现有技术中系统需要花费大量的资源来处理数据库操作从而会耗尽系统内存、导致系统崩溃的缺陷,提供一种能够克服这些缺陷的对数据库进行同步的方法和系统。本专利技术提供一种对数据库进行同步的方法,该方法包括:在有数据更新请求时,服务器端将该数据更新请求写入文件中;以及对数据库进行更新的装置监测并读取所述文件中的所述数据更新请求以对所述数据库进行更新。本专利技术还提供一种对数据库进行同步的系统,该系统包括:服务器端,用于在有数据更新请求时,将该数据更新请求写入文件中;以及对数据库进行更新的装置,用于监测并读取所述文件中的所述数据更新请求以对所述数据库进行更新。【专利说明】对数据库进行同步的方法和系统
本专利技术涉及数据处理领域,尤其涉及一种对数据库进行同步的方法和系统。
技术介绍
作为石油炼制工业控制应用的系统,调合系统应该具有长期稳定运行、不间断的 特征行为,同时在该调合系统中,还具有大量设备产生的数据需要被写入数据库中以进行 存储和更新。目前,类似系统中对于数据库操作的通常方法都是直接使用数据库接口(比如 ODBC、AD0等)对数据库进行实时操作。 由于数据产生是持续进行的,所以数据库一直都会处于高负荷状态,为避免数据 丢失,一般系统都会在内存中缓存数据变更情况,然后再逐一取出所缓存的变更数据来进 行数据库更新操作。众所周知,计算机的资源是固定有限的,如果系统数据库的请求过于频 繁,则数据库系统也会无法及时处理更新数据,这就会造成系统本身进程的缓冲数据内存 消耗极大,导致花费大量的进程资源来处理数据库操作,从而影响了工业控制正常业务的 运行,极端情况下,缓存还会把系统的内存资源耗尽,导致整个系统崩溃。
技术实现思路
本专利技术提供一种能够克服现有技术中的上述缺陷的对数据库进行同步的方法和 系统。 本专利技术提供一种对数据库进行同步的方法,该方法包括: 在有数据更新请求时,服务器端将该数据更新请求写入文件中;以及 对数据库进行更新的装置监测并读取所述文件中的所述数据更新请求以对所述 数据库进行更新。 本专利技术还提供一种对数据库进行同步的系统,该系统包括: 服务器端,用于在有数据更新请求时,将该数据更新请求写入文件中;以及 对数据库进行更新的装置,用于监测并读取所述文件中的所述数据更新请求以对 所述数据库进行更新。 由于根据本专利技术的对数据库进行同步的方法和系统不是利用服务器端来直接对 数据库进行操作,而是利用对数据库进行更新的装置来对数据库进行更新,所以根据本发 明的方法和系统具有以下优势:(1)能够使得系统业务运行与数据库操作(例如,更新)完全 分离,也即服务器端本身并不直接操作数据库,而是把数据库操作的任务交给了对数据库 进行更新的装置,因此即使数据库操作出现错误也不会影响系统的正常运行;(2)使系统 更加稳定,脱离了直接操作数据库而引起的资源堵塞和消耗,避免了系统由此造成的崩溃; (3)由于是采用对数据库进行更新的装置来进行数据库操作,所以能够提高数据库操作的 效率,并且可以批量进行数据库操作和提交,降低了数据库服务器的负荷。 【专利附图】【附图说明】 附图是用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与下面的具 体实施方式一起用于解释本专利技术,但并不构成对本专利技术的限制。在附图中: 图1是根据本专利技术一种实施方式的对数据库进行同步的方法的流程图;以及 图2是根据本专利技术一种实施方式的对数据库进行同步的系统的示意框图。 【具体实施方式】 以下结合附图对本专利技术的【具体实施方式】进行详细说明。应当理解的是,此处所描 述的【具体实施方式】仅用于说明和解释本专利技术,并不用于限制本专利技术。 如图1所示,根据本专利技术一种实施方式的对数据库进行同步的方法包括以下步 骤: SI 1、在有数据更新请求时,服务器端将该数据更新请求写入文件中。 优选地,服务器端即时地将数据更新请求写入所述文件中,也即只要存在着数据 更新请求,服务器端就将其写入所述文件中。但是本领域技术人员应当理解的是,服务器端 还可以周期性地将数据更新请求写入所述文件中,例如每隔一定时间执行一次写入操作。 优选地,所述文件为文本文件。但是本领域技术人员应当理解的是,所述文件还可 以是其他形式的文件,例如word等。 优选地,所述服务器端在所述文件中将所述数据更新请求写成结构化查询语言 (Structured Query Language, SQL)执行语句的形式,以便于后续对数据库进行更新的装 置对数据库进行操作。但是本领域技术人员应当理解的是,服务器端还可以将数据更新请 求写成其他形式的语句,例如如下的语句: 2012-10-3012:49:09. 0001V:3 HeaderOl time 1348796254 1351572549 2012-10-30_12:49:09 2012-10-3012:49:20. 0001V: 3 HeaderOl time 1351572549 2012-10-30_12:49:09 1351572560 end 优选地,所述SQL执行语句或其他形式的语句中含有所述数据更新请求的时间 戳,从而在后续对数据库进行更新的装置对数据库进行操作时能够按照时间顺序来执行 SQL执行语句或其他形式的语句。 S12、对数据库进行更新的装置监测并读取所述文件中的所述数据更新请求以对 所述数据库进行更新。 优选地,对数据库进行更新的装置可以周期性地监测所述文件中的所述数据更新 请求。当然,对数据库进行更新的装置还可以在需要时监测所述文件中的数据更新请求,例 如,在用户请求使用数据库的情况下,对数据库进行更新的装置按需监测所述文件中的数 据更新请求的好处在于能够节省系统资源同时还能够确保数据库的内容是最新的。 优选地,对数据库进行更新的装置可以是sqlsync程序,当然还可以是其他独立 的运行程序,例如 Oracle sqlplus、Microsoft Query Analyzer 等。 优选地,在步骤S12之前,根据本专利技术的方法还可以包括:所述对数据库进行更新 的装置与所述服务器端进行时间同步,以便于所述对数据库进行更新的装置能够更准确地 对数据库进行操作。 如图2所示,本专利技术还提供一种对数据库进行同步的系统,该系统包括:服务器端 201,用于在有数据更新请求时,将该数据更新请求写入文件中;以及对数据库进行更新的 装置202,用于读取所述文件中的所述数据更新请求以对所述数据库进行更新。 优选地,服务器端201即时地将数据更新请求写入所述文件中,也即只要存在着 数据更新请求,服务器端201就将其写入所述文件中。但是本领域技术人员应当理解的是, 服务器端201还可以周期性地将数据更新请求写入所述文件中,例如每隔一定时间执行一 次写入操作。 优选地,所述文件为文本文件。但是本领域技术人员应当理解的是,所述文件还可 以是其他形式的文件,例如word等。 优选地,所述服务器端201在所述文件中将所述数据更新请求写成结构化查询语 言(Structured Query Language, SQ本文档来自技高网...
【技术保护点】
一种对数据库进行同步的方法,该方法包括:在有数据更新请求时,服务器端将该数据更新请求写入文件中;以及对数据库进行更新的装置监测并读取所述文件中的所述数据更新请求以对所述数据库进行更新。
【技术特征摘要】
【专利技术属性】
技术研发人员:杨道林,
申请(专利权)人:北京本果信息技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。