天天看點

RAID卡設定中的參數解析

我們建立RAID時,會要求我們配置一些參數,這些參數究竟是什麼意思呢?我們主要看下和CACHE相關的參數。

對于磁盤 I/O 來說,如果沒有 CACHE ,就直接從硬碟讀寫;如果有 CACHE ,則首先從 CACHE 讀寫。

CACHE 具有兩大功能:

-- 預讀

CACHE 預讀提高了計算機系統中的硬碟讀的功能,尤其是在讀取含有大量檔案碎片的檔案時。具有良好預讀功能的 RAID 卡能在看起來很随機的讀通路中,識别出讀取磁盤的規律, 通過這個規律提前将系統要讀取的資料放在 CACHE 中。

預讀的兩種方式:

Read Ahead

由于硬碟資料經常是以一族連續的硬碟扇區組織起來的,是以有時侯如把系統所請求的扇區随後的一個扇區裡的資料 同時讀進來是有價值的。對于資料檔案的讀取有利 , 特别是系統 CPU 的性能低時。

Pre-Fetch

當 RAID 卡發現系統要讀的是先前已經讀過的資料時,在 這一次,便将這一個資料塊的資料寫到 CACHE 裡。對于程式檔案的讀取有利 。

寫政策

-- 回寫( Write Back )

-- 通寫( Write Through )

-- 回寫

回寫是通過暫時将資料存在 CACHE 裡,進而推遲将資料寫到慢裝置(如硬碟、錄音帶機)的一種工作方式。資料将在随後的時間,硬碟閑置的時候寫到硬碟中。寫的時候也是統一将 CACHE 内的尚未寫出的資料按照資料塊的在硬碟中的 BLOCK 序号寫入,這樣可以提高寫的效率。

回寫需要加電池給 CACHE 供電,以免資料在寫到硬碟之前系統斷電導緻硬碟資料丢失。

增加 CACHE 大小對于預讀來說,為系統提供了更多的來自 CACHE 的可供讀取的記錄。 對于回寫來說,允許控制卡儲存更多的記錄留待後期寫磁盤。特别是對于電梯式回寫,使得連續的回寫段之間有更近的間隔,降低硬碟寫操作的平均訪時間并提高了吞吐率。

-- 通寫

通寫模式下,所有資料在以指令完成狀态傳回到計算機之前,直接寫到硬碟。兩種寫政策比較來說,寫政策由通寫改為回寫時,可大幅度提高 RAID 性能。但回寫具有一定的資料危險性。在突然斷電的情況下,會丢失存于 Cache 尚未寫入硬碟的資料。

RAID 卡工作在寫政策為 THROUGH 時,緩存大小對 RAID 卡的性能影響很小,隻有當寫政策改為 BACK 時,緩存的作用才會發揮出來。

影響 RAID 卡性能的因素很多,其中可調因素主要有 RAID 卡緩存( CACHE )大小、寫政策( WRITE POLICY )、讀政策( READ POLICY )、條帶的大小( STRIPE SIZE )。不同的 RAID 卡雖然說法略有不同,但意思是一樣的。很多設定可以在 RAID 卡的配置工具中調整。

繼續閱讀