天天看點

RAID常用的幾種LEVEL有哪些?各自的特點是什麼?ORACLE資料庫在使用RAID方面有些什麼樣的注意事項

RAID常見的LEVEL有0,1,3,5,組合方式常有0+1,1+0,各自的特點描述如下:

RAID0:将多個實體盤組成一個大的邏輯盤,容量為各盤之和,RW性能最好,但問題是如果一個盤如現損失,整個RAID的資料都将丢失。

RAID1:即鏡像,組成RAID1的多個盤中的資料都是同樣的,這樣多個盤的容量為一個盤,實作了資料保護功能,且讀寫性能都不錯,在一些情況下,讀性能比單個實體硬碟讀高出15-20%左右。

RAID3:組成RAID的多個磁盤中有一個盤用來存儲校驗資料,當有一個非校驗盤損壞時,資料能自動恢複到新盤。但當校驗盤出現損毀時,整個RAID都失效了,即存在單點故障。寫性能較差,但讀性能不錯,因為讀資料時,為一個IO請求服務時,所有的磁盤磁頭都位于同一位置(同一柱面,同一扇區)

RAID5:與RAID3類似,不過校驗資料是分布在整個RAID上的所有硬碟上的。所有無論丢失哪個盤,都不會整個毀壞RAID上的資料。這種方式寫性能較差,讀性能不錯。并适用于随機讀寫頻繁的情況,即多個硬碟磁頭可各自服務于不同的IO請求,提高了讀寫性能。

1+0的情況好于0+1,其原因是0+1時,如果0中一塊盤損壞時,這一半邏輯盤都失效了,讀性能理論上丢失了50%(請參考RAID1的描述);而1+0時,如果0中丢了一塊盤,它的鏡像還存在,能正常工作,整個0還是存在的,對性能影響不大。

在ORACLE使用RAID時,可作這樣的考慮:

兩個盤作RAID1,用來存放線上日志,最好是開成三個卷,存三組,每組兩個成員。

兩個盤作RAID1,用來存歸檔日志。

如果不能為歸檔做專門的RAID1,要将其放在和線上日志同樣的RAID1上,也應該為其單獨開一個卷組

其餘盤做RAID3,或RAID5,具體用哪種要看應用的目的,即參考:如果DB應用為DATA MART/DATA WH ,則用RAID3較好;如果為一般的OLTP應用,則用RAID5較好。這一原則可參看RAID3與RAID5的特點描述。

另外,表空間的劃分上,TEMP,RBS,SYSTEM表空間最好分布在同一卷組上,它們形成的競争最少,另外資料表空間和索引表空間要分在不同的卷存放,通常它們都是形成競争的主要原因。