目前所接触的Oracle 的灾备以及同步手段主要有ADG,OGG,DSG,高级复制,流复制以及自主开发的基于logmnr的数据同步软件,各有优劣。各自评价如下:
1. ADG,最常用的同城,异地灾备解决方案,物理级备份,备机不可写,传输数据为所有redo日志的更改,数据量稍大,不过从以往的使用经验来看,也不太会影响网络,除非应用对网络有很苛刻的要求,即使有,也可以通过vlan或者路由或者多网卡的方法特别建立网络通道,主备库完全一致,缺点是必须全库备份。
2. OGG,DSG这两个我觉得是一个类型的,逻辑备份,主要采用特有的技术从联机日志中抽取更改项应用到备库,主备库为两个库,可以全库同步也可以同步单张表或数张表,同步速度较快,传输数据量很少,DML操作和DDL操作均支持。
3. 高级复制 仅支持DML操作,DDL操作不支持,切升级后表要重新配置,同步数据量也较少。10g,11g有用于做同步灾备使用,但是bug超级多,问题超级多。Oracle12c的说明里已经不再有高级复制这个组件
4. 流复制 Oracle收购ogg之前主推的同步手段,没用过,不了解。目前也已被抛弃,12c的说明里已经明确说明对流复制不会继续更新补丁。但是仍会有此产品。
5. 基于自主开发的logmnr数据同步:这个优势很大,劣势也很大,毕竟Oracle有独立的同步程序,因此logmnr就被oracle刻意的设置了很多对数据库同步不利的地方,我先说优势,由于是自主开发的,可以自主设置同步手段,设置同步策略(比如推送,还是拉取),设置是否接受等等,能够很方便的开发管理界面。劣势也非常明显,logmnr的每次调用都会记录到alert日志中,这对Oracle的运维是极其不利的,而且logmnr对cpu和io的占用消耗很大,非常明显。
主流数据库容灾(复制)工具对比
| ||||
Oracle Golden Gate
|
Quest Shareplex
|
DSG RealSync
| ||
公司概要 | ||||
公司介绍 | GoldenGate公司成立于2007年,专注于数据同步领域,是实现数据同步技术的领导者。2009年被Oracle收购 | Quest Software成立于1987年,并于1999年在纳斯达克上市,市值近20亿美元。公司现有员工3000人,中国区总部位于北京,广州、上海设有办事处。主要产品线为数据库管理和监控工具。2012年戴尔以24亿美元收购Quest Software。 | DSG中国于2002年8月在北京成立,主要产品包括oracle同步软件realsync和数据库备份软件snapassure及其他有关oracle数据库的支撑软件。 | |
产品成熟度 | GoldeGate产品最早发布于1995年,产品成熟度高,在全球有超过2000多个成功案例 | SharePlex产品最早发布于1999年,在全球有接近800个成功案例 | 产品推出时间较短,客户仅限于国内 | |
成功案例 | 在全球35个国家售出超过2000个许可证,客户分布在政府、银行、电信、证券、传媒、医疗等行业,大部分客户为全球500强企业,如中国海关总署、中国国家体育总局体彩管理中心、中国电子口岸、海南移动、美国银行、VISA、瑞银集团、澳大利亚海关、新加坡港务局等。 | 在国内有一些成功案例,包括北京地税,天津地税,贵州联通,黑龙江移动,大连商品交易所等客户,在全球有近800个成功案例。 | 作为国内最先推出数据库同步复制解决方案的厂家,DSG迄今为止已经累积了100多家成功案例,大部分案例集中在电信、金融、政府、电力领域,如:中国电信、中国移动、中国联通、广西公安、河北地税、华泰证券、中金所、鲁证期货、中大期货等 | |
产品方面 | ||||
复制机制 | 通过分析Oracle redo log分析,生成sql,在相应的灾备环境应用来实现容灾 | 通过分析Oracle redo log分析,生成sql,在相应的灾备环境应用来实现容灾 | 通过分析Oracle redo log分析,生成sql,在相应的灾备环境应用来实现容灾 | |
复制方式 | 支持多种复制方式,支持单向、多向、广播、合并、级联 | 支持多种复制方式,支持单向、多向、广播、合并、级联 | 支持多种复制方式,支持单向、多向、广播、合并、级联 | |
双向复制 | Goldengate可以非常好的支持同一个业务系统同一套表的实时双向复制。 | Quest不支持同一套表的实时双向复制。 | DSG基于rowid实现源和目标的数据库复制,从机理上肯定不能实现双向复制,同时当源端进行数据库整理时,数据的rowid会发生变化,会造成数据不一致。 | |
兼容性和可扩展性 | 支持Oracle、DB2、SQL Server、Sybase、MySQL、Teradata等各种数据库平台 | 仅支持Oracle | 仅支持Oracle | |
不同oracle版本支持 | 支持oracle8i以后所有版本,以及RAC环境 | 支持oracle8i以后所有版本,以及RAC环境 | 支持oracle8i以后所有版本,以及RAC环境 | |
对原系统的改动 | 安装时不需要在原系统上插入表,对原系统的影响非常小,运行可靠性高。 | 需要在原系统上插入一些中间表,影响可靠性 | 需要在原系统上插入大量的数据表,这些数据表占用大量的存储空间,维护起来相当麻烦,如果一旦丢失,需要花费大量的时间重建,是可靠性不高的一种设计。 | |
产品的运行监控 | GoldenGate提供了集中管理的工具 Director。该工具可以对多个分布的GoldenGate实例进行集中管理,并提供命令行、web页面面和Java 界面三种管理界面,客户可以根据自身爱好选择任意一种方式管理和监控复制软件的运行。Director使得客户可以更加直观的观察复制软件运行的状态,管理和配置复制软件进程和参数,及时处理故障和报警,还可以提供与第三方监控软件的接口 | 用户可通过shareplex控制台查看数据复制的各种相关信息,并设定个性化的参数以实现特定的功能,管理方便灵活。可与多种监控平台结合,实现数据复制的实施监控(使用SNMP方式)或者与Quest Foglight监控产品集成,实现监控及报警 | 以前产品运行情况只能通过查看日志了解,停止产品时只能通过kill命令直接杀掉进程;监控产品运行情况有较大难度,目前也启功了GUI工具,不过监控功能有限,还在不断完善中 | |
初始化 | Goldengate可以和oracle数据库实现无缝结合,充分利用oracle的rman,data pump,exp/imp,在保证数据一致性的情况下,可以高速地实现数据初始化。 | Quest也可以利用oracle的exp/imp初始化工具。 | 由于DSG基于rowid实现源和目标的同步,因此必须使用其自己的初始化工具进行初始化 | |
注意 | Oracle GoldenGate有个完整的产品系列,最为常见的包括GoldenGate、GoldenGate Director(现更名为GoldenGate Management Pack,但是熟悉GoldenGate的人还是习惯性地称其为GoldenGate Director,为了保证上下文的一致性,我这里统一称其为GoldenGate Director)、 GoldenGate Veridata。另外,也有我们不大常见的GoldenGate forMainframe,和GoldenGate Adapters。GoldenGate是核心产品,GoldenGate Director为GoldenGate提供友好的GUI配置管理界面,GoldenGate Veridata为GoldenGate源端和目标端提供数据比对和校验的功能。 注意这三者并不是一个打包的产品,比如如果您购买了GoldenGate软件,如果需要图形界面或需要数据校验的功能,就需要额外购买GoldenGate Director或者GoldenGate Veridata,同时Oracle官方网站提供免费的安装包下载,供大家学习使用详细的地址为:http://www.oracle.com/technetwor ... ownloads/index.html |