
我很高興了解資料中心,然後我遇到了 RAID 系統。
我的問題可能很愚蠢,請耐心等待。
通常在任何 RAID 等級 > 0 中,例如:RAID 5 作業系統如何知道檔案區塊位於哪個磁碟和哪個區塊中?
將為給定檔案儲存哪些元資料?
如果它確實存儲有關文件的元數據..該元數據物理存儲在哪裡(以及存儲在哪個磁碟上)?
正如他們所說,RAID 5 可以支援 1 個磁碟故障,但是如果包含元資料的磁碟發生故障,那麼一切都浪費了,對嗎?
我想知道將儲存在 RAID 5 中的檔案的生命週期、更新是否有效以及刪除檔案如何運作?
每個區塊包含單一文件還是多個文件的資訊?
我是否可以得出這樣的結論:隨著 RAID 等級的增加,讀取並行度會增加而寫入效能會降低?
答案1
將為給定檔案儲存哪些元資料?
RAID完全沒有關係文件元數據。它純粹是一個磁碟安排,因此只是將磁碟位址轉換為實體區塊。
檔案元資料純粹是檔案系統的東西,檔案系統位於磁碟分割的頂部。檔案和磁碟區塊之間有多層轉換。就磁碟控制器(RAID 控制器)而言,當給定與「檔案」相關的資料時,檔案系統和作業系統邏輯磁碟驅動程式已將其縮減為「在磁碟區塊上寫入該資料區塊」 X號」。
RAID 將以精確的邏輯方式排列磁碟。控制器知道諸如磁碟數量、條帶大小和磁碟條帶順序等詳細信息,並給定這些詳細信息邏輯的作業系統傳遞給它的區塊位址可以被計算並映射到“磁碟2,位置Y”等。
正如他們所說,RAID 5 可以支援 1 個磁碟故障,但是如果包含元資料的磁碟發生故障,那麼一切都浪費了,對嗎?
不會。您始終擁有所有資料的 1 個完整副本加元資料等於其他 3 個磁碟的總和。
Disk1 block + disk2 block + disk3 block = redundant (disk4) block
如果一個磁碟機發生故障,您可以重新安排總和
Disk1 block + disk2 block + disk4 (redundant) block = disk3 block
因此,您可以在整個磁碟上獲得一定程度的容錯能力。如果任何一個隨機磁碟發生故障,您仍然可以存取足夠的資料來替換該磁碟。希望您在另一磁碟發生故障之前更換該磁碟,並且可以重建其遺失的資料以完全恢復容錯能力。
冗餘塊背後的數學值得單獨寫一篇文章,我建議您閱讀有關 RAID 的維基百科頁面數組以更好地了解它。
我想知道將儲存在 RAID 5 中的檔案的生命週期、更新是否有效以及刪除檔案如何運作?
每個區塊包含單一文件還是多個文件的資訊?
檔案是一種檔案系統構造,由作業系統處理。 RAID 完全與磁碟有關,對檔案一無所知。
磁碟區塊可以包含任意數量的文件,完全取決於作業系統將資料放入磁碟上的區塊中。
RAID 控制器只是向作業系統提供一個磁碟接口,作業系統向其中寫入區塊。這些區塊中的內容取決於作業系統。
我是否可以得出這樣的結論:隨著 RAID 等級的增加,讀取並行度會增加而寫入效能會降低?
是的,在某種程度上,這取決於所使用的 RAID 級別,並且寫入效能不一定會隨著讀取效能的提高而降低。根據任務的不同,寫入效能可能是(例如)讀取效能的 3/4。
從維基百科
與 RAID 4 相比,RAID 5 的分散式奇偶校驗平衡了所有 RAID 成員之間專用奇偶校驗磁碟的壓力。此外,由於所有 RAID 成員都參與寫入請求的服務,因此寫入效能得到了提升。儘管它不會像條帶化 (RAID 0) 設定那樣高效,但由於仍必須寫入奇偶校驗,因此這不再是瓶頸。
由於奇偶校驗計算是在整個條帶上執行的,因此對陣列的微小更改會經歷寫入放大:在最壞的情況下,當要寫入單一邏輯磁區時,需要讀取原始磁區和相應的奇偶校驗磁區,從奇偶校驗中刪除原始數據,將新資料計算到奇偶校驗和新資料磁區中並寫入新的奇偶校驗磁區。