專利名稱:存儲系統(tǒng)和存儲控制器以及存儲系統(tǒng)中的緩存實現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及緩存技術(shù),特別涉及一種存儲系統(tǒng)、 一種存儲系統(tǒng)中的存儲
控制器(Storage Controller, SC )、以及一種存儲系統(tǒng)中的緩存實現(xiàn)方法。
背景技術(shù):
用于向網(wǎng)絡(luò)主機提供服務(wù)的存儲系統(tǒng)通常由SC和磁盤拒這兩部分組 成,其中,》茲盤拒中設(shè)置了由多個成員》茲盤組成的獨立》茲盤冗余陣列 (Redundant Array of Independent Disks, RAID )。
圖1為現(xiàn)存儲系統(tǒng)的結(jié)構(gòu)示意圖。如圖l所示,SC通過因特網(wǎng)小型計 算機接口 (Internet Small Computer System Interface, iSCSI)或者光纖通道 (Fibre Channel, FC)接口連接磁盤拒,存儲系統(tǒng)中的SC包括主板芯片 組(Chip Set),以及與主板芯片組相連的中央處理器(CPU) 、 RAID控制 器、系統(tǒng)盤、用作緩存的內(nèi)存。
其中,RAID控制器可以是一獨立的硬件,稱為硬RAID控制器,也可 以是運行于CPU中的一軟件程序,稱為軟RAID控制器;系統(tǒng)盤可看作本 地磁盤,其中承載了 SC提供服務(wù)所需的軟件和數(shù)據(jù),例如操作系統(tǒng);本文 所述的內(nèi)存是指物理內(nèi)存,例如,雙倍速率同步動態(tài)隨機存儲器(Double Data RateSDRAM, DDR)等內(nèi)存條,用以提升對網(wǎng)絡(luò)主才幾的響應(yīng)速度。
SC還具有與主板芯片組相連的業(yè)務(wù)接口 ,例如千兆以太網(wǎng)(GE )接口 、 光纖通道(Fibre Channel, FC)接口,業(yè)務(wù)接口用于外部客戶端訪問存儲系 統(tǒng)。其中,客戶端可以是通過網(wǎng)絡(luò)與存儲系統(tǒng)相連的主機,可簡稱為網(wǎng)絡(luò)主 機。
SC中的CPU根據(jù)業(yè)務(wù)接口接收到客戶端的寫請求或讀請求,調(diào)用RAID控制器并向RAID控制器發(fā)出寫請求以將某些數(shù)據(jù)寫入至RAID中,或發(fā)出 讀請求以獲耳又RAID中存儲的數(shù)據(jù)。
對于CPU發(fā)出的寫請求,RAID控制器先將待寫入RAID的寫數(shù)據(jù)寫入 到內(nèi)存中,實現(xiàn)對寫數(shù)據(jù)的緩存,然后在預(yù)設(shè)的刷新時刻到來時,將內(nèi)存中 的所有寫數(shù)據(jù)批量刷新至RAID中。
對于CPU發(fā)出的讀請求,RAID控制器先在內(nèi)存中查找,如果找到對應(yīng) 的數(shù)據(jù),即命中,則能夠非??焖俚刂苯幼x取,否則,從RAID中查找并讀 取對應(yīng)的數(shù)據(jù)。
在如圖l所示的存儲系統(tǒng)中,緩存算法合理、訪問規(guī)則合理,那么緩存 大小就成為了決定存儲系統(tǒng)性能的主要因素。
然而現(xiàn)有存儲系統(tǒng)SC中的內(nèi)存的槽位數(shù)量是有限的、且每根內(nèi)存條的 容量也是有限的,因而使得存儲系統(tǒng)中由內(nèi)存構(gòu)成的緩存容量有限,從而限 制了存儲系統(tǒng)的性能。
假設(shè)CPU和主板芯片組所能夠支持的內(nèi)存槽位數(shù)最多為4個,則存儲 系統(tǒng)所能夠支持的最大緩存容量-內(nèi)存槽位數(shù)x每根內(nèi)存條的最大容量。目
前每根DDRII內(nèi)存的最大容量是2GB,則圖1所示的存儲系統(tǒng)支持的最大 緩存容量就是8GB,無法再進一步地擴容。
為了再進一步地提高緩存容量以提高存儲系統(tǒng)性能,現(xiàn)有技術(shù)中還可以 將RAID中的部分成員磁盤作為緩存。參見圖1,磁盤柜中的每一個圓形圖 案表示RAID中的一個成員磁盤,其中的深色實心圓形圖案表示作為緩存的 成員磁盤。該方案雖然能夠?qū)崿F(xiàn)緩存容量的進一步擴容,但卻存在以下問題
1 、緩存的數(shù)據(jù)傳輸通路過長。對于寫請求,所有的寫數(shù)據(jù)都必須由R AID 控制器通過iSCSI接口或者FC接口寫入在RAID中用作緩存的成員磁盤中, 然后在刷新時刻到來時,已緩存的寫數(shù)據(jù)通過iSCSI接口或者FC接口被讀 回到RAID控制器后,再次通過iSCSI接口或者FC接口寫入在RAID中的 對應(yīng)成員磁盤中,使得FC/iSCSI數(shù)據(jù)通路的開銷很大。同理,預(yù)先將RAID 中的數(shù)據(jù)讀取至用作緩存的成員磁盤中以便后續(xù)根據(jù)讀請求讀取數(shù)據(jù)時,也存在同樣的問題。在這樣的開銷下,即使用作緩存的成員磁盤為串行SCSI (SAS)磁盤、或固態(tài)磁盤(Solid State Disks, SSD)等高速^茲盤,其高速 的優(yōu)勢也會被抵消掉。
2、 緩存和RAID竟爭資源緩存和RAID共用相同的RAID控制器和 FC/iSCSI數(shù)據(jù)通路,會出現(xiàn)竟爭資源的情況,從而降低存儲系統(tǒng)的性能。
3、 數(shù)據(jù)安全性存在隱患。如果系統(tǒng)中有多個磁盤拒,用作緩存的成員 磁盤所處的磁盤柜掉電時,緩存中的數(shù)據(jù)會丟失,且無法對其他磁盤拒中 RAID的讀寫數(shù)據(jù)實現(xiàn)緩存,從而降低存儲系統(tǒng)的性能。
可見,緩存擴容的目的是為了提高存儲系統(tǒng)的性能,而現(xiàn)有將RAID中 的成員磁盤用作緩存以實現(xiàn)緩存擴容的方案,會導(dǎo)致各種降低存儲系統(tǒng)性能 的問題出現(xiàn),因而該方案并未通過緩存的擴容提高存儲系統(tǒng)的性能。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種存儲系統(tǒng)、 一種存儲系統(tǒng)中的SC、以及 一種存儲系統(tǒng)中的緩存實現(xiàn)方法,能夠通過靈活的緩存擴容提高存儲系統(tǒng)的性能。
本發(fā)明提供的一種存儲系統(tǒng),用于向網(wǎng)絡(luò)主機提供服務(wù),該系統(tǒng)包括 存儲控制器SC、包括至少一個低速磁盤的磁盤陣列,
其特征在于,所述SC中包括用作虛擬緩存的高速磁盤,其讀寫速度大 于所述低速磁盤,用于緩存所述網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)。
所述SC中還包括讀寫速度小于所述高速磁盤的本地磁盤,用于存放所 述存儲系統(tǒng)用以提供服務(wù)的軟件和數(shù)據(jù)。
所述SC中還包括用作緩存的物理內(nèi)存,其讀寫速度大于所述高速磁盤。
所述SC中還包括虛擬緩存啟動裝置,用于控制所述虛擬緩存的開啟 和關(guān)閉。
本發(fā)明提供的一種存儲系統(tǒng)中的SC,應(yīng)用于網(wǎng)絡(luò)主機與包括至少一個 低速磁盤的磁盤陣列之間,并向網(wǎng)絡(luò)主機提供服務(wù),其特征在于,
6所述SC包括用作虛擬緩存的高速磁盤,其讀寫速度大于所述低速磁 盤,用于緩存所述網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)。
所述SC中還包括讀寫速度小于所述高速磁盤的本地磁盤,用于存放所 述SC用以提供服務(wù)的軟件和數(shù)據(jù)。
所述SC中還包括用作緩存的物理內(nèi)存,其讀寫速度大于所述高速磁盤。
所述SC中還包括虛擬緩存啟動裝置,用于控制所述虛擬緩存的開啟 和關(guān)閉。
所述虛擬緩存啟動裝置在所述網(wǎng)絡(luò)主機通過隨機讀取模式訪問所述磁 盤陣列時,關(guān)閉所述虛擬緩存;在所述網(wǎng)絡(luò)主機通過順序讀取模式訪問所述 磁盤陣列時,開啟所述虛擬內(nèi)存。
所述用作虛擬緩存的高速磁盤多于一個,所述多于一個的高速磁盤構(gòu)成 第0級別的獨立》茲盤冗余陣列RAIDO。
本發(fā)明提供的 一種存儲系統(tǒng)中的緩存實現(xiàn)方法,所述存儲系統(tǒng)用于向網(wǎng) 絡(luò)主機提供服務(wù),該系統(tǒng)包括存儲控制器SC、包括至少一個低速磁盤的 ;茲盤陣列,該方法包括
在所述存儲系統(tǒng)的存儲控制器SC設(shè)置讀寫速度大于所述低速磁盤、且 用作虛擬緩存的高速磁盤,
將網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)緩存在所述高速磁盤中。
如果所述網(wǎng)絡(luò)主機通過隨機讀取模式訪問所述磁盤陣列,則關(guān)閉所述虛 擬緩存;
如果所述網(wǎng)絡(luò)主機通過順序讀取模式訪問所述^f茲盤陣列,則開啟所述虛 擬內(nèi)存。
本發(fā)明還公開了一種網(wǎng)絡(luò)存儲控制器,包括 前端接口 ,通過網(wǎng)絡(luò)與網(wǎng)絡(luò)主機相耦合; 后端接口,與^f茲盤陣列相耦合; 緩存,用以提升對網(wǎng)絡(luò)主機請求的響應(yīng)速度; 本地磁盤,用以存儲網(wǎng)絡(luò)控制器運行必須的軟件;所述網(wǎng)絡(luò)存儲控制器還包括作為虛擬緩存的磁盤,用以提升對網(wǎng)絡(luò)主機 請求的響應(yīng)速度,其中該^磁盤的讀寫通道與本地^磁盤的讀寫通道相互獨立。
所述作為虛擬緩存的磁盤,其接口類型不同于本地磁盤接口的接口類 型,其讀寫速度大于本地磁盤讀寫速度。
所述作為虛擬緩存的磁盤,其讀寫速度大于磁盤陣列的讀寫速度。
由上述技術(shù)方案可見,本發(fā)明在SC內(nèi)部設(shè)置高速磁盤,將設(shè)置的高速 磁盤用作虛擬緩存,使得緩存容量可通過增加高速磁盤容量、以及所配置的 虛擬緩存的大小而無限擴容。這樣,可以不受系統(tǒng)硬件的限制靈活地擴充緩
存的容量,同時由于緩存的數(shù)據(jù)不經(jīng)過FC/iSCSI數(shù)據(jù)通路,而不會出現(xiàn)在 讀寫緩存過程中反復(fù)進行數(shù)據(jù)讀寫而導(dǎo)致FC/iSCSI數(shù)據(jù)通路開銷很大的問 題,也不會出現(xiàn)緩存和RAID竟爭資源的問題,數(shù)據(jù)安全性存在的隱患也能 夠被消除。也就是說,本發(fā)明能夠在實現(xiàn)緩存擴容的同時,避免現(xiàn)有方案中 可能導(dǎo)致的各種降低存儲系統(tǒng)性能的問題,因而能夠通過緩存擴容來提高存 儲系統(tǒng)性能。
而且,讀寫緩存完全在SC內(nèi)部實現(xiàn),SC中的各元器件之間也不會存 在相互干擾;SC還可以根據(jù)客戶端的訪問模式選擇開啟或關(guān)閉虛擬緩存, 使得虛擬緩存的使用狀態(tài)能夠自適應(yīng)于不同的訪問模式;用作虛擬緩存的高 速》茲盤還可以多于一個,并構(gòu)成第0級別的RAID (RAIDO),從而能夠進 一步提高讀寫緩存的速度,以進一步提高存儲系統(tǒng)的性能。
圖1為現(xiàn)有存儲系統(tǒng)的結(jié)構(gòu)示意圖。
圖2為本發(fā)明中存儲系統(tǒng)的結(jié)構(gòu)示意圖。
圖3為本發(fā)明存儲系統(tǒng)中的緩存實現(xiàn)方法的示例性流程圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明進一步詳細說明。
本發(fā)明在SC內(nèi)部設(shè)置高速磁盤,將設(shè)置的高速磁盤用作虛擬緩存,使 得緩存容量可通過增加高速磁盤容量、以及所配置的虛擬緩存的大小而無限 擴容。
這樣,既不會出現(xiàn)現(xiàn)有將RAID中的成員磁盤用作緩存以實現(xiàn)緩存擴容 的方案中,在讀寫緩存過程中數(shù)據(jù)反復(fù)經(jīng)過而導(dǎo)致FC/iSCSI數(shù)據(jù)通路開銷 很大的問題,也不會出現(xiàn)緩存和RAID竟爭資源的問題,數(shù)據(jù)安全性存在的 隱患也能夠被消除。也就是說,本發(fā)明能夠在實現(xiàn)緩存擴容的同時,避免現(xiàn) 有方案中可能導(dǎo)致的各種降低存儲系統(tǒng)性能的問題,因而能夠通過緩存擴容 來提高存儲系統(tǒng)的帶寬和IOPS (I/O Per Second),即提高存儲系統(tǒng)性能。
需要說明的是,本發(fā)明所述高速磁盤為非易失性的存儲介質(zhì),所述的"高 速",并非基于絕對標準而確定的。所述"高速"實際上是指相對于看作本 地磁盤的系統(tǒng)盤、以及RAID中各成員磁盤來說,讀寫速度更快,讀寫速度 的高低通??梢砸罁?jù)磁盤的轉(zhuǎn)速以及磁盤的接口速率來分辨。也就是說,相 對于所述的"高速",看作本地;茲盤的系統(tǒng)盤、以及RAID中各成員-茲盤則 可稱為低速磁盤。
而由于物理介質(zhì)的原因,高速磁盤的讀寫速度通常會低于物理內(nèi)存。但 為了保證讀寫緩存的效率,較佳地應(yīng)當(dāng)選擇讀寫速度最接近物理內(nèi)存的高速 磁盤用作虛擬緩存。
當(dāng)然,本發(fā)明并不僅僅是簡單地在SC中設(shè)置用作虛擬緩存的高速磁盤, 隨著SC中增加了高速磁盤,SC中各元器件間的交互方式及內(nèi)部處理方式也 隨之改進,以下進行詳細說明。
圖2為本發(fā)明中存儲系統(tǒng)的結(jié)構(gòu)示意圖。如圖2所示,用于為網(wǎng)絡(luò)主機 提供服務(wù)的存儲系統(tǒng)中的SC包括主板芯片組,以及與主板芯片組相連的 CPU、 RAID控制器、本地磁盤即系統(tǒng)盤、用作緩存的內(nèi)存。設(shè)置于存儲系 統(tǒng)磁盤拒中的RAID由低速磁盤構(gòu)成。
相比于圖l所示的現(xiàn)有存儲系統(tǒng),本發(fā)明存儲系統(tǒng)中的SC還包括用作
9虛擬緩存的高速》茲盤,該高速》茲盤可以為SAS》茲盤、或SSD等任一種高速 》茲盤,其讀寫速度高于本地》茲盤、以及RAID中的成員,茲盤。
也就是說,本發(fā)明如圖2所示的存儲系統(tǒng),相比于如圖1所示的現(xiàn)有存 儲系統(tǒng)的區(qū)別在于SC中包括用作虛擬緩存的高速磁盤,其讀寫速度大于 低速磁盤,用于緩存網(wǎng)絡(luò)主機讀/寫RAID的數(shù)據(jù)。
具體來說,SC中的CPU根據(jù)業(yè)務(wù)接口接收到客戶端、即網(wǎng)絡(luò)主機的寫 請求或讀請求,調(diào)用RAID控制器并向RAID控制器發(fā)出寫請求以將某些數(shù) 據(jù)寫入至RAID中,或發(fā)出讀請求以獲取RAID中存儲的數(shù)據(jù)。
對于CPU發(fā)出的寫請求,RAID控制器在內(nèi)存具有空閑存儲空間時,將 待寫入RAID的寫數(shù)據(jù)寫入到內(nèi)存中;在內(nèi)存空間不足時,將待寫入RAID 的寫數(shù)據(jù)寫入到高速磁盤中;在預(yù)設(shè)的刷新時刻到來時,將內(nèi)存和高速磁盤 中的寫數(shù)據(jù)批量刷新至RAID中。
上述優(yōu)先將寫數(shù)據(jù)緩存至內(nèi)存的原因是由于物理介質(zhì)的不同,內(nèi)存的 讀寫速度通常要快于高速磁盤,因此,將寫數(shù)據(jù)優(yōu)先緩存至內(nèi)存能夠最大限 度地保證寫緩存效率,從而最大限度地保證存儲系統(tǒng)的性能。當(dāng)然,對于本 領(lǐng)域技術(shù)人員均可獲知,隨著硬件技術(shù)的發(fā)展,用作高速磁盤的物理介質(zhì)有 可能使得高速磁盤的讀寫速度高于內(nèi)存,因此,如果高速磁盤的讀寫速度高 于內(nèi)存,則優(yōu)先將寫數(shù)據(jù)緩存至高速磁盤。
當(dāng)然,即便高速磁盤的讀寫速度不如內(nèi)存,但由于其讀寫速度高于本地 磁盤以及RAID中的成員磁盤,因而也可以在系統(tǒng)中僅設(shè)置用作虛擬緩存的 高速磁盤,而不需要再設(shè)置內(nèi)存。
對于CPU發(fā)出的讀請求,RAID控制器先在內(nèi)存和/或高速磁盤中查找, 如果找到對應(yīng)的數(shù)據(jù),即命中,則能夠非??焖俚刂苯幼x取,否則,從RAID 中查找并讀取對應(yīng)的數(shù)據(jù)。
如圖2所示的存儲系統(tǒng)中,本地磁盤、即系統(tǒng)盤可通過集成驅(qū)動電路設(shè) 備(Integrated Divers Electronics, IDE )接口與主板芯片組相連;高速磁盤 可以基于高速率的FC接口、或者串行ATA (Serial Advanced TechnologyAttachment, SATA )接口與主板芯片組相連;RAID控制器、業(yè)務(wù)接口等則 基于外設(shè)部件互連標準(PCI)總線與主板芯片組相連。由于各個元器件占 用不同的接口總線,因而可以保證用作虛擬緩存的高速磁盤有足夠的處理能
由此可見,本發(fā)明中用作虛擬緩存的高速^茲盤為獨立的物理》茲盤,且該 高速》茲盤與本地it盤等其他元器件的讀寫通道相互獨立,而不是將本地^磁盤 的一部分設(shè)置為虛擬緩存,除了考慮到本地磁盤的讀寫速度較低之外,還考 慮到將本地磁盤的一部分設(shè)置為虛擬緩存會導(dǎo)致CPU和RAID控制器通過 本地》茲盤的唯一接口、即通過唯一的讀寫通道同時對本地f茲盤進行訪問,從 而造成訪問沖突以影響系統(tǒng)性能。
實際應(yīng)用中,由于CPU發(fā)送給RAID控制器的讀寫請求通常來自作為 客戶端的網(wǎng)絡(luò)主機,而網(wǎng)絡(luò)主機可能通過不同訪問模式來訪問存儲系統(tǒng),因 而本發(fā)明還可以針對不同訪問模式進行對應(yīng)的處理,以進一步提高存儲系統(tǒng) 的性能。
如果CPU發(fā)出的讀請求所表示的訪問模式為隨機讀取,則考慮到隨機 讀取的命中率較低,因而RAID控制器僅在內(nèi)存中查找對應(yīng)的數(shù)據(jù),而關(guān)閉 高速磁盤的虛擬緩存,即屏蔽與高速磁盤之間的讀寫通道。
如果CPU發(fā)出的讀請求所表示的訪問模式為順序讀取,則RAID控制 器開啟高速磁盤的虛擬緩存,即選通與高速磁盤之間的讀寫通道,并在內(nèi)存 和高速磁盤中查找對應(yīng)的數(shù)據(jù)。在讀取時,還可以根據(jù)預(yù)設(shè)的預(yù)讀取策略進 行數(shù)據(jù)讀取,例如將與此次需讀取的數(shù)據(jù)相鄰的數(shù)據(jù)也讀取到緩存中,從而
提高后續(xù)的讀緩存命中率,即提高存儲系統(tǒng)響應(yīng)讀緩存的速度,進一步提高 存儲系統(tǒng)性能。
也就是說,RAID即可看作是虛擬緩存的啟動裝置,用于控制虛擬緩存
的開啟和關(guān)閉。當(dāng)然,也可以設(shè)置另一獨立的物理控制器、或在CPU中增
加 一軟件程序來實現(xiàn)對虛擬緩存的開啟和關(guān)閉的控制。
為了提高讀寫緩存的速度,以進一步提高存儲系統(tǒng)的性能,如圖2所示的存儲系統(tǒng)中,用作虛擬緩存的高速磁盤還可以多于一個,并構(gòu)成RAIDO。 這樣,在寫入數(shù)據(jù)時,可以將寫數(shù)據(jù)劃分為與高速磁盤數(shù)量相等的數(shù)據(jù)塊后 分別寫入至不同的高速磁盤,從而使得寫操作由串行改為并行,提高寫緩存 的速度;同理,讀緩存也會由串行改為并行,從而提高讀緩存的速度。
當(dāng)然為了保證虛擬緩存的可靠性,也可以由多個高速磁盤構(gòu)成具有冗余 度的RAID,例如第1級別的RAID (RAID1 )、第5級別的RAID5、第6 級別的RAID6等。
實際應(yīng)用中,磁盤拒中也可以設(shè)置不具有冗余度的普通磁盤陣列,即 RAID并非必要條件,因此,本發(fā)明存儲系統(tǒng)中的RA1D也可以替換為不具 有冗余度的、包括至少一個低速磁盤的普通磁盤陣列,此時,存儲系統(tǒng)的 SC中的RAID控制器即可替換為相應(yīng)的實現(xiàn)對磁盤陣列進行讀寫的控制器。
以上是對本發(fā)明存儲系統(tǒng)以及存儲系統(tǒng)中SC的詳細說明。下面,再對 本發(fā)明存儲系統(tǒng)中的緩存實現(xiàn)方法進行說明。
本發(fā)明存儲系統(tǒng)中的緩存實現(xiàn)方法包括在存儲系統(tǒng)的SC設(shè)置讀寫速 度大于構(gòu)成RAID的低速磁盤、且用作虛擬緩存的高速磁盤,并將網(wǎng)絡(luò)主機 讀/寫RAID的數(shù)據(jù)緩存在高速磁盤中。
圖3為本發(fā)明存儲系統(tǒng)中的緩存實現(xiàn)方法的示例性流程圖。如圖3所示, 本發(fā)明存儲系統(tǒng)中的緩存實現(xiàn)方法包括
步驟301,在存儲系統(tǒng)的SC中設(shè)置與主板芯片組相連、且用作虛擬緩 存的高速磁盤,使得SC中包括用作緩存的內(nèi)存、以及用作虛擬緩存的高速 磁盤。
步驟302,判斷接收到寫請求還是讀請求,如果是寫請求,則執(zhí)行步驟 303,如果是讀請求則執(zhí)行步驟304。
步驟303,根據(jù)接收到的寫請求,在內(nèi)存具有空閑存儲空間時,將寫數(shù) 據(jù)寫入到內(nèi)存中,在內(nèi)存空間不足時,將寫數(shù)據(jù)寫入到所述高速磁盤中,并 結(jié)束本流程或返回步驟302繼續(xù)對下一次訪問的處理。
在本步驟之后,如果到達預(yù)設(shè)刷新時刻,則將內(nèi)存和高速磁盤中的寫數(shù)
12據(jù)刷新至存儲系統(tǒng)中的RAID。
步驟304,根據(jù)接收到的讀請求,在內(nèi)存和/或所述高速磁盤中查找,如 果找到對應(yīng)的數(shù)據(jù)則直接讀取,否則,從存儲系統(tǒng)中的RAID中查找并讀取 對應(yīng)的數(shù)據(jù),并結(jié)束本流程或返回步驟302繼續(xù)對下一次訪問的處理。
本步驟中,如果讀請求所表示的訪問模式為隨機讀取,則僅在所述內(nèi)存 中查找對應(yīng)的數(shù)據(jù);如果讀請求所表示的訪問模式為順序讀取,則在所述內(nèi) 存和所述高速磁盤中查找對應(yīng)的數(shù)據(jù)。
至此,本流程結(jié)束。
由上述流程可見,該方法在讀寫緩存時,既不會出現(xiàn)FC/iSCSI數(shù)據(jù)通 路開銷很大的問題,也不會出現(xiàn)緩存和RAID竟爭資源的問題,數(shù)據(jù)安全性 存在的隱患也能夠被消除,因而在實現(xiàn)緩存擴容的同時,避免現(xiàn)有方案中可 能導(dǎo)致的各種降低存儲系統(tǒng)性能的問題,提高了存儲系統(tǒng)性能。
以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范 圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換以及改進等, 均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1、一種存儲系統(tǒng),用于向網(wǎng)絡(luò)主機提供服務(wù),該系統(tǒng)包括存儲控制器SC、包括至少一個低速磁盤的磁盤陣列,其特征在于,所述SC中包括用作虛擬緩存的高速磁盤,其讀寫速度大于所述低速磁盤,用于緩存所述網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)。
2、 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述SC中還包括讀寫速 度小于所述高速磁盤的本地磁盤,用于存放所述存儲系統(tǒng)用以提供服務(wù)的軟 件和數(shù)據(jù)。
3、 如權(quán)利要求1或2所述的系統(tǒng),其特征在于,所述SC中還包括用 作緩存的物理內(nèi)存,其讀寫速度大于所述高速磁盤。
4、 如權(quán)利要求3所述的系統(tǒng),其特征在于,所述SC中還包括虛擬 緩存啟動裝置,用于控制所述虛擬緩存的開啟和關(guān)閉。
5、 一種存儲系統(tǒng)中的存儲控制器SC,應(yīng)用于網(wǎng)絡(luò)主機與包括至少一個 低速磁盤的磁盤陣列之間,并向網(wǎng)絡(luò)主機提供服務(wù),其特征在于,所述SC包括用作虛擬緩存的高速磁盤,其讀寫速度大于所述低速磁 盤,用于緩存所述網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)。
6、 如權(quán)利要求5所述的SC,其特征在于,所述SC中還包括讀寫速度 小于所述高速磁盤的本地磁盤,用于存放所述SC用以提供服務(wù)的軟件和數(shù) 據(jù)。
7、 如權(quán)利要求5或6所述的SC,其特征在于,所述SC中還包括用作 緩存的物理內(nèi)存,其讀寫速度大于所述高速磁盤。
8、 如權(quán)利要求7所述的SC,其特征在于,所述SC中還包括虛擬緩 存啟動裝置,用于控制所述虛擬緩存的開啟和關(guān)閉。
9、 如權(quán)利要求8所述的系統(tǒng),其特征在于,所述虛擬緩存啟動裝置在所述網(wǎng)絡(luò)主機通過隨機讀取模式訪問所述磁 盤陣列時,關(guān)閉所述虛擬緩存;在所述網(wǎng)絡(luò)主機通過順序讀取模式訪問所述》茲盤陣列時,開啟所述虛擬內(nèi)存。
10、 如權(quán)利要求5所述的SC,其特征在于,所述用作虛擬緩存的高速磁盤多于一個,所述多于一個的高速磁盤構(gòu)成第o級別的獨立磁盤冗余陣列RA訓(xùn)。
11、 一種存儲系統(tǒng)中的緩存實現(xiàn)方法,所述存儲系統(tǒng)用于向網(wǎng)絡(luò)主機提 供服務(wù),該系統(tǒng)包括存儲控制器SC、包括至少一個低速磁盤的磁盤陣列, 其特征在于,該方法包括在所述存儲系統(tǒng)的存儲控制器SC設(shè)置讀寫速度大于所述低速磁盤、且 用作虛擬緩存的高速磁盤,將網(wǎng)絡(luò)主機讀/寫所述磁盤陣列的數(shù)據(jù)緩存在所述高速磁盤中。
12、 如權(quán)利要求11所述的方法,其特征在于,如果所述網(wǎng)絡(luò)主機通過隨機讀取模式訪問所述it盤陣列,則關(guān)閉所述虛 擬緩存;如果所述網(wǎng)絡(luò)主機通過順序讀取模式訪問所述磁盤陣列,則開啟所 述虛擬內(nèi)存。
13、 一種網(wǎng)絡(luò)存儲控制器,包括 前端接口,通過網(wǎng)絡(luò)與網(wǎng)絡(luò)主機相耦合; 后端接口,與^f茲盤陣列相耦合;緩存,用以提升對網(wǎng)絡(luò)主機請求的響應(yīng)速度;本地磁盤,用以存儲網(wǎng)絡(luò)控制器運行必須的軟件;其特征在于,所述網(wǎng)絡(luò)存儲控制器還包括作為虛擬緩存的磁盤,用以提 升對網(wǎng)絡(luò)主機請求的響應(yīng)速度,其中該/磁盤的讀寫通道與本地>磁盤的讀寫通 道相互獨立。
14、 如權(quán)利要求13所述的控制器,其特征在于,所述作為虛擬緩存的 磁盤,其接口類型不同于本地磁盤接口的接口類型,其讀寫速度大于本地磁 盤讀寫速度。
15、 如權(quán)利要求13或14所述的控制器,其特征在于,所述作為虛擬緩 存的磁盤,其讀寫速度大于磁盤陣列的讀寫速度。
全文摘要
本發(fā)明公開了一種存儲系統(tǒng)。本發(fā)明在存儲控制器(SC)內(nèi)部設(shè)置高速磁盤,將設(shè)置的高速磁盤用作虛擬緩存,使得緩存容量可通過增加高速磁盤容量、以及所配置的虛擬緩存的大小而無限擴容。這樣,可以不受系統(tǒng)硬件的限制而靈活地擴充緩存的容量,同時不會出現(xiàn)在讀寫緩存過程中反復(fù)進行數(shù)據(jù)讀寫導(dǎo)致數(shù)據(jù)通路開銷很大的問題,也不會出現(xiàn)緩存和磁盤柜中的磁盤陣列競爭資源的問題,數(shù)據(jù)安全性存在的隱患也能夠被消除。也就是說,本發(fā)明能夠在實現(xiàn)緩存擴容的同時,避免現(xiàn)有方案中可能導(dǎo)致的各種降低存儲系統(tǒng)性能的問題,因而能夠通過緩存擴容來提高存儲系統(tǒng)性能。本發(fā)明還公開了一種存儲系統(tǒng)中的SC、以及一種存儲系統(tǒng)中的緩存實現(xiàn)方法。
文檔編號G06F12/08GK101493795SQ20081005680
公開日2009年7月29日 申請日期2008年1月24日 優(yōu)先權(quán)日2008年1月24日
發(fā)明者上官應(yīng)蘭, 微 胡 申請人:杭州華三通信技術(shù)有限公司