网易做的好事

{ Posted on 星期一, 六月 29, 2009 by Kaiser.XKw }
上网闲逛,发现一个好地方, 网易做的好事呢, 还是他们内部的员工自己搞得... 带宽很好的说 http://mirrors.163.com/

老婆的定义

{ Posted on 星期一, 六月 29, 2009 by Kaiser.XKw }
呵呵, 搞笑的百度百科, 不知道女生會不給給男生來個這樣的定義呢! 查了一下, 没有查到老公的 ... 哈哈

关于RAID (2)

{ Posted on 星期六, 六月 27, 2009 by Kaiser.XKw }

一般用途:可能的應用層面

雖然RAID 0是最快的模式,但同時也是最危險的一種。比方說,如果您用4台硬碟組成RAID 0的陣列,可以將資料傳輸率拉到每秒100 MB的門檻以上,不過容錯率卻會趨近於零。要知道硬碟也是機械設備,經過使用後它也會老化或故障,所以機械零件所導致的損壞只是時間問題罷了。但就算只發生了電路上的小錯誤,或製造上的小缺失,也都可能造成大災難。

因此RAID 0對長期保存資料來講並非是個好選擇,而主要應用在暫存資料用的磁碟,像是檔案或是資料庫伺服器等。如果系統本身需要隨時備份,那RAID 1是最佳選擇。如果您有可以熱插拔的設備,您可以在電腦運作中交換硬碟,來將資料備份到不同電腦上容量相同的不同硬碟。接著把硬碟接回電腦,RAID 1模式將會再次啟動,繼續保持資料備份的同步性。

RAID 1純粹只是即時鏡射(mirror)硬碟的資料(特定情況下,也可能鏡射任何RAID陣列),所以許多人會有誤解,以為這個模式無法對效能有所改善。雖然寫入動作的確和只有一顆硬碟時沒有兩樣,但是讀取資料時理論上是可以達到和RAID 0相同的速度的。這只是理論上的計算,因為這種情況是以資料同時從所有陣列內磁碟機上讀取來計算的,但實際上資料讀取的動作,沒有辦法像RAID 0這樣分散的很確實。這部份控制器會以特殊方式來處理分散讀取的動作。

如果您著重在最大限度的資料安全性,以及最低限度的資料救援花費時間(像是簡易伺服器等),那RAID 1就有用了。大多數RAID控制器都能夠在硬碟經過交換後,自動進行獨立的資料回復動作。但只有在您的硬碟安裝在可熱插拔的硬碟櫃中,才能夠即時進行回復。

RAID 3的普及率已經越來越低,因為RAID 5不但提供更多優點,缺點也要來的少。在RAID 3模式中,其中一台硬碟用來存放同位元檢查值。它最大的優點在於能夠把資料分散到各硬碟上,在大幅提升資料傳輸率的同時,也可以防止單顆硬碟損壞。不過由於同位元檢查值只寫入一台硬碟,所以寫入效能也大幅下降。

RAID 3通常應用在存放大多數靜態資料,或是需要RAID 1以上的效能,但同時也要兼顧資料安全的伺服器上。這也是讓寫入性能的影響不那麼大的簡單方式。

RAID 5幾乎佔了目前高階伺服器的大多數。如果您使用4~7顆硬碟,而且硬碟容量夠大,能容許較大的分割區,那這種模式的效能就顯得十分出色。和RAID 3不同的是,它的同位元檢查值也一樣分散在各硬碟上,這對效能會產生正面的影響。這也讓RAID 5模式在各種應用上都能提供十分高的效能。

逼近極限:巢狀RAID陣列

如果您覺得以上陣列所提供的傳輸率還不夠高,您可以組合各種RAID模式。這種架構稱作巢狀RAID陣列(Nested RAID,或多重RAID陣列),不過您應該很少有機會接觸它。這也是當然的,因為傳統的RAID陣列已經夠快了。

就我們所知,IDE市場中並沒有支援巢狀RAID陣列的產品(RAID 10模式例外)。至於SCSI產品方面,如果您想架設一個規格超級豪華的巢狀RAID陣列,最好先準備幾百到幾千美元買張RAID卡吧。

RAID 0+1模式

最常見的巢狀RAID陣列應該是0+1模式。這個模式需要最少4台硬碟,而且數目必須要是偶數。用其中半數硬碟設定出磁碟組(RAID 0),再把另外半數硬碟用來鏡射(RAID 1)這些硬碟。這樣一來,效能和單用一顆硬碟比起來,讀取速度可以快上4倍,寫入效能也會是原本的2倍。

RAID 50(5+0)模式

覺得幾顆硬碟組成的RAID 5陣列速度還不夠快嗎?那不妨建立一個包含兩個架構相同RAID 5陣列的磁碟組吧。雖然這樣一來資料安全性已經消失(在此陣列本身算是一台硬碟),但理論上效能還能再增加一倍。實際上您要考慮到的,將會是PCI界面與網路頻寬的限制,而不是硬碟陣列的速度。

在巢狀RAID陣列(或多重RAID陣列)中,命名是個重要的因素。雖然RAID 0+1的磁碟組只用在下層,鏡射只用在上層,但RAID 10則剛好相反。不過因為RAID 10並不實用,所以這裡誤用名稱也顯得沒那麼重要。

巢狀RAID與安全性:不是1就是0

雖然大多數人應該不會有機會接觸到這麼大型的磁碟陣列,不過我們還是再多提一下RAID的注意事項吧。

雖然將多重RAID陣列組合起來,是有效且穩定的方式,但要保有完整的資料安全性,必須每個陣列本身都具有安全性的保證。像以RAID 0陣列組成的RAID 5陣列就不安全,因為RAID 0當中只要有硬碟故障,那資料仍舊無法救回。

RAID模式一覽:安全性與效能分析

RAID模式一覽:安全性與效能分析

RAID模式硬碟數量資料安全性可利用性實際容量傳輸效能架設成本
01+略差極差100%極佳極低
12良好良好50%尚可偏低
33+尚可良好(x-1)/ x尚可中等
53+尚可良好(x-1)/ x良好中等
0+14、6、8…良好良好50%良好中等

成功的關鍵:區塊大小

在RAID陣列中,區塊大小(block size)基本上也會影響資料分割的大小(RAID 1例外)。區塊大小與浪費空間等因素,也會反映在RAID設定上:比方說區塊大小是64 KB,那每次至少就要用掉64 KB,就算區塊裡只存了一個2 KB的文字檔也一樣用掉64 KB的空間。所以平均檔案越小,區塊大小也應該設小一點。

區塊大小也是影響效能的重要因素,它決定資料分散到2台或更多硬碟時的最小單位。假設區塊大小仍舊是64 KB,比64 KB小的檔案就只會寫到其中一台硬碟,這對RAID陣列來說,效能其實和只有一顆硬碟時完全一樣。

相對的一個150 KB的檔案就會分散到3台硬碟上(如果有3台以上的話),分成64+64+22 KB來存。這樣一來控制器就會同時從3台硬碟上讀取資料,也能夠大幅減少讀取時間。

关于RAID

{ Posted on 星期六, 六月 27, 2009 by Kaiser.XKw }
今天学习SQL 2005 技术内幕, 里面提到RAID10比RAID01要好, 虽然这两种架构的性能相当, 但是就容错性来说,RAID10要远高于RAID01 看来我每次安装服务器的时候大部分都只看到RAID10的选项是有原因的今天就再好好的复习下关于RAID的知识 看来我每次安装服务器的时候大部分都只看到RAID10的选项是有原因的 今天就再好好的复习下关于RAID的知识 RAID10 数据镜像分块 RAID01 数据分块镜像
RAID 0 RAID 1 RAID 3
RAID 4 RAID 5 RAID 6
http://zh.wikipedia.org/wiki/RAID RAID 0

将多个磁碟合并成一个大的磁碟,不具有冗餘,并行I/O速度最快。RAID 0亦称为带区集。它是将多个磁盘并列起来,成为一个大磁盘。在存放数据时,其将数据按磁盘的个数来进行分段,然后同时将这些数据写进这些盘中。 所以,在所有的级别中,RAID 0的速度是最快的。但是RAID 0没有冗余功能,如果一个磁盘(物理)损坏,则所有的数据都会丢失。

理論上越多的磁碟效能就等於[單一磁碟效能]x[磁碟數],但實際上受限於匯流排I/O瓶頸及其它因素的影響,RAID 效能會隨邊際遞減,也就是說,假設一個磁碟的效能是50MB/秒,兩個磁碟的RAID 0效能約96MB/秒,三個磁碟的RAID 0也許是130MB/秒而不是150MB/秒。所以,兩個磁碟的RAID 0最能明顯感受到效能的提升。

但如果是以軟體方式來實作RAID,則磁碟的空間則不見得受限於此(例如Linux Software RAID),透過軟體實作可以經由不同的組合而善用所有的磁碟空間。

RAID 1

两组以上的N個磁盘相互作镜像,速度没有提高,除非擁有相同資料的主磁碟與鏡像同時損壞,否則最高可壞剩N個磁盘,可靠性最高。RAID 1就是镜像。其原理为在主硬盘上存放数据的同时也在镜像硬盘上写一样的数据。当主硬盘(物理)损坏时,镜像硬盘则代替主硬盘的工作。因为有镜像硬盘做数据备份,所以RAID 1的数据安全性在所有的RAID级别上来说是最好的。但無論用多少磁碟做RAID 1,僅算一個磁碟的容量,是所有RAID上磁盘利用率最低的一個级别。

RAID 2

这是RAID 0的改良版,以汉明码(Hamming Code)的方式将数据进行编码后分割为独立的位元,并将数据分别写入硬盘中。因为在数据中加入了错误修正码(ECC,Error Correction Code),所以数据整体的容量会比原始数据大一些,RAID2最少要三台磁碟機方能運作。

RAID 3

采用Bit-interleaving(数据交错儲存)技術,它需要通过编码再将数据位元分割後分别存在硬盘中,而将同位元检查後单独存在一个硬盘中,但由于数据内的位元分散在不同的硬盘上,因此就算要读取一小段数据资料都可能需要所有的硬盘进行工作,所以这种规格比较适于读取大量数据时使用。

RAID 4

它与RAID 3不同的是它在分割时是以区块为单位分别存在硬盘中,但每次的数据存取都必须从同位元检查的那个硬盘中取出对应的同位元数据进行核对,由于过于频繁的使用,所以对硬盘的损耗可能会提高。(Block interleaving)

RAID 5

RAID Level 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。它使用的是Disk Striping(硬盘分割)技术。RAID 5 至少需要三顆硬碟, RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储於不同的磁盘上。当RAID5的一个磁盘数据发生损坏後,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。 RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保障程度要比鏡像低而磁盘空间利用率要比鏡像高。RAID 5具有和RAID 0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度相當的慢,若使用「回寫快取」可以讓效能改善不少。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较便宜。

RAID 6

与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写损失”,因此“写性能”非常差。较差的性能和复杂的实施方式使得RAID 6很少得到实际应用。

同一陣列中容許兩個硬碟同時失效(或是當一個失效後還來不及更換便有第二個失效)後。更換新硬碟時再由另兩個正常硬碟將備份的資料建立在新的硬碟中。所以至少必須具備四或四個以上硬碟才能生效。

RAID 7

這是一種新的RAID標準,其自身帶有智慧化即時操作系統和用於存儲管理的軟體工具,可完全獨立於主機運行,不佔用主機CPU資源。RAID 7可以看作是一種存儲電腦(Storage Computer),它與其他RAID標準有明顯區別。

RAID 10/01

RAID 10/01其實可細分為RAID 1+0或RAID 0+1。

RAID 1+0是先鏡射再分割資料。是將所有硬碟分為兩組,視為是RAID 0的最低組合,然後將這兩組各自視為RAID 1運作。RAID 1+0有著不錯的讀取速度,而且擁有比RAID 0更高的資料保護性。

RAID 0+1則是跟RAID 1+0的程序相反,是先分割再將資料鏡射到兩組硬碟。它將所有的硬碟分為兩組,變成RAID 1的最低組合,而將兩組硬碟各自視為RAID 0運作。RAID 0+1比起RAID 1+0有著更快的讀寫速度,不過也多了一些會讓整個硬碟組停止運轉的機率;因為只要同一組的硬碟全部損毀,RAID 0+1就會停止運作,而RAID 1+0則可以在犧牲RAID 0的優勢下正常運作。

RAID 10巧妙的利用了RAID 0的速度以及RAID 1的保護兩種特性,不過它的缺點是需要的硬碟數較多,因為至少必須擁有四個以上的偶數硬碟才能使用。

應用

在實際的應用上,RAID2~4並不存在。因為RAID5已經涵蓋了所需的功能,因此RAID2~4目前只有在研究領域有實作,而在實際應用上則以RAID5或RAID6為主。

与你相伴

{ Posted on 星期六, 六月 27, 2009 by Kaiser.XKw }
宝贝,虽然我们还没有在一起,但是我真的希望能和你永相廝守 建立这个Bolg,留下我们一些美好的回忆 呵呵,当我们老的走不动的时候,看看现在的话语,肯定别有一番感觉...... 人生路漫长,愿与你相伴此生 私人言论,未经本人同意请勿转载

写在开篇的话

{ Posted on 星期六, 六月 27, 2009 by Kaiser.XKw }
很早就有这个想法, 写写当下的一些感悟和体验, 人生路还很长,希望能在耄耋之年看看曾经的我留下的笔记, 让自己的回忆更加充实. 想法很早就有, 行动才刚刚进行. 与其说是工作方面的原因, 还不如说是自己的懒惰 我想如果真的想给自己留下些什么, 应该要有所行动, 现在应该不会太迟 走入社会, 转眼8年, 近3000的日夜, 发现时间流逝的实在是满快的. 但近来的日子不怎么好过, 想法太多, 正是留下些东西的时候 常言到三十年前睡不醒, 三十年后睡不着. 曾以为自己是很放得下的人, 到现在才发现不是. 放不下就写下吧 ---- 希望我能做到这点 私人言论,未经本人同意请勿转载