將放置策略分配給片段集合的制作方法
【專利摘要】可以創(chuàng)建和/或更新分布式文件系統(tǒng)的一個或多個存儲片段的多個片段集合。存儲片段可以受獨立地控制??梢詫⒎胖貌呗苑峙浣o該多個片段集合中的每個片段集合。該放置策略可以針對所分配的存儲集合來控制對象至一個或多個存儲片段的初始放置和/或重新定位。
【專利說明】
將放置策略分配給片段集合
【背景技術(shù)】
[0001]分布式文件系統(tǒng)可以指代用于基于多個存儲節(jié)點來存儲和訪問文件的系統(tǒng)。分布式文件系統(tǒng)可以基于客戶端/服務(wù)器架構(gòu)。在分布式文件系統(tǒng)中,在正確的授權(quán)權(quán)限的情況下,可以由網(wǎng)絡(luò)中的遠程客戶端經(jīng)由中間服務(wù)器訪問存儲在存儲設(shè)備處的一個或多個文件。分布式系統(tǒng)可以使用統(tǒng)一的命名約定和映射方案來跟蹤文件位于何處。
[0002]制造商、供應(yīng)商、和/或服務(wù)提供商面臨著提供改進的機制來傳輸對存儲設(shè)備的控制和/或選擇用于存儲文件的存儲設(shè)備的挑戰(zhàn)。分布式文件系統(tǒng)可以通過機器沒有使用其資源來存儲文件、提供公共的存儲資源池來使對大量的客戶端進行服務(wù)更為容易,【附圖說明】
[0003]以下的詳細描述參考附圖,其中在附圖中:
[0004]圖1示出了將放置策略分配給片段集合的設(shè)備的示例框圖;
[0005]圖2是包括將放置策略分配給片段集合的設(shè)備的分布式文件系統(tǒng)的示例框圖;
[0006]圖3是包括用于將放置策略分配給片段集合的指令的計算設(shè)備的示例框圖;
[0007]圖4是一種用于將放置策略分配給片段集合的方法的示例流程圖;以及
[0008]圖5是一種用于放置策略的動態(tài)繼承的方法的示例流程圖?!揪唧w實施方式】
[0009]在以下描述中給出了具體細節(jié)以提供對實施例的透徹理解。然而,將理解,可以在不用這些具體細節(jié)的情況下實施實施例。例如,可以以框圖示出系統(tǒng),以便不以不必要的細節(jié)混淆實施例。在其它實例中,可以在不具有不必要的細節(jié)的情況下示出公知的過程、結(jié)構(gòu)和技術(shù),以便避免混淆實施例。
[0010]分布式分段并行文件系統(tǒng)可以由大量的存儲組件(例如,存儲片段)和大量的控制此類存儲組件的目標服務(wù)器(DS)組成。分布式分段并行文件系統(tǒng)可以包括具有不同特性的存儲片段。一些存儲片段對于存儲大量的信息數(shù)據(jù)可以是非常高效的,而其它存儲片段可以更多地調(diào)整為良好地執(zhí)行隨機讀取。此外,一些存儲片段可能是較慢的,但是是能效更高的并且更適合于存儲不頻繁訪問的數(shù)據(jù)。另外,服務(wù)器和相關(guān)聯(lián)的存儲片段可能在地理上是分布式的。
[0011]示例分布式分段并行文件系統(tǒng)可以由數(shù)千個大的存儲片段組成。在任何給定的時間,各個存儲片段可以是專門受對應(yīng)的服務(wù)器控制。然而,出于負載平衡目的或由于組件故障或維護原因,對存儲片段的這種控制可以從一個服務(wù)器迀移到另一個服務(wù)器。服務(wù)器可以“直接地”連接到存儲片段(諸如經(jīng)由直接附接存儲(DAS)模型)、或通過各種互連技術(shù)(諸如經(jīng)由光纖通道(FC)、互聯(lián)網(wǎng)小型計算機系統(tǒng)接口(iSCSI)、串行附接SCSI(SAS)等)。分布式分段并行文件系統(tǒng)還可以包括客戶端節(jié)點,客戶端節(jié)點在給定的時間不控制片段并且可以用于運行應(yīng)用或通過諸如網(wǎng)絡(luò)文件系統(tǒng)(NFS)、服務(wù)器消息塊(SMB)、超文本傳輸協(xié)議 (HTTP)、文件傳輸協(xié)議(FTP)等之類的其它協(xié)議來提供對分布式分段并行文件系統(tǒng)的訪問。
[0012]分布式分段并行文件系統(tǒng)的整體效率和可靠性可以取決于用于為不同對象選擇適當?shù)拇鎯ζ蔚撵`活性和能力。在這種環(huán)境中,入口點服務(wù)器(ES)可能必須不斷地做出關(guān)于應(yīng)當為新創(chuàng)建的對象選擇哪些片段的決策。通常,這些決策是基于硬編碼的算法或基于在托管環(huán)境中“全局地”定義的策略來做出的。
[0013]然而,這些決策制定機制可能無法動態(tài)地改變策略或本地地設(shè)置策略,以使得可以針對命名空間的不同目錄或?qū)蛹壴O(shè)置不同策略。此外,這種機制可能由于策略改變和/或?qū)Υ鎯ζ蔚目刂频霓|移而要求對命名空間的子樹的中間節(jié)點的頻繁的重新驗證。此外, 這些機制可能不是響應(yīng)充足的以快速地對這種策略的偶爾改變做出反應(yīng),從而盡管有潛在的數(shù)千個參與的服務(wù)器也能傳播這種改變。
[0014]示例可以定義放置規(guī)則或策略并且將其與命名空間中的位置以及與數(shù)據(jù)起源的點動態(tài)地進行關(guān)聯(lián)。示例設(shè)備可以包括集合單元和策略單元。集合單元可以創(chuàng)建和/或更新分布式文件系統(tǒng)的一個或多個存儲片段的多個片段集合。存儲片段可以受獨立地控制。策略單元可以將放置策略分配給多個片段集合中的每個片段集合。放置策略可以針對所分配的存儲集合來控制對象至一個或多個存儲片段的初始放置和/或重新定位。
[0015]因此,示例可以提供了用于在高度可擴展的異構(gòu)環(huán)境中決定新創(chuàng)建的對象的放置的方法、機制、和/或?qū)崿F(xiàn)。示例可以解決不同類型的存儲、地理分布、故障線路的問題并且將其與不同類型的數(shù)據(jù)進行關(guān)聯(lián),以及基于分層規(guī)則來定義時間和文件屬性并描述其實現(xiàn)的約束。[〇〇16]現(xiàn)在參考附圖,圖1是將放置策略分配給片段集合的設(shè)備100的示例框圖。設(shè)備100 可以與對存儲片段進行訪問的任何類型的設(shè)備(例如服務(wù)器、計算機、網(wǎng)絡(luò)設(shè)備、無線設(shè)備、 精簡客戶端等)連接或者包括在其中。
[0017]在圖1中,設(shè)備100示出為包括集合單元110和策略單元120。集合單元110和策略單元120可以包括:例如,包括用于實現(xiàn)下文所描述的功能的電子電路的硬件設(shè)備,諸如控制邏輯和/或存儲器。此外或作為替代,集合單元110和策略單元120可以實現(xiàn)為編碼在機器可讀存儲介質(zhì)上并可由處理器執(zhí)行的一系列指令。
[0018]集合單元110可以創(chuàng)建和/或更新分布式文件系統(tǒng)的一個或多個存儲片段(未示出)的多個片段集合。存儲片段可以受獨立地控制。存儲片段210的示例可以包括單獨的固態(tài)驅(qū)動器(SSD)、硬盤驅(qū)動器(HDD)和/或任何其它類型的存儲設(shè)備。存儲片段可以位于地理上不同的區(qū)域和/或具有不同的屬性。例如,SSD存儲片段可以具有更低的延遲但還比SSD存儲片段具有較低的存儲容量。
[0019]此外,一些存儲片段可能更靠近商業(yè)機構(gòu)的第一辦公位置,而其它存儲片段可能更靠近第二位置。片段集合可以表示對存儲片段的邏輯歸組。此外,片段集合可以存儲在服務(wù)器(未示出)處或可由服務(wù)器訪問的數(shù)據(jù)庫處。策略單元120可以將放置策略分配給多個片段集合中的每個片段集合。放置策略可以針對所分配的存儲集合來控制對象(未示出)至一個或多個存儲片段的初始放置和/或重新定位。例如,每個片段集合可以具有名稱并且包括存儲片段的列表和放置策略。
[0020]例如,圖1將策略單元120示出為包括多個策略122。此外,圖1的集合單元110示出為包括兩個示例片段集合112和114。然而,示例可以包括多于或少于兩個片段集合。第一片段集合112示出為包括至少第一和第二片段并與第一策略相關(guān)聯(lián)。然而,片段集合的示例可以包括多于或少于兩個存儲片段集合。這里,第一策略可以確定第一集合的存儲片段中的哪些存儲片段用于存儲對象。
[0021]第二片段集合114示出為包括相同的第一片段和第五片段并與第二策略相關(guān)聯(lián)。 第二策略可以不同于第一策略。因此,示例可以允許存儲片段被包括在多于一個片段集合中。此外,第二片段集合114示出為包括第一片段集合112。因此,片段集合的示例可以包括作為子集的另一個片段集合。該子集可以包括存儲片段中的一個或多個存儲片段并且被分配獨立于包括該子集的片段集合的策略的策略。下文將參照圖2更詳細地說明集合單元110 和策略單兀120。[〇〇22]圖2是包括將放置策略傳播和分配給目錄節(jié)點的設(shè)備200的分布式文件系統(tǒng)250的示例框圖。設(shè)備200可以與對存儲片段進行選擇的任何類型的設(shè)備(例如服務(wù)器、計算機、網(wǎng)絡(luò)設(shè)備、無線設(shè)備、精簡客戶端等)連接或者包括在其中。[〇〇23]圖2的設(shè)備200-1可以包括圖1的設(shè)備100的功能和/或硬件。例如,設(shè)備200-1包括圖1的設(shè)備100的集合單元110和策略單元120。此外,設(shè)備200-1包括對象單元230、繼承字段 240和中間目錄節(jié)點的列表250。設(shè)備200-2和200-3可以包括與設(shè)備200-1的功能和/或硬件相似的任何功能和/或硬件。為了簡單起見,將僅詳細描述設(shè)備200-1。[〇〇24] 設(shè)備200-1的對象單元230可以包括:例如,包括用于實現(xiàn)下文所描述的功能的電子電路的硬件設(shè)備,諸如控制邏輯和/或存儲器。此外或作為替代,對象單元230可以實現(xiàn)為編碼在機器可讀存儲介質(zhì)上并可由處理器執(zhí)行的一系列指令。繼承字段240和列表250可以存儲在包含或存儲信息的任何電的、磁性的、光學(xué)的、或其它物理存儲設(shè)備中,諸如隨機存取存儲器(RAM)、閃存、SSD、HDD等。例如,繼承字段240可以存儲在RAM的存儲結(jié)構(gòu)中,諸如索引節(jié)點(inode)或任何其它類型的節(jié)點或樹結(jié)構(gòu)。[0〇25]分布式分段并行文件系統(tǒng)250可以由大量的存儲片段210-1至210-3和大量的200-1至200-3組成。設(shè)備200-1至200-3和相關(guān)聯(lián)的存儲片段210-1至210-3可以是地理上分布式的。雖然圖2中示出了三個存儲片段210,但是示例可以包括多于或少于三個存儲片段210, 諸如數(shù)千個存儲片段210。類似地,雖然圖2中示出了三個設(shè)備200,但是示例可以包括多于或小于三個設(shè)備200,諸如數(shù)百個設(shè)備200。[〇〇26] 在任何給定的時間,存儲片段210-1至210-3可以各自受對應(yīng)的設(shè)備200-1至200-3 控制。這里,第一存儲片段210-1和第三存儲片段210-3受第一設(shè)備200-1控制。此外,第二存儲片段210-2經(jīng)由互連220受第二設(shè)備200-2和第三設(shè)備200-3控制。互連220可以包括在設(shè)備200-2和200-3與第二存儲片段210-2之間提供物理鏈路的任何類型的設(shè)備,諸如網(wǎng)絡(luò)交換機。
[0027]分布式分段并行文件系統(tǒng)250可以包括命名空間。命名空間可以提供通過名稱(諸如通過多個目錄和/或文件)來訪問對象的確定性方式。術(shù)語目錄可以指代文件系統(tǒng)編目結(jié)構(gòu),其中保持了對其它計算機文件和可能的其它目錄的引用。術(shù)語對象可以指代文件和/或目錄??梢酝ㄟ^將相關(guān)的文件存儲在相同的目錄中來組織文件。
[0028]分布式分段并行文件系統(tǒng)250可以包括分級文件系統(tǒng),其中以類似樹的方式來組織文件和目錄。在該文件系統(tǒng)中,包含在另一個目錄內(nèi)的目錄可以被稱為子目錄。術(shù)語父母 (parent)和子女(child)可以用于描述子目錄與在其中對其進行編目的目錄之間的關(guān)系, 后者是父母。這種文件系統(tǒng)中不具有其自身父母的最頂層目錄可以被稱為根目錄。
[0029]如圖2中所示出的,示出了針對文件“My_file”的文件路徑,其中文件路徑是7 Dirl/Dir2/Dir/3/My_file”。7”可以是根目錄,第一目錄(Dirl)可以是根目錄的子目錄, 第二目錄(Dir2)可以是第一目錄的子目錄,并且第三目錄(Dir3)可以是第二目錄的子目錄。文件“My_file”可以位于第三目錄內(nèi)并且存儲在第二片段210-2處。此外,根目錄可以存儲在第一片段210-1處,第一目錄可以存儲在第二片段210-2處,第二目錄可以存儲在第二片段210-2處,第三目錄可以存儲在第三片段210-2處,并且文件“My_file”可以存儲在第二片段210-2處。因此,一個以上對象(諸如目錄或文件)可以存儲在單個片段210(諸如第二存儲片段210-2)處。文件路徑的每個部分存儲在存儲片段210中的一個片段處。
[0030]為了執(zhí)行操作,諸如計算機之類的客戶端設(shè)備(未示出)可以從對與操作中涉及的對象相關(guān)聯(lián)的存儲片段210-1至210-3進行控制的設(shè)備200-1至200-3請求服務(wù)。在該情況下,設(shè)備200-1至200-3可以被稱為目標服務(wù)器(DS)。此外,如果設(shè)備200-1至200-3涉及新對象的創(chuàng)建,則設(shè)備200-1至200-3中的任何設(shè)備可以被稱為入口點服務(wù)器(ES)。
[0031]所有參與的節(jié)點(諸如設(shè)備200和存儲片段210)可以通過以太網(wǎng)或其它網(wǎng)絡(luò)介質(zhì)交換消息。為了達到更高的并行程度,分級命名空間的各個元素可以通過存儲片段210的集合被廣泛地分布并且相應(yīng)地由不同的服務(wù)器200控制和/或服務(wù)。[〇〇32]例如,充當ES的第二設(shè)備200-2可以決定將新文件(未示出)放置在第二存儲片段 210-2上并且使其鏈接到第三目錄dir3,第三目錄dir3存儲在第三存儲片段200-3上。然而, 第二設(shè)備200-2可能不具有對第三存儲片段210-3的直接訪問。因此,第二設(shè)備200-2可以當在第二存儲片段210-2處創(chuàng)建新文件時充當ES并且隨后可以請求第一設(shè)備200-1的服務(wù)以將新文件鏈接到存儲在第三存儲片段210-2處的第三目錄Dir3。設(shè)備200中的任何設(shè)備可以在按照請求(諸如來自應(yīng)用、NFS、CIFS、FTP或其它服務(wù)器的請求)而行動時充當ES。
[0033]—些分布式分段并行文件系統(tǒng)操作可以參與更多對象并且相應(yīng)地甚至更大程度上取決于大量DS的正確行動和協(xié)調(diào)??刂拼鎯ζ?10的設(shè)備200可以扮演ES和/或DS的角色。例如,設(shè)備200可以是針對本地發(fā)起的分布式分段并行文件系統(tǒng)級請求的ES以及可以是針對來自其它計算機或客戶端設(shè)備的請求的DS。[〇〇34]對象單元230可以將對象存儲到片段集合中的一個片段集合的多個存儲片段210 中的至少一個存儲片段。例如,第一設(shè)備200-1的對象單元230可以負責選擇第一存儲片段 210-1和第三存儲片段210-3中的一個來存儲對象。
[0035]如上所述,設(shè)備200中的任何設(shè)備可以包括存儲在集合單元110內(nèi)的片段集合,其中片段集合均包括存儲片段210的列表。集合單元110可以基于分布式文件系統(tǒng)的存儲片段 210特性、目標服務(wù)器(DS)關(guān)聯(lián)、地理分布等來創(chuàng)建和/或更新片段集合。存儲片段210特性可以包括不同延遲、能效、針對讀取隨機數(shù)據(jù)的優(yōu)化、以及針對更快存儲大量數(shù)據(jù)的優(yōu)化。
[0036]例如,集合單元110可以創(chuàng)建列出了包括SSD的所有存儲片段210的第一片段集合、 列出了受第一設(shè)備200-1控制的所有存儲片段210的第二片段集合、列出了本地于地理區(qū)域的所有存儲片段210的第三片段集合等。示例可以包括用于確定哪些存儲片段要歸組成片段集合的眾多其它類型的因素。[〇〇37]片段集合中的每個片段集合可以與放置策略相關(guān)聯(lián)。多個片段集合中的至少兩個片段集合可以與命名空間的不同層級相關(guān)聯(lián)。例如,第一設(shè)備200-1的集合單元110可以包括與根節(jié)點相關(guān)聯(lián)的第一片段集合和與第三目錄Dir3相關(guān)聯(lián)的第二片段集合。集合單元110還可以包括自動定義的片段集合,諸如主機集合。主機集合可以包括受特定服務(wù)器或設(shè)備(例如第一設(shè)備200-1)控制的所有存儲片段。策略單元120可以將不同的放置策略分配給與命名空間的不同層級相關(guān)聯(lián)的至少兩個片段集合。命名空間可以是在文件系統(tǒng)的運行時(runtime)重新構(gòu)造的。動態(tài)可繼承屬性的值可以與文件系統(tǒng)的一個或多個實體(例如層級)相關(guān)聯(lián)。動態(tài)可繼承屬性可以與放置策略有關(guān)。
[0038]放置策略可以由一個或多個放置規(guī)則組成并且可以包括不同的規(guī)則以用于不同類型的對象。待存儲的對象的類型可以包括常規(guī)文件、目錄、文件副本、目錄副本、所有副本、所有對象等。例如,根片段集合可以與根節(jié)點相關(guān)聯(lián)并且包括多個主機集合,諸如三個設(shè)備200-1至200-3的主機集合。與根片段集合相關(guān)聯(lián)的放置策略的規(guī)則可以是默認策略,默認策略根據(jù)第一片段集合的所有存儲片段來分配對象。子目錄片段集合可以包括存儲子目錄(例如Dirl、Dir2和Dir3)的所有存儲片段。與子目錄片段集合相關(guān)聯(lián)的放置策略的規(guī)則可以指引對象存儲到與其父母目錄相同的存儲片段。
[0039]放置規(guī)則可以是足夠的靈活以適應(yīng)存儲片段210和/或設(shè)備200的數(shù)量上的潛在增長以及對存儲片段210的控制從設(shè)備200中的一個設(shè)備至設(shè)備200中的另一個設(shè)備的偶爾改變。然而放置規(guī)則還可以是足夠的通用以反映片段特性、DS關(guān)聯(lián)、地理分布等的潛在差異。此外,設(shè)備200可以允許不同放置規(guī)則的定義以用于命名空間的不同層級、子樹和/或子目錄。
[0040]放置規(guī)則可以是本質(zhì)上動態(tài)的,這是因為可以在任何時間添加新的存儲片段210。此外,可以通過不同的ES 200來引入新的放置規(guī)則。此外,放置規(guī)則可以包括對象自身的時間特性,如下文所說明的。此外,可以在任何時間設(shè)定和修改放置規(guī)則并且這種修改可以對分布式分段并行文件系統(tǒng)的行為產(chǎn)生即時的影響,如下文所說明的。如上所述,片段集合中的一個以上片段集合可以包括存儲片段210中的同一個存儲片段。此外,不同的規(guī)則可以選擇相同的存儲片段210。命名空間的文件路徑的元素可以被放置到不同的存儲片段210上并受不同的服務(wù)器200控制。
[0041]放置策略可以基于指定的存儲片段、隨機選擇、存儲片段的片段集合、存儲片段的目錄、存儲片段的目標服務(wù)器(DS)、存儲片段的存儲接口、加權(quán)、確定性算法等來控制對象至存儲片段210中的一個或多個存儲片段的初始放置。加權(quán)可以是基于自由空間、延遲和對存儲片段的訪問的數(shù)量等。確定性算法可以是基于循環(huán)(round robin)、選擇片段集合的子集。
[0042]例如,放置策略可以將所有常規(guī)文件指引到HDD存儲片段以及將所有文件副本指弓丨到SSD存儲片段,其中HDD和SSD存儲片段被包括在與該放置策略相關(guān)聯(lián)的片段集合中。在該情況下,放置策略可以允許正被修改和/或普通地訪問的文件的較低延遲。在另一個實例中,放置策略可以根據(jù)針對在與該放置策略相關(guān)聯(lián)的片段集合中所包括的存儲片段210的經(jīng)加權(quán)的循環(huán)調(diào)度來放置對象,其中加權(quán)是基于在存儲片段210中的每個存儲片段處的自由空間的量。示例可以包括用于在片段集合的存儲片段或子集之中分布對象的眾多其它類型的方法。
[0043]放置策略還可以基于對象的屬性來控制對象至一個或多個存儲片段的重新定位。屬性可以與對象的大小、所有權(quán)、對象類型、對象名稱和時間特性等有關(guān)。時間特性可以與對對象進行訪問的時間、對對象進行修改的時間、對對象的索引節(jié)點進行改變的時間有關(guān)。
[0044]例如,放置策略可以規(guī)定特定用戶所擁有的對象將從受第一設(shè)備200-1控制的存儲片段210被移動到受第二設(shè)備200-1控制的存儲片段210,例如如果該用戶正重新定位到不同的區(qū)域的話。在另一個示例中,放置策略可以規(guī)定在特定量的時間內(nèi)尚未被訪問或修改的對象將從較低延遲存儲片段210被移動到較高延遲存儲片段210。
[0045]如上所述,可以根據(jù)包括多個節(jié)點的樹結(jié)構(gòu)來組織命名空間。片段集合中的每個片段集合可以與節(jié)點中的至少一個節(jié)點相關(guān)聯(lián)。例如,在圖2中,文件路徑的每個元素可以對應(yīng)于節(jié)點,以使得可以是根節(jié)點,“My_file”可以是“Dir3”的子女節(jié)點,“Dirl”可以是“Dir2”的父母節(jié)點等。此外,示例片段集合可以與相關(guān)聯(lián),而另一個示例片段集合可以與“Dir3”和/或等相關(guān)聯(lián)。
[0046]節(jié)點中的每個節(jié)點可以與繼承字段240相關(guān)聯(lián)。繼承字段240可以是幫助檢測可繼承屬性(例如放置策略)中的變化的字段。繼承字段240中的變化可以起源于根節(jié)點上并且繼承字段240的值可以被傳播給較低節(jié)點,諸如樹中較低的對象。因此,可以檢查繼承字段240以確定在較高節(jié)點處的放置策略的至少部分是否已下降至較低節(jié)點。例如,如果與子女節(jié)點相關(guān)聯(lián)的片段集合缺少放置策略,則與子女節(jié)點相關(guān)聯(lián)的片段集合可以繼承與父母節(jié)點相關(guān)聯(lián)的片段集合的至少部分。
[0047]此外,當任何放置策略被改變時,可以遞增根的繼承字段240并且可以中斷該放置策略至較低節(jié)點的根派遣。此外,可以在所有ES處刷新根節(jié)點的副本,如下文進一步詳細說明的。繼承字段240可以用于與對象(例如文件和目錄)的較頻繁的更新分開地處理放置策略的不那么頻繁的更新。
[0048]默認情況下,文件系統(tǒng)可以應(yīng)用在文件系統(tǒng)根節(jié)點的層級處的默認片段集合。然而,有可能在片段集合的名稱與命名空間中的在特定于文件系統(tǒng)的擴展屬性中記錄該片段集合名稱的任何目錄節(jié)點之間建立關(guān)聯(lián)。這種片段集合和相關(guān)聯(lián)的放置策略可以用于在所有下降的節(jié)點處創(chuàng)建新對象期間選擇存儲片段。在片段集合的情況下,可以應(yīng)用簡單的替換繼承。在命名空間中更深記錄的片段集合可以優(yōu)先于更高層記錄的片段集合。
[0049]此外,如果與子女節(jié)點相關(guān)聯(lián)的片段集合的放置策略的至少部分和與父母節(jié)點相關(guān)聯(lián)的放置策略的至少部分相矛盾和/或比與父母節(jié)點相關(guān)聯(lián)的放置策略的至少部分更具體,則與子女節(jié)點相關(guān)聯(lián)的片段集合的放置策略的至少部分可以補充和/或優(yōu)先于與父母節(jié)點相關(guān)聯(lián)的片段集合的放置策略的至少部分。
[°°50] 例如,假定具有以下文件路徑:/ISS_HOME/store_all/archive。此外,假定該文件路徑的每個元素與單獨的節(jié)點和單獨的片段集合相關(guān)聯(lián)。與元素“ISSJTOME”相關(guān)聯(lián)的放置策略可以指引所有對象存儲到HDD存儲片段210。該放置策略還可以由在元素“Stovall”處的子女節(jié)點繼承。然而,與元素“store_al I”相關(guān)聯(lián)的放置策略可能包括與元素“ISS_HOME”的策略的至少部分相沖突的更特定的規(guī)則。
[0051]例如,與元素“Stovall”相關(guān)聯(lián)的放置策略可以指引所有目錄信息存儲到SSD存儲片段210。該放置策略還可以由在元素“archive”處的子女節(jié)點繼承。然而,與元素“archive”相關(guān)聯(lián)的放置策略可以包括對元素“Stovall”的放置策略的至少部分進行補充的另外規(guī)則。例如,元素“archive”的放置策略可以包括所有文件存儲到SATA存儲片段210的規(guī)則。
[0052]如上所述,放置策略可以是可繼承的并且可以針對節(jié)點動態(tài)地改變。例如,放置策略可能需要刷新,這是因為其可以由DS改變并且ES可能不知道這些變化。然而,將所改變的放置策略傳播給繼承所改變的放置策略的所有子女節(jié)點可能是低效的和高成本的。替代地,可以不頻繁地傳播所改變的放置策略,諸如僅在系統(tǒng)需要經(jīng)更新的放置策略時。
[0053]上文的放置策略可以在設(shè)備200和/或存儲片段210處存儲為對象的擴展屬性(例如目錄)。如下文所說明的,繼承字段240可以用于確定放置策略中的哪些放置策略已改變或?qū)⒂奢^低節(jié)點繼承。如果對于子女節(jié)點和根節(jié)點來說繼承字段240的值是不同的,則可以列出列表250。列表240可以包括從子女節(jié)點至根節(jié)點的所有節(jié)點。根節(jié)點的繼承字段240的值可以按照連續(xù)的順序以子女節(jié)點為起始被傳播給列表250的節(jié)點的繼承字段240,直到根節(jié)點的繼承字段240與列表的當前節(jié)點相匹配為止。因此,示例可以減少或防止對中間節(jié)點的頻繁重新驗證并且將策略變化快速地傳播給參與的服務(wù)器。
[0054]雖然,繼承字段240示出為與放置策略有關(guān),但是繼承字段240的示例可以與要繼承的各種其它類型的信息(例如安全約束、快照(snapshot)身份、針對病毒檢查的策略、復(fù)制規(guī)則等)有關(guān)。對諸如基于片段集合的放置和重新定位策略之類的繼承的屬性的高效擴散可能在高度分布式分段文件系統(tǒng)環(huán)境中特別有挑戰(zhàn)性的。下文在圖5中說明動態(tài)地改變和繼承放置策略的操作。
[0055]圖5是一種用于放置策略的動態(tài)繼承(諸如用于在驗證過程期間傳播動態(tài)可繼承的屬性(例如,放置策略))的方法的示例流程圖。雖然下文參照設(shè)備200來描述方法500的執(zhí)行,但是可以使用其它適當?shù)慕M件(例如設(shè)備100)來執(zhí)行方法500。例如,方法500可以由入口點服務(wù)器(ES)執(zhí)行并且用于驗證在給定的文件系統(tǒng)實體(在圖5中被稱為“my_object”)處的動態(tài)可繼承的屬性(例如,基于片段集合的放置策略)。
[0056]另外,用于執(zhí)行方法500的組件可以分散在多個設(shè)備(例如,處理設(shè)備與輸入和輸出設(shè)備相通信)之中。在某些場景中,協(xié)調(diào)行動的多個設(shè)備可以被視為用于執(zhí)行方法500的單個設(shè)備。方法500可以以存儲在諸如存儲介質(zhì)320之類的機器可讀存儲介質(zhì)上的可執(zhí)行指令的形式和/或以電子電路的形式來實現(xiàn)。
[0057]確定要刷新文件系統(tǒng)實體的動態(tài)可繼承的屬性可以是驗證過程的部分,其中在驗證過程中,驗證針對給定的文件系統(tǒng)實體的動態(tài)可繼承的屬性的值。例如,可以在沿著始于特定的文件系統(tǒng)實體的特定路徑上的所有文件系統(tǒng)實體之中執(zhí)行驗證過程。出于性能原因,提供了根據(jù)一些實施方式的技術(shù)或機制以智能地確定沿著該路徑的某些文件系統(tǒng)實體不必被重新驗證(只要滿足某些條件),如下文進一步論述的。在一個示例中,可以在驗證過程期間避免遍歷整個節(jié)點鏈(對應(yīng)于文件系統(tǒng)實體的子樹)。
[0058]在一些示例中,動態(tài)繼承的生成字段(例如,在表示文件系統(tǒng)實體的核心中(也稱為存儲器中)索引節(jié)點中的繼承字段240)可以在驗證過程期間用于確定何時可以停止對節(jié)點鏈的遍歷。繼承字段240可以由諸如設(shè)備200之類的ES保存在核心中索引節(jié)點中并且在動態(tài)可繼承的屬性(例如,放置策略)的傳播過程期間復(fù)制自索引節(jié)點的父母。每當更新動態(tài)可繼承的屬性時(諸如響應(yīng)于更新在命名空間分級的任何層級處的基于片段集合的放置策略或規(guī)則),可以在文件系統(tǒng)的根處更新繼承字段240。
[0059]可以利用對應(yīng)的動態(tài)可繼承的屬性的相應(yīng)變化(例如,針對基于片段集合的放置策略的變化)來在文件系統(tǒng)的根節(jié)點處改變(例如,單調(diào)遞增)繼承字段240??梢栽诓檎移陂g或在用于驗證動態(tài)可繼承的屬性(例如,基于片段集合的放置策略)的驗證過程期間將繼承字段240從根節(jié)點傳播給其它節(jié)點。
[0060]在框510處,設(shè)備200可以確定對象(例如文件或目錄)的本地副本和根節(jié)點的本地副本是否均被緩存。如果任一個沒有被緩存,則在框520處設(shè)備200可以緩存該對象或根節(jié)點,并且隨后繼續(xù)至框530。如果對象和根節(jié)點兩者已被緩存,則方法500可以直接從框510流動至框530。在框530處,設(shè)備200可以確定根節(jié)點和對象的繼承字段240是否相匹配。如果根節(jié)點和對象的繼承字段240的確相匹配,則方法500可以流動至框540,其中在框540處,方法500完成。
[0061 ]因此,方法500可以檢查某些條件,諸如(I)文件系統(tǒng)的根是否被緩存在ES處,(2)正驗證的給定文件系統(tǒng)實體(例如,my_object)是否被緩存,以及(3)根的繼承字段240是否與給定文件系統(tǒng)實體my_object的繼承字段240相同。如果在框510至530處檢查的所有三個條件均為真(true),則方法500可以在框540處退出。
[0062]這是因為文件系統(tǒng)實體的繼承字段240可以與根節(jié)點的繼承字段240相同,這可以推斷出文件系統(tǒng)實體的動態(tài)可繼承的屬性是最新的并且不必被刷新。一旦確定正檢查的文件系統(tǒng)實體的繼承字段240與根的繼承字段240相同就停止對動態(tài)可繼承的屬性(例如,基于片段集合的放置策略)的驗證,允許了更高效的驗證,這是因為沒有將時間和資源浪費于嘗試驗證已被刷新的動態(tài)可繼承的屬性。
[0063]否則,如果根節(jié)點和對象的繼承字段240不匹配,則方法500可以從框530流動至框550,其中在框550處,設(shè)備200可以建立從對象至根節(jié)點的節(jié)點分級列表250。設(shè)備200可以緩存該列表250中的被指示為沒有被緩存在設(shè)備200處的任何節(jié)點。只要對應(yīng)的文件系統(tǒng)實體的繼承字段240與根節(jié)點的繼承字段240不匹配,則與分級結(jié)構(gòu)中的文件系統(tǒng)實體相關(guān)聯(lián)的節(jié)點就在框550處被迭代地添加至列表250。當對應(yīng)的文件系統(tǒng)實體的繼承字段240與根節(jié)點的繼承字段240相匹配時,將節(jié)點添加至列表250可以停止。
[0064]如果根沒有被緩存或者如果my_objeCt沒有被緩存,則對應(yīng)的繼承字段240不可在設(shè)備200或ES處被本地訪問。設(shè)備200或ES可以在框550處建立從my_object到根節(jié)點的分級結(jié)構(gòu)中的所有節(jié)點的列表250。作為建立列表250的過程的部分,設(shè)備200或ES可以從對應(yīng)的DS獲取關(guān)于根節(jié)點的信息(除非這種信息已被緩存在ES處)以及從對應(yīng)的DS獲取關(guān)于my_object的信息(除非這種信息已被緩存在ES處)。此外,ES還可以獲取關(guān)于在my_object與根節(jié)點之間的任何中間文件系統(tǒng)實體的信息(除非與給定中間對象相關(guān)聯(lián)的任何這種信息已被緩存在ES處)。
[0065]隨后,在框560處,設(shè)備200可以更新與根節(jié)點不匹配的節(jié)點的放置策略和繼承字段240。該過程可以在對象處開始并且在當前節(jié)點的繼承字段240與根節(jié)點相匹配時停止。
[0066]因此,在框550處建立了列表250之后,在框560處從列表250中的第一節(jié)點向列表250中的其它節(jié)點傳播動態(tài)可繼承的屬性(例如,基于片段集合的放置策略),其中第一節(jié)點通常是根節(jié)點??梢詢H向與列表250中的節(jié)點相關(guān)聯(lián)的文件系統(tǒng)實體進行對動態(tài)可繼承的屬性的傳播,這些文件系統(tǒng)實體是具有與根節(jié)點不匹配的繼承字段240的值的文件系統(tǒng)實體。這可以幫助減少與動態(tài)可繼承的屬性的傳播相關(guān)聯(lián)的業(yè)務(wù)和資源消耗,該業(yè)務(wù)和資源消耗在大的分布式存儲系統(tǒng)中會迅速增長。
[0067]最后,在框570處,設(shè)備200可以將節(jié)點的經(jīng)更新的放置策略和/或繼承字段傳播給對存儲這些節(jié)點的本地副本的其它設(shè)備200。在向與列表250中的節(jié)點相關(guān)聯(lián)的文件系統(tǒng)實體傳播動態(tài)可繼承的屬性的值之后,方法500流動回到框540并退出。
[0068]例如,第三設(shè)備200-3可以更改與第一目錄Dirl相關(guān)聯(lián)的放置策略。結(jié)果,第三設(shè)備200-3還可以遞增與第一目錄Dirl相關(guān)聯(lián)的繼承字段240,諸如從“I”遞增至“2”。此外,第三設(shè)備200-3可以請求第一設(shè)備200-1來遞增根節(jié)點的繼承字段240,諸如從I遞增至2。命名空間的節(jié)點的剩余部分,諸如第二目錄Dir2和第三目錄Dir3以及my_file,可以保持其相應(yīng)的繼承字段240值為“I”。
[0069]由于設(shè)備200-1至200-3中的每個設(shè)備可能已緩存或存儲了命名空間的至少部分的本地副本,第一設(shè)備200-1可以向第二設(shè)備200-2發(fā)送針對根節(jié)點的無效請求并且第三設(shè)備200-3可以向第二設(shè)備200-2和第三設(shè)備200-3發(fā)送針對第一目錄Dirl的無效請求。因此,例如,第二設(shè)備200-2可以將根節(jié)點的本地副本和第一目錄和Dirl標記為“沒有被緩存”或當前的。假定,用戶隨后希望通過第二設(shè)備200-2修改my_file,第二設(shè)備200-2可以首先比較根節(jié)點和my_f i Ie的繼承字段240。初始地,第二設(shè)備200-2可以確定根節(jié)點的本地副本不可受信任,因為其“沒有被緩存”或是當前的。第二設(shè)備200-2可以隨后從第一設(shè)備200-1重新讀取“根節(jié)點”。
[0070]接著,第二設(shè)備200-2可以確定根節(jié)點和my_file的繼承字段240不匹配。例如,根節(jié)點的繼承字段240可以是2,而my_file的繼承字段240可以是I。此時,第二設(shè)備200-2可以建立從my_file分級地鏈接到根節(jié)點的節(jié)點列表250。隨后,可以更新放置策略,如果適用的話,以my_file為起始。在放置策略被認為是當前的之后,可以在第二設(shè)備200-2處更新my_file的繼承值240以匹配根節(jié)點的繼承值240??梢詫τ诘谌夸汥ir3以及隨后第二目錄Dir2執(zhí)行類似的過程。
[0071 ] 在到達第一目錄Dirl時,第一目錄Dirl和根目錄的繼承字段240可以匹配。因此,列表250中的所有節(jié)點可以關(guān)于放置策略和繼承字段240值均是最新的。此外,如果未來再次生成列表250,現(xiàn)在可能需要更新較少的節(jié)點并且因此對繼承字段240的匹配可以停止在較低節(jié)點層級。接著,第二設(shè)備200-2可以將經(jīng)更新的列表250傳播給第一設(shè)備200-1和第三設(shè)備200-3,以使得這些設(shè)備也可以更新針對列表250中的節(jié)點的放置策略和繼承字段240值。
[0072]圖3是包括用于將放置策略分配給片段集合的指令的計算設(shè)備300的示例框圖。在圖3的實施例中,計算設(shè)備300包括處理器310和機器可讀存儲介質(zhì)320。機器可讀存儲介質(zhì)320還包括用于將放置策略分配給片段集合的指令322、324和326。
[0073]計算設(shè)備300可以包括在例如微處理器、諸如存儲器控制器之類的控制器、存儲器模塊或設(shè)備、筆記本計算機、臺式計算機、一體化系統(tǒng)、服務(wù)器、網(wǎng)絡(luò)設(shè)備、無線設(shè)備、或能夠執(zhí)行指令322、324和326的任何其它類型的設(shè)備中或是其部分。在某些示例中,計算設(shè)備300可以包括諸如存儲器、控制器等之類的另外組件或連接到這些另外組件。
[0074]處理器310可以是至少一個中央處理單元(CHJ)、至少一個基于半導(dǎo)體的微處理器、至少一個圖形處理單元(GPU)、微控制器、由微代碼控制的特殊用途邏輯硬件、或適合于獲取和執(zhí)行在機器可讀存儲介質(zhì)320中所存儲的指令的其它硬件設(shè)備、或其組合。處理器310可以提取、解碼和執(zhí)行指令322、324和326以實現(xiàn)將放置策略分配給片段集合。作為對獲取和執(zhí)行指令的替代或除了獲取和執(zhí)行指令之外,處理器310可以包括至少一個集成電路(IC)、其它控制邏輯、其它電子電路、或其組合(其包括用于執(zhí)行指令322、324和326的功能的若干個電組件)。
[0075]機器可讀存儲介質(zhì)320可以是包含或存儲指令的任何電的、磁性的、光學(xué)的、或其它物理存儲設(shè)備。因此,機器可讀存儲介質(zhì)320可以是例如隨機存取存儲器(RAM)、電可擦除可編程只讀存儲器(EEPROM)、存儲驅(qū)動器、壓縮盤只讀存儲器(CD-ROM)等。因此,機器可讀存儲介質(zhì)320可以是非暫時性的。如下文詳細描述的,機器可讀存儲介質(zhì)320可以被編碼有用于將放置策略分配給片段集合的一系列可執(zhí)行指令。
[0076]此外,指令322、324和326在由處理器執(zhí)行(例如,經(jīng)由處理器的一個處理單元或多個處理單元)時可以使該處理器執(zhí)行諸如圖4的過程之類的過程。例如,形成指令322可以由處理器310執(zhí)行以從分布式文件系統(tǒng)的多個存儲片段形成多個片段集合。存儲片段受獨立地控制。分配策略指令324可以由處理器310執(zhí)行以將單獨的放置策略分配給片段集合中的每個片段集合。
[0077]分配層級指令326可以由處理器310執(zhí)行以將片段集合中的每個片段集合分配給命名空間的多個層級中的一個層級。命名空間的層級中的每個層級可以被分配給片段集合中的至少一個片段集合?;谄渭系姆胖貌呗?,對象可以被進行以下操作中的至少一種:被存儲到存儲片段中的至少一個存儲片段和從存儲片段中的至少一個存儲片段被移動。
[0078]圖4是一種用于將放置策略分配給片段集合的方法400的示例流程圖。雖然下文參照設(shè)備200來描述方法400的執(zhí)行,但是可以使用其它適當?shù)慕M件(例如設(shè)備100)來執(zhí)行方法400。另外,用于執(zhí)行方法400的組件可以分散在多個設(shè)備(例如,處理設(shè)備與輸入和輸出設(shè)備相通信)之中。在某些場景中,協(xié)調(diào)行動的多個設(shè)備可以被視為用于執(zhí)行方法400的單個設(shè)備。方法400可以以存儲在諸如存儲介質(zhì)320之類的機器可讀存儲介質(zhì)上的可執(zhí)行指令的形式和/或以電子電路的形式來實現(xiàn)。
[0079]在框410處,設(shè)備200可以將分布式文件系統(tǒng)的存儲片段210歸組成片段集合。存儲片段210可以受獨立地控制。在框410處的歸組可以基于分布式文件系統(tǒng)的片段特性、目標服務(wù)器(DS)關(guān)聯(lián)和地理分布的差異來形成片段集合。
[0080]在框420處,設(shè)備200可以將放置策略與片段集合中的每個片段集合進行關(guān)聯(lián)。在框430處,設(shè)備200可以將片段集合中的每個片段集合與命名空間的目錄的多個層級中的一個層級進行關(guān)聯(lián)。放置策略中的每個放置策略可以包括一個或多個規(guī)則,該一個或多個規(guī)則控制對去往和來自存儲片段的各個對象的放置中的至少一種。片段集合中的位于該目錄的不同層級處的至少兩個片段集合可以與至少一個不同規(guī)則相關(guān)聯(lián)。
【主權(quán)項】
1.一種設(shè)備,包括:集合單元,其用于對分布式文件系統(tǒng)的一個或多個存儲片段的多個片段集合進行創(chuàng)建 和更新中的至少一種,所述存儲片段受獨立地控制;以及策略單元,其用于將放置策略分配給所述多個片段集合中的每個片段集合,所述放置 策略用于針對所分配的存儲集合來控制對象至所述一個或多個存儲片段的初始放置和重 新定位中的至少一種。2.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述多個片段集合中的至少兩個片段集合與命名空間的不同層級相關(guān)聯(lián),并且 所述策略單元用于將不同的放置策略分配給與所述命名空間的不同層級相關(guān)聯(lián)的所 述至少兩個片段集合。3.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述放置策略包括不同的規(guī)則以用于不同類型的所述對象,所述集合單元用于基于所述分布式文件系統(tǒng)的存儲片段特性、目標服務(wù)器(DS)關(guān)聯(lián)和 地理分布中的至少一個的差異,來對所述片段集合進行創(chuàng)建或更新中的至少一種,并且 存儲片段特性包括不同延時、能效、針對讀取隨機數(shù)據(jù)的優(yōu)化、針對更快存儲大量數(shù)據(jù) 的優(yōu)化中的至少一個。4.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述放置策略用于基于指定的存儲片段、隨機選擇、所述存儲片段的片段集合、所述存 儲片段的目錄、所述存儲片段的目標服務(wù)器(DS)、所述存儲片段的存儲接口、加權(quán)和確定性 算法中的至少一個,來控制所述對象至所述一個或多個存儲片段的所述初始放置,加權(quán)是基于自由空間、延時和對所述存儲片段的訪問的數(shù)量中的至少一個,并且 所述確定性算法是基于以下各項中的至少一項:循環(huán)和選擇所述片段集合的子集。5.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述放置策略用于基于所述對象的屬性來控制所述對象至所述一個或多個存儲片段 的重新定位,所述屬性與所述對象的大小、所有權(quán)、對象類型、對象名稱和時間特性中的至少一個有 關(guān),并且所述時間特性與對所述對象進行訪問的時間、對所述對象進行修改的時間、對所述對 象的索引節(jié)點進行改變的時間中的至少一項有關(guān)。6.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述命名空間是根據(jù)包括多個節(jié)點的樹數(shù)據(jù)結(jié)構(gòu)來組織的,所述片段集合中的每個片段集合與所述節(jié)點中的至少一個節(jié)點相關(guān)聯(lián),并且 所述節(jié)點中的每個節(jié)點與繼承字段相關(guān)聯(lián),所述繼承字段用于確定在較高節(jié)點處的放 置策略的至少部分是否已下降至較低節(jié)點。7.根據(jù)權(quán)利要求5所述的設(shè)備,其中,如果與子女節(jié)點相關(guān)聯(lián)的片段集合缺少放置策略,則與所述子女節(jié)點相關(guān)聯(lián)的所述片 段集合繼承與父母節(jié)點相關(guān)聯(lián)的片段集合的放置策略的至少部分,并且如果與所述子女節(jié)點相關(guān)聯(lián)的所述片段集合的放置策略的至少部分和與所述父母節(jié) 點相關(guān)聯(lián)的放置策略的至少部分相矛盾和/或比與所述父母節(jié)點相關(guān)聯(lián)的放置策略的至少部分更具體,則與所述子女節(jié)點相關(guān)聯(lián)的所述片段集合的放置策略的至少部分補充與所述 父母節(jié)點相關(guān)聯(lián)的放置策略的至少部分和/或優(yōu)先于與所述父母節(jié)點相關(guān)聯(lián)的所述片段集 合的放置策略的至少部分。8.根據(jù)權(quán)利要求5所述的設(shè)備,其中,如果對于子女節(jié)點和所述子女節(jié)點的所述根節(jié)點來說繼承字段的值是不同的,則列表 由從所述子女節(jié)點至所述根節(jié)點構(gòu)成,并且所述根節(jié)點的繼承字段的值按照連續(xù)的順序以所述子女節(jié)點為起始被傳播給所述列 表的節(jié)點的繼承字段,直到所述根節(jié)點的繼承字段與所述列表的當前節(jié)點相匹配為止。9.根據(jù)權(quán)利要求1所述的設(shè)備,其中,多個片段集合中的至少一個片段集合包括所述存儲片段中的一個或多個存儲片段的 子集,所述子集被分配獨立于包括所述子集的所述片段集合的所述策略的策略。10.根據(jù)權(quán)利要求1所述的設(shè)備,還包括:對象單元,其用于將所述對象存儲至所述片段集合中的一個片段集合的多個存儲片段 中的至少一個中,其中,對象的類型包括常規(guī)文件、目錄、文件副本、目錄副本、所有副本、所有對象中的至少一 個。11.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述片段集合中的一個以上片段集合包括所述存儲片段中的相同存儲片段,不同規(guī)則選擇所述相同存儲片段,并且所述命名空間的文件路徑的元素被放置在不同存儲片段上并且受不同服務(wù)器控制。12.—種方法,包括:將分布式文件系統(tǒng)的存儲片段歸組成片段集合,所述存儲片段受獨立地控制;將放置策略與所述片段集合中的每個片段集合進行關(guān)聯(lián);以及將片段集合中的每個片段集合與命名空間的目錄的多個層級中的一個層級進行關(guān)聯(lián), 其中,所述放置策略中的每個放置策略包括一個或多個規(guī)則,所述一個或多個規(guī)則控制對去 往和來自所述存儲片段的各個對象的放置中的至少一種。13.根據(jù)權(quán)利要求12所述的方法,其中,所述歸組基于所述分布式文件系統(tǒng)的片段特性、目標服務(wù)器(DS)關(guān)聯(lián)和地理分布中的 至少一個的差異來形成所述片段集合,并且所述片段集合中的位于所述目錄的不同層級處的至少兩個片段集合與至少一個不同 規(guī)則相關(guān)聯(lián)。14.一種非暫時性計算機可讀存儲介質(zhì),其存儲指令,所述指令在由設(shè)備的處理器執(zhí)行 的情況下使得所述處理器進行以下操作:從分布式文件系統(tǒng)的多個存儲片段形成多個片段集合,所述存儲片段受獨立地控制;將單獨的放置策略分配給所述片段集合中的每個片段集合;以及將所述片段集合中的每個片段集合分配給命名空間的多個層級中的一個層級,其中,所述命名空間的所述層級中的每個層級被分配給所述片段集合中的至少一個片段集合。15.根據(jù)權(quán)利要求14所述的非暫時性計算機可讀存儲介質(zhì),其中,基于所述片段集合的所述放置策略,對象被進行以下操作中的至少一種:被存儲到所 述存儲片段中的至少一個存儲片段和從所述存儲片段中的至少一個存儲片段被移動,并且 所述放置策略包括不同的規(guī)則以用于不同類型的對象。
【文檔編號】G06F21/60GK105981033SQ201480075470
【公開日】2016年9月28日
【申請日】2014年2月14日
【發(fā)明人】B·朱克曼, P·S·那加拉詹
【申請人】慧與發(fā)展有限責任合伙企業(yè)