亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于分級存儲系統(tǒng)的管理裝置和管理方法與流程

文檔序號:12756314閱讀:290來源:國知局
用于分級存儲系統(tǒng)的管理裝置和管理方法與流程
本發(fā)明涉及一種用于分級存儲系統(tǒng)的管理裝置和管理方法。

背景技術(shù):
已經(jīng)提出一種用于在用戶側(cè)上安裝的文件服務(wù)器與在數(shù)據(jù)中心側(cè)上安裝的文件服務(wù)器之間移動文件的分級存儲系統(tǒng)(專利文獻(xiàn)1)。在這一分級存儲系統(tǒng)中,在用戶側(cè)文件服務(wù)器中存儲用戶頻繁使用的文件,并且在數(shù)據(jù)中心側(cè)文件服務(wù)器中存儲用戶不頻繁使用的文件。引用列表專利文獻(xiàn)PTL1:日本專利申請公開號2011-76294

技術(shù)實(shí)現(xiàn)要素:
技術(shù)問題在現(xiàn)有技術(shù)的情況下,由于用戶不頻繁使用的文件被移向數(shù)據(jù)中心側(cè)文件服務(wù)器,所以在用戶試著訪問這一文件時,訪問需要長時間。這是因?yàn)橛脩魝?cè)文件服務(wù)器必須通過諸如WAN(廣域網(wǎng))的通信網(wǎng)絡(luò)從數(shù)據(jù)中心側(cè)服務(wù)器獲取訪問目標(biāo)文件。因此,與文件存儲在用戶側(cè)文件服務(wù)器中相比較,在文件存儲于數(shù)據(jù)中心側(cè)文件服務(wù)器上時,響應(yīng)性能大幅降低并且用戶可用性也下降。鑒于前文,本發(fā)明的一個目的是提供一種分級存儲系統(tǒng)的管理裝置和管理方法,該管理裝置和管理方法使得有可能有效地使用第一文件管理裝置的從用戶終端可訪問的存儲區(qū)域以存儲盡可能多的文件。本發(fā)明的另一目的是提供一種用于分級存儲系統(tǒng)的管理裝置和管理方法,該管理裝置和管理方法使得有可能有效地使用第一文件管理裝置的存儲區(qū)域和第二文件管理裝置的存儲區(qū)域。問題的解決方案與本發(fā)明的一個方面有關(guān)的一種分級存儲系統(tǒng)管理裝置是一種用于管理分級存儲系統(tǒng)的管理裝置,該管理裝置通過第一文件管理裝置和第二文件管理裝置分級地管理文件,該分級存儲系統(tǒng)管理裝置包括:重復(fù)處理部分,該重復(fù)處理部分在第二文件管理裝置中創(chuàng)建在第一文件管理裝置中的指定文件的重復(fù)件;重復(fù)去除處理部分,該重復(fù)去除處理部分通過根據(jù)預(yù)先配置的第一指定條件選擇在第一文件管理裝置中的另一指定文件作為重復(fù)數(shù)據(jù)去除目標(biāo)并且將選擇的另一指定文件轉(zhuǎn)換成用于引用在指定引用文件中的數(shù)據(jù)的引用源文件來去除重復(fù)數(shù)據(jù);以及存根化處理部分,該存根化處理部分根據(jù)預(yù)先配置的第二指定條件選擇存根化候選文件,該存根化候選文件變成用于刪除在第一文件管理裝置中的指定文件的數(shù)據(jù)的存根化過程的目標(biāo),并且此外僅留下在指定文件的在第二文件管理裝置中創(chuàng)建的重復(fù)件中的數(shù)據(jù),并且也根據(jù)預(yù)先配置的第三指定條件對存根化候選文件存根化。與本發(fā)明的一個方面有關(guān)的一種分級存儲系統(tǒng)管理裝置也可以包括文件訪問接收部分,該文件訪問接收部分用于在第一文件管理裝置以內(nèi)的復(fù)制源文件重復(fù)件的創(chuàng)建已經(jīng)被請求的情況下創(chuàng)建復(fù)制源文件的重復(fù)件作為引用源文件。可以包括第一文件管理裝置作為能夠從用戶終端直接訪問的文件管理裝置,并且可以包括第二文件管理裝置作為不能從用戶終端直接訪問的文件管理裝置。配置也可以使得指定引用文件存儲表示以指定引用文件作為引用的引用源文件的數(shù)目的引用數(shù)目,并且每當(dāng)刪除引用源文件時或者每當(dāng)關(guān)于引用源文件執(zhí)行存根化過程時,遞減引用數(shù)目,并且在引用數(shù)目變成0時,文件訪問接收部分能夠刪除指定引用文件。也可以理解本發(fā)明為一種用于控制分級存儲系統(tǒng)管理裝置的計(jì)算機(jī)程序。附圖說明[圖1]圖1是示出整個實(shí)施例的概況的圖示。[圖2]圖2是分級存儲系統(tǒng)的硬件框圖。[圖3]圖3是分級存儲系統(tǒng)的軟件框圖。[圖4]圖4是示出在文件系統(tǒng)與索引節(jié)點(diǎn)管理表之間的關(guān)系的圖示。[圖5]圖5是具體示出索引節(jié)點(diǎn)管理表的圖示。[圖6]圖6是示出索引節(jié)點(diǎn)管理表的擴(kuò)展部分的圖示。[圖7]圖7示出重復(fù)過程的概況的圖示。[圖8]圖8示出單示例過程的圖示。[圖9]圖9示出克隆源文件的存儲位置的圖示。[圖10]圖10示出如何將正常文件轉(zhuǎn)換成克隆文件的圖示。[圖11]圖11是示出克隆文件如何僅存儲相對于克隆源文件的差異數(shù)據(jù)的圖示。[圖12]圖12是示出其中已經(jīng)將單實(shí)例應(yīng)用于所謂虛擬桌面環(huán)境的情況的示例的圖示。[圖13]圖13是示出其中將單實(shí)例應(yīng)用于文檔創(chuàng)建的情況的示例的圖示。[圖14]圖14是示出其中將單實(shí)例應(yīng)用于數(shù)據(jù)庫重復(fù)的情況的示例的圖示。[圖15]圖15是示出存根化過程的概況的圖示。[圖16]圖16是示出克隆源文件的圖示,該克隆源文件管理從其引用它的多個克隆文件。[圖17]圖17是示出讀過程的概況的圖示。[圖18]圖18是示出寫過程的概況的圖示。[圖19]圖19是示出重復(fù)過程的概況的圖示。[圖20]圖20是分別示出接收程序執(zhí)行的讀過程和寫過程的流程圖。[圖21]圖21是圖20的流程圖的繼續(xù)。[圖22]圖22是接收程序執(zhí)行的復(fù)制過程的流程圖。[圖23]圖23是接收程序執(zhí)行的刪除過程的流程圖。[圖24]圖24是示出數(shù)據(jù)移動器程序的總體操作的流程圖。[圖25]圖25是示出數(shù)據(jù)移動器程序執(zhí)行的存根化過程的流程圖。[圖26]圖26是示出數(shù)據(jù)移動器程序執(zhí)行的復(fù)制操作的流程圖。[圖27]圖27是示出數(shù)據(jù)移動器程序執(zhí)行的文件同步過程的流程圖。[圖28]圖28是示出用于選擇重復(fù)文件候選的過程的流程圖。[圖29]圖29是示出用于刪除重復(fù)件的過程的流程圖。[圖30]圖30是示出用于去除重復(fù)文件的流程圖。[圖31]圖31是示出克隆源文件和克隆文件變成與第二示例有關(guān)的重復(fù)過程(和存根化過程)的目標(biāo)的圖示。[圖32]圖32是示出可以基于克隆文件的上次訪問日期/時間估計(jì)的克隆源文件的上次訪問日期/時間的圖示。[圖33]圖33是示出用于基于克隆文件的上次訪問日期/時間估計(jì)克隆源文件的上次訪問日期/時間的過程的流程圖。[圖34]圖34是用于示出由接收程序執(zhí)行的讀過程和寫過程的流程圖。[圖35]圖35是圖34的流程圖的繼續(xù)。[圖36]圖36是圖34的流程圖的另一繼續(xù)。[圖37]圖37是示出由接收程序執(zhí)行的用于讀傳送數(shù)據(jù)的過程的流程圖。[圖38]圖38是由接收程序執(zhí)行的復(fù)制過程的流程圖。[圖39]圖39示出與第三示例有關(guān)的由數(shù)據(jù)移動器程序執(zhí)行的存根化過程的流程圖。具體實(shí)施方式以下將通過參照附圖說明本發(fā)明的一個實(shí)施例。然而應(yīng)當(dāng)指出該實(shí)施例僅為用于實(shí)現(xiàn)本發(fā)明的示例而未限制本發(fā)明的技術(shù)范圍。可以用多種方式組合在該實(shí)施例中公開的多個有特點(diǎn)的特征。在本說明書中,使用表達(dá)“aaa表”來說明在該實(shí)施例中使用的信息,但是本發(fā)明不限于此,并且例如可以使用其它表達(dá)、比如“aaa列表”、“aaa數(shù)據(jù)庫”和“aaa隊(duì)列”。在該實(shí)施例中使用的信息可以稱為“aaa”信息以表明這一信息未依賴于數(shù)據(jù)結(jié)構(gòu)。在解釋在該實(shí)施例中使用的信息的內(nèi)容時,可以使用比如“標(biāo)識信息”、“標(biāo)識符”、“名稱”和“ID”的表達(dá),但是這些表達(dá)可互換。此外,在說明該實(shí)施例的處理操作時,可以解釋“計(jì)算機(jī)程序”作為操作的執(zhí)行者(主體)。根據(jù)微處理器執(zhí)行計(jì)算機(jī)程序。因此,處理器也可以用作操作的執(zhí)行者。圖1是作為整體示出該實(shí)施例的概況的圖示。在圖1中示出兩個模式、即在附圖的左上側(cè)中示出的一個實(shí)施例(1)和在左下側(cè)中示出的另一實(shí)施例(2)。該實(shí)施例的分級存儲系統(tǒng)使用在邊緣側(cè)上設(shè)置的第一文件管理裝置1和在核心側(cè)上設(shè)置的第二文件管理裝置2來分級地管理文件。邊緣側(cè)表示用戶場站側(cè)。核心側(cè)是從用戶側(cè)分離的一側(cè)并且例如等效于數(shù)據(jù)中心。用戶可以經(jīng)由作為“用戶終端”服務(wù)的主機(jī)計(jì)算機(jī)(縮寫為主機(jī))訪問邊緣側(cè)文件管理裝置1并且可以從/向希望的文件讀/寫或者創(chuàng)建新文件。主機(jī)不能直接訪問在核心側(cè)文件管理裝置2中的文件。用戶不頻繁使用的文件變成如以下將進(jìn)一步說明的單示例過程的目標(biāo)。此外,自從上次訪問日期/時間起已經(jīng)流逝指定時間段的文件變成以下將進(jìn)一步說明的存根化過程的目標(biāo)。在執(zhí)行存根化過程之前執(zhí)行以下將進(jìn)一步說明的重復(fù)過程。管理裝置3是用于管理分級存儲系統(tǒng)的計(jì)算機(jī)并且例如可以被設(shè)置為從相應(yīng)文件共享裝置1和2分離的單獨(dú)計(jì)算機(jī)或者可以設(shè)置于邊緣側(cè)文件管理裝置1以內(nèi)。管理裝置3例如包括重復(fù)處理部分3A、作為“重復(fù)去除處理部分”的單示例處理部分3B、存根化處理部分3C和文件訪問接收部分3D?!疤幚聿糠帧痹诟綀D中縮寫為“部分”重復(fù)處理部分3A是用于在第二文件管理裝置2中創(chuàng)建在第一文件管理裝置1中的指定文件的重復(fù)件的功能。單實(shí)例處理部分3B檢測和共同地管理重復(fù)文件作為單個文件。以下將具體說明單示例過程,但是將先給出簡單說明。單實(shí)例處理部分3B選擇利用頻率已經(jīng)減少的文件作為候選文件,并且比較候選文件與現(xiàn)有克隆源文件??寺≡次募刃в凇耙梦募辈⑶沂菢?gòu)成數(shù)據(jù)引用目的地的文件。在候選文件和克隆源文件匹配的情況下,單實(shí)例處理部分3B刪除候選文件的數(shù)據(jù)并且配置克隆源文件作為候選文件的引用目的地。根據(jù)這一點(diǎn),將候選文件轉(zhuǎn)換成克隆文件??寺∥募怯糜诎凑招枰每寺≡次募臄?shù)據(jù)的文件,并且等效于“引用源文件”。這使得有可能防止相同數(shù)據(jù)分別存儲于多個文件中并且使存儲區(qū)域能夠被高效地使用。在該實(shí)施例中,有可能以塊數(shù)據(jù)為單位去除重復(fù)件。存根化處理部分3C是用于執(zhí)行存根化過程的功能。以下將具體說明存根化過程,但是將先給出簡要說明。首先假設(shè)相同文件根據(jù)重復(fù)處理部分3A的動作分別存儲于邊緣文件管理裝置1中和核心側(cè)文件管理裝置2中。在邊緣側(cè)文件管理裝置1的空閑容量削減時,存根化處理部分3C按從在邊緣側(cè)文件管理裝置1中存儲的一組文件的不頻繁使用的文件按順序選擇文件作為存根化目標(biāo)。刪除作為存根化目標(biāo)選擇的文件的數(shù)據(jù)。包括與存根化的文件相同的數(shù)據(jù)的文件存在于核心側(cè)文件管理裝置2中。因此,在主機(jī)訪問存根化的文件的情況下,從在核心側(cè)文件管理裝置2中存儲的重復(fù)的文件讀并且向邊緣側(cè)文件管理裝置1傳送數(shù)據(jù)。用于提取存根化的文件的數(shù)據(jù)的過程在該實(shí)施例中稱為召回過程。文件訪問接收部分3D從主機(jī)接收文件訪問請求并且根據(jù)請求的性質(zhì)執(zhí)行指定過程。文件訪問請求例如可以是讀請求、寫請求、復(fù)制請求或者刪除請求。在主機(jī)請求文件復(fù)制時,文件訪問接收部分3D創(chuàng)建請求的文件(通過對復(fù)制源文件復(fù)制而得到的文件)作為克隆文件。復(fù)制某個文件意味著在復(fù)制源文件與副本文件之間重復(fù)數(shù)據(jù)。因而如以下將進(jìn)一步說明的該實(shí)施例使用單實(shí)例處理部分3B以將復(fù)制源文件轉(zhuǎn)換成克隆文件并且復(fù)制這一克隆文件。在圖1的上部分中示出的實(shí)施例(1)中,在邊緣側(cè)文件管理裝置1中執(zhí)行單實(shí)例過程,并且存儲一個克隆源文件和引用這一克隆源文件的多個克隆文件。在邊緣側(cè)文件管理裝置1中的克隆文件使用克隆源文件數(shù)據(jù)(即如下數(shù)據(jù),該數(shù)據(jù)重復(fù)構(gòu)成引用的克隆源文件)并且存儲與克隆源文件的數(shù)據(jù)不同的數(shù)據(jù)(差異數(shù)據(jù))的數(shù)據(jù)。也就是說,克隆文件僅存儲與克隆源文件不同的差異數(shù)據(jù)。關(guān)注核心側(cè)文件管理裝置2。在核心側(cè)文件管理裝置2中存儲在邊緣側(cè)文件管理裝置1中存儲的多個文件(重復(fù)的文件)的重復(fù)件。然而即使在邊緣側(cè)文件管理裝置1中存儲的文件是克隆文件時,仍然在核心側(cè)文件管理裝置2中創(chuàng)建包括與正常文件相同的完整數(shù)據(jù)的文件(具體而言包括數(shù)據(jù)的文件,該數(shù)據(jù)復(fù)制克隆源文件的數(shù)據(jù)而不是僅差異數(shù)據(jù))并且創(chuàng)建該文件作為相關(guān)克隆文件的重復(fù)件。根據(jù)實(shí)施例(1),可以根據(jù)邊緣側(cè)文件管理裝置1存儲許多文件以使邊緣側(cè)文件管理裝置1的存儲區(qū)域能夠被高效地使用。因此可以對來自主機(jī)的訪問請求快速地做出響應(yīng)從而增強(qiáng)用戶可用性。然而由于創(chuàng)建克隆文件的重復(fù)件,所以在從邊緣側(cè)文件管理裝置1向核心側(cè)文件管理裝置2傳送克隆文件數(shù)據(jù)的情況下,必須向核心側(cè)文件管理裝置2傳送克隆文件差異數(shù)據(jù)和克隆源文件引用數(shù)據(jù)二者。在圖1中示出兩個克隆文件Fa和Fb。關(guān)于一個克隆文件Fa從邊緣側(cè)管理裝置1向核心側(cè)文件管理裝置2傳送數(shù)據(jù)“5”、“2”、“3”和“4”。相似地,關(guān)于另一克隆文件Fb從邊緣側(cè)管理裝置1向核心側(cè)文件管理裝置2傳送數(shù)據(jù)“1”、“2”、“6”和“4”這四個數(shù)據(jù)塊。因此,從邊緣側(cè)管理裝置1向核心側(cè)文件管理裝置2執(zhí)行傳送重復(fù)數(shù)據(jù)(在以上示例中傳送數(shù)據(jù)“2”和“4”)。出于這一原因,重復(fù)過程的傳送大小為大,傳送時間長,并且通信信道變成擁塞。此外,在未在核心側(cè)管理裝置2中應(yīng)用重復(fù)去除過程(單示例過程)的情況下,不可能高效使用核心側(cè)管理裝置2的存儲區(qū)域。這是因?yàn)樵诤诵膫?cè)管理裝置2中存儲核心文件的重復(fù)件作為包括與正常文件相同的所有它的數(shù)據(jù)的文件。因而可設(shè)想也在核心側(cè)管理裝置2中創(chuàng)建克隆源文件的重復(fù)件并且去除克隆源文件和克隆文件的重復(fù)數(shù)據(jù)。也就是說,由于可以在配置使得從邊緣側(cè)文件管理裝置1向核心側(cè)管理裝置2傳送克隆源文件數(shù)據(jù)和克隆文件的僅差異數(shù)據(jù)的情況下消除數(shù)據(jù)傳送,所以即使在未在核心側(cè)管理裝置2中應(yīng)用重復(fù)去除過程(單示例過程)的情況下仍然可以高效地利用核心側(cè)管理裝置2的存儲區(qū)域。然而在核心側(cè)管理裝置2中創(chuàng)建克隆源文件重復(fù)件時,克隆源文件也變成存根化過程的目標(biāo)。由于克隆源文件是從一個或者多個克隆文件引用的引用文件,所以管理克隆源文件,從而不可能直接用戶訪問。一般而言,對于存根化過程按照從最舊文件開始的順序以文件作為目標(biāo),并且這樣,用戶不能訪問的克隆源文件更易于在用戶可訪問克隆文件之前變成存根化過程目標(biāo)。在克隆源文件被存根化并且數(shù)據(jù)不再保留于邊緣側(cè)文件管理裝置1中時,引用這一克隆源文件的所有克隆文件的響應(yīng)性變差。這是因?yàn)檫吘墏?cè)文件管理裝置1必須通過WAN等從核心側(cè)文件管理裝置2獲取待引用的數(shù)據(jù)??寺∥募捻憫?yīng)性在召回過程完成之后暫時提高。然而在克隆源文件被最終存根化時,克隆文件的響應(yīng)性再次減少。因此,即使引用克隆源文件的克隆文件被頻繁使用時,向這一克隆文件提供數(shù)據(jù)的克隆源文件被確定不頻繁使用并且變成存根化目標(biāo)。因而在圖1的左下部中示出的實(shí)施例(2)中,適當(dāng)評估克隆源文件的利用頻率,并且執(zhí)行克隆源文件存根化過程。在實(shí)施例(2)中,基于引用這一克隆源文件的相應(yīng)克隆文件的索引值估計(jì)用于確定對克隆源文件存根化的適當(dāng)性的索引值。例如在實(shí)施例(2)中,計(jì)算克隆源文件的上次訪問日期/時間為引用這一克隆源文件的相應(yīng)克隆文件的上次訪問日期/時間的平均值。根據(jù)實(shí)施例(2),由于也可以在核心側(cè)文件管理裝置2中存儲單實(shí)例化的文件,所以可以有效地利用核心側(cè)文件管理裝置2的存儲區(qū)域。此外,由于可以從邊緣側(cè)文件管理裝置1向核心側(cè)文件管理裝置2僅發(fā)送克隆源文件數(shù)據(jù)和相應(yīng)克隆文件的存儲的差異數(shù)據(jù),所以可以減少傳送數(shù)據(jù)的大小從而消除通信擁塞。此外,由于適當(dāng)評估克隆源文件利用頻率,所以有可能阻止克隆源文件在克隆文件之前的存根化。作為這一點(diǎn)的結(jié)果,可以維持克隆文件的響應(yīng)性從而使得有可能防止用戶可用性降低。示例1圖2是示出分級存儲系統(tǒng)的總體配置的硬件框圖。圖3是分級存儲系統(tǒng)的軟件框圖。將先描述與圖1的對應(yīng)關(guān)系。作為“第一文件管理裝置”的文件存儲裝置10對應(yīng)于圖1的邊緣側(cè)文件管理裝置1,作為“第二文件管理裝置”工作的存檔裝置20對應(yīng)于圖1的核心側(cè)文件管理裝置2,并且作為“用戶終端”工作的主機(jī)12對應(yīng)于圖1中的主機(jī)。提供圖1的管理裝置3作為文件存儲裝置10的功能。更具體而言,根據(jù)在文件存儲裝置10中的軟件組和在存檔裝置20中的軟件組的協(xié)作實(shí)現(xiàn)管理裝置3執(zhí)行的功能。將說明邊緣側(cè)場站ST1的配置。邊緣側(cè)場站ST1設(shè)置于用戶側(cè)上并且例如設(shè)置于每個企業(yè)辦公室或者分公司辦公室中。邊緣側(cè)場站ST1例如配備有至少一個文件存儲裝置10、至少一個RAID(廉價盤冗余陣列)系統(tǒng)11和至少一個主機(jī)計(jì)算機(jī)(或者客戶端終端)12。例如經(jīng)由WAN或者其它這樣的場站間通信網(wǎng)絡(luò)CN1耦合邊緣側(cè)場站ST1和核心側(cè)場站ST2。例如經(jīng)由比如LAN(局域網(wǎng))的現(xiàn)場通信網(wǎng)絡(luò)CN2耦合文件存儲裝置10和主機(jī)計(jì)算機(jī)(下文為主機(jī))12。例如經(jīng)由比如FC-SAN(光纖信道-存儲區(qū)域網(wǎng)絡(luò))或者IP-SAN(網(wǎng)際協(xié)議-SAN)的通信網(wǎng)絡(luò)CN3耦合文件存儲裝置10和RAID系統(tǒng)11。可以配置這些通信網(wǎng)絡(luò)CN1、CN2、CN3中的多個或者所有通信網(wǎng)絡(luò)作為共享的通信網(wǎng)絡(luò)。文件存儲裝置10例如包括存儲器100、微處理器(在附圖中為CPU:中央處理單元)101、NIC(網(wǎng)絡(luò)接口卡)102和HBA主機(jī)總線適配器103。CPU101通過執(zhí)行在存儲器100中存儲的指定程序P100至P106來實(shí)現(xiàn)以下將進(jìn)一步說明的指定功能。存儲器100可以包括主存儲存儲器、閃存設(shè)備或者硬盤設(shè)備。以下將進(jìn)一步說明存儲器100的存儲內(nèi)容。NIC102是用于文件存儲裝置10經(jīng)由通信網(wǎng)絡(luò)CN2與主機(jī)12通信以及用于文件存儲裝置10經(jīng)由通信網(wǎng)絡(luò)CN1與存檔裝置20通信的通信接口電路。HBA103是用于文件存儲裝置10與RAID系統(tǒng)11通信的通信接口電路。RAID系統(tǒng)11管理由文件存儲裝置10管理的一組文件的數(shù)據(jù)作為塊數(shù)據(jù)。RAID系統(tǒng)11例如包括信道適配器(CHA)110、盤適配器(DKA)111和存儲設(shè)備112。CHA110是用于控制與文件存儲裝置10的通信的通信控制電路。DKA111是用于控制與存儲設(shè)備112的通信的通信控制電路。根據(jù)CHA110和DKA111的協(xié)作向存儲設(shè)備112寫入從文件存儲裝置10輸入的數(shù)據(jù)以及向文件存儲裝置10傳送從存儲設(shè)備112讀取的數(shù)據(jù)。存儲設(shè)備112例如包括硬盤設(shè)備、閃存設(shè)備、FeRAM(鐵電隨機(jī)存取存儲器)、MRAM(磁阻隨機(jī)存取存儲器)、相變存儲器(雙向統(tǒng)一存儲器)或者RRAM(電阻RAM:注冊商標(biāo))。將說明主機(jī)12的配置。主機(jī)12例如包括存儲器120、微處理器121、NIC122和存儲設(shè)備123。主機(jī)12可以被配置為服務(wù)器計(jì)算機(jī)或者可以被配置為個人計(jì)算機(jī)或者手持終端(以包括蜂窩電話)。以下將說明的應(yīng)用程序P120存儲于存儲器120和/或存儲設(shè)備123中。CPU121執(zhí)行應(yīng)用程序并且使用由文件存儲裝置10管理的文件。主機(jī)12通過NIC122與文件存儲裝置10通信。將說明核心側(cè)場站ST2。核心側(cè)場站ST2例如設(shè)置于數(shù)據(jù)中心等中。核心側(cè)場站ST2包括存檔裝置20和RAID系統(tǒng)21。經(jīng)由場站內(nèi)通信網(wǎng)絡(luò)CN4耦合存檔裝置20和RAID系統(tǒng)21。RAID系統(tǒng)21是與邊緣側(cè)RAID系統(tǒng)11相同的配置。核心側(cè)CHA210、DKA211和存儲設(shè)備212分別對應(yīng)于邊緣側(cè)的CHA110、DKA111和存儲設(shè)備112,并且這樣將省略其說明。存檔裝置20是用于備份由文件存儲裝置10管理的一組文件的文件存儲裝置。存檔裝置20例如包括存儲器200、微處理器201、NIC202和HBA203。由于存儲器200、微處理器201、NIC202和HBA203與文件存儲裝置10的存儲器100、微處理器101、NIC102和HBA103相同,所以將省略其說明。文件存儲裝置10和存檔裝置20的硬件配置趨同,但是它們的軟件配置不同。參照圖3,將先說明邊緣側(cè)場站ST1的軟件配置。文件存儲裝置10例如包括文件共享程序P100、數(shù)據(jù)移動器程序P101、文件系統(tǒng)程序(在附圖中縮寫為FS)P102以及內(nèi)核和驅(qū)動器(在附圖中縮寫為OS)P103。此外,文件存儲裝置10例如包括接收程序P104(參照圖7)、選擇程序P105(參照圖8)和重復(fù)檢測程序P106(參照圖8)。以下將進(jìn)一步說明每個程序的操作,但是簡要地說明,文件共享程序P100例如是用于使用比如CIFS(公共因特網(wǎng)文件系統(tǒng))或者NFS(網(wǎng)絡(luò)文件系統(tǒng))的通信協(xié)議來向主機(jī)12提供文件共享服務(wù)的軟件。數(shù)據(jù)移動器程序P101是用于執(zhí)行以下將進(jìn)一步說明的重復(fù)過程、文件同步過程、存根化過程和召回過程的軟件。文件系統(tǒng)是為了在卷114上實(shí)現(xiàn)稱為文件的管理單位而構(gòu)建的邏輯結(jié)構(gòu)。文件系統(tǒng)程序P102是用于管理文件系統(tǒng)的軟件。內(nèi)核和驅(qū)動器P103是用于作為整體控制文件存儲裝置10的軟件。內(nèi)核和驅(qū)動器P103例如控制調(diào)度在文件存儲裝置10上運(yùn)行的多個程序(進(jìn)程)并且控制來自硬件部件的中斷。接收程序P104是用于從主機(jī)12接收文件訪問請求、執(zhí)行指定過程并且返回其結(jié)果的軟件。選擇程序P105是用于選擇用于應(yīng)用單實(shí)例過程的單實(shí)例候選的軟件。重復(fù)檢測程序P106是用于為選擇的單實(shí)例候選執(zhí)行單實(shí)例過程的軟件。RAID系統(tǒng)11包括用于存儲OS等的邏輯卷113和用于存儲文件數(shù)據(jù)的邏輯卷114。可以通過將多個存儲設(shè)備112的物理存儲區(qū)域一起匯集成單個存儲區(qū)域并且從這一物理存儲區(qū)域剪取指定大小的存儲區(qū)域來創(chuàng)建邏輯卷113、114,這些邏輯卷是邏輯存儲設(shè)備。主機(jī)12例如包括應(yīng)用程序(下文縮寫為應(yīng)用)P120、文件系統(tǒng)程序P121以及內(nèi)核和驅(qū)動器P122。應(yīng)用P120例如包括字處理程序、客戶管理程序或者數(shù)據(jù)庫管理程序。將說明核心側(cè)場站ST2的軟件配置。存檔裝置20例如包括數(shù)據(jù)移動器程序P201、文件系統(tǒng)P202以及內(nèi)核和驅(qū)動器P203。以下將按照需要進(jìn)一步說明這些多款軟件的作用。RAID系統(tǒng)21例如包括用于存儲OS等的邏輯卷213和用于存儲與RAID系統(tǒng)11相同的文件數(shù)據(jù)的邏輯卷214。將省略其說明。圖4是以簡化形式示出在文件系統(tǒng)與索引節(jié)點(diǎn)管理表T10之間的關(guān)系的圖示。如在圖4的頂部所示,文件系統(tǒng)例如包括超塊、索引節(jié)點(diǎn)管理表T10和數(shù)據(jù)塊。超塊例如是用于共同地存儲文件系統(tǒng)管理信息的區(qū)域,文件系統(tǒng)管理信息比如文件系統(tǒng)的大小和文件系統(tǒng)空閑容量。索引節(jié)點(diǎn)管理表T10是用于管理在每個文件中配置的索引節(jié)點(diǎn)的管理信息。一個索引節(jié)點(diǎn)各自是針對在文件系統(tǒng)中的每個目錄或者文件而對應(yīng)地管理的。在索引節(jié)點(diǎn)管理表T10中的相應(yīng)條目中,僅包括目錄信息的條目稱為目錄條目??梢酝ㄟ^使用目錄條目以遵循文件路徑來訪問其中存儲目標(biāo)文件的索引節(jié)點(diǎn)。例如在遵循如圖4中所示“/home/user-01/a.txt”時,可以通過按照該順序遵循索引節(jié)點(diǎn)#2->索引節(jié)點(diǎn)#10->索引節(jié)點(diǎn)#15->索引節(jié)點(diǎn)#100訪問目標(biāo)文件的數(shù)據(jù)塊。其中存儲文件實(shí)體的索引節(jié)點(diǎn)(在圖4的示例中為“a.txt”)例如包括比如文件所有者、訪問權(quán)限、文件大小和數(shù)據(jù)存儲位置的信息。在圖4的底部,示出在索引節(jié)點(diǎn)與數(shù)據(jù)塊之間的引用關(guān)系。在圖4中向數(shù)據(jù)塊指派的標(biāo)號100、200、250表示塊地址。在訪問權(quán)限項(xiàng)目中顯示的“u”是用于用戶的縮寫,“g”是用于組的縮寫,并且“o”是用于除了用戶之外的個人的縮寫。另外,在訪問權(quán)限項(xiàng)目中示出的“r”是用于讀的縮寫,“x”是用于執(zhí)行的縮寫,并且“w”是用于寫的縮寫。記錄上次訪問日期/時間為年(四位)、月、日、小時、分鐘和秒的組合。圖5示出其中在索引節(jié)點(diǎn)管理表中存儲索引節(jié)點(diǎn)的狀態(tài)。在圖5中,給出索引節(jié)點(diǎn)編號“2”和“100”作為示例。圖6是示出在這一示例中已經(jīng)向索引節(jié)點(diǎn)管理表T10添加的部分的配置的圖示。索引節(jié)點(diǎn)管理表T10例如包括索引節(jié)點(diǎn)編號C100、所有者C101、訪問權(quán)限C102、大小C103、上次訪問日期/時間C104、文件名C105、擴(kuò)展部分C106和數(shù)據(jù)塊地址C107。擴(kuò)展部分C106是出于這一示例的目的而添加的有特點(diǎn)的部分,并且例如包括引用目的地索引節(jié)點(diǎn)編號C106A、重復(fù)標(biāo)志C106B、存根化標(biāo)志C106C、鏈接目的地C106D和引用計(jì)數(shù)C106E。引用目的地索引節(jié)點(diǎn)編號C106A是用于標(biāo)識數(shù)據(jù)引用目的地索引節(jié)點(diǎn)的信息。在克隆文件的情況下,在引用目的地索引節(jié)點(diǎn)編號C106A中配置克隆源文件索引節(jié)點(diǎn)編號。在克隆源文件的情況下,在引用目的地索引節(jié)點(diǎn)編號C106A中配置值。這是因?yàn)橐媚康牡夭淮嬖?。重?fù)標(biāo)志C106B是示出重復(fù)過程是否已經(jīng)結(jié)束的信息。在重復(fù)過程已經(jīng)結(jié)束并且已經(jīng)在存檔裝置20中創(chuàng)建重復(fù)件的情況下,在重復(fù)標(biāo)志中配置ON。在尚未執(zhí)行重復(fù)過程的情況下,即在尚未在存檔裝置20中創(chuàng)建重復(fù)件的情況下,配置重復(fù)標(biāo)志為OFF。存根化標(biāo)志C106C是示出是否已經(jīng)執(zhí)行存根化過程的信息。在已經(jīng)執(zhí)行存根化并且已經(jīng)將文件轉(zhuǎn)換成存根化的文件的情況下,在存根化標(biāo)志中配置ON。在尚未將文件轉(zhuǎn)換成存根化的文件的情況下,配置存根化標(biāo)志為OFF。鏈接目的地C106D是用于引用在存檔裝置20以內(nèi)的重復(fù)的文件的鏈接信息。在已經(jīng)完成重復(fù)過程的情況下,在鏈接目的地C106D中配置值。在文件存儲裝置10執(zhí)行召回過程等的情況下,可以通過引用鏈接目的地C106D來從存檔裝置20獲取重復(fù)的文件數(shù)據(jù)。引用計(jì)數(shù)C106E是用于管理克隆源文件的生命的信息。每當(dāng)創(chuàng)建引用克隆源文件的克隆文件時將引用計(jì)數(shù)C106E的值遞增1。因此例如在從五個克隆文件引用的克隆源文件的引用計(jì)數(shù)C106E中配置“5”。在刪除或者存根化引用克隆源文件的克隆文件時將引用計(jì)數(shù)C106E的值遞減1。因此在以上提到的情況下,引用計(jì)數(shù)C106E的值在一個克隆文件已經(jīng)被刪除并且另一克隆文件已經(jīng)被存根化的情況下轉(zhuǎn)變成“3”。在引用計(jì)數(shù)C106E的值達(dá)到0時,刪除克隆源文件。在這一示例中,在引用克隆源文件的克隆文件消失時,刪除這一克隆源文件并且文件區(qū)域增加。圖7示出重復(fù)過程的概況。以下將使用圖26來進(jìn)一步具體說明重復(fù)過程。文件存儲裝置10的數(shù)據(jù)移動器程序P101有規(guī)律地接收重復(fù)請求(S10)。重復(fù)請求例如由主機(jī)12發(fā)布。重復(fù)請求包括重復(fù)目標(biāo)文件名等。數(shù)據(jù)移動器程序P101向接收程序P104發(fā)布讀請求以獲取用于重復(fù)目標(biāo)的文件數(shù)據(jù)(S11)。接收程序P104從在RAID系統(tǒng)11中的主卷(邏輯卷,該邏輯卷是復(fù)制源)114讀取重復(fù)目標(biāo)文件的數(shù)據(jù),并且向數(shù)據(jù)移動器程序P101遞送這一數(shù)據(jù)(S12)。數(shù)據(jù)移動器程序P101向存檔裝置20的數(shù)據(jù)移動器程序P201發(fā)送獲取的文件數(shù)據(jù)和元數(shù)據(jù)(S13)。存檔裝置20的數(shù)據(jù)移動器程序P201向存檔裝置20的接收程序P204發(fā)布寫請求(S14)。接收程序P204向RAID系統(tǒng)次卷(復(fù)制目的地邏輯卷)214寫入從文件存儲裝置10獲取的文件(S15)。例如與文件數(shù)據(jù)塊一起發(fā)送的元數(shù)據(jù)是索引節(jié)點(diǎn)管理表T10。在存檔裝置20中創(chuàng)建重復(fù)件時,配置重復(fù)源文件的重復(fù)標(biāo)志C106B為ON。該配置可以使得使用記錄重復(fù)文件名的重復(fù)文件列表而不是重復(fù)標(biāo)志以管理重復(fù)的文件。關(guān)聯(lián)在主卷114中的重復(fù)源文件和在次卷214中的重復(fù)文件為配對。在更新重復(fù)源文件時,向存檔裝置20重新傳送文件。根據(jù)這一點(diǎn),同步在文件存儲裝置10以內(nèi)的重復(fù)源文件和在存檔裝置20以內(nèi)的重復(fù)文件。在這一示例中,使用列表來管理用于文件同步過程的目標(biāo)的文件。也就是說,在更新已經(jīng)經(jīng)歷重復(fù)處理的文件的情況下,在列表上記錄這一文件。文件存儲裝置10在適當(dāng)時間向存檔裝置20傳送在列表上記錄的文件。取代列表,可以向索引節(jié)點(diǎn)管理表T10添加表示需要同步的標(biāo)志。在已經(jīng)更新文件時,配置表示對于這一文件是否需要同步的標(biāo)志為ON,并且在文件同步過程已經(jīng)結(jié)束時,配置這一標(biāo)志為OFF。圖8示出單實(shí)例過程的概況。以下將使用圖28、29和30來進(jìn)一步具體說明單實(shí)例過程。選擇程序P105有規(guī)律地搜尋對于定義的時間段尚未訪問的文件(例如對于定義的時間段尚未更新的文件)并且創(chuàng)建用于記錄相關(guān)文件的名稱的列表T11(S20)。列表T11是用于管理文件的信息,該文件將變成用于單實(shí)例過程的候選。有規(guī)律地執(zhí)行的重復(fù)檢測程序P106比較在列表T11上記錄的單實(shí)例過程候選與現(xiàn)有克隆源文件。在候選文件和現(xiàn)有克隆源文件是匹配的情況下,重復(fù)檢測程序P106刪除在候選文件中的數(shù)據(jù)(S21)。重復(fù)檢測程序P106在候選文件索引節(jié)點(diǎn)管理表T10的引用目的地索引節(jié)點(diǎn)編號C106A中配置克隆源文件的索引節(jié)點(diǎn)編號(S21)。根據(jù)這一點(diǎn),將這一候選文件轉(zhuǎn)換成引用克隆源文件的克隆文件。在候選文件和現(xiàn)有克隆源文件未匹配的情況下,重復(fù)檢測程序P106創(chuàng)建與這一候選文件對應(yīng)的新克隆源文件。重復(fù)檢測程序P106刪除候選文件的數(shù)據(jù),并且此外還在候選文件的引用目的地索引節(jié)點(diǎn)編號C106A中配置新創(chuàng)建的克隆源文件的索引節(jié)點(diǎn)編號。圖9是示出克隆源文件管理方法的圖示。克隆源文件如上文說明的那樣是用于存儲將從一個或者多個克隆文件引用的數(shù)據(jù)的重要文件。因此,在這一示例中,在用戶不可訪問的具體目錄之下管理克隆源文件以便保護(hù)克隆源文件免于用戶錯誤。這一具體目錄在這一示例中稱為索引目錄。為每個文件大小排行、如例如“1K”、“10K”、“100K”和“1M”在索引目錄中提供子目錄??寺≡次募褂门c它自己的文件大小對應(yīng)的子目錄來管理。例如創(chuàng)建克隆源文件的文件名作為文件大小和索引節(jié)點(diǎn)編號的組合。具有文件大小780字節(jié)和索引節(jié)點(diǎn)編號10的克隆源文件的文件名變成“780.10”。相似地,具有文件大小900字節(jié)和索引節(jié)點(diǎn)編號50的克隆源文件的文件名變成“900.50”。使用“1KB”子目錄用于管理小于1KB的克隆源文件來管理這兩個克隆源文件“780.10”和“900.50”。在用于管理文件大小等于或者大于1KB、但是小于10KB的克隆源文件的“10K”子目錄中管理具有文件大小7000字節(jié)和索引節(jié)點(diǎn)編號3的克隆源文件。因此,在這一示例中,克隆源文件按照文件大小來分類并且存儲于子目錄中,并且此外還使用文件大小和索引節(jié)點(diǎn)編號的組合作為文件名。因此可以快速地選擇將與克隆候選文件(單實(shí)例過程候選文件)比較的克隆源文件從而使得有可能在相對短的時間段內(nèi)完成查詢處理。取代文件大小和索引節(jié)點(diǎn)編號的組合,例如可以從文件大小和哈希值的組合或者文件大小、索引節(jié)點(diǎn)編號和哈希值的組合創(chuàng)建克隆源文件的文件名。通過向哈希函數(shù)輸入克隆源文件數(shù)據(jù)來獲得哈希值。圖10示出如何將在列表T11中作為單實(shí)例處理候選而記錄的文件轉(zhuǎn)換成克隆文件。在圖10(a)的左側(cè)上示出克隆候選文件NF。在圖10(a)的右側(cè)上示出現(xiàn)有克隆源文件OF。為了方便而在圖10中示出元數(shù)據(jù)的部分。克隆候選文件NF和克隆源文件OF的數(shù)據(jù)均為“1234”,并且二者數(shù)據(jù)匹配。因而如圖10(b)中所示,文件存儲裝置10刪除克隆候選文件的數(shù)據(jù),并且此外還在克隆候選文件的引用目的地索引節(jié)點(diǎn)編號C106A中配置“10”,它是克隆源文件的索引節(jié)點(diǎn)編號。根據(jù)這一點(diǎn),將克隆候選文件NF轉(zhuǎn)換成引用克隆源文件OF的克隆文件CF??梢砸詳?shù)據(jù)塊為單位去除重復(fù)數(shù)據(jù)、即與克隆源文件的數(shù)據(jù)匹配的克隆文件數(shù)據(jù),因?yàn)樵诳寺≡次募械乃袛?shù)據(jù)被引用。圖11示出更新克隆文件的情況。在克隆文件被主機(jī)12更新并且是與克隆源文件的數(shù)據(jù)的部分未匹配的情況下,克隆文件僅存儲相對于克隆源文件的差異數(shù)據(jù)。在圖11的示例中,在克隆文件的頭部的兩個數(shù)據(jù)塊從“1”和“2”更新成“5”和“6”。因而克隆文件僅存儲作為差異數(shù)據(jù)的“5”和“6”并且對于其它數(shù)據(jù)“3”和“4”繼續(xù)引用克隆源文件。雖然在附圖中未具體示出,但是可以使用游程長度或者某種其它這樣的數(shù)據(jù)壓縮方法來壓縮克隆源文件和克隆文件中的任一文件或者二者??梢酝ㄟ^執(zhí)行數(shù)據(jù)壓縮來進(jìn)而更高效地使用文件存儲裝置10的存儲區(qū)域。將通過參照圖12至14說明單實(shí)例過程的多個應(yīng)用示例。在圖12至14中,僅示出邊緣側(cè)場站的配置。圖12是將單實(shí)例處理應(yīng)用于虛擬桌面環(huán)境的情況。在圖12的示例中,主機(jī)12被配置為虛擬服務(wù)器并且啟動多個虛擬機(jī)1200??蛻舳私K端13經(jīng)由每個虛擬機(jī)1200對文件進(jìn)行操作??蛻舳私K端13例如可以被配置為未包括輔助存儲裝置的瘦客戶端終端。在文件存儲裝置10中的文件系統(tǒng)管理虛擬機(jī)1200的啟動盤映像(VM映像)作為克隆文件。已經(jīng)變成克隆文件的每個啟動盤映像引用黃金映像(GI)。分別管理在每個啟動盤映像與黃金映像之間的差異數(shù)據(jù)作為差異數(shù)據(jù)(DEF)。因此,在已經(jīng)將單實(shí)例處理應(yīng)用于虛擬桌面環(huán)境的情況下,可以減少虛擬機(jī)的啟動盤映像的大小。因此即使在已經(jīng)創(chuàng)建大量虛擬機(jī)1200的情況下仍然可以使作為整體的數(shù)據(jù)存儲區(qū)域更小。圖13示出將單實(shí)例處理應(yīng)用于文檔管理系統(tǒng)的情況的示例。文件存儲裝置10的文件系統(tǒng)管理多個客戶端終端12共享的共享文件和從共享的文件得到的多個有關(guān)文檔。從共享的文件得到的有關(guān)文檔是引用共享的文檔作為克隆源文件的克隆文件。因此,在多個用戶基于共享的文檔創(chuàng)建有關(guān)文檔的情況下,可以在創(chuàng)建有關(guān)文檔作為克隆文件時高效地使用存儲區(qū)域。圖14是示出將單實(shí)例處理應(yīng)用于數(shù)據(jù)庫系統(tǒng)的情況的示例。用于測試使用的數(shù)據(jù)庫服務(wù)器12A、用于開發(fā)使用的數(shù)據(jù)庫服務(wù)器12B和用于操作使用的數(shù)據(jù)庫服務(wù)器12C各自包括數(shù)據(jù)庫程序1201。用戶經(jīng)由客戶端終端13訪問他被授權(quán)從在服務(wù)器12A至12C之中使用的服務(wù)器并且使用數(shù)據(jù)庫。文件存儲裝置10的文件系統(tǒng)管理母版表、黃金映像(該黃金映像是母版表的副本)和作為用于引用黃金映像的克隆文件而創(chuàng)建的克隆數(shù)據(jù)庫。測試數(shù)據(jù)庫服務(wù)器12A和開發(fā)數(shù)據(jù)庫服務(wù)器12B的數(shù)據(jù)庫開發(fā)程序1201使用分別已經(jīng)作為克隆文件而創(chuàng)建的數(shù)據(jù)庫。用作為克隆文件而創(chuàng)建的數(shù)據(jù)庫對應(yīng)地管理在作為克隆文件而創(chuàng)建的數(shù)據(jù)庫與黃金映像之間的差異數(shù)據(jù)。因此,在向多個客戶端終端13提供數(shù)據(jù)庫訪問的情況下,可以在為每個數(shù)據(jù)庫應(yīng)用預(yù)備作為克隆文件而創(chuàng)建的數(shù)據(jù)庫時高效地使用存儲區(qū)域。以上已經(jīng)描述應(yīng)用單實(shí)例處理的多個示例,但是以上給出的描述僅為示例,并且本發(fā)明也可以應(yīng)用于其它配置。圖15示出存根化過程的概況。數(shù)據(jù)移動器程序P101在定義的時間啟動并且校驗(yàn)主卷114的空閑容量而在空閑容量小于閾值的情況下按照從具有最舊上次訪問日期/時間的文件起的順序執(zhí)行存根化(S30)。存根化是指用于使目標(biāo)文件成為存根化的文件的過程。存根化過程刪除在文件存儲裝置10這一側(cè)上的數(shù)據(jù)并且僅留下存檔裝置20的重復(fù)的文件的數(shù)據(jù)。在主機(jī)12訪問存根化的文件時,從存檔裝置20讀取并且在文件存儲裝置10中存儲存根化的文件的數(shù)據(jù)(召回過程)。圖16示出克隆源文件刪除條件。如關(guān)于圖6的引用計(jì)數(shù)C106E說明的那樣,每當(dāng)創(chuàng)建以克隆源文件作為引用目的地的克隆文件時,將克隆源文件的引用計(jì)數(shù)C106E的值遞增1。備選地,在將克隆文件轉(zhuǎn)換成存根化的文件時,或者在刪除克隆文件時,每次將引用計(jì)數(shù)C106E遞減1。然后,在引用計(jì)數(shù)C106E的值達(dá)到0的時間點(diǎn),不再有直接引用這一克隆源文件的任何克隆文件,并且克隆源文件變成刪除目標(biāo)。圖17示出接收程序P104的讀請求過程的概況。接收程序P104在從主機(jī)102接收讀請求(S40)時從主卷114獲取讀目標(biāo)文件(S41)。在讀目標(biāo)文件已經(jīng)被存根化或者在主卷114中無數(shù)據(jù)的情況下,接收程序P104實(shí)施召回過程并且從次卷214讀取該讀目標(biāo)文件的數(shù)據(jù)(S42)。接收程序P104在主卷114中存儲從存檔裝置20的次卷214讀取的數(shù)據(jù)之后向主機(jī)12傳送這一數(shù)據(jù)(S43)。在已經(jīng)召回讀目標(biāo)文件時,接收程序P104從主卷114讀取這一文件數(shù)據(jù)并且向主機(jī)12傳送它。由于存儲裝置120被多個主機(jī)12共享,所以可能有根據(jù)更早接收的另一訪問請求來召回讀目標(biāo)存根化的文件。可以通過校驗(yàn)索引節(jié)點(diǎn)管理表T10的塊地址C107的值是否為0來確定是否已經(jīng)完成召回。在已經(jīng)完成召回的情況下,在塊地址中配置除了0之外的地址。圖18示出通過接收程序P104的寫請求過程的概況。接收程序P104在從主機(jī)12接收寫請求(S44)時校驗(yàn)寫目標(biāo)文件是否已經(jīng)被轉(zhuǎn)換成存根化的文件(S45)。在寫目標(biāo)文件已經(jīng)被轉(zhuǎn)換成存根化的文件的情況下,也就是說,在寫目標(biāo)文件被存根化的情況下,接收程序P104從存檔裝置20獲取寫目標(biāo)文件的所有數(shù)據(jù)。接收程序P104向文件存儲裝置10的文件系統(tǒng)寫入獲取的數(shù)據(jù)并且配置寫目標(biāo)文件的存根化標(biāo)志C106C為OFF(S46)。然后,接收程序P104向?qū)懩繕?biāo)文件寫入該寫數(shù)據(jù),并且此外還在更新列表中記錄寫目標(biāo)文件的名稱(S47)。由于寫目標(biāo)文件的內(nèi)容根據(jù)向它寫的寫數(shù)據(jù)改變,所以使寫目標(biāo)文件成為文件同步的目標(biāo)。在寫目標(biāo)文件尚未被存根化的情況下,省略以上描述的步驟S46,并且執(zhí)行步驟S47。圖19示出文件復(fù)制過程的概況。共享文件存儲裝置10的用戶可以按照需要重新使用在文件存儲裝置10中的文件并且可以創(chuàng)建新文件。在重新使用文件時,產(chǎn)生文件的副本??梢匀鐚τ谡N募瓿傻哪菢诱粘4_切地復(fù)制所有數(shù)據(jù),但是根據(jù)這一點(diǎn)在文件存儲裝置10中存儲重復(fù)數(shù)據(jù)。因而在這一示例中,單實(shí)例過程用來在文件副本創(chuàng)建時減少存儲容量。接收程序P104在從主機(jī)12接收復(fù)制請求(S48)時創(chuàng)建作為復(fù)制源(圖19的克隆文件1)而選擇的文件的副本(克隆文件2)(S49)。也就是說,接收程序P104通過僅復(fù)制元數(shù)據(jù)而不是復(fù)制數(shù)據(jù)來創(chuàng)建指定文件的副本。在作為復(fù)制源文件指定文件不是克隆文件的情況(比如正常文件的非克隆文件情況)下,接收程序P104先將復(fù)制源文件轉(zhuǎn)換成克隆文件。接著,接收程序P104通過復(fù)制被轉(zhuǎn)換成克隆文件的復(fù)制源文件的元數(shù)據(jù)(索引節(jié)點(diǎn)管理表T10)并且重新使用這一元數(shù)據(jù)的部分來創(chuàng)建副本文件(該副本文件是克隆文件)。由于克隆文件數(shù)目增加,所以克隆源文件的引用計(jì)數(shù)C106E的值被遞增1,該克隆源文件是這一克隆文件的引用目的地。圖20是示出接收程序P104執(zhí)行的讀過程和寫請求過程的流程圖。接收程序P104在從主機(jī)12接收讀請求或者寫請求時啟動和執(zhí)行以下處理。接收程序P104確定主機(jī)12請求的目標(biāo)文件的存根化標(biāo)志C16C是否被配置為ON(S100)。在存根化標(biāo)志未被配置為ON(S100:否)的情況下,接收程序P104移向以下將進(jìn)一步說明的圖12的處理,因?yàn)槟繕?biāo)文件尚未被轉(zhuǎn)換成存根化的文件。在目標(biāo)文件的存根化標(biāo)志被配置為ON(S100:是)的情況下,接收程序P104判決來自主機(jī)12的處理請求類型是否為讀請求或者寫請求(S101)。在讀請求(S101:讀)的情況下,接收程序P104引用目標(biāo)文件的索引節(jié)點(diǎn)管理表T10并且確定塊地址是否有效(S102)。在塊地址有效(S102:是)的情況下,接收程序P104讀取目標(biāo)文件的數(shù)據(jù)并且向主機(jī)12發(fā)送這一數(shù)據(jù),該主機(jī)是請求源(S103)。在塊地址有效的情況、也就是塊地址被配置為除了0之外的值的情況下,目標(biāo)文件尚未被轉(zhuǎn)換成存根化的文件。因此,召回過程是不必要的。接收程序P104更新目標(biāo)文件索引節(jié)點(diǎn)管理表T10的上次訪問日期/時間C104的值并且結(jié)束這一處理(S105)。在目標(biāo)文件塊地址無效(S102:否)的情況下,接收程序P104請求數(shù)據(jù)移動器程序P101執(zhí)行召回過程(S104)。數(shù)據(jù)移動器程序P101執(zhí)行召回過程。接收程序P104向主機(jī)12發(fā)送從存檔裝置20獲取的目標(biāo)文件(S104)、更新目標(biāo)文件索引節(jié)點(diǎn)管理表T10的上次訪問日期/時間C104并且結(jié)束這一處理(S105)。在來自主機(jī)12的處理請求是寫請求(S101:寫)的情況下,接收程序P104請求數(shù)據(jù)移動器程序P101執(zhí)行召回過程(S106)。數(shù)據(jù)移動器程序P101響應(yīng)于這一請求執(zhí)行召回過程。接收程序P104向從存檔裝置20獲取的目標(biāo)文件寫入該寫數(shù)據(jù)并且更新文件數(shù)據(jù)(S107)。接收程序P104也更新目標(biāo)文件索引節(jié)點(diǎn)管理表T10的上次訪問日期/時間C104(S107)。接收程序P104配置用寫數(shù)據(jù)更新的文件的存根化標(biāo)志C106C為OFF并且此外還配置重復(fù)文件的存根化標(biāo)志為ON(S108)。接收程序P104在更新列表中記錄用寫數(shù)據(jù)更新的文件的名稱并且結(jié)束這一處理(S109)。參照圖21,在主機(jī)12的處理目標(biāo)文件的存根化標(biāo)志C106C中配置OFF(S100:否)的情況下,接收程序P104移向圖23的步驟S110。接收程序P104確定來自主機(jī)12的處理請求是否為讀請求或者寫請求(S110)。在讀請求(S110:讀)的情況下,接收程序P104確定讀目標(biāo)文件是否為克隆文件(S111)。在讀目標(biāo)文件不是克隆文件(S111:否)的情況下,接收程序P104根據(jù)讀目標(biāo)文件索引節(jié)點(diǎn)管理表T10的塊地址讀取數(shù)據(jù)并且向主機(jī)12發(fā)送這一數(shù)據(jù)(S112)。接收程序P104更新讀目標(biāo)文件的上次訪問日期/地址C104(S119)。在讀目標(biāo)文件是克隆文件(S111:是)的情況下,接收程序P104合并從克隆源文件獲取的數(shù)據(jù)與在讀目標(biāo)克隆文件中存儲的差異數(shù)據(jù)并且向主機(jī)12發(fā)送這一合并的數(shù)據(jù)(S113)。接收程序P104更新克隆文件的上次訪問日期/時間C104,該克隆文件是讀目標(biāo)文件(S119)。在來自主機(jī)12的處理請求是寫請求(S110:寫)的情況下,接收程序P104確定寫目標(biāo)文件是否為重復(fù)件(S114)。在寫目標(biāo)文件是重復(fù)件(S114:是)的情況下,接收程序P104在更新列表中記錄寫目標(biāo)文件的名稱(S115)。這是因?yàn)閷憯?shù)據(jù)文件被寫數(shù)據(jù)更新并且不再與在存檔裝置20中的重復(fù)件匹配。在寫目標(biāo)文件不是重復(fù)件(S114:否)的情況下,接收程序P104略過步驟S115并且移向步驟S116。接收程序P104確定寫目標(biāo)文件是否為克隆文件(S116)。在寫目標(biāo)文件不是克隆文件(S116:否)的情況下,接收程序P104基于寫目標(biāo)文件的塊地址C107向?qū)懩繕?biāo)文件寫入該寫數(shù)據(jù)(S117)。接收程序P104更新其中寫人該寫數(shù)據(jù)的寫目標(biāo)文件的上次訪問日期/時間C104(S119)。在寫目標(biāo)文件是克隆文件(S116:是)的情況下,接收程序P104根據(jù)克隆文件的塊地址寫入該寫數(shù)據(jù)(S118)。接收程序P104僅關(guān)于克隆文件寫數(shù)據(jù)而未更新克隆源文件的數(shù)據(jù)。根據(jù)這一點(diǎn),寫目標(biāo)克隆文件存儲與克隆源文件的數(shù)據(jù)不同的差異數(shù)據(jù)(S118)。圖23是示出接收程序P104執(zhí)行的復(fù)制處理的流程圖。接收程序P104在從主機(jī)12接收復(fù)制請求時執(zhí)行這一處理。接收程序P104確定作為復(fù)制源而指定文件的存根化標(biāo)志C106C是否被配置為ON(S130)。在復(fù)制源文件的存根化標(biāo)志被配置為ON(S130:是)的情況下,接收程序P104確定復(fù)制源文件的塊地址是否有效(S131)。即使在已經(jīng)將復(fù)制源文件轉(zhuǎn)換成存根化的文件時仍然可能有已經(jīng)根據(jù)另一訪問請求完成召回過程的情況。在復(fù)制源文件塊地址有效(S131:是)的情況下,接收程序P104根據(jù)這一塊地址獲取文件數(shù)據(jù)和元數(shù)據(jù)(索引節(jié)點(diǎn)管理表T10)(S132)。在復(fù)制源文件塊地址無效(S131:否)的情況下,接收程序P104請求數(shù)據(jù)移動器程序P101執(zhí)行與復(fù)制源文件的數(shù)據(jù)有關(guān)的召回過程(S133)。接收程序P104在獲取復(fù)制源文件的文件數(shù)據(jù)和元數(shù)據(jù)時在主卷114以內(nèi)創(chuàng)建復(fù)制源文件的副本(S134)。這一副本文件是正常文件(非克隆文件)。接收程序P104更新復(fù)制源文件的上次訪問日期/時間C104(S135)。接收程序P104確定用于在步驟S134中創(chuàng)建的副本文件的重復(fù)處理是否已經(jīng)結(jié)束(S136)。在重復(fù)處理已經(jīng)結(jié)束(S136:是)的情況下,接收程序P104結(jié)束這一處理。在重復(fù)處理尚未結(jié)束(S136:否)的情況下,接收程序P104請求數(shù)據(jù)移動器程序P101執(zhí)行重復(fù)處理(S137)。在復(fù)制源文件的存根化標(biāo)志C106C被配置為OFF(S130:否)的情況下,接收程序P104確定復(fù)制源文件是否為克隆文件(S138)。在復(fù)制源文件不是克隆文件(S138:否)的情況下,接收程序P104調(diào)用重復(fù)去除程序(圖30)并且將復(fù)制源文件轉(zhuǎn)換成克隆文件(S139)。不是克隆文件的文件包括克隆源文件和正常文件,但是主機(jī)12不能識別并且不能直接訪問克隆源文件。接收程序P104被轉(zhuǎn)換成克隆文件的克隆源文件的復(fù)制管理表T10的信息并且創(chuàng)建復(fù)制源文件的副本文件(S140)。也就是說,也創(chuàng)建副本文件作為克隆文件。接收程序P104將復(fù)制源文件引用的克隆源文件的引用計(jì)數(shù)C106E的值遞增1(S141)。這是因?yàn)樵诓襟ES139至步驟S140中新創(chuàng)建克隆文件。接收程序P104更新復(fù)制源文件的上次訪問日期/時間C104(S135)并且移向步驟S136。將省略后續(xù)步驟S136和S137的說明。圖23是示出接收程序P104執(zhí)行的刪除過程的流程圖。接收程序P104在從主機(jī)12接收刪除請求時執(zhí)行這一處理。接收程序P104確定刪除目標(biāo)文件的存根化標(biāo)志C106C是否被配置為ON(S150)。接收程序P104在刪除目標(biāo)文件的存根化標(biāo)志被配置為ON(S150:是)的情況下刪除該刪除目標(biāo)文件的索引節(jié)點(diǎn)管理表T10(S151)。此外,接收程序P104指令存檔裝置20刪除文件,該文件是刪除目標(biāo)文件的重復(fù)件(S152),并且結(jié)束這一處理。在刪除目標(biāo)文件的存根化標(biāo)志被配置為OFF(S150:否)的情況下,接收程序P104確定刪除目標(biāo)文件是否為非克隆文件(S153)。非克隆文件是除了克隆文件之外的文件、也就是正常文件。在刪除目標(biāo)文件是正常文件(S153:是)的情況下,接收程序P104刪除該刪除目標(biāo)文件的索引節(jié)點(diǎn)管理表T10(S154)并且結(jié)束處理。在刪除目標(biāo)文件不是正常文件(S153:否)的情況下,接收程序P104確定刪除目標(biāo)文件是否為克隆文件(S155)。在刪除目標(biāo)文件不是克隆文件(S155:否)的情況下,接收程序P104結(jié)束處理。在刪除目標(biāo)文件是克隆文件(S155:是)的情況下,接收程序P104刪除該刪除目標(biāo)克隆文件的數(shù)據(jù)(差異數(shù)據(jù)),并且此外還將引用目的地克隆源文件的引用計(jì)數(shù)C106E遞減1(S156)。接收程序P104確定克隆源文件引用計(jì)數(shù)C106E的值是否為0(S157)。在引用計(jì)數(shù)C106E的值不是0(S157:否)的情況下,接收程序P104結(jié)束處理。在克隆源文件引用計(jì)數(shù)C106E的值是0(S157:是)的情況下,接收程序P104刪除克隆源文件的文件數(shù)據(jù)和元數(shù)據(jù)(S158)。圖24是示出數(shù)據(jù)移動器程序P101的處理。這一處理是根據(jù)事件的出現(xiàn)而開始的由事件驅(qū)動的處理。數(shù)據(jù)移動器程序P101確定預(yù)先配置的指定事件中的任何事件是否已經(jīng)出現(xiàn)(S160)。在事件出現(xiàn)(S160:是)時,數(shù)據(jù)移動器程序P101確定表示經(jīng)過定義的時間的事件是否已經(jīng)出現(xiàn)(S161)。在指示經(jīng)過定義的時間的事件已經(jīng)出現(xiàn)(S161:是)的情況下,數(shù)據(jù)移動器程序P101執(zhí)行存根化處理(S162)。以下將使用圖25來進(jìn)一步具體說明存根化過程。在指示經(jīng)過定義的時間的事件尚未出現(xiàn)(S160:否)的情況下,數(shù)據(jù)移動器程序P101確定它是否為需要執(zhí)行重復(fù)處理的事件(S163)。在它是需要執(zhí)行重復(fù)處理的事件(S163:是)的情況下,數(shù)據(jù)移動器程序P101執(zhí)行重復(fù)處理(S164)。以下將使用圖26來進(jìn)一步具體說明重復(fù)過程。在它不是需要執(zhí)行重復(fù)處理的事件(S163:否)的情況下,數(shù)據(jù)移動器程序P101確定它是否為需要文件同步的事件(S165)。在它是需要文件同步的事件(S165:是)的情況下,數(shù)據(jù)移動器程序P101執(zhí)行文件同步處理(S166)。以下將使用圖27進(jìn)一步具體說明文件同步過程。在它不是需要文件同步的事件(S165:否)的情況下,數(shù)據(jù)移動器程序P101確定它是否為需要執(zhí)行召回處理的事件(S167)。在它是需要執(zhí)行召回處理的事件(S167:是)的情況下,數(shù)據(jù)移動器程序P101從存檔裝置20獲取文件數(shù)據(jù)并且向文件存儲裝置10發(fā)送這一文件數(shù)據(jù)(S168)。由于已經(jīng)在文件存儲裝置10中留下源數(shù)據(jù),所以僅需從存檔裝置20獲取文件數(shù)據(jù)。圖25是具體示出數(shù)據(jù)移動器程序P101執(zhí)行的存根化過程的流程圖。數(shù)據(jù)移動器程序P101校驗(yàn)文件存儲裝置10的文件系統(tǒng)的空閑容量RS(S170)。數(shù)據(jù)移動器程序P101確定空閑容量RS是否小于指定空閑容量閾值ThRS(S171)。在空閑容量RS等于或者大于閾值ThRS(S171:否)的情況下,數(shù)據(jù)移動器程序P101結(jié)束這一處理并且返回到圖24的處理。在空閑容量RS小于閾值ThRS(S171:是)的情況下,數(shù)據(jù)移動器程序P101按照具有最舊上次訪問日期/時間的文件起的順序選擇重復(fù)的文件直至空閑容量RS變成等于或者大于閾值ThRS(S172)。數(shù)據(jù)移動器程序P101刪除選擇的文件的數(shù)據(jù)、配置這一文件的存根化標(biāo)志為ON,并且配置這一文件的重復(fù)標(biāo)志為OFF(S173)。根據(jù)這一點(diǎn),將在步驟S172中選擇的文件轉(zhuǎn)換成存根化的文件。此外,在克隆文件被轉(zhuǎn)換成存根化的文件的情況下,數(shù)據(jù)移動器程序P101將這一克隆文件引用的克隆源文件的引用計(jì)數(shù)C106E的值遞減1(S173)。圖26是具體示出數(shù)據(jù)移動器程序P101執(zhí)行的重復(fù)過程的流程圖。數(shù)據(jù)移動器程序P101從存檔裝置20獲取重復(fù)文件存儲目的地(S180)。數(shù)據(jù)移動器程序P101在重復(fù)目標(biāo)索引節(jié)點(diǎn)管理表T10的鏈接目的地C106D中配置獲取的存儲目的地(S181)。數(shù)據(jù)移動器程序P101向接收程序P104發(fā)布讀請求并且獲取文件,該文件是重復(fù)處理的目標(biāo)(S182)。數(shù)據(jù)移動器程序P101向存檔裝置20傳送重復(fù)目標(biāo)文件(S183)。數(shù)據(jù)移動器程序P101配置重復(fù)目標(biāo)文件的重復(fù)標(biāo)志C106B為ON(S184)。圖27是示出數(shù)據(jù)移動器程序P101執(zhí)行的文件同步過程的流程圖。數(shù)據(jù)移動器程序P101向接收程序P104發(fā)布讀請求并且獲取在更新列表中記錄的文件的數(shù)據(jù)和元數(shù)據(jù)(S190)。更新列表是用于從在重復(fù)處理已經(jīng)被完成的文件之中標(biāo)識更新的并且其中差異數(shù)據(jù)在重復(fù)處理之后出現(xiàn)的文件的信息。更新列表是用于管理將被執(zhí)行文件同步處理的文件的信息。數(shù)據(jù)移動器程序P101向存檔裝置20傳送獲取的數(shù)據(jù)(S191)并且刪除更新列表的內(nèi)容(S192)。圖28是示出選擇程序P105的操作的流程圖,該選擇程序是用于執(zhí)行單實(shí)例處理的計(jì)算機(jī)程序的部分。選擇程序P105向接收程序P104發(fā)布對于文件系統(tǒng)管理的每個文件的讀請求(S200)。選擇程序P105選擇上次訪問日期/時間LT(在索引節(jié)點(diǎn)管理表T10的列C104中記錄的值)比指定訪問日期/時間閾值ThLT更舊的所有文件(S200)。選擇程序P105向單實(shí)例目標(biāo)文件T11添加選擇的文件的名稱(S200)。圖29是示出重復(fù)檢測程序P106的操作的流程圖,該重復(fù)檢測程序與選擇程序P105一起是用于執(zhí)行單實(shí)例處理的計(jì)算機(jī)程序的部分。重復(fù)檢測程序P106從單實(shí)例目標(biāo)列表T11獲取目標(biāo)文件名(S210)。重復(fù)檢測程序P106調(diào)用重復(fù)去除程序(圖30)并且執(zhí)行目標(biāo)文件的單實(shí)例化(創(chuàng)建克隆文件)(S211)。重復(fù)檢測程序P106執(zhí)行步驟S210和S211直至單實(shí)例處理已經(jīng)被應(yīng)用于在列表T11中記錄的所有文件(S212)。圖30是示出重復(fù)去除程序的操作的流程圖。重復(fù)去除程序在索引目錄(圖9)之下的子目錄中搜尋與目標(biāo)文件的大小對應(yīng)的子目錄(S220)。重復(fù)去除程序比較目標(biāo)文件與在子目錄中的克隆源文件(S221)并且確定是否有與目標(biāo)文件匹配的克隆源文件(S222)。在搜索目標(biāo)子目錄中的現(xiàn)有克隆源文件都未與目標(biāo)文件匹配(S222:否)的情況下,重復(fù)去除程序添加新克隆源文件(S223)。也就是說,重復(fù)去除程序向搜索目標(biāo)子目錄添加目標(biāo)文件作為新克隆源文件。重復(fù)去除程序在新創(chuàng)建的克隆源文件的引用計(jì)數(shù)C106E中配置“0”(S224)。重復(fù)去除程序在目標(biāo)文件引用目的地索引節(jié)點(diǎn)編號C106A中配置克隆源文件索引節(jié)點(diǎn)編號(S225)。重復(fù)去除程序刪除目標(biāo)文件的數(shù)據(jù)(S226)并且將克隆源文件引用計(jì)數(shù)C106E的值遞增1(S227)。根據(jù)以這一方式配置的示例,可以高效地使用文件存儲裝置10的存儲區(qū)域(文件系統(tǒng)區(qū)域)。出于這一原因,可以在文件存儲裝置10中存儲更多的大量文件從而增加在訪問時間的響應(yīng)性并且此外還增強(qiáng)用戶可用性。在這一示例中,由于克隆源文件不是重復(fù)處理的目標(biāo),所以作為用于執(zhí)行重復(fù)處理的前提的存根化過程也未被應(yīng)用于克隆源文件。因此有可能防止不能被用戶直接訪問的克隆源文件被轉(zhuǎn)換成存根化的文件,因?yàn)樗磥砭哂械屠妙l率。作為這一點(diǎn)的結(jié)果,有可能維持引用克隆源文件的克隆文件的響應(yīng)性能。在這一示例中,在已經(jīng)接收文件復(fù)制請求的情況下,創(chuàng)建副本文件作為克隆文件。出于這一原因,無需復(fù)制文件數(shù)據(jù)從而使文件存儲裝置10的存儲區(qū)域被高效地使用。在這一示例中,在已經(jīng)接收文件復(fù)制請求并且與復(fù)制目標(biāo)文件匹配的克隆源文件不存在的情況下,創(chuàng)建與復(fù)制目標(biāo)文件匹配的新克隆源文件,并且將復(fù)制目標(biāo)文件轉(zhuǎn)換成克隆文件。因此,可以快速地應(yīng)用單實(shí)例處理,可以縮短重復(fù)數(shù)據(jù)存在的時間,并且可以有效地使用文件存儲裝置10的存儲區(qū)域。也就是說,可以在文件復(fù)制的在按照正常周期執(zhí)行單實(shí)例處理之前的時間點(diǎn)立即去除重復(fù)數(shù)據(jù)。在這一示例中,每當(dāng)創(chuàng)建引用克隆源文件的克隆文件時,將克隆源文件的引用計(jì)數(shù)C106E的值遞增1。然后在這一示例中,每當(dāng)刪除克隆文件或者將克隆文件轉(zhuǎn)換為存根化的文件時,將引用計(jì)數(shù)C106E的值遞減1,而在引用計(jì)數(shù)C106E的值達(dá)到0時刪除克隆源文件。因此只要有引用克隆源文件的克隆文件就可以延續(xù)克隆源文件從而使得有可能維持克隆文件響應(yīng)性能。此外,由于在無引用克隆源文件的克隆文件的情況下刪除克隆源文件,所以可以有效地使用文件存儲器裝置10的存儲區(qū)域。在這一示例中,在對于克隆文件特有的數(shù)據(jù)(差異數(shù)據(jù))以及從克隆源文件數(shù)據(jù)引用的數(shù)據(jù)二者被存儲的狀態(tài)中,在存檔裝置20中存儲克隆文件。也就是說,在存檔裝置20中存儲的克隆文件存儲所有數(shù)據(jù)。因此,在文件存儲裝置10中存儲的克隆文件或者克隆源文件如果被損壞的情況下,可以從存檔裝置20向文件存儲裝置10回寫完整克隆文件。在這一示例中,在對用戶不可見的特殊目錄(索引目錄)中存儲克隆源文件。這使得有可能保護(hù)克隆源文件免于用戶錯誤并且增強(qiáng)分級存儲系統(tǒng)的可靠性。在這一示例中,在索引目錄中通過文件大小排行來設(shè)置子目錄,并且在對應(yīng)文件大小的子目錄中管理克隆源文件。因此,可以基于目標(biāo)文件的大小縮小用于克隆源文件的搜索范圍從而使與目標(biāo)文件匹配的克隆源文件能夠被高速取回。示例2將通過參照圖31至38說明第二示例。這一示例是第一示例的變化。因此,說明將聚焦于與第一實(shí)施例的差異。在這一示例中,克隆源文件也是在存檔裝置20側(cè)用于重復(fù)處理和存根化處理的目標(biāo)。在這一示例中,適當(dāng)評估克隆源文件的上次訪問日期/時間,并且防止將引用的克隆源文件轉(zhuǎn)換成存根化的文件。圖31示出使用這一示例的重復(fù)過程來傳送數(shù)據(jù)。圖31(a)示出克隆源文件和正常文件的情況。在存檔裝置20中創(chuàng)建克隆源文件和正常文件(非克隆文件)的重復(fù)件的情況下,從文件存儲裝置10向存檔裝置20傳送所有文件數(shù)據(jù)。備選地,在克隆文件的情況下,如圖31(b)中所示,從文件存儲裝置10向存檔裝置20僅傳送克隆文件特有的數(shù)據(jù)(與克隆源文件的差異數(shù)據(jù))。在存檔裝置20中,重復(fù)的克隆文件引用與在文件存儲裝置10中相同的重復(fù)的克隆源文件中的數(shù)據(jù)的部分或者全部。在第一示例中,在存儲所有數(shù)據(jù)的狀態(tài)中向存檔裝置20傳送克隆文件。因此,不僅傳送重復(fù)數(shù)據(jù),并且通信網(wǎng)絡(luò)擁塞,浪費(fèi)地使用存檔裝置20的存儲區(qū)域。備選地,在這一示例中,如圖31中所示從文件存儲裝置10向存檔裝置20僅傳送克隆文件的差異數(shù)據(jù)。這使得有可能阻止傳送重復(fù)數(shù)據(jù)并且高效地使用存檔裝置20的存儲區(qū)域。然而在這一示例中,由于克隆源文件也視為重復(fù)處理目標(biāo),所以有在克隆文件之前將克隆源文件轉(zhuǎn)換成存根化的文件的可能性。如上文描述的那樣,克隆源文件是用作引用的文件并且使用特殊目錄來管理以防止它由于錯誤而被損壞或者去除。因此,即使在引用克隆源文件的克隆文件被頻繁使用時,這仍然未影響克隆源文件的利用頻率,該克隆源文件存儲引用的數(shù)據(jù)。作為這一點(diǎn)的結(jié)果,引用的克隆源文件在進(jìn)行引用的克隆文件之前被轉(zhuǎn)換成存根化的文件。由于必須在引用存根化的克隆源文件時執(zhí)行召回過程,所以克隆文件的響應(yīng)性能減少并且用戶可用性變差。因而在這一示例中,基于克隆文件的上次訪問日期/時間計(jì)算克隆源文件的上次訪問日期/時間。以下方法例如將視為用于基于克隆文件的上次訪問日期/時間計(jì)算克隆源文件的上次訪問日期/時間的方法。第一方法是其中引用相同克隆源文件的多個克隆文件的相應(yīng)上次訪問日期/時間中的最新近上次訪問日期/時間用作克隆源文件的上次訪問日期/時間的方法。第二方法是用于計(jì)算引用相同克隆源文件的多個克隆文件的相應(yīng)上次訪問日期/時間的加權(quán)或者未加權(quán)平均值的方法。將考慮上文描述的兩種方法的相對優(yōu)點(diǎn)。在第一方法的情況下,可能有多個克隆文件中的包括最新近上次訪問日期/時間的克隆文件僅引用克隆源文件作為形式而未實(shí)際擁有與克隆源文件共享的數(shù)據(jù)的情況。根據(jù)與克隆源文件基本上無關(guān)的克隆文件的上次訪問日期/時間確定克隆源文件的上次訪問日期/時間被認(rèn)為不適當(dāng)和不期望的。此外,例如在第一方法的情況下,在僅一個克隆文件的上次訪問日期/時間是新的,并且盡管事實(shí)為多個克隆文件中的大多數(shù)克隆文件的上次訪問日期/時間是舊的、仍然僅使用這一個新的上次訪問日期/時間時,有這一上次訪問日期/時間與實(shí)際情形相距甚遠(yuǎn)的可能性。盡管事實(shí)為使用多數(shù)克隆文件難以被使用而仍然使用僅一個克隆文件這樣的事實(shí)從多數(shù)判決觀點(diǎn)來看應(yīng)當(dāng)視為克隆源文件的作用結(jié)束。因此,在這一示例中,使用第二方法,計(jì)算多個克隆文件的上次訪問日期/時間的平均值,并且配置這一平均值作為克隆源文件的上次訪問日期/時間。除非從權(quán)利要求中省略,則也在本發(fā)明的范圍中包括第一方法。圖32是示出用于計(jì)算克隆源文件的上次訪問日期/時間的方法(第二方法)的圖示。圖32示出引用克隆源文件的三個克隆文件CF1、CF2、CF3??寺∥募﨏F1的數(shù)據(jù)與克隆源文件的數(shù)據(jù)完全匹配??寺∥募﨏F2的數(shù)據(jù)與克隆源文件的數(shù)據(jù)多數(shù)匹配、但是部分不同??寺∥募﨏F3的數(shù)據(jù)與克隆源文件的數(shù)據(jù)完全不匹配。根據(jù)這一點(diǎn),基于克隆文件CF的上次訪問日期/時間LT1和克隆文件CF2的上次訪問日期/時間LT2計(jì)算克隆文件的上次訪問日期/時間的平均值A(chǔ)LT(ALT=(LT1+LT2)/2)。在克隆源文件的上次訪問日期/時間C104中配置這一平均值A(chǔ)LT。在計(jì)算平均值A(chǔ)LT時排除與克隆源文件的數(shù)據(jù)全然不同的克隆文件CF3的上次訪問日期/時間LT3以便通過消除與克隆源文件無關(guān)的克隆文件來計(jì)算與實(shí)際情形最接近地近似的上次訪問日期/時間。換而言之,消除具有完全不兼容數(shù)據(jù)的克隆文件是指根據(jù)兼容數(shù)據(jù)的程度對克隆文件加權(quán)并且計(jì)算上次訪問日期/時間的平均值。也就是說,通過將數(shù)據(jù)兼容克隆文件CF1和CF2的上次訪問日期/時間LT1和LT2乘以系數(shù)W1(例如1)來使用這些上次訪問日期/時間LT1和LT2,并且通過將數(shù)據(jù)不兼容克隆文件CF3的上次訪問日期/時間LT3乘以系數(shù)W2(例如0)來使用這一上次訪問日期/時間LT3。這使得有可能使用ALT=((LT1xW1+LT2xW2+LT3xW3)/3)來發(fā)現(xiàn)上次訪問日期/時間的平均值A(chǔ)LT。加權(quán)的系數(shù)W1可以在值等于或者大于0時被配置為除了1之外的值。加權(quán)的系數(shù)W2可以在值小于W1時被配置為至少為0的值??梢愿鶕?jù)引用克隆源文件數(shù)據(jù)的比率配置加權(quán)的系數(shù)W的值。然而必須最終調(diào)整平均值A(chǔ)LT以免與相應(yīng)克隆文件的上次訪問日期/時間LT相距甚遠(yuǎn)。圖33是示出用于獲取上次訪問日期/時間的程序的操作的流程圖。上次訪問日期/時間獲取程序(下文為LT獲取程序)由接收程序P104調(diào)用。在執(zhí)行需要上次訪問日期/時間的過程的情況下啟動LT獲取程序。首先,LT獲取程序確定目標(biāo)文件是否為克隆源文件(S300)。在目標(biāo)文件是克隆源文件(S300:是)的情況下,上次訪問日期/時間從引用克隆源文件的克隆文件獲取上次訪問日期/時間,并且如使用圖32描述的那樣來計(jì)算其平均值(S30)。LT獲取程序向作為請求源的接收程序P104返回計(jì)算的平均值作為克隆源文件的上次訪問日期/時間(S302)并且結(jié)束處理。在目標(biāo)文件不是克隆源文件(S300:否)的情況下,LT獲取程序從索引節(jié)點(diǎn)管理表T10的上次訪問日期/時間列C104獲取值(S303)。LT獲取程序向接收程序P104返回獲取的上次訪問日期/時間(S302)并且結(jié)束處理。圖34是示出接收程序P104執(zhí)行的讀請求過程和寫請求過程的流程圖。接收程序P104在從主機(jī)12接收處理請求時確定ON是否在目標(biāo)文件的存根化標(biāo)志中被配置(S310)。在存根化標(biāo)志被配置為OFF(S310:否)的情況下,接收程序P104移向在圖21中描述的處理。在存根化標(biāo)志被配置為ON(S310:是)的情況下,接收程序P104確定目標(biāo)文件是否為克隆文件(S311)。在目標(biāo)文件是克隆文件(S311:是)的情況下,接收程序P104移向圖35的處理。在目標(biāo)文件不是克隆文件(S311:否)的情況下,接收程序104移向圖36的處理。圖35是在目標(biāo)文件是克隆文件的情況下的處理。圖35中所示處理包括圖20中所示處理的步驟S101、S102、S103、S105、S107、S108和S109、但是未包括圖20的步驟S104和S106。在這一示例中,由于也可以將克隆源文件轉(zhuǎn)換成存根化的文件,所以在圖35中所示處理中,執(zhí)行新步驟S312和S313取代步驟S104,并且執(zhí)行新步驟S314和S315取代步驟S106。在讀請求(S101:讀)的情況下,接收程序P104確定目標(biāo)文件的塊地址是否有效(S102)。在塊地址無效(S102:否)的情況下,接收程序P104關(guān)于被作為目標(biāo)文件的克隆文件引用的克隆源文件的數(shù)據(jù)請求召回(S312)。接收程序P104也關(guān)于作為目標(biāo)文件的克隆文件的數(shù)據(jù)請求召回、合并克隆源文件數(shù)據(jù)與克隆文件數(shù)據(jù)并且向請求源返回結(jié)果(S313)。備選地,在寫請求(S101:寫)的情況下,接收程序P104關(guān)于作為目標(biāo)文件的克隆文件引用的克隆源文件的數(shù)據(jù)請求召回(S314)。接收程序P104也關(guān)于作為目標(biāo)文件的克隆文件的數(shù)據(jù)請求召回(S315)。隨后,接收程序P104用寫數(shù)據(jù)改寫作為目標(biāo)文件的克隆文件的數(shù)據(jù)(S107)。圖36是示出在圖34的處理中的目標(biāo)文件不是克隆文件的情況下的處理的流程圖。由于這一處理僅包括使用圖20描述的步驟S101至S109,所以將省略說明。圖37是示出用于從文件存儲裝置10讀取數(shù)據(jù)用于向存檔裝置20傳送用于重復(fù)過程或者文件同步過程的處理的流程圖。首先,接收程序P104確定目標(biāo)文件是否為克隆文件(S320)。在目標(biāo)文件不是克隆文件(S320:否)的情況下,接收程序P104根據(jù)索引節(jié)點(diǎn)管理表T10的塊地址獲取數(shù)據(jù)并且向請求源返回這一數(shù)據(jù)(S321)。接收程序P104更新目標(biāo)文件的上次訪問日期/時間C104(S322)并且結(jié)束處理。在目標(biāo)文件是克隆文件(S320:是)的情況下,接收程序P104根據(jù)索引節(jié)點(diǎn)管理表T10的塊地址獲取克隆文件特有的數(shù)據(jù)(差異數(shù)據(jù))并且向請求源返回這一數(shù)據(jù)(S323)。圖38是示出接收程序P104執(zhí)行的文件復(fù)制過程的流程圖。與使用圖22描述的處理比較,這一處理包括新步驟S330取代步驟S133。在復(fù)制目標(biāo)文件的塊地址無效(S131:否)的情況下,接收程序P104關(guān)于克隆源文件和克隆文件請求召回并且獲取文件數(shù)據(jù)和元數(shù)據(jù)(S330)。這樣配置這一示例實(shí)現(xiàn)與第一實(shí)施例相同的效果。此外,在這一示例中,克隆源文件也是重復(fù)處理的目標(biāo),并且也在存檔裝置20這一側(cè)上維持單實(shí)例關(guān)系。因此,在這一示例中,僅需向存檔裝置20傳送克隆文件的特有數(shù)據(jù)從而使得有可能減少從文件存儲裝置10向存檔裝置20的傳送大小。也有可能高效使用存檔裝置20的存儲區(qū)域。在這一示例中,基于克隆文件的上次訪問日期/時間計(jì)算克隆源文件的上次訪問日期/時間(例如發(fā)現(xiàn)平均值)。因此有可能阻止被克隆文件引用的克隆源文件在克隆文件之前被轉(zhuǎn)換成存根化的文件。這防止克隆文件響應(yīng)性能降低。示例3圖39是示出在第三示例的數(shù)據(jù)移動器程序P101的操作期間的存根化過程的操作的流程圖。數(shù)據(jù)移動器程序P101校驗(yàn)文件系統(tǒng)的空閑容量RS(S340)并且確定這一空閑容量RS是否小于指定閾值ThRS(S341)。在空閑容量RS等于或者大于閾值ThRS(S341:否)的情況下,數(shù)據(jù)移動器程序P101結(jié)束這一處理。在空閑容量RS小于閾值ThRS(S341:是)的情況下,數(shù)據(jù)移動器程序P101向接收程序P104發(fā)布讀請求,并且獲取每個文件的上次訪問日期/時間(S342)。數(shù)據(jù)移動器程序P101從尚未經(jīng)歷單實(shí)例化的文件(非克隆文件)之中選擇上次訪問日期/時間比指定閾值更舊的文件(S342)。數(shù)據(jù)移動器程序P101刪除在步驟S342中選擇的文件的數(shù)據(jù)、配置這一文件的存根化標(biāo)志C106C為ON并且此外還配置這一文件的重復(fù)標(biāo)志C106B為OFF(S343)。數(shù)據(jù)移動器程序P101重新校驗(yàn)文件系統(tǒng)的空閑容量RS,并且確定空閑容量RS是否變成等于或者大于閾值ThRS(S344)。在空閑容量RS已經(jīng)變成等于或者大于閾值ThRS(S344:是)的情況下,數(shù)據(jù)移動器程序P101結(jié)束這一處理。在即使非克隆文件已經(jīng)被轉(zhuǎn)換成存根化的文件時空閑容量RS仍然未變成等于或者大于閾值ThRS(S344:否)的情況下,數(shù)據(jù)移動器程序P101選擇單實(shí)例化的文件(克隆文件),并且將這一克隆文件轉(zhuǎn)換成存根化的文件(S345)。數(shù)據(jù)移動器程序P101從克隆文件之中選擇單實(shí)例化時段SIT比指定閾值ThSIT更短的克隆文件直至空閑容量RS變成等于或者大于閾值ThRS(S345)。數(shù)據(jù)移動器程序P101刪除選擇的文件的數(shù)據(jù)并且配置這一文件的存根化標(biāo)志為ON(S345)。數(shù)據(jù)移動器程序P101也將克隆源文件的引用計(jì)數(shù)C106E的值遞減1(S345)。這樣配置這一示例使得有可能組合這一示例與第一示例和第二示例二者,并且這一示例實(shí)現(xiàn)與第一示例或者第二示例相同的效果。在這一示例中,在執(zhí)行存根化過程時,首先將非克隆文件轉(zhuǎn)換成存根化的文件(S342、S343),并且在這不夠時,將克隆文件轉(zhuǎn)換成存根化的文件(S345)。此外,在這一示例中,還從作為克隆文件的時段(單實(shí)例化時段)在克隆文件中為最短的克隆文件開始執(zhí)行存根化過程。存根化文件候選包括以下兩個類型的文件。第一類型是在文件創(chuàng)建時間點(diǎn)經(jīng)歷單實(shí)例化的文件。也就是如下文件,該文件在文件創(chuàng)建時間的用戶的顯式指令上被轉(zhuǎn)換成克隆文件。第二類型是新近已經(jīng)根據(jù)單示例處理的循環(huán)實(shí)施而轉(zhuǎn)換成克隆文件的文件。第一類型的克隆文件從文件創(chuàng)建時間起是克隆文件并且這樣已經(jīng)有助于將存儲的容量減少相對長的時間。備選地,第二類型的克隆文件被新近地轉(zhuǎn)換成克隆文件并且很少有助于減少存儲的容量。因而在這一示例中,通過在文件存儲裝置10中盡可能多地留下第一類型的克隆文件。出于這一原因,在將非克隆文件轉(zhuǎn)換成存根化的文件之后將第二類型的克隆文件轉(zhuǎn)換成存根化的文件。本發(fā)明不限于上文描述的相應(yīng)示例。本領(lǐng)域普通技術(shù)人員將能夠進(jìn)行各種添加和改變而未脫離本發(fā)明的范圍。例如以上描述的本發(fā)明的計(jì)數(shù)特征可以通過按照需要組合這些特征而付諸實(shí)踐。也可以例如表達(dá)本發(fā)明為用于控制管理裝置的計(jì)算機(jī)程序的發(fā)明如下。表達(dá)1.一種用于使管理分級存儲系統(tǒng)的計(jì)算機(jī)作為管理裝置的計(jì)算機(jī)程序,該分級存儲系統(tǒng)用于分級地管理在第一文件管理裝置和第二文件管理裝置中的文件,該計(jì)算機(jī)程序分別在上述計(jì)算機(jī)上實(shí)現(xiàn):重復(fù)處理部分,該重復(fù)處理部分用于在上述第二文件管理裝置中創(chuàng)建在上述第一文件管理裝置中的指定文件的重復(fù)件;重復(fù)去除處理部分,該重復(fù)去除處理部分用于通過根據(jù)預(yù)先配置的第一指定條件選擇在上述第一文件管理裝置中的另一指定文件作為重復(fù)數(shù)據(jù)去除目標(biāo),并且將選擇的上述另一指定文件轉(zhuǎn)換成引用源文件來去除重復(fù)數(shù)據(jù),該引用源文件引用指定引用文件的數(shù)據(jù);以及存根化處理部分,該存根化處理部分根據(jù)預(yù)先配置的第二指定條件選擇存根化候選文件,該存根化候選文件構(gòu)成用于刪除在上述第一文件管理裝置中的上述指定文件的數(shù)據(jù)的存根化過程的目標(biāo),并且此外僅留下在上述指定文件的在上述第二文件管理裝置中創(chuàng)建的重復(fù)件中的數(shù)據(jù),并且此外根據(jù)預(yù)先配置的第三指定條件關(guān)于上述存根化候選文件執(zhí)行上述存根化過程。表達(dá)2.根據(jù)表達(dá)1的計(jì)算機(jī)程序,還包括文件訪問接收部分,該文件訪問接收部分在上述第一文件管理裝置中的復(fù)制源文件的重復(fù)件已經(jīng)被請求的情況下創(chuàng)建上述復(fù)制源文件重復(fù)件作為上述引用源文件。表達(dá)3.根據(jù)表達(dá)1或者2的計(jì)算機(jī)程序,其中上述第一文件管理裝置被配置為用戶終端可以直接訪問的文件管理裝置,并且上述第二文件管理裝置被配置為所述用戶終端不能直接訪問的文件管理裝置。表達(dá)4.根據(jù)表達(dá)1至3中的任一表達(dá)的計(jì)算機(jī)程序,其中上述第一指定條件是從在上述第一文件管理裝置中的文件之中選擇上次訪問日期/時間比預(yù)先配置的指定時間閾值更舊的文件作為上述另一指定文件。表達(dá)5.根據(jù)表達(dá)1至4中的任一表達(dá)的計(jì)算機(jī)程序,其中上述第二指定條件是在上述第一文件管理裝置以內(nèi)的空閑容量降至指定自由空間閾值以下的情況下選擇上述存根化候選。表達(dá)6.根據(jù)表達(dá)1至5中的任一表達(dá)的計(jì)算機(jī)程序,其中上述第三指定條件是按照從具有最舊上次訪問日期/時間的文件起的順序從上述存根化候選文件之中選擇文件直至上述空閑容量變成等于或者大于上述指定空閑容量閾值。表達(dá)7.根據(jù)表達(dá)1至6中的任一表達(dá)的計(jì)算機(jī)程序,其中上述引用源文件存儲上述指定引用文件的索引節(jié)點(diǎn)編號,并且上述指定引用文件作為引用目的地與上述引用源文件關(guān)聯(lián)。表達(dá)8.根據(jù)表達(dá)1至7中的任一表達(dá)的計(jì)算機(jī)程序,其中上述指定引用文件存儲表示以上述指定引用文件作為引用目的地的上述引用源文件的數(shù)目的引用數(shù)目,并且每當(dāng)選擇上述引用源文件時或者每當(dāng)為上述引用源文件實(shí)施上述存根化過程時,遞減上述引用數(shù)目,并且上述文件訪問接收部分能夠在上述引用數(shù)目達(dá)到0時刪除上述指定引用文件。表達(dá)9.根據(jù)表達(dá)1至8中的任一表達(dá)的計(jì)算機(jī)程序,其中上述指定引用文件未被選擇作為上述指定文件,引用上述指定引用文件的上述引用源文件被選擇作為上述指定文件,并且上述指定引用文件變成上述重復(fù)處理部分和上述存根化處理部分的處理目標(biāo)。表達(dá)10.根據(jù)表達(dá)9的計(jì)算機(jī)程序,其中上述被選擇作為上述指定文件的上述引用源文件在必須從上述指定引用文件的數(shù)據(jù)之中引用的所有數(shù)據(jù)被存儲的狀態(tài)中被發(fā)送到上述第二文件管理裝置。表達(dá)11.根據(jù)表達(dá)1至10中的任一表達(dá)的計(jì)算機(jī)程序,其中上述指定引用文件根據(jù)來自在上述第一文件管理裝置中設(shè)置的指定目錄之下存在的并且通過文件大小排序而預(yù)先預(yù)備的多個子目錄之中的與上述指定引用文件的大小對應(yīng)的子目錄來管理。編號列表1邊緣側(cè)2核心側(cè)文件管理裝置3管理裝置10文件存儲裝置12主機(jī)計(jì)算機(jī)13RAID系統(tǒng)20存檔裝置21RAID系統(tǒng)
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1