- 概述
本文介紹VDI分布式存儲產品中采用的緩存加速的日志數據布局技術,該技術相比當前市面上主流的開源分布式存儲產品,比如Ceph,能夠帶來2倍以上的有效容量和2倍以上的性能提升。
- VDI場景數據讀寫特性
VDI活動,一天大概包含如下幾個階段:

- Boot Storm:起機風暴,需要提供分鐘級的起機支持,不能影響正在運行的虛擬機,1000臺桌面會產生超過100K的IOPS。起機風暴的IO情況,又分成如下兩種:
- 完整克隆:51%的48KB和64KB順序讀,17%順序和隨機各半的32KB讀,最后是17%的4KB的隨機讀IO。完整的克隆壓力同時體現在高帶寬,按照xstream io的測試,4000個桌面10分鐘起機完成,IOPS 250K,峰值BW在9GB/s。
- 鏈接克隆:與完整克隆相比,其bw小了,IOPS更高了,主要是因為在鏈接克隆下的起機,小IO(512B/4KB)更多。和完整克隆同樣的測試環境,IOPS 310K,峰值BW 4.4GB/s,但IO基本上都為512和4K隨機讀寫IO。
- Login Storm:登錄風暴,讀寫各半。
- Virus Scanning:病毒掃描,主要是讀。
- Patching & Recomposing:補丁,重寫,主要是寫。
- Steady State。常規的工作階段,90%的IOPS是4KB、8KB的隨機寫IO。
- 補丁階段隨機讀寫各半。
其中,啟機/登陸風暴的技術見《VDI啟機風暴技術白皮書》,病毒掃描相關技術見《Cache加速技術白皮書》。這里描述用戶Steady State階段的數據讀寫問題。
由上面的統計數據可知,Steady State階段主要是4KB、8KB的隨機寫IO。隨機寫IO在糾刪碼配置下有RAID寫懲罰(參考下一節描述),性能往往滿足不了業務需求。故VDI場景,傳統上存儲一般配置為副本,用更低的得盤率來獲得性能上一定的提升。
- 淺談RAID寫懲罰與IOPS計算
- RAID寫懲罰
存儲方案規劃的過程中,基本的考慮因素有兩個,性能和容量。計算后端物理磁盤的IOPS不能簡單的把物理磁盤的最大IOPS相加。原因是對于不同的RAID級別,為了保證當物理磁盤損壞的情況下可以恢復數據,數據寫入的過程中都需要進行一些特別的計算。
比如對于RAID-5,條帶上的任意磁盤上的數據改變,都會重新計算校驗位。下圖,一個7+1的RAID-5的條帶中,7個磁盤存儲數據,最后一個磁盤存儲校驗位。

![]()
對于一個數據的寫入,我們假設在第5個磁盤上寫入數據1111,如下圖所示。

那么整個RAID-5需要完成寫入的過程分為如下幾步:
- 讀取原數據0110,然后與新的數據1111做XOR操作:0110 XOR 1111 = 1001
- 讀取原有的校驗位數據0010
- 用步驟1計算出的數值與原校驗位再做一次XOR操作:0010 XOR 1001 = 1011
- 將新數據1111寫入到數據磁盤,將新的校驗值1011寫入校驗盤
由上述幾個步驟可見,對于任何一次寫入,在存儲端,需要分別進行2次讀取和2次寫入,所以說RAID-5的寫懲罰值是4。
不同RAID級別的寫懲罰,如下表所示:
|
RAID類型 |
寫懲罰 |
|
RAID-0 |
1 |
|
RAID-1 |
2 |
|
RAID-5 |
4 |
|
RAID-6 |
6 |
|
RAID-10 |
2 |
-
- IOPS計算
根據上文的描述,在實際存儲方案設計的過程中,計算實際可用IOPS的過程中必須納入RAID的寫懲罰機上。計算公式如下:
- 物理磁盤總IOPS = 物理磁盤的IOPS * 磁盤數目
- 可用的IOPS = (物理磁盤總IOPS * 寫百分比 / RAID寫懲罰)+(物理磁盤總IOPS * 讀百分比)
假設組成RAID-5的物理磁盤總IOPS為1000,使用該存儲的應用程序讀寫比例是10% / 90%,那么對于前端主機而言,實際可用的IOPS為:
(1000 * 90% / 4)+(1000 * 10%)= 325
故,在VDI場景Steady State階段,RAID或者糾刪碼配置下,實際業務可用的IOPS非常低,往往滿足不了業務需求。
- 緩存加速的日志數據布局技術
- 數據寫入概述
VDI分布式存儲采用緩存加速的日志數據布局技術,加速虛擬桌面用戶的數據讀寫性能。具體步驟如下:
- 桌面操作系統,數據寫入存儲
- 首先數據在本地節點的內存保留一份,同時根據系統可靠性配置,用戶數據寫入1個或者2個鏡像節點的SSD上,SSD采用FIFO的形式順序保存這些Journal
- 數據鏡像完成之后,返回操作系統數據寫入成功
- 本地節點數據聚合條帶,計算糾刪碼之后,順序寫入后端磁盤
- 同時,根據智能緩存算法,熱點數據保存到SSD Cache上,供操作系統后續讀取訪問
- 數據落盤之后,鏡像節點的FIFO Journal通過尾部指針地址偏移,釋放Journal空間
- 日志數據布局技術
VDI分布式存儲的日志數據布局采用ROW方式,不論是追加寫還是改寫現有數據,都重新分配一個連續的地址空間寫入。這樣,無論用戶的業務模型如何,所有的寫數據對于后端磁盤來說都是順序的,避免了傳統RAID寫流程所需的寫懲罰。并且所有的數據都可以均勻的分布到不同的后端磁盤上,可以有效利用后端磁盤的總帶寬和總IOPS。
如下圖所示,LUN1寫入A、B、C、D四個數據,LUN2寫入A、B兩個數據,存儲系統將LUN1、LUN2的數據合并成一個條帶,并計算出2個校驗值之后,將數據寫入后端磁盤。

當修改數據發生時,如下圖所示。LUN1將數據B修訂成b,LUN2寫入C、D、E,LUN3寫入數據A、B。系統會將這些數據聚合成條帶,計算校驗值之后,寫入后端磁盤,然后標記數據(1 B)為垃圾數據。

但是,當系統經過長時間的修改和寫入后,會產生大量的垃圾數據,從而導致無法找到條帶用于新的數據寫入。日志數據布局技術,通過全局垃圾回收來重新整理空間,從而做到在任何容量利用率的情況下,都可以找到新條帶用來數據寫入。
如果條帶上的數據都為垃圾數據,則直接回收該條帶。

如果條帶上僅有部分臟數據,則將這些條帶上的有效數據拷貝到新的條帶之后,回收這些條帶。

-
- 技術優勢
該技術有如下優點:
- SSD上Journal和Cache的數據寫入都是順序的,減少了SSD的擦寫次數,可以將SSD壽命提高1個數量級。
- 將隨機寫IO聚合成順序寫IO,避免了RAID算法的寫懲罰,提升磁盤IOPS。以4KB的隨機IO,128KB條帶深度大小為例,每個磁盤可以提供32(128 / 4)倍IOPS。
- 智能緩存預期算法,VDI數據讀取操作盡量SSD命中,加速VDI數據讀取性能,同時減少對后端磁盤的IOPS壓力。以Cache命中率80%為例,后端磁盤僅需要提供20%的讀IO即可滿足業務需求。
- 方案對比
考慮如下需求:每個VDI節點50個VDI桌面,每個桌面100 IOPS,共需要存儲提供5000 IOPS,其中寫IO占90%。假設每個磁盤的吞吐為200MB/s,且能夠提供200 IOPS。同時,我們假設讀緩存命中率為80%,假設SSD緩存性能足夠滿足該場景需求,同時假設VDI有效工作時間為每天8小時。比較傳統3副本、緩存加速日志數據布局技術8D2P EC和3副本下的有效容量和每磁盤能滿足的業務IOPS需求。
-
- 傳統3副本
在該場景下,讀操作首先判斷Cache是否命中,否則從后端磁盤讀。寫操作首先3副本寫到對應的SSD上,后臺異步將這些IO刷到對應的磁盤。
VDI節點需要后端磁盤提供的讀IOPS為:總IOPS需求 * 讀IO比例 * 緩存不命中率。
5000 IOPS * 10% * 20% = 100 IOPS
3副本的寫懲罰為3,在VDI節點一整天開機的情況下,需要的寫IOPS為:總IOPS * 寫IO比例 * 寫懲罰 * 每周工作時間 / 每周開機時間。
5000 IOPS * 90% * 3 * (8 * 5) / (24 * 7) = 3214 IOPS
該場景下,共需要(3214 + 100)/ 200 ,約16個磁盤。平均每個磁盤能夠滿足該場景312(5000 / 16)業務IOPS需求。
-
- 緩存加速日志數據布局8D2P
VDI節點需要后端提供的讀IOPS和3副本類型的相同,為100 IOPS。
8D2P配置下,寫懲罰系數為1.25,假設平均每個IO 8KB。同時,VDI產品中配置的條帶深度為128KB。則需要的寫IOPS為:總IOPS * 寫IO比例 * 寫懲罰 * 平均每個IO大小 / 條帶深度。
5000IOPS * 90% * 1.25 * 8KB / 128KB = 351 IOPS
該場景下,共需要(100 + 351)/ 200 ,約3個磁盤。平均每個磁盤滿足該場景1667 (5000 / 3)業務IOPS需求。
-
- 緩存加速日志數據布局3副本
讀IOPS同樣為100。
寫IOPS需求為:5000 IOPS * 90% * 3 * 8KB / 128KB = 844 IOPS
該場景下,共需要(100 + 844)/ 200 ,約5個磁盤。平均每個磁盤滿足1000業務IOPS需求。
-
- 方案總結
下表比較該場景下,3副本和8D2P有效容量、每個硬盤提供的有效容量和性能。
|
|
傳統3副本 |
緩存加速日志數據布局3副本 |
緩存加速日志數據布局8D2P EC配置 |
|
有效容量 |
33% |
33% |
80% |
|
每磁盤滿足的業務IOPS |
312 |
1000 |
1667 |
緩存加速日志數據布局下,糾刪碼和副本有相似的數據可靠性,建議以糾刪碼配置為主。
-
- 方案價值
存儲方案規劃中,基本的考慮因素有兩個:性能和容量。在VDI場景中,緩存加速日志數據布局,相比傳統存儲具備如下優勢:
- 支持在生產系統上使用糾刪碼,使用糾刪碼相比Ceph等以副本為主要數據可靠性保證的方案來說,同時具備2倍以上的有效容量和2倍以上的性能提升。
- 即使同樣也采用副本,緩存加速日志數據布局方案,也會獲得2倍以上的性能提升。
相關推薦:
更多技術博文
-
多速率交換機是什么?一文明白其原理、優勢與銳捷方案推薦本文用通俗語言詳解多速率交換機是什么,包括其工作原理、三大核心優勢及四大應用場景。文末為您推薦銳捷RG-S6100系列與RG-S5315-E系列交換機的選型方案,助您實現平滑網絡升級。
-
#交換機
-
-
解密DeepSeek-V3推理網絡:MoE架構如何重構低時延、高吞吐需求?DeepSeek-V3發布推動分布式推理網絡架構升級,MoE模型引入大規模專家并行通信,推理流量特征顯著變化,Decode階段對網絡時度敏感。網絡需保障低時延與高吞吐,通過端網協同負載均衡與擁塞控制技術優化性能。高效運維實現故障快速定位與業務高可用,單軌雙平面與Shuffle多平面組網方案在低成本下滿足高性能推理需求,為大規模MoE模型部署提供核心網絡支撐。
-
#交換機
-
-
高密場景無線網絡新解法:銳捷Wi-Fi 7 AP 與 龍伯透鏡天線正式成團銳捷網絡在中國國際大學生創新大賽(2025)總決賽推出旗艦Wi-Fi 7無線AP RG-AP9520-RDX及龍伯透鏡天線組合,針對高密場景實現零卡頓、低時延和高并發網絡體驗。該方案通過多檔賦形天線和智能無線技術,有效解決干擾與覆蓋問題,適用于場館、辦公等高密度環境,提供穩定可靠的無線網絡解決方案。
-
#無線網
-
#Wi-Fi 7
-
#無線
-
#放裝式AP
-
-
打造“一云多用”的算力服務平臺:銳捷高職教一朵云2.0解決方案發布銳捷高職教一朵云2.0解決方案幫助學校構建統一云桌面算力平臺,支持教學、實訓、科研和AI等全場景應用,實現一云多用。通過資源池化和智能調度,提升資源利用效率,降低運維成本,覆蓋公共機房、專業實訓、教師辦公及AI教學等多場景需求,助力教育信息化從分散走向融合,推動規模化與個性化培養結合。
-
#云桌面
-
#高職教
-