搜档网
当前位置:搜档网 › 基于Oracle Golden Gate的异构数据库实时同步研究与应用

基于Oracle Golden Gate的异构数据库实时同步研究与应用

基于Oracle Golden Gate的异构数据库实时同步研究与应用
基于Oracle Golden Gate的异构数据库实时同步研究与应用

2019年第6期147

研究与探讨

信息技术与信息化

基于Oracle GoldenGate 的异构数据库实时同步研究

与应用

卓凤艳* 崔 巍 姜娜娜 王 凡

ZHUO Feng-yan CUI Wei JIANG Na-na WANG Fan

摘 要 “宁夏气象基础数据综合监控系统”是一套用于对气象资料收集、处理、传输及共享全流程进行监控和

告警的实时业务监视平台,其监视信息主要来源于各业务系统运行日志,因此需要采用一种高效实时的且能够跨操作系统及数据库平台的数据同步技术,实现监控系统的数据收集。Oracle GoldenGate 提供异构系统间基于日志的实时数据同步,使用此技术,可实现经济高效、低影响的实时数据集成和持续可用性解决方案。

关键词 Oracle GoldenGate;数据库;异构;实时;同步

doi:10.3969/j.issn.1672-9528.2019.06.047

* 中国气象局旱区特色农业气象灾害监测预警与风险管理重点实验室 宁夏银川 750002

0 引言

近年来,气象业务现代化建设逐步发展,在气象资料收集、处理、传输及共享业务全流程中涉及到的业务系统越来越多,运行监控人员需要对各业务系统资料的接入、转发、处理及系统运行情况进行监控。“宁夏气象基础数据综合监控系统”(以下简称监控系统)是宁夏气象局建设的用于对

气象资料收集、处理、传输及共享全流程进行监控和告警的实时监视系统,其监视信息主要来源于各业务系统运行日志和数据传输日志。监控系统每天需要从各业务系统获取的大量的监控信息,这就要求我们必须采用适当的技术手段和方法,以满足监控系统对异构数据库高时效性数据同步的需求。1 设计思路

监视系统数据来源于各业务系统运行日志,源数据库平台包括SQL SERVER、MYSQL 和ORALCE 等,监控数据库采用MYSQL 数据库,对于数据同步需求主要包括以下几方面:①数据同步时效高,能够实现每秒钟500条以上数据同步速度;②支持在多种操作系统及数据库平台进行数据同步,主要包括SQL SERVER、MYSQL 和ORALCE 等;③支持多对一的数据同步拓扑结构,可实现多数据源数据同步至目标数据库。④支持数据库系统双活,即源数据库与目的数据库同时承担用户业务。综合分析本监控系统功能及性能需求,及数据同步的高时效性、可靠性及跨平台能力需求,选择 O racle GoldenGate(以下简称 OGG)来实现系统日志信息实时同步。

2 OGG 技术介绍

OGG 软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。Oracle Golden Gate 可以在异构的IT 基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,同时,Oracle Golden Gate 可以实现一对一、广播(一对多)、聚合(多对一)、双向、点对点、级联等多种灵活的拓扑结构。

OGG 进程包括:管理进程(Manager)、捕获进程(Extract)、数据泵进程(Data pump)、交付进程(Replicat)。其中,Manager 是 OGG 的主控进程,运行在源端和目的端,用于管理捕获进程和交付进程;Extract 在源端数据库读取在线日志( O nline Redo Log)或归档日志(Archive Log)并进行解析,提取其中与数据变化相关的如增、删、改等操作,并将相关信息转换为OGG 自定义格式数据,如果设置了Data pump 进程,则写入本地队列文件中,利用Data pump 进程将队列文件通过网络传送到目的端,否则直接通过网络写入目的端远程队列,Extract 在每次读完log 中的数据变化并在数据传送到目标系统后,会写检查点,记录当前完成捕捉的log 位置,检查点的存在可以使Extract 在中止并恢复后可从检查点位置继续复制。目标端OGG Replicat 从队列中读取数据变化并创建对应的SQL 语句,提交到目标数据库,成功后更新自己的检查点,记录已经完成复制的位置,数据的复制过程最终完成。

3 实施过程

以OGG 实现数据库数据同步主要包括三个步骤,分别为:

相关主题