恢復(fù)比備份費時的五個原因
譯文發(fā)現(xiàn)恢復(fù)比備份還要費時,許多人感到很驚訝,但這一點都不奇怪。事實上,每個人都應(yīng)該為這種差異做好計劃,并納入到備份設(shè)計中。
以下是恢復(fù)起來通常比備份慢的五個原因。
RAID寫開銷
大多數(shù)現(xiàn)代磁盤陣列使用基于奇偶校驗的獨立磁盤冗余陣列(RAID)來構(gòu)建,RAID級別從3到6。其他磁盤陣列使用糾刪碼來構(gòu)建,這與基于奇偶校驗的RAID面臨相似的挑戰(zhàn)。
將數(shù)據(jù)寫入陣列時,基于奇偶校驗的RAID需要計算奇偶校驗信息。從這同一個陣列讀取數(shù)據(jù)時不進行這種計算,因此讀比寫快得多。寫開銷對性能的影響可能很小,也可能很大,這取決于RAID級別及/或糾刪碼中使用的設(shè)置。但所有這種陣列都面臨一些寫開銷,您需要找出自己的寫開銷有多大。
寫時拷貝快照
與寫開銷相似的一個概念是,在使用寫時拷貝快照的陣列和NAS文件管理器中發(fā)生的情況。當您創(chuàng)建寫時拷貝快照時,它只是將一根棍子立在地上作為參考點。最初創(chuàng)建快照時,幾乎不會發(fā)生I/O;所有的重活都在之后發(fā)生。寫操作試圖覆蓋需要為快照保存的塊時,該塊會在允許繼續(xù)寫操作之前拷貝到快照區(qū)。這就是為什么名為寫時拷貝。
與RAID寫開銷一樣,這僅在寫入時發(fā)生??煺臻_銷也可能非常大,因為它取決于保存在該特定卷上的快照數(shù)量。更多的快照加大了在寫操作繼續(xù)之前需要拷貝單個寫內(nèi)容的機會;因此,寫時拷貝卷上的快照越多,寫新數(shù)據(jù)時的性能就越差。
寫入到文件系統(tǒng)
下一個寫開銷出現(xiàn)在寫入到文件系統(tǒng)時,尤其是含有數(shù)百萬個文件的密集系統(tǒng)時。當您恢復(fù)文件時,文件系統(tǒng)必須先創(chuàng)建一個文件來恢復(fù)該數(shù)據(jù)。該文件的創(chuàng)建是單獨的操作,無論文件大小如何,都需要耗費時間。如果有數(shù)百萬個文件要恢復(fù),這個文件創(chuàng)建時間實際上可能比恢復(fù)本身所花的時間還長。
不堪重負的事務(wù)日志
關(guān)系型數(shù)據(jù)庫具有跟蹤數(shù)據(jù)庫所有更改的事務(wù)日志。數(shù)據(jù)庫在事務(wù)日志中快速記錄事務(wù)的能力通常不是大多數(shù)數(shù)據(jù)庫設(shè)計中必須考慮的方面。然而,大型恢復(fù)每秒創(chuàng)建的事務(wù)可能比平常工作日需要創(chuàng)建的事務(wù)多得多,因而給事務(wù)日志帶來了比平常大得多的負載。因此,事務(wù)日志也會減慢恢復(fù)速度。
多路備份流
考慮恢復(fù)比備份慢時要注意的最后一方面是多路(multiplexing)。好消息是,只有直接從磁帶恢復(fù)時,才會出現(xiàn)這種開銷。如果備份系統(tǒng)基于磁盤,不會出現(xiàn)這個問題。這實際上是過去二十年來許多人放棄磁帶的主要原因。
要理解這個問題,應(yīng)考慮磁帶驅(qū)動器的主要問題:它們比實際需要的速度快得多?,F(xiàn)代流式磁帶驅(qū)動器的速度比典型增量備份的速度快10倍到20倍。為解決這個問題,業(yè)界開發(fā)了多路技術(shù):將多個備份流交織成一個流,其速度快得足以讓磁帶驅(qū)動器滿意。20年前多路開發(fā)出來時,這個領(lǐng)域的大多數(shù)人覺得別無選擇,因為他們必須讓磁帶驅(qū)動器滿意,才能進行成功的備份。然而,恢復(fù)面臨龐大的開銷。
如果您從多路磁帶恢復(fù),備份軟件必須讀取整個磁帶,并丟棄除您需要的流之外的所有流。如果多路設(shè)置為10,磁帶驅(qū)動器必須讀取所有10路流,丟棄其中的9路流。這對恢復(fù)速度有很大影響。如果將其與上述某種寫開銷結(jié)合起來,情況可能會變得更糟。如果磁盤驅(qū)動器無法像磁帶驅(qū)動器讀數(shù)據(jù)一樣快地寫數(shù)據(jù),磁帶驅(qū)動器不得不停止和啟動,以便磁盤驅(qū)動器跟上速度。
評估恢復(fù)延遲,設(shè)定預(yù)期
找出環(huán)境存在什么樣的恢復(fù)速度開銷,然后納入到備份設(shè)計中,這點很重要。在您要恢復(fù)數(shù)據(jù)的每種類型的系統(tǒng)上對每種不同類型的數(shù)據(jù)執(zhí)行測試恢復(fù)。這包括您在數(shù)據(jù)中心、每個大型文件服務(wù)器中使用的每種不同類型的RAID。搞清楚什么樣的恢復(fù)速度是規(guī)定的恢復(fù)速度,然后詢問供應(yīng)商可以怎樣加快這個恢復(fù)速度。
隨后對大型恢復(fù)期間會發(fā)生什么準確地設(shè)定預(yù)期。開會討論恢復(fù)重要的文件服務(wù)器需要多長時間,并向受影響的人解釋為什么會這樣。供應(yīng)商可以幫助解釋它是否無能為力,您可以接受這一點,也可以研究一種全然不同的備份技術(shù)。
重要的是在需要恢復(fù)任何數(shù)據(jù)之前做好所有這些工作。盡可能全面地進行恢復(fù)測試,看看恢復(fù)比備份慢的程度,并相應(yīng)地調(diào)整設(shè)計和預(yù)期。
原文標題:??5 reasons restores can take longer than backups??,作者:W. Curtis Preston