Oracle高级复制与流复制 (转)


Oracle高级复制与流复制

http://www.itotimes.com/培训文档/数据库技术/Oracle高级复制与流复制
http://product.itotimes.com/产品中心/数据库

Oracle备份功能包括:

  • 数据保护(Data Guard)
  • 流复制(Streams Replication)
  • 高级复制(Advanced Replication)

数据保护(Data Guard):

Data Guard在高可用及容灾方面一般是dba的首选,毕竟Data Guard在这方面 存在压倒性的优势,不管是物理备用库(physical standby database)还是逻辑备用库(logical standby database),它们都具有一些共同的待征。

配置和管理方面的成本:Data Guard比Stream Replication简单方便;安全与稳定方面的成本:Data Guard比Stream Replication稳定可靠。

对对于一个24x7的系统来说,这些是非常重要的,系统宕机时间的增加不仅影响着公司的形象,还会影响公司的效益;采用Data Guard,数据的安全性相当有保障,物理备用库可以在最短的时间完成故障切换,逻辑备用库在保障数据安全的同时, 也可以承担大量的报表等业务;由于Data Guard的配置与管理比较简单,同理也降低了dba的工作强度。

流复制(Streams Replication):

适用于如下情况:

  • 局部复制 Stream可以只复制某些表或某些模式
  • 异构环境 充分利用现有的设备与技术
  • 远程容灾 Stream对网络的要求较Dataguard低

Stream Replication有灵活的复制策略,不仅可以配置只复制某些表,还可以配置仅复制某些表上的DDL或DML,相比Data Guard必须整个数据库复制而言,可以节省相当的存储投资,毕竟对于某些海量数据而言,有许多是不必要复制的。

如果在异构环境,即不同的操作系统,那Data Guard将会束手无策,非Stream Replication莫属,这样可以充分利用现有的环境,配置高用可方案,在异构环境,Stream Replication将会是Advanced Replication的强劲对手。

Stream Replication传播的是经过logmnr挖掘并包装的逻辑改变记录(LCRs),相比Data Guard传送archived redo log、Advanced Replication的mview log与mview刷新的方式,Stream Replication对网络的需求降低了很多,在远程异地容灾的过程中,租用网络带宽是一笔较高的费用,Stream Replication可以适当地降低这笔费用。

高级复制(Advanced Replication):

Advanced Replication相对于Data Guard,缺点是:配置与管理较复杂、安全与稳定性不够;优点:局部复制、异构环境等。Advanced Replication是一种相当成熟的技术,在许多关键系统中得到成功的运用,相对于9iR2推出的Stream Replication而言,双方适用的环境虽然相当,比如都可以进行局部复制、异构复制、远程容灾等,Advanced Replication目前在稳定性与安全性方面更经得起考验。

对比Stream Replication与Advanced Replication底层的实现技术,Stream Replication在实时性、稳定性、高效率、低消耗(较少的cpu/network资源)等方面更有优势,但凡一些新推出的功能,都或多或少存在一些不确定的因素。

在10gR1中,Oracle针对目前Stream Replication存在的弱点进行了增强,不仅提供了从Advanced Replication迁移到Stream Replication的脚本,还提供了Stream Replication的配置与监控工具,Stream Replication在配置与管理方面必将智能化、简单化,担负起与shareplex争夺企业数据复制市场的重任。

高级复制与流复制区别

高级复制与Streams Replication的原理是完全不同的,Streams Replication可以到表,用户,数据库级别,但高级复制似乎只能到表一级。

Streams Replication不是高级复制的升级版。

异构环境下,oracle的高可用和容灾有高级复制和stream 复制两种,两种的异同点如下:

  • 高级复制是基于触发器(trigger)原理,而stream是基于日志挖掘原理,因此stream复制对源数据库的性能影响更小,但实时性不如高级复制。
  • 高级复制复制的对象是基于数据库目标(object)的,如表、索引和存储过程,而stream复制可以针对表、方案(schema)和整个数据库,因此如果出于容灾整个数据库的考虑,stream复制的配置相对简单。
  • 高级复制是一种相当成熟的技术,在许多关键系统中得到成功的运用,相对于9iR2推出的stream复制,高级复制目前在稳定性与安全性方面更经得起考验。
  • 从发展的角度看,流的应用会越来越多,从oracle10g,oracle公司提供了从高级复制向流复制移植的工具,可以看出,oracle公司会更偏重于基于流的新技术。
  • 由于高级复制是基于触发器的,因此所有的复制对象结构(ddl)的改变,都必须通过oracle提供的复制包来实施,和应用结合的比较紧,更适合于开发者使用,而流复制则更适合dba来实施。
  • 流复制支持双向数据复制,而高级复制会有冲突;
  • 流复制支持异构数据库复制,而没有资料说明高级复制也有相同功能;

两种实际使用来看,streams复制需要更少的带宽,2m带宽,如果 streams复制不行,高级复制大概更没戏,但是用streams最好别网络断线时间过长,不知道是bug还是oracle没考虑这种情况,如果复制停 顿一段时间,再恢复正常,大概是队列表中消息太多了,入队出队都很慢,非线性增长啊,这样就需要不短的一段时间来同步数据,高级复制就没这种状况。

Stream对系统的设计与维护方要有相当的对stream技术的把控能力,而大多数系分与 DBA对这个东西都没有经验,所以难以推广;dataguard胜在维护简单可靠,一般dba都可以维护。stream以后会的前景会非常广阔! 尤其是双向复制,解决了很多实际问题。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/312949/viewspace-732880/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/312949/viewspace-732880/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值