实施案例 公司首页>实施案例>基于邮件的数据采集方案
基于邮件的数据采集方案
    本文将介绍一种最廉价的、基于邮件推拉技术(push/pull)的远程数据库同步的解决方案。所谓推拉技术,指定的是数据的主动传送及主动接收,需要发送的数据会主动传至目的地,同时目的对象会自动接收并处理,二者之间无需任何约定。在本解决方案中,我们将采用目前成熟的互联网邮件系统来实施推拉技术,使整个系统具有很好的稳定性和可靠性。本方案适合于各种环境下的数据库同步更新要求。

    数据库复制技术目前有很多,各种大型数据库系统也集成了数据库的复制技术,但这些集成的数据复制技术均有一定的限制。第一,对于异种数据库环境,不能有效支持。如ORACLE的数据复制技术不能向MS SQL SERVER中同步数据;第二,复制技术本身不考虑网络的连接问题。如果需要同步的数据库在远程,则需要用户保证网络的连通性,否则是不可能进行数据同步操作的。鉴于以上限制,要想实现广域范围内的异种数据库之间的数据同步,将会很困难。从软件技术上,需要解决异质数据库之间的访问问题;从网络结构上,需要解决广域网的连接问题,需要大量的人力及财力。

    邮件技术

    互联网中的邮件技术是互联网中使用最为广泛的技术,具有使用简单,性能稳定,成本低廉等特点。利用邮件技术来实现数据同步复制,应该是一种好的选择。

    如上图所示,源数据库将需要同步的数据生成邮件,通过互联网将邮件发送至目标数据库上,再通过还原程序将邮件中的同步数据复制到数据库中。当目标数据库处理完后,将执行等情况再通过邮件返回,供发送端处理。

    这种远程数据的发送与接收,不需要专门的网络线路或VPN网,只需要与当地的ISP连接即可,可以省去大量的通讯费用。

    推拉技术

    推拉技术的实现的主要靠服务器上的一个服务程序来完成,该服务程序是一个面向所有数据库的接口,负责解析所有的任务请求并完成数据库数据的更新。下图是一个服务程序的流程框图:

    如图所示,所有的事务请求均通过任务分配器来完成,任务分配器根据任务需要生成邮件,发往目的端;同时任务分配器主动接收来到其它数据库服务器的数据同步邮件,通过分解处理后写入指定的数据库中,完成对数据库的更新。其中邮件的生成、邮件的接收等所有操作均由任务分配器自动完成,无需人为干预。

    通过邮件方式来同步数据库数据,适合于实时性要求不高的情况,因为对于邮件的处理,由于多种原因,会处理延时。从数据更新请求到数据完成更新有可能需要很长的时间。因此在我们的解决方案中,还增加了直接远程数据抓取功能,只要网络结构允许,可以直接完成对数据库的更新,更新方式可以是PUSH方式,也可以是PULL方式,以此解决实时性要求较高的数据同步要求。

    下图是一个完整的远程数据更新的逻辑结构图:

    如上图所示,对于不同的二个远程系统,可以实现多种方式的远程数据更新操作,图中灰色区域是通过邮件方式完成数据同步,中间部分表示用直接数据抓取方式来完成新据的更新操作。

    基于邮件推拉技术的远程数据同步的特点:
    1、 操作简单,性能稳定
    2、 费用低,无需额外的网络投入
    3、 支持异种数据库的数据更新
    4、 功能强大,所有的任务均通过描述语言书写,适合各种应用情况
    5、 支持推(PUSH),拉(PULL)和直接抓取等多种处理方式
    6、 数据同步全自动化,无需任何人为干预
    7、 数据安全性高,网络中的每一传输环节均通过加密和压缩
    8、 系统采用先进的MIDAS技术开发而成,性能快捷