企業(yè)級(jí)別的數(shù)據(jù)庫(kù)應(yīng)用大多使用RAID磁盤(pán)陣列,來(lái)提高磁盤(pán)的訪問(wèn)性能與數(shù)據(jù)兼容性容錯(cuò),RAID大概可以分為幾個(gè)級(jí)別,SQL Server 2005常用的有幾個(gè)級(jí)別0,1,5,10 下面我來(lái)簡(jiǎn)單說(shuō)說(shuō)這個(gè)幾個(gè)級(jí)別的區(qū)別及其應(yīng)用。
RAID 0 簡(jiǎn)稱磁盤(pán)條帶化,它可以提供最好的讀寫(xiě)性能,如果你把兩塊磁盤(pán)做成了RAID0,那么在寫(xiě)入數(shù)據(jù)的時(shí)候就可以是同時(shí)對(duì)A磁盤(pán)B磁盤(pán)同時(shí)寫(xiě)入,這樣肯定是能提高讀寫(xiě)性能的,但是這樣也帶來(lái)了一個(gè)問(wèn)題就是,如果其中的一部分?jǐn)?shù)據(jù)丟失了,你的全部數(shù)據(jù)都不會(huì)找回來(lái)的,因?yàn)镽AID0沒(méi)有提供冗余恢復(fù)數(shù)據(jù)的策略。所以RAID0可以用在只讀的數(shù)據(jù)庫(kù)數(shù)據(jù)表,或者是經(jīng)過(guò)復(fù)制過(guò)來(lái)的數(shù)據(jù)庫(kù)上,如果你對(duì)數(shù)據(jù)丟失不敏感的話也可以使用,總之這個(gè)level下是高性能無(wú)冗余。
RAID 1 磁盤(pán)鏡像它對(duì)讀沒(méi)有什么影響,如果有兩塊磁盤(pán)它只對(duì)寫(xiě)有影響,因?yàn)樗捎昧艘粔K磁盤(pán)做冗余備份的方法,這樣如果你的兩塊磁盤(pán)是100G,那么你只能使用50G ,這種方法會(huì)影響磁盤(pán)的空間使用,降低了I/O 寫(xiě)的性能。
RAID 5 與RAID1 不同之處就是多了奇偶校驗(yàn),所有的奇偶校驗(yàn)的信息會(huì)遍布各個(gè)磁盤(pán),性能上要比RAID1高些,但是一旦發(fā)生磁盤(pán)I/O失敗,就會(huì)造成性能急劇下降,同時(shí)這種方法也在RAID0 與RAID1間折了中,是比較通用的做法。
RAID 10 就是RAID0 與 RAID1的組合,它提供了高性能,高可用性,性能上要比RAID5好,特別適合大量寫(xiě)入的應(yīng)用程序,但是就是成本比較高無(wú)論是多少塊磁盤(pán)你都是將損失一半的磁盤(pán)存儲(chǔ)。