Download ppt - Oracle Golden Gate

Transcript
Page 1: Oracle Golden Gate

Oracle GoldenGate :::::::::Overview:::::::::::

Sreenivaas BolisettyFor more info : [email protected]

Page 2: Oracle Golden Gate

Agenda

Oracle Golden Gate

Overview

Deep-dive Architecture

Demo

Page 3: Oracle Golden Gate

• Oracle GoldenGate provides real-time data integration to support high availability capabilities across heterogeneous systems to achieve business continuity.

• GoldenGate provides the ability to capture and deliver updates of critical data as the changes occur and provide continuous synchronized data across heterogeneous environments.

• Use Cases: Online banking, Claims processing and Online shopping can use GoldenGate to operate without any disruption.

Overview of Oracle Golden Gate

Page 4: Oracle Golden Gate

Overview of Golden Gate … Contd.

Log Based, Real-Time Change Data Capture

Heterogeneous Source Systems

EDWODS

EDW

Active-Active HighAvailability

Zero Downtime Migration and Upgrades

Real-time BI

Fully Active Distributed Database

ReportingDatabase

ETL

ETL

Query Offloading

Data Distribution

New DB/OS/HW/App

Global Data Centers

SOA/EDA

GoldenGate

Provides Low-impact capture Routing Transformation and Delivery of transactional data across Heterogeneous environments in Real time

Key Features

Non-intrusive, low-impact, sub-second latency

Open, modular architecture - Supports heterogeneous sources and targets

Maintains transactional integrity - Resilient against interruptions and failures

Performance

Flexible / Extensible

Reliable

Page 5: Oracle Golden Gate

Oracle GoldenGate

LAN/WANInternet

TCP/IP

CaptureTrail

Pump DeliveryTrail

Trail: stages and queues data for routing.

Pump: distributes data for routing to target(s). Route: data is compressed, encrypted for routing to target(s).

Delivery: applies data with transaction integrity, transforming the data as required.

SourceOracle & Non-OracleDatabase(s)

TargetOracle & Non-OracleDatabase(s)

Capture: Committed transactions are captured (and can be filtered) real time, from the DB Redo logs.

Page 6: Oracle Golden Gate

Oracle GoldenGate

LAN/WANInternet

TCP/IP

CaptureTrail

Pump Delivery (SQL)Trail

Trail: stages and queues data for routing.

Pump: distributes data for routing to target(s). Route: data is compressed, encrypted for routing to target(s).

Delivery: applies data with transaction integrity, transforming the data as required.

SourceOracle & Non-OracleDatabase(s)

TargetDatabase(s)Bi-directional

Capture: Committed transactions are captured (and can be filtered) real time, from the DB Redo logs.

Page 7: Oracle Golden Gate

GoldenGate Deployment Topologies

Unidirectional Query OffloadingZero-Downtime Migration

Bi-DirectionalHot Standby orActive-Active for HA

Peer-to-PeerLoad Balancing, Multi-Master

Broadcast /Fan-out Data Distribution

Integration/Consolidation/Fan-inData Warehouse

Data Distribution via Messaging

BPM

Page 8: Oracle Golden Gate

Architecture Components (Processes) • Log-based• VAM-based• Local/Remote Queuing• Filtering• Parallel Coordination• Local/Remote

• Native database API• ODBC• Batched Operations• Filtering• Transaction/Operations Grouping• Parallel Coordination• Local/Remote

CAPTURE DELIVERY

PUMP (routes from one side to other) MANAGER (Start/Stop/Report on thresholds, trail purging etc.)

• Filtering• Local/Remote• TCP/IP• Compression• Encryption

• Queue (Trail) Management• Process Management (Dynamic)• Monitoring and Administration (Lag reports)• Reporting (Events, Errors, Thresholds)• Receive/Route requests from UI

On-disk Components

• Trail Files• Checkpoint Files (Capture, Pump, Delivery)• Data Definition Files (SOURCEDEFS/TARGETDEFS)• Configuration Files• Discard Files• Report/Log Files• Executables

Page 9: Oracle Golden Gate

TargetSource

TCP/IP

Network

Process StartShared Memory (for Monitoring)

TargetDatabase

Capture DeliveryPumpSource Trail Target TrailCollector

GGSCIInteractiveInterface

Manager ManagerGGSCIInteractiveInterface

Oracle GoldenGate Components Communications and Startup

Page 10: Oracle Golden Gate

Capture

Memory Manager

Database Access – To gather Metadata (to interpret log data) & for SQL interface for data lookup, advanced filtering etc.

Redo API(Log reader interface)

Metadata Manager

SQL Interface

FilteringFormatting Transformation and Mapping

Checkpoint Manager

Transformation Engine

Serialization and Routing

Messaging Subsystem

Transaction Log Reader

Transaction Logs

GoldenGate Trail Files

GoldenGate Event Log

GoldenGate Checkpoint File

Parser

GoldenGate Parameter File

Command and Control

GoldenGate Command Interpreter

Metadata Manager

Source Database

GoldenGate Capture

Page 11: Oracle Golden Gate

Delivery

Memory Manager

Database Access – For Metadata access & SQL interface

Read API

SQL Interface

FilteringFormatting Transformation and Mapping

Checkpoint Manager

Transformation Engine

SQL Generation

Messaging Subsystem

GoldenGate Trail Reader

GoldenGate Event Log

GoldenGate Checkpoint File

Parser

GoldenGate Parameter File

GoldenGate Command Interpreter

Command and Control

Metadata Manager

GoldenGate Trail Files

Target Database

GoldenGate Delivery

Page 12: Oracle Golden Gate

GoldenGate InstantiationStart delivery at or after given backup CSN (245 in this case)

Current source Commit Sequence Number (CSN) is 356

Once Delivery is current the source and target are in sync

Capture DeliveryPumpCommit Ordered Source Trail

Commit Ordered Target Trail

SourceDatabase

TargetDatabase

CSNs 222 through 356

Deliver transactions after CSN 245

Current CSN is 356

Consistent as of CSN 356In Sync!

Take Backup as of CSN 245

Apply Backup as of CSN 245

Page 13: Oracle Golden Gate

Initial Data LoadSource:

Create the Initial data extract process ‘load1′

ADD EXTRACT load1, SOURCEISTABLE

Create Parameter file for Load1: Edit params load1

Target:

Create initial data load task ‘load2’

ADD REPLICAT load2, SPECIALRUN

Create Parameter file for Load2: Edit params load2

Start Initial Load:

START EXTRACT load1

INFO EXTRACT load1

Page 14: Oracle Golden Gate

Online Change Synchronization1. Create a GoldenGate Checkpoint table

EDIT PARAMS ./GLOBALS

GGSCHEMA GGS_OWNERCHECKPOINTTABLE GGS_OWNER.CHKPTAB

DBLOGIN USERID ggs_owner, PASSWORD ggs_ownerADD CHECKPOINTTABLE GGS_OWNER.CHKPTAB

2. Create an Extract groups on Source

ADD EXTRACT ext1, TRANLOG, BEGIN NOW

ADD EXTRACT dpump, EXTTRAILSOURCE /ora/app/stage/GoldenGate-Zip/ggs/dirdat/lt

1. Create a parameter file for the online Extract group

EDIT PARAMS ext1

2. Create a Trail on Source & Target

On the source/target system, the trail files will be created having a prefix ‘rt’/’lt’ which will be used by the Replicat/Extract processes also running on the target /source system(s)

ADD EXTTRAIL /ora/app/stage/GoldenGate-Zip/ggs/dirdat/lt, EXTRACT EXT1

ADD RMTTRAIL /ora/app/stage/GoldenGate-Zip/ggs/dirdat/rt, EXTRACT dpump

1. Create a Replicat group on the Target

1. ADD REPLICAT rep1, exttrail /ora/app/stage/GoldenGate-Zip/ggs/dirdat/rt, checkpointtable chkptab

• Create a parameter file for the online Replicat group

EDIT PARAMS rep1

Start Online Change Sync: START EXTRACT ext1

START EXTRACT dpump

START REPLICAT rep1

Page 15: Oracle Golden Gate

Significance of Data PumpWhen Data Pump is not used, the Extract process writes to a remote trail that is located on the target system using TCP/IP

When Data Pump is configured, Extract process writes to a local trail for Data Pump to read and write over the network to the remote trail located on the target system

The advantages of Data Pump can be seen as it protects against a network failure as in the absence of a storage device on the local system, the Extract process writes data into memory before the same is sent over the network

Any failures in the network could then cause the Extract process to abort (“abend”)

Additionally, if there are any complex data transformations or filtering, Data Pump can be used to perform these