請問Raid5 是否可以提升多人存取小檔效能?

如果在IO充足為前題
Raid 5可以提升單個大擋存取任務,
但如果今天換一個情境,如果是10個人同時連線NAS存取很多小檔
Raid5在這個情境下會比單科硬碟快嗎?
爬文說到因為有三個讀寫頭,理論上多人碎檔還是會比較快?這個論點是真的嗎?
想請教有經驗的大大分享看法
文章關鍵字
三個讀寫頭會比一個讀寫頭快,
這個邏輯沒有錯, 不過問題是....

RAID vs. Single Disk, 決勝點不是在讀寫頭,
而是在: 讀取碎片資料之後, 重組成完整資料的時間

Single Disk 沒有碎片, 他不需要經過重組, 就可以直接把完整資料吐出來;

RAID 5 至少有兩份以上的碎片+1個校正元, 磁碟單元從三個讀寫頭把這些碎片和校正元讀出來之後, 必須經過一次重組和一次比對判斷之後, 才能還原出完整資料

通常重組動作是由 RAID Controller 上的 ASIC 晶片負責, 但近代的 CPU 速度提升, 所以也有業者改用磁碟單元內的小 CPU 來做重組, 不幸的是: CPU 重組速度遠低於 ASIC 重組

所以, 你的磁碟子系統重組效率, 會決定你能不能勝過 Single Disk
這件事沒有一定, 因為各家磁碟子系統的重組機制不同, 效率落差很大

你只能靠實測來驗證.
經驗上, 消費級的家用產品, 效率會低於 Single Disk; 企業級高端產品, 則有機會勝過
fooffooffoof
請問您的意思是,重組是靠硬碟內部的CPU嗎?
raytracy
看你的硬碟是接在甚麼系統上? 接在 NAS 就是用 NAS 的 CPU, 接在 PC 就是 PC 的 CPU; 除非中間還有一片陣列卡, 不過陣列卡也有分硬體重組或軟體重組, 必須有 ASIC 晶片
Raid5可以加快小檔的讀取速度,幫助有限,還是卡在共用一個網口,造成傳輸瓶頸。

Link Aggregation(鏈路聚合) 透過聚合多個網路介面,藉此提升頻寬及傳輸量,每一個用戶端將由一組聚合的網路介面回應。一旦指派網路介面後,將由同一個網路介面回應此用戶端的所有連線。

安裝多網口介面卡,比如四口網路介面卡,使用Link Aggregation,四個用戶可以得到各自獨立的網口,可以加快整體的傳輸的速度。

四個用戶就不用共用一個網口。

以上的做法只有一點點幫助,光是使用SSD 小檔 對考速度都還是很慢,透過網路傳送小檔光是分割重組封包只會浪費更多的時間。

小檔網路傳輸慢,這是無法解決,可以先利用壓縮程式,將眾多小檔壓縮成一個大檔再透過網路傳輸,可以解決透過網路傳輸小檔慢的問題,這是最快的解決方式。

小檔的定義就是幾KB或是幾十KB的檔案。
這是絕對的,不然花大錢(H/W RAID and multiple drive)是心酸的嗎?
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!