关于Oracle Stream的安装、配置和使用

Oracle Stream功能是为提高数据库的高可用性而设计的,在Oracle 9i及之前的版本这个功能被称为Advance Replication。Oracle Stream利用高级队列技术,通过解析归档日志,将归档日志解析成DDL及DML语句,从而实现数据库之间的同步。这种技术可以将整个数据库、数据库中的对象复制到另一数据库中,通过使用Stream的技术,对归档日志的挖掘,可以在对主系统没有任何压力的情况下,实现对数据库对象级甚至整个数据库的同步。   OracleStreams提供了信息共享的一种方式,区别于其它数据共享的方式,Streams甚至允许不同类型的数据库之间传递数据,实现这点的根本在于 Streams的复制流程,通过捕获,传播,应用三个步骤,将指定的信息传输到指定位置,在捕获消息,管理消息,以及在不同数据库或应用之间共享消息等方面提供了比传统解决方案更为强大的功能和扩展性。Streams特性适用于分布式的企业应用,数据仓库,高可用解决方案等等。   Streams强大的可定制性,比如说控制哪些信息被捕获,这些信息在数据库之间的流向,注入数据库时做怎样的处理,何时关闭stream等等。通过一些自定义的配置Streams 自动捕获、应用和管理诸如DML/DDL修改触发的消息。你甚至自定义信息存入streamStreams会自动传输这些信息到其它数据库或相关应用。 二、Streams功能 1、 数据复制Data Replication   Streams 通过capture进程捕获dml,ddl操作,然后通过propagate进程传播到其它数据库,然后再通过apply进程应用的方式复制数据。这中间的每个步骤都是可定制的, 2、 数据保护Data Protection   最有效的数据保护策略就是冗余,Streams显然能够实现这一点,因为streams的主要功能就是复制数据。不过需要注意的是,由于 streams实现复制的方式是逻辑的,因此如果希望用streams取代dataguard................不是完全不可以,不过,需要好好设计。Streams与逻辑standby非常相似,都是通过分析primary的redolog 3、 数据仓库数据加载Data Warehouse Loading   数据加载是数据复制中的特例。数据仓库系统的数据也是需要更新的,比如说新增或修改数据的同步,streams恰恰就可以满足这一点,因此streams也可以应用于数据仓库系统。 4、 提供数据库服务的高可用支持Database Availability During Upgrade and Maintenance Operations   借助streams特性的帮助,你可以尽可能的降低甚至避免数据库在升级或维护操作时的停机时间。而且由于streams的实现是逻辑的,因此几乎可以无视跨版本跨平台跨字符集等方式的升级,并且如果前期准备得当,也可以做到短暂停机甚至完全不停机。 三、为什么要用Streams   前面大概介绍了一下streams能用来做什么,当然,都是些官方定义,实际上Streams不是一项新特性,但也不是一项很新的特性。从 Oracle的9iR2版本开始推出,在10g中得到了一些增强(比如提供了downstream),其主要功能说白了就是复制数据。说到复制数据,你可能会想到oracle的其它一些同样实现数据复制功能的特性,比如说高级复制(Advanced Replication),Dataguard等等。   在9iR2之前高级复制应用比较广泛,高级复制也分两种:多主复制和基于物化视图的复制,就我理解其最大的劣势是大数据量下效率堪优,并且对于 ddl的支持不够友好。从技术实现思路上与streams几无相同之处,倒是逻辑standby与streams的实现方式非常想像,都是通过分析 redo生成重做的sql语句在目标端执行,如果要说差异的话,逻辑standby只提供了整库级的复制,从功能上来看standby还是更适合应用于容灾,而streams不仅能够实现整库级的同步,在复制策略上设计的非常灵活,你可以通过不同的方式实现表空间/SCHMEA/表级的复制。也就是在复制策略定制上更灵活。由于是分析redo实现,因此对ddl的支持相比高级复制那实在好太多了,并且streams仍属于逻辑实现的方式,因此支持跨平台跨版本的实施,在目前,这点是dataguard无法比拟的。   如果要说劣势的话,虽然经历了9i,10g到最新的11g,但streams实现还是个新东西,其应用的广泛程度自然远不能与高级复制和 dataguard相比,因此在稳定性上可能还有所欠缺,比如说碰到bug的机率会比较高。从管理的角度,streams比dataguard要复杂一些,与高级复制应该说不相上下。当然这里并不是要写一篇专门对比streams/dataguard/高级复制间差异的文章,因此,点到为止吧,通过大致的对比希望能让你了解到streams的特点和优劣。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值