在分布式對象存儲生態(tài)系統(tǒng)中的去耦合的內(nèi)容以及元數(shù)據(jù)的制作方法
【專利說明】
【背景技術(shù)】
[0001]本發(fā)明總體上涉及存儲系統(tǒng),并且尤其涉及在分布式對象存儲生態(tài)系統(tǒng)中用于存儲的內(nèi)容以及元數(shù)據(jù)的去耦合。
[0002]隨著無結(jié)構(gòu)的非易變的數(shù)字內(nèi)容的增長,越來越難以管理以及定位有關(guān)的數(shù)字內(nèi)容。為了尋找有關(guān)的內(nèi)容,關(guān)于數(shù)字內(nèi)容的數(shù)據(jù)(即元數(shù)據(jù))正變得比數(shù)字內(nèi)容本身更加重要。對于傳統(tǒng)的分布式環(huán)境中的對象存儲系統(tǒng)(分布式對象存儲生態(tài)系統(tǒng)),數(shù)字內(nèi)容以及元數(shù)據(jù)被一起存儲在多個位置,以實現(xiàn)災難恢復以及本地的引用(locality ofreference) ο這是通過利用復制技術(shù)(replicat1n technology)來實現(xiàn)的,以確保復制件(拷貝)被分布至遠程站點(remote sites)。傳統(tǒng)系統(tǒng)的另一個缺點是它們對數(shù)據(jù)以及元數(shù)據(jù)應用相同的存儲規(guī)則。例如,如果對象被存儲于低延遲存儲系統(tǒng)上的N個復制件中,則所有的N個復制件均包含數(shù)據(jù)以及元數(shù)據(jù),即使在某些位置/應用中可能根本不需要數(shù)據(jù)部分。
[0003]因為企業(yè)正變得越來越地理性地分散有許多單獨的辦公室甚至數(shù)據(jù)中心,為所有的數(shù)字內(nèi)容提供本地的引用所需的復制技術(shù)變得更加復雜,并且數(shù)字內(nèi)容的存儲需要被增加了所需的本地引用的次數(shù)倍。當主要目標是僅僅為元數(shù)據(jù)具有本地的引用時,這意味著對于元數(shù)據(jù)的數(shù)字內(nèi)容被不必要地存儲在多個位置。數(shù)據(jù)復制也是非常消耗時間的過程,并且數(shù)據(jù)以及元數(shù)據(jù)的復制造成了大量的時間延遲、復制積壓(backlog)以及不必要的帶寬消耗。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的示例性實施例提供了一種智能對象,其利用用戶可定義的規(guī)則及其智能來識別在分布式對象存儲系統(tǒng)中的哪個對象應當維持非易變的數(shù)字內(nèi)容以及元數(shù)據(jù)的復制件,以及哪個對象應當僅僅包含元數(shù)據(jù),同時仍然維持在整個環(huán)境的對數(shù)字內(nèi)容的可訪問性、數(shù)據(jù)保護以及災難恢復能力。在數(shù)字內(nèi)容被僅僅托管元數(shù)據(jù)的任意對象存儲系統(tǒng)所需的情況下,它可以從其他的對象存儲系統(tǒng)取回,就好像本地復制件總是可用一樣。通過該方案,遠程位置可以托管較小的容量對象存儲系統(tǒng),該對象存儲系統(tǒng)將僅僅存儲元數(shù)據(jù),但提供對在托管在中央數(shù)據(jù)中心的較大對象存儲系統(tǒng)中存儲的數(shù)字內(nèi)容以及元數(shù)據(jù)的集合的完整的訪問。該方案用相同的數(shù)據(jù)訪問提供更好的容量利用。內(nèi)容獲取(ingest)可以經(jīng)由遠程位置或者中央數(shù)據(jù)中心來完成,但當中央數(shù)據(jù)中心已經(jīng)存儲數(shù)字內(nèi)容時,遠程位置將仍然僅僅維持內(nèi)容的僅元數(shù)據(jù)視圖(view)。值得注意的是,本發(fā)明并不限制僅元數(shù)據(jù)的配置在哪里是被允許的。它可以在為之獲取內(nèi)容的系統(tǒng)或者在可能具有向其復制的內(nèi)容的一些其它系統(tǒng)。本發(fā)明確保了在生態(tài)系統(tǒng)中的某處有至少一個復制件。
[0005]用于從對象存儲系統(tǒng)中的元數(shù)據(jù)分離數(shù)字內(nèi)容的管理生命周期的方法也可以被用在非復制環(huán)境中。元數(shù)據(jù)將保持在由對象存儲系統(tǒng)管理的存儲中的活性地駐留,但是基于存儲分層策略,數(shù)字內(nèi)容或者內(nèi)容的額外的復制件也可能被存儲在另一個聯(lián)網(wǎng)的存儲設(shè)備上。存儲在對象存儲系統(tǒng)中的或者是在不同的聯(lián)網(wǎng)的存儲系統(tǒng)上的數(shù)字內(nèi)容將仍然由包含對象的元數(shù)據(jù)的任意對象存儲系統(tǒng)通過將對象從其自身(如果駐留的話)或者從其它聯(lián)網(wǎng)的存儲設(shè)備取回來進行管理以及可訪問。
[0006]該機制創(chuàng)建智能內(nèi)容分層,其有助于對象存儲系統(tǒng)的數(shù)據(jù)保護層級、高效更新以及對象的定制元數(shù)據(jù)和系統(tǒng)的索引,同時還提供壓縮和加密移動至網(wǎng)絡(luò)存儲設(shè)備的數(shù)據(jù)的選項。
[0007]根據(jù)本發(fā)明的一個方面,一種存儲系統(tǒng)包括:控制器;存儲器;一個或者多個對象,每個對象具有內(nèi)容數(shù)據(jù)以及包括系統(tǒng)元數(shù)據(jù)的元數(shù)據(jù);以及策略,其管控一個或者多個對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù)從存儲系統(tǒng)到外部存儲的寫入。所述策略包括可配置的準則和規(guī)則,所述可配置的準則用于去耦合給定對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù),并且所述規(guī)則用于如果對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)是去耦合的,則以去耦合的方式在存儲系統(tǒng)以及外部存儲之間為內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置。所述可配置的準則基于對象的元數(shù)據(jù)的屬性。控制器能夠操作為對存儲系統(tǒng)的一個或者多個對象執(zhí)行策略,包括基于所述可配置的準則將每個對象的元數(shù)據(jù)評估為將以去耦合的方式寫入的候選對象;并且當對于去耦合對象,內(nèi)容數(shù)據(jù)和元數(shù)據(jù)為去耦合時,應用所述規(guī)則以便為去耦合對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置。
[0008]在有些實施例中,所述可配置的準則是基于對象的系統(tǒng)元數(shù)據(jù)的屬性。執(zhí)行策略包括基于所述可配置的準則將每個對象的系統(tǒng)元數(shù)據(jù)評估為將以去耦合的方式寫入的候選對象。所述控制器能夠操作為周期性地運行可調(diào)度的服務(wù),以將來自存儲系統(tǒng)的對象識別為將以去耦合的方式寫入的候選對象,并且對識別的對象執(zhí)行策略。
[0009]在具體實施例中,所述控制器能夠操作為:當策略的規(guī)則確定用于內(nèi)容數(shù)據(jù)的存儲位置是外部存儲時,驗證對象被寫入外部存儲,驗證內(nèi)容數(shù)據(jù)被存儲于外部存儲,并且當驗證了二者時,從存儲系統(tǒng)中移除所述內(nèi)容數(shù)據(jù)并且在存儲系統(tǒng)中記錄所述外部存儲是被寫入的對象的內(nèi)容數(shù)據(jù)的位置;并且當策略的規(guī)則確定用于內(nèi)容數(shù)據(jù)的存儲位置是存儲系統(tǒng)時,驗證對象將作為僅元數(shù)據(jù)被寫入外部存儲,驗證對象的內(nèi)容數(shù)據(jù)被存儲于存儲系統(tǒng),并且當驗證了二者時,將對象的元數(shù)據(jù)寫入外部存儲,并且將指針發(fā)送至外部存儲,所述指針指向?qū)ο蟮膬?nèi)容數(shù)據(jù)在存儲系統(tǒng)中的位置。
[0010]在一些實施例中,當策略的規(guī)則確定用于內(nèi)容數(shù)據(jù)的存儲位置是外部存儲時,所述控制器能夠操作為:在由策略的規(guī)則所指定的第一預設(shè)量的時間之后,從存儲系統(tǒng)移除所述內(nèi)容數(shù)據(jù),所述第一預設(shè)量的時間等于或大于零;并且在從外部存儲取回所述內(nèi)容數(shù)據(jù)之后,在存儲系統(tǒng)中將取回的內(nèi)容數(shù)據(jù)保留長達由策略的規(guī)則所指定的第二預設(shè)量的時間,所述第二預設(shè)量的時間等于或者大于零。
[0011]在具體實施例中,所述外部存儲位于另一個存儲系統(tǒng),并且所述存儲系統(tǒng)和所述另一個存儲系統(tǒng)是聯(lián)網(wǎng)在一起的多個存儲系統(tǒng)的一部分,以便在復制的環(huán)境中在存儲系統(tǒng)之間復制對象。
[0012]本發(fā)明的另一個方面提供了一種用于在存儲系統(tǒng)之間管理對象的寫入的裝置,其中每個對象具有內(nèi)容數(shù)據(jù)以及包括系統(tǒng)元數(shù)據(jù)的元數(shù)據(jù)。所述裝置包括控制器和存儲器。所述控制器能夠操作為:對源存儲系統(tǒng)的一個或多個對象執(zhí)行策略,所述策略管控一個或者多個對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù)從源存儲系統(tǒng)至目標存儲系統(tǒng)的寫入,所述策略包括可配置的準則和規(guī)則,所述可配置的準則用于去耦合給定對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù),并且所述規(guī)則用于如果對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)是去耦合的,則以去耦合的方式在源存儲系統(tǒng)和目標存儲系統(tǒng)之間為內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置,其中所述可配置的準則基于對象的元數(shù)據(jù)的屬性;其中,對一個或多個對象執(zhí)行策略包括基于所述可配置的準則將每個對象的元數(shù)據(jù)評估為將以去耦合的方式寫入的候選對象;并且當對于去耦合對象,內(nèi)容數(shù)據(jù)和元數(shù)據(jù)為去耦合的時,應用所述規(guī)則以為去耦合對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置。
[0013]本發(fā)明的另一個方面提供了一種管理對象的寫入的方法,其中每個對象具有內(nèi)容數(shù)據(jù)以及包括系統(tǒng)元數(shù)據(jù)的元數(shù)據(jù)。所述方法包括:對存儲系統(tǒng)的一個或多個對象執(zhí)行策略,所述策略管控一個或者多個對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù)從存儲系統(tǒng)到外部存儲的寫入,所述策略包括可配置的準則和規(guī)則,所述可配置的準則用于去耦合給定對象的內(nèi)容數(shù)據(jù)以及元數(shù)據(jù),并且所述規(guī)則用于如果對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)是去耦合的,則以去耦合的方式在存儲系統(tǒng)以及外部存儲之間為內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置,其中所述可配置的準則基于對象的元數(shù)據(jù)的屬性;其中,對一個或者多個對象執(zhí)行策略包括基于所述可配置的準則將每個對象的元數(shù)據(jù)評估為將以去耦合的方式寫入的候選對象;并且當對于去耦合對象,內(nèi)容數(shù)據(jù)和元數(shù)據(jù)為去耦合的時,應用所述規(guī)則以為去耦合對象的內(nèi)容數(shù)據(jù)和元數(shù)據(jù)確定存儲位置。
[0014]考慮到下面的具體實施例的【具體實施方式】,本發(fā)明的這些以及其他特征和優(yōu)點對本領(lǐng)域技術(shù)人員將變得明顯。
【附圖說明】
[0015]圖1是在其中可以應用本發(fā)明的方法以及裝置的固定內(nèi)容存儲歸檔的簡化的框圖。
[0016]圖2是獨立節(jié)點的冗余陣列的簡化表示,其中每個獨立節(jié)點都是對稱的并且支持歸檔集群應用。
[0017]圖3是在給定的節(jié)點上執(zhí)行的歸檔集群應用的各種組件的高層級表示。
[0018]圖4說明了在集群的給定的節(jié)點上的元數(shù)據(jù)管理系統(tǒng)的組件的示例。
[0019]圖5示出了說明用于使用情況(Use Case) I的分層服務(wù)處理的流程圖的示例,其中,使用情況I具有為復制拓撲中的源系統(tǒng)上的對象定義的僅元數(shù)據(jù)特征(metadata onlyfeature)。
[0020]圖6示出了說明用于外部分層以僅本地的存儲元數(shù)據(jù)以及在外部卷上存儲固定的數(shù)字內(nèi)容的分層服務(wù)處理的流程圖的示例。
[0021]圖7示出了用于實施分層服務(wù)的裝置的示例。
【具體實施方式】
[0022]在本發(fā)明接下來的詳細的說明中,請參照附圖,其中,附圖形成本公開文本的一部分,并且在附圖中所示的是說明性的而非限制性的,示例性實施例通過附圖可以實施本發(fā)明。在附圖中,在若干視圖中,相似的附圖標記描繪基本相似的組件。此外,值得注意的是,盡管【具體實施方式】部分提供了各種示例性實施例,正如下面所述的以及在圖中所說明的,本發(fā)明并不限于本文所述以及所說明的實施例,而是可以擴展至本領(lǐng)域技術(shù)人員應當知道的或者將會知道的其它實施例。在說明書中引用的“一個實施例”、“該實施例”或者“這些實施例”意味著與實施例連接的所描述的具體的特征、結(jié)構(gòu)或者特性包括在至少一個本發(fā)明的實施例中,并且這些術(shù)語在說明書中各種地方的出現(xiàn)并不必然都指相同的實施例。此外,在接下來的【具體實施方式】中,闡述了許多具體細節(jié)以提供本發(fā)明的透徹的了解。然而,對于本領(lǐng)域技術(shù)人員而言很明顯地,這些具體的細節(jié)可能并不全都是實踐本發(fā)明所必須的。在其它的情況下,已知的結(jié)構(gòu)、材料、電路、處理以及接口沒有進行詳細地描述,和/或可能以框圖形式進行了說明,從而并非不必要地使得本發(fā)明不清楚。
[0023]此外,接下來的一部分【具體實施方式】被呈現(xiàn)為在計算機內(nèi)運行的符號表示和算法的形式。這些算法的描述以及符號表示是數(shù)據(jù)處理領(lǐng)域技術(shù)人員用于向本領(lǐng)域其他技術(shù)人員最有效地傳達他們的創(chuàng)新的本質(zhì)的手段。