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

提高散列索引密鑰查找高速緩存性能的方法和系統(tǒng)與流程

文檔序號:11965045閱讀:227來源:國知局
提高散列索引密鑰查找高速緩存性能的方法和系統(tǒng)與流程
本發(fā)明一般涉及計算機(jī),更特別地,涉及用于增強(qiáng)計算存儲環(huán)境中的數(shù)據(jù)處理性能的方法、系統(tǒng)和計算機(jī)程序產(chǎn)品。

背景技術(shù):
在當(dāng)今社會,計算機(jī)和計算機(jī)系統(tǒng)被應(yīng)用于各種設(shè)置中。在住宅、辦公室、學(xué)校、政府和其它設(shè)置中可找到計算環(huán)境和網(wǎng)絡(luò)。計算環(huán)境越來越多地在一個或更多個存儲環(huán)境中存儲數(shù)據(jù),在許多情況下,這些環(huán)境遠(yuǎn)離向用戶呈現(xiàn)的本地界面。這些計算存儲環(huán)境可使用常常協(xié)作的諸如硬盤驅(qū)動的許多存儲裝置,以存儲、檢索和更新組多數(shù)據(jù),該數(shù)據(jù)然后可被提供給請求或發(fā)送數(shù)據(jù)的主機(jī)計算機(jī)。在一些情況下,數(shù)個數(shù)據(jù)存儲子系統(tǒng)作為單個數(shù)據(jù)存儲系統(tǒng)被統(tǒng)一管理??赏ㄟ^組合幾個處理單元或處理單元群的主機(jī)“sysplex”(系統(tǒng)集合體)配置來管理這些子系統(tǒng)。以這種方式,可以使用常常包含各種類型的存儲裝置的多層次/多系統(tǒng)計算環(huán)境以組織和處理大量的數(shù)據(jù)。

技術(shù)實現(xiàn)要素:
許多多層/多系統(tǒng)計算環(huán)境實現(xiàn)數(shù)據(jù)去復(fù)制(de-duplicate)技術(shù)以通過減少跨著存儲裝置的復(fù)制存儲量來提高存儲性能。數(shù)據(jù)去復(fù)制系統(tǒng)越來越多地被利用,原因是它們幫助減少存儲數(shù)據(jù)所需要的物理存儲的總量。通過確保復(fù)制數(shù)據(jù)不被多次存儲來實現(xiàn)這種減少。事實上,例如,如果數(shù)據(jù)塊與已存儲的數(shù)據(jù)塊匹配,那么將原數(shù)據(jù)的指針存儲于虛擬存儲映射中而不是對于新的數(shù)據(jù)塊分配新的物理存儲空間。因此,數(shù)據(jù)去復(fù)制系統(tǒng)中的各數(shù)據(jù)塊與指示多少虛擬映射要素指向給定的數(shù)據(jù)塊的“參考計數(shù)器”相關(guān)聯(lián)。這種數(shù)據(jù)去復(fù)制系統(tǒng)必須應(yīng)對能夠存儲將虛擬存儲空間映射到物理盤存儲空間的大量的映射信息或者例所謂的如映射到已存儲的數(shù)據(jù)塊的數(shù)據(jù)塊“指紋”的問題。這種情況至少部分地由于這樣一種事實,即,與在算法上確定虛擬到物理映射的常規(guī)的獨立盤冗余陣列(RAID)系統(tǒng)不同,數(shù)據(jù)去復(fù)制映射可指向物理盤存儲的任意隨機(jī)塊。當(dāng)使用內(nèi)嵌數(shù)據(jù)去復(fù)制時,由于映射的尺寸,在存儲器中存儲整個映射一般是不實際或者不可能的。因此,根據(jù)訪問模式,只高速緩存映射的多個部分。作為結(jié)果,這些在特定時間存儲映射的最相關(guān)部分的正確的高速緩存和檢索變得越來越重要。為了快速訪問數(shù)據(jù),內(nèi)嵌數(shù)據(jù)去復(fù)制系統(tǒng)必須在存儲器內(nèi)保留上述的存儲映射信息(包含參考計數(shù)器信息)。否則,當(dāng)從物理存儲取出映射信息時,會引起附加的映射故障懲罰,由此明顯增加存儲延時。由此,存儲控制器必須能夠識別去復(fù)制映射的在特定的時間必須在存儲器內(nèi)被高速緩存的那些部分。相反,常規(guī)的高速緩存算法基于常規(guī)的“訪問局部性”模型以高速緩存虛擬化映射。需要用于這種存儲映射的更有效的高速緩存管理的方式,特別是出于本發(fā)明的目的,用于指紋索引或映射。鑒于以上對于更好地管理這種指紋映射信息的高速緩存的需要,提供通過處理器在計算環(huán)境中提高散列索引密鑰查找高速緩存性能的各種實施例。在一個實施例中,僅作為例子,對于具有與多個數(shù)據(jù)指紋對應(yīng)的多個條目的高速緩存的指紋映射,使用參考計數(shù)信息以確定在高速緩存中保留多個條目的時間長度。多個條目的具有較高參考計數(shù)的那些條目被保留得比具有較低參考計數(shù)的那些條目長。除了以上的示例性實施例以外,各種系統(tǒng)和計算機(jī)程序?qū)嵤├惶峁┎⑻峁┫嚓P(guān)的優(yōu)點。附圖說明為了更容易理解本發(fā)明的優(yōu)點,參照在附圖中示出的特定的實施例,給出以上簡要描述的本發(fā)明的更具體的描述。在理解這些附圖僅示出本發(fā)明的典型的實施例并因此不應(yīng)被視為限制其范圍之后,通過使用附圖以附加的特征和細(xì)節(jié)描述和解釋本發(fā)明,其中,圖1是示出可實現(xiàn)本發(fā)明的方面的示例性計算環(huán)境的框圖;圖2是表示也可實現(xiàn)本發(fā)明的方面的數(shù)據(jù)存儲系統(tǒng)的硬件結(jié)構(gòu)的框圖;圖3A是示出用于提高高速緩存性能的本發(fā)明的高速緩存系統(tǒng)實施例的框圖,其示出了數(shù)據(jù)去復(fù)制系統(tǒng)、數(shù)據(jù)頻率索引映射和高速緩存管理模塊之間的關(guān)系;圖3B是示出用于提高高速緩存性能的本發(fā)明的高速緩存系統(tǒng)實施例的框圖,其示出了高速緩存管理模塊與指紋高速緩存之間的關(guān)系;圖4是可實現(xiàn)本發(fā)明的方面的用于增強(qiáng)數(shù)據(jù)高速緩存性能的示例性實施例的流程圖;圖5是也可實現(xiàn)本發(fā)明的方面的用于增強(qiáng)數(shù)據(jù)高速緩存性能的附加示例性實施例的流程圖;以及圖6是也可實現(xiàn)本發(fā)明的方面的用于數(shù)據(jù)段的高速緩存管理的示例性實施例的流程圖。具體實施方式本領(lǐng)域技術(shù)人員可以理解,伴隨計算存儲環(huán)境的發(fā)展,對為了快速訪問而高速緩存于存儲器中的相關(guān)數(shù)據(jù)段的任何整個存儲映射的能力的限制也發(fā)展。當(dāng)實現(xiàn)內(nèi)嵌數(shù)據(jù)去復(fù)制系統(tǒng)時,這種限制變得更明顯,如上面描述的那樣,由于映射的尺寸,難以或者不可能在高速緩存存儲器中存儲整個存儲映射。作為結(jié)果,在任何特定的時間,存儲映射的僅僅多個部分被高速緩存。為了應(yīng)對和改善現(xiàn)有技術(shù)的狀態(tài),示出的實施例描述利用由去復(fù)制系統(tǒng)(例如,去復(fù)制引擎)提供的各種數(shù)據(jù)段的所謂“參考計數(shù)”信息以增強(qiáng)指紋映射高速緩存算法,從而更好地識別必須在存儲器中高速緩存的指紋存儲映射信息的部分,以確保更快的內(nèi)嵌數(shù)據(jù)訪問并由此提高存儲環(huán)境的高速緩存性能的機(jī)制。包括數(shù)據(jù)去復(fù)制功能的存儲系統(tǒng)實現(xiàn)各數(shù)據(jù)段的參考計數(shù),例如,該參考計數(shù)指示多少虛擬存儲段映射到單個物理存儲段上。參考計數(shù)信息一般是容易得到的,原因是這種參考計數(shù)功能可在即使不是全部也是大多數(shù)的內(nèi)嵌數(shù)據(jù)去復(fù)制系統(tǒng)中找到。通過提高指紋存儲映射信息的高速緩存性能,可明顯降低內(nèi)嵌數(shù)據(jù)去復(fù)制系統(tǒng)中的輸入/輸出(I/O)操作的平均延時。在以下的描述中,參照示出本發(fā)明的幾個實施例并形成其一部分的附圖。應(yīng)當(dāng)理解,在不背離本發(fā)明的范圍的情況下,可以利用其它的實施例,并且,可提出結(jié)構(gòu)和操作變化。現(xiàn)在轉(zhuǎn)到圖1,示出可實現(xiàn)本發(fā)明的方面的示例性計算機(jī)系統(tǒng)10。計算機(jī)系統(tǒng)10包括與大容量存儲裝置14和存儲器裝置16連接的中央處理單元(CPU)12。大容量存儲裝置可包括可被配置于獨立盤冗余陣列(RAID)中的硬盤驅(qū)動(HDD)裝置。可在位于系統(tǒng)10或其它位置中的裝置14上執(zhí)行進(jìn)一步描述的高速緩存管理操作。存儲器裝置16可包括諸如電可擦除可編程只讀存儲器(EEPROM)的存儲器或大量相關(guān)裝置。存儲器裝置16和大容量存儲裝置14通過信號承載介質(zhì)與CPU12連接。另外,CPU12通過通信端口18與附接有多個附加的計算機(jī)系統(tǒng)22和24的通信網(wǎng)絡(luò)20連接。計算機(jī)系統(tǒng)10可包括一個或更多個處理器裝置(CPU12)和用于計算機(jī)系統(tǒng)10的各單個部件的附加的存儲器裝置16,以執(zhí)行并進(jìn)行這里描述的各操作以實現(xiàn)本發(fā)明的目的。圖2是表示根據(jù)本發(fā)明的計算機(jī)系統(tǒng)中的數(shù)據(jù)存儲系統(tǒng)的硬件結(jié)構(gòu)的示例性框圖200。示出分別用作用于作為數(shù)據(jù)存儲系統(tǒng)200的一部分執(zhí)行數(shù)據(jù)處理的中央處理單元的主機(jī)計算機(jī)210、220、225。主機(jī)(物理或虛擬裝置)210、220和225可以是數(shù)據(jù)存儲系統(tǒng)200中的用于實現(xiàn)本發(fā)明的目的的一個或更多個新的物理裝置或邏輯裝置。在一個實施例中,僅作為例子,數(shù)據(jù)存儲系統(tǒng)200可實現(xiàn)為SystemStorageTMDS8000TM。網(wǎng)絡(luò)連接260可以是光纖通道結(jié)構(gòu)、光纖通道點對點鏈接、以太網(wǎng)結(jié)構(gòu)或點對點鏈接上的光纖通道、FICON或ESCONI/O接口、任何其它I/O接口類型、無線網(wǎng)絡(luò)、有線網(wǎng)絡(luò)、LAN、WAN、異質(zhì)、同質(zhì)、公共(即,因特網(wǎng))、私人或它們的任意的組合。主機(jī)210、220和225可位于本地或者分布于一個或更多個位置之間,并且可配有任意類型的結(jié)構(gòu)(或結(jié)構(gòu)通道)(圖2未示出)或與存儲控制器240的網(wǎng)絡(luò)適配器260,諸如光纖通道、FICON、ESCON、以太網(wǎng)、光纖、無線或共軸適配器。數(shù)據(jù)存儲系統(tǒng)200因此配有適當(dāng)?shù)挠糜谕ㄐ诺慕Y(jié)構(gòu)(圖2未示出)或網(wǎng)絡(luò)適配器260。數(shù)據(jù)存儲系統(tǒng)200在圖2中被示為包括存儲控制器240和存儲230。為了有利于更清楚地理解這里描述的方法,存儲控制器240在圖2中被示為包括將在后面更詳細(xì)地描述的微處理器242、系統(tǒng)存儲器243和非易失性存儲(“NVS”)216的單個處理單元。注意,在一些實施例中,存儲控制器240包含多個處理單元,每個具有它們自身的處理器集合和系統(tǒng)存儲器并通過數(shù)據(jù)存儲系統(tǒng)200內(nèi)的專用網(wǎng)絡(luò)互連。存儲230可包含通過存儲網(wǎng)絡(luò)與存儲控制器240連接的諸如存儲陣列的一個或更多個存儲裝置。在一些實施例中,包含于存儲230中的裝置可在回路結(jié)構(gòu)被連接。存儲控制器240管理存儲230并促進(jìn)針對存儲230的寫入和讀取請求的處理。存儲控制器240的系統(tǒng)存儲器243存儲處理器242為了執(zhí)行與管理存儲230相關(guān)聯(lián)的功能而訪問的程序指令和數(shù)據(jù)。在一個實施例中,系統(tǒng)存儲器243包含操作軟件250、與其相關(guān)聯(lián)或者與其通信,并部分地被配置為用于實現(xiàn)本發(fā)明的功能。如圖2所示,系統(tǒng)存儲器243還可包含用于緩沖分別指的是寫入/讀取請求和它們的相關(guān)聯(lián)的數(shù)據(jù)的“寫入數(shù)據(jù)”和“讀取數(shù)據(jù)”的用于存儲230的數(shù)據(jù)高速緩存245或者與其通信,該數(shù)據(jù)高速緩存245在這里也被稱為“高速緩存存儲器”。在一個實施例中,除了實施這里描述的操作以外,數(shù)據(jù)高速緩存245被分配于系統(tǒng)存儲器243外部的裝置中,但仍然保留可被微處理器242訪問,并可用于針對數(shù)據(jù)損失提供附加的安全性。在一些實施例中,為了增強(qiáng)數(shù)據(jù)存儲系統(tǒng)200的性能,數(shù)據(jù)高速緩存245通過易失性存儲器和非易失性存儲器被實現(xiàn),并通過局部總線(圖2未示出)與微處理器242耦合。包含于數(shù)據(jù)存儲控制器中的NVS216可被微處理器242訪問,并用于為在其它的圖中描述的本發(fā)明的操作和執(zhí)行提供附加的支持。也可被稱為“永久”高速緩存或“高速緩存存儲器”的NVS216通過可以或者可以不利用外部電力以保留存儲于其中的數(shù)據(jù)的非易失性存儲器被實現(xiàn)。出于適于實現(xiàn)本發(fā)明的目標(biāo)的任何目的,NVS可被存儲于數(shù)據(jù)高速緩存245中并通過其被存儲。在一些實施例中,諸如電池的后備電源(圖2未示出)向NVS216供給足夠的電力,以在數(shù)據(jù)存儲系統(tǒng)200出現(xiàn)電力損失的情況下保留存儲于其中的數(shù)據(jù)。在某些實施例中,NVS216的容量小于或等于數(shù)據(jù)高速緩存245的總?cè)萘?。存?30可在物理上包含諸如存儲陣列的一個或更多個存儲裝置。存儲陣列是諸如硬盤的單個存儲裝置的邏輯分組。在某些實施例中,存儲230包含JBOD(簡單磁盤簇)陣列或RAID(獨立盤冗余陣列)陣列。物理存儲陣列的集合可進(jìn)一步被組合以形成使物理存儲與邏輯配置分離的等級(rank)。等級中的存儲空間可被分配到邏輯卷中,該邏輯卷限定在寫入/讀取請求中規(guī)定的存儲位置。在一個實施例中,圖2所示的存儲系統(tǒng)可包含具有相應(yīng)的各種類型的分配的邏輯卷或“卷”。存儲230a、230b和230n被示為數(shù)據(jù)存儲系統(tǒng)200中的等級,并在這里被稱為等級230a、230b和230n。等級可處于數(shù)據(jù)存儲系統(tǒng)200的本地,或者可位于物理遠(yuǎn)程位置上。換句話說,局部存儲控制器可與遠(yuǎn)程存儲控制器連接,并管理遠(yuǎn)程位置處的存儲。等級230a被示為配有兩個整個卷234和236以及一個部分卷232a。等級230b被示為具有另一部分卷232b。因此,卷232跨著等級230a和230b被分配。等級230n被示為完全分配給卷238,即,等級230n指的是卷238的整個物理存儲。對于以上的例子,可以理解,等級可被配置為包含一個或更多個部分和/或整個卷。卷和等級可進(jìn)一步被分成代表固定存儲塊的所謂的“軌道”。軌道因此與給定的卷相關(guān)聯(lián)并可被給予給定的等級。存儲控制器240可包含將進(jìn)一步描述的數(shù)據(jù)去復(fù)制引擎255、高速緩存管理模塊257、塊映射259、指紋映射261和指紋高速緩存263。高速緩存管理模塊257可與存儲控制器240、主機(jī)210、220、225和存儲230的每個部件一起工作。本領(lǐng)域技術(shù)人員可以理解,高速緩存管理模塊257可在結(jié)構(gòu)為一個完整的模塊或者可與其它的單個模塊相關(guān)聯(lián)并且/或者包含于其中。高速緩存管理模塊257也可位于數(shù)據(jù)高速緩存245或其它部件中。存儲控制器240包含用于控制對于主機(jī)計算機(jī)210、220、225的光纖通道協(xié)議的控制開關(guān)241、用于控制所有存儲控制器240的微處理器242、用于存儲用于控制存儲控制器240的操作的微程序(操作軟件)250、用于控制的數(shù)據(jù)和后面描述的各表的非易失性控制存儲器243、用于暫時存儲(緩存)數(shù)據(jù)的數(shù)據(jù)高速緩存245和用于幫助數(shù)據(jù)高速緩存245讀取和寫入數(shù)據(jù)的緩沖器244、用于控制用于控制去往或者來自存儲230的數(shù)據(jù)傳送的協(xié)議的控制開關(guān)241。多個緩沖器244可通過本發(fā)明被實現(xiàn)以幫助這里描述的操作。存儲控制器240被示為包含數(shù)據(jù)去復(fù)制引擎255、存儲映射/數(shù)據(jù)頻率索引映射(DFIM)259(“存儲映射”259)和高速緩存管理模塊257。數(shù)據(jù)去復(fù)制引擎255、高速緩存管理模塊257和DFIM259可與存儲控制器240、主機(jī)210、220、225和存儲230的每個部件一起操作,以實現(xiàn)根據(jù)本發(fā)明的功能。數(shù)據(jù)去復(fù)制引擎255、高速緩存管理模塊257和DFIM259可在結(jié)構(gòu)上為一個完整的模塊或者可與其它的單個模塊相關(guān)聯(lián)并且/或者包含于其中。高速緩存管理模塊257和DFIM259也可包含于數(shù)據(jù)高速緩存245或其它部件中。數(shù)據(jù)去復(fù)制引擎255被配置為用于與諸如微處理器242的存儲控制器240的其它部件結(jié)合對于通過存儲控制器240傳遞到存儲230的寫入數(shù)據(jù)執(zhí)行數(shù)據(jù)去復(fù)制操作。如上所述,簡言之,存儲控制器240包含數(shù)據(jù)頻率塊映射259。數(shù)據(jù)高速緩存245(或整體稱為高速緩存系統(tǒng)245(可包含高速緩存管理模塊257、塊映射259或者甚至數(shù)據(jù)去復(fù)制引擎255))從主機(jī)210、220和225或類似的裝置接收然后將被置于數(shù)據(jù)高速緩存245中的寫入數(shù)據(jù)。數(shù)據(jù)去復(fù)制引擎255然后針對在高速緩存245中的復(fù)制而測試寫入數(shù)據(jù),并然后在塊映射259中寫入其索引和頻率。與塊映射259結(jié)合,數(shù)據(jù)去復(fù)制引擎產(chǎn)生與存儲的數(shù)據(jù)塊對應(yīng)的指紋信息,在指紋映射261中寫入其索引。新數(shù)據(jù)塊的指紋然后被與指紋映射中的索引指紋相比,以確定是否找到數(shù)據(jù)的確切的復(fù)制。指紋映射261可在部分上或整體上暫時存儲于指紋高速緩存263中。在一個實施例中,指紋映射261的尺寸使得在任意一個時間指紋映射261的僅僅一部分可被存儲于指紋高速緩存263中的“存儲器內(nèi)”(高速緩存)?,F(xiàn)在轉(zhuǎn)到圖3A,作為示例性流程,示出本發(fā)明的各種功能方面300的框圖,特別地,示出通過高速緩存管理模塊260創(chuàng)建要在后面在高速緩存管理中使用的參考計數(shù)信息。具體而言,數(shù)據(jù)高速緩存系統(tǒng)245被示為接收要作對于數(shù)據(jù)高速緩存245的寫入操作304通過數(shù)據(jù)去復(fù)制引擎255被處理的寫入數(shù)據(jù)302。當(dāng)寫入數(shù)據(jù)302通過數(shù)據(jù)去復(fù)制引擎255被處理時,并且,如上所述,寫入數(shù)據(jù)302通過現(xiàn)有存儲進(jìn)行復(fù)制測試,并且,去復(fù)制引擎255將頻率和索引信息306傳遞到數(shù)據(jù)頻率索引/塊映射259。圖3所示的包含數(shù)據(jù)去復(fù)制功能的存儲系統(tǒng)包含用于各數(shù)據(jù)塊的參考計數(shù),它表示多少虛擬存儲塊映射映射到單個物理存儲塊上以及其它的指示。當(dāng)從高速緩存245讀取312數(shù)據(jù)時,塊映射259被更新。包含于塊映射259中的信息(包含參考計數(shù)信息310)作為讀取數(shù)據(jù)312被提供給高速緩存管理模塊260,高速緩存管理模塊260與數(shù)據(jù)高速緩存245與存儲控制器240(圖2)并由此與主機(jī)210、220和225進(jìn)行向雙通信。現(xiàn)在轉(zhuǎn)到圖3B,作為附加的示例性流程,示出本發(fā)明的各種功能方面320的框圖,特別是示出使用上述的參考計數(shù)信息310以執(zhí)行對于指紋映射261的高速緩存管理信息。至少部分地基于前面在圖3A中描述的活動,根據(jù)本發(fā)明的方面,高速緩存管理模塊260可確定指紋映射261的哪些部分將被置于指紋高速緩存263中以及持續(xù)多長的適當(dāng)?shù)臅r間長度,將進(jìn)一步示出這一點。如上所述,參考計數(shù)信息310被高速緩存管理模塊260使用以確定指紋映射261的哪些部分將保留于指紋高速緩存263中??赏ㄟ^數(shù)據(jù)去復(fù)制引擎255(例如,圖3A)處理寫入命令,以獲得/產(chǎn)生代表將被寫入到存儲的寫入數(shù)據(jù)的指紋。指紋信息322然后被提供給示出的高速緩存管理模塊260,該高速緩存管理模塊260從指紋高速緩存263(通過雙邊通信316)調(diào)用指紋映射261的高速緩存的部分,以確定是否找到確切的匹配。該結(jié)果作為指紋數(shù)據(jù)318被提供給數(shù)據(jù)去復(fù)制引擎255。如果找到確切的匹配,那么可以更新這種數(shù)據(jù)的參考計數(shù),但是,數(shù)據(jù)不被重寫到物理存儲。在一個實施例中,至少部分基于用于確定指紋映射的哪些部分在存儲器中被高速緩存的參考計數(shù)信息的使用,與傳入的指紋信息322對應(yīng)的指紋映射261的相關(guān)部分增加,并且,根據(jù)進(jìn)一步描述的機(jī)制減輕對于從存儲調(diào)用指紋映射261的附加部分的需要。現(xiàn)在轉(zhuǎn)到圖4,在一個示例性實施例中表示用于在存儲環(huán)境中改善高速緩存性能的方法的流程圖。方法400開始于(步驟402)使用上述的參考計數(shù)信息以確定在指紋高速緩存263中保留上述的指紋映射261(例如,圖3B)的特定的條目(例如,部分)的適當(dāng)?shù)臅r間長度(步驟404)。方法400結(jié)束(406)。下面的圖5是另一示例性實施例中的前面在圖4中表示的參考計數(shù)信息的這種利用的實現(xiàn)方法的流程圖。這里,方法500開始(502),然后,檢查在上述的去復(fù)制操作的過程中從去復(fù)制引擎獲得的參考計數(shù)數(shù)據(jù)(步驟504)。基于參考計數(shù)信息(和/或通過特定的存儲策略的實現(xiàn)),建立指紋映射中的特定的條目或指紋映射中的數(shù)個條目的保留時間(步驟506)。繼續(xù)圖5,方法500然后詢問參照的數(shù)據(jù)段的參考計數(shù)信息是否被更新(例如,根據(jù)去復(fù)制操作被遞增),或者例如在物理塊上觀察到?jīng)]有活動的預(yù)定的時間間隔是否已到期(步驟508)。如果情況如此,那么前面在步驟506中建立的保留時間被重新訪問,以確定在高速緩存中的新的適當(dāng)?shù)谋A魰r間(步驟510)。返回步驟508,如果參考計數(shù)信息未被更新,或者預(yù)定時間間隔沒有到期,那么方法500在經(jīng)過一定時間之后返回步驟508以重新詢問是否滿足這些條件中的任一個或兩個。前面在圖4和圖5中描述的方法可考慮某些加權(quán)因子,諸如隨時間減小的預(yù)定權(quán)重,使得甚至看到很少或者看不到活動的具有高參考計數(shù)的數(shù)據(jù)段將看到它們的相關(guān)聯(lián)的權(quán)重(并由此將保留于高速緩存中的參照數(shù)據(jù)段的指紋信息的重要性)緩慢減小。本領(lǐng)域技術(shù)人員可以理解,為了適于特定的應(yīng)用,這些加權(quán)因子可在考慮或者不考慮其它的因素的情況下以各種方式被利用,以有效地處理參照的數(shù)據(jù)段的指紋信息隨經(jīng)過時間的相對重要性、用途和資源利用(諸如帶寬和其它缺乏系統(tǒng)資源)等。本領(lǐng)域技術(shù)人員可以理解,基于指紋映射中的特定的條目或一組條目(即,多個部分)的當(dāng)前的參考計數(shù)信息,可引入各種存儲策略(例如,可借助于管理員/用戶建立)以影響該條目或一組條目是否應(yīng)被保留一定的持續(xù)時間。由于參考計數(shù)信息對于給定的數(shù)據(jù)段表示特定的條目被訪問的可能性,因此,為了確定存儲于應(yīng)從高速緩存存儲器調(diào)出的指紋映射中的候選條目,可通過這種策略或者另外在映射高速緩存機(jī)制(諸如可通過前面描述的高速緩存管理模塊實現(xiàn)的映射高速緩存算法)中智能地使用該同一信息。鑒于以上的情況,考慮以下的例子。十(10)個映射表條目被建立為作為待被調(diào)出的候選。在這十個映射表條目中,包含較高參考計數(shù)的那些條目(在一個實施例中,對于所有的數(shù)據(jù)段一起)將比具有較低參考計數(shù)的那些條目晚些被調(diào)出。以這種方式,具有相應(yīng)的較高的參考計數(shù)的指紋映射部分被保留較長,期望是它們將被再次重新使用,并且,當(dāng)出現(xiàn)這一點時,將在高速緩存中找到該特定的條目以用于快速訪問。以下的圖6示出用于使用參考計數(shù)值在高速緩存中保留映射表條目的示例性方法的流程圖,其中,可以實現(xiàn)本發(fā)明的方面。方法600開始(步驟602),然后,詢問高速緩存是否是滿的,以及是否盡管如此仍從盤取出新的映射條目(由此需要調(diào)出其它的映射條目)(604)。如果情況如此,那么指紋映射條目被一并檢查以確定這些條目中的哪些將被從高速緩存調(diào)出(步驟606)。作為該檢查處理的部分,方法600然后詢問特定的被檢查的條目是否具有較高的參考計數(shù)值(例如,在一個實施例中,高于由策略設(shè)定的特定閾值)(步驟608)。如果情況如此,那么該條目保留于高速緩存中(步驟610)。如果條目被確定不具有高的值,那么條目被指定為將從高速緩存被調(diào)出(步驟612),并且,新的映射條目可在該條目位置被調(diào)入到高速緩存中。本領(lǐng)域技術(shù)人員可以理解,本發(fā)明的方面可體現(xiàn)為系統(tǒng)、方法或計算機(jī)程序產(chǎn)品。因此,本發(fā)明的方面可采取在這里可一般稱為“電路”、“模塊”、“處理”或“系統(tǒng)”的完全硬件實施例、完全軟件實施例(包含固件、駐留軟件、微代碼等)或包含軟件和硬件方面的實施例的形式。并且,本發(fā)明的方面可采取在具有體現(xiàn)于其上面的計算機(jī)可讀程序代碼的一個或更多個計算機(jī)可讀介質(zhì)中的計算機(jī)程序產(chǎn)品的形式??梢圆捎靡粋€或多個計算機(jī)可讀介質(zhì)的任意組合。計算機(jī)可讀介質(zhì)可以是計算機(jī)可讀信號介質(zhì)或者計算機(jī)可讀存儲介質(zhì)。計算機(jī)可讀存儲介質(zhì)例如可以是-但不限于-電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計算機(jī)盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPROM或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機(jī)可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。計算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括-但不限于-無線、有線、光纜、RF等等,或者上述的任意合適的組合??梢砸砸环N或多種程序設(shè)計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計算機(jī)程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言-諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設(shè)計語言-諸如“C”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機(jī)上執(zhí)行、部分地在用戶計算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計算機(jī)的情形中,遠(yuǎn)程計算機(jī)可以通過任意種類的網(wǎng)絡(luò)-包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計算機(jī),或者,可以連接到外部計算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。下面將參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機(jī)程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機(jī)程序指令實現(xiàn)。這些計算機(jī)程序指令可以提供給通用計算機(jī)、專用計算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些計算機(jī)程序指令在通過計算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時,產(chǎn)生了實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/操作的裝置。也可以把這些計算機(jī)程序指令存儲在計算機(jī)可讀介質(zhì)中,這些指令使得計算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其他設(shè)備以特定方式工作,從而,存儲在計算機(jī)可讀介質(zhì)中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/操作的指令的制造品(articleofmanufacture)。也可以把計算機(jī)程序指令加載到計算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計算機(jī)實現(xiàn)的過程,從而使得在計算機(jī)或其它可編程裝置上執(zhí)行的指令提供實現(xiàn)流程圖和/或框圖中的一個或多個方框中規(guī)定的功能/操作的過程。附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)、方法和計算機(jī)程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機(jī)指令的組合來實現(xiàn)。雖然詳細(xì)示出了本發(fā)明的一個或更多個實施例,但是,本領(lǐng)域技術(shù)人員可以理解,在不背離在以下的權(quán)利要求中闡述的本發(fā)明的范圍的情況下,可以提出對于這些實施例的修改和適應(yīng)。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
河东区| 白银市| 佳木斯市| 渭源县| 锡林郭勒盟| 大悟县| 高密市| 吉林市| 当涂县| 盐津县| 建瓯市| 襄樊市| 册亨县| 涞源县| 会昌县| 南澳县| 阿拉尔市| 仙居县| 赫章县| 台中县| 延长县| 扶沟县| 卢湾区| 岳阳市| 宣威市| 萝北县| 高平市| 集贤县| 营口市| 惠来县| 肇庆市| 娄底市| 阿荣旗| 辽宁省| 全椒县| 长子县| 五台县| 林周县| 新竹市| 永靖县| 天祝|