1 Reply Latest reply on May 19, 2014 10:37 PM by J.A.

    GoldenGate for application updates?


      We are looking into the possibility of using GoldenGate to reduce/eliminate down time when we have monthly release changes to our applications.  The idea is to allow activity to continue on database 1 version A (current production) while goldengate replicates the data to database 2 version B (soon to be production).  If the new version (B) of the application requires changes to the schemas, transformation rules would be used to convert the version A to version B format.  When version B was ready to become production, all traffic would switch to database 2 version B, there would NOT be 2 versions active at the same time.  Once database 2 version B has gone active we would reverse the replication so the flow was from 2-B to 1-A, once again transformation rules would be applied to data as needed until version 1-A had been upgraded to match version B, then we would switch back to the original database 1 that was now updated to version B.


      Anyone doing this?  While this sounds like GG's wheelhouse, I see issues.

      Doing a switch of traffic from version A to B would be difficult.  With data guard switching traffic is relatively easy, even if that means crashing site A, data guard would route traffic to B (if set up properly).  Golden Gate has no such facility as it is a replication engine not a DR/availability engine.  Thus traffic routing must be done at another level (F5, etc.) so switching from 'side to side' is complex?


      When creating database 2 for the upgrade process, what needs to be included?  Do we build a full copy of database 1 and replicate EVERYTHING from 1 to 2?, or do we just replicate the data used by the application from 1 to 2?  This matters because 'everything' implies integrated capture mode (due to compression, XA transactions, etc.), which I have heard is 'streams behind the scenes' and should be avoided if possible?  Doing selective replication rather than full might allow us to use 'classic' capture mode.


      So, I guess I am looking for folks who are using GG for this application upgrade scenario.  Integrated capture or classic?



        • 1. Re: GoldenGate for application updates?

          Hi there

          You have a lot of variables for your upgrade scenario, you must consider this before choose OGG:

          • Size of your database
          • Number of your schemas and objects
          • Number of transaction per day
          • Some version of OGG doesn't support Clob data types, XML Data Types, etc. You must check this.
          • For a full DB synchronization Oracle recommend using Data Guard.
          • Even if you fulfill all your requirements with OGG, you have to implement a POC (prof of concept) and test your environment 


          I think the most important think is the POC, that's when you realize all the issues for your requirements. Also its very important before you pay something for any product to be sure to fulfill all your requirements and its something manageable for your daily basis.