基于邮件推拉技术的数据库远程数据同步之解决方案
数据库复制技术目前有很多,各种大型数据库系统也集成了数据库的复制技术,但这些集成的数据复制技术均有一定的限制。第一,对于异种数据库环境,不能有效支持。如ORACLE的数据复制技术不能向MS SQL SERVER中同步数据;第二,复制技术本身不考虑网络的连接问题。如果需要同步的数据库在远程,则需要用户保证网络的连通性,否则是不可能进行数据同步操作的。鉴于以上限制,要想实现广域范围内的异种数据库之间的数据同步,将会很困难。从软件技术上,需要解决异质数据库之间的访问问题;从网络结构上,需要解决广域网的连接问题,需要大量的人力及财力。
邮件技术
互联网中的邮件技术是互联网中使用最为广泛的技术,具有使用简单,性能稳定,成本低廉等特点。利用邮件技术来实现数据同步复制,应该是一种好的选择。
如上图所示,源数据库将需要同步的数据生成邮件,通过互联网将邮件发送至目标数据库上,再通过还原程序将邮件中的同步数据复制到数据库中。当目标数据库处理完后,将执行等情况再通过邮件返回,供发送端处理。
这种远程数据的发送与接收,不需要专门的网络线路或VPN网,只需要与当地的ISP连接即可,可以省去大量的通讯费用。
推拉技术
推拉技术的实现的主要靠服务器上的一个服务程序来完成,该服务程序是一个面向所有数据库的接口,负责解析所有的任务请求并完成数据库数据的更新。
下图是一个服务程序的流程框图:
如图所示,所有的事务请求均通过任务分配器来完成,任务分配器根据任务需要生成邮件,发往目的端;同时任务分配器主动接收来到其它数据库服务器的数据同步邮件,通过分解处理后写入指定的数据库中,完成对数据库的更新。其中邮件的生成、邮件的接收等所有操作均由任务分配器自动完成,无需人为干预。
通过邮件方式来同步数据库数据,适合于实时性要求不高的情况,因为对于邮件的处理,由于多种原因,会处理延时。从数据更新请求到数据完成更新有可能需要很长的时间。因此在我们的解决方案中,还增加了直接远程数据抓取功能,只要网络结构允许,可以直接完成对数据库的更新,更新方式可以是PUSH方式,也可以是PULL方式,以此解决实时性要求较高的数据同步要求。
下图是一个完整的远程数据更新的逻辑结构图:
如上图所示,对于不同的二个远程系统,可以实现多种方式的远程数据更新操作,图中灰色区域是通过邮件方式完成数据同步,中间部分表示用直接数据抓取方式来完成新据的更新操作。
基于邮件推拉技术的远程数据同步的特点:
1、 操作简单,性能稳定
2、 费用低,无需额外的网络投入
3、 支持异种数据库的数据更新
4、 功能强大,所有的任务均通过描述语言书写,适合各种应用情况
5、 支持推(PUSH),拉(PULL)和直接抓取等多种处理方式
6、 数据同步全自动化,无需任何人为干预
7、 数据安全性高,网络中的每一传输环节均通过加密和压缩
8、 系统采用先进的MIDAS技术开发而成,性能快捷
posted on 2005-12-28 10:35 ............. 阅读(557) 评论(0) 编辑 收藏 举报