顯示具有 RAID 標籤的文章。 顯示所有文章
顯示具有 RAID 標籤的文章。 顯示所有文章

2021年12月15日 星期三

Win10 儲存集區 的讀寫效能比較 Storage Space

三種 Win10 儲存集區 的效能比較

三種 Win10 儲存集區 的讀寫效能比較,當你在建立儲存集區 ,其實就是建立 Windows 作業系統的【 軟體 RAID 】,而這種【 軟體 RAID 】( Win10 storage space )並不支援當成電腦的系統碟,只能當資料碟。另外,當建立儲存空間之前,請先完成建立儲存集區,因為儲存空間是配置於儲存集區上。詳細儲存空間、儲存集區的定義,可以參考微軟網站: 儲存空間直接存取概觀

這一篇文章就來看電腦系統的記憶體容量大小( 8GB, 16GB, 24GB ),會不會對不同的 Windows 10 儲存空間 ( Storage Space )類型,造成讀寫效能的影響。

Win10儲存集區的實驗條件

電腦規格

使用的電腦與作業系統,其實都跟前一篇文章一樣 ( 記憶體容量大小會影響SSD的效能嗎? ):

  1. 記憶體: DDR4-2133 8 GB
    • 記憶體單通道: DDR4-2133 8 GB x 1 
    • 記憶體雙通道: DDR4-2133 8 GB x 2
    • 記憶體單通道: DDR4-2133 8 GB x 3
  2. 作業系統: Windows 10 家用版 64 位元
  3. 測試軟體: CrystalDiskMark 
  4. SSD固態硬碟:
    • KingSton: SUV400S37/240G SSDNow UV400 240 GB, SATA 6G
    • SanDisk: SDSSDXPS-240G-G25 240GB 固態硬碟, SATA 6G
    • Micron: 美光Micron Crucial BX500 240GB SATAⅢ固態硬碟, SATA 6G

建立三種儲存集區

如何建立 Win10 storage space 與 儲存集區,可以參考另一篇文章的建立儲存集區流程的圖文: 儲存空間 : 用 Acer E5-575G 來實現磁碟陣列

在這裡會分別測試以下儲存集區中的儲存空間讀寫效能:

  • 簡單(無備援): Simple
  • 雙向鏡像: Two-way mirror
  • 同位: Parity

簡單(無備援): Simple

下圖是這次實驗的簡單(無備援): Simple 儲存空間細節,因為三顆SSD的容量大小都是223GiB(240GB),所以整個儲存空間大小就是223GiB * 3 = 669GiB。

這種儲存空間就是將資料儲存在N (N≧2) 個以上的硬碟,組合成一個大的儲存空間,但是缺點是完全沒有更正錯誤的能力,只要有一個硬碟故障,就會造成所有存放在硬碟裡面的資料毀損,就無法挽回。

所以,這種儲存集區下的儲存空間適合暫存資料 (例如,視訊轉譯檔案)、影像編輯器草稿檔案,以及中繼編譯器物件檔案。

05_-Win10-儲存集區-的讀寫效能比較-簡單-500x572-1
簡單(無備援): Simple 儲存空間 容量大小

雙向鏡像: Two-way mirror

下圖是這次實驗的雙向鏡像: Two-way mirror 儲存空間細節,因為三顆SSD的容量大小都是223GiB(240GB),所以整個儲存空間大小就是223GiB * 3 * 0.5 約 331GiB。其中*0.5是因為雙向鏡像的儲存空間會將原始資料,儲存兩份相同的資料在這個空間當中。所以,當其中一顆SSD損壞時,可以插入另一顆新的SSD到電腦中,Windows 會自動維護資料的完整性,將資料復原成兩份。缺點就是,這種儲存空間的容量是全部硬碟容量的一半,但是可以換來最佳的資料保護目的。

06_ Win10 儲存集區 的讀寫效能比較 雙面鏡像 500x574
雙向鏡像: Two-way mirror 儲存空間 容量大小

同位: Parity

下圖是這次實驗的同位: Parity 儲存空間細節,因為三顆SSD的容量大小都是223GiB(240GB),所以整個儲存空間大小就是223GiB * 3 *0 .667約 442GiB。

這種儲存空間有點小複雜,所以只要會使用就好了。簡單說,它提供

  • 更好的儲存效率: 與雙向鏡像相比,可以使用比較多的容量。因為一個是可以使用總儲存空間容量的一半;而一個是可以使用總儲存空間容量的三分之二。
  • 具備容錯能力: 與雙向鏡像一樣,可以允許一顆SSD損壞,資料還可以正確存在。
07_ Win10 儲存集區 的讀寫效能比較 同位 500x580_U0826
同位: Parity 儲存空間 容量大小

>>> 你可能會有興趣: 【使用情境】影片錄影搭配 Storage Space,讓工作更有效率!

Win10 儲存集區 的讀寫效能結果

比單顆 SSD 效能好一點

跟前一篇文章單顆 SSD 效能比較的話 ( 記憶體容量大小會影響 SSD 的效能嗎 ? ),效能有好一點,尤其是【 4KiB Q8T8 】這一個項目。不過,卻是三種儲存空間中,連續讀取速度( Sequential Read )效能最差的一個。

02_ Win10 儲存集區 的讀寫效能比較 簡單 1024X512
Windows 10 儲存集區: 簡單(無備援, Simple)的讀寫效能比較

雙通道記憶體效能提升並不明顯

雙向鏡像 ( Two-way mirror ) 的寫入速度明顯比簡單 ( 無備援 Simple ) 來的差。不過讀取速度卻是明顯提升很多。

另外,在雙向鏡像 ( Two-way mirror ) 的儲存空間下,記憶體容量越大,連續讀取速度 ( Sequential Read ) 會越好,不過,幅度卻不是很大。與記憶體跑單通道或雙通道,沒有太直接的關係。

03_ Win10 儲存集區 的讀寫效能比較 雙面鏡像 1024X512
Windows 10 儲存集區: 雙向鏡像 ( Two-way mirror )的讀寫效能比較

適合跑雙通道記憶體

很明顯地看到,連續讀取速度 ( Sequential Read ) 優於其他兩種儲存空間;不過,寫入速度卻是最差的一種儲存空間。

04_ Win10 儲存集區 的讀寫效能比較 同位 1024X512_U0826
Windows 10 儲存集區: 同位 ( Parity ) 的讀寫效能比較

>>> 你可能會有興趣: 【免費軟體】Macrium、Acronis 無法備份 Storage Space的資料, 不過這套可以!

Win10 儲存集區 的心得

你懂你的需求嗎?

像我們這種一般使用者而言,哪一種儲存集區的儲存空間適合自己呢?

我是將手邊堪用又捨不得丟掉的幾顆小硬碟 ( 500 GB ) ,建立【 簡單 ( 無備援 ) :  Simple 】 來二次利用。畢竟現在大家家裡都不只一台電腦 ( 桌上型電腦 + 筆記型電腦 ) ,可以將資料備份到其他台電腦的硬碟 ( 也許是 1 TB 或 4 TB 硬碟中 ) ,甚至還可以把重要的資料,設定成電腦開機就同步到雲端。而且這種儲存空間整體的 讀 、 寫效能,是最適合我的使用習慣了。 

而想要了解更詳細的 4 種 Storage Space types 讀寫效能的數據,可以參考: Storage Space in Windows 10: performance result,裡面有詳細的 4 種類型讀寫效能數據,可以讓你參考。例如:

  • Storage Space types:
    • Simple
    • Two-way mirror
    • Three-way mirror
    • Parity
  • Outstanding I/Os: 1 ~ 32
  • Data size: 512Byte, 4KByte, 16KByte, 32KByte, 64KByte, 256KByte, 512KByte, 1024KByte
  • Test pattern:
    • Sequential
      • Read, Write
    • Random
      • Read, Write

Storage Space無法做開機碟,那麼硬體 RAID 可以嗎?

想要建立開機碟的話,有兩個選擇: 一個是使用主機板 RAID,另一個是使用硬體 RAID CARD。不過以價格來考慮的話,會優先推薦先使用主機板RAID。有興趣的話,可以參考這篇文章: 主機板RAID 0/1/5/10 的讀寫效能 


資料來源:https://hipay0.com/performance-comparison-for-windows-10-storage-space/

2021年1月27日 星期三

mdadm軟RAID的刪除方法和注意事項

刪除整個RAID:


mdadm / dev / md0–fail / dev / sdb–remove / dev / sdb
mdadm / dev / md0–fail / dev / sdc–remove / dev / sdc
mdadm / dev / md0–fail / dev / sdc–remove / dev / sdd
mdadm / dev / md0–失敗/ dev / sde–刪除/ dev / sde
mdadm / dev / md0–失敗/ dev / sdf–刪除/ dev / sdf


mdadm–stop / dev / md0
mdadm–remove / dev / md0


mdadm–misc–zero-superblock / dev / sdb
mdadm–misc–zero-superblock / dev / sdc
mdadm–misc–zero-superblock / dev / sdd
mdadm–misc–zero-superblock / dev / sde
mdadm–misc–zero-超級塊/ dev / sdf


即:先刪除RAID中的所有設備,然後停止該RAID即可

為了防止系統啟動時候啟動raid
rm-f/etc/mdadm.conf
rm-f/etc/raidtab

檢查系統啟動文件中是否還有其他mdad啟動方式

vi/etc/rc.sysinit+/raid\c 

資料來源: http://www.4u.idv.tw/2018/09/14/mdadm%E8%BD%AFraid%E7%9A%84%E5%88%A0%E9%99%A4%E6%96%B9%E6%B3%95%E5%92%8C%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9/

2020年11月23日 星期一

raid 真實案例處理

rebuild時會讓讀取速度下降很多,須調整一些參數

rebuild時加快讀取速度

min 調為50000,max調為500000

root@omvNAS1:~# sysctl -w dev.raid.speed_limit_min=50000
dev.raid.speed_limit_min = 50000
root@omvNAS1:~# sysctl -w dev.raid.speed_limit_max=500000
dev.raid.speed_limit_max = 50000

設定/etc/sysctl.conf中:

dev.raid.speed_limit_min = 50000
##適合基於4-5個磁盤的陣列##
#dev.raid.speed_limit_max = 200000
##適用於大型6-12磁盤陣列###
dev.raid.speed_limit_max = 500000

調整好後,讀取速度加快,rebuild 也加快

預設的 dev.raid.speed_limit_max 情況下 其實很慢
cat /proc/mdstat
顯示大概會是這樣
[>....................] resync = 0.4% (17493632/3897063424)
finish=28532.9min speed=2265K/sec
就我的情況來看 大約會跑20天左右
修改後,再次查看 cat /proc/mdstat
結果馬上變成 剩下10幾個小時完成
cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]
md0 : active raid6 sdj[10] sdm[9] sdh[6] sde[3] sdc[1] sdg[5] sdf[4] sdb[0] sdd[2] sdi[7]
46883123200 blocks super 1.2 level 6, 512k chunk, algorithm 2 [10/9] [UUUUUUUU_U]
[======>..............] recovery = 33.5% (1965857920/5860390400)
finish=831.6min speed=78049K/sec
bitmap: 14/44 pages [56KB], 65536KB chunk

為RAID5或RAID 6設置stripe-cache_size

這僅在RAID5和RAID6上可用,並將同步性能提高3到6倍。該數據用於將對陣列的所有寫操作和對陣列降級的所有讀操作進行同步。默認值為256。有效值為17到32768。在某些情況下,增加此數字可以提高性能,但會增加系統內存的成本。

cat /sys/block/md0/md/stripe_cache_size
8192
echo 32768 > /sys/block/md0/md/stripe_cache_size

收到告警信

檢查信件內容

smartd守護程序記錄了以下警告/錯誤:

設備:/ dev / disk / by-id / ata-HGST_HUS72 6060ALE610_NAHPJ9RY [SAT],1個不可糾正的離線脫機扇區

設備信息: HGST HUS726060ALE610,序列號:NAHPJ9RY,WWN:5-000cca-242d7e089,固件:APGNT7J0,6.00 TB

有關詳細信息,請參閱主機的SYSLOG。

您也可以使用smartctl實用程序進行進一步調查。 如果問題仍然存在,將在24小時內發送另一條消息。

該消息是由運行在以下位置的smartd守護程序生成的:

主機名:omvNAS1 DNS域:tn.edu.tw

smartd守護程序記錄了以下警告/錯誤:

設備:/ dev / disk / by-id / ata-HGST_HUS72 6060ALE610_NAHPJ9RY [SAT],當前不可讀的8個扇區

設備信息: HGST HUS726060ALE610,序列號:NAHPJ9RY,WWN:5-000cca-242d7e089,固件:APGNT7J0,6.00 TB

有關詳細信息,請參閱主機的SYSLOG。

您也可以使用smartctl實用程序進行進一步調查。 如果問題仍然存在,將在24小時內發送另一條消息。

查看日誌

處理SOP

找出有問題磁碟,序號NAHPJ9RY

自我測試結果

在cockpit上的smartd紀錄

找出實體硬碟,讓它亮燈

ledctl locate=/dev/sdj

真實硬碟位置為編號3

從Raid磁碟移除有問題磁碟

除舊佈新

確認從raid碟移除/dev/sdj才可以拔掉真實問題硬碟,插入新硬碟替代/dev/sdj

插入新的硬碟,在系統上發現新的/dev/sdj,序號已經不同NAHN2SVY

重新啟用smart監測

抹除新的磁碟

重新加入新的磁碟到raid:復原

系統自動rebuild

停止閃燈警示

ledctl locate_off=/dev/sdj(停止閃燈)

rbuild的階段,disk io 會比較慢

min/avg/max/mdev = 7.02 ms / 12.9 ms / 22.0 ms / 3.51 ms

rebuild中.......

min/avg/max/mdev = 142.9 ms / 496.0 ms / 1.36 s / 265.7 ms

出現的問題與解決

和沛儲存體都無法掛載了...

網站全掛,,,

我卸載後重新掛載似乎就好了

Why

我剛進去看系統是正常的

不清楚,但我每個掛何沛的網站都一樣情況

https://codecharge.com.tw/phpBB2/viewtopic.php?t=21137

原因可能是這篇寫的

我看看

可能與rebuild有關

應該是

在rebuild時,好像還好,但完成後,是否因資料有變動,之前的掛載視為舊的

重掛載後,目前都正常了嗎?

嗯,都處理好了 

資料來源: https://kawsing.gitbook.io/opensystem/andoid-shou-ji/untitled/zhen-shi-an-li-chu-li

2020年11月17日 星期二

RAID 種類的介紹與分析

RAID

英文全名為Redundant Array of Independent Drivers,中文名稱為磁碟陣列。

磁碟陣列在早期被稱為備援磁碟陣列 (Redundant Array of Inexpensive Drivers,簡稱 RAID),

這個概念是在 1987 年由加州柏克萊大學的一組研究人員所提出,主要是利用個人電腦所使用的硬碟,

來提供大型主機一種低 成本、高容量與高效能的儲存裝置。不過隨著硬碟製造成本的降低,

加上應用範圍已經延伸至個人電腦,目前以容錯式獨立磁碟陣列(Redundant Array of Independent Drivers,

簡稱 RAID)稱之較為適當。

並且在當時定義了 5 種等級的 RAID,分別是RAID 0、RAID 1、RAID 0+1、RAID 3、RAID 4、RAID 5,後來還有其他研究團隊衍生出 RAID 6、RAID 7 等等的各式新規格。

目前較常使用的磁碟陣列等級為 RAID 0、RAID 3、RAID 5 三種,不過也有許多場合應用其他的等級的磁碟陣列。

至於應該選擇何種等級的磁碟陣列使用,則端看使用人數的多寡與用途。

RAID 0 (Striped)

定義為非容錯硬碟群組,必須由兩臺以上的磁碟所組成,也就是將 RAID 控制器上的多臺硬碟整合成為一臺磁碟陣列。

而當資料寫入至硬碟的時候,由於有兩個以 上磁碟讀寫頭的關係,所以資料寫入的速度相當快,換言之,

讀取資料的速度亦比單臺硬碟要快上許多。

此等級的磁碟陣列效能與硬碟的數量成正比,因為硬碟的數 量越多,也代表著磁碟讀寫頭的越多,因此速度也會更快。

但是由於這個等級的磁碟陣列不具容錯的功能,所以當磁碟陣列中的一臺硬碟故障時,整個磁碟陣列上的 資料便會損毀,

無法在更換新的硬碟後還原舊有的資料,因此適用的範圍並不廣泛。


由於 RAID 0 並不具有容錯的功能,雖然讀寫速度快,但對資料的安全性來說,相當沒有保障。

RAID 1 (Mirrored)

RAID 1 的特性恰好與 RAID 0 相反,雖然同樣必須由兩臺以上的磁碟組成,而且硬碟的數量必須為雙數臺,

但是 RAID 控制器會將硬碟分為兩組,並且會將資料同時寫入第一組硬碟與第二組 硬碟,兩組硬碟上的資料完全相同,

也就是說其中一組硬碟的資料屬於備份用途。


正因為如此,當第一組硬碟中有損毀的情形發生時,只要將故障的硬碟更新後,

RAID 控制器會參考第二組硬碟中的資料還原第一組硬碟上的資料,因此即使第一 組硬碟同時故障,亦不需要擔心。

不過缺點在於須使用一半的硬碟空間做資料備份。

RAID 0+1 (Striped+Mirrored)

從字面上就可以了解是由 RAID 0 與 RAID 1 兩種等級的概念所組成。

此等級的磁碟陣列必須由四臺以上的雙數硬碟構成。每兩臺硬碟為一組,每組硬碟均遵守RAID 1的規範,以保障資料的安全性;

而每組硬碟之間則遵守 RAID 0 的規範,以提升整體資料讀寫的速度。

這個等級的磁碟陣列所能使用的硬碟空間只有一半,所以說整體的成本相當的高,不過卻同時具有資料容錯與讀寫速度快的 特色。

RAID 2、RAID 3、RAID 4

這些工作原理相當類似,除具有容錯的功能外,均必須由3臺以上的硬碟組成(每臺硬碟的容量必須相同,

否則以最小的硬碟容量計算),並將同位元檢查資料放在 一臺硬碟上,一般稱為同位碟。

由於在資料寫入磁碟陣列之前,RAID 控制器中的 XOR 會將資料切割為數個區段,並且計算出同位元檢查資料,

而 RAID 3 的區段以byes計算,RAID 4 則以 block 為計算單位。當磁碟陣列中的一臺硬碟故障時,只要更換新的硬碟後,

系統就能回寫舊有的資料。

當使用3臺硬碟組成磁碟陣列時,能使用的硬碟 容量為 2 臺(計算公式為 N-1 臺),

因此比 RAID 1、RAID 0+1 有更多的硬碟空間可利用,每單位的儲存成本較低。

不過由於在寫入資料的同時,必須額外計算出同位元檢查資料,並且將計算出來的結果寫入同位碟,

所以 整體的讀寫效能會比 RAID 0 慢。

RAID 5 (Parity RAID)

運作原理與 RAID 2、RAID 3、RAID 4 相當類似,均必須由 3 臺硬碟組成,但是並沒有特定的同位碟。

當 RAID 控制器上的 XOR 計算出同位元檢查資料後,會隨著資料分別寫入各臺硬碟上,

所以整 體的讀寫效能比 RAID 3、RAID 4要好,不過仍然比 RAID 0 要差。

由於當磁碟陣列中的硬碟發生故障時,RAID 控制器會禁止任何讀取工作的進行,直到故障的硬碟更新,並完成資料復原。

因此當故障的時間發生在半夜,或是沒 有系統管理員在場的時候,伺服器幾乎處於停機的狀態,無法提供任何的服務,

所以便有人提出的備援硬碟(Spare Disk)的概念。

在這種架構下,當磁碟陣列中的其中一臺硬碟發生故障時,RAID 控制器會自動啟用備援硬碟來取代故障硬碟的工作,

只要幾分鐘的時間,就 可以將資料回寫至新的硬碟上。

由於這種做法目前只應用在 RAID 5 的磁碟陣列上,所以稱作 RAID 5+Spare。

RAID 6 (Independent Data disks with two independent distributed parity schemes)

柏克萊只訂到 RAID 5,RAID 6 是 RAID ADVISORY BOARD 定的與 RAID 5 相比,增加了第二個獨立的奇偶校驗信息塊。

兩個獨立的奇偶系統使用不同的算法,數據的可靠性非常高。

即使兩塊磁盤同時失效,也不會影響數據的使用。

但需 要分配給奇偶校驗信息更大的磁盤空間,相對 RAID 5 有更大的quot;寫損失 ",RAID 6 的寫性能非常差,

除了需要使用比 RAID 5 還要更高的安全性保障以外,較差的寫入性能和復雜的實施使得 RAID 6 很少被一般人使用。

RAID 7 (Optimized Asynchrony for High I/O Rates as well as High Data Transfer Rates)

全名為最優化的異步高 I/O 速率和高數據傳輸率,它與以前我們見到 RAID 級別具有明顯的區別。

RAID 7 完全可以理解為一個獨立存儲電腦,它自身帶有作業系統和管理工具,完全可以獨立運行。

RAID 10 (Mirrored+Striped)

這是將 RAID 0 與 RAID 1 的架構作結合用的磁碟陣列,10 與 0+1 的差別僅是先鏡射再分割資料,

或是先分割再將資料鏡射到兩組硬碟,但功能是相同的,而且都需由 4 顆硬碟組成。

這種組法同時具備效能提升與資料備份的優點,只要不是「同組鏡射」的兩顆硬碟同時毀損,資料都可以救得回來。

JBOD (Just Bunch of Disks)

這種組成方式嚴格來說不算 RAID,因為它的功能就跟它的全名一樣,「只是將多顆磁碟湊在一起」,當作一顆超大硬碟來用。

假設是 4 顆 250GB 的大硬碟,在 JBOD 模式下就成了一顆 1TB﹙=1000GB﹚的超高容量硬 碟,

但是除了容量提升之外,它的速度還是跟單一硬碟相同,也沒有額外的安全性。

RAID種類

需要硬碟數

可用容量

效能

安全性

主要應用

JBOD2 以上總容量100%使用維持不變最低追求容量為主合併硬碟而已
RAID 02 以上的偶數總容量 100% 使用最高極低追求硬碟合併的容量與效能
RAID 12 顆為一組總容量的 50%最高完全不能出錯的 1:1 鏡像資料備份
RAID 0+14 以上的偶數總容量的 50%極高同時需要合併的空間與鏡像備份
RAID 2.3.43 以上N 顆減去 1 顆的容量容許一顆硬碟壞掉的資料備份
RAID 53 以上N 顆減去 1 顆的容量讀快寫慢容許一顆硬碟壞掉的資料備份
RAID 64 以上N 顆減去 2 顆的容量讀快寫很慢容許二顆硬碟壞掉的資料備份
RAID 104 以上的偶數總容量的 50%極高類似 RAID 0+1 只是處裡順序不同

資料來源: https://mitblog.pixnet.net/blog/post/33900472