五、SharePlex数据同步技术
SharePlex 是 Quest 公司开发的用于专门用于 Oracle 数据库的数据同步软件,可以运行在异构的操作系统平台上和 Oracle 数据库的不同版本之间。[@more@]SharePlex的数据复制原理与GoldenGate类似,需要分别在源数据库服务器和目标数据库服务器上安装SharePlex软件。具体处理过程是:Capture进程分析源数据库的日志文件,抓取所需的数据变更操作,将其存储在SharePlex自己专有的queue文件中,放入到Capture Queue,然后由Read进程对queue文件进行封装处理,将其放入到Export Queue中,由Export进程将queue文件通过网络发送到目标服务器上,目标服务器上的Import进程接收这些queue文件,将其放入到Post Queue中,最后由Post进程将这些queue文件中的变更应用到目标数据库中,其处理流程如下图:
SharePlex数据同步技术的优势有:
1) 支持异构的操作系统平台,便于数据库管理系统的版本升级及操作系统平台切换;
2) 跟DataGuard传输整个日志文件相比,SharePlex传输的数据量大大降低,这点跟GoldenGate差不多;
3) 目标数据库处于打开状态,且支持一对多、多对一,双向复制等配置,也可以选择部分对象进行复制,可满足数据分发和数据集成的需要,减轻源数据库压力,这方面也类似于GoldenGate;
4) 所占系统资源较少,通常在10%以下;
SharePlex数据同步技术的劣势体现在以下几个方面:
1) 需要支付额外的Liscense费用,通常是一笔不小的支出;
2) 需要在数据库软件外安装一套专门数据同步软件,增加了管理维护的复杂程度;
3) 由于数据复制操作独立于数据库管理系统,因此不能确保数据零丢失;
4) 由于是第三方的软件产品,在对某些特定的数据对象、数据类型和Oracle某些新特性如ASM的支持方面不如数据库厂商自己的解决方案;另外,还有一种可能就是如果Oracle对自己的日志格式做些改变或加密,SharePlex将无能为力;
从上述分析可知,SharePlex虽然专用于Oracle数据库同步,但同GoldenGate相比并无明显优势,GoldenGate对异构数据库的支持更是SharePlex所不能比。再者,现在GoldenGate已经被Oracle公司收购,成为了Oracle的嫡系部队,这对SharePlex来说确实是一件不幸的事,关乎生死。
除了上面介绍的这些数据同步技术外,在国内市场上用于Oracle数据同步的产品还有DSG 公司的RealSync软件,RealSync的实现原理及功能与SharePlex基本类似,也是只支持Oracle数据库,也可以跨越不同的操作系统平台。值得一提的是RealSync在目标数据库的数据装载方面,不是通过主键或唯一键来实现数据记录的定位,而是自己维护一个源数据库和目标数据库的数据记录的rowid mapping表,通过rowid来实现记录的定为,因此在数据装载效率方面有不小的提高。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9931/viewspace-1028801/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9931/viewspace-1028801/