請教各位SSD的高手 關於金士頓 HyperX 3K 120G的速度(已解決)


fedora wrote:
我也對這個很好奇,所...(恕刪)



大大你太強了
五體投地
fedora wrote:
總結:

1.「軟體 RAID」很可靠。即便開機碟無法自動重建,也能由外部開機,下指令去修復。

2. Linux 雖可以安裝在 「軟體 RAID」中,但不建議。因為開機碟無法自動重建,修復上很麻煩。

但如果是用在別的磁區或掛載目錄,放資料的磁區,非系統磁區,則非常合適,效能好彈性大。

3.
「軟體 RAID」的 RAID-1 模式,是否兩顆一模一樣?

比方說:把 RAID-1 其中一顆,拔去插別台電腦,是否也讀的到?

答案是:讀不到。

必須恢復陣列才能讀取。

「軟體 RAID」在這方面的優勢是規格統一,要修復很容易,它是由軟體模擬的。

而有些 RAID 卡,或品牌的 RAID,彼此之間規格不統一,假設說原先 RAID 卡壞掉,換另一牌子的卡,可能無法重建。然後要去找原先那張卡,停產了又找不到,那就坑爹了。

所以有些人保險起見,RAID 卡會一次買兩張,即使一張放著生灰塵也爽,就是要避免這種坑爹情況。

不過有些硬體 RAID,RAID-1 的部份會兩顆一模一樣,卡就算壞了,拔其中一棵去別的電腦,也能讀的到。

但這也就僅限 RAID-1 了,其餘 RIAD-0 、5、6 之類的。軟體 RAID,規格統一,還是有好處。

大大您辛苦了,感謝再感謝!

看來為了讓作業系統能不中斷運作,Fake RAID算是一種省錢的方案!(代價當然是犧牲了一點效能)

補充一下:
因為我也會擔心使用LSI MegaRAID software RAID做成的RAID 1,萬一某天主機板或RAID控制器壞了,是不是無法讀取裡面的資料,所以我有做過實驗拔下單一顆HDD,接在另一台電腦上,好消息是可以讀的到。

但正如fedora大大說的『有些 RAID 卡,或品牌的 RAID,彼此之間規格不統一』,所以小弟以上試驗可行不代表所有的RAID卡做出的RAID 1都可行。

話說回來,Intel晶片內建的LSI MegaRAID,從某種程度上來說也算是一個很接近"統一"的方案吧!畢竟Intel和LSI都算是龍頭的公司了。
因為好奇,所以又做了 WINDOWS 下「軟體 RAID」的實驗:


一、實驗環境:

OS:XP 32bit
虛擬機器:VirtualBox



因為 XP 不支援將系統灌在「軟體 RAID」,所以 RIAD 只能做成資料碟。

上圖:
XP-10GB.vdi (系統碟,放在 RAMDisk)
1GB-A.vdi(空白硬碟,放在 D:)
1GB-B.vdi(空白硬碟,放在 E:)


註1:

我電腦的 D: 和 E: 是兩顆不同實體硬碟。

為加速測試速度,避免 I/O 卡住,所以都放不同的硬碟或 RAMDisk。

註2:

XP 並沒有內建 SATA 控制器驅動,那個虛擬 SATA 控制器一開始在 XP 是無法使用的。

VirtualBox 的 GustAddons 驅動不包含它自己的 SATA 控制器驅動....

查網路它模擬的是 Intel ICH8M-E/ICH9M-E/M SATA RAID Controller。到 Intel 官網可下載。虛擬機中裝上就可以驅動。

***********************************************************

二、建立軟體 RAID(動態磁碟,鏡射磁區)




上圖:

1GB-A.vdi
1GB-B.vdi

兩顆虛擬硬碟,都轉成動態磁碟(一種 windows 專屬的分割磁區)





上圖:建立 RAID-1(鏡射磁區)的過程。



上圖:已經建好 RAID-1 磁碟陣列。



上圖:隨便丟一些檔案到 RAID-1 磁碟中,以便等會可以驗證容錯效果。


※ 註:
如果在建軟體 RAID 時,看不見:鏡射、RAID-5 等選項。

參考網路上找到的這一篇教學:Windows XP-建立軟體 RAID 5

需要做一點小修改....

*************************************************

三、測試軟體 RAID

哈哈,精采的時刻又來了




上圖:老方法,直接拔除虛擬硬碟。



上圖:開進虛擬機,RAID 發生錯誤了,磁碟遺失




上圖:同樣的,加入一顆新的「空白」虛擬硬碟(同容量的),測試是否會自動重建。



上圖:答案是,不會自動重建

把遺失那個,移除掉




上圖:重新啟動 磁碟1(原先 RAID-1 的第一顆)



上圖:啟動後,磁碟就恢復了

型態自動轉換為:簡單(原先是鏡射)

查看磁碟中的資料,完好無損。

結論:windows 的 軟體 RAID-1,兩顆內容是一模一樣的。




上圖:試著修復 RAID-1



上圖:可以修復,重建中



上圖:重建同步完成,RAID 復活了!


******************************************************

四、總結:

windows 的 軟體 RAID-1(鏡射磁區),兩顆內容是一模一樣的。

拔掉其中一顆,同一台電腦,只要重新啟動磁碟,就可以直接讀寫。

理論上來說,拔到另一台 windows 電腦應該也能直接讀取。不過這部份我沒測試,懶得安裝另一台 windows 虛擬機,不好意思。

拔到其它 unix-like 系統電腦的話,應該是無法掛載的,因為"動態磁碟"是 widnows 專利的分割區,其技術規格並沒有公開,別的作業系統無法實作它。所以非 windows 系統會無法辨識這種分割區。

fedora wrote:
四、總結:
windows 的 軟體 RAID-1(鏡射磁區),兩顆內容是一模一樣的。
拔掉其中一顆,同一台電腦,只要重新啟動磁碟,就可以直接讀寫。


理論上來說,拔到另一台 windows 電腦應該也能直接讀取。不過這部份我沒測試,懶得安裝另一台 windows 虛擬機,不好意思。

拔到其它 unix-like 系統電腦的話,應該是無法掛載的,因為"動態磁碟"是 widnows 專利的分割區,其技術規格並沒有公開,別的作業系統無法實作它。所以非 windows 系統會無法辨識這種分割區。

首先感謝您的經驗分享!

但我可以小小吐個槽嗎?
藍字的部分,本來就是RAID-1該做到的功能啊。
不管是硬體式、軟體式(Fake/OS) RAID,只要是RAID-1,不就是應該要這樣?兩顆內容一模一樣,如果掛掉其中一顆硬碟時,系統還是能存取正常的另一顆。

喔!如果是指把RAID-1的其中一顆拔去別台電腦讀取,就我自己試過的幾家RAID-1方案,均有很大的機率是可以的(先不考慮動態磁碟的情況),例如Synology NAS、LSI MegaRAID software RAID、RAIDON GR5630所做出來的RAID-1都可以單拔一顆去別台電腦讀,頂多就是Windows認不得ext3,ext4檔案系統的問題,但就算不是RAID-1的硬碟,Windows照樣認不得Linux的檔案系統。如果RAID-1上有分割NTFS,FAT32檔案系統的話,單拆一顆下來接到Windows電腦時,是可以讀到的。這個實驗結果只限於我自己有試過的RAID-1方案,不保證其它RAID-1方案也是如此。

我會做這些實驗就是擔心萬一RAID掛了,放在裡面的檔案是否能讀出來,不過這都是以前剛買進設備時做的實驗,現在那些設備都有放重要資料,所以不方便重做實驗了。

----------

離題太遠了,稍微拉回正題,看到板上不少大大用兩顆SSD組RAID 0,所以我在想如果我讓server用兩顆SSD組RAID 1,應該可以改善不少校能吧?尤其是資料庫server?
蝦米爸爸 wrote:
不管是硬體式、軟體式(Fake/OS) RAID,只要是RAID-1,不就是應該要這樣?兩顆內容一模一樣,如果掛掉其中一顆硬碟時,系統還是能存取正常的另一顆。...(恕刪)


大部分是這樣沒錯

然而可能想說:會不會有些 RAID 卡或系統,比較特立獨行,採用專屬的分割區系統,RAID-1 直接拔其中一顆去別的電腦,會辨識不到分割區,OS會說磁區損壞,或不明的分割區(實際上沒壞,只是 OS 不認得這種封閉規格的分割區系統)。

以前聽說有些人用 RAID 會這樣,RAID-1 拔其中一顆到別的電腦,也讀不到。

像 windows 的動態磁碟(封閉規格),Linux 的 soft raid 磁區(開放規格),都屬於這類型。

不過 windows 和 Linux 都是很普及的 OS,取得容易,尤其 Linux 直接官網免費高速下載。

硬體 RAID 卡,如果是採用專屬的分割格式,若不透過那張卡或晶片,OS 就無法辨認其分割區的話,卡還在是 OK,但如果卡壞了,要去生一張同樣的,就會很麻煩。

************************************

順便借討論問一下:

RAID-1 是否有「讀取加速」效果?

WIKI 上的資料,寫說 RAID-1 讀取速度,優於單顆硬碟。

可以理解為:RAID-1 是兩顆硬碟資料同步,寫入是一定要同步寫入兩顆硬碟。

但讀出是否有可能:從兩顆硬碟,各別拆資料區塊讀出來,然後在組合起來,達到加速效果?

這個功能,需要處理器,或者 RAID 軟體去分析處理,看要如何優化讀出效率。因為預測太過複雜,所以也許某些廉價 RAID 系統不會實作這功能。

然而,如果 RAID-1 讀出時,只會由其中一顆硬碟讀出, RAID 系統是否會優先選擇讀取速度較快的那顆,去讀出?


我之前測試 Linux 下:
「RAMDisk」 與 「硬碟」 組 RAID-1。

理由是這樣的:

RAMDisk 速度很快,但有個缺點是斷電資料就會消失。

假如 「RAMDisk」 能與 「硬碟」 組成 RIAD-1 ,換言之,可以即時同步備份 RAMDisk 資料,就算突然停電都不用怕。

就是說:把 RAID-1 當成是即時性的 rsync 同步軟體這樣用。

寫入雖然會被拖慢,但也許讀取速度是 RAMDsisk 的速度(因為 RAID-1 從較快的那顆讀出資料)。

有實作過,是可行的。

方法是:
在 RAIDisk 和 硬碟,各創映像檔,比如 10GB 大小的單一映像檔,然後把映像檔各別掛載成虛擬磁碟(loop 磁碟),然後 loop 磁碟組成 RAID-1。

實測讀取速度,確實快過單顆硬碟讀取速度。

寫入則沒有加快,這是預計中的,RAID-1 寫入需同步,所以會被硬碟拖慢。

故意切掉電源,RAMDisk 資料消失,包括裡面映像檔也消失。但硬碟的映像檔還在,可以重建 RAID 系統(等於還原 RAIDisk 資料)。


一切看起來好像都不錯。確實有接近 RAMDisk 讀取速度,然後還可以即時同步備份,

比方說:應用在資料庫,RAMDisk 的 seektime 平均搜尋時間、讀取速度,都可以發揮良好的加速效果。寫入的話,資料庫肯定讀取量大於寫入量,所以寫入沒加速可以接受。

不過我在某一 Linux 論壇,發表這方法,一些網友竟然說這是家家酒,還說 RAID-1 不可能加速讀取,有些更是嗤之以鼻,說胡鬧。

貼測速圖給他們看,還說那是快取效果.... (奇怪我用硬碟讀取,就沒那個速度,快取還看裝置的啊....)


請教大家看法呢?

「RAMDisk」 與 「硬碟」 組 RAID-1。 有沒有意義?

fedora wrote:
「RAMDisk」 與 「硬碟」 組 RAID-1。 有沒有意義?

我第一個想到的問題是,如果電腦重新開機,RAMDisk就沒有資料了,這時RAID就等於失效一顆磁碟、要做rebuild的動作。

第二個問題是,除非你的資料庫不大,不然10GB,20GB的RAMDisk可能不夠用,但如果資料庫不大,那靠cache也許就行了。

第三是硬碟有問題時,除非可以用熱插拔解決(但這時連當機的風險都禁不起、因為重開機後RAMDisk都空了),不然資料就都毀了,也就是資料的風險跟沒有RAID-1差不了多少。

倒是不知有沒有人用兩顆SSD來做RAID-1資料庫?240GB或480GB SSD來應付不算太龐大的資料庫應該還夠用,資料庫正是最吃磁碟I/O的一種應用,用SSD來改善資料庫效能應該會很有感覺吧?
@@大大都好有研究精神。
不過實務上,我相信你們也不敢真的賭下去吧。
有人用SSD當作資料庫存放的來使用,但是應該沒有人敢用RAID0來達到高I/O,但是完全沒安全性的方式來存放資料。除非,他就是一個"只需要讀取"的快取裝置。那完全只需要讀取,想辦法將RAM提高,我相信是比較標準的解法吧。

當兩種不同速度的東西來達到RAID,基本上我覺得只是名詞上的RAID(EX:IRST),應該只是把其中較快的儲存媒體當作快取來使用。

而且SSD可以做,不代表可以用RAM來做。SSD可以當無電的時候,資料仍然存在,可是RAM是不行的。(所以也有人用真正的RAM來做DISK,可惜不知道是哪個問題,消費型的沒繼續發展下去)

dennis168 wrote:
不過實務上,我相信你們也不敢真的賭下去吧。

呵呵!!
我想的是用兩顆SSD組RAID-1資料庫,不是RAID-0,所以不算賭。
但最大問題還是預算啊.....

蝦米爸爸 wrote:
呵呵!!我想的是用兩...(恕刪)


當然可以@@,很多人都這樣用了阿。
像我知道的幾個網站就已經用SSD當主伺服器儲存裝置來用。
只是你想簡單用消費型來玩,還是重資搞商業型來玩。
想快速又想安全,raid 10/01即可,不過要花費不少
文章分享
評分
評分
複製連結

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