招生热线
0755-86191118 0755-86191118
我的位置: 首页 > 学习专区 > 数据库技术 > Streams数据同步技术

Streams数据同步技术

2013-07-13 08:49:50
来源:
[导读] Streams是从版本Oracle 9i才开始具有的数据同步功能,是为提高数据库的高可用性和数据的分发和共享功能而设计的,Streams利用高级队列技术

Streams是从版本Oracle 9i才开始具有的数据同步功能,是为提高数据库的高可用性和数据的分发和共享功能而设计的,Streams利用高级队列技术,通过用LogMiner挖掘日志文件生成变更的逻辑记录,然后将这些变更应用到目标数据库上,从而实现数据库之间或一个数据库内部的数据同步。

Streams数据同步大致分如下几个步骤:

1) Capture进程分析日志,生成逻辑记录LCR,将其放入一个队列中;

2) Propagation进程将LCR发送到另一个数据库中,通常是目标数据库;

3) 在目标数据库中,Apply进程将LCR应用到目标库,实现数据的同步;

该处理过程的信息流如下图:

在简单的Streams配置中,Capture进程一般位于源数据库,因此叫做Local Capture Process,Capture进程在分析日志后将生成的LCR放入队列中,由Propagation进程将LCR发送到目标库中。这样做的好处是不用在网络上传送整个的日志文件,因此可提高网络传输的效率,但这一般会给源数据库带来较大的压力,影响其性能。

另一种配置是Capture进程位于Downstream数据库中,源数据库只负责将日志文件传送(日志传输方式可为ARCH传输、LGWR同步传输和LGWR异步传输中的任何一种)到Downstream数据库中,所有的Capture操作都在Downstream数据库上完成。这种配置的好处是可以大大降低源数据库的压力,缺点是需要传输整个日志文件,对网络带宽要求较高。

评论