DSGRealSync技术白皮书_第1页
DSGRealSync技术白皮书_第2页
DSGRealSync技术白皮书_第3页
DSGRealSync技术白皮书_第4页
DSGRealSync技术白皮书_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DSG RealSync 技术白皮书技术白皮书 迪思杰(北京)数码技术有限公司迪思杰(北京)数码技术有限公司 目录目录 1为什么需要数据复制为什么需要数据复制.3 1.1信息系统存在的问题及需求.3 1.1.1数据流通效率低下,企业信息孤岛现象严重.3 1.1.2数据报表、查询和数据共享效率低下.3 1.2企业需要新的信息架构.3 2DSG REALSYNC 的技术概览的技术概览.4 2.1采用数据库复制技术.4 2.2DSG REALSYNC的优势概览.4 3REALSYNC 工作原理概述工作原理概述.5 4日志抓取(日志抓取(DATA CAPTURE) .6 5日志分析(日志分析(ANAL

2、YZE) .7 6交易合成(交易合成(SYNTHESIZE) .7 7交易传输交易传输.8 8数据装载数据装载.9 8.1用 DXF 数据格式的装载:.10 8.2ROWID MAPPING实现快速定位.10 9OPS/RAC 的支持的支持 .11 10数据完整性保证数据完整性保证.12 11数据初始化装载数据初始化装载.13 12选择性复制支持选择性复制支持.15 13支持的复制结构支持的复制结构.15 14产品规格产品规格.16 15模块组成模块组成.17 16典型的典型的 FAQ .17 1 为什么需要数据复制为什么需要数据复制 1.1 信息系统存在的问题及需求信息系统存在的问题及需求

3、随着计算机应用系统的爆炸式发展,业务量迅速增加,业务种类日益复杂,企业必须 管理不断增长的信息流量;随着信息量的急剧增大,核心数据的管理变得日益困难。 如何安全、可靠地存储业务数据及满足未来业务数据高速增长的需要;如何有效管理 日益增长的业务数据;如何实现业务数据的共享并在现有业务数据之上建立新兴的增 值应用,如数据仓库、客户关系管理(CRM)等,成为了各企业建立信息系统的关键 所在。 目前,各企业信息系统在数据管理领域存在着普遍的问题: 1.1.1 数据流通效率低下,企业信息孤岛现象严重数据流通效率低下,企业信息孤岛现象严重 信息系统的建设主要是以应用为驱动的,是随着各种业务的逐渐建设的。当

4、出现一类 新的业务时,一般需要为该业务建设一套业务支撑系统,保存与该业务有关的主要数 据。而这些数据可能同时也需要被其他应用所访问。从而自然就形成了各子系统应用 在不同的纵向,管理着不同的业务单元或对象,各个子系统又是相互独立运行,导致 形成了一个个“信息孤岛”。这些系统相互之间没有畅通的信息交流与共享,阻碍了企 业信息化建设的整体进程。 1.1.2 数据报表、查询和数据共享效率低下数据报表、查询和数据共享效率低下 为了提高市场竞争力,提高客户满意度,企业需要更复杂的、更灵活的业务统计报告、 需要深入的数据挖掘、需要实时的客户查询。而这些大量的统计、查询业务收到现有 系统架构的制约,不得不降低

5、效率标准、不得不推迟报告时间、从而导致客户服务质 量降低、业务发展情况报告迟缓,业务发展情况不明等问题。 1.2 企业需要新的信息架构企业需要新的信息架构 因此,各企业比以往任何时候相比,管理和有效使用这些信息系统的能力高低都更能 决定了长期生存和发展能力,因此比以往任何时候,企业都更关注于如下领域: 提高系统运行效率,提高业务报表、提高客户服务质量,并降低客户流失率。 加强企业信息流通、提高企业信息的附加值、进一步挖掘企业信息价值、迅速开 发和推广新业务,创造更多收入并保持竞争能力。 提高信息系统业务连续运行能力,提高数据安全保护水平。 2 DSG RealSync 的技术概览的技术概览 2

6、.1 采用数据库复制技术采用数据库复制技术 与传统的数据复制技术不同,DSG RealSync 技术是针对数据库提供了基于逻辑的交易 复制方式。该方式通过直接捕获源数据库的交易,将数据库的改变逻辑复制到目标系 统数据库中,实现源系统和目标系统数据的一致性。 2.2 DSG RealSync 的优势概览的优势概览 该技术在复制上存在以下几个特点: (1)按需复制)按需复制 查询和统计系统往往不需要所有的原始数据,因此完全可以按需要复制数据。 RealSync 系统支持对指定信息的按需复制,减少存储和网络带宽的成本。 (2)多种同步模式)多种同步模式 DSG RealSync 支持的数据复制模式包

7、括: a.实时复制:实时复制:实时更新保证副本系统快速反映源系统的变化,提供账单查询、话单查 询等的及时性。 c.手工复制:手工复制:支持操作员指定时间对指定表进行一次完全复制; (3)对生产系统的低干扰性)对生产系统的低干扰性 DSG 实时数据复制技术不需要通过任何数据库的引擎来获取变更数据,而是通过数据 库自身的信息获取源系统上的改变并传送给目的系统,不会对生产系统造成性能影响。 (4)系统异构,可提供更多的优化空间)系统异构,可提供更多的优化空间 源数据库系统和目的数据库系统的可异构,主要包括索引规则和存储参数(如数据块 大小、回滚段等) 。 因此可以在目标数据库上根据业务特点进行调整和

8、优化,完全不受源系统的限制。 (5)支持的多种复制策略)支持的多种复制策略 RealSync 可以被灵活配置,以支持各种复制策略,支持各种增值应用,如:1:1 单向 复制;一对多复制;多对一复制等。 3 RealSync 工作原理工作原理概述概述 如上图所示,RealSync 在 Data Source 端和 Data Target 端分别安装 Agent 进程,Source 端的 Agent 进程对 ORACLE 日志进行监控,发现改变及时对目标数据库进行更新。 当应用系统在 Data Source 端向数据库进行任何操作时时,这些信息都将在 Redo Log 中保存,RealSync Ag

9、ent 通过对实时获取的 Log 日志进行分析,获得本次操作的交易 指令和交易数据,然后将这些交易指令和交易数据经过格式转化生成 DXF 数据格式, Source System Analyze Synthesize Export Import Load Transactions Application Application Active DataBase Active DataBase 并实时通过网络传送到 Data Target 系统。 Data Target 系统的 RealSync Agent 接收数据库包,经过校验码检查,确认正确的数据 库包后,调用 Oracle 函数按照交易的先后

10、顺序在 Data Target 系统中执行该交易。 4 日志抓取(日志抓取(Data Capture) RealSync 对数据的抓取是通过安装在 Data Source 端的 Agent 模块定时分析 Oracle Redo Log 来获取 Data Source 端的交易类型及数据的。 RealSync Agent 在判断 Data Source 端的 Oracle 系统是否有新的交易产生时是通过定期 检查 Oracle Controle file 中记录的当前 SCN 号来判断的,这样避免每次检都通过读取 log 文件来判断否有新的交易产生时造成的系统影响。 在 Controle fil

11、e 中确认有新的交易产生时,可以同时获得当前的 Redo Log 组,以及最 新日志在日志文件的最新位置。 RealSync Agent 模块根据这些信息将上次抓取时记录的日志位置与本次读取的最新位 置之间的 Log 读取并加以分析。然后将这些数据保存在 Online Log Cache 文件中,等 待下一步作交易合成处理。 RealSyncRealSync 的优势:的优势: 与其他类似日志复制产品相比,RealSync 对日志进行分析,得到交易信息再进行传送; 而其他类似产品不对日志作分析,传送全部日志,然后在目标端通过日志作 . Control File . 状状态态1 状状态态2 时时间

12、间间间隔隔T(可可任任意意设设置置) Online Redo Group Analyze Module Online Log Cache Recover, 这样一来,不仅传送数据量大,而且目标端数据库不能打开。 5 日志分析(日志分析(Analyze) Oracle 数据库的所有更改都记录在日志中,其中记录了对数据库中的每一个变化。 当我们候需要需要了解数据库中所作的交易时,一个最有效实用而又低成本的方法就 是分析 Oracle 数据库的日志文件。 RealSync Agent 中集成了 DSG 的优秀日志分析功能,该功能完全不同于 oracle 提供的 Logminer 日志分析工具,在性能

13、和功能上都大大提高,主要体现在系统性能的优化上, 大幅度提高日志分析的速度,使得对于高并发业务系统的复制成为可能。按照 RealSync 的日志分析设计目标,每秒能够分析的日志量达到 10M/s。 RealSync 通过对日志的分析,得到该数据库中的每个 SQL 指令,并将这些 SQL 指令 生成 DXF(DSG Extend Format)格式的表达方式。 DXF 格式是 DSG 公司的专有技术,该技术是 DSG 公司用来表达 SQL 指令的方式, 该数据格式能够通过 DSG 的专有转换算法能够直接转换为 ORACL 的内部数据表达格 式,从而在分析和转载时需要最小的转化,提高分析和装载速度

14、,减少资源占用、丰 富能够表达的各种数据类型。 6 交易交易合成(合成(Synthesize) 通过 ORACLE REDO LOG 分析的交易指令存在如下的几个特点: (1)这些指令是交叉出现的,属于一个交易(Transaction)的多条 SQL 指令是非连 续存储的,多个交易的 SQL 之间是相互穿插的; (2)Redo log 中记录了所有的 commit 的交易以及没有 commit 的交易; 所以,为了提高系统的可控制性、保证逻辑完整性、避免数据丢失,最好将复制的最 小单位为一个交易(Transaction) ,而不是以单个 SQL 指令为复制单位,这样在 Data Target

15、端的交易装载更加容易控制。 同时,对于复制的数据而言,只有那些 Commit 的数据对于 Data Target 端系统是有意 义的,而对于那些 Rollback 的数据无需复制到 Data target 系统上。 所以 RealSync 在复制过程中不是复制每个 SQL 语句,而是对抓取的数据进行交易整 合后以交易(Transaction)为单位进行复制,同时只复制 COMMIT 的交易。 如上图所示,在 Online Log Cache 文件中,包括 Commit 的交易,没有 Commit 的交易 和 Rollback 的交易。交易合成模块首先按照交易序号对 SOL 语句进行划分,每个交

16、易 包含多条 SOL 语句。然后,以交易为单位进行处理,将已经 Commit 的交易,传至传 输处理模块;将未提交的交易保存在本地,一旦通过日志得知保存的未提交交易已提 交,立即将该交易发送到传输处理模块;对 Rollback 的交易作丢弃处理。 RealSyncRealSync 的优势:的优势: RealSync 是以交易为单位进行传输的,而不是以 SOL 语句为单位进行传输的,更容易 保证数据的一致性和完整性。 7 交易传输交易传输 RealSync 技术为了保证数据传输的安全、可靠,在传输处理上作了特殊的处理与支持: (1)数据在传输之前首先存入 Data Source 端的 Cache

17、,传输进程(Export Process)从 Cache 中读取交易数据封装为 TCP/IP 数据包传送给 Data target 端 的 Import 进程。 Online Log Cache T1/SQL1 T2/SQL1 T1/SQL2 T1/SQL3 T2/SQL2 T1 COMMIT T3/SQL1 T2 COMMIT T3 Rollback T2 T1 丢丢弃弃 传传输输 Synthesize Module (2)在 data target 端,Import 进程在收到传输的交易数据包后,首先存入 Queue,然 后由 Load 进程从 Queue 中严格按照交易的顺序装载交易信息

18、。 如上图所示,负责传输的进程(Export Process)从本地队列中按照先进先出的原则抓 取需要传输的交易,将交易数据封装成一个数据包后通过 TCP/IP 协议传递给对端系统。 在封装的数据包的包头部分描述了包的大小。 对端系统在接受到传来的数据包后,首先根据包头描述的包大小进行传输的合法性检 查,判断是否传输完整。 8 数据装载数据装载 在传统的复制技术中,常用的数据装载方式是采用 Oracle 的 SQL 接口,通过 Insert、Update、Delete 等 SQL 语句实现数据的装载。这种方式在通用性上很好,但关 键在于性能问题非常突出。 SQL 语句的执行需要经过 parse

19、、plan、格式转换等过程,造成大量的系统开销。尤其 是 update 和 Delte 操作的大量 Where 子句操作需要进行复杂的查询定位任务,从而导 致装载性能低下,对处理能力的要求比生产系统的还高。 DSG RealSync 在设计之初就定位于电信级大数据量系统的应用,因此在装载性能上进 行了大幅度的改善,使得装载端的性能和处理能力需求降至最低。 在其中 DSG RealSync 采用了两个关键的技术提高了装载速度: (1)采用 DXF 数据格式的装载; (2)采用 Rowid mapping 的方式实现快速定位; Capture Process Export Process Impo

20、rt Process 10 11 12 13 14 15 16 10 11 12 13 14 15 16 17 Queue 10 11 12 13 14 15 16 10 11 12 13 14 15 16 17 Post Process 10 11 12 13 14 15 16 10 11 12 13 14 15 16 17 Queue HeaderBody 8.1 用用 DXF 数据格式的装载:数据格式的装载: DXF(DSG Extend Format)格式是 DSG 公司的专有技术,该技术是 DSG 公司用来表 达 SQL 指令的方式,该数据格式能够通过 DSG 的专有转换算法能够直接

21、转换为 ORACL 的内部数据表达格式,从而在分析和转载时需要最小的转化,提高分析和装 载速度,减少资源占用、丰富 sql 语句的表达方式。 Oracle 数据库系统在设计上提供了 4 个层次的接口,其中包括 User 层,SQL 层, Transformation 层和 I/O 层。其结构为: 在这四层当中,当采用 SQL 接口进行数据装载时,调用的是 User 层, 而 DSG RealSync 通过 DXF 数据格式装载时,调用 I/O 层直接将数据通过 Oracle 的最 底层函数写入系统中,所以 DSG RealSync 在装载层上有一定优势; 8.2 Row mapping 实现快

22、速定位实现快速定位 对于交易中的操作,存在着大量的 Where 子句操作,在采用标准 SQL 语句执行这些 操作时,系统需要首先定位目标记录所在的数据文件的位置信息,这将带来大量的索 引查询开销,当并发执行数千条指令时,系统的开销将变得非常庞大。 DSG RealSync 工具不采用该方式实现装载数据的定位,而是通过 ROW Mapping 的方 式实现记录的快速定位: USER SQL Transformation I/O 当 RealSync 从源端 Log 文件中读取交易数据时,将获得该交易对应记录的所在位置, 用 rowid 表示为 rowid_ds; 当该交易在目标端装载时,系统不翻

23、译为 Where 子句,而是去通过保存在目标端的 row mapping 表获得对应目标端该记录的所在位置 rowid,记录为 rowid_dt。 从而在目标端装载时通过 rowid 能够直接定位于该数据需要写入的位置。避免了大量 的索引查找时间。 每条记录的 row mapping 信息是在该记录执行 insert 操作、sql loader 或首次批量同步 时建立起来的。 RealSyncRealSync 的优势:的优势: DSG 扩展格式 DXF(DSG Extend Format)是 RealSync 产品的一个核心技术,是一种最 高效率表示 ORACLE 记录的数据格式,该格式只需要

24、经过最小的转换过程就能够装载 到 ORACLE 数据库中,并且装载效率非常高。 无需标准 SQL 语句执行的复杂过程 加快装载速度 对于 Update,Delete 等带 Where 子句的交易,可以大幅度提高装载速度 9 OPS/RAC 的支持的支持 Oracle OPS/RAC 是一种多实例同时打开同一个数据库的技术,每个实例共享同一份数 据文件和控制文件(控制文件可能有多个,但是内容相同,为每个实例所共享) 。一个 例外是,每个实例的 Redo Log 都专属于该实例(如下图所示) ,但每个实例的所有 Redo Log 都必须能够被其他实例访问。所有实例的 Redo Log 一般都保存在

25、共享磁盘 中(裸设备或集群文件系统) 。 在 OPS/RAC 的环境下,RealSync Agent 需要安装在 OPS/RAC 一个节点上,RealSync Agent 通过控制文件得到每个实例的 Redo Log 配置,并实时跟踪每个实例的 Redo Thread 产生的日志,分析日志并将提交的交易发送的目标系统。 在 OPS/RAC 环境下,多个实例共用一套 SCN,每个实例对数据的修改都会引起 SCN 的递增改变,RealSync 通过 SCN 在目标端顺序提交交易,来保证数据库的一致。 10数据完整性保证数据完整性保证 RealSync 复制软件保证数据的一致性和完整性的保证主要通过

26、以下几个方面: 保证交易先后顺序:保证交易先后顺序: 保证交易的先后顺序:严格按照源端 Transaction 执行顺序在目标端加载,严格的 I/O 顺序是保证系统逻辑正确的关键因素,RealSync 通过对 Transaction 的 SCN 号进行判 断,并严格保证源系统上先 Commit 的交易在目标端也是先装载。 检查日志跟踪的连续性:检查日志跟踪的连续性: 检查日志跟踪的连续性:RealSync 在每次 log 读取结束时,都将记录当前读取的日志 的 Sequence No,Block No 和最后读取的 Offset,当下次读取文件时,总是需要检查是 否和上次读取的位置严格连续,从

27、而保证对日志分析的完整性。 数据一致性检查:数据一致性检查: 数据一致性检查:RealSync 提供数据一致性检查工具,用来比较源端的记录和目标端 的记录是否完全一致。如果出现数据不一致,RealSync 将对不一致的部分进行修复。 11数据初始化装载数据初始化装载 当系统在初始化过程,或需要重新完成批量数据复制时,RealSync 除支持最常用的存 储拷贝作全同步以外,还提供了逻辑的高速复制功能: DSG 复制功能是对数据实行导出、导入的方式实现的,但该实现不是通过 oracle export 和 import 工具,而是利用 DSG RealSync 中内置的 XEXP/XIMP 工具实现

28、的。 其过程不是对数据库底层的存储数据块进行复制,而是将源系统上的已有数据记录从 datafile 中直接读取并解析成为 DXF 数据格式,在利用 XIMP 将 DXF 数据批量快速装 载到 Data target 系统上。 RealSync 调用 Oracle 的 I/O 层的 API 接口批量读取一张表(Table)的记录(每次读多 少条是由操作员设定的 RealSync 系统的 Buffer 决定的,如果一次读不完,则分为多次 读取) ,然后将读取的记录转化为 DXF 格式,再将 DXF 格式表示的一批记录传送到目 标端的 RealSync Agent 进程,目标端进程再调用 ORACL

29、E 的 I/O 层的 API 接口将数据 批量写入目标系统中。 对于一个数据库而言,其中有许多张表(Table) ,RealSync 依次将每张表的所有数据 按照上述原理复制到目标系统中。 对于 xexp 导出过程不是通过 Oracle 的标准 select 接口,所以其导出速度非常快。 同时,在采用 DSG RealSync 实现批量数据装载时,还无需停止源系统上的业务流程。 那么 RealSync 是如何处理在导出过程中新改变的数据的复制呢? 因此,RealSync 还支持第二阶段的增量数据复制: 当上个步骤的大批量数据完成后,RealSync 再将步骤一过程中新增加的交易重新复制 到目标

30、系统。 在过程的工作原理是通过跟踪和分析从上个步骤开始时的所有 redo.log 信息,从 Log 文件中分析和翻译出这段时间内新增加的记录,然后再将记录在目标系统上插入。 如果在该过程中复制的数据在目标表中已经存在,则 RealSync 将首先删除目标系统中 的该记录,同时插入新复制的记录。 在这两个过程执行过程中,生产系统的业务可以保持运行状态。无需中断业务。 USER SQL Transformation I/O DSG XEXP 10 11 12 13 14 15 16 10 11 12 13 14 15 16 17 DXF DSG XIMP I/O Oracle Log Log An

31、alyze 18 19 20 21 22 23 24 DXF DSG Load 增增量量数数据据复复制制 Oracle Log Log Analyze 18 19 20 21 22 23 24 DXF DSG Load Oracle Log Log Analyze 18 19 20 21 22 23 24 18 19 20 21 22 23 24 DXF DSG Load 增增量量数数据据复复制制 I/O 12支持的复制结构支持的复制结构 RealSync 可以被灵活配置,以支持各种复制策略,支持各种增值应用。如: 单向复制: 从一个数据库向另一个数据库复制; 双向复制: 两个数据库进行互相复

32、制; 广播复制: 由一个数据库向多个数据库复制; 集中复制: 由多个数据库向一个数据库复制; 级联复制: 由 A 数据库向 B 数据库复制,同时 又由 B 数据库向 C 数据库进行复制。 13产品规格产品规格 特性特性描述描述 工作方式工作方式Transaction-Based 数据复制 目标系统支持的操作目标系统支持 Read-Write 操作 支持数据库版本Oracle 8i Oracle 11g 版本 支持数据类型支持 Oracle Data Type 支持复制操作类型DML 语句 可选择性复制选择整库、user、表为复制单位 支持的硬件平台Sun, HP, IBM, x86 支持的操作系统Solaris, AIX, HP-UX, Linux,Windows NT/2000 支持的存储系统EMC,IBM,HDS、HP、SUN 以及其它通用的 SCSI/FC 存 储系统 支持多种复制结构一对一,双向,一对多,多对一 复制时间间隔可灵活设置 最大距离没有限制 对系统性能的影响对主系统 CPU 占用率在 5%。左右 14模块组成模块组成 RealSync for Production Server: 安装在源系统(Data Source)上运行数据库实例的服务器上

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论