題 固件與操作系統RAID(又稱Windows 8磁盤鏡像與英特爾板載)


所以Windows 8出來了,我有一個新的主板。我希望在兩個硬盤驅動器之間創建一個RAID 1耦合 - 僅用於存儲目的(我的操作系統在SSD上) - 但我不知道哪條路徑最佳。

我的主板(Z77芯片組)配備了英特爾固件RAID,但由於我只想使用我的RAID存儲,我想知道我是否可以更好地使用Windows 8磁盤鏡像?

任何人都可以建議哪個更好?或者也許每個人的利弊,如果這太有爭議了?我只是看不到固件RAID優於Windows磁盤鏡像的好處。

您可以在此處查看我當前的設置,如果這可能會改變一切(?):

enter image description here

謝謝!


4
2017-11-02 04:56


起源


部分原因在於您是否需要其他操作系統的支持...... - Bob
好點,不,我沒有。 - Django Reinhardt
注意: Windows存儲空間不鏡像 - HaydnWVN
@HaydnWVN在那之前我甚至都沒聽說過存儲空間! - Django Reinhardt
具體的產品名稱是 快速存儲技術,有時也稱為“矩陣存儲技術”。這是過去六,七年中Q,Z和H系列芯片組中常見的功能。 - Charles


答案:


tl;博士:最後一段。

這裡有一些關於可以創建RAID或RAID類設備的各種事情的混淆。讓我們按照偏好和表現的順序討論選項。

最好的第一個:真正的RAID卡,來自LSI,Areca等廠商。這些卡通常具有用於緩存的專用存儲器,並且幾乎總是具有可選的電池備用單元。 BBU為緩存提供電源,以便在意外斷電時,任何尚未寫入磁盤的數據都不會丟失。除非安裝了BBU,否則某些卡不允許您打開寫入緩存。其中一些卡具有提高性能的更高級方法。例如,許多新的LSI卡都有一個名為“CacheCade”的可選附件,它可以使用SSD進行讀取緩存。真正的RAID卡還允許您分配備件,並且可以在驅動器發生故障時自動開始重建陣列。

接下來是OS提供的軟件RAID。 Linux和某些版本的Windows可以使用各種RAID級別創建設備。在許多情況下,軟件RAID是一個適當的解決方案,但它有一些缺點。首先,某些版本的Windows無法啟動Dynamic Disks,這是創建軟件RAID的功能。一些(主要是較舊的)Linux發行版在啟動軟件RAID時也存在問題。其次,軟件RAID缺乏可口的硬件支持寫緩存。它不會使您免於因突然斷電而導致的數據損壞。第三,根據工作負載和RAID類型,它可能消耗非常少量的CPU時間。當使用具有奇偶校驗功能的RAID類型(如6)時尤其如此。我不確定Windows,但Linux的軟件RAID也允許您分配備用驅動器。

接下來是基於固件/芯片組的RAID,如LSI的1068和基於英特爾的“67”,“68”和“77”的RST。與硬件RAID卡一樣,它們將正常驅動器暴露給操作系統,並且不需要驅動程序來執行基本操作。所有I / O操作(包括奇偶校驗)都是在固件本身內完成的,這意味著它們不使用CPU時間。不幸的是,他們也沒有專用硬件RAID的任何好處,如寫緩存或BBU。令人遺憾的是,較舊的英特爾RST以其片狀和挑剔而聞名。固件RAID通常不允許您分配備用驅動器。除非你做一些愚蠢的事情並使用RAID 0,否則使用固件RAID可能看不到任何性能提升。

最後,最糟糕的是,是假的。有兩類假裝。第一個不需要驅動程序,但通常只暴露RAID 0和1.第二個需要所有操作的驅動程序,並在軟件中執行所有操作。可以在便宜的插件卡,一些廉價的消費級NAS設備,甚至某些主板(通常使用AMD或Nvidia芯片組)中找到Fakeraid。與固件RAID一樣,您幾乎肯定不會看到使用fakeraid的性能提升。

您的問題涉及中間兩個選項:Windows軟件RAID與Z77板上的Intel固件RAID。通常情況下,我會說這是一種性能和可靠性的洗滌,因為這兩種選擇都已在現實世界中得到證明並且不會過於苛刻。因為它看起來不像你使用鏡像作為啟動設備,我通常會說Windows軟件RAID可能是最理智的方式。然而,77系列英特爾固件RAID有一個技巧: 它可以使用SSD作為緩存,當你安裝 可選的 驅動程序。也就是說,緩存僅在加載驅動程序時可用。陣列本身始終可用。如果您想在系統中粘貼另一個SSD,它可能會很好用。


6
2017-11-08 18:50



所以你說最初的問題是誤導性的 - 問題中的RAID控制器不是所描述的FakeRAID,而是固件RAID ...... - askvictor
答對了。當它首次推出時,它基本上已經足夠糟糕了 是 實際上是一個假的。這已經過去近十年了,現代化的實施得到了極大的改善。它仍然是 不是很好,但它不會在午餐時吃掉你的數據並且喝掉所有的CPU時間。 - Charles
嗯,公平地說,你攻擊的兩個響應都在處理問題中給出的信息,即FakeRAID,而不是固件RAID。在問題而不是答案中解決這個問題會更公平。無論如何,徹底的回應。 - askvictor
+1非常有趣!如果你對我的問題發表評論會更好,我可以改進它。您是否有任何鏈接可以備份您關於不使用任何CPU的英特爾固件RAID的聲明?謝謝! - Django Reinhardt
以下是Intel RAID BIOS的屏幕截圖,指示降級的陣列和重建提示。請注意,它表示重建將在OS中完成,這意味著它必須加載驅動程序才能執行該功能。 kmpic.asus.com/images/2013/04/19/...  此外,Z77芯片組上的英特爾頁面上寫著:“英特爾®快速存儲技術(英特爾®RST) 要求 [...] 安裝了英特爾RST軟件驅動程序“。 intel.com/content/www/us/en/chipsets/performance-chipsets/... - pacoverflow


似乎有很多關於這個主題的錯誤信息,特別是關於什麼使用CPU和什麼沒有。查爾斯已經發布了一個解釋差異的好答案。幸運的是,有人也對固件和軟件RAID進行了基準測試,並在此處發布了結果:

http://forums.anandtech.com/showthread.php?t=313610

該線程已有幾年曆史,但總結如下:

  1. 不要使用Jmicron [fake RAID] 控制器用於除啞巴AHCI以外的任何設備,最好僅用於DVD驅動器。
  2. 英特爾在OS陣列,一般RAID5或任何多OS系統上更適合RAID0。也可以移動到任何其他ICHXR系統。
  3. Windows有非常好的RAID1,所有陣列都可以在任何Windows Vista和更新的系統之間移動。 (動態分區只能由Windows讀取)

1
2017-09-18 03:43





由於FakeRAID仍在使用您的CPU,因此您將無法獲得任何性能優勢。任何類型的硬件RAID鎖定您 - 如果您需要支持該設備,您最好還是希望它們仍然支持它 - 這不是軟件RAID的問題。簡而言之,您是對的 - 在這種情況下,FakeRAID對軟件RAID沒有任何實際好處(除非您想要添加有關您的用例/產品要求的更多詳細信息)


0
2017-11-07 05:47



-1,公然虛假。英特爾的固件RAID不佔用任何CPU時間。處理完全由芯片組執行。 - Charles
@Charles:公然虛假。它被稱為FakeRAID是有原因的:它不是真正的RAID控制器。 en.wikipedia.org/wiki/RAID#Firmware.2Fdriver-based_RAID - askvictor
也許並不需要(它確實在加載之前作為raid運行)驅動程序,但幾乎總是與驅動程序一起使用,它從主機借用cpu循環。 - askvictor
@Charles英特爾的“fakeRAID”是基於軟件的,因此使用CPU週期。 - Django Reinhardt
@DjangoReinhardt你是對的,英特爾RAID是假的RAID,需要安裝驅動程序。看到我對查爾斯回答的評論: superuser.com/questions/498177/... - pacoverflow


Windows鏡像和英特爾FakeRAID都具有相同的性能。由於他們將使用您的系統資源(CPU)來管理RAID控制器,因此您不會看到真正的好處。

這與硬件RAID控制器不同,在硬件RAID控制器中,控制器將執行任何計算,從而提高CPU的資源使用量。

但是,您還需要考慮FakeRAID控制器和Windows鏡像都是簡單的功能,您可能看不到其中任何一個和硬件RAID控制器之間的速度差異。你會看到的唯一區別是你會有 降低CPU使用率。這個數量差異很小,可以忽略不計。

如果您使用的是計算和編寫奇偶校驗的RAID5 / 6,您可能會看到一些真正的差異。這需要更多的計算,然後可能需要運行一些基準來查看FakeRAID是否比Windows鏡像更好或更差。使用RAID5 / 6時,大多數硬件RAID控制器總是會贏。


0
2017-11-08 02:27



你無法使用任何偽造的回寫,因為在真正的raid控制器上需要電池支持的ram來在斷電時緩存數據。在沒有備用電池的情況下啟用回寫將違反與操作系統的接口合同(硬件承諾數據已寫入磁盤但尚未寫入),如果斷電,則會導致文件系統損壞。 - psusi