OGG學(xué)習(xí)筆記01-基礎(chǔ)概述
OGG(Oracle Golden Gate),最近幾年在數(shù)據(jù)同步、容災(zāi)領(lǐng)域特別火,甚至比Oracle自己的原生產(chǎn)品DataGuard還要風(fēng)光,主要是因?yàn)槠淇缙脚_(tái)、跨數(shù)據(jù)庫(kù)、跨版本的強(qiáng)大特性。
OGG理論概念
我們可以搜索到網(wǎng)上對(duì)它的簡(jiǎn)單介紹:
Oracle Golden Gate軟件是一種基于日志的結(jié)構(gòu)化數(shù)據(jù)復(fù)制備份軟件,它通過(guò)解析源數(shù)據(jù)庫(kù)在線日志或歸檔日志獲得數(shù)據(jù)的增量變化,再將這些變化應(yīng)用到目標(biāo)數(shù)據(jù)庫(kù),從而實(shí)現(xiàn)源數(shù)據(jù)庫(kù)與目標(biāo)數(shù)據(jù)庫(kù)同步。
Oracle Golden Gate可以在異構(gòu)的IT基礎(chǔ)結(jié)構(gòu)(包括幾乎所有常用操作系統(tǒng)平臺(tái)和數(shù)據(jù)庫(kù)平臺(tái))之間實(shí)現(xiàn)大量數(shù)據(jù)亞秒一級(jí)的實(shí)時(shí)復(fù)制,從而可以在應(yīng)急系統(tǒng)、在線報(bào)表、實(shí)時(shí)數(shù)據(jù)倉(cāng)庫(kù)供應(yīng)、交易跟蹤、數(shù)據(jù)同步、集中/分發(fā)、容災(zāi)、數(shù)據(jù)庫(kù)升級(jí)和移植、雙業(yè)務(wù)中心等多個(gè)場(chǎng)景下應(yīng)用。同時(shí),Oracle Golden Gate可以實(shí)現(xiàn)一對(duì)一、廣播(一對(duì)多)、聚合(多對(duì)一)、雙向、點(diǎn)對(duì)點(diǎn)、級(jí)聯(lián)等多種靈活的拓?fù)浣Y(jié)構(gòu).
目前許多客戶環(huán)境都已經(jīng)在廣泛使用OGG。由于工作需要,近期我也會(huì)系統(tǒng)的學(xué)習(xí)下OGG,目前學(xué)習(xí)主要以O(shè)GG在Oracle數(shù)據(jù)庫(kù)之間的同步來(lái)說(shuō)明一些基本概念,后續(xù)看時(shí)間情況可能了解OGG對(duì)其他主流數(shù)據(jù)庫(kù)的同步。
假設(shè)已有源數(shù)據(jù)庫(kù)和目標(biāo)數(shù)據(jù)庫(kù),且分別部署好OGG軟件。
源數(shù)據(jù)庫(kù)部署的OGG,簡(jiǎn)稱源OGG;目標(biāo)數(shù)據(jù)庫(kù)部署的OGG,簡(jiǎn)稱目標(biāo)OGG。
同步的過(guò)程就是源OGG的EXTRACT進(jìn)程從源數(shù)據(jù)庫(kù)的聯(lián)機(jī)redologs中抽取獲得變化,把它寫(xiě)到本地trail文件中,然后源OGG的Data pump進(jìn)程再?gòu)谋镜豻rail文件中抽取變化傳給目標(biāo)OGG的collector進(jìn)程,目標(biāo)的collector進(jìn)程再把這些變化寫(xiě)入目標(biāo)trail文件中,最后目標(biāo)OGG的Replicat進(jìn)程把目標(biāo)trail文件中記錄的變化應(yīng)用到目標(biāo)數(shù)據(jù)庫(kù)中。
如果要同步的表數(shù)量比較多或是業(yè)務(wù)有區(qū)分,需要分開(kāi)管理,OGG是支持分開(kāi)多個(gè)extract進(jìn)程,多個(gè)datapump進(jìn)程,多個(gè)replicat進(jìn)程,這樣,可以啟動(dòng)或停止其中任意一類同步,而不影響其他的同步。
由此,我們可以得到一張Oracle