用于按需緩存的方法和數(shù)據(jù)處理系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種用于在廣域網(wǎng)(WAN)分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的數(shù)據(jù)處理系統(tǒng)中的機(jī)制。該機(jī)制監(jiān)視在WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中由多個緩存站點(diǎn)進(jìn)行的文件訪問。該機(jī)制識別緩存站點(diǎn)的訪問模式。該機(jī)制與所述多個緩存站點(diǎn)共享訪問模式。所述多個緩存站點(diǎn)中的給定緩存站點(diǎn)將訪問模式與本地的訪問信息進(jìn)行組合,并且基于組合的信息來識別要預(yù)取的文件。
【專利說明】用于按需緩存的方法和數(shù)據(jù)處理系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請一般地涉及改進(jìn)的數(shù)據(jù)處理裝置和方法,更具體地涉及用于在廣域網(wǎng)(WAN)分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)的緩存(cache)中按需緩存(on_demandcaching)的機(jī)制。
【背景技術(shù)】
[0002]存在用于實現(xiàn)廣域網(wǎng)(WAN)緩存的架構(gòu)。主站點(diǎn)可以是通用并行文件系統(tǒng)(GPFS)或由網(wǎng)絡(luò)文件系統(tǒng)(NFS)導(dǎo)出的任何其它文件系統(tǒng)。多個緩存站點(diǎn)通過網(wǎng)絡(luò)連接至主站點(diǎn)。多個緩存站點(diǎn)可以NFS掛載主NFS出口。只有一個緩存站點(diǎn)被允許對用于特定NFS出口的緩存中的文件進(jìn)行寫操作。其它站點(diǎn)是只讀緩存站點(diǎn),其可以了解來自主站點(diǎn)的更新并將這些更新拉取(pull)到緩存站點(diǎn)中。然而,緩存站點(diǎn)不能向主站點(diǎn)發(fā)送對文件和目錄的任何寫或更新。多個緩存站點(diǎn)可以是針對來自主站點(diǎn)的不同NFS出口的單個寫入器。
【發(fā)明內(nèi)容】
[0003]在一個說明性實施例中,提供了 一種數(shù)據(jù)處理系統(tǒng)中的用于在分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的方法。該方法包括監(jiān)視并行文件系統(tǒng)中由多個緩存站點(diǎn)進(jìn)行的文件訪問。該方法進(jìn)一步包括識別緩存站點(diǎn)的訪問模式。該方法還包括與所述多個緩存站點(diǎn)共享訪問模式。所述多個緩存站點(diǎn)中的給定緩存站點(diǎn)將訪問模式與本地的訪問信息進(jìn)行組合,并且基于組合的信息來識別要調(diào)度預(yù)取的文件。
[0004]在其它的說明性實施例中,提供了一種包括具有計算機(jī)可讀程序的計算機(jī)可用或可讀介質(zhì)的計算機(jī)程序產(chǎn)品。當(dāng)計算機(jī)可讀程序在計算設(shè)備上被執(zhí)行時,使得計算設(shè)備執(zhí)行上面關(guān)于方法說明性實施例概述的操作中的各種操作及其組合。
[0005]在又一個說明性實施例中,提供了一種系統(tǒng)/裝置。該系統(tǒng)/裝置包括一個或多個處理器和耦合到所述一個或多個處理器的存儲器。存儲器可以包括指令,當(dāng)指令由一個或多個處理器執(zhí)行時,使得一個或多個處理器執(zhí)行上面關(guān)于方法說明性實施例概述的操作中的各種操作及其組合。
[0006]這些以及本發(fā)明的其它特征和優(yōu)點(diǎn)將在下面的本發(fā)明的示例實施例的詳細(xì)說明中描述,或者基于下面的詳細(xì)說明而對具備所屬領(lǐng)域普通技能的人而言變得清楚。
【專利附圖】
【附圖說明】
[0007]本發(fā)明和優(yōu)選使用模式以及其目標(biāo)和優(yōu)勢可以通過參照下面結(jié)合附圖的對說明性實施例的詳細(xì)描述而最好地理解,其中:
[0008]圖1描繪了在其中可以實施說明性實施例的方面的示例分布式數(shù)據(jù)處理系統(tǒng)的圖形表示;
[0009]圖2是在其中可以實施說明性實施例的方面的示例分布式數(shù)據(jù)處理系統(tǒng)的框圖;
[0010]圖3描繪了在其中可以實施說明性實施例的方面的示例WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng);
[0011]圖4描繪了根據(jù)說明性實施例的主站點(diǎn)確定文件活躍度;
[0012]圖5描繪了根據(jù)說明性實施例的基于具有按需緩存的WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的信息而共享分析和統(tǒng)計信息以及預(yù)?。?br>
[0013]圖6是根據(jù)說明性實施例的說明WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的具有按需緩存的緩存站點(diǎn)的操作的流程圖;
[0014]圖7是根據(jù)說明性實施例的說明WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的用于按需緩存的主站點(diǎn)的操作的流程圖;
[0015]圖8是根據(jù)說明性實施例的說明緩存站點(diǎn)調(diào)度預(yù)取的操作的流程圖;
[0016]圖9是根據(jù)說明性實施例的說明緩存站點(diǎn)執(zhí)行訪問信息的統(tǒng)計分析的操作的流程圖。
【具體實施方式】
[0017]說明性實施例提供了 一種用于在WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的機(jī)制。該機(jī)制把在一時間窗口期間已經(jīng)被活躍使用的或在一時間段內(nèi)具有多個用戶的文件歸類為活躍文件。該時間窗口或該時間段可以是根據(jù)所需粒度可變的或固定的。該機(jī)制可以使用多個時間窗口,在這多個時間窗口內(nèi)同一文件或多個不同文件可以變得活躍。
[0018]主站點(diǎn)可以在中央位置處。由于主站點(diǎn)大體了解大部分的寫和未緩存的讀,因此其知曉哪些文件是活躍的。主站點(diǎn)還能夠執(zhí)行某些統(tǒng)計分析。例如,主站點(diǎn)能夠在幾天、幾周或幾個月的時段中確定哪些文件在哪個時間點(diǎn)開始變得活躍、到達(dá)最高點(diǎn)、以及接著變得靜止。主站點(diǎn)整理該信息并將其饋送給緩存站點(diǎn),因而緩存站點(diǎn)能夠執(zhí)行針對性的文件預(yù)填充(pre-population) /預(yù)取?;谔峁┑男畔ⅲ彺嬲军c(diǎn)能夠減小針對特定文件的再驗證間隔。對于特定的活躍文件,當(dāng)寫到來時,主站點(diǎn)可以向緩存站點(diǎn)發(fā)送回叫(callback)。
[0019]可以在許多不同類型的數(shù)據(jù)處理環(huán)境中利用所述說明性實施例。為了提供描述說明性實施例的特定元件和功能的上下文,隨后提供了圖1和圖2作為在其中可以實施說明性實施例的方面的示例環(huán)境。應(yīng)當(dāng)了解,圖1和圖2只是示例,并非旨在斷言或暗示關(guān)于在其中可以實施本發(fā)明的實施例的方面的環(huán)境的任何限制。在不偏離本發(fā)明的精神和范圍的情況下,可以對所描繪的環(huán)境進(jìn)行許多修改。
[0020]圖1描繪了在其中可以實施說明性實施例的方面的示例分布式數(shù)據(jù)處理系統(tǒng)的圖形表示。分布式數(shù)據(jù)處理系統(tǒng)100可以包括在其中可以實施說明性實施例的方面的計算機(jī)網(wǎng)絡(luò)。分布式數(shù)據(jù)處理系統(tǒng)100包含至少一個網(wǎng)絡(luò)102,網(wǎng)絡(luò)102是用來提供分布式數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種設(shè)備與計算機(jī)之間的通信鏈路的媒介。網(wǎng)絡(luò)102可以包括諸如有線、無線通信鏈路或光纜的連接。
[0021]在描繪的示例中,服務(wù)器104和服務(wù)器106連同存儲單元108連接至網(wǎng)絡(luò)102。另夕卜,客戶端110、112和114也連接至網(wǎng)絡(luò)102。這些客戶端110、112和114可以是例如個人計算機(jī)、網(wǎng)絡(luò)計算機(jī)等等。在描繪的示例中,服務(wù)器104向客戶端110、112和114提供數(shù)據(jù),諸如引導(dǎo)文件、操作系統(tǒng)映像和應(yīng)用。在描繪的示例中,客戶端110、112和114是服務(wù)器104的客戶端。分布式數(shù)據(jù)處理系統(tǒng)100可以包括附加的服務(wù)器、客戶端以及其它未示出的設(shè)備。
[0022]在描繪的示例中,分布式數(shù)據(jù)處理系統(tǒng)100是因特網(wǎng),其中網(wǎng)絡(luò)102表示世界范圍內(nèi)的使用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)協(xié)議組相互通信的網(wǎng)絡(luò)和網(wǎng)關(guān)的集合。在因特網(wǎng)的核心處是主節(jié)點(diǎn)或主計算機(jī)之間的骨干高速數(shù)據(jù)通信線路,其由成千上萬的用于路由數(shù)據(jù)和消息的商業(yè)、政府、教育以及其它計算機(jī)系統(tǒng)組成。當(dāng)然,分布式數(shù)據(jù)處理系統(tǒng)100也可以被實施為包括許多不同類型的網(wǎng)絡(luò),諸如例如內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)等等。如上所述,圖1旨在作為示例,而非作為對本發(fā)明的不同實施例的架構(gòu)限制,因此,圖1所示的特定元件不應(yīng)當(dāng)認(rèn)為是對在其中可以實施本發(fā)明的說明性實施例的環(huán)境的限制。
[0023]圖2是在其中可以實施說明性實施例的方面的示例數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)200是諸如圖1中的客戶端的計算機(jī)的示例,實施用于本發(fā)明的說明性實施例的處理的計算機(jī)可用的代碼或指令可以位于其中。
[0024]在描繪的示例中,數(shù)據(jù)處理系統(tǒng)200采用包括北橋和存儲器控制器集線器(NB/MCH) 202以及南橋和輸入/輸出(I/O)控制器集線器(SB/ICH) 204的集線器架構(gòu)。處理單元206、主存儲器208和圖形處理器210連接至NB/MCH202。圖形處理器210可以通過加速圖形端口(AGP)連接至NB/MCH202。
[0025]在描繪的示例中,局域網(wǎng)(LAN)適配器212連接至SB/ICH204。音頻適配器216、鍵盤和鼠標(biāo)適配器220、調(diào)制解調(diào)器222、只讀存儲器(R0M)224、硬盤驅(qū)動器(HDD)226、⑶-ROM驅(qū)動器230、通用串行總線(USB)端口以及其它通信端口 232和PCI/PCIe設(shè)備234通過總線238和總線240連接至SB/ICH204。PCI/PCIe設(shè)備可以包括例如以太網(wǎng)適配器、插入卡和用于筆記本計算機(jī)的PC卡。PCI使用卡總線控制器,而PCIe則不使用卡總線控制器。R0M224可以是例如快閃基本輸入/輸出系統(tǒng)(BIOS)。
[0026]HDD226 和 CD-ROM 驅(qū)動器 230 通過總線 240 連接至 SB/ICH204。HDD226 和 CD-ROM驅(qū)動器230可以使用例如集成驅(qū)動電路(IDE)或串行高級技術(shù)附件(SATA)接口。超級I/O(SIO)設(shè)備236可以連接至SB/ICH204。
[0027]操作系統(tǒng)運(yùn)行在處理單元206上。操作系統(tǒng)協(xié)調(diào)和提供圖2中的數(shù)據(jù)處理系統(tǒng)200內(nèi)的各種組件的控制。作為客戶端,操作系統(tǒng)可以是諸如微軟Windows7 (微軟和Windows是微軟公司在美國、其它國家或在美國和其它國家的商標(biāo))的商用操作系統(tǒng)。諸如Java編程系統(tǒng)的面向?qū)ο缶幊滔到y(tǒng)可以結(jié)合操作系統(tǒng)運(yùn)行并從Java程序或在數(shù)據(jù)處理系統(tǒng)200上執(zhí)行的應(yīng)用向操作系統(tǒng)提供調(diào)用(Java是Oracle和/或其附屬公司的商標(biāo))。
[0028]作為服務(wù)器,數(shù)據(jù)處理系統(tǒng)200可以是例如運(yùn)行高級交互執(zhí)行程序(AIX? )操
作系統(tǒng)或LINUX操作系統(tǒng)的丨βΜ' ? eServer? System p? 計算機(jī)系統(tǒng)(IBM、eServer、
System p和AIX是國際商用機(jī)器公司在美國、其它國家或在美國和其它國家的商標(biāo),LINUX是李納斯.托沃茲(Linus Torvalds)在美國、其它國家或在美國和其它國家的注冊商標(biāo))。數(shù)據(jù)處理系統(tǒng)200可以是在處理單元206中包括多個處理器的對稱多處理器(SMP)系統(tǒng)。另選地,可以采用單處理器系統(tǒng)。
[0029]用于操作系統(tǒng)的指令、面向?qū)ο缶幊滔到y(tǒng)和應(yīng)用或程序位于諸如HDD226的存儲設(shè)備上,并可以裝入到主存儲器208中用于由處理單元206執(zhí)行。用于本發(fā)明的說明性實施例的處理可以由處理單元206利用計算機(jī)可用的程序代碼來執(zhí)行,計算機(jī)可用的程序代碼可以例如位于存儲器中,諸如主存儲器208、R0M224或一個或多個外圍設(shè)備226和230中。
[0030]諸如圖2所示的總線238或總線240的總線系統(tǒng)可以由一個或多個總線組成。當(dāng)然,總線系統(tǒng)可以利用任何類型的通信結(jié)構(gòu)或架構(gòu)來實施,該通信結(jié)構(gòu)或架構(gòu)提供附接至所述結(jié)構(gòu)或架構(gòu)的不同組件或設(shè)備之間的數(shù)據(jù)傳送。諸如圖2的調(diào)制解調(diào)器222或網(wǎng)絡(luò)適配器212的通信單元可以包括一個或多個用來發(fā)送和接收數(shù)據(jù)的設(shè)備。存儲器可以是例如主存儲器208、R0M224或諸如圖2的NB/MCH202中的緩存。
[0031]本領(lǐng)域技術(shù)人員會清楚,根據(jù)實現(xiàn)方式,圖1和圖2中的硬件可以變化。其它內(nèi)部硬件或外圍設(shè)備,諸如閃存、等效的非易失性存儲器、或光盤驅(qū)動器等等,可以附加于圖1和圖2描繪的硬件或代替圖1和圖2描繪的硬件來使用。同樣,在不偏離本發(fā)明的精神和范圍的情況下,說明性實施例的處理可以應(yīng)用于前面提及的SMP系統(tǒng)以外的多處理器數(shù)據(jù)處理系統(tǒng)。
[0032]此外,數(shù)據(jù)處理系統(tǒng)200可以采用許多不同的數(shù)據(jù)處理系統(tǒng)中的任何形式,包括客戶端計算設(shè)備、服務(wù)器計算設(shè)備、平板計算機(jī)、膝上型計算機(jī)、電話或其它通信設(shè)備、個人數(shù)字助理(PDA)等等。在一些說明性示例中,數(shù)據(jù)處理系統(tǒng)200可以是便攜式計算設(shè)備,其配置有閃存以提供非易失性存儲器用于存儲例如操作系統(tǒng)文件和/或用戶生成的數(shù)據(jù)。本質(zhì)上,數(shù)據(jù)處理系統(tǒng)200可以是任何已知的或以后開發(fā)的數(shù)據(jù)處理系統(tǒng),而不具有架構(gòu)限制。
[0033]回到圖1,分布式數(shù)據(jù)處理系統(tǒng)100可以采用通用并行文件系統(tǒng)(GPFS),在該系統(tǒng)中諸如服務(wù)器104的一個節(jié)點(diǎn)是主站點(diǎn),諸如客戶端110、112、114以及服務(wù)器106的其它節(jié)點(diǎn)可以是緩存站點(diǎn)。圖3描繪了在其中可以實施說明性實施例的方面的示例WAN分離分布系文件系統(tǒng)或集群式文件系統(tǒng)。主站點(diǎn)310連接至緩存站點(diǎn)301-306。緩存站點(diǎn)301-305對于一個或多個文件掛載(file mounts)是只讀站點(diǎn),而緩存站點(diǎn)306是用于文件掛載的寫緩存。
[0034]WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)緩存是基于按需緩存的概念的。當(dāng)文件被訪問時,存在三種可能的不同場景:
[0035]1、文件最近已經(jīng)被取得。在這個模型中,存在對特定文件的訪問。如果文件已經(jīng)存在于緩存站點(diǎn)處且文件是在被稱為再驗證間隔的預(yù)定間隔內(nèi)被存儲在緩存站點(diǎn)處的,則該文件可以在緩存中被直接訪問,使其成為本地訪問,本地訪問是非??斓?。
[0036]2、文件最近還未被取得。如果文件存在于緩存站點(diǎn)處但自文件存儲在緩存站點(diǎn)處起已經(jīng)超過了再驗證間隔,則緩存站點(diǎn)對照主站點(diǎn)副本執(zhí)行再驗證處理。緩存站點(diǎn)接著對主站點(diǎn)執(zhí)行查找以獲得被修改時間和改變時間屬性。如果文件在主站點(diǎn)處的被修改時間和改變時間與緩存站點(diǎn)處的文件的值不同,則從主站點(diǎn)重取該文件到緩存站點(diǎn)。
[0037]3、文件在緩存站點(diǎn)處不存在。如果文件在緩存站點(diǎn)處不存在,則緩存站點(diǎn)從主站點(diǎn)取得文件。
[0038]當(dāng)然,在后面的兩種情況中,應(yīng)用經(jīng)歷訪問延時,該訪問延時與文件大小和至主站點(diǎn)的鏈路的帶寬直接成比例。
[0039]具有按需緩存的WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)可以經(jīng)歷兩種情況:對文件的冷訪問和過期訪問(stale access)。當(dāng)緩存站點(diǎn)確定文件在主站點(diǎn)處被修改且必須重取時是過期訪問。在某些約束下用于對文件的首次訪問或過期訪問的時間與文件大小和鏈路帶寬直接成比例。在低速鏈路或有限帶寬鏈路的情況中,這可能是顯著的開銷。預(yù)填充可以在一定程度上減輕首次訪問的問題;然而,當(dāng)文件在長時間內(nèi)未被訪問時,文件必須被從主站點(diǎn)重取,再次弓I入了延時。
[0040]一些解決方案可以基于預(yù)填充和基于文件的預(yù)取。這里預(yù)填充意指在整個文件被需要之前,將整個文件從主站點(diǎn)取得至緩存站點(diǎn)。如果整個文件相對于主站點(diǎn)版本是過期的,則預(yù)填充會重取緩存中的整個文件。預(yù)取意指在文件的部分被需要之前,將文件的部分從主站點(diǎn)取得。預(yù)取包括重取,即,當(dāng)這些文件的緩存部分與這些文件的主站點(diǎn)部分不同步時,從主站點(diǎn)更新文件的過期部分。預(yù)填充可以幫助減輕首次訪問的成本;然而,其通常由管理員執(zhí)行,而且不是減小首次訪問時間的自動化方法。其也不能動態(tài)地適應(yīng)訪問模式的改變,除非管理員修改預(yù)填充方案。一般地,預(yù)填充是向空緩存引入數(shù)據(jù)的一次性動作。文件數(shù)據(jù)預(yù)取不解決首次訪問或后續(xù)過期訪問的時間滯后/延時的問題。準(zhǔn)確地說,其解決的是在首次訪問后在文件其它部分的數(shù)據(jù)被需要之前具有這些數(shù)據(jù)的問題。
[0041]說明性實施例的機(jī)制使用了活躍文件的概念,活躍文件可以被歸類為要么在一時間窗口期間已經(jīng)被活躍地使用要么在一時間段內(nèi)具有多個用戶的那些文件。該時間窗口或時間段可以是基于所需粒度可變的或固定的。另選地,所述機(jī)制可以使用多個時間窗口,在這多個時間窗口內(nèi)同一文件或多個不同文件可以變得活躍。
[0042]在具有按需緩存的WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中,主站點(diǎn)一般位于中央位置處。由于主站點(diǎn)大體了解大部分的文件寫和未緩存的讀,因此其知曉哪些文件是活躍的。主站點(diǎn)也能夠執(zhí)行某些統(tǒng)計分析。例如,主站點(diǎn)能夠在幾天、幾周或幾個月的時段中確定哪些文件在哪些時間點(diǎn)開始變得活躍、到達(dá)最高點(diǎn)、以及接著變得靜止。主站點(diǎn)能夠整理該信息并將其饋送給緩存站點(diǎn),因而當(dāng)需要時,緩存站點(diǎn)能夠執(zhí)行針對性的文件預(yù)填充/預(yù)取?;谔峁┑男畔ⅲ彺嬲军c(diǎn)也能夠減小其針對特定文件的再驗證間隔。對于特定的活躍文件,每當(dāng)寫到來時,主站點(diǎn)可以向緩存站點(diǎn)發(fā)送回叫。
[0043]主站點(diǎn)確定文件或文件集合的“熱度”。主站點(diǎn)接著向緩存站點(diǎn)提供該信息。對于非?;钴S的文件,主站點(diǎn)可以向緩存站點(diǎn)提供回叫。
[0044]圖4描繪了根據(jù)說明性實施例的主站點(diǎn)確定文件活躍度。緩存站點(diǎn)401接收針對文件F402的寫。主站點(diǎn)410維護(hù)F的熱度的統(tǒng)計信息403。文件或文件集合的熱度可以基于到達(dá)文件的寫以及還基于來自不同緩存站點(diǎn)的讀以及在一時間段內(nèi)具有多個用戶。同樣,在不同時段期間,不同的文件可以是活躍的。主站點(diǎn)410存儲和整理該信息,以確定訪問模式。
[0045]主站點(diǎn)410可以是幾個不同的單寫入器緩存站點(diǎn)的目標(biāo)。主站點(diǎn)410能夠跨掛載點(diǎn)或目錄來關(guān)聯(lián)信息。例如,第一掛載點(diǎn)目錄中的第一文件可以在第二掛載點(diǎn)目錄中的第二文件被寫的同時被寫。同樣,確定文件的共享模式是重要的。例如,對文件的寫可以繼之以對文件集合的讀,接著繼之以來自另一個節(jié)點(diǎn)的寫。關(guān)于共享模式的信息可以是不斷演變的。訪問模式的歷史必須被存儲。例如,特定文件可能在周三下午2:00至下午3:00之間被大量地訪問和修改。類似的信息是有價值的,并且可以由緩存站點(diǎn)使用以發(fā)揮優(yōu)點(diǎn)。
[0046]圖5描繪了根據(jù)說明性實施例的基于具有按需緩存的WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的信息而共享分析和統(tǒng)計信息以及預(yù)取。周期性地,主站點(diǎn)510與不同的緩存站點(diǎn)501、502、506共享訪問模式和活躍度。緩存站點(diǎn)501、502、506將來自主站點(diǎn)510的模式信息與其在本地?fù)碛械年P(guān)于其連接的客戶端的訪問模式的信息進(jìn)行組合。緩存站點(diǎn)501、502、506接著嘗試預(yù)取或調(diào)度預(yù)取最有可能被訪問的文件。
[0047]有時,可能存在非?;钴S的且被大量訪問的文件。由于這是新近的模式,所以該信息可能尚未對其它緩存站點(diǎn)可用。根據(jù)示例性實施例,可以規(guī)定安裝“鉤子(hook)”,“鉤子”會向緩存站點(diǎn)回叫或調(diào)出(callout),來通知緩存站點(diǎn)其可能需要預(yù)取數(shù)據(jù)至緩存以補(bǔ)償該文件的按需代價。
[0048]統(tǒng)計分析涉及用在不同的緩存站點(diǎn)間傳播的試探模式來加權(quán)數(shù)據(jù),以幫助調(diào)度預(yù)測的文件預(yù)取。一個示例:如果用戶A從給定緩存站點(diǎn)訪問針對給定事件的數(shù)據(jù)X ;并且通過基于試探的統(tǒng)計分析,暗示在預(yù)定時間間隔內(nèi)數(shù)據(jù)Y會被該用戶從相同的緩存訪問,則推薦/預(yù)測數(shù)據(jù)Y被預(yù)取(聲明其在下一預(yù)定時間間隔內(nèi)非?;钴S)以在該特定事件和時間期間用于該特定緩存會有助于使得緩存更加高效。
[0049]這里是一個這樣的用于實施例的示例,以有助于描述其實施。
[0050]對于算法A,考慮下列命名:
[0051]R(x, t, c):在時間t對特定數(shù)據(jù)元素X的讀,其中t是在被指定為主站點(diǎn)的中央站點(diǎn)處的時間,c是緩存集群ID。
[0052]ff(x, t, c):在時間t對特定數(shù)據(jù)元素x的寫,其中t是在被指定為主站點(diǎn)的中央站點(diǎn)處的時間,c是緩存集群ID。
[0053]T(t, x):T是由從0到間隔P (其中P是預(yù)定值,例如24小時)的時間和粒度G (例如I秒)沿著X軸索引的二維表格。T中的每個元素是R(x,t,c)和W(x,t,c)元素的鏈表。這些元素沒有特定的次序。
[0054]T’ (t,x):r是結(jié)構(gòu)類似于T的二維表格。T與T’之間的差別是T’中的每個元素是R(x,t, c)和W(x,t, c)元素的鏈表束(針對每個數(shù)據(jù)元素X —個鏈表),其中每個鏈表按到達(dá)時間t排序。
[0055]T’’ (t,x):T’’類似于T’,并增加了圖表元素之間的鏈接。T’’是持久性的,并有
助于建立試探和演變。
[0056]M:整合(consolidation)時間間隔。
[0057]D:整合間隔粒度。
[0058]G:時間間隔粒度。
[0059]P:粒度G中的特定重現(xiàn)間隔。
[0060]該算法如下進(jìn)行:
[0061]步驟S:在每個時間間隔M,在中央站點(diǎn)處執(zhí)行如下步驟:
[0062]a.通過沿著X軸組合D/G鄰近元素,將T轉(zhuǎn)換為具有粒度D的新表格T’,以使得具有按時間順序的對同一數(shù)據(jù)元素X的讀/寫序列的列表。
[0063]b.進(jìn)一步將T’轉(zhuǎn)換為T’ ’,以使得:
[0064]1.如果圖表T’中任何具有數(shù)據(jù)元素X的特定元素只具有讀,則創(chuàng)建至在前的對X的寫的鏈接(如果其存在)。
[0065]i1.如果任何具有數(shù)據(jù)條目X的特定表格條目只具有寫,則創(chuàng)建至下一個讀集合(可能在另一個格子元素中)的鏈接。[0066]算法A只是實施細(xì)節(jié),并不旨在限制說明性實施例。所屬領(lǐng)域技術(shù)人員能夠容易地用其它公知的統(tǒng)計算法,如統(tǒng)計推斷、馬爾科夫模型等,來代替步驟S。
[0067]在中央站點(diǎn)/主站點(diǎn)處的通用I/O路徑中:
[0068]對于到來的W(x,t,c):
[0069]1.根據(jù)其位于的時間間隔,用合適的格子條目中的“寫”信息來更新現(xiàn)有的表格T。
[0070]i1.使用表格T’’,確定后續(xù)所預(yù)測的來自其它緩存集群的對數(shù)據(jù)元素X的“讀”(如果其存在)。如果后續(xù)“讀”存在,則向該緩存集群站點(diǎn)推送“讀”。
[0071]對于到來的R(x,t,c):
[0072]1.根據(jù)其位于的時間間隔,用合適的表格條目中的“讀”信息來更新現(xiàn)有的表格T。
[0073]算法B:中央站點(diǎn)或主站點(diǎn)與緩存站點(diǎn)共享表格T’’的內(nèi)容。緩存站點(diǎn)基于其訪問模式確定其想要拉取的數(shù)據(jù)元素。
[0074]算法C:對于其訪問模式未在T’ ’中表示的非常活躍的文件,中央站點(diǎn)或主站點(diǎn)向緩存站點(diǎn)發(fā)送回叫。接著,緩存站點(diǎn)決定其是否想要拉取該文件。
[0075]所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本發(fā)明的各個方面可以實現(xiàn)為系統(tǒng)、方法或計算機(jī)程序產(chǎn)品。因此,本發(fā)明的各個方面可以具體實現(xiàn)為以下形式,即:完全的硬件實施例、完全的軟件實施例(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結(jié)合的實施例,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。此外,在一些實施例中,本發(fā)明的各個方面還可以實現(xiàn)為在一個或多個計算機(jī)可讀介質(zhì)中的計算機(jī)程序產(chǎn)品的形式,該計算機(jī)可讀介質(zhì)中包含計算機(jī)可用的程序代碼。
[0076]可以采用一個或多個計算機(jī)可讀介質(zhì)的任意組合。計算機(jī)可讀介質(zhì)可以是計算機(jī)可讀信號介質(zhì)或者計算機(jī)可讀存儲介質(zhì)。計算機(jī)可讀存儲介質(zhì)例如可以是一但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或設(shè)備,或者任意以上的組合。計算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計算機(jī)盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機(jī)可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
[0077]計算機(jī)可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)字信號,其中承載了計算機(jī)可讀的程序代碼。這種傳播的數(shù)字信號可以采用多種形式,包括——但不限于——電磁信號、光信號或上述的任意合適的組合。計算機(jī)可讀的信號介質(zhì)還可以是計算機(jī)可讀存儲介質(zhì)以外的任何計算機(jī)可讀介質(zhì),該計算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者設(shè)備使用或者與其結(jié)合使用的程序。
[0078]計算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括一但不限于一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0079]可以以一種或多種程序設(shè)計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的計算機(jī)程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言一諸如Java、Smalltalk、C++等,還包括常規(guī)的過程式程序設(shè)計語言一諸如“C”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機(jī)上執(zhí)行、部分地在用戶計算機(jī)上執(zhí)行、作為一個獨(dú)立的軟件包執(zhí)行、部分在用戶計算機(jī)上部分在遠(yuǎn)程計算機(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)連接)。[0080]下面將參照根據(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ī)定的功能/動作的裝置。
[0081]也可以把這些計算機(jī)程序指令存儲在計算機(jī)可讀介質(zhì)中,這些指令使得計算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備以特定方式工作,從而,存儲在計算機(jī)可讀介質(zhì)中的指令就產(chǎn)生出包括實現(xiàn)流程圖和/或框圖中的一個或多個框中規(guī)定的功能/動作的指令的制造品(article of manufacture)?
[0082]計算機(jī)程序指令也可以加載到計算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上,以引起一系列操作步驟在該計算機(jī)、其它可編程裝置或其它設(shè)備上被執(zhí)行以產(chǎn)生計算機(jī)實施的處理,從而在該計算機(jī)或其它可編程裝置上執(zhí)行的指令提供用于實施在流程圖中和/或在框圖的一個或多個框中指定的功能/動作的處理。
[0083]圖6是根據(jù)說明性實施例的說明WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中具有按需緩存的緩存站點(diǎn)的操作的流程圖。當(dāng)緩存站點(diǎn)經(jīng)歷由客戶端進(jìn)行的文件訪問(框600)時,操作開始。緩存站點(diǎn)確定文件是否在其本地緩存中(框601)。如果文件不在本地緩存中,則緩存站點(diǎn)從主站點(diǎn)取得文件(框602),并且操作結(jié)束(框603)。
[0084]如果緩存站點(diǎn)確定文件在本地緩存中(框601),則緩存站點(diǎn)確定文件是否是最近被取得的(框604)。緩存站點(diǎn)確定文件是否是在預(yù)定時間閾值內(nèi)被取得的。如果文件是最近被取得的,緩存站點(diǎn)直接在本地緩存中訪問文件(框605),并且操作結(jié)束。
[0085]如果在框604中,緩存站點(diǎn)確定文件不是最近取得的,則緩存站點(diǎn)對照主站點(diǎn)副本執(zhí)行再驗證(框607)。為了執(zhí)行再驗證,緩存站點(diǎn)從主站點(diǎn)獲得文件的被修改時間和改變時間屬性,并將其與本地緩存中的文件副本的相同屬性進(jìn)行比較。緩存站點(diǎn)確定本地文件的時間屬性是否與在主站點(diǎn)處的文件的時間屬性匹配(框608)。如果屬性不匹配,緩存站點(diǎn)則從主站點(diǎn)取得文件(框602),并且操作結(jié)束。如果在框608中屬性匹配,則緩存站點(diǎn)直接在本地緩存中訪問文件(框605),并且操作結(jié)束(框606)。
[0086]圖7是根據(jù)說明性實施例的說明WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中用于按需緩存的主站點(diǎn)的操作的流程圖。操作開始(框700)。主站點(diǎn)監(jiān)視文件訪問(框701)并與緩存站點(diǎn)共享訪問模式(框702)。訪問模式可以作為表格T’’而被共享。
[0087]主站點(diǎn)執(zhí)行分析以識別非?;钴S的文件(框703)。該分析可以識別在預(yù)定時間窗口期間已經(jīng)被活躍地使用的文件和/或在一時間段內(nèi)具有多個用戶的文件。該時間窗口和時間段可以是根據(jù)所需的粒度可變的或固定的。如上所述,主站點(diǎn)可以在框703中基于表格T’’而執(zhí)行統(tǒng)計分析。主站點(diǎn)接著確定是否識別出一個或多個活躍文件(框704)。如果識別出活躍文件,則主站點(diǎn)向緩存站點(diǎn)通知所識別的活躍文件(框705),并且操作結(jié)束(框706)。如果主站點(diǎn)在框704中沒有檢測到活躍文件,則操作結(jié)束。主站點(diǎn)可以周期性地重復(fù)圖7的操作,以持續(xù)地向緩存站點(diǎn)提供用于預(yù)取調(diào)度的信息。
[0088]圖8是根據(jù)說明性實施例的說明緩存站點(diǎn)調(diào)度預(yù)取的操作的流程圖。操作開始(框800),緩存站點(diǎn)與主站點(diǎn)共享訪問模式(框801)。在框801中,緩存站點(diǎn)可以接收表格!'’’,表格!'’’識別預(yù)定時間段P內(nèi)的讀和寫。緩存站點(diǎn)將來自主站點(diǎn)的訪問信息與本地訪問信息組合(框802)。緩存站點(diǎn)接著執(zhí)行分析以識別要預(yù)取的文件,生成預(yù)取調(diào)度,并設(shè)置再驗證間隔(框803)。此后,操作結(jié)束(框804)。
[0089]圖9是根據(jù)說明性實施例的說明緩存站點(diǎn)執(zhí)行訪問信息的統(tǒng)計分析的操作的流程圖。操作開始(框900),主站點(diǎn)接收具有讀訪問的鏈表和寫訪問的鏈表的活躍度表格T(框901)。T(t,X)是由從O到間隔P (其中P是預(yù)定值,例如24小時)的時間和粒度G (例如I秒)沿著X軸索引的二維表格。T中的每個元素是R(x,t,c)和W(x,t,c)元素的鏈表。這些元素沒有特定的次序。主站點(diǎn)接著將活躍度表格T轉(zhuǎn)換為排序鏈表的表格T’(框902)。T’(t,x)是結(jié)構(gòu)與T類似的二維表格。T與T’之間的差別是T’中的每個元素是R(x,t,c)和W(x,t, c)元素的鏈表束(針對每個數(shù)據(jù)元素X —個鏈表),其中每個鏈表按到達(dá)時間t排序。
[0090]主站點(diǎn)接著確定T’中的任何元素是否只具有讀(框903)。如果一元素只具有讀,則主站點(diǎn)創(chuàng)建至在前的寫的鏈接(框904)。此后,或者如果在T’中沒有元素只具有讀(框903),則主站點(diǎn)確定T’中的任何元素是否只具有寫(框905)。如果一元素只具有寫,則主站點(diǎn)創(chuàng)建至下一個讀集合的鏈接(框906)。框903-906的操作產(chǎn)生更新的活躍度表格T’ ’。T’’ (t,x)類似于 T’,并增加了圖表元素之間的鏈接。T’’是持久性的,有助于建立試探和演變。
[0091]此后,或者如果在T’中沒有元素只具有寫(框905),則主站點(diǎn)確定是否遇到到來的寫(框907)。如果遇到對主站點(diǎn)處的數(shù)據(jù)元素的寫,則主站點(diǎn)更新活躍度表格T(框908)。主站點(diǎn)接著使用T’ ’來確定后續(xù)的所預(yù)測的來自一個或多個其它緩存集群的對該數(shù)據(jù)元素的讀(框909)。主站點(diǎn)向所述一個或多個緩存集群推送該數(shù)據(jù)元素(框910)。此后,操作返回至框902來將活躍度表格轉(zhuǎn)換為排序鏈表的表格。
[0092]如果主站點(diǎn)在框907中沒有遇到寫,則主站點(diǎn)確定是否遇到到來的讀(框911)。如果在主站點(diǎn)處遇到對數(shù)據(jù)元素的讀,則主站點(diǎn)更新活躍度表格T (框912)。此后,或者如果主站點(diǎn)在框911中沒有遇到讀,操作返回至902來將活躍度表格轉(zhuǎn)換為排序鏈表的表格。
[0093]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)、方法和計算機(jī)程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(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)。
[0094]因此,說明性實施例提供了用于在WAN分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的機(jī)制。該機(jī)制減小了首次訪問的代價。預(yù)期的減小有賴于預(yù)測邏輯的準(zhǔn)確度。該減小也有賴于在緩存站點(diǎn)與主站點(diǎn)之間共享信息的周期。對于至少一些首次訪問或冷訪問,時間與本地訪問是相當(dāng)?shù)?。該機(jī)制還可以用于諸如網(wǎng)絡(luò)文件系統(tǒng)的網(wǎng)絡(luò)附加存儲(network-attached storage)角軍決方案。
[0095]上面已經(jīng)看到,應(yīng)當(dāng)理解說明性實施例可以采用完全硬件的實施例、完全軟件的實施例或者同時包含硬件和軟件元素的實施例的形式。在一個示例實施例中,說明性實施例的機(jī)制被實施為軟件或程序代碼,其包括但不限于固件、駐留軟件、微代碼等等。
[0096]適合于存儲和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)包括至少一個通過系統(tǒng)總線直接或間接地耦合到存儲器元件的處理器。存儲器元件可以包括在實際執(zhí)行程序代碼期間采用的本地存儲器、大容量存儲器、以及提供至少一些程序代碼的暫時存儲以減少在執(zhí)行期間必須從大容量存儲器中重取代碼的次數(shù)的高速緩沖存儲器。
[0097]輸入/輸出或I/O設(shè)備(包括但不限于鍵盤、顯示器、指點(diǎn)設(shè)備等)可以直接地或者通過居間的I/O控制器來耦合到系統(tǒng)。網(wǎng)絡(luò)適配器也可以耦合到系統(tǒng)以使得數(shù)據(jù)處理系統(tǒng)能夠通過居間的專用或公共網(wǎng)絡(luò)而耦合到其它數(shù)據(jù)處理系統(tǒng)或遠(yuǎn)程打印機(jī)或存儲設(shè)備。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器和以太網(wǎng)卡僅是當(dāng)前可獲得的網(wǎng)絡(luò)適配器類型中的幾種。
[0098]給出本發(fā)明的說明書的目的在于說明和描述,并非旨在窮舉或?qū)⒈景l(fā)明限制于公開的形式。對于具備所屬領(lǐng)域普通技能的人員來說,多種修改和變型是明顯的。選擇并描述實施例來最好地解釋本發(fā)明的原理、實際應(yīng)用,并使得具備所屬領(lǐng)域普通技能的人員能夠理解具有與特定預(yù)期用途相稱的各種修改的本發(fā)明的各種實施例。
【權(quán)利要求】
1.一種數(shù)據(jù)處理系統(tǒng)中的用于在分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的方法,該方法包括: 監(jiān)視分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中由多個緩存站點(diǎn)進(jìn)行的文件訪問; 識別緩存站點(diǎn)的訪問模式;以及 與所述多個緩存站點(diǎn)共享訪問模式,其中所述多個緩存站點(diǎn)中的給定緩存站點(diǎn)將訪問模式與本地的訪問信息進(jìn)行組合,并且基于組合的信息來識別要預(yù)取的文件。
2.根據(jù)權(quán)利要求1所述的方法,其中主站點(diǎn)維護(hù)關(guān)于分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的文件的文件訪問模式的統(tǒng)計信息。
3.根據(jù)權(quán)利要求2所述的方法,進(jìn)一步包括: 執(zhí)行分析以識別至少一個活躍文件;以及 響應(yīng)于識別出至少一個活躍文件,向所述多個緩存站點(diǎn)中的至少一個緩存站點(diǎn)通知所述至少一個活躍文件,其中所述至少一個緩存站點(diǎn)預(yù)取所述至少一個活躍文件。
4.根據(jù)權(quán)利要求3所述的方法,其中所述給定緩存站點(diǎn)執(zhí)行分析以識別要預(yù)取的文件并生成預(yù)取調(diào)度。
5.根據(jù)權(quán)利要求3所述的方法,其中所述給定緩存站點(diǎn)重置至少一個再驗證間隔。
6.根據(jù)權(quán)利要求13所述的方法,其中監(jiān)視文件訪問包括在活躍度表格中記錄文件訪問,其中活躍度表格是由從O到預(yù)定間隔P的時間和粒度G索引的二維表格,其中活躍度表格中的每個元素是讀和寫元素的鏈表。
7.根據(jù)權(quán)利要求6所述的方法,其中識別緩存站點(diǎn)的訪問模式包括: 將活躍度表格轉(zhuǎn)換為排序的活躍`度表格,其中排序的活躍度表格中的每個元素是按照時間排序的讀和寫元素的鏈表;以及 通過為排序的活躍度表格中只具有讀的每個元素創(chuàng)建至在前的寫的鏈接以及為排序的活躍度表格中只具有寫的每個元素創(chuàng)建至下一個讀集合的鏈接,將排序的活躍度表格轉(zhuǎn)變?yōu)榻?jīng)轉(zhuǎn)變的活躍度表格。
8.根據(jù)權(quán)利要求7所述的方法,其中共享訪問模式包括將經(jīng)轉(zhuǎn)變的活躍度表格發(fā)送給所述多個緩存站點(diǎn)。
9.根據(jù)權(quán)利要求7所述的方法,進(jìn)一步包括: 響應(yīng)于在主站點(diǎn)處接收到對數(shù)據(jù)元素的寫,基于經(jīng)轉(zhuǎn)變的活躍度表格來確定后續(xù)的所預(yù)測的來自至少一個緩存站點(diǎn)的讀;以及 向所述至少一個緩存站點(diǎn)推送所述數(shù)據(jù)元素。
10.一種用于在分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中按需緩存的數(shù)據(jù)處理系統(tǒng),其包括用于實施權(quán)利要求1-9中的任何方法的任何步驟的部件。
11.一種裝置,包括: 處理器;以及 耦合到處理器的存儲器,其中存儲器包括指令,當(dāng)指令由處理器執(zhí)行時,使得處理器: 監(jiān)視分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中由多個緩存站點(diǎn)進(jìn)行的文件訪問; 識別緩存站點(diǎn)的訪問模式;以及 與所述多個緩存站點(diǎn)共享訪問模式,其中所述多個緩存站點(diǎn)內(nèi)的給定緩存站點(diǎn)將訪問模式與本地的訪問信息進(jìn)行組合,并且基于組合的信息來識別要預(yù)取的文件。
12.根據(jù)權(quán)利要求11所述的裝置,其中主站點(diǎn)維護(hù)關(guān)于分離的分布式文件系統(tǒng)或集群式文件系統(tǒng)中的文件的文件訪問模式的統(tǒng)計信息,其中指令進(jìn)一步使得處理器: 執(zhí)行分析以識別至少一個活躍文件;以及 響應(yīng)于識別出至少一個活躍文件,向所述多個緩存站點(diǎn)中的至少一個緩存站點(diǎn)通知所述至少一個活躍文件,其中`所述至少一個緩存站點(diǎn)預(yù)取所述至少一個活躍文件。
【文檔編號】H04L29/08GK103677664SQ201310396099
【公開日】2014年3月26日 申請日期:2013年9月4日 優(yōu)先權(quán)日:2012年9月4日
【發(fā)明者】R·M·諾倫納, S·R·帕蒂爾, A·K·塞恩, R·P·沃德, K·S·扎德布克 申請人:國際商業(yè)機(jī)器公司