CDC III. – szinkron vs. aszinkron módok
2008. április 5., szombat by Zoltan Tanczos
Szinkron CDC
Szinkron CDC-nél a forrás-táblákra elhelyezett DML triggerek segítségével lehet a változásokat nyomon követni. Emiatt a változások azonnal bekerülnek a change table-be, amint a tranzakciók befejeződtek. Ennek megfelelően a CDC-ből adódó extra terhelés a forrás-adatbázist súlytja (triggerek végrehajtási ideje + a change table-k is a forrás-adatbázisban helyezkednek el).
Ennél a módnál csak egy előre definiált change source létezik: SYNC_SOURCE, ezt nem lehet megváltoztatni, vagy letörölni.
Aszinkron CDC
Az aszinkron CDC a forrás-adatbázis redo log file-jaiból szerzi meg a megváltozott adatokat, ezért a loggolás miatti terhelés a forrás-adatbázist terheli.
Aszinkron HotLog
Aszinkron HotLog módban az on-line redo log file-ból lehet a változásokat kigyűjteni, kis késéssel a tranzakciók jóváhagyása után. A change table-k a forrás-adatbázisban kell, hogy elhelyezkedjenek.
A loggoló processz (Logwriter process, LGWR) feljegyzéseit a CDC az Oracle Streams technológia segítségével dolgozza fel.
Ennél a módnál is csak egyetlen, előre definiált change source létezik: HOTLOG_SOURCE.
Aszinkron Distributed HotLog
Elosztott HotLog módban a CDC tevékenységek fel lettek osztva a forrás-adatbázis és a staging adatbázis között: a change source-ok a forrás-adatbázisban definiáltak, míg a change set-ek már a staging adatbázisban, tehát a változásokat tartalmazó change table-k így lehetnek akár más hardveren is, az adatbázis verziója sem kell, hogy megegyezzen. A két rendszer között a kommunikáció az Oracle Net protokollon keresztül zajlik.
Ennél a módnál két publisher beállítása is szükséges: egy a forrás-adatbázison, egy pedig a staging-en.
Aszinkron AutoLog
AutoLog módban a Redo transport services által felügyelt redo log file-okból kerülnek kigyűjtésre a megváltozott adatok. Ez a szolgáltatás automatikusan átmásolja az on-line vagy archivált log fájlokat a forrás-adatbázisból a staging területre, ami lehet egy távoli gépen, viszont a futtatott operációs rendszer és adatbázis verzió meg kell, hogy egyezzen.
A megfelelő mód kiválasztásában az alábbi szempontok fontosak:
A staging terület távoli gépen van-e (Async distr. hotlog, autolog online/archive) vagy sem (sync, async hotlog).
A megengedhető késés a változások létrejötte és a change table-ben való megjelenésük között (szinkrontól aszinkron autolog archive-ig folyamatosan nő)
A forrás-adatbázisra eső extra terhelés (szinkrontól aszinkron autolog archive-ig folyamatosan csökken)
Azonos hardveren/operációs rendszeren fut-e a két adatbázis, azonos-e az Oracle adatbázisok verziója.