28
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 更高可用,并有效流动的数据库 Dataguard Goldengate最佳实践 李德鹏 技术经理 北京元鼎时代科技股份有限公司 July 23, 2015 Oracle Confidential – Internal/Restricted/Highly Restricted

更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

  • Upload
    others

  • View
    26

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

更高可用,并有效流动的数据库 Dataguard Goldengate最佳实践

李德鹏 技术经理 北京元鼎时代科技股份有限公司 July 23, 2015

Oracle Confidential – Internal/Restricted/Highly Restricted

Page 2: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

公司简介—关于元鼎

成立日期:2003年,专注于企业信息化建设、从事IT服务11年

注册资本:1200万元人民币

公司员工:182人

分支机构:北京、郑州、上海、广州、大连、济南

北京元鼎时代科技股份有限公司是一家以增值技术服务、IT培训、

行业解决方案、系统集成为核心业务的综合型专业化高科技企业。

我们是国家认定的高新技术企业、重点软件企业。已获得ISO9001、

计算机系统集成三级资质,并于2014在新三板挂牌,证券代码:

831126。

Page 3: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

议程

Dataguard最佳实践

Goldengate最佳实践

Dataguard VS Goldengate

Q&A

1

2

3

4

Oracle Confidential – Internal/Restricted/Highly Restricted 3

Page 4: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard(Disaster Recovery/Data Integration Solutions)

• DataGuard是一种数据库级别的HA方案,最主要功能是容灾、数据保护、故障恢复等。

• 它是在主节点与备用节点间通过日志同步来保证数据的同步,可以实现数据库快速切换与灾难性恢复。Data Guard只是在软件上对数据库进行设置,并不需要额外进行安装。用户能够在对主数据库影响很小的情况下,实现主备数据库的同步。被很多企业用作数据容灾解决方案。

• Oracle Dataguard可以实现主机和数据的双重保护,这是传统的HA软件厂商所不具备的能力。

Oracle Confidential – Internal/Restricted/Highly Restricted 4

Page 5: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard业务场景

实时数据保护和高可用性(同城)

任意距离的零数据丢失保护(远程同步)

Standby数据库实现数据备份

报表分流 — 提高投资回报

实现数据库滚动升级 — 减少计划停机时间

Oracle Confidential – Internal/Restricted/Highly Restricted 5

Page 6: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard 工作原理

最新的物理/逻辑备用数据库

MRP/ LSP RFS

备用

重做

日志

ARCH

存档的

重做日志

存档的重做

日志

主数据库

事务

LGWR

联机

重做

日志

ARCH

Oracle 网络

实时应用

Oracle Confidential – Internal/Restricted/Highly Restricted 6

LNS

Page 7: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard 工作原理-保护模式配置

Oracle Confidential – Internal/Restricted/Highly Restricted 7

最大保护模式 最大可用 最大性能 进程 LGWR LGWR LGWR或ARCH 网络传输模式 SYNC SYNC LGWR时设置ASYNC 磁盘写操作 AFFIRM AFFIRM NOAFFIRM 备用日志 Yes Phycal 备库需要 LGWR和物理需要 备用库类型 Phycal mode Phycal and logical Phycal and logical

Page 8: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard新特性

Far Sync/Fast Sync 实例 Standby级联实时应用 ADG支持全局临时表和序列 Dataguard Broker新特性

Oracle Confidential – Internal/Restricted/Highly Restricted 8

Page 9: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Far sync insance

Oracle Confidential – Internal/Restricted/Highly Restricted 9

SGA LGWR

NSS

Primary

SYNC ASYNC

Online REDO logs

RFS

Far SYNC

Instance

Standby REDO

logs

MRP

Standby

C

o

m

m

i

t

Commit ACK

SGA

Redo Buffer

Page 10: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Fast sync insance

Oracle Confidential – Internal/Restricted/Highly Restricted 10

SGA LGWR

NSS

Primary

SYNC ASYNC

Online REDO logs

RFS

Fast SYNC

Instance

Standby REDO

logs

MRP

Standby

C

o

m

m

i

t

Commit ACK

SGA

Redo Buffer

最大高可用模式支持SYNC+NOAFFIRM

Page 11: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

• 没有物理数据文件.

• RMAN 删除策略可以应用到Far sync实例.

• 支持Redo 压缩.

• Redo的传输方式与普通dataguard一样.

• 需要ADG商业许可. • 只能在最大性能和最大可用模式下使用.

• 主备切换和普通dataguard方式一样

Far Sync实例特点

Oracle Confidential – Internal/Restricted/Highly Restricted 11

Page 12: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

级联 Standby-11G

Oracle Confidential – Internal/Restricted/Highly Restricted 12

• 根据主库日志切换应用重做日志

• 级联Standby总是落后于第一个Standby

SYNC/ASYNC ARCH

Primary Standby1 Standby2

Page 13: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

级联 Standby-12C

Oracle Confidential – Internal/Restricted/Highly Restricted 13

• 第一个Standby可以实现实时传REDO模式.

• 级联Standby无须等待主库日志切换.

Primary Standby1 Standby2

ASYNC SYNC/ASYNC

Page 14: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Active Dataguard – 全局临时表

Oracle Confidential – Internal/Restricted/Highly Restricted 14

• 允许对全局临时表进行DML.

• 临时产生的 UNDO 存在TEMP表空间自身中

• 临时的BLOB和CLOB不被支持.

• 该特性对只读类应用非常有用,可以提高ADG查询速度.

• TEMP_UNDO_ENABLED参数在ADG环境中是被忽略的(默认打开).

Page 15: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 15

Dataguard – Broker新特性

• 数据库校验.

• 日志应用监控.

• 支持12C新特性(配置).

• Far sync Instance

• Fast sync instance

• Real time cascading

• 数据库滚动升级

• 可收集额外的TRACE信息.

Page 16: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 16

DGMGRL>validate database [verbose] database_name;

Example,

DGMGRL> validate database stdby

Database Role:

Primary Database:

Physical standby database

prim

Ready for

Ready for

Flashback

prim:

stdby:

Switchover:

Failover:

Yes

Yes (Primary Running)

Database Status:

On

On

Future

Thread

Log File Groups Configuration:

# Online Redo

(prim)

4

Log Groups Standby Redo

(stdby)

4

Log Groups

1

Dataguard Broker-Validate

Page 17: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

洛阳银行互联网金融项目ADG读写分离

Oracle Confidential – Internal/Restricted/Highly Restricted 17

Page 18: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

中原证券Exadata2-2 & Exadata4-2 Dataguard案例

Oracle Confidential – Internal/Restricted/Highly Restricted 18

持续传输和应用Redo

Active Data Guard

客户2012年采购Exadata2-2,2014年采购Exadata4-2,

未采购4-2前采取DSG数据复制进行数据保护,基于效率、维护、数据一致性考虑将2-2和4-2采用DG进行容灾。

ARCH 100-300G/H

HCC(如果目标端为非Exadata建议采用普通的OLTP压缩)

Page 19: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Goldengate(Disaster Recovery/Data Integration Solutions)

• GoldenGate专注于数据同步领域,是实现数据同步技术的领导者。客户分布在政府、银行、电信、证券、传媒、医疗等行业,大部分客户为全球500强企业,如中国海关总署、中国国家体育总局体彩管理中心。2009年被甲骨文Oracle公司收购。

• GoldenGate软件提供了一个单一的平台,这个平台可以为任何企业环境实现秒一级的灾难备份。GoldenGate是一种基于于日志的结构化数据复制方式,它通过解析源数据库在线日志或归档日志获得数据的增删改变化(数据量只有日志的四分之一左右),再将这些变化应用到目标数据库,实现源数据库与目标数据库同步、双活。

Oracle Confidential – Internal/Restricted/Highly Restricted 19

Page 20: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Goldengate工作原理

Oracle Confidential – Internal/Restricted/Highly Restricted 20

双向

捕获

捕获:通过读叏事务日志,在事务収生时捕获(也可过滤)提交的事务。

队列

队列:准备数据,使数据排入队列以备路由。

传输

传输:分収数据以便路由到目标。

交付

交付:保证事务数据完整,根据需要转换数据。

源Oracle和 非Oracle 数据库

目标Oracle和 非Oracle 数据库

队列

路由:压缩、加密数据以便路由到目标。

LAN/WAN Internet

TCP/IP

Page 21: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

GoldenGate 广泛的业务场景

Oracle Confidential – Internal/Restricted/Highly Restricted 21

基于日志,实时变化数据抓叏

异构的源系统

EDW ODS

EDW

灵活的高可用性

零停机移植和升级/容灾/应急

实时BI/实时DW

全面活劢的

分布数据库

报表数据库

ETL

ODI

查询卸载/分流

数据分布

新DB/ OS/HW/App

全球数据中心

SOA/EDA

Oracle GoldenGate

•降低成本

•减少风险 •获得更高的运行效率

• 标准化的单一的技术解决多种丌

同的需求

• 同时满足系统的连续可用性和报

表/BI系统的实时数据访问的要求

Page 22: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

GoldenGate 常用部署架构

Oracle Confidential – Internal/Restricted/Highly Restricted 22

OLTP OLTP OLTP ODS ODS EDW 查询 / 报表

OLTP Old

OLTP New

分析型

操作型

OLTP Stage OLTP

单向 查询分流

双向 主用/备用戒

主劢-主劢,实现高可用性

集成/整合 实时数据仓库

广播 数据分収

级联式 分布式业务

合幵 实时BI

OLTP OLTP

OLTP OLTP

OLTP

对等 负载平衡/多主分布式

Page 23: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Goldengate DIS业务场景-Real Time Data Integration

Oracle Confidential – Internal/Restricted/Highly Restricted 23

EMP

GoldenGate

ODI

EMP DEPT

DIM

FACT

DIM

DIM DIM

ODS Schema DW Schema

基于磁盘的Log

源 1

源 2

GoldenGate

GoldenGate • 实时抽叏交易数据

• 非入侵式数据捕获

• 连续向ODS Schema加载数据 • 亚秒级延迟

Oracle Data Integrator • 数据仓库的高性能 E-LT工具

• 周期批处理 • 在目标数据库中转换 • 数据丌会反向加载

EMP DEPT

DEPT

基于磁盘的Log

Page 24: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Goldengate 12C新特性

• 安装方式为OUI,支持静默安装

• 提升了捕获的性能,支持内存捕获

• DDL复制支持从redo log capture,Version>=11.2.0.4

• 远程任务增加支持BLOB, CLOB, NCLOB, LONG, UDT, and XML.

• 支持DB 12C 的多租户架构捕获

• enable_goldengate_replication参数,11.2.0.4和12.1.0.2需DB启用

• SOCKSPROXY参数允许您使用新的SOCKS5功能

• CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制

• 与 Oracle Credential Store 和 Oracle Wallet 集成,以存储和检索加密 的用户名和口令。

Oracle Confidential – Internal/Restricted/Highly Restricted 24

Page 25: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

XX电信Power>Exadata采用goldengate迁移案例

Oracle Confidential – Internal/Restricted/Highly Restricted 25

Manager Manager

- Capture / Extract - Delivery / Replicat - Trail

Old System New System Initial Instantiation

Users Testers 1、用户连接到主点,新系统为空, 启劢数据捕获进程,将交易数据存储到队列中

2、在丌影响业务的前提下,可以采用批量数据迁移的方式,将旧系统数据按要求加载到新的数据库系统

3、一旦初始化同步完成,将同步期间积攒的业务数据同步到新系统

4、核对数据,测试用户通过测试确定应用可以在新的数据库系统正常运行 5、一旦测试结束, 启劢新系统向旧系统数据同步过程,用户切换到新系统,同时,升级过程中的数据同步过程停止

Failed-back Data Flow

6、一旦迁移过程中,新系统出现故障 7、访问新系统的用户中断连接,被迫访问旧系统,重新登录后继续操作 8、此时,新系统上的所有数据捕获进程被迫中断,但是旧系统上交付进程继续工作,捕获进程被重新启劢

9、一旦新系统恢复正常状态,将恢复期间旧系统积攒的一些业务数据同步到新系统,直到数据所有数据全部同步

10、此时,用户可以再次连接到新系统进行操作 11.启劢新系统的数据捕获进程,直到新系统真正稳定后,旧系统才会被停止

X

10TB 4小时 Power>Exadata

Page 26: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

国家电网Goldengate for ODS数据仓库案例

Oracle Confidential – Internal/Restricted/Highly Restricted 26

Page 27: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Dataguard VS Goldengate差异

Oracle Confidential – Internal/Restricted/Highly Restricted 27

Oracle DataGuard Oracle GoldenGate

原理 复制归档日志或在线日志 抽取在线日志中的数据变化,转换为GGS自定义的数据格式存放在本地队列或远端队列中

稳定性 作为灾备的稳定性极高 稳定性不如DataGuard

维护 维护简单,极少出现问题 命令行方式,维护较复杂

对象支持 完全支持 Long、LOB、RAW支持不好

备份端可用性 备份端处于恢复或只读状态,11G后支持只读打开及实时应用日志。12C支持global temp table

两端数据库是活动的,备份端可以提供实时的数据查询及报表业务等,可以实现两端数据的同时写入

接管时间 需要进行Switch 可实现立即接管

DIS 比较困难,局限性大 结合ODI、informatic实现数据仓库实时分析

资源占用 复制通过数据库的LGWR进程或ARCN进程完成,占用数据库少量资源

业务高峰时在数据抽取转换时消耗系统资源较多,低峰时占用较小

异构支持 单一数据库解决方案,仅运行在Oracle数据库上,源端和目标端操作系统必须相同,大版本一致。

可以在不同类型和版本的数据库之间进行数据复制。如等。ORACLE,DB2,SYBASE

带宽占用 使用Oracle Net传输日志,可通过高级压缩选项进行压缩,压缩比在2-3倍

利用TCP/IP传输数据变化,集成数据压缩,提供理论可达到9:1压缩比的数据压缩特性

适用场景 容灾、读写分离 数据复制,分发,采集,N+1容灾

Page 28: 更高可用,并有效流动的数据库 - Oracle...•SOCKSPROXY参数允许您使用新的SOCKS5功能 •CAPTUREGLOBALTEMPTABLE,支持全局临时表的DDL提取和复制 •与

Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

关于元鼎科技

Oracle Confidential – Internal/Restricted/Highly Restricted 28

北京元鼎时代科技股份有限公司

地 址:海淀区蓝靛厂东路金源时代商务中心B座6层

总 机:010-52550628

传 真:010-88878521

服务热线:400-007-0628

服务邮箱:[email protected]

网 站: http://www.yuandingit.com

河南分公司

地 址:郑州市高新区牡丹路威科姆大厦A座18F

电 话:0371-53302073

上海分公司

地 址:上海市杨浦区隆昌路619号8号楼北区A09

电 话:021-52968671

深圳分公司

地 址:深圳市南山区南海大道山东大厦B座1604

电 话:0755-86956396