Disclaimer

The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.

Saturday, May 14, 2011

What's the difference between Active Data Guard and GoldenGate?

Active Data Guard vs Golden Gate?

Active Data Guard (ADG) is a replication technology from Oracle to create exact mirror of one database.
GoldenGate (GG) is a heterogeneous database replication from different database vendors to one or more target repository (Database, File, JMS Queue, etc.).

Summary of the differences between ADG and GG:

Active Data Guard:
- Ship from memory
- Sync or Async
- Simple one way replication
- Standby open read-only
- Zero I/O overhead, near-zero primary performance impact
- Standby database is exact physical replica
- No data type or other restrictions
- Integrated with Oracle Kernel

GoldenGate:
- Read and ship from redo logs (configurable to read directly from table, if necessary)
- Async only
- Advanced, multi-master replication (if conflicts can be avoided or resolved)
- Target database open read-write
- I/O Overhead and capture processing on primary
- Replica is logical copy maintained using SQL
- Data type and other restrictions
- External to Oracle Database

From licensing perspective, GoldenGate bundles Active Data Guard together.

1 comment:

grigorianvlad said...

I have a question about Flashback Data Archive tables in Goldengate replication. Are these tables usually excluded in an extract like "TABLEEXCLUDE .SYS_FBA_*"?
What is the approach for replicating and initial load of Flash Back Data Archive tables?
Here is my problem. I exported a user schema using Oracle DataPump, imported into destination database. GoldenGate abended saying some tables dont exist on dest. I checked tables and there were about 200 tables that were not exported because they are FBDA tables and DataPump just ignores them. So, I recreated them on source with scripts.
So, how is this done? Source and destination have their own FBDA and these tables should not be neither recreated with scripts on dest or replicated? Or they have to be replicated with contents?