Windows Server 儲存空間之儲存分層和緩衝管理

來源:互聯網
上載者:User

標籤:儲存空間   windows server   軟體定義程式儲存   儲存分層   儲存緩衝管理   

儲存空間儲存分層

在談到儲存分層之前,我們需要瞭解Windows Server儲存空間裡麵包含了多少層以及如何定義每一個分層。基於讀寫效能快慢的相對值,儲存空間分為兩個資料存放區層,一個儲存層為快速層,通常由SSD硬碟提供,用於儲存熱資料,也即經常訪問的資料;另一個儲存層為慢速層,通常由HDD硬碟提供,用於儲存冷資料,也即不經常訪問的資料。預設情況下,儲存空間具有這兩個儲存速率不同的儲存層的虛擬磁碟,儲存分層目的在於平衡 SSD效能和硬碟 (HDD)容量。在儲存層都有可用空間時,新的資料通常往慢速層寫入,然後儲存空間將會根據訪問資料的頻率,以透明方式在兩個層之間移動子檔案級的資料。儲存層可以通過將最常用的熱資料移到SSD儲存來滿足熱資料的效能要求,將冷資料移動到HDD層來滿足普通資料的容量要求。儲存分層工作原理1所示。        

650) this.width=650;" title="301-圖1.jpg" style="height:347px;width:500px;float:none;" alt="wKioL1jPl4uzl2ftAAv8g9Hdnjo674.jpg-wh_50" src="https://s2.51cto.com/wyfs02/M01/8E/F1/wKioL1jPl4uzl2ftAAv8g9Hdnjo674.jpg-wh_500x0-wm_3-wmp_4-s_2477059006.jpg" width="500" height="611" />                   

圖1儲存空間分層技術

儲存控制器伺服器作業系統Windows Server 2012和Windows 8及後續版本內建了儲存分層管理服務(Storage Tiers Management Service),該服務在安裝Windows Server檔案伺服器角色後被啟用處於運行狀態。儲存分層管理服務可以自動計算資料熱度並按照預設策略在每天晚上1點啟動冷熱資料移動。要觀察儲存分層任務和行為,可以登入儲存控制器伺服器,開啟伺服器的控制台裡找到計劃任務程式,在計劃任務程式裡依次展開“計劃任務程式”—“Microsoft”—“Windows”下找到名為“Storage TiersManagement”的項目,開啟Storage Tiers Optimization 屬性,在觸發器選項卡裡我們就能看到儲存分層管理服務在每天淩晨1點觸發冷熱資料移轉的計劃任務,2所示。這個預設設定不是一成不變的,可按照需求和實際情況修改觸發分層任務的時間。 

650) this.width=650;" title="301-圖2.jpg" style="float:none;" alt="wKioL1jPl4yQEO-sAABlFfj_khE674.jpg-wh_50" src="https://s5.51cto.com/wyfs02/M01/8E/F1/wKioL1jPl4yQEO-sAABlFfj_khE674.jpg-wh_500x0-wm_3-wmp_4-s_1171586843.jpg" />

圖2儲存空間自動分層任務

       除了修改分層操作任務的觸發時間,還可以不依賴計劃任務程式完成儲存分層。為了找到Storage Tiers Management Service如何?儲存分層,我們可以從預置的計劃任務裡找到分層操作相關的命令和參數。點擊Storage Tiers Optimization 屬性視窗的操作選項卡,在詳細資料欄可看到Storage Tiers Management Service所執行的具體任務和相關參數,事實上儲存分層使用defrage命令和-c -h -g -#這4個參數完成,3所示。

650) this.width=650;" title="301-圖3.jpg" style="float:none;" alt="wKiom1jPl46hKwKUAABMMRI_vsI814.jpg-wh_50" src="https://s3.51cto.com/wyfs02/M02/8E/F3/wKiom1jPl46hKwKUAABMMRI_vsI814.jpg-wh_500x0-wm_3-wmp_4-s_3876302051.jpg" />

圖3儲存空間分層調度操作

       擷取到階層式存放區命令及參數後,我們就可以使用命令手動觸發冷熱資料移轉了,只要在命令提示字元裡輸入C:\ Windows\system32\defrag.exe-c -h -g -#即可。

如果熟悉Windows裡磁碟最佳化(磁碟重組)會發現做儲存分層移動的命令和磁碟磁碟重組的命令一樣,只是參數不同。在Windows Server 2012/Windows 8之前的版本裡微軟並沒有引入儲存空間,也沒有儲存分層這個技術,所以使用defrag.exe /? 命令擷取協助後,在Windows Server2012 R2/Windows 8.1系統裡面會多出-g這個參數。這個參數非常重要,其意義意義在於最佳化儲存層,按照資料熱度為資料找到合適的儲存層。

需要強調的是,儲存分層基於資料的粒度而非檔案的粒度,儲存分層服務按照1MB的單位分析和移動資料。如果檔案大於1MB,而且只有部分“熱”資料,那麼一個檔案只有一定比例的資料會被移動到SSD層,比如有一個虛機虛擬磁碟上面的資料只有20%熱資料,只有這20%的資料會被移動到SSD分區,而不會把整個虛擬磁碟檔案移動到SSD分區。舉個實際的例子,一台虛機的VHDX大小一共100GB,裡面安裝了SQL Server 執行個體,在執行個體下20GB的資料庫和記錄檔用於交易系統,該交易系統每天產生過萬條交易,那麼這20GB的資料將會移動到SSD分區,而剩餘的80GB系統檔案和其他檔案的資料則不一定會移動到SSD分區。至於儲存空間如何進行資料熱度計算,請參考另外一篇部落格《Windows Server 軟體定義程式儲存—儲存空間IO的分發》http://ichbinleo.blog.51cto.com/11948851/1900880 。

儲存分層是後台自動運行資料移轉的過程,如果某些特定的虛機需要持續運行在高速的SSD層,或者對效能要求不高的虛機需要固定在大容量的HDD層來為其他虛機提供更多的快速SSD層,則可以考慮使用固定命令將該檔案固定到某個磁碟層。固定和分層不同的是分層是資料層級操作的,而固定是檔案層級操作的。比如要將\\FileServer\Share\VM01.VHDX固定在SSD層,按照如下步驟完成:

(1) 運行PS C:\>Get-StorageTier|ft FriendlyName PowerShell命令擷取已有分層易記名稱。

(2)返回如下結果,根據MediaType選擇類型為SSD的層。

FriendlyName      MediaType    ------------      ---------      SSDTier           SSD      HDDTier           HDD

(3)運行以下樣本命令將VM01的虛擬磁碟固定到SSD層,使用Clear-FileStorageTier解除將檔案固定到某一層。

PS  C:\> Set-FileStorageTier -FilePath "\\FileServer\Share\VM01.VHDX  " -DesiredStorageTierFriendlyName  "SSDTier" SSD

運行固定檔案的命令,儲存不會立刻將檔案資料移動到指定的分層,而是等待下一次磁碟分層最佳化運行任務開始才開始,如果等不及,那麼就按上面提到的方法,在計劃任務程式、命令提示字元或者PowerShell裏手動觸發資料移動操作。

 

儲存空間緩衝管理

在傳統儲存中,儲存包含了讀快取命中和寫緩衝,寫緩衝又分為回寫(Write-back)和透寫(Write-through)緩衝,在緩衝機制中還具備緩衝鏡像和緩衝保管等技術防止掉電等故障造成快取資料的丟失。在Windows Server SDS裡我們同樣具備相似的緩衝技術,我們先看看Windows Server SDS的回寫緩衝。

 

回寫緩衝

應用通常都是以小資料隨機寫入到儲存,作為SSD硬碟重要屬性,回寫緩衝可以將小的隨機寫入緩衝到SSD硬碟避免發生過多次數的磁碟寫入I/O。從Windows Server 2012 R2 開始,儲存空間支援建立回寫式緩衝,緩衝使用池中SSD上的少量空間來緩衝小規模隨機寫入操作並減小對其他並行的資料寫入的影響,並通過降低隨機寫入的延遲來提高儲存的寫入效能。常見的工作負載隨機寫入操作將定向到 SSD緩衝,稍後再寫入 HDD。回寫緩衝另外的用途在於對資料進行掉電保護。儲存空間如果存在SSD硬碟,虛擬磁碟會預設建立大小為1GB的回寫緩衝空間,4所示。

回寫緩衝對管理員來說是透明的,儲存空間在有足夠數量的SSD的前提下,建立虛擬磁碟的同時將建立好回寫緩衝。磁碟布局和對SSD數量要求說明如下:

  • 簡單布局要求具有一塊SSD硬碟;

  • 雙重新製作映像和單同位要求具有兩塊SSD硬碟;

  • 三重新製作映像和雙同位要求具有三塊SSD硬碟。

650) this.width=650;" title="301-圖4.jpg" style="float:none;" alt="wKiom1jPl47iKLEfAAAVArhMa8g190.jpg-wh_50" src="https://s1.51cto.com/wyfs02/M02/8E/F3/wKiom1jPl47iKLEfAAAVArhMa8g190.jpg-wh_500x0-wm_3-wmp_4-s_687745770.jpg" />

圖4回寫緩衝

Journal

我們在設定硬碟用途的時候硬碟的Usage參數裡有個Journal值,Journal(暫無信達雅的中文翻譯)和回寫緩衝有著類似的作用,都是負責處理重新組織路徑上活動的I/O,但是在儲存空間裡,二者的作用和設定有明顯的區別。Journal只能用於同位布局的儲存空間,回寫緩衝適用於所有的儲存空間布局,並能支援階層式存放區。我們可以為同位的儲存空間設定專用的Journal硬碟,通常使用快速的SSD硬碟,配置了專用Journal硬碟的同位儲存空間能很大程度上提高儲存寫入效能,尤其是順序寫入的時候,此外,使用兩塊以上的Journal硬碟可以實現自身的鏡像保證I/O的冗餘。

本文出自 “黃利軍的部落格” 部落格,轉載請與作者聯絡!

Windows Server 儲存空間之儲存分層和緩衝管理

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.