Converting Oracle CDC to GoldenGate

As database and data integration technology evolves, we find that our customers are frequently tasked with upgrading legacy technology to modern technology such as converting Oracle CDC to GoldenGate.  We were recently engaged to do a consulting engagement to help a customer with upgrading to Oracle 12c from Oracle 11g.  One of the issues of this upgrade was the fact that they are running Oracle CDC which has been deprecated and de-supported in Oracle 12c.  The solution to both problems is converting Oracle CDC to GoldenGate.  The solution was to take a pair of databases; OLTP and Data Warehouse that used CDC for data loading and replace with a pair of systems running Oracle GoldenGate.  In addition, GoldenGate is used to upgrade from 11g to 12c.

To require as few changes as possible we setup GoldenGate between the OLTP and Data Warehouse to mimic CDC by loading staging tables and replacing the CDC extend_window and purge_window functions with our own package.  In researching converting Oracle CDC to GoldenGate, we found a few blogs and presentations on the internet that showed how to do this, but it turned out that every doc we found had one or two major mistakes that had to be fixed.  Through testing and documentation we were able to develop a workable process for converting Oracle CDC to GoldenGate for this environment.  Once the CDC process was put in place and tested we were ready to test our first migration.

It was desired to do a near-zero downtime migration we had to figure out how to synchronize everything but it turned out that some downtime would be required.  This is purely for synchronization purposes.  To synchronize properly the OLTP and Data Warehouse databases needed to be quiesced and the CDC queues cleared out and ETL run.  Once everything was quiet, an SCN was taken from the OLTP and DW systems to be used for Data Pump export using FLASHBACK_SCN.  This allowed both OLTP and DW to be synchronized.

As with any GoldenGate migration we started the 11g to 12c extract prior to the exports.  Once the imports had been completed the GoldenGate between 12c OLTP and 12c DW was started prior to the replication between 11g OLTP and 12c OLTP.  It was setup so that any data replicated to the 12c OLTP system was replicated to 12c DW (where appropriate).  Thus, the 11g OLTP and 12c OLTP systems were kept in sync via GoldenGate and any data loaded into the 11g DW via CDC was equivalently loaded into the 12c DW via GoldenGate.

At cutover it is just a matter of moving the application servers from 11g to 12c.  During the testing phase the 12c DW system could be used directly for queries, but the 12c OLTP system was restricted to queries only.  No data could be updated on the 12c OLTP system outside of GoldenGate replication.

This process allowed for both a process for converting Oracle CDC to GoldenGate as well as a short-downtime upgrade/migration as well.  We have successfully done this process for our customer.  We can help you with the CDC replacement as well.

By |2018-08-06T13:43:54+00:00August 6th, 2018|Uncategorized|Comments Off on Converting Oracle CDC to GoldenGate