中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

快照實現(xiàn)技術(shù)淺析

2018-06-11    來源:

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

什么是快照技術(shù)
   SNIA(Storage Networking Industry Association)對快照(Snapshot)的定義是:關(guān)于指定數(shù)據(jù)集合的一個完全可用拷貝,該拷貝包括相應(yīng)數(shù)據(jù)在某個時間點(拷貝開始的時間點)的映像?煺湛梢允瞧渌硎緮(shù)據(jù)的一個副本,也可以是數(shù)據(jù)的一個復(fù)制品。
快照的作用
   快照的作用主要是能夠進行在線數(shù)據(jù)備份與恢復(fù)。當(dāng)存儲設(shè)備發(fā)生故障或者文件損壞時可以進行快速的數(shù)據(jù)恢復(fù),將數(shù)據(jù)恢復(fù)到某個可用時間點的狀態(tài)?煺盏牧硪粋作用是為存儲用戶提供了另外一個數(shù)據(jù)訪問通道,當(dāng)原數(shù)據(jù)進行在線應(yīng)用處理時,用戶可以訪問快照數(shù)據(jù),還可以利用快照進行測試等工作。所有存儲系統(tǒng),不論高中低端,只要應(yīng)用于在線系統(tǒng),那么快照就成為一個不可或缺的功能。
快照的實現(xiàn)方式
   當(dāng)前實現(xiàn)快照主要有兩種技術(shù),一種是第一次寫時復(fù)制(Copy On First Write,COFW),有時簡稱為寫時復(fù)制(Copy On Write,COW)。即在數(shù)據(jù)第一次寫入到某個存儲位置時,首先將原有的內(nèi)容復(fù)制到另一位置處(為快照保留的存儲空間,此文中我們稱為快照空間),然后再將數(shù)據(jù)寫入到相應(yīng)位置中。而下次針對同一位置的寫操作將不再執(zhí)行寫時復(fù)制操作。寫時復(fù)制技術(shù)在計算機相關(guān)技術(shù)實現(xiàn)中經(jīng)常使用,其基本原理大同小異,只是面向?qū)ο蟛煌m用場合不一樣。
   從COW 的執(zhí)行過程我們可以知道,這種實現(xiàn)方式在第一次寫入某個存儲位置時需要完成一個讀操作(讀原位置的數(shù)據(jù)),兩個寫操作(寫原位置與寫快照空間),如果寫入頻繁,那么這種方式將非常消耗IO時間。因此可推斷,如果預(yù)計某個卷上的I/O多數(shù)以讀操作為主,寫操作較少,這種方式的快照實現(xiàn)技術(shù)是一個較理想的選擇,因為快照的完成需要較少時間。除此之外,如果一個應(yīng)用易出現(xiàn)寫入熱點,即只針對某個有限范圍內(nèi)的數(shù)據(jù)進行寫操作,那么COW的快照實現(xiàn)方式也是較理想的選擇。因為其數(shù)據(jù)更改都局限在一個范圍內(nèi),對同一份數(shù)據(jù)的多次寫操作只會出現(xiàn)一次寫時復(fù)制操作。下圖是寫時復(fù)制的示意圖:
 
圖1 寫時復(fù)制示意圖
但是這種方式的缺點也非常明顯。如果寫操作過于分散且頻繁,那么 COW 造成的開銷則是不可忽略的,有時甚至無法接受。這種實現(xiàn)方式適用于Read-Intensive(讀密集)型的應(yīng)用。在應(yīng)用時,需要綜合評估應(yīng)用系統(tǒng)的使用場景,以判斷這種方式的快照是否適用。
    快照實現(xiàn)技術(shù)中的另一種是 I/O 重定向(I/O Redirect)。即將輸入輸出操作重新定向到快照存儲空間中。在一個快照生成期間,所有的寫操作將被重定向到快照介質(zhì),而讀操作是否需要重定向,則需要根據(jù)讀取的位置是否有過自上次快照以來的寫重定向,必須對有過寫重定向的位置進行讀重定向,否則不需要進行讀定向。當(dāng)要創(chuàng)建一個快照時,則將自上次快照以來所有的重定向?qū)憯?shù)據(jù)所對應(yīng)的在源介質(zhì)中的數(shù)據(jù)復(fù)制到快照介質(zhì),生成這個時間點的快照,然后再將這些重定向?qū)憯?shù)據(jù)寫回到源介質(zhì)中的相應(yīng)位置上,從而完成整個快照生成過程。下圖中顯示了IO重定向的執(zhí)行過程。

   從上面的過程來看,關(guān)鍵的性能影響在于快照生成時的四次I/O操作(一次讀源介質(zhì),一次寫快照數(shù)據(jù),一次讀快照介質(zhì),一次寫源介質(zhì)),另一個則是重定向的計算工作。這種方式雖然看起來最后生成快照時的I/O操作較多,但考慮到這個操作是在生成快照時才會發(fā)生,特別是快照生成時可以對I/O操作進行排序,可使得對介質(zhì)的輸入輸出操作得到較好優(yōu)化,因此影響很小。而對于重定向的計算操作對于當(dāng)下的計算能力來說,不會成為一個性能瓶頸問題。因此這種快照實現(xiàn)方式在非快照執(zhí)行期間的影響甚小。這種方式比較適合Write-Intensive(寫密集)類型的存儲系統(tǒng)。

   SNIA 將快照的實現(xiàn)方式表述為:鏡像分離(split mirror)、改變塊(changed block)、并發(fā)(concurrent)三大類。后兩種在實現(xiàn)時其實質(zhì)就是寫時復(fù)制及輸入輸出重定向。對于 split mirror 的方式,由于其靈活性以及開銷問題,在實際的存儲系統(tǒng)中,并不實用。
快照的實現(xiàn)層次
    計算機的存儲結(jié)構(gòu)是一個類似于 TCP/IP 一樣的棧結(jié)構(gòu)。棧中包括硬件與軟件部分。棧中不同層為上層提供服務(wù),同時利用下層的接口(如下圖)。因此在實現(xiàn)上,快照可以在不同的存儲層上實現(xiàn),但是不同的層其效果和特點是不一樣的。

   一般來說,在應(yīng)用層不太合適實現(xiàn)快照功能。因為不同的應(yīng)用是千差萬別的,因此需要針對不同的應(yīng)用實現(xiàn)快照功能,代價非常高。但在應(yīng)用層實現(xiàn)快照也并不是說一無用處,只是這種快照功能應(yīng)用在存儲系統(tǒng)中缺乏靈活性。在應(yīng)用層實現(xiàn)快照的一個典型的例子就是 vmWare 虛擬化軟件中的快照功能,在虛擬化平臺中,這個功能非常棒。
   在文件系統(tǒng)層實現(xiàn)快照與應(yīng)用也具有與上面相同的缺點,就是需要針對不同的文件系統(tǒng)實現(xiàn)快照功能,這樣的代價也很大,靈活性不足,沒有可擴展性。實現(xiàn)快照功能的文件系統(tǒng)基本上都是一些專用系統(tǒng)或者專為某個特定功能實現(xiàn)的文件系統(tǒng)。 在這個層級上實現(xiàn)快照的典型例子就是 ZFS。
   而較為適宜實現(xiàn)快照功能的層應(yīng)該為卷管理層以及物理層。在這兩個層中都不與特定的應(yīng)用及文件系統(tǒng)相關(guān)。比較典型的例子有Linux 的LVM。而在硬件層次上實現(xiàn)快照又通常有許多種,在這個層次上實現(xiàn)的快照一般為封閉式系統(tǒng),好處是性能是各種方式中最好的。但在這個層次上實現(xiàn)的快照也有一個不可避免的缺點,那就是不與特定的應(yīng)用及文件系統(tǒng)關(guān)聯(lián),因此其就無法理解上層的應(yīng)用業(yè)務(wù)邏輯,也就無法保證每個快照點都處于數(shù)據(jù)一致性狀態(tài)。但這個缺點是可以通過其他方式減少或者消除的。比如在生成快照之前先對數(shù)據(jù)進行刷新操作,或者在恢復(fù)快照時對文件系統(tǒng)進行一致性檢查等。
結(jié)束語
   計算技術(shù)不斷在進步,存儲技術(shù)同樣也在進行著日新月異的變化。不同應(yīng)用在不斷地更新著對存儲的需求。從持續(xù)數(shù)據(jù)保護(CDP)到重復(fù)數(shù)據(jù)刪除(Dedup),從快照(Snapshot)到鏡像(Mirror),從層級存儲管理(HSM)到存儲虛擬化(SV),直到云存儲,未來存儲技術(shù)的發(fā)展將朝著怎樣的方向發(fā)展,我們拭目以待。

標(biāo)簽: linux 問題 選擇 用戶

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:Infortrend進一步完善其服務(wù)與支持網(wǎng)絡(luò)

下一篇:互聯(lián)網(wǎng)中的存儲未來 你不再擁有數(shù)據(jù)