zoukankan      html  css  js  c++  java
  • GoldenGate 基础架构

    一.Goldengate 产品家庭

    •  Goldengate:核心产品 
    •  Goldengate Director :现已更名为Goldengate Management Pack,为Goldengate提供友好的GUI配置管理界面。 
    •  Goldengate Veridata :为Goldengate源端和目标端提供数据比对和校验的功能

      注意:这三个产品并不是一个打包的产品,需分开单独购买

    二.GoldenGate的技术架构

      和传统的逻辑复制一样,Oracle GoldenGate实现原理是通过抽取源端的redo log或者archive log,然后通过TCP/IP投递到目标端,最后解析还原应用到目标端,使目标端实现同源端数据同步。下图展示了Oracle GoldenGate的技术架构。

    2.1 Manager进程   

      Manager进程是GoldenGate的控制进程。Manager进程运行在源端和目标端上,它主要有以下几个方面的作用:启动、 监控、重启GoldenGate的其他进程,报告错误及事件,分配数据存储空间,发布阈值报告等。 每个源端或者目标端有且 只能存在一个Manager进程。其运行状态有两种即RUNNING(正在运行)和STOPPED(已经停止)。

    2.2 Extract进程  

      Extract进程运行在数据库源端,负责从源端数据表或者日志中捕获数据。 在早期的GoldenGate版本中,它通常被称为 Collect进程。按照其所属的阶段不同,Extract的作用可以按照时间来划分:

    •  在初始数据装载阶段,Extract进程直接从源端的数据表中抽取所有数据。
    •  初始数据同步完成以后,Extract进程负责捕获源端数据的变化(DML和DDL)。

       Extract进程利用其内在的checkpoint机制,周期性地检查并记录其读写的位置,通常是写入到一个本地的trail文件。这 种机制是为了保证如果Extract进程终止或者操作系统宕机,重新启动Extract进程后,GoldenGate能够恢复到以前的状态, 从上一个断点处继续往下运行,而不会有任何数据损失。extract进程会优选online log。  

      其运行状态包括STOPPED(正常停止)、STARTING(正在启动)、RUNNING(正在运行)、ABENDED(Abnomal End的缩写,表示异常结束)。

    2.3 Pump进程  

      Pump进程运行在数据库源端,其作用非常简单。 如果源端使用了本地的trail文件,那么Pump进程就会把trail以数据块的形式通过TCP/IP协议发送到目标端,这通常也是推荐的方式。  Pump进程本质是Extract进程的一种特殊形式,如果不使用trail文件,那么就是Extract进程在抽取完数据以后,直接投递到目标端。

      与Pump进程相对应的叫做Server Collector进程,这个进程不需要关注,因为在实际的操作中无需任何配置,所以它是透明的。它运行在目标端,其任务就是把Extract/Pump投递过来的数据块重新组装成trail文件,人们称之为远程trail文件。

    2.4 Trail文件

      为了更有效的、更安全的把数据库事务信息从源端投递到目标端,GoldenGate引进trail文件的概念。前面提到的Extract抽取完数据之后,GoldenGate会将抽取的事务信息转化成的一种GoldenGate专有格式的文件,源、目标两端都会存在这种文件,源端存放的trail文件叫本地trail文件,目标端存放的trail文件叫远程trail文件。 

      trail文件存在的目的旨在防止单点故障,将事务信息持久化,并且使用checkpoint机制来记录其读写位置。如果故障发生,则数据可以根据checkpoint记录的位置来重传。 
     Trail文件并不总是必须的。人们可以在配置Extract进程的时候通过TCP/IP协议直接把日志的信息投递到目标端。但是并不推荐这么做,因为一旦发生系统宕机或者网络故障,则有可能造成数据的丢失。

    2.5 Replicat进程

      Replicat进程,通常把它叫做应用进程。运行在目标端,是数据传递的最后一站,负责读取目标端trail文件中的内容,并将其解析为DML或DDL语句,然后应用到目标数据库中。  和Extract进程一样,Replicat也有其内部的checkpoint机制,保证进程重新启动后可以从上次记录的位置开始恢复,而无数据损失的风险。  它的运行状态和Extract进程一致,包括STOPPED、STARTING、RUNNING、ABENDED。

    三.GoldenGate的目录

     ----整理自网络

  • 相关阅读:
    Noe4j启动警告
    SpringBoot
    MySQL数据库 java SQL语句区分大小写分析
    day24 模块的语法
    day23 re模块
    day22 常用模块02 序列化
    day21 常用模块01
    day20 面向对象06 MRO和C3算法
    day19 面向对象05 约束
    day18 面向对象04 反射
  • 原文地址:https://www.cnblogs.com/polestar/p/4252123.html
Copyright © 2011-2022 走看看