詳談Oracle遠(yuǎn)程磁盤鏡像
學(xué)習(xí)Oracle時(shí),經(jīng)常會(huì)遇到Oracle遠(yuǎn)程磁盤鏡像問題,這里將介紹Oracle遠(yuǎn)程磁盤鏡像問題的解決方法。Oracle遠(yuǎn)程磁盤鏡像技術(shù)可采用異步方式,達(dá)到降低網(wǎng)絡(luò)延時(shí)、減輕對(duì)生產(chǎn)系統(tǒng)影響等目的。但用這種方式進(jìn)行Oracle數(shù)據(jù)庫的鏡像,卻存在一個(gè)潛在問題:無法保證寫操作順序的一致性(write-order consistency),導(dǎo)致出現(xiàn)數(shù)據(jù)壞塊的可能性增大。最壞情況,可能導(dǎo)致備份數(shù)據(jù)庫無法打開。
而Data Guard基于邏輯級(jí),傳輸?shù)氖桥c業(yè)務(wù)邏輯完整性相關(guān)的日志文件。Data Guard是以日志文件為邊界,會(huì)自動(dòng)檢驗(yàn)日志文件的完整性,并可進(jìn)行斷點(diǎn)日志文件的檢查(log gap detection),通過FAL后臺(tái)進(jìn)程自動(dòng)重傳斷點(diǎn)日志文件。因此,備份數(shù)據(jù)庫的一致性會(huì)得到保證。
網(wǎng)絡(luò)傳輸量分析
網(wǎng)絡(luò)傳輸量的大小直接關(guān)系到容災(zāi)方案實(shí)施的可行性。在原理上,Data Guard只是傳輸一份日志文件,而磁盤鏡像技術(shù)將傳輸數(shù)據(jù)文件、聯(lián)機(jī)日志、歸檔日志、控制文件等所有發(fā)生變化的文件。例如,針對(duì)交易處理,Data Guard只傳輸相應(yīng)DML語句的日志信息,而磁盤鏡像技術(shù)將傳輸該交易所涉及的所有數(shù)據(jù)塊,以及歸檔日志等數(shù)據(jù)。根據(jù)統(tǒng)計(jì)資料顯示,磁盤鏡像的網(wǎng)絡(luò)傳輸量是Data Guard的7倍,而磁盤I/O次數(shù)是Data Guard的27倍。
以某銀行業(yè)務(wù)系統(tǒng)為實(shí)例: 該系統(tǒng)日交易量達(dá)到高峰時(shí),日志文件將有60GB,網(wǎng)絡(luò)傳輸率要求6Mbps/秒。使用磁盤鏡像技術(shù),網(wǎng)絡(luò)傳輸率則至少會(huì)達(dá)到6×7 = 42Mbps/秒。如果還要考慮DB2、CICS、MQ等系統(tǒng)對(duì)線路的復(fù)用,以及系統(tǒng)的擴(kuò)充,即便采用155Mbps的線路,從廣域網(wǎng)絡(luò)建設(shè)和運(yùn)行成本等考慮,磁盤鏡像進(jìn)行數(shù)據(jù)庫容災(zāi)也難以實(shí)施。
遠(yuǎn)程災(zāi)備分析
Oracle遠(yuǎn)程磁盤鏡像技術(shù)由于受底層通信技術(shù)(光纖、ESCON等)限制,一般都有距離限制,如幾十或百公里,如果要在廣域網(wǎng)實(shí)施Oracle遠(yuǎn)程磁盤鏡像,則需要大量的網(wǎng)絡(luò)中繼和轉(zhuǎn)發(fā)設(shè)備,這樣,網(wǎng)絡(luò)設(shè)備投入將大量增加,而且網(wǎng)絡(luò)延時(shí)的增加,對(duì)生產(chǎn)系統(tǒng)的影響也將加大。
相比之下,Data Guard基于Oracle Net Services(即標(biāo)準(zhǔn)的TCP/IP協(xié)議) 傳輸數(shù)據(jù)。TCP/IP協(xié)議是ESCON之上的傳輸協(xié)議,由于在信息包轉(zhuǎn)發(fā)、路由和擁塞控制等方面更為優(yōu)化,同時(shí)TCP/IP與底層通信協(xié)議無關(guān)(以太網(wǎng)、ATM、SONET等),而且,TCP/IP可以并行地進(jìn)行若干信息包的傳輸。因此,TCP/IP的效率更高、網(wǎng)絡(luò)延時(shí)更低,對(duì)生產(chǎn)系統(tǒng)的影響也更小。
數(shù)據(jù)保護(hù)能力分析
在各種故障中,故障率***的是磁盤故障(Corruption)。一旦出現(xiàn)磁盤壞塊,磁盤鏡像技術(shù)將忠實(shí)地將這種錯(cuò)誤傳播到備份數(shù)據(jù)庫的磁盤中,導(dǎo)致備份數(shù)據(jù)庫無法使用。而由于Data Guard傳輸?shù)氖侨罩疚募覀鬏斨皩?duì)日志文件的完整性進(jìn)行了校驗(yàn),因此,不可能發(fā)生因系統(tǒng)磁盤出現(xiàn)物理壞塊,或磁盤控制器故障等,將數(shù)據(jù)塊寫壞而導(dǎo)致備份數(shù)據(jù)庫出現(xiàn)壞塊的情況。
投資回報(bào)率(ROI)分析
Data Guard軟件對(duì)硬件沒有特殊的要求,網(wǎng)絡(luò)只要求TCP/IP。備份數(shù)據(jù)庫可以建立在相對(duì)低檔的系統(tǒng)和廉價(jià)的磁盤陣列中。而磁盤鏡像技術(shù)不僅需要單獨(dú)購(gòu)買昂貴的磁盤鏡像軟件,而且對(duì)硬件要求也很苛刻。
此外,Data Guard具有備份數(shù)據(jù)庫的查詢統(tǒng)計(jì)功能,而磁盤鏡像技術(shù)建立的備份數(shù)據(jù)庫在正常情況下處于閑置狀態(tài),只有在發(fā)生故障時(shí),才能投入應(yīng)用;為降低生產(chǎn)數(shù)據(jù)庫的負(fù)載,Data Guard還可以將物理備份功能移植到備份數(shù)據(jù)庫進(jìn)行,備份數(shù)據(jù)庫產(chǎn)生的物理備份數(shù)據(jù),同樣可用于生產(chǎn)數(shù)據(jù)庫的恢復(fù)操作。以上介紹Oracle遠(yuǎn)程磁盤鏡像。
【編輯推薦】