[發明專利]用于磁盤陣列的讀取方法和系統有效
| 申請號: | 201010183392.1 | 申請日: | 2010-05-12 |
| 公開(公告)號: | CN101853218A | 公開(公告)日: | 2010-10-06 |
| 發明(設計)人: | 顏欽華;周洋 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08 |
| 代理公司: | 北京康信知識產權代理有限責任公司 11240 | 代理人: | 余剛;吳孟秋 |
| 地址: | 518057 廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 磁盤陣列 讀取 方法 系統 | ||
技術領域
本發明涉及通信領域,具體而言,涉及一種用于磁盤陣列(RAID)的讀取方法和系統。
背景技術
隨著半導體技術的發展,磁盤I/O帶寬和CPU/內存速度之間存在巨大的和持續擴大的差距,因而磁盤存儲往往成為系統中的性能瓶頸。為了彌合兩者的差距,需要進行并行I/O。利用磁盤陣列(RAID)技術堆疊多個磁盤的I/O能力,就可以提供更大的I/O帶寬。如果需要的I/O帶寬巨大,可以進一步求助于存儲網絡,集群文件系統等在內的技術和架構建造容量和性能可擴展的存儲系統。相對于I/O帶寬,訪問延遲往往是一個更為嚴重的性能問題。由于機械尋道方式的限制,磁盤的平均數據訪問時間在毫秒數量級。雖然已經很快了,但是相對于內存和高速網絡的納秒級訪問時間,訪問磁盤數據的代價是巨大的。更糟糕的是,這一差距一直不斷地在擴大。
在這種情況下,CACHE技術對彌補兩者之間的性能差異有著至關重要的作用。CACHE系統作為最近訪問數據的緩沖區,采取預讀回寫等策略,提高數據的命中率,從而提高整個系統的性能。
在添加了CACHE以后,縮短了I/O路徑,每一次數據的訪問都要先搜索CACHE空間,這樣需要一個高效的查找算法以避免長時間的查找而抵消CACHE帶來的優勢。此外CACHE存放的數據是共享的,如何減少數據的競爭粒度也是需要關注的。
CACHE系統主要處理讀寫命令,為提高讀操作的性能,相關技術提出了預取方法。下面將簡單描述預取方法。
1)預取的概念
預取分為順序預取和隨機預取。在順序預取中又分為同步預取和異步預取。同步預取是在確定是順序流的情況下,發生命中缺失(命中缺失即為用戶訪問的數據不存在于Cache空間中)而進行的預取,它僅僅是在原來讀請求之上再多讀取一定長度的數據。異步預取是在命中了頁面的情況下,創建一個新的讀命令并讀取一定長度的數據。異步預取總是跟同步預取一起使用的。如下圖所示:同步預取在預取p長的頁面集后,如果p值達到了異步預取的閾值,那么將會設置一個異步觸發頁面(該頁面離頁面集中的最后一個頁面的長度為g),如果有讀操作訪問設置有異步觸發標識的頁面時,就會觸發一個異步預取。理論上來說如果異步預取的參數p和g選取的好的話,那么讀操作就不會發生非命中的情況。
跟同步預取相比,異步預取的使用更加廣泛有效。例如:讀取數據時,磁盤忙碌而CPU等待;在處理數據時,CPU忙碌而磁盤空閑。這種交替的空閑和等待是對系統資源的一種閑置浪費。通過異步預取,系統在后臺提前進行I/O,可以消減CPU的等待時間,使之與磁盤并行工作,實現流水線作業。
2)預取參數的時機選擇
如圖2所示,假設一個文件頁面,它在Ta時刻將被應用程序實際訪問,而預取算法在時間Tp發起對這個頁面的I/O請求,經過操作系統和磁盤內部的調度排隊,以及磁盤的尋道和數據傳送等操作,到Tr時頁面數據準備就緒。那么td=Tr-Tp代表此頁面的實際I/O延遲,而應用程序感知到的延遲時間是t’d=max(Tr-Ta,0)。
如果記預取的提前量為te=Ta-Tp,如果有te≥td,即Ta-Tp≥Tr-Tp,那么就有Tr-Ta≤0,此時t’d=0,底層的I/O延遲將被完全隱藏起來,應用程序不必為等待I/O而阻塞。顯然最佳的預取時機是te=td,預取太早會使每塊預取數據占用更長時間的內存,太晚了則會導致應用程序的阻塞。因而預取位置的選擇也是影響預讀性能的一個重要因素。
影響預取的時機即為p,g的值,p代表一次預取的數據長度(數據的讀取很大一部分的時間是在磁盤尋找,因為順序讀取1K的數據跟順序讀取1M的數據花費的時間相差不大),但是p不能過大,因為緩存空間相對于磁盤空間而言是很小的,預取的數據過大而用沒有使用會造成緩存空間的浪費。g的值也影響到了預期的時機,如果g的值比較大,那么在很早的時候就會進行異步預取,增加數據在緩存空間中停留的時間,如果g過小,那么異步預取就來不及出現上圖(b)的情況,需要等待數據準備好。總之,p,g的值共同影響著預讀的進行。要想預取能夠取得比較好的效果,就需要有比較合適的p,g的值。
但是,在相關的技術中,p,g通常是被預先設置的,而不是根據當前的讀取情況動態設置。這樣,根據p和g進行預取之后,往往會出現用戶需要的數據還沒有從磁盤中讀取到緩存空間中,從而延長了讀取時間,降低了讀取的效率;或者,還會出現已經從磁盤中預讀到緩存空間中的數據并沒有被訪問到,從而造成了空間的浪費。
發明內容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010183392.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種安全注射器
- 下一篇:扁管加工方法及扁管、熱交換器加工方法及熱交換器





