欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

將閃存高速緩存集成到大型存儲(chǔ)系統(tǒng)的制作方法

文檔序號(hào):6359626閱讀:158來(lái)源:國(guó)知局
專利名稱:將閃存高速緩存集成到大型存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及存儲(chǔ)系統(tǒng),更具體地說(shuō),涉及將基于閃存的高速緩存集成到大型存儲(chǔ)系統(tǒng)。
背景技術(shù)
基于閃存的固態(tài)驅(qū)動(dòng)器(“SSD”)的出現(xiàn)徹底改變了從筆記本電腦到企業(yè)存儲(chǔ)系統(tǒng)的主存儲(chǔ)計(jì)算機(jī)架構(gòu)?;陂W存的SSD提供的隨機(jī)I/O性能和訪問(wèn)延遲優(yōu)于旋轉(zhuǎn)硬盤驅(qū)動(dòng)器(“HDD”)幾個(gè)數(shù)量級(jí)。此外,基于閃存的SSD顯著降低了功耗?;陂W存的存儲(chǔ)器擴(kuò)展卡成為用于存儲(chǔ)器擴(kuò)展和改進(jìn)的工具,即使在網(wǎng)絡(luò)環(huán)境中也是如此。通常,使用快速外圍組件互連(PCI-e)插槽直接將這些擴(kuò)展卡放置到主機(jī)中,從而將這些卡放置在更靠近主機(jī)的處理器的位置,而不是更靠近由主機(jī)通過(guò)網(wǎng)絡(luò)訪問(wèn)的存儲(chǔ)盤的位置。將擴(kuò)展卡放置得更靠近處理器可防止來(lái)自盤陣列控制器和網(wǎng)絡(luò)協(xié)議的額外延 遲。即使基于閃存的SSD和基于閃存的存儲(chǔ)器擴(kuò)展卡提供的隨機(jī)輸入/輸出(I/O)性能和訪問(wèn)延遲優(yōu)于HDD幾個(gè)數(shù)量級(jí),但隨機(jī)讀取/寫入I/O性能在很大程度上取決于與設(shè)備關(guān)聯(lián)的固態(tài)存儲(chǔ)控制器的架構(gòu)。例如,如所指出的,基于閃存的SSD的讀取和寫入延遲通常比HDD低兩個(gè)數(shù)量級(jí),但在諸如使用HDD進(jìn)行存儲(chǔ)的企業(yè)存儲(chǔ)系統(tǒng)之類的大型存儲(chǔ)系統(tǒng)中,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)高速緩存的延遲仍然優(yōu)于基于閃存的SSD兩個(gè)數(shù)量級(jí)。就每秒I/O操作數(shù)(“I0PS”)和延遲而言,整體系統(tǒng)性能不僅取決于固態(tài)存儲(chǔ)器控制器的內(nèi)部架構(gòu),而且還在很大程度上取決于整體系統(tǒng)架構(gòu),例如基于閃存的存儲(chǔ)器擴(kuò)展如何集成到系統(tǒng)以及提供哪些接口。圖I是示出根據(jù)現(xiàn)有技術(shù)的常規(guī)存儲(chǔ)系統(tǒng)100的一個(gè)實(shí)施例的示意性方塊圖。系統(tǒng)100包括多個(gè)I/O機(jī)柜(enclosure) 102a-n,它們?cè)谝粋€(gè)或多個(gè)主機(jī)104a_n與一個(gè)或多個(gè)存儲(chǔ)設(shè)備106a-n之間提供接口。存儲(chǔ)設(shè)備106a-n可以容納在機(jī)柜(例如容納一個(gè)或多個(gè)HDD的盤機(jī)柜)中。如在此使用的,I/O機(jī)柜指容納各種I/O適配器和連接性設(shè)備以在I/O存儲(chǔ)單元處理器與I/O適配器之間提供通信的設(shè)備。通常,I/O機(jī)柜102a-n成對(duì)安裝以提供冗余保護(hù)。包含在I/O機(jī)柜中的I/O適配器通常是主機(jī)適配器108a-n或設(shè)備適配器110a-n。I/0機(jī)柜具有多個(gè)可用插槽,主機(jī)適配器108a-n或設(shè)備適配器110a_n可以附接到這些插槽。然而,在許多情況下,I/O機(jī)柜保留幾個(gè)空置插槽(open slot)以用于擴(kuò)展或其他用途。主機(jī)適配器108a-n是在主機(jī)104a_n與I/O機(jī)柜102a_n之間提供連接性的適配器。主機(jī)104a-n通??缇W(wǎng)絡(luò)112連接到主機(jī)適配器108a_n,網(wǎng)絡(luò)112包括諸如路由器、交換機(jī)之類的各種設(shè)備。主機(jī)104a-n通常使用諸如光纖通道、光纖連接性(FIC0N)、企業(yè)系統(tǒng)連接(ESCON)之類的網(wǎng)絡(luò)技術(shù)或本領(lǐng)域技術(shù)人員知道的其他連接性協(xié)議連接到主機(jī)適配器108a-n。設(shè)備適配器110a-n是在設(shè)備(例如存儲(chǔ)設(shè)備106a_n)與1/0機(jī)柜102a_n之間提供連接性的設(shè)備。在一個(gè)實(shí)施例中,設(shè)備適配器110a-n可以是光纖通道仲裁環(huán)(FC-AL)設(shè)備適配器。在一個(gè)典型實(shí)施例中,每個(gè)設(shè)備適配器110a-n可以連接到為存儲(chǔ)設(shè)備106a-n提供通信的兩個(gè)單獨(dú)交換網(wǎng)絡(luò)。當(dāng)設(shè)備適配器110a-n連接到存儲(chǔ)設(shè)備106a-n時(shí),它可以使用交換連接通過(guò)最短可能路徑傳輸數(shù)據(jù)。通過(guò)一個(gè)或多個(gè)處理器復(fù)合體114a_b促進(jìn)系統(tǒng)100的各種組件之間的通信。在以典型企業(yè)存儲(chǔ)系統(tǒng)實(shí)現(xiàn)的通用架構(gòu)中,使用兩個(gè)處理器復(fù)合體114a_b提高可靠性并改進(jìn)性能。處理器復(fù)合體114a-b通常連接到每個(gè)I/O機(jī)柜102a-n并包括在主機(jī)適配器108a_n與設(shè)備適配器110a-n之間提供通信所必需的邏輯,從而使連接到主機(jī)適配器108a-n的主機(jī)104a-n能夠經(jīng)由設(shè)備適配器110a-n訪問(wèn)存儲(chǔ)設(shè)備106a_n。處理器復(fù)合體114a_n在此也可以稱為中央電子設(shè)備復(fù)合體(CEC)。在常規(guī)系統(tǒng)中,處理器復(fù)合體通常包括諸如DRAM 116a_b之類的易失性存儲(chǔ)器以及稱為非易失性存儲(chǔ)裝置(NVS) 118a-b的非易失性存儲(chǔ)器,非易失性存儲(chǔ)器通常被配置為帶后備電源的DRAM。處理器復(fù)合體的存儲(chǔ)器116、118通常用于緩存與通過(guò)系統(tǒng)100處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。 在操作中,主機(jī)適配器108a-n首先處理來(lái)自主機(jī)104a_n的讀取和寫入請(qǐng)求,主機(jī)適配器108&-11又與處理器復(fù)合體114&交互。處理器復(fù)合體114a管理去往存儲(chǔ)設(shè)備106a-n的邏輯卷的所有讀取和寫入請(qǐng)求。在寫入請(qǐng)求期間,處理器復(fù)合體114a可以使用快速寫入,其中數(shù)據(jù)被緩存到一個(gè)處理器復(fù)合體114a的易失性存儲(chǔ)器116a,并且還被寫入到另一個(gè)處理器復(fù)合體114b的永久性存儲(chǔ)器118b。處理器復(fù)合體114a然后可以甚至在實(shí)際寫入到盤之前,將該寫入報(bào)告為完成。這將提供快速寫入延遲。然而,當(dāng)處理器復(fù)合體存儲(chǔ)器116、118用作數(shù)據(jù)高速緩存時(shí),大小、時(shí)間和功率限制可能限制該存儲(chǔ)器的效率。當(dāng)主機(jī)104a_n執(zhí)行讀取操作時(shí),處理器復(fù)合體114a_b使用高性能交換網(wǎng)絡(luò)架構(gòu)從存儲(chǔ)設(shè)備106a-n取回?cái)?shù)據(jù)。當(dāng)數(shù)據(jù)被取回并返回到主機(jī)104a-n時(shí),該數(shù)據(jù)還可以被緩存到易失性存儲(chǔ)器116a-b,以防在未來(lái)讀取請(qǐng)求中再次需要該數(shù)據(jù)。在一個(gè)實(shí)施例中,處理器復(fù)合體114a-b嘗試通過(guò)使用諸如自適應(yīng)替換高速緩存中的順序預(yù)取(SARC)之類的算法來(lái)預(yù)計(jì)未來(lái)讀取。只要可能使用此類算法,數(shù)據(jù)便會(huì)保存在高速緩存中。如果在被請(qǐng)求數(shù)據(jù)已在高速緩存中的情況下發(fā)生高速緩存命中,則主機(jī)104a-n不必等待從存儲(chǔ)設(shè)備106a-n取回?cái)?shù)據(jù)。然而,由于處理器復(fù)合體存儲(chǔ)器116、118的大小、時(shí)間和功率限制,這些存儲(chǔ)器的緩存能力可能不會(huì)在所有情況下都令人滿意。美國(guó)專利7,421,552-B2 (Long, M. , “Techniques for Managing Data within aData Storage System using a Flash-based Memory Vault (使用基于閃存的存儲(chǔ)器庫(kù)在數(shù)據(jù)存儲(chǔ)系統(tǒng)中管理數(shù)據(jù)的技術(shù))”)披露了以下技術(shù)使用基于閃存的存儲(chǔ)器管理數(shù)據(jù)存儲(chǔ)系統(tǒng)中的數(shù)據(jù);使用易失性存儲(chǔ)器存儲(chǔ)高速緩存代表一組主機(jī)以及在數(shù)據(jù)存儲(chǔ)系統(tǒng)由主電源供電時(shí)代表一組盤驅(qū)動(dòng)器來(lái)執(zhí)行數(shù)據(jù)存儲(chǔ)操作。因此,本領(lǐng)域中需要解決上述問(wèn)題。

發(fā)明內(nèi)容
從上述討論應(yīng)顯而易見(jiàn)的是,需要一種改進(jìn)當(dāng)前存儲(chǔ)架構(gòu)和數(shù)據(jù)緩存系統(tǒng)的裝置、系統(tǒng)和方法。有利的,此類裝置、系統(tǒng)和方法將基于閃存的存儲(chǔ)設(shè)備集成到1/0機(jī)柜的一個(gè)或多個(gè)空閑插槽,以提供改進(jìn)本領(lǐng)域公知的架構(gòu)和緩存功能的緩存和存儲(chǔ)能力。
開(kāi)發(fā)了本發(fā)明以響應(yīng)本領(lǐng)域的目前狀況,具體地說(shuō),以響應(yīng)本領(lǐng)域中尚未完全由當(dāng)前可用的存儲(chǔ)系統(tǒng)架構(gòu)解決的問(wèn)題和需求。相應(yīng)地,開(kāi)發(fā)了本發(fā)明的一個(gè)優(yōu)選實(shí)施例,以提供一種用于將閃存高速緩存(flash cache)集成到大型存儲(chǔ)系統(tǒng)的裝置、系統(tǒng)和方法,其克服了上面討論的本領(lǐng)域中許多或全部缺點(diǎn)。用于集成基于閃存的高速緩存的裝置具備多個(gè)模塊和設(shè)備。所述實(shí)施例中的這些模塊和設(shè)備包括輸入/輸出(“I/O”)機(jī)柜模塊、主機(jī)適配器、設(shè)備適配器、基于閃存的緩存設(shè)備(“閃存高速緩存”)以及主處理器復(fù)合體。所述I/O機(jī)柜模塊包括一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備。所述主機(jī)適配器連接到所述I/o機(jī)柜模塊的第一插槽并被配置為將主機(jī)連接到所述I/o機(jī)柜。所述設(shè)備適配器連接到所述I/O機(jī)柜模塊的第二插槽并被配置為將存儲(chǔ)設(shè)備連接到所述I/o機(jī)柜模塊。所述閃存高速緩存連接到所述I/O機(jī)柜模塊的第三插槽,并包括被配置為緩存與通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。所述主處理器復(fù)合體管理通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求,方式為與所述主機(jī)適配器、設(shè)備適配器以及閃存高速緩存通信以處理所述數(shù)據(jù)請(qǐng)求。 在一個(gè)實(shí)施例中,所述主處理器復(fù)合體進(jìn)一步包括動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“DRAM”)高速緩存以臨時(shí)緩存與通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。在進(jìn)一步的實(shí)施例中,其中所述主處理器復(fù)合體進(jìn)一步包括非易失性存儲(chǔ)裝置(“NVS”)高速緩存,所述非易失性存儲(chǔ)裝置(“NVS”)高速緩存包括非易失性存儲(chǔ)設(shè)備以緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。在一個(gè)實(shí)施例中,所述主處理器復(fù)合體被配置為將緩存在所述DRAM高速緩存和NVS高速緩存之一中的數(shù)據(jù)離臺(tái)到所述閃存高速緩存。在一個(gè)實(shí)施例中,所述裝置被進(jìn)一步配置為包括輔助處理器復(fù)合體,所述輔助處理器復(fù)合體用作通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的輔助管理器,使得所述輔助處理器復(fù)合體響應(yīng)于所述主處理器復(fù)合體的故障而與所述主機(jī)適配器、設(shè)備適配器以及至少一個(gè)閃存高速緩存通信以管理數(shù)據(jù)請(qǐng)求。在進(jìn)一步的實(shí)施例中,所述輔助處理器復(fù)合體進(jìn)一步包括DRAM高速緩存以臨時(shí)緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。在進(jìn)一步的實(shí)施例中,所述輔助處理器復(fù)合體進(jìn)一步包括NVS高速緩存,所述NVS高速緩存包括非易失性存儲(chǔ)設(shè)備以緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。在一個(gè)實(shí)施例中,將所述閃存高速緩存恰好分配給所述主處理器復(fù)合體和輔助處理器復(fù)合體中的一個(gè),其中所述主處理器復(fù)合體和輔助處理器復(fù)合體均被配置為管理通過(guò)所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求。在進(jìn)一步的實(shí)施例,響應(yīng)于所述主處理器復(fù)合體的故障,將首先分配給所述主處理器復(fù)合體的所述至少一個(gè)閃存高速緩存重新分配給所述輔助處理器復(fù)合體。在所述裝置的一個(gè)實(shí)施例中,將所述閃存高速緩存分成多個(gè)區(qū)域,所述區(qū)域包括緩存與讀取數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的讀取緩存區(qū)域以及緩存與寫入數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的寫入緩存區(qū)域。在進(jìn)一步的實(shí)施例中,將所述閃存高速緩存進(jìn)一步分成補(bǔ)充讀取緩存區(qū)域,所述補(bǔ)充讀取緩存區(qū)域維護(hù)已離臺(tái)到存儲(chǔ)設(shè)備的數(shù)據(jù)的緩存,以便可以從所述補(bǔ)充讀取緩存區(qū)域取回所述數(shù)據(jù);以及存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域存儲(chǔ)未離臺(tái)到存儲(chǔ)設(shè)備的數(shù)據(jù),以便從所述存儲(chǔ)區(qū)域取回所述數(shù)據(jù)。在一個(gè)實(shí)施例中,所述主處理器復(fù)合體被配置為獨(dú)占地使用所述閃存高速緩存以緩存通過(guò)所述I/o機(jī)柜模塊處理的操作,以便所述主處理器復(fù)合體不使用單獨(dú)的DRAM高速緩存和/或NVS高速緩存來(lái)緩存操作。還提供了本發(fā)明的一種用于將基于閃存的高速緩存集成到存儲(chǔ)系統(tǒng)的系統(tǒng)。所披露的實(shí)施例中的方法實(shí)質(zhì)上包括執(zhí)行以上針對(duì)所述裝置的操作提供的功能所必需的步驟。所述系統(tǒng)可以包含在各種配置中以將閃存高速緩存集成到I/O機(jī)柜的額外插槽。具體地說(shuō),在一個(gè)實(shí)施例中,所述系統(tǒng)包括具有一個(gè)或多個(gè)I/O機(jī)柜的I/O機(jī)柜模塊,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備。所述系統(tǒng)優(yōu)選地具有連接到所述I/O機(jī)柜模塊的第一插槽的至少一個(gè)主機(jī)適配器,所述主機(jī)適配器被配置為將主機(jī)連接到所述I/0機(jī)柜模塊。至少一個(gè)主機(jī)連接到所述至少一個(gè)主機(jī)適配器。至少一個(gè)設(shè)備適配器連接到所述I/O機(jī)柜模塊的第二插槽,并且所述設(shè)備適配器被配置為將存儲(chǔ)設(shè)備連接到所述I/O機(jī)柜模塊。所述系統(tǒng)還包括連接到所述至少一個(gè)設(shè)備適配器的至少一個(gè)存儲(chǔ)設(shè)備。所述系統(tǒng) 還包括連接到所述I/O機(jī)柜模塊的第三插槽的至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”)。所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。所述系統(tǒng)還可以包括管理通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的主處理器復(fù)合體。所述主處理器復(fù)合體與所述至少一個(gè)主機(jī)適配器、所述至少一個(gè)設(shè)備適配器以及所述至少一個(gè)閃存高速緩存通信以管理所述數(shù)據(jù)請(qǐng)求。在所述系統(tǒng)的一個(gè)實(shí)施例中,所述主機(jī)是計(jì)算機(jī)系統(tǒng),其中所述計(jì)算機(jī)系統(tǒng)包括至少一個(gè)處理器和存儲(chǔ)器。在進(jìn)一步的實(shí)施例中,所述存儲(chǔ)設(shè)備包括硬盤驅(qū)動(dòng)器和磁帶驅(qū)動(dòng)器中的一個(gè)或多個(gè)。還提供了本發(fā)明的一種用于將基于閃存的高速緩存集成到存儲(chǔ)系統(tǒng)的方法。所披露的實(shí)施例中的方法實(shí)質(zhì)上包括執(zhí)行以上針對(duì)所述裝置和系統(tǒng)的操作提供的功能所必需的步驟。在一個(gè)實(shí)施例中,所述方法包括將至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”)連接到I/o機(jī)柜模塊,所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。所述方法還可以包括在連接到所述I/o機(jī)柜模塊的第一插槽的主機(jī)適配器處接收數(shù)據(jù)請(qǐng)求。所述主機(jī)適配器被配置為將主機(jī)連接到所述I/o機(jī)柜模塊。所述I/O機(jī)柜模塊包括一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備,并且所述I/o機(jī)柜模塊具有連接到所述I/O機(jī)柜模塊的第二插槽的至少一個(gè)設(shè)備適配器。所述設(shè)備適配器被配置為將存儲(chǔ)設(shè)備連接到所述I/O機(jī)柜模塊。所述方法還可以包括將所述數(shù)據(jù)請(qǐng)求傳送到管理通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的主處理器復(fù)合體,以及訪問(wèn)至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”)以執(zhí)行與所述數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的一個(gè)或多個(gè)緩存操作。所述閃存高速緩存連接到所述I/o機(jī)柜模塊的第三插槽。所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。在所述方法的進(jìn)一步實(shí)施例中,所述數(shù)據(jù)請(qǐng)求可以是讀取請(qǐng)求,并且訪問(wèn)所述至少一個(gè)閃存高速緩存以執(zhí)行一個(gè)或多個(gè)緩存操作可以包括從所述閃存高速緩存取回?cái)?shù)據(jù)。在另一個(gè)實(shí)施例中,所述數(shù)據(jù)請(qǐng)求可以是寫入請(qǐng)求,并且訪問(wèn)所述至少一個(gè)閃存高速緩存以執(zhí)行一個(gè)或多個(gè)緩存操作可以包括將與所述寫入請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)存儲(chǔ)在所述閃存高速緩存中。在進(jìn)一步的實(shí)施例中,所述方法還可以包括將存儲(chǔ)在所述閃存高速緩存中的數(shù)據(jù)離臺(tái)到連接到所述設(shè)備適配器的所述存儲(chǔ)設(shè)備。從其他方面看,本發(fā)明提供了一種存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上并可加載到數(shù)字計(jì)算機(jī)的內(nèi)部存儲(chǔ)器中的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括軟件代碼部分,當(dāng)所述程序在計(jì)算機(jī)上運(yùn)行時(shí),所述軟件代碼部分用于執(zhí)行本發(fā)明的步驟。本說(shuō)明書中對(duì)特性、優(yōu)點(diǎn)的引用或類似語(yǔ)言并非暗示可以與本發(fā)明一起實(shí)現(xiàn)的所有特性和優(yōu)點(diǎn)應(yīng)在本發(fā)明的任何單個(gè)實(shí)施例中。相反,將理解,引用所述特性和優(yōu)點(diǎn)的語(yǔ)言指與實(shí)施例一起描述的特定特性、優(yōu)點(diǎn)或特征包括在本發(fā)明的 至少一個(gè)實(shí)施例中。因此,本說(shuō)明書中對(duì)特性、優(yōu)點(diǎn)的討論和類似語(yǔ)言可以(但并不一定)指同一實(shí)施例。此外,本發(fā)明的所述特性、優(yōu)點(diǎn)和特性可以以任何適當(dāng)?shù)姆绞浇M合在一個(gè)或多個(gè)實(shí)施例中。本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,可以在沒(méi)有特定實(shí)施例的一個(gè)或多個(gè)特定特性或優(yōu)點(diǎn)的情況下實(shí)現(xiàn)本發(fā)明。在其他情況下,可以在特定實(shí)施例中認(rèn)識(shí)到可能不存在于本發(fā)明的所有實(shí)施例中的其他特性和優(yōu)點(diǎn)。


現(xiàn)在將僅通過(guò)實(shí)例的方式參考下面附圖中示出的優(yōu)選實(shí)施例描述本發(fā)明,這些附圖是圖I是示出根據(jù)現(xiàn)有技術(shù)并且其中可以實(shí)現(xiàn)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的常規(guī)存儲(chǔ)系統(tǒng)的一個(gè)實(shí)施例的示意性方塊圖;圖2是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的具有集成的基于閃存的高速緩存的存儲(chǔ)系統(tǒng)的一個(gè)實(shí)施例的示意性方塊圖;圖3是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的基于閃存的緩存設(shè)備的一個(gè)實(shí)施例的示意性方塊圖;圖4是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的具有集成的基于閃存的高速緩存而沒(méi)有非易失性存儲(chǔ)高速緩存的存儲(chǔ)系統(tǒng)的一個(gè)實(shí)施例的示意性方塊圖;圖5是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的僅使用集成的基于閃存的高速緩存的存儲(chǔ)系統(tǒng)的一個(gè)實(shí)施例的示意性方塊圖;圖6是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的一種用于將閃存高速緩存集成到存儲(chǔ)系統(tǒng)的方法的一個(gè)實(shí)施例的示意性流程圖;以及圖7是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的一種用于在存儲(chǔ)系統(tǒng)中處理數(shù)據(jù)請(qǐng)求的方法的一個(gè)實(shí)施例的示意性流程圖。
具體實(shí)施例方式如本領(lǐng)域的技術(shù)人員將理解的,本發(fā)明的各方面可以體現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明的各方面可以采取完全硬件實(shí)施例、完全軟件實(shí)施例(包括固件、駐留軟件、微代碼等)或組合了軟件和硬件方面(在此通常被稱為“電路”、“模塊”或“系統(tǒng)”)的實(shí)施例的形式。此外,本發(fā)明的各方面可以采取體現(xiàn)在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)(在介質(zhì)中包含計(jì)算機(jī)可讀程序代碼)中的計(jì)算機(jī)程序產(chǎn)品的形式。將本說(shuō)明書中描述的多個(gè)功能單元標(biāo)記為模塊,以便更具體地強(qiáng)調(diào)它們的實(shí)現(xiàn)無(wú)關(guān)性。例如,模塊可以被實(shí)現(xiàn)為包括定制VLSI電路或門陣列、諸如邏輯芯片、晶體管或其他分離組件之類的現(xiàn)用半導(dǎo)體的硬件電路。模塊還可以在諸如現(xiàn)場(chǎng)可編程門陣列、可編程陣列邏輯、可編程邏輯器件之類的可編程硬件器件中實(shí)現(xiàn)。模塊還可以在軟件中實(shí)現(xiàn)以便由各種類型的處理器執(zhí)行。例如,標(biāo)識(shí)的可執(zhí)行代碼模塊可以包括一個(gè)或多個(gè)物理或邏輯的計(jì)算機(jī)指令塊,所述塊可以例如組織為對(duì)象、過(guò)程或函數(shù)。然而,標(biāo)識(shí)的模塊的可執(zhí)行代碼不需要在物理上位于一起,而是可以包括存儲(chǔ)在不同位置的不同指令,當(dāng)所述指令被邏輯地結(jié)合時(shí),將包括所述模塊并實(shí)現(xiàn)該模塊的所聲明的目的。實(shí)際上,可執(zhí)行代碼的模塊可以是單個(gè)指令或多個(gè)指令,并且甚至可以分布在數(shù)個(gè)不同的代碼段上、多個(gè)不同的程序中,以及跨多個(gè)存儲(chǔ)設(shè)備。同樣,操作數(shù)據(jù)可以在模塊中被標(biāo)識(shí)和在此示出,并且可以包括在任何適當(dāng)?shù)男问街胁⒔M織在任何適當(dāng)類型的數(shù)據(jù)結(jié)構(gòu)中。操作數(shù)據(jù)可以被收集為單個(gè)數(shù)據(jù)集,或可以分布在包括不同存儲(chǔ)設(shè)備的不同位置上, 并且可以至少部分地僅作為電子信號(hào)存在于系統(tǒng)或網(wǎng)絡(luò)中。如果模塊或模塊部分在軟件中實(shí)現(xiàn),則軟件部分存儲(chǔ)在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)上。 可以使用一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任意組合。所述計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是(但不限于)電、磁、光、電磁、紅外線或半導(dǎo)體系統(tǒng)、裝置或設(shè)備或它們的任意適當(dāng)組合。所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的實(shí)例(非窮舉的列表)將包括以下項(xiàng)具有一條或多條線的電連接、便攜式計(jì)算機(jī)軟盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦寫可編程只讀存儲(chǔ)器(EPR0M或閃存)、光纖、便攜式光盤只讀存儲(chǔ)器(⑶-ROM)、光存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備或它們的任意適當(dāng)組合。在本文檔的上下文中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何能夠包含或存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程序的有形介質(zhì)。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以包括其中包含計(jì)算機(jī)可讀程序代碼(例如,在基帶中或作為載波的一部分)的傳播數(shù)據(jù)信號(hào)。此類傳播信號(hào)可以采取各種形式中的任意一種,包括但不限于電磁、光或它們的任意適當(dāng)組合。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以是任何不同于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)并且能夠傳送、傳播或傳輸由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程序的計(jì)算機(jī)可讀介質(zhì)。包含在計(jì)算機(jī)可讀介質(zhì)中的程序代碼可以使用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括但不限于無(wú)線、線纜、光纜、RF等或它們的任意適當(dāng)組合。用于執(zhí)行本發(fā)明的各方面的操作的計(jì)算機(jī)程序代碼可以使用包含一種或多種編程語(yǔ)言的任意組合來(lái)編寫,所述編程語(yǔ)言包括諸如Java、Smalltalk、C++之類的面向?qū)ο蟮木幊陶Z(yǔ)言以及諸如“C”編程語(yǔ)言或類似的編程語(yǔ)言之類的常規(guī)過(guò)程編程語(yǔ)言。所述程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為獨(dú)立的軟件包、部分地在用戶計(jì)算機(jī)上并部分地在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行,或者完全地在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后者的情況中,所述遠(yuǎn)程計(jì)算機(jī)可以通過(guò)包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)的任何類型網(wǎng)絡(luò)與用戶的計(jì)算機(jī)相連,或者可以與外部計(jì)算機(jī)進(jìn)行連接(例如,使用因特網(wǎng)服務(wù)提供商通過(guò)因特網(wǎng)連接)。本說(shuō)明書中對(duì)“一個(gè)實(shí)施例”、“一實(shí)施例”的引用或類似語(yǔ)言指結(jié)合該實(shí)施例描述的特定特性、結(jié)構(gòu)或特征被包括在本發(fā)明的至少一個(gè)實(shí)施例中。因此,本說(shuō)明書中出現(xiàn)的短語(yǔ)“在一個(gè)實(shí)施例中”、“在一實(shí)施例中”和類似語(yǔ)言可以(但是并非一定)都指同一實(shí)施例。此外,本發(fā)明的所述特性、結(jié)構(gòu)或特征可以以任何適當(dāng)?shù)姆绞浇M合在一個(gè)或多個(gè)實(shí)施例中。在以下說(shuō)明中,提供了大量特定的詳細(xì)信息,如編程、軟件模塊、用戶選擇、網(wǎng)絡(luò)事務(wù)、數(shù)據(jù)庫(kù)查詢、數(shù)據(jù)庫(kù)結(jié)構(gòu)、硬件模塊、硬件電路、硬件芯片等的實(shí)例,以便徹底理解本發(fā)明的實(shí)施例。然而,相關(guān)領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,可以在沒(méi)有一個(gè)或多個(gè)特定的細(xì)節(jié)的情況下實(shí)現(xiàn)本發(fā)明,或者可以通過(guò)其他方法、組件、材料等實(shí)現(xiàn)本發(fā)明。在其他情況下,未詳細(xì)示出或描述公知的結(jié)構(gòu)、材料或操作以避免使本發(fā)明的各方面變得模糊不清。下面將參考根據(jù)本發(fā)明的實(shí)施例的方法、裝置、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品的示意性流程圖和/或示意性方塊圖對(duì)本發(fā)明的各方面進(jìn)行描述。將理解,所述示意性流程圖和/或示意性方塊圖的每個(gè)方塊以及所述示意性流程圖和/或示意性方塊圖中的方塊的組合 可以由計(jì)算機(jī)程序指令來(lái)實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以被提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器以產(chǎn)生機(jī)器,以便通過(guò)所述計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的所述指令產(chǎn)生用于實(shí)現(xiàn)一個(gè)或多個(gè)示意性流程圖和/或示意性方塊圖方塊中指定的功能/操作的裝置。這些計(jì)算機(jī)程序指令也可以被存儲(chǔ)在能夠引導(dǎo)計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備以特定方式執(zhí)行功能的計(jì)算機(jī)可讀介質(zhì)中,以便存儲(chǔ)在所述計(jì)算機(jī)可讀介質(zhì)中的所述指令產(chǎn)生一件包括實(shí)現(xiàn)在所述一個(gè)或多個(gè)示意性流程圖和/或示意性方塊圖方塊中指定的功能/操作的指令的制品。所述計(jì)算機(jī)程序指令還可被加載到計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備,以導(dǎo)致在所述計(jì)算機(jī)、其他可編程裝置或其他設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,從而在所述計(jì)算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)在一個(gè)或多個(gè)流程圖和/或方塊圖方塊中指定的功能/操作的過(guò)程。附圖中的示意性流程圖和/或示意性方塊圖示出了根據(jù)本發(fā)明的各種實(shí)施例的裝置、系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)施方式的架構(gòu)、功能和操作。在此方面,所述示意性流程圖和/或示意性方塊圖中的每個(gè)方塊都可以表示代碼的模塊、段或部分,所述代碼包括用于實(shí)現(xiàn)指定的邏輯功能(多個(gè))的一個(gè)或多個(gè)可執(zhí)行指令。還應(yīng)指出,在某些備選實(shí)施方式中,在方塊中說(shuō)明的功能可以不按圖中說(shuō)明的順 序發(fā)生。例如,示為連續(xù)的兩個(gè)方塊可以實(shí)際上被基本同時(shí)地執(zhí)行,或者某些時(shí)候,取決于所涉及的功能,可以以相反的順序執(zhí)行所述方塊??梢詷?gòu)想其他步驟和方法,它們?cè)诠δ?、邏輯或效果上與所示附圖的一個(gè)或多個(gè)方塊或其各部分等效。盡管可以在流程圖和/或方塊圖中使用不同的箭頭類型和線條類型,但是應(yīng)理解,它們并非限制相應(yīng)實(shí)施例的范圍。實(shí)際上,某些箭頭或其他連接器可用來(lái)僅指示所述實(shí)施例的邏輯流。例如,箭頭可以指示所述實(shí)施例的枚舉步驟之間的未指定持續(xù)時(shí)間的等待或監(jiān)視周期。還將指出,所述方塊圖和/或流程圖的每個(gè)方塊以及所述方塊圖和/或流程圖中的方塊的組合可以由執(zhí)行指定功能或操作的基于專用硬件的系統(tǒng)或?qū)S糜布陀?jì)算 機(jī)指令的組合來(lái)實(shí)現(xiàn)。圖2是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的具有集成的基于閃存的緩存設(shè)備(“閃存高速緩存”)220a-n的存儲(chǔ)系統(tǒng)200的一個(gè)實(shí)施例的示意性方塊圖。系統(tǒng)200包括一個(gè)或多個(gè)I/O機(jī)柜202a_n的集合,所述I/O機(jī)柜202a_n在一個(gè)或多個(gè)主機(jī)204a-nui —個(gè)或多個(gè)存儲(chǔ)設(shè)備206a_n之間提供接口。存儲(chǔ)設(shè)備206a_n可以容納在機(jī)柜中,例如容納一個(gè)或多個(gè)HDD或其他類型存儲(chǔ)設(shè)備(例如磁帶驅(qū)動(dòng)器或光驅(qū)動(dòng)器)的盤機(jī)柜。在一個(gè)實(shí)施例中,存儲(chǔ)設(shè)備206a-n可以包括可被配置為提供各種類型冗余保護(hù)的盤陣列。如在此使用的,I/O機(jī)柜集合可以統(tǒng)稱為I/O機(jī)柜模塊201。如在此使用的,I/O機(jī)柜202a-n指容納各種I/O適配器208a-n、210a_n和連接性設(shè)備以在I/O存儲(chǔ)單元處理器214a-b和I/O適配器208a-n、210a-n之間提供通信的設(shè)備。通常,I/O機(jī)柜102a_n成對(duì)安裝以提供冗余保護(hù)。包含在I/O機(jī)柜202a-n中的I/O適配器208a-n、210a_n通常是主機(jī)適配器108a_n或設(shè)備適配器210a_n之一。I/O機(jī)柜202a_n通常具有多個(gè)可用插槽,主機(jī)適配器208a-n或設(shè)備適配器210a_n可以附接到這些插槽。然而,如上所述,I/O機(jī)柜202a-n可以具備多個(gè)空置插槽以用于適配器擴(kuò)展或其他用途。主機(jī)適配器208a_n是在主機(jī)204a_n與I/O機(jī)柜202a_n之間提供連接性的適配器。主機(jī)204a-n通常是諸如個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、客戶機(jī)之類的計(jì)算機(jī)器,它們通過(guò) I/O機(jī)柜202a-n向各種存儲(chǔ)設(shè)備206a_n或子系統(tǒng)發(fā)出數(shù)據(jù)請(qǐng)求來(lái)訪問(wèn)存儲(chǔ)系統(tǒng)200。主機(jī)204a-n通??缇W(wǎng)絡(luò)212連接到主機(jī)適配器208a_n,網(wǎng)絡(luò)212通常包括諸如路由器、交換機(jī)之類的各種設(shè)備。主機(jī)204a-n可以使用諸如光纖通道、光纖連接性(“FIC0N”)、企業(yè)系統(tǒng)連接(“ESC0N”)之類的網(wǎng)絡(luò)技術(shù)或本領(lǐng)域的技術(shù)人員所知的其他連接性協(xié)議連接到主機(jī)適配器 108a_n。設(shè)備適配器210a_n是在設(shè)備(例如存儲(chǔ)設(shè)備206a_n)和I/O機(jī)柜202a_n之間提供連接性的設(shè)備。在一個(gè)實(shí)施例中,設(shè)備適配器210a-n可以是光纖通道仲裁環(huán)(“FC-AL”)設(shè)備適配器。一個(gè)典型實(shí)施例中,每個(gè)設(shè)備適配器210a-n可以連接到為存儲(chǔ)設(shè)備206a-n提供通信的兩個(gè)單獨(dú)交換網(wǎng)絡(luò)。在一個(gè)實(shí)施例中,當(dāng)設(shè)備適配器210a-n連接到存儲(chǔ)設(shè)備206a-n時(shí),它可以使用交換連接通過(guò)最短可能路徑傳輸數(shù)據(jù)。當(dāng)然,構(gòu)想了本領(lǐng)域的技術(shù)人員所知的其他類型的連接和通信協(xié)議。通過(guò)一個(gè)或多個(gè)處理器復(fù)合體214a_b促進(jìn)系統(tǒng)200的各種組件之間的通信。在以典型企業(yè)存儲(chǔ)系統(tǒng)實(shí)現(xiàn)的通用架構(gòu)中,使用兩個(gè)處理器復(fù)合體214a_b提高可靠性并改進(jìn)性能。通常一個(gè)是主處理器復(fù)合體214a而另一個(gè)是輔助處理器復(fù)合體214b。處理器復(fù)合體214a-b通常都連接到每個(gè)I/O機(jī)柜202a-n并包括在主機(jī)適配器208a_n與設(shè)備適配器110a-n之間提供通信的必需邏輯,從而使連接到主機(jī)適配器208a-n的主機(jī)204a_n能夠經(jīng)由設(shè)備適配器210a-n訪問(wèn)存儲(chǔ)設(shè)備206a-n。處理器復(fù)合體214a_n在此也可以稱為中央電子復(fù)合體(“CEC”)。在所描述的實(shí)施例中,處理器復(fù)合體214a_b包括諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“DRAM”)216a-b之類的易失性存儲(chǔ)器以及稱為非易失性存儲(chǔ)裝置(“NVS”)218a_b的非易失性存儲(chǔ)器,非易失性存儲(chǔ)器通常被配置為帶后備電源的DRAM。當(dāng)然,在其他實(shí)施例中,處理器復(fù)合體可以使用本領(lǐng)域的技術(shù)人員所知的其他類型的易失性存儲(chǔ)器和非易失性存儲(chǔ)器。處理器復(fù)合體214a-b的存儲(chǔ)器216、218通常用于緩存與由系統(tǒng)200處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例,系統(tǒng)200將閃存高速緩存220a_n結(jié)合到I/O機(jī)柜模塊201的空閑插槽中。優(yōu)選地,可以使用多個(gè)閃存高速緩存220a-n,并可以將每個(gè)閃存高速緩存220a-n分配給特定處理器復(fù)合體214a_b。閃存高速緩存220a_n包括被配置為緩存與通過(guò)I/O機(jī)柜模塊201處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。在一個(gè)構(gòu)想的實(shí)施例中,“基于閃存的”存儲(chǔ)器可以指諸如相變存儲(chǔ)器(“PCM")之類的其他類型的固態(tài)存儲(chǔ)器,這些固態(tài)存儲(chǔ)器可以具有與閃存存儲(chǔ)器類似的屬性,但可以具有改進(jìn)的性能屬性,具體取決于系統(tǒng)200的配置和架構(gòu)。此外,在某些實(shí)施例中,閃存高速緩存220a可以分成兩個(gè)或多個(gè)部分,每個(gè)部分可以由處理器復(fù)合體214a-b之一管理。這樣可使用更少的閃存高速緩存220a-n,從而降低總體成本。在此類實(shí)施例中,可以在第二 I/O機(jī)柜202b上的第二閃存高速緩存220c中提供數(shù)據(jù)冗余。通過(guò)將閃存高速緩存220a_n集成到I/O機(jī)柜模塊201的空閑插槽,閃存高速緩存220a-n在不需要對(duì)系統(tǒng)200的設(shè)備和組件進(jìn)行重大修改的情況下與現(xiàn)有架構(gòu)無(wú)縫集成的同時(shí),改進(jìn)了系統(tǒng)200的性能(例如,更好的高速緩存命中率)。此外,閃存高速緩存220a-n可伸縮并可以顯著增長(zhǎng),使之大于常規(guī)系統(tǒng)的DRAM高速緩存216a_b和NVS高速緩存 214a_b。 在所描述的實(shí)施例中,閃存高速緩存220a_n作為中間高速緩存運(yùn)行并與DRAM高速緩存216a-b和NVS高速緩存218a-b —起運(yùn)行以形成兩層緩存系統(tǒng)。例如,數(shù)據(jù)可以首先緩存在DRAM高速緩存216a-b中,然后在進(jìn)一步離臺(tái)到存儲(chǔ)設(shè)備206a_n之前,離臺(tái)到閃存高速緩存220a-n。這允許以就每秒指令數(shù)和延遲而言至少相同的性能特征增強(qiáng)架構(gòu),同時(shí)擴(kuò)展可用高速緩存以改進(jìn)高速緩存命中率。圖3是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的基于閃存的緩存設(shè)備220a或閃存高速緩存的一個(gè)實(shí)施例的示意性方塊圖。如示出的,閃存高速緩存220a可以被分為不同的區(qū)域以處理不同的緩存操作。所描述的實(shí)施例示出了寫入?yún)^(qū)域302、讀取區(qū)域304、補(bǔ)充讀取區(qū)域306以及存儲(chǔ)區(qū)域308。盡管所述實(shí)施例示出了四個(gè)不同的區(qū)域,但是構(gòu)想了閃存高速緩存220a可以具備少至一種不同的區(qū)域類型。通常,讀取區(qū)域304用于保存鏡像數(shù)據(jù)副本,其中另一副本或者位于DRAM高速緩存216a、NVS高速緩存218a,或者位于閃存高速緩存220a,而補(bǔ)充讀取區(qū)域306保存不需要鏡像到另一高速緩存中的緩存數(shù)據(jù)。在一個(gè)優(yōu)選實(shí)施例中,對(duì)讀取區(qū)域304的管理由處理器復(fù)合體214a-b之一控制,對(duì)補(bǔ)充讀取區(qū)域306的管理由閃存高速緩存200a-n在內(nèi)部完成。寫入?yún)^(qū)域302被配置為臨時(shí)存儲(chǔ)與寫入請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。通常,寫入數(shù)據(jù)被離臺(tái)到存儲(chǔ)設(shè)備206a-n或閃存高速緩存220a的讀取區(qū)域。讀取區(qū)域304存儲(chǔ)讀取請(qǐng)求的數(shù)據(jù),以便不需要從存儲(chǔ)設(shè)備206a-n取回?cái)?shù)據(jù),而是直接從閃存高速緩存的讀取區(qū)域304取回?cái)?shù)據(jù)。優(yōu)選地,讀取區(qū)域304可直接由相應(yīng)閃存高速緩存220a-n所在的同一 I/O機(jī)柜202a_n中的主機(jī)適配器208a-n訪問(wèn)。補(bǔ)充讀取區(qū)域306用于擴(kuò)展可用的讀取區(qū)域存儲(chǔ)器以便增加讀取請(qǐng)求的高速緩存命中可能性。存儲(chǔ)區(qū)域308被優(yōu)選地配置為以類似于第0層存儲(chǔ)設(shè)備的方式操作。例如,存儲(chǔ)區(qū)域308可以用于存儲(chǔ)從未離臺(tái)到盤的數(shù)據(jù)(例如處理器復(fù)合體214a-b使用的元數(shù)據(jù))或優(yōu)選地存儲(chǔ)在閃存高速緩存220a-n中的數(shù)據(jù)。在一個(gè)實(shí)施例中,閃存高速緩存220a的存儲(chǔ)區(qū)域308可以被分配邏輯單元編號(hào)(“LUN”)以便將區(qū)域作為存儲(chǔ)設(shè)備進(jìn)行訪問(wèn)。在某些實(shí)施例中,存儲(chǔ)在閃存高速緩存220a的存儲(chǔ)區(qū)域308中的數(shù)據(jù)可以被鏡像到另一閃存高速緩存220b的存儲(chǔ)區(qū)域中以提供冗余保護(hù)。因此,寫入請(qǐng)求可以將數(shù)據(jù)存儲(chǔ)在第一閃存高速緩存220a的存儲(chǔ)區(qū)域和第二閃存高速緩存220c的存儲(chǔ)區(qū)域中。優(yōu)選地,第一和第二閃存高速緩存220a、220c位于不同的I/O機(jī)柜202a_n中。隨后,讀取請(qǐng)求可以直接從閃存高速緩存220a、220c的存儲(chǔ)區(qū)域取回?cái)?shù)據(jù)。優(yōu)選地,由主機(jī)適配器208a接收的讀取請(qǐng)求將從它自身所在的同一 I/O機(jī)柜202a中配置的閃存高速緩存220a取回?cái)?shù)據(jù)。在操作中,具有處理器復(fù)合體高速緩存216a-b、218a_b和閃存高速緩存220a_n的系統(tǒng)200以改進(jìn)的方式處理讀取和寫入請(qǐng)求兩者。對(duì)于寫入請(qǐng)求,寫入請(qǐng)求由主機(jī)適配器208a接收,并且主機(jī)適配器208a詢問(wèn)主處理器復(fù)合體214a在何處存儲(chǔ)數(shù)據(jù)。處理器復(fù)合體214a發(fā)回響應(yīng),指示應(yīng)將數(shù)據(jù)移動(dòng)到的位置。通常,處理器復(fù)合體響應(yīng)以兩個(gè)位置,即一個(gè)易失性DRAM高速緩存216a位置以及輔助處理器復(fù)合體214b的NVS高速緩存218b中的一個(gè)非易失性位置,或閃存高速緩存220a-n的寫入?yún)^(qū)域中的一個(gè)或兩個(gè)位置。在一個(gè)實(shí)施例中,如果主處理器復(fù)合體214a不可達(dá),則 可以詢問(wèn)輔助處理器復(fù)合體214b,并且輔助處理器復(fù)合體214b變成新的主處理器復(fù)合體214a。
主處理器復(fù)合體214a將通過(guò)在其DRAM高速緩存216a中分配空間來(lái)響應(yīng)寫入請(qǐng)求。通常,還將分配輔助處理器復(fù)合體214b的NVS高速緩存218b中的空間以作為緩存數(shù)據(jù)的備份。主機(jī)適配器208a然后將數(shù)據(jù)傳輸?shù)接芍魈幚砥鲝?fù)合體214a指示的位置,包括DRAM高速緩存216a和NVS高速緩存218b。隨后,處理器復(fù)合體214a_b則可以將數(shù)據(jù)從DRAM高速緩存216a和NVS高速緩存218b離臺(tái)到閃存高速緩存220a-n。處理器復(fù)合體214a_b然后可以將數(shù)據(jù)從閃存高速緩存220a-n離臺(tái)到存儲(chǔ)設(shè)備206a_n。為此,通知設(shè)備適配器210a,并且設(shè)備適配器210a將數(shù)據(jù)從閃存高速緩存220a-n離臺(tái)到連接到設(shè)備適配器210a的存儲(chǔ)設(shè)備206a-n。優(yōu)選地,使用其中存儲(chǔ)數(shù)據(jù)的閃存高速緩存220a-n所在的同一 I/O機(jī)柜202a_n中的設(shè)備適配器210a_n。在某些情況下,可以將數(shù)據(jù)直接從DRAM高速緩存216a或NVS高速緩存218b離臺(tái)到存儲(chǔ)設(shè)備206a-n。一旦完成離臺(tái)操作,設(shè)備適配器210a就向處理器復(fù)合體214a通知操作完成。一旦將數(shù)據(jù)從閃存高速緩存220a_n離臺(tái)到存儲(chǔ)設(shè)備206a_n,主處理器復(fù)合體214a就可以根據(jù)請(qǐng)求相同數(shù)據(jù)的讀取請(qǐng)求,將所述數(shù)據(jù)釋放到閃存高速緩存220a-n的寫入?yún)^(qū)域302中,或?qū)嶋H上將所述數(shù)據(jù)移動(dòng)到閃存高速緩存220a的補(bǔ)充讀取區(qū)域306以供未來(lái)訪問(wèn)。這允許閃存高速緩存220a-n無(wú)效內(nèi)部映射表項(xiàng),從而減少寫入放大。一旦完成此操作,從閃存高速緩存220a-n向處理器復(fù)合體214a發(fā)送完成消息。在一個(gè)實(shí)施例中,將數(shù)據(jù)從一個(gè)緩存區(qū)域(例如,寫入?yún)^(qū)域302)移動(dòng)到另一個(gè)區(qū)域(例如,補(bǔ)充讀取區(qū)域306)無(wú)需實(shí)際重新復(fù)制數(shù)據(jù)。相反,更新與閃存高速緩存220a-n關(guān)聯(lián)的元數(shù)據(jù)以反映數(shù)據(jù)的區(qū)域改變。如果主處理器復(fù)合體214a出現(xiàn)故障,則可以將元數(shù)據(jù)信息轉(zhuǎn)儲(chǔ)到輔助處理器復(fù)合體214b的NVS高速緩存218a-b或轉(zhuǎn)儲(chǔ)到閃存高速緩存220a_n自身(例如在存儲(chǔ)區(qū)域308中)。然后,輔助處理器復(fù)合體214b可以接管,從其NVS高速緩存218b或閃存高速緩存220a-n取回元數(shù)據(jù),然后繼續(xù)正常操作。對(duì)于讀取請(qǐng)求,主機(jī)適配器208a接收讀取請(qǐng)求并詢問(wèn)處理器復(fù)合體214a以獲得被請(qǐng)求數(shù)據(jù)的位置。處理器復(fù)合體214a_b中的一個(gè)或多個(gè)響應(yīng)以數(shù)據(jù)位置,所述位置可以在其本地DRAM高速緩存216a-b、其NVS高速緩存218a_b、被分配給處理器復(fù)合體214a_b的閃存高速緩存220a-n的區(qū)域之一中,或在連接到系統(tǒng)200的存儲(chǔ)設(shè)備206a_n上。主機(jī)適配器208a然后從所標(biāo)識(shí)的位置取回?cái)?shù)據(jù)并將其提供給主機(jī)204a-n。在某些情況下,可能尚未將數(shù)據(jù)從閃存高速緩存的寫入?yún)^(qū)域302移動(dòng)到讀取區(qū)域304、306。盡管如此,在此類情況下,如果需要,則仍然可以直接從寫入?yún)^(qū)域302取回?cái)?shù)據(jù)。如果從存儲(chǔ)設(shè)備206a-n之一取回?cái)?shù)據(jù),則處理器復(fù)合體214a-b通常使用設(shè)備適配器210a-n取回?cái)?shù)據(jù)。圖4是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的具有集成的基于閃存的高速緩存220a-n而沒(méi)有NVS高速緩存218a_b的存儲(chǔ)系統(tǒng)300的一個(gè)實(shí)施例的示意性方塊圖。在此實(shí)施例中,各種閃存高速緩存220a-n仍放置在I/O機(jī)柜模塊201的空閑插槽中,但通常連接到處理器復(fù)合體214a-b的NVS高速緩存218a-b被移除。在此實(shí)施例中,閃存高速緩存220a-n用作處理器復(fù)合體214a-b的非易失性存儲(chǔ)裝置,以便可以通過(guò)避免需要為NVS高速緩存218a-b提供電力而降低成本并提高效率。此外,與包括NVS高速緩存218a-b的實(shí)施例相比消耗更少的光纖通道網(wǎng)絡(luò)(fabric)帶寬,同時(shí)仍然以閃存高速緩存220a的形式提供可伸縮的寫入高速緩存。系統(tǒng)300的操作也稍有不同,因?yàn)閺南到y(tǒng)300中移除了 NVS高速緩存218a_b。對(duì)于寫入請(qǐng)求,主機(jī)適配器208a再次詢問(wèn)主處理器復(fù)合體214a在何處緩存寫入數(shù)據(jù),并且主處理器復(fù)合體214a通過(guò)在其DRAM高速緩存216a中以及在閃存高速緩存220a的寫入?yún)^(qū)域302中分配空間來(lái)進(jìn)行響應(yīng)。數(shù)據(jù)被寫入到兩個(gè)位置,并且閃存高速緩存220a(而不是NVS高速緩存218b)現(xiàn)在用于提供寫入數(shù)據(jù)的非易失性存儲(chǔ),而DRAM高速緩存216a用于提供與閃存高速緩存220a相比提高的存儲(chǔ)性能。在一個(gè)實(shí)施例中,將數(shù)據(jù)直接從DRAM高速緩存216a離臺(tái)到存儲(chǔ)設(shè)備206a_n。相應(yīng)地,閃存高速緩存220a-n可以從其寫入?yún)^(qū)域302釋放寫入數(shù)據(jù)。在一個(gè)實(shí)施例中,通過(guò)更新與閃存高速緩存220a關(guān)聯(lián)的元數(shù)據(jù),將數(shù)據(jù)從寫入緩存區(qū)域302移動(dòng)到補(bǔ)充讀取區(qū)域306 (或讀取區(qū)域304)。然后將此操作完成的信號(hào)返回到處理器復(fù)合體214a-b。備選地,在將數(shù)據(jù)離臺(tái)到存儲(chǔ)設(shè)備206a-n之前,可以將數(shù)據(jù)從一個(gè)閃存高速緩存220a離臺(tái)到另一個(gè)閃存高速緩存220c。例如,第二閃存高速緩存220c用作第一閃存高速緩存220a與存儲(chǔ)設(shè)備206a-n之間的第二層中間高速緩存。因?yàn)閿?shù)據(jù)的至少一個(gè)副本被存儲(chǔ)在閃存高速緩存220a_n中,所以需要其他智能以隱藏與基于閃存的存儲(chǔ)器關(guān)聯(lián)的明顯過(guò)高的寫入延遲(相對(duì)于DRAM而言)。在一個(gè)實(shí)施例中,這可以通過(guò)在帶后備電源或通過(guò)超級(jí)電容器保護(hù)的閃存高速緩存中使用環(huán)形緩沖區(qū)來(lái)實(shí)現(xiàn)。一旦將數(shù)據(jù)傳輸?shù)酱谁h(huán)形緩沖區(qū),閃存高速緩存就可以在數(shù)據(jù)實(shí)際被移動(dòng)到閃存高速緩存之前,立即確認(rèn)成功的寫入操作。通常,環(huán)形緩沖區(qū)與NVS高速緩存218a-b相比相對(duì)較小以便節(jié)省電力和成本,并可以獨(dú)立于保存與閃存高速緩存220a-n關(guān)聯(lián)的結(jié)構(gòu)的元數(shù)據(jù)。讀取路徑對(duì)應(yīng)于上面針對(duì)圖2描述的路徑,只是NVS高速緩存218a_b不再可作為可能的讀取數(shù)據(jù)位置。圖5是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的僅使用閃存高速緩存220a_n而沒(méi)有DRAM高速緩存216a-b或NVS高速緩存218a_b的存儲(chǔ)系統(tǒng)400的一個(gè)實(shí)施例的示意性方塊圖。在所示出的實(shí)施例中,先前實(shí)施例的DRAM高速緩存216a-b和NVS高速緩存218a_b被連接到I/O機(jī)柜模塊201的閃存高速緩存220a-n取代。在一個(gè)實(shí)施例中,此架構(gòu)利用I/0機(jī)柜202a-n之間存在的對(duì)等數(shù)據(jù)傳輸可能性,使得系統(tǒng)400能夠在不使用處理器復(fù)合體、214a中的CPU周期而使用到處理器復(fù)合體214a的傳輸帶寬的情況下,將數(shù)據(jù)的第二副本寫入另一 I/O機(jī)柜202b中的第二閃存高速緩存220c。在此實(shí)施例中,當(dāng)主機(jī)適配器208a接收到寫入請(qǐng)求時(shí),主機(jī)適配器208a再次詢問(wèn)處理器復(fù)合體214a以獲得數(shù)據(jù)所應(yīng)移動(dòng)到的位置??赡艿奈恢每梢源鎯?chǔ)為元數(shù)據(jù)402a_b。返回與第一 I/O機(jī)柜202a上的第一閃存高速緩存220a對(duì)應(yīng)的第一目標(biāo)位置,并返回與第二 I/O機(jī)柜202b上的第二閃存高速緩存220c對(duì)應(yīng)的第二目標(biāo)位置。主機(jī)適配器208a然后將寫入數(shù)據(jù)傳輸?shù)絻蓚€(gè)不同閃存高速緩存位置上的兩個(gè)位置。隨后,可以以類似于上面針對(duì)其他實(shí)施例描述的方式,將數(shù)據(jù)離臺(tái)到盤或移動(dòng)到閃存高速緩存220a-n中的其他區(qū)域。優(yōu)選地,處理器復(fù)合體214a_b仍然可以維護(hù)與閃存高速緩存220a-n關(guān)聯(lián)的元數(shù)據(jù)402a_b的存儲(chǔ)。如果主處理器復(fù)合體214a出現(xiàn)故障,則可以將元數(shù)據(jù)402a-b轉(zhuǎn)儲(chǔ)到輔助處理器復(fù)合體214b或閃存高速緩存220a_n或這兩者。圖6是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的一種用于將閃存高速緩存220a_n集成到存儲(chǔ)系統(tǒng)的方法600的一個(gè)實(shí)施例的示意性流程圖。在披露的實(shí)施例中,方法600實(shí) 質(zhì)上包括執(zhí)行上面針對(duì)所述裝置和系統(tǒng)的操作提供的功能所必需的步驟。方法600開(kāi)始時(shí),將至少一個(gè)閃存高速緩存220a_n連接(602)到I/O機(jī)柜模塊201。閃存高速緩存220a-n優(yōu)選地包括被配置為緩存與通過(guò)I/O機(jī)柜模塊201處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。I/O機(jī)柜模塊201包括一個(gè)或多個(gè)具有多個(gè)插槽以容納電子設(shè)備的I/O機(jī)柜2021-n。由連接到I/O機(jī)柜模塊201的第一插槽的主機(jī)適配器208a接收(604)數(shù)據(jù)請(qǐng)求。所述主機(jī)適配器被配置為將主機(jī)204a-n連接到I/O機(jī)柜模塊201。I/O機(jī)柜模塊201具有至少一個(gè)連接到I/O機(jī)柜模塊201的第二插槽的設(shè)備適配器210a-n。所述設(shè)備適配器被配置為將存儲(chǔ)設(shè)備206a-n連接到I/O機(jī)柜模塊201。接下來(lái),主機(jī)適配器208a將數(shù)據(jù)請(qǐng)求傳送(606)到管理通過(guò)I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的主處理器復(fù)合體214a。主處理器復(fù)合體214a訪問(wèn)(608)閃存高速緩存以執(zhí)行與所述數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的一個(gè)或多個(gè)緩存操作。閃存高速緩存220a-n連接到I/O機(jī)柜模塊201的第三插槽。通過(guò)這種方式,存儲(chǔ)系統(tǒng)能夠集成基于閃存的高速緩存220a-n。在一個(gè)實(shí)施例中,所述數(shù)據(jù)請(qǐng)求是讀取請(qǐng)求,并且訪問(wèn)至少一個(gè)閃存高速緩存220a-n以執(zhí)行一個(gè)或多個(gè)緩存操作包括從閃存高速緩存220a_n取回?cái)?shù)據(jù)。在另一個(gè)實(shí)施例中,所述數(shù)據(jù)請(qǐng)求是寫入請(qǐng)求,訪問(wèn)至少一個(gè)閃存高速緩存220a-n以執(zhí)行一個(gè)或多個(gè)緩存操作包括將與所述寫入請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)存儲(chǔ)在閃存高速緩存220a-n中。圖7是示出根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例的一種用于在具有閃存高速緩存220a-n的存儲(chǔ)系統(tǒng)中處理包括讀取和寫入請(qǐng)求的數(shù)據(jù)請(qǐng)求的方法700的一個(gè)實(shí)施例的示意性流程圖。在所披露的實(shí)施例中,方法700實(shí)質(zhì)上包括執(zhí)行上面針對(duì)所述裝置和系統(tǒng)的操作提供的功能所必需的步驟。方法700開(kāi)始時(shí),主機(jī)適配器208a從主機(jī)204a_n接收(702)數(shù)據(jù)請(qǐng)求。首先,確定(704)數(shù)據(jù)請(qǐng)求是否是讀取請(qǐng)求。如果數(shù)據(jù)請(qǐng)求是讀取請(qǐng)求,則接下來(lái)確定(706)是否可在閃存高速緩存220a-n中提供滿足所述讀取請(qǐng)求的數(shù)據(jù)。如果可在閃存高速緩存220a_n中提供所述數(shù)據(jù),則從閃存高速緩存220a-n取回(708)數(shù)據(jù),優(yōu)選地不訪問(wèn)任何其他存儲(chǔ)設(shè)備。如果數(shù)據(jù)不在閃存高速緩存220a-n中,則從存儲(chǔ)設(shè)備206a_n取回(710)數(shù)據(jù)。在某些實(shí)施例中,構(gòu)想了也可以從與處理器復(fù)合體214a-b關(guān)聯(lián)的易失性高速緩存(例如DRAM高速緩存216a)或非易失性高速緩存(例如NVS高速緩存218a)取回?cái)?shù)據(jù)。如果確定(704)數(shù)據(jù)請(qǐng)求不是讀取請(qǐng)求而是寫入請(qǐng)求,則將數(shù)據(jù)緩存(712)到閃存高速緩存220a的寫入?yún)^(qū)域302。在一個(gè)實(shí)施例中,所述數(shù)據(jù)可以首先被寫入到非易失性DRAM高速緩存216a,然后被離臺(tái)到閃存高速緩存220a。在進(jìn)一步的實(shí)施例中,可以將寫入到閃存高速緩存220a的寫入?yún)^(qū)域302的數(shù)據(jù)離臺(tái)(714)到存儲(chǔ)設(shè)備206a_n。通過(guò)這種方式,可以以最少的架構(gòu)改變,使用集成到存儲(chǔ)系統(tǒng)中的閃存高速緩存來(lái)處理數(shù)據(jù)請(qǐng)求。所述方法改進(jìn)了高速緩存命中概率,并在某些情況下,降低了成本并提高了存儲(chǔ)系統(tǒng)的整體性倉(cāng)泛。本發(fā)明的優(yōu)選實(shí)施例可以以其他特定形式體現(xiàn)而不偏離本發(fā)明的基本特征。從任何角度來(lái)說(shuō),都將所述實(shí)施例僅視為示例性而非限制性的。因此,本發(fā)明的范圍由所附權(quán)利要求而不是上述說(shuō)明來(lái)指示。在權(quán)利要求的等效含義和范圍內(nèi)的所有改變都將包含在 權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1.一種用于將基于閃存的高速緩存集成到存儲(chǔ)系統(tǒng)的裝置,所述裝置包括 輸入/輸出(I/o)機(jī)柜模塊,其包括一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備,所述I/o機(jī)柜模塊的第一插槽被配置為容納至少一個(gè)主機(jī)適配器,所述I/o機(jī)柜模塊 的第二插槽被配置為容納至少一個(gè)設(shè)備適配器; 至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”),其用于連接到所述I/o機(jī)柜模塊的第三插槽,所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器;以及 主處理器復(fù)合體,其用于管理通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求,所述主處理器復(fù)合體被配置為與至少一個(gè)主機(jī)適配器、至少一個(gè)設(shè)備適配器以及所述至少一個(gè)閃存高速緩存通信以管理所述數(shù)據(jù)請(qǐng)求。
2.根據(jù)權(quán)利要求I的裝置,其中所述主處理器復(fù)合體進(jìn)一步包括動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)高速緩存以臨時(shí)緩存與通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。
3.根據(jù)權(quán)利要求2的裝置,其中所述主處理器復(fù)合體進(jìn)一步包括非易失性存儲(chǔ)裝置(NVS)高速緩存,所述非易失性存儲(chǔ)裝置(NVS)高速緩存包括非易失性存儲(chǔ)設(shè)備以緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。
4.根據(jù)權(quán)利要求3的裝置,其中所述主處理器復(fù)合體被配置為將緩存在所述DRAM高速緩存和NVS高速緩存之一中的數(shù)據(jù)離臺(tái)到所述閃存高速緩存。
5.根據(jù)任一上述權(quán)利要求的裝置,還包括輔助處理器復(fù)合體,所述輔助處理器復(fù)合體被配置為用作通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的輔助管理器,所述輔助處理器復(fù)合體被配置為響應(yīng)于所述主處理器復(fù)合體的故障而與所述主機(jī)適配器、設(shè)備適配器以及至少一個(gè)閃存高速緩存通信以管理數(shù)據(jù)請(qǐng)求。
6.根據(jù)權(quán)利要求5的裝置,其中所述輔助處理器復(fù)合體進(jìn)一步包括DRAM高速緩存以臨時(shí)緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。
7.根據(jù)權(quán)利要求6的裝置,其中所述輔助處理器復(fù)合體進(jìn)一步包括NVS高速緩存,所述NVS高速緩存包括非易失性存儲(chǔ)設(shè)備以緩存與由所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)。
8.根據(jù)任一上述權(quán)利要求的裝置,其中將所述至少一個(gè)閃存高速緩存恰好分配給所述主處理器復(fù)合體和輔助處理器復(fù)合體中的一個(gè),其中所述主處理器復(fù)合體和輔助處理器復(fù)合體均被配置為管理通過(guò)所述I/O機(jī)柜處理的數(shù)據(jù)請(qǐng)求。
9.根據(jù)權(quán)利要求8的裝置,其中響應(yīng)于所述主處理器復(fù)合體的故障,將首先分配給所述主處理器復(fù)合體的所述至少一個(gè)閃存高速緩存重新分配給所述輔助處理器復(fù)合體。
10.根據(jù)權(quán)利要求I至7中的任一權(quán)利要求的裝置,其中將所述至少一個(gè)閃存高速緩存分成多個(gè)區(qū)域,所述區(qū)域包括緩存與讀取數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的讀取緩存區(qū)域以及緩存與寫入數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的寫入緩存區(qū)域。
11.根據(jù)權(quán)利要求10的裝置,其中將所述至少一個(gè)閃存高速緩存進(jìn)一步分成補(bǔ)充讀取緩存區(qū)域,所述補(bǔ)充讀取緩存區(qū)域維護(hù)已離臺(tái)到存儲(chǔ)設(shè)備的數(shù)據(jù)的緩存,以便可以從所述補(bǔ)充讀取緩存區(qū)域取回所述數(shù)據(jù)。
12.根據(jù)權(quán)利要求10的裝置,其中將所述至少一個(gè)閃存高速緩存進(jìn)一步分成存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域用于存儲(chǔ)未離臺(tái)到存儲(chǔ)設(shè)備的數(shù)據(jù),以便從所述存儲(chǔ)區(qū)域取回所述數(shù)據(jù)。
13.一種用于將基于閃存的高速緩存集成到存儲(chǔ)系統(tǒng)的系統(tǒng),所述系統(tǒng)包括 輸入/輸出(“I/o”)機(jī)柜模塊,其包括一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備; 至少一個(gè)主機(jī)適配器,其用于連接到所述I/O機(jī)柜模塊的第一插槽,所述主機(jī)適配器被配置為將主機(jī)連接到所述I/o機(jī)柜模塊; 至少一個(gè)主機(jī),其用于連接到所述至少一個(gè)主機(jī)適配器; 至少一個(gè)設(shè)備適配器,其用于連接到所述I/o機(jī)柜模塊的第二插槽,所述設(shè)備適配器被配置為將存儲(chǔ)設(shè)備連接到所述I/o機(jī)柜模塊; 至少一個(gè)存儲(chǔ)設(shè)備,其用于連接到所述至少一個(gè)設(shè)備適配器; 至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”),其用于連接到所述I/o機(jī)柜模塊的第三插槽,所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器;以及 主處理器復(fù)合體,其用于管理通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求,所述主處理器復(fù)合體用于與所述至少一個(gè)主機(jī)適配器、所述至少一個(gè)設(shè)備適配器以及所述至少一個(gè)閃存高速緩存通信以管理所述數(shù)據(jù)請(qǐng)求。
14.根據(jù)權(quán)利要求13的系統(tǒng),其中所述主機(jī)包括計(jì)算機(jī)系統(tǒng),所述計(jì)算機(jī)系統(tǒng)包括至少一個(gè)處理器和存儲(chǔ)器。
15.根據(jù)權(quán)利要求13的系統(tǒng),其中所述存儲(chǔ)設(shè)備包括硬盤驅(qū)動(dòng)器和磁帶驅(qū)動(dòng)器中的一個(gè)或多個(gè)。
16.一種用于將基于閃存的高速緩存集成到存儲(chǔ)系統(tǒng)的方法,所述方法包括以下步驟 將至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”)連接到I/O機(jī)柜模塊,所述閃存高速緩存包括被配置為緩存與通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器,所述I/o機(jī)柜模塊包括一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備; 在連接到所述I/o機(jī)柜模塊的第一插槽的主機(jī)適配器處接收數(shù)據(jù)請(qǐng)求,所述主機(jī)適配器被配置為將主機(jī)連接到所述I/o機(jī)柜模塊,所述I/O機(jī)柜模塊具有至少一個(gè)連接到所述I/o機(jī)柜模塊的第二插槽的設(shè)備適配器,所述設(shè)備適配器被配置為將存儲(chǔ)設(shè)備連接到所述I/o機(jī)柜模塊; 將所述數(shù)據(jù)請(qǐng)求傳送到管理通過(guò)所述I/o機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求的主處理器復(fù)合體;以及 訪問(wèn)所述至少一個(gè)基于閃存的緩存設(shè)備(“閃存高速緩存”)以執(zhí)行與所述數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的一個(gè)或多個(gè)緩存操作,所述閃存高速緩存連接到所述I/o機(jī)柜模塊的第三插槽。
17.根據(jù)權(quán)利要求16的方法,其中所述數(shù)據(jù)請(qǐng)求包括讀取請(qǐng)求,并且其中訪問(wèn)所述至少一個(gè)閃存高速緩存以執(zhí)行一個(gè)或多個(gè)緩存操作的步驟包括從所述閃存高速緩存取回?cái)?shù)據(jù)的步驟。
18.根據(jù)權(quán)利要求14的方法,其中所述數(shù)據(jù)請(qǐng)求包括寫入請(qǐng)求,并且其中訪問(wèn)至少一個(gè)閃存高速緩存以執(zhí)行一個(gè)或多個(gè)緩存操作的步驟包括將與所述寫入請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)存儲(chǔ)在所述閃存高速緩存中的步驟。
19.一種用于促進(jìn)計(jì)算環(huán)境中的請(qǐng)求處理的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其可由處理電路讀取并存儲(chǔ)指令以便由所述處理電路執(zhí)行以執(zhí)行根據(jù)權(quán)利要求16至18中的任一權(quán)利要求的方法。
全文摘要
一種I/O機(jī)柜模塊,其具備一個(gè)或多個(gè)I/O機(jī)柜,所述I/O機(jī)柜具有多個(gè)插槽以容納電子設(shè)備。主機(jī)適配器連接到所述I/O機(jī)柜模塊的第一插槽并被配置為將主機(jī)連接到所述I/O機(jī)柜。設(shè)備適配器連接到所述I/O機(jī)柜模塊的第二插槽并被配置為將存儲(chǔ)設(shè)備連接到所述I/O機(jī)柜模塊。閃存高速緩存連接到所述I/O機(jī)柜模塊的第三插槽,并包括被配置為緩存與通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求關(guān)聯(lián)的數(shù)據(jù)的基于閃存的存儲(chǔ)器。主處理器復(fù)合體管理通過(guò)所述I/O機(jī)柜模塊處理的數(shù)據(jù)請(qǐng)求,方式為與所述主機(jī)適配器、設(shè)備適配器以及閃存高速緩存通信以處理所述數(shù)據(jù)請(qǐng)求。
文檔編號(hào)G06F12/08GK102763091SQ201180009703
公開(kāi)日2012年10月31日 申請(qǐng)日期2011年1月7日 優(yōu)先權(quán)日2010年2月17日
發(fā)明者A·E·桑切斯, E·埃萊夫特里烏, J·S·海登二世, K·J·阿什, L·M·古樸塔, M·T·本哈塞, R·哈斯, R·普賴特卡, Y-C·許, 胡曉宇 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
普兰店市| 武穴市| 柏乡县| 石泉县| 永昌县| 北宁市| 罗山县| 伊春市| 凉城县| 班玛县| 日照市| 石嘴山市| 金坛市| 和田县| 霸州市| 镇雄县| 通州区| 扎囊县| 肃南| 武威市| 神农架林区| 平乡县| 翁牛特旗| 唐山市| 成安县| 都昌县| 巨鹿县| 塔城市| 四川省| 临江市| 中卫市| 鸡东县| 射洪县| 清原| 古交市| 惠州市| 资中县| 兖州市| 垣曲县| 平武县| 慈溪市|