專利名稱:基于策略的存儲管理的方法、系統(tǒng)和程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及基于策略的存儲管理的方法、系統(tǒng)和程序。
背景技術(shù):
基于策略的存儲管理框架指定具有某些特征的數(shù)據(jù)如何與將存儲這樣的數(shù)據(jù)的不同的存儲空間池關(guān)聯(lián),以及在數(shù)據(jù)的整個生命周期內(nèi)如何對數(shù)據(jù)進行管理。在共同轉(zhuǎn)讓的美國專利No.5,018,060(在此全文引用該專利作為參考)中描述的一個采用現(xiàn)有技術(shù)的基于策略的存儲管理框架,描述了基于策略的存儲管理框架,該框架提供了包括數(shù)據(jù)類、存儲類和管理類的結(jié)構(gòu),用于基于數(shù)據(jù)文件的特征為數(shù)據(jù)文件或數(shù)據(jù)集選擇存儲設(shè)備。數(shù)據(jù)類指定數(shù)據(jù)文件邏輯屬性,如數(shù)據(jù)文件類型、記錄長度、邏輯數(shù)據(jù)存儲空間要求、數(shù)據(jù)的到期和保留日期等等。存儲類定義一組存儲服務(wù),如隨機訪問規(guī)范、順序訪問規(guī)范、保證的空間等等。管理類指定數(shù)據(jù)的可用性和保留管理要求,如層次存儲管理(HSM)、到期、備份頻率、備份副本的保留等等。
自動類選擇(ACS)例程接收請求以創(chuàng)建或訪問數(shù)據(jù)文件,然后基于數(shù)據(jù)文件的特征(例如,生成數(shù)據(jù)文件的應(yīng)用程序、文件名、日期、文件和/或應(yīng)用程序的所有者等等),選擇和分配適用于數(shù)據(jù)文件的數(shù)據(jù)類、存儲類和管理類。最后基于分配給數(shù)據(jù)的數(shù)據(jù)類、存儲類和管理類選擇存儲組。存儲組為數(shù)據(jù)文件提供了物理存儲空間的分配。利用所描述的采用現(xiàn)有技術(shù)的基于策略的存儲管理框架,數(shù)據(jù)文件可以是一個數(shù)據(jù)類的成員,但也可以分配給不同的存儲類和/或管理類,這就確定了數(shù)據(jù)文件將分配給哪一個存儲組。
上文所描述的基于策略的存儲管理框架主要是針對這樣的系統(tǒng)其中,諸如直接訪問存儲器(DASD)之類的存儲子系統(tǒng)直接連接到存儲控制器,并以上文所描述的方式將主機數(shù)據(jù)分配到特定的存儲組。
盡管如此,仍需要另外的基于策略的存儲管理框架,這些框架可以與諸如存儲網(wǎng)絡(luò)環(huán)境中的直接連接的存儲器和間接地連接的存儲器一起使用。
發(fā)明內(nèi)容
本發(fā)明提供了生成用于存儲數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)的方法和數(shù)據(jù)結(jié)構(gòu)。在計算機可讀的介質(zhì)中定義了多個數(shù)據(jù)結(jié)構(gòu),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出存儲資源的多個屬性和至少一個功能以存儲數(shù)據(jù)。在計算機可讀的介質(zhì)中基于數(shù)據(jù)結(jié)構(gòu)中所定義的數(shù)據(jù)特征和屬性的對應(yīng)關(guān)系定義將數(shù)據(jù)特征關(guān)聯(lián)到數(shù)據(jù)結(jié)構(gòu)的策略,其中,每一個所定義的數(shù)據(jù)結(jié)構(gòu)都可以提供確定存儲關(guān)聯(lián)數(shù)據(jù)的存儲資源的要求,其中,所定義的數(shù)據(jù)結(jié)構(gòu)用于為存儲資源提供存儲數(shù)據(jù)的要求。
本發(fā)明還提供了對要存儲的數(shù)據(jù)進行處理的方法和產(chǎn)品。應(yīng)用程序?qū)傩曰趹?yīng)用程序策略與數(shù)據(jù)關(guān)聯(lián)。對預(yù)先確定的數(shù)據(jù)結(jié)構(gòu)中的應(yīng)用程序?qū)傩灾颠M行確定,其中,數(shù)據(jù)結(jié)構(gòu)可以由數(shù)據(jù)級別元素和存儲資源接收,并提供滿足存儲數(shù)據(jù)的要求的存儲資源。
本發(fā)明還提供了用于存儲數(shù)據(jù)的方法、系統(tǒng)和產(chǎn)品。對數(shù)據(jù)的特征進行確定。處理多個數(shù)據(jù)結(jié)構(gòu)。每一個數(shù)據(jù)結(jié)構(gòu)都指出多個屬性和至少一個功能,以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的一個數(shù)據(jù)結(jié)構(gòu)。存儲資源與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián),與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的存儲資源實現(xiàn)數(shù)據(jù)結(jié)構(gòu)中所指出的屬性和功能。
所描述的實施例提供了實現(xiàn)用于將數(shù)據(jù)與存儲資源關(guān)聯(lián)的基于策略的管理框架的技術(shù)。
現(xiàn)在將參考下面的附圖,只作為示例,對本發(fā)明的優(yōu)選實施例進行描述
圖1是根據(jù)本發(fā)明的某些實施例的基于策略的存儲管理體系結(jié)構(gòu)的視圖;圖2顯示了根據(jù)本發(fā)明的某些實施例的基于策略的存儲管理體系結(jié)構(gòu)的另一個視圖;圖3顯示了根據(jù)本發(fā)明的某些實施例的基于策略的存儲管理體系結(jié)構(gòu)的再一個視圖;圖4顯示了其中根據(jù)本發(fā)明的某些實施例實現(xiàn)了本發(fā)明的某些方面的網(wǎng)絡(luò)計算環(huán)境;圖5顯示了根據(jù)本發(fā)明的某些實施例的基于策略的存儲管理器框架;圖6a和6b顯示了使用根據(jù)本發(fā)明的某些實施例的基于策略的存儲管理器框架為數(shù)據(jù)文件選擇存儲資源的邏輯;圖7顯示了根據(jù)本發(fā)明的某些實施例的容器數(shù)據(jù)結(jié)構(gòu);以及圖8顯示了可以與本發(fā)明的某些實施例一起使用的計算體系結(jié)構(gòu)。
具體實施例方式
基于策略的管理框架所描述的實施例涉及這樣的環(huán)境的綜合管理平臺,該環(huán)境包括各種各樣的關(guān)鍵應(yīng)用程序、大量的運行不同操作系統(tǒng)的服務(wù)器、具有不同能力的存儲系統(tǒng),以及將服務(wù)器與存儲系統(tǒng)互相連接的許多網(wǎng)絡(luò)元素。存儲管理處理系統(tǒng)的許多級別或?qū)哟渭?,磁盤(存儲)級別、數(shù)據(jù)級別,以及應(yīng)用程序級別。存儲管理也是多方面的例如,性能、可恢復(fù)性、容量計劃、安全性,以及安裝方面,并處理瞬時的以及永久的方面例如,I/O請求(瞬時)和數(shù)據(jù)(永久)。所描述的實施例可以基于存儲環(huán)境的層次提供并利用以下概念多級別,互相關(guān)聯(lián)的策略,以及建立這些關(guān)系的機制;允許根據(jù)管理解決方案和/或安裝的需要定義任意的存儲類、管理類和/或服務(wù)類集的容器;允許動態(tài)行為的資源管理器和策略管理器之間的更緊密的集成;提供被管理的元素的標準特征和提供從標準特征到現(xiàn)實的語義映射的連接器概念。所描述的實施例允許指定資源使用、可用性、可恢復(fù)性優(yōu)先級的業(yè)務(wù)目標的集成;指定應(yīng)該注意什么變化以及如何注意這些變化的系統(tǒng)模型;指定測量系統(tǒng)的什么內(nèi)容以及如何測量,以及何時引發(fā)“告警”的標準;以及指定與信息基礎(chǔ)結(jié)構(gòu)的其他組件(例如,應(yīng)用程序)進行可監(jiān)視的交互的服務(wù)合同。
策略是“條件-操作字節(jié)組”。條件部分指定充當(dāng)要執(zhí)行的操作部分的觸發(fā)器的事件或狀態(tài)。條件可以反映基于計時器的值(例如,午夜、星期四、“新季度的第一天”)、內(nèi)部或外部情況(例如,引發(fā)錯誤代碼/引發(fā)異常,作業(yè)成功地終止),或?qū)傩灾?例如,服務(wù)級別、大小、應(yīng)用程序名稱)。與一個或多個條件的發(fā)生關(guān)聯(lián)的操作可以涉及特定過程或功能的執(zhí)行、其他條件的引發(fā)、和/或其他屬性被設(shè)置為特定值。在此最后一個情況下,一個操作可以如此建立其他操作的觸發(fā)器。
圖1顯示了基于策略的管理如何應(yīng)用于存儲區(qū)的概念視圖。在圖1中,系統(tǒng)具有三層-存儲2、數(shù)據(jù)4和應(yīng)用程序6。存儲級別2涉及處理原始位的“存儲和檢索”的存儲系統(tǒng)的物理方面,數(shù)據(jù)級別4涉及存儲系統(tǒng)的邏輯方面,如提供數(shù)據(jù)訪問方法,應(yīng)用程序級別6涉及存儲系統(tǒng)的用戶,如中間件、應(yīng)用程序,以及業(yè)務(wù)進程,以及它們對集合級別支持的數(shù)據(jù)和存儲的要求。
每一個策略級別2、4和6都允許為該級別定義策略。任何給定級別的策略都可以用屬性10a、10b、10c和管理功能12a、12b、12c來進行定義。屬性10a、10b、10c代表被管理的環(huán)境的特性和特征(例如,磁盤的容量、應(yīng)用程序所需要的吞吐速率、對文件的最近的修改時間)。它們可以進一步分為固有的(靜態(tài))和動態(tài)的(隨時間變化的)。固有的屬性不隨時間而變化,因此,它們可以被引用,但不復(fù)位。動態(tài)屬性可以被引用并可以被復(fù)位。管理功能12a、12b、12c是對環(huán)境執(zhí)行管理(例如,創(chuàng)建邏輯磁盤,安裝文件系統(tǒng),禁止應(yīng)用程序)的基本機制。管理功能12a、12b、12c可以作為策略執(zhí)行的操作部分來調(diào)用。策略10a、10b、10c和管理功能12a、12b、12c兩者都可以使用固有屬性并可以復(fù)位動態(tài)屬性。在某些實施例中,每一個較高級別的策略都可以通過屬性和管理功能影響最近的較低級別的策略。較高級別中的屬性可以在最近的較低級別的策略中使用,較高級別中的管理功能可以激活最近的較低級別中的策略。
圖1進一步顯示了諸如服務(wù)級別協(xié)議(SLA)和服務(wù)級別目標(SLO)之類的業(yè)務(wù)/企業(yè)策略14,以及政府規(guī)定如何影響級別2、4、6,并自動或手動轉(zhuǎn)換為這里所描述的三個級別。
應(yīng)用程序策略16可以用來控制特定任務(wù)訪問或消耗計算資源或相對于其它任務(wù)給予該任務(wù)優(yōu)先權(quán)的方式。應(yīng)用程序策略16涉及應(yīng)用程序?qū)λ苫蚴褂玫臄?shù)據(jù)-以及,間接地,對數(shù)據(jù)所在的存儲空間的要求。例如,應(yīng)用程序可能對于數(shù)據(jù)訪問的速度和格式或?qū)υ诎l(fā)生故障的情況下數(shù)據(jù)的可恢復(fù)性具有特定要求。訪問的速度可能是需要獲得某一事務(wù)速率的結(jié)果,并可能在應(yīng)用程序執(zhí)行過程中潛在地改變。因此,當(dāng)訪問同一個文件時,不同的應(yīng)用程序可能需要不同的訪問速率,或者,可能需要不同類型的I/O(例如,讀取/寫入、連續(xù)/隨機)。此外,將修改的文件備份同步的過程可能在不同的應(yīng)用程序之間不同;如果不同的應(yīng)用程序具有不同的同步要求并共同擁有一個文件,這就特別嚴重。
為實現(xiàn)應(yīng)用程序策略16,當(dāng)應(yīng)用程序訪問某文件時,應(yīng)用程序?qū)傩?0c與該文件關(guān)聯(lián)。應(yīng)用程序?qū)傩?0c可以包括初始訪問延遲、持續(xù)的訪問速率、I/O速率、I/O帶寬、讀取/寫入比率、連續(xù)的/直接的訪問、集合備份/恢復(fù)標準(例如,停工時間、當(dāng)前值)。應(yīng)用程序?qū)傩?0c可以被收集到命名的服務(wù)類集中。這樣的集與應(yīng)用程序?qū)ξ募氖褂玫年P(guān)聯(lián)是應(yīng)用程序策略16的一個實例。例如,可以使用服務(wù)標準來確定數(shù)據(jù)是否可以在存儲層次結(jié)構(gòu)中上下移動。
數(shù)據(jù)策略18涉及數(shù)據(jù)其本身,而不是任何特定應(yīng)用程序?qū)?shù)據(jù)的使用。這些包括對數(shù)據(jù)的生命周期、可恢復(fù)性以及安全性的管理標準。與應(yīng)用程序策略相同,數(shù)據(jù)策略可以基于數(shù)據(jù)屬性10b。數(shù)據(jù)屬性10b包括生命周期屬性和可恢復(fù)性屬性。生命周期屬性指定數(shù)據(jù)需要被保留的時間長度以及必須保留的數(shù)據(jù)的版本數(shù)量。生命周期策略規(guī)定當(dāng)?shù)狡诤蠡虺^版本數(shù)量后應(yīng)該(或必須)采取什么操作??苫謴?fù)性屬性指出數(shù)據(jù)的備份副本的數(shù)量(和潛在的地理位置),以及備份的循環(huán)特性。可恢復(fù)性屬性用于觸發(fā)備份操作、刪除較舊的備份副本,或從備份副本恢復(fù)數(shù)據(jù)。數(shù)據(jù)屬性10b還包括定義邏輯和物理安全性策略的安全性屬性。邏輯安全性涉及訪問列表(即,“誰”可以訪問數(shù)據(jù))以及授權(quán)級別(即,可以對其執(zhí)行什么操作)。安全性屬性基于請求者的授權(quán)允許或拒絕訪問。物理安全性涉及將數(shù)據(jù)放置于在物理上是安全的設(shè)備上(例如,放在被鎖的房間)。
存儲策略20控制存儲空間的劃分和使用,企業(yè)內(nèi)的存儲的拓撲,以及存儲組件本身的管理。存儲屬性10a可以提供有關(guān)存儲設(shè)備或存儲系統(tǒng)的要求(即,作為系統(tǒng)封裝的許多存儲設(shè)備)。存儲策略20可以涉及單個存儲設(shè)備的管理,這些單個存儲設(shè)備基本上都依賴于供應(yīng)商。這些情況的示例有使用動態(tài)RAID重新配置能力、特定的“快照”實現(xiàn)方式、動態(tài)碎片整理/垃圾收集、機載緩存管理、基于性能的容量控制等等。與設(shè)備相關(guān)的存儲屬性10a包括容量、帶寬、I/O速率、連續(xù)的/直接的、可靠性/錯誤率、并發(fā)復(fù)制能力、物理位置、安全性、租用期限、成本等等。與存儲策略20關(guān)聯(lián)的操作或管理功能12a包括允許/禁止使用、排放、轉(zhuǎn)儲、啟動轉(zhuǎn)移(例如,對于復(fù)制)、層次結(jié)構(gòu)管理等等。
上文所描述的策略16、18和20是為存儲(以及駐留在存儲器上的數(shù)據(jù))的管理而設(shè)計的,并用于滿足業(yè)務(wù)目標。這些策略16、18、20可以顯式地聲明,或從反映業(yè)務(wù)實踐和指南的其他策略(即,業(yè)務(wù)策略)派生而來。如此,應(yīng)用程序策略16、數(shù)據(jù)策略18,以及存儲策略20可以從業(yè)務(wù)策略派生而來。業(yè)務(wù)策略的示例包括財務(wù)事務(wù)數(shù)據(jù)必須保留某一時間段、必須在每個月的某一天和某一時間給雇員發(fā)工資,所有財務(wù)記錄的最新副本應(yīng)存儲在場外保險柜中等等。
第一個業(yè)務(wù)策略意味著這樣的數(shù)據(jù)策略包含財務(wù)事務(wù)的任何數(shù)據(jù)文件必須從最近一次更新起具有許多年的最低保留特征。第二個業(yè)務(wù)策略意味著確定何時必須運行工資應(yīng)用程序的應(yīng)用程序策略。第三個業(yè)務(wù)策略意味著遠程復(fù)制特定數(shù)據(jù)的數(shù)據(jù)策略。
存儲管理可以涉及以下幾個方面涉及服務(wù)提供速率、熱點、延遲、資源使用等等的性能;包括數(shù)據(jù)保護以及容錯等方面的可用性;涉及訪問控制、身份驗證、審核跟蹤、物理安全性等等的安全性;涉及存儲空間、I/O帶寬、大小限制等等的空間和容量;以及包括租用、容納問題等等的安裝和物理實體。
圖2顯示了基于策略的存儲管理體系結(jié)構(gòu)的實施例,該體系結(jié)構(gòu)包括三個元素存儲策略管理器50、存儲資源管理器52,以及連接器框架54。如圖2所示,存儲策略管理器50和存儲資源管理器52使用連接器框架54與環(huán)境一起使用。命令、控件、測量、事件和反饋56通過連接器框架54在環(huán)境和管理基礎(chǔ)結(jié)構(gòu)之間流動。在環(huán)境包括基于策略的工具或組件的情況下,連接器框架54可以提供影響該工具/組件的策略的機制。
圖3是基于策略的存儲管理框架的詳細視圖。圖3中的容器是抽象的結(jié)構(gòu),在某些實施例中,可以作為具有某些關(guān)聯(lián)的特性和功能的面向?qū)ο蟮念悂韺崿F(xiàn)。添加到容器中的元素可以繼承該容器所提供的功能和特性。如此,使一個元素成為某個容器的成員將使該容器中包括的功能和特性對該元素可用。容器是邏輯屬性和關(guān)聯(lián)的功能的集合。例如,存儲容器可以包括邏輯存儲屬性和管理功能的集合??梢允褂枚鄠€物理存儲元素來支持存儲容器抽象,因此,容器的邏輯屬性代表以個體化以及集合形式存在的元素的物理屬性。屬性可以是指諸如元素的可靠性、性能、可用性,以及可安裝性之類的方面。特定容器定義包括邏輯屬性的子集。支持容器定義的所有元素提供了均質(zhì)的屬性值。在其中容器作為面向?qū)ο蟮念悂韺崿F(xiàn)的實施例中,容器可以使用類定義以面向?qū)ο蟮木幊谭绞竭M行定義。不同的容器類的數(shù)量取決于給定級別中的邏輯屬性的數(shù)量。
容器將邏輯屬性的特定的組合映射到可以用來支持屬性所暗示的服務(wù)的一組特定數(shù)據(jù)和存儲元素。元素可以包括能夠根據(jù)上下文提供某種形式的數(shù)據(jù)或存儲位置、訪問或管理功能的任何硬件或軟件產(chǎn)品或組件。容器定義了以符合服務(wù)要求的方式實際容納和管理應(yīng)用程序的許多數(shù)據(jù)/存儲軟件和硬件元素或部件/產(chǎn)品的要求。此外,容器中包括的屬性和管理功能所定義的相同服務(wù)級別可以由不同的元素或部件/產(chǎn)品集來實現(xiàn)。例如,由不同供應(yīng)商所提供的存儲控制器可以滿足容器中指定的相同服務(wù)級別。這就使得單個業(yè)務(wù)應(yīng)用程序所使用的數(shù)據(jù)和存儲基于容器策略放在一個以上的供應(yīng)商的控制器(多個容器)中,同時,可以通過應(yīng)用程序策略的單個實例對應(yīng)用程序的數(shù)據(jù)/存儲的全部進行管理。
管理功能定義了由容器實現(xiàn)的數(shù)據(jù)/存儲硬件或軟件功能。由容器定義的管理功能可以映射到由提供基礎(chǔ)元素的供應(yīng)商提供的元素功能或位于元素和連接器層之間的第三方軟件。
連接器102a、102b、102c包括能夠?qū)]有被設(shè)計或編碼成彼此連接的兩個軟件連接在一起的軟件方法。例如,連接器102a、102b、102c可以從自頂向下的業(yè)務(wù)應(yīng)用程序觀點連接存儲策略管理器106(該存儲策略管理器106提供一組指定數(shù)據(jù)和存儲QoS(服務(wù)質(zhì)量)的策略)和存儲管理產(chǎn)品和組件。
圖3顯示了元素100a、100b、100c,連接器102a、102b和102c以及容器104a、104b、104c之間的關(guān)系的更多細節(jié)。連接器102a、102b、102c是用于跨兩個不同的軟件組件進行連接的裝置,每一個連接器都有其自己的接口和語義。連接器可以具有策略級別和管理級別。策略級別代表接受或支持策略接口的軟件。策略級別支持數(shù)據(jù)和從頂端或業(yè)務(wù)應(yīng)用程序觀點指定的存儲管理的策略定義。策略級別軟件提供到管理級別連接器的單個接口,并可以以XML文檔的形式代表策略規(guī)范。
管理級別代表支持或調(diào)用特定軟件或硬件產(chǎn)品或組件的特定管理功能接口的軟件。與為容器定義的軟件和硬件一起的管理級別實際提供數(shù)據(jù)和存儲資源的管理。對數(shù)據(jù)和存儲資源的所希望的基于策略的管理是通過將策略和管理級別連接在一起獲得的。管理級別實現(xiàn)了滿足策略級別中指定的屬性的功能。供應(yīng)商可以提供管理級別組件以將它們的產(chǎn)品集成到環(huán)境中。管理級別連接器軟件使用接口來調(diào)用功能。
可以為客戶希望部署在存儲環(huán)境中的元素的獨特的組合創(chuàng)建特定的容器實例(容器內(nèi)的元素列表)??梢詷?gòu)建并部署管理級別連接器,以將每一個獨特的管理功能集連接到策略級別軟件。
存儲策略管理器(SPM),如圖2中的元素50和圖3中的106所示,提供了策略相關(guān)的基礎(chǔ)結(jié)構(gòu)。SPM包括策略管理組件、策略引擎,以及元信息倉庫。SPM可以包括諸如策略規(guī)范工具、策略決策點、策略強制點,以及策略倉庫。策略管理組件提供引用體系結(jié)構(gòu)的策略規(guī)范功能以及用于表達策略的詞匯。策略管理進一步提供轉(zhuǎn)換邏輯,以將以業(yè)務(wù)目標(例如,SLA和SLO)形式指定的策略轉(zhuǎn)換為如圖1所示的存儲、數(shù)據(jù)和應(yīng)用程序級別的策略。策略管理組件還可以提供分析功能,用于驗證策略的句法和語義方面。策略管理組件可以進一步識別和解決不同策略組之間的沖突。
SPM 50、106可以進一步包括策略引擎組件,以實現(xiàn)策略決策點和策略強制點的各個部分。一些策略決策點可以由事件驅(qū)動,這些事件包括計時器-彈出(例如,午夜、星期四、“新季度的第一天”),發(fā)生內(nèi)部或外部狀態(tài)改變(例如,引發(fā)錯誤代碼/引發(fā)異常,作業(yè)成功地終止),屬性值(例如,服務(wù)級別、大小、應(yīng)用程序名稱)改變,請求新服務(wù)啟動,或甚至在數(shù)據(jù)路徑中特定服務(wù)請求到達。策略的倉庫可以指定對事件的響應(yīng)。一旦為事件確定了相關(guān)的策略,那么,將實現(xiàn)由所確定的策略指定的操作。策略引擎通過響應(yīng)事件調(diào)用由容器所提供的管理功能來驅(qū)動策略強制。策略引擎也可能會使某些屬性值復(fù)位。如此,容器也參與策略強制。
SPM 50、106可以進一步包括元信息倉庫,該倉庫存儲策略基礎(chǔ)結(jié)構(gòu)所需要的各種信息。這包括以某種內(nèi)部形式表示的策略。倉庫還可以存儲有關(guān)應(yīng)用程序的數(shù)據(jù)資產(chǎn)(即,應(yīng)用程序所使用的文件和/或邏輯卷)的信息。
存儲資源管理器(SRM),如元素52(圖2)和108(圖3)所示,在提供存儲管理自動化功能方面補充了策略管理器。SRM 52、108提供了分析和資源部署建議,用于長期地以及短期地管理存儲資源。在此體系結(jié)構(gòu)中希望SRM有的某些功能在現(xiàn)有的存儲系統(tǒng)元素中已經(jīng)可用(或?qū)⒖捎?,而其他功能可能必須作為新組件來實現(xiàn)。SRM52、108活動可以包括“普通”和“配置改變”情況的資源計劃;區(qū)別對待的服務(wù)支持;問題識別、分析和解決;以及超載監(jiān)視和管理。
SRM 52、108進一步處理存儲系統(tǒng)的改變,這些改變可能是添加新的子系統(tǒng)或由于某些子系統(tǒng)發(fā)生故障造成。SRM 52、108可以確定存儲空間向數(shù)據(jù)的重新分配,以滿足承諾的服務(wù)目標。SRM 52、108可以識別由于系統(tǒng)隨著靜態(tài)資源管理的端口的變化而可能需要的服務(wù)目標的任何變化。
在某些實施例中,SPM 50、106提供基于業(yè)務(wù)目標自動對工作負荷進行分類或按優(yōu)先次序排序的方式,而SRM 52、108實現(xiàn)了基于類的服務(wù),當(dāng)資源受到限制時,甚至犧牲其他類而對某些類進行優(yōu)先處理。這就要求存在服務(wù)類,并且資源提供商能夠?qū)Σ煌念愖鞒龇?wù)請求。
基于策略的管理框架的實施例圖4顯示了其中實現(xiàn)了本發(fā)明的各個方面的網(wǎng)絡(luò)計算環(huán)境。多個應(yīng)用程序服務(wù)器202a...202n可以通過網(wǎng)絡(luò)206將數(shù)據(jù)傳輸?shù)骄W(wǎng)絡(luò)存儲資源204a、204b...204n。存儲服務(wù)器208a...208n包括基于策略的存儲管理器程序210a...210n,以基于數(shù)據(jù)文件的特征將應(yīng)用程序服務(wù)器202a...202n應(yīng)用程序(如數(shù)據(jù)庫應(yīng)用程序或當(dāng)前技術(shù)中已知的任何其他數(shù)據(jù)處理應(yīng)用程序)創(chuàng)建的數(shù)據(jù)文件路由到網(wǎng)絡(luò)存儲資源204a、204b...204n。圖4顯示了諸如204n之類的存儲資源可以直接連接到存儲服務(wù)器208a。應(yīng)用程序服務(wù)器202a...202n可以包括當(dāng)前技術(shù)已知的任何計算設(shè)備(例如,工作站、個人計算機、大型機、服務(wù)器、膝上型電腦、手持式計算機、電話設(shè)備、網(wǎng)絡(luò)設(shè)備等等)。存儲資源204a、204b...204n可以包括直接連接到網(wǎng)絡(luò)206或連接到另一個設(shè)備的當(dāng)前技術(shù)已知的任何存儲設(shè)備、存儲系統(tǒng)或存儲子系統(tǒng),如連接到存儲服務(wù)器208a的存儲資源204n的情況。存儲資源204a、204b...204n可以包括只是一串磁盤(JBOD)、獨立磁盤冗余陣列(RAID)、網(wǎng)絡(luò)附加存儲(NAS)、虛擬化設(shè)備、磁帶庫、光盤庫等等。網(wǎng)絡(luò)206可以包括當(dāng)前技術(shù)已知的任何網(wǎng)絡(luò)系統(tǒng),如局域網(wǎng)(LAN)、存儲區(qū)域網(wǎng)絡(luò)(SAN)、Intranet、廣域網(wǎng)(WAN)、因特網(wǎng)等等。存儲服務(wù)器208a...208n可以包括能夠管理應(yīng)用程序?qū)Υ鎯Y源訪問的任何設(shè)備,如任何服務(wù)器類機器、存儲控制器、企業(yè)服務(wù)器等等。
基于策略的存儲管理器210a...210n從應(yīng)用程序服務(wù)器202a...202n接收請求以創(chuàng)建數(shù)據(jù)文件,并基于這里所描述的基于策略的框架確定可以被選擇以存儲數(shù)據(jù)文件的一組存儲資源204a、204b...204n。基于策略的存儲管理器可以實現(xiàn)圖3所示的架構(gòu),其中,組件100a、100b、100c、102a、102b、102c、104a、104b、104c、106和108中的每一個組件都可以作為在一臺或多臺機器上執(zhí)行的一個或多個程序組件來實現(xiàn)。例如,基于策略的存儲管理器210a...210n的程序組件可以完全地在存儲服務(wù)器208a...208n上實現(xiàn),或,程序組件可以在運行相同或不同操作系統(tǒng)的并通過網(wǎng)絡(luò)206進行通信和交互的多個類型的計算設(shè)備上的分布式計算環(huán)境中實現(xiàn)。
圖5顯示了圖3所示的替代基于策略的管理器架構(gòu),可以在基于策略的存儲管理器210a...210n(圖4),以將數(shù)據(jù)文件分配到存儲資源204a、204b...204n。圖5的架構(gòu)被定義為具有三個級別,應(yīng)用程序級別250、數(shù)據(jù)級別270和存儲級別290。應(yīng)用程序級別250指定涉及存儲資源管理的業(yè)務(wù)目標。可以在應(yīng)用程序級別250指定服務(wù)級別協(xié)議目標,如總體服務(wù)的質(zhì)量或數(shù)量。數(shù)據(jù)級別270代表數(shù)據(jù)的應(yīng)用程序要求以及應(yīng)用程序如何利用數(shù)據(jù)。存儲級別290代表存儲環(huán)境的存儲、檢索和管理數(shù)據(jù)的能力。應(yīng)用程序服務(wù)器202a...202n(圖4)生成的數(shù)據(jù)文件可以在這些不同級別定義,以便將特定存儲資源分配到數(shù)據(jù)文件。
每一個級別250、270和290都可以包括屬性,即,應(yīng)用程序?qū)傩?52、數(shù)據(jù)屬性272,以及存儲屬性292。這些屬性252、272和282都可以包括代表每一個管理級別(即,在應(yīng)用程序級別、數(shù)據(jù)級別和存儲級別)的特性和特征的工業(yè)定義的屬性。應(yīng)用程序?qū)傩?52涉及與應(yīng)用程序生成或使用的數(shù)據(jù)的客戶端應(yīng)用程序所需要的要求相關(guān)的特性和特征,如應(yīng)用程序數(shù)據(jù)請求速率或I/O事務(wù)速率、初始訪問延遲、用戶響應(yīng)時間、讀取/寫入比率等等。
數(shù)據(jù)屬性272涉及與數(shù)據(jù)使用和保留要求相關(guān)的特性和特征,包括數(shù)據(jù)的性能和可用性,如初始訪問延遲、持續(xù)的訪問速率、連續(xù)的或隨機的訪問、可用性標準、生命周期管理和可恢復(fù)性。生命周期屬性數(shù)據(jù)的保留時間長度,維護的版本的數(shù)量,當(dāng)?shù)狡诤蠡虺^最大版本數(shù)量后應(yīng)該采取什么操作,如存檔、刪除等等??苫謴?fù)性屬性指出數(shù)據(jù)的備份副本的數(shù)量和位置,備份計劃等等。某些數(shù)據(jù)級別屬性272可以是動態(tài)的,即,它們隨著時間而變化,或,固有的,不變化。例如,性能要求是動態(tài)數(shù)據(jù)屬性,因為它們可以隨著時間、應(yīng)用程序使用等等而變化,而數(shù)據(jù)文件的到期策略是固有的,因為一旦為數(shù)據(jù)文件進行了配置,它們就不會變化。數(shù)據(jù)策略還可以包括安全性策略,包括邏輯和物理安全性。邏輯安全性涉及訪問列表,即,誰可以訪問數(shù)據(jù),授權(quán)級別,以及用戶可以對數(shù)據(jù)進行什么操作。數(shù)據(jù)的安全性策略可以用屬性進行定義,才能控制誰對數(shù)據(jù)具有什么訪問權(quán)限。物理安全性涉及數(shù)據(jù)存儲資源的位置,如放在被鎖的房間或有保安的房間。
存儲級別屬性292涉及與存儲能力相關(guān)的特性和特征,如容量、帶寬、I/O速率、可靠性/錯誤率、從存儲服務(wù)器208a...208n(圖4)到存儲資源204a、204b...204n的路徑的數(shù)量,物理位置和安全性,租用期限、成本、服務(wù)器文件系統(tǒng)能力和限制。存儲屬性可以基于業(yè)務(wù)原因,例如,租用到期日、環(huán)境原因,例如,物理安全性,功能需求,例如,指定的時間段內(nèi)的可靠性。
每一個級別都還可以包括管理功能254、274和294。管理功能254、274和294定義了通過其可以執(zhí)行存儲管理操作的程序機制。這些程序在運行時將適當(dāng)?shù)胤峙浯鎯臻g或?qū)?shù)據(jù)路由到將存儲數(shù)據(jù)的物理存儲資源204a、204b...204n。管理功能254、274和294可以以存儲資源204a、204b...204n的軟件或硬件來實現(xiàn),或通過連接到存儲資源的其他元素來實現(xiàn)。存儲屬性可以定義諸如存儲設(shè)備的數(shù)量、RAID級別、備份或“快照”程序的使用。垃圾收集、緩存管理等等方面。還包括管理功能,管理功能包括通過存儲層次管理數(shù)據(jù)移動、維護數(shù)據(jù)的備份副本的程序,以及在發(fā)生數(shù)據(jù)丟失或損壞的情況下恢復(fù)數(shù)據(jù)。
每一個級別還包括諸如應(yīng)用程序策略256、數(shù)據(jù)策略276,以及存儲策略296之類的策略。策略256、276和296將屬性252、272和292中的一個或多個(如前面所討論的,是預(yù)定義的,并可以根據(jù)工業(yè)標準進行定義),分別映射到單獨的應(yīng)用程序容器258a、258b...258n,數(shù)據(jù)容器278a、278b...278n,以及存儲容器298a、298b...298n。如此,應(yīng)用程序容器258a、258b...258n、數(shù)據(jù)容器278a、278b...278n,和存儲容器298a、298b...298n中的每一個都分別定義一組屬性260a、260b...260n、280a、280b...280n、300a、300b...300n,它們是應(yīng)用程序?qū)傩?52、數(shù)據(jù)屬性272,以及存儲屬性292的子集。
可以創(chuàng)建存儲管理、駐留在存儲空間中的數(shù)據(jù)的策略252、272和292,以滿足業(yè)務(wù)目標。這些策略可以從業(yè)務(wù)實踐和影響數(shù)據(jù)的使用和存儲的指南派生而來。例如,存儲策略可以從指定數(shù)據(jù)維護多長時間、支付雇員工資的時間,諸如財務(wù)事務(wù)之類的關(guān)鍵數(shù)據(jù)必須存儲到場外的頻率等業(yè)務(wù)策略派生而來。第一個示例定義了指定數(shù)據(jù)的保留特征的數(shù)據(jù)策略。第二個示例是確定必須運行工資應(yīng)用程序以生成雇員的工資的頻率的應(yīng)用程序策略。第三個示例是遠程復(fù)制特定數(shù)據(jù)的數(shù)據(jù)策略。如此,屬性可以是指諸如存儲元素的可靠性、性能、可用性,以及可安裝性之類的方面和要求。
在某些實施例中,本發(fā)明的容器可以作為面向?qū)ο蟮念悂韺崿F(xiàn)。例如,容器可以作為以邏輯屬性作為靜態(tài)變量的Java類來實現(xiàn)。管理功能可以作為調(diào)用實際管理功能的類方法來實現(xiàn)。
策略256、276和296還為應(yīng)用程序容器258a、258b...258n、278a、278b...278n,以及存儲容器298a、298b...298n中的每一個定義一組管理功能262a、262b...262n、282a、282b...282n、302a302b...302n,它們是不同級別都可用的管理功能254、274和294的子集。由于每一個容器都定義一組屬性,為該容器定義的管理功能定義了連接,可以調(diào)用這些連接以實現(xiàn)將滿足為該容器定義的屬性/要求的存儲環(huán)境和操作。例如,如果一個數(shù)據(jù)容器258a、258b...258n定義了指定在某一時間段之后將文件存檔的數(shù)據(jù)屬性260a、260b...260n,那么,為該容器定義的管理功能262a、262b...262n將包括程序調(diào)用,以按照該容器的屬性的說明執(zhí)行文件的存檔。
容器結(jié)構(gòu)將邏輯屬性的特定的組合映射到一組特定數(shù)據(jù)和存儲元素,其中,元素是提供某種形式的數(shù)據(jù)或存儲位置、訪問或管理功能的任何硬件或軟件產(chǎn)品或組件。存儲資源204a、204b...204n包括一個或多個這樣的元素。例如,一個容器可以定義特定的可用性級別、性能范圍以及安全性級別。為容器定義的管理功能可以執(zhí)行與邏輯磁盤的創(chuàng)建、遷移、和擴展以及復(fù)制服務(wù)相關(guān)的操作。容器可以用匹配為該容器定義的屬性的特定存儲硬件和軟件來實現(xiàn)。
圖5的架構(gòu)還提供了策略管理器,如,應(yīng)用程序策略管理器264、數(shù)據(jù)策略管理器284,并存儲系統(tǒng)策略管理器304。策略管理器264、284、304分別利用策略256、276和296中指定的映射將屬性和管理功能與容器關(guān)聯(lián)。策略管理器264、284和304進一步將在前一級別所確定的容器與當(dāng)前級別的容器關(guān)聯(lián)。例如,應(yīng)用程序策略管理器264將數(shù)據(jù)特征與一個應(yīng)用程序容器258a、258b...258n關(guān)聯(lián)。數(shù)據(jù)策略管理器284將接收所選擇的應(yīng)用程序容器258a、258b...258n(它們已經(jīng)定義了屬性和管理功能),并將所選擇的應(yīng)用程序容器258a、258b...258n和任何數(shù)據(jù)特征與一個或多個數(shù)據(jù)容器278a、278b...278n關(guān)聯(lián)。同樣,存儲系統(tǒng)策略管理器304將在前一級別所選擇的數(shù)據(jù)容器278a、278b...278n和任何數(shù)據(jù)特征與一個存儲容器298a、298b...298n。在為數(shù)據(jù)文件確定存儲容器298a、298b...298n之后,存儲系統(tǒng)策略管理器304將所選擇的存儲容器298a、298b...298n關(guān)聯(lián)到存儲資源204a、204b...204n其中,其中,每一個存儲資源204a、204b...204n都包括存儲硬件和軟件的組合,以實現(xiàn)能夠滿足存儲容器298a、298b...298n中定義的邏輯存儲300a、300b...300n屬性和管理功能302a、302b...302n的存儲空間。
如此,每一個級別的策略管理器264、284和304都將給定級別的屬性/要求映射到下一個級別可讀的預(yù)先確定的容器格式。例如,數(shù)據(jù)策略管理器284將為應(yīng)用程序容器258a、258b...258n指定的應(yīng)用程序?qū)傩?60a、260b...260n定義的能力與數(shù)據(jù)容器278a、278b...278n關(guān)聯(lián),數(shù)據(jù)容器278a、278b...278n提供能夠?qū)崿F(xiàn)關(guān)聯(lián)的應(yīng)用程序容器258a、258b...258n中的應(yīng)用程序?qū)傩?60a、260b...260n和為數(shù)據(jù)容器278a、278b...278n定義的數(shù)據(jù)屬性280a、280b...280n指定的要求的管理功能282a、282b...282n。同樣,存儲策略管理器304將為數(shù)據(jù)容器278a、278b...278n指定的數(shù)據(jù)屬性280a、280b...280n定義的能力與存儲容器298a、298b...298n關(guān)聯(lián),存儲容器298a、298b...298n提供能夠?qū)崿F(xiàn)關(guān)聯(lián)的數(shù)據(jù)容器278a、278b...278n中的數(shù)據(jù)屬性280a、280b...280n和為存儲容器298a、298b...298n定義的任何存儲屬性300a、300b...300n指定的要求的管理功能302a、302b...302n。當(dāng)映射到當(dāng)前級別的容器時除了考慮前一級別的容器屬性外,策略管理器264、284和304可以考慮也可以不考慮數(shù)據(jù)文件的其他特征,和/或與所確定的特征關(guān)聯(lián)的當(dāng)前級別的屬性,以將容器與當(dāng)前級別的容器或資源關(guān)聯(lián)。
存儲策略管理器304將由存儲容器298a、298b...298n中的存儲屬性300a、300b...300n所定義的能力關(guān)聯(lián)到能夠?qū)崿F(xiàn)由存儲屬性所定義的要求的特定存儲資源204a、204b...204n。在某些實施例中,資源204a、204b...204n可以包括來自存儲供應(yīng)商的存儲系統(tǒng)。存儲供應(yīng)商可以包括提供特定硬件設(shè)備和使設(shè)備工作的軟件的硬件制造商。此外,存儲供應(yīng)商還可以包括系統(tǒng)集成商,它們將來自不同制造商和供應(yīng)商的存儲系統(tǒng)和軟件程序的集合集成,以提供開放式系統(tǒng)存儲系統(tǒng),包括層次存儲管理軟件、備份應(yīng)用程序、存檔程序等等。
每一個存儲資源204a、204b...204n的存儲供應(yīng)商將分別指定存儲屬性306a、306b...306n,這些存儲屬性定義它們提供的存儲資源204a、204b...204n的功能。存儲系統(tǒng)策略管理器304將存儲容器298a、298b...298n映射到存儲資源204a、204b...204n,這些存儲資源的供應(yīng)商定義的存儲屬性306a、306b...306n能夠滿足存儲容器298a、298b...298n所要求的邏輯存儲屬性300a、300b...300n。如此,存儲供應(yīng)商指定適用于它們的存儲資源204a、204b...204n的邏輯存儲屬性306a、306b...306n,可以包括根據(jù)工業(yè)標準定義的存儲屬性,如存儲屬性292。存儲系統(tǒng)策略管理器304將查詢由存儲供應(yīng)商定義的存儲屬性306a、306b...306n,以選擇可以滿足存儲容器298a、298b...298n中指定的屬性/要求300a、306b...300n的存儲資源204a、204b...204n?;蛘?,供應(yīng)商存儲屬性306a、306b...306n可以不同于為容器298a、298b...298n定義的存儲屬性300a、306b...300n,在這樣的實施例中,存儲系統(tǒng)策略管理器304會將供應(yīng)商存儲屬性306a、306b...306n映射到存儲級別290中使用的屬性292。如此,任何存儲供應(yīng)商存儲系統(tǒng)都可以集成到存儲環(huán)境中,因為基于策略的存儲管理器210a、210b...210n(圖4)將能基于存儲供應(yīng)商為存儲指定的存儲屬性利用數(shù)據(jù)文件的存儲系統(tǒng)。
此外,應(yīng)用程序供應(yīng)商可以為它們的應(yīng)用程序開發(fā)和分發(fā)應(yīng)用程序策略256和應(yīng)用程序策略管理器264,以將應(yīng)用程序?qū)傩杂成涞教囟ǖ膽?yīng)用程序容器,然后,這些特定的應(yīng)用程序容器可以在另一個級別使用,以提供進一步的映射。開發(fā)應(yīng)用程序在其上面運行的中間件的中間件供應(yīng)商可以開發(fā)和分發(fā)數(shù)據(jù)策略276和數(shù)據(jù)策略管理器284,以將應(yīng)用程序?qū)傩院腿萜饕约捌渌麛?shù)據(jù)特征映射到數(shù)據(jù)容器278a、278b...278n,這些數(shù)據(jù)容器可以傳遞到到存儲系統(tǒng)策略管理器304。如此,不同的供應(yīng)商和各方可以單獨地提供每一個級別的組件,這些組件將用于分類和定義數(shù)據(jù),以最終選擇滿足使用數(shù)據(jù)的每一個組件所指定的屬性/要求的存儲資源,從應(yīng)用程序,到中間件到存儲。中間件包括在操作系統(tǒng)和應(yīng)用程序之間進行連接的程序組件,并可以用來通過提供應(yīng)用程序和操作系統(tǒng)之間的接口來允許應(yīng)用程序在不同的操作系統(tǒng)上運行?;蛘撸瑪?shù)據(jù)級別可以由應(yīng)用程序或某些其他非中間件組件進行定義。
基于策略的存儲管理器210a...210n(圖4)可以提供圖形用戶界面(GUI)工具,以允許系統(tǒng)管理員定義策略256、276和296(圖5),以將屬性252、272和292和管理功能254、274和294分別與特定的應(yīng)用程序容器258a、258b...258n、數(shù)據(jù)容器278a、278b...278n和存儲容器298a、298b...298n關(guān)聯(lián)。此GUI工具還將允許系統(tǒng)管理員定義應(yīng)用程序策略256,以將應(yīng)用程序容器和某些數(shù)據(jù)特征(它們可以映射到數(shù)據(jù)屬性)與存儲容器關(guān)聯(lián);定義數(shù)據(jù)策略284,以將數(shù)據(jù)容器和某些數(shù)據(jù)特征(它們可以映射到存儲屬性)與存儲容器關(guān)聯(lián);并基于存儲供應(yīng)商為存儲資源提供的屬性定義存儲策略304,以將存儲容器298a、298b...298n和某些數(shù)據(jù)特征與存儲資源204a、204b...204n關(guān)聯(lián)?;蛘?,存儲系統(tǒng)策略管理器304可以包括這樣的程序,該程序自動選擇具有存儲供應(yīng)商定義的特征/屬性的能夠滿足為存儲容器298a、298b...298n定義的存儲屬性300a、300b...300n的存儲資源204a、204b...204n。存儲系統(tǒng)策略管理器296可以將每一個存儲容器298a、298b...298n映射到一個或多個存儲資源204a、204b...204n,如果存儲供應(yīng)商為多個存儲資源204a、204b...204n定義的屬性能夠滿足存儲容器298a、298b...298n的存儲屬性300a、300b...300n以及任何進一步考慮的數(shù)據(jù)特征。
使用基于策略的存儲管理器210a...210n(圖4)的GUI工具的管理員可以配置圖5所示的架構(gòu),或架構(gòu)的特定級別,也可以預(yù)先配置架構(gòu)。當(dāng)判斷如何將從客戶端應(yīng)用程序接收到的數(shù)據(jù)文件路由到存儲資源204a、204b...204n時,架構(gòu)可以由基于策略的存儲管理器210a...210n執(zhí)行。圖5所示的架構(gòu)可以以數(shù)據(jù)庫系統(tǒng)、以面向?qū)ο蟮木幊滔到y(tǒng)中定義的數(shù)據(jù)結(jié)構(gòu)和功能,以可擴展標記語言(XML)等等來實現(xiàn)。例如,每一個容器都可以被定義為XML元素,為容器定義的屬性和管理功能可以包括容器元素的XML屬性。此外,圖5所示的架構(gòu)可以在分布式管理任務(wù)組(DMTF)一般信息模型(CIM)內(nèi)實現(xiàn),該模型使用均勻的面向?qū)ο蟮哪P托问?,該形式允許跨多個組織有面向?qū)ο蟮募軜?gòu)。
此外,不同級別250、270和290的組件可以在不同的機器上運行。例如,存儲級別290組件可以在存儲服務(wù)器208a...208n上運行,應(yīng)用程序級別250和數(shù)據(jù)級別270可以在應(yīng)用程序服務(wù)器202a...202n上運行?;蛘?,一個或多個級別250、270和290的組件可以在單個機器(如存儲服務(wù)器)上運行。
圖6a和6b顯示了策略管理器264、284和304根據(jù)本發(fā)明的實施例將存儲資源204a、204b...204n分配到數(shù)據(jù)文件所執(zhí)行的操作??刂茝?00開始,應(yīng)用程序策略管理器264接收請求以創(chuàng)建或從應(yīng)用程序服務(wù)器202a...202n系統(tǒng)訪問數(shù)據(jù)文件。應(yīng)用程序策略管理器264執(zhí)行步驟400到408。如果(在方框402)數(shù)據(jù)文件沒有指出數(shù)據(jù)文件的應(yīng)用程序容器258a、258b...258n、數(shù)據(jù)容器278a、278b...278n,以及存儲容器298a、298b...298n的關(guān)聯(lián)的元數(shù)據(jù),那么,應(yīng)用程序策略管理器264確定可以映射到應(yīng)用程序?qū)傩?52、數(shù)據(jù)屬性272、和存儲屬性292的(在方框404)數(shù)據(jù)特征,如文件名、生成文件的時間、源應(yīng)用程序、用戶、數(shù)據(jù)管理要求、企業(yè)策略等等。從應(yīng)用程序策略256(圖5),應(yīng)用程序策略管理器264確定(在方框406)對應(yīng)于從數(shù)據(jù)文件收集的所確定的數(shù)據(jù)特征的應(yīng)用程序?qū)傩浴_x擇具有對應(yīng)于根據(jù)數(shù)據(jù)文件特征確定的應(yīng)用程序?qū)傩缘膽?yīng)用程序?qū)傩?60a、260b...260n的一個應(yīng)用程序容器258a、258b...258n(在方框408)。
在選擇應(yīng)用程序容器258a、258b...258n之后,控制進入數(shù)據(jù)級別270(圖5),在此,數(shù)據(jù)策略管理器284從數(shù)據(jù)策略276確定(在方框410)對應(yīng)于所確定的數(shù)據(jù)特征的數(shù)據(jù)屬性。然后,數(shù)據(jù)策略管理器284選擇(在方框412)數(shù)據(jù)策略276定義與所選擇的應(yīng)用程序容器258a、258b...258n以及映射到數(shù)據(jù)屬性(在選擇滿足為所選擇的應(yīng)用程序容器258a、258b...258n所定義的應(yīng)用程序?qū)傩?60a、260b...260n的要求的一個數(shù)據(jù)容器278a、278b...278n時可以考慮也可以不考慮其他數(shù)據(jù)屬性)的任何其他所確定的數(shù)據(jù)特征關(guān)聯(lián)的數(shù)據(jù)容器278a、278b...278n。
在選擇數(shù)據(jù)容器278a、278b...278n之后,控制進入圖6b中的方框414,在此,存儲系統(tǒng)策略管理器304使用存儲策略296來確定(在方框414)對應(yīng)于所確定的數(shù)據(jù)特征的存儲屬性。存儲系統(tǒng)策略管理器304執(zhí)行圖6b中的步驟414到424。存儲系統(tǒng)策略管理器304選擇(在方框416)存儲策略296定義為與所選擇的數(shù)據(jù)容器278a、278b...278n、以及任何其他所確定的存儲屬性(在選擇滿足為所選擇的數(shù)據(jù)容器278a、278b...278n所定義的數(shù)據(jù)屬性280a、280b...280n以及根據(jù)數(shù)據(jù)特征確定的任何可能的其他存儲屬性的要求的一個存儲容器298a、298b...298n時可以考慮也可以不考慮其他存儲屬性)關(guān)聯(lián)的存儲容器298a、298b...298n。
存儲系統(tǒng)策略管理器304存儲(在方框418)有關(guān)具有數(shù)據(jù)文件的元數(shù)據(jù)的所選擇的應(yīng)用程序容器、數(shù)據(jù)容器和存儲容器的信息。從方框418或方框402的“是”分支(如果已經(jīng)為數(shù)據(jù)文件定義了元數(shù)據(jù)),控制進入方框420,在此,存儲系統(tǒng)策略管理器304確定(在方框420)與數(shù)據(jù)文件元數(shù)據(jù)中所指出的所選擇的存儲容器298a、298b...298n關(guān)聯(lián)的存儲資源204a、204b...204n。在其他實施例中,即使為數(shù)據(jù)文件定義了元數(shù)據(jù),也要為數(shù)據(jù)文件判斷應(yīng)用程序、數(shù)據(jù)和存儲容器,因為如果某些屬性是動態(tài)的并已經(jīng)改變,那么,對應(yīng)于該數(shù)據(jù)文件的屬性/要求的容器也可能已經(jīng)改變。
向其中傳輸了數(shù)據(jù)的存儲資源204a、204b...204n將實現(xiàn)并執(zhí)行元數(shù)據(jù)中所指出的應(yīng)用程序容器、數(shù)據(jù)容器和存儲容器中所定義的管理功能(在方框424),以執(zhí)行操作,實現(xiàn)與數(shù)據(jù)關(guān)聯(lián)的屬性。例如,如果數(shù)據(jù)屬性標識了該數(shù)據(jù)的某些生命周期屬性,那么,將調(diào)用相應(yīng)的存檔或存儲管理程序,以在到期時間執(zhí)行指定的操作,如刪除、存檔、遷移到價格比較低廉、較慢的存儲器中,即,層次存儲管理等等。如此,通過執(zhí)行為數(shù)據(jù)文件標識的容器中所指出的管理功能以及選擇一個存儲資源204a、204b...204n以存儲數(shù)據(jù)文件,可以實現(xiàn)對應(yīng)于數(shù)據(jù)文件的屬性。管理功能可以包括與存儲系統(tǒng)中的數(shù)據(jù)的管理相關(guān)的任何應(yīng)用程序。此外,供應(yīng)商可以提供它們的存儲資源或相同產(chǎn)品的不同配置,以與不同存儲容器關(guān)聯(lián),以允許使用它們的存儲資源,以滿足與數(shù)據(jù)關(guān)聯(lián)的不同應(yīng)用程序、數(shù)據(jù)和存儲策略。
上文所描述的基于策略的存儲管理框架可以用來將已經(jīng)某些所確定的數(shù)據(jù)特征的數(shù)據(jù)與為該數(shù)據(jù)定義要求的某些屬性級別關(guān)聯(lián)。每一個較高的屬性級別都可以用來確定在較低級別選擇的容器。然后,使用最低級別的容器(在某些實施例中包括存儲級別的容器)來選擇存儲資源204a、204b...204n,這些存儲資源將用于滿足基于數(shù)據(jù)特征為數(shù)據(jù)文件定義的屬性和要求。
在其他實施例中,應(yīng)用程序級別可以定義服務(wù)級別協(xié)議屬性,這些屬性用于通過應(yīng)用程序連接器264和數(shù)據(jù)連接器284選擇能夠?qū)崿F(xiàn)與數(shù)據(jù)文件相關(guān)的服務(wù)級別協(xié)議中指定的服務(wù)級別目標的相應(yīng)的數(shù)據(jù)容器和存儲容器。
圖7顯示了容器600數(shù)據(jù)結(jié)構(gòu)的一個實施例,包括應(yīng)用程序容器610、數(shù)據(jù)容器620和存儲容器630組件。容器600數(shù)據(jù)結(jié)構(gòu)提供了通用數(shù)據(jù)結(jié)構(gòu),以允許屬性和管理功能在應(yīng)用程序級別的元素、數(shù)據(jù)級別的元素和存儲級別的元素之間進行傳輸。每一個容器組件610、620和630又包括多個屬性值字段612a...612n、622a...622n和632a...632n,以及管理功能標識字段614a...614n、624a...624n和634a...634n。在另一個實施例中,通用容器數(shù)據(jù)結(jié)構(gòu)可以包括組件容器610、620和630的子集,其中,屬性值和管理功能標識符被一個或多個應(yīng)用程序、數(shù)據(jù)和存儲級別轉(zhuǎn)換,以實現(xiàn)基于容器內(nèi)容的要求和/或基于在該級別起作用的策略添加或修改一個或多個容器字段的內(nèi)容。在這樣的實施例中,可以使用控制字段來提供有關(guān)字段在應(yīng)用程序、數(shù)據(jù)或存儲級別的適用性的更多信息。在另一個實施例中,屬性字段和/或管理功能字段可以合并到服務(wù)級別字段中。
另外的實現(xiàn)方式細節(jié)這里所描述的基于策略的存儲管理器可以使用標準編程和/或工程技術(shù)作為方法、設(shè)備或者產(chǎn)品來實現(xiàn),以生產(chǎn)軟件、固件、硬件或它們的任何組合。這里所使用的術(shù)語“產(chǎn)品”是指以硬件邏輯(例如,集成電路芯片、可編程門陣列(PGA)、專用集成電路(ASIC)等等)或者計算機可讀的介質(zhì),如磁存儲介質(zhì)(例如,硬盤驅(qū)動器、軟盤、磁帶等等)、光存儲器(CD-ROM、光盤等等)、易失性和非易失性存儲器設(shè)備(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、固件、可編程邏輯等等)來實現(xiàn)的代碼或邏輯。計算機可讀的介質(zhì)中的代碼由處理器訪問和執(zhí)行。其中實現(xiàn)了優(yōu)選的實施例的代碼可以進一步通過傳輸介質(zhì)或者通過網(wǎng)絡(luò)從文件服務(wù)器進行訪問。在這樣的情況下,實現(xiàn)了代碼的產(chǎn)品可以包括傳輸介質(zhì),如網(wǎng)絡(luò)傳輸線、無線傳輸介質(zhì)、通過空氣、無線電波、紅外信號等等傳播的信號。當(dāng)然,那些精通本技術(shù)的人將認識到,在不偏離本發(fā)明的范圍的情況下,可以對此配置進行許多修改,產(chǎn)品可以包括當(dāng)前技術(shù)中已知的任何信息攜帶介質(zhì)。
圖5顯示了可以與接收到的數(shù)據(jù)文件關(guān)聯(lián)的屬性類和容器類的三個級別。在其他實施例中,可以少于三個顯示的級別,例如,只是數(shù)據(jù)級別和存儲級別,以及不同屬性類的其他級別。
在圖1、2、3、5和7中,描述了用于實現(xiàn)基于策略的管理存儲的特定數(shù)據(jù)結(jié)構(gòu)和體系結(jié)構(gòu)。在其他實施例中,可以使用其他數(shù)據(jù)結(jié)構(gòu)布局,可以在提供有關(guān)每一個所考慮的級別(例如,應(yīng)用程序、數(shù)據(jù)、存儲等等)中的屬性的信息的數(shù)據(jù)結(jié)構(gòu)中提供其他信息。
圖6a和6b的所顯示的邏輯指出了以某種順序發(fā)生的某些事件。在其他實施例中,可以按不同的順序執(zhí)行某些操作,也可以修改或刪除某些操作。此外,可以向上文描述的邏輯中添加步驟,仍符合所描述的實現(xiàn)方式。此外,這里所描述的操作可以按順序執(zhí)行或者某些操作可以并行地處理。此外,操作還可以按單一處理單元或按分布式處理單元來執(zhí)行。
圖8顯示了計算機系統(tǒng)202的體系結(jié)構(gòu)的一個實施例。系統(tǒng)202可以實現(xiàn)計算機體系結(jié)構(gòu)700,該計算機體系結(jié)構(gòu)具有處理器702(例如,微處理器)、內(nèi)存704(例如,易失性存儲設(shè)備)和存儲器706(例如,非易失性存儲器,如磁盤驅(qū)動器、光盤驅(qū)動器、磁帶驅(qū)動器等等)。存儲器706可以包括內(nèi)置的存儲設(shè)備或者外置的或者可通過網(wǎng)絡(luò)進行訪問的存儲器。存儲器706中的程序被加載到內(nèi)存704中,并由處理器502以當(dāng)前技術(shù)已知的方式執(zhí)行。該體系結(jié)構(gòu)進一步包括網(wǎng)卡508,以允許與網(wǎng)絡(luò)進行通信。輸入設(shè)備510用于向處理器502提供用戶輸入,并可以包括鍵盤、鼠標、筆尖、麥克風(fēng)、對觸摸敏感的顯示屏幕,或者當(dāng)前技術(shù)已知的任何其他激活或輸入機制。輸出設(shè)備512能夠呈現(xiàn)從處理器502或諸如顯示監(jiān)視器、打印機、存儲器等等其他組件中傳輸過來的信息。
本發(fā)明的優(yōu)選的實施例的上述描述只是為了說明和描述。它沒有窮盡一切,也不將本發(fā)明限制到所述準確的形式。根據(jù)上文的講述,許多修改和變化也是可以的。本發(fā)明的范圍不是由此詳細說明進行限制,而是由所附的權(quán)利要求進行限制。上文的說明、示例和數(shù)據(jù)提供了本發(fā)明的組件的制造和使用的完整的描述。由于在不偏離本發(fā)明的精神和范圍的情況下本發(fā)明可以有許多實施例,本發(fā)明的精神在于下文所附的權(quán)利要求。
權(quán)利要求
1.一種生成用于存儲數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)的方法,包括在計算機可讀的介質(zhì)中定義多個數(shù)據(jù)結(jié)構(gòu),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出存儲資源的多個屬性和至少一個功能以存儲數(shù)據(jù);在計算機可讀的介質(zhì)中基于數(shù)據(jù)結(jié)構(gòu)中所定義的數(shù)據(jù)特征和屬性的對應(yīng)關(guān)系定義了將數(shù)據(jù)特征關(guān)聯(lián)到數(shù)據(jù)結(jié)構(gòu)的策略,其中,每一個所定義的數(shù)據(jù)結(jié)構(gòu)都可以提供確定存儲關(guān)聯(lián)數(shù)據(jù)的存儲資源的要求,其中,所定義的數(shù)據(jù)結(jié)構(gòu)用于為存儲資源提供存儲數(shù)據(jù)的要求。
2.根據(jù)權(quán)利要求1所述的方法,其中,策略包括涉及對于數(shù)據(jù)的應(yīng)用程序要求的應(yīng)用程序策略,進一步包括在計算機可讀的介質(zhì)中定義應(yīng)用程序策略管理器,該管理器處理數(shù)據(jù)結(jié)構(gòu)以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的數(shù)據(jù)結(jié)構(gòu)。
3.根據(jù)權(quán)利要求2所述的方法,其中,應(yīng)用程序策略進一步包括與應(yīng)用程序級別的元素關(guān)聯(lián)的數(shù)據(jù)的企業(yè)特定的屬性。
4.根據(jù)權(quán)利要求1所述的方法,其中,策略包括涉及數(shù)據(jù)生命周期管理、可恢復(fù)性和安全性的標準的數(shù)據(jù)策略,進一步包括生成數(shù)據(jù)策略管理器,該管理器處理數(shù)據(jù)結(jié)構(gòu)以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的數(shù)據(jù)結(jié)構(gòu)。
5.根據(jù)權(quán)利要求4所述的方法,其中,數(shù)據(jù)策略可以作為中間件操作。
6.根據(jù)權(quán)利要求1所述的方法,其中,策略包括涉及數(shù)據(jù)的存儲空間管理和配置的存儲策略,并進一步包括生成存儲策略管理器,該管理器處理數(shù)據(jù)結(jié)構(gòu)以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的數(shù)據(jù)結(jié)構(gòu)。
7.根據(jù)權(quán)利要求6所述的方法,其中,存儲供應(yīng)商提供存儲策略、存儲策略管理器,以及數(shù)據(jù)結(jié)構(gòu),以將存儲策略與它們的存儲資源關(guān)聯(lián)。
8.根據(jù)權(quán)利要求6所述的方法,其中,存儲策略管理器確定與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的存儲資源,并將數(shù)據(jù)傳輸?shù)剿_定的存儲資源。
9.一種計算機可讀的介質(zhì),包括用于存儲數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),其中,該數(shù)據(jù)結(jié)構(gòu)包括多個數(shù)據(jù)結(jié)構(gòu),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出存儲資源的多個屬性和至少一個功能以存儲數(shù)據(jù),其中,每一個所定義的數(shù)據(jù)結(jié)構(gòu)都可以提供確定存儲關(guān)聯(lián)數(shù)據(jù)的存儲資源的要求,并且其中,所定義的數(shù)據(jù)結(jié)構(gòu)用于為存儲資源提供存儲數(shù)據(jù)的要求;以及基于數(shù)據(jù)結(jié)構(gòu)中所定義的數(shù)據(jù)特征和屬性的對應(yīng)關(guān)系將數(shù)據(jù)特征關(guān)聯(lián)到數(shù)據(jù)結(jié)構(gòu)的策略。
10.一種存儲數(shù)據(jù)的方法,包括確定數(shù)據(jù)的特征;處理多個數(shù)據(jù)結(jié)構(gòu),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出多個屬性和至少一個功能,以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的一個數(shù)據(jù)結(jié)構(gòu),其中,存儲資源與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián),其中,與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的存儲資源實現(xiàn)數(shù)據(jù)結(jié)構(gòu)中所指出的屬性和功能。
11.根據(jù)權(quán)利要求10所述的方法,其中,應(yīng)用程序策略將屬性和至少一個功能數(shù)據(jù)映射到數(shù)據(jù)結(jié)構(gòu),其中,應(yīng)用程序策略涉及對于數(shù)據(jù)的應(yīng)用程序要求,并且其中,應(yīng)用程序策略管理器處理數(shù)據(jù)結(jié)構(gòu)以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的數(shù)據(jù)結(jié)構(gòu)。
12.根據(jù)權(quán)利要求10所述的方法,其中,數(shù)據(jù)策略將屬性和至少一個功能映射到數(shù)據(jù)結(jié)構(gòu),其中,數(shù)據(jù)策略涉及數(shù)據(jù)生命周期管理、可恢復(fù)性和安全性的標準,其中,數(shù)據(jù)策略管理器處理數(shù)據(jù)結(jié)構(gòu)以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的數(shù)據(jù)結(jié)構(gòu)。
13.根據(jù)權(quán)利要求10所述的方法,其中,至少一個功能由所確定的存儲資源中的程序執(zhí)行。
14.根據(jù)權(quán)利要求10所述的方法,其中,所確定的數(shù)據(jù)特征涉及包括數(shù)據(jù)的文件的特性和創(chuàng)建數(shù)據(jù)的應(yīng)用程序的特征。
15.根據(jù)權(quán)利要求10所述的方法,其中,處理多個數(shù)據(jù)結(jié)構(gòu)的過程進一步包括處理第一數(shù)據(jù)結(jié)構(gòu)集以確定第一集中的具有對應(yīng)于所確定的特征的屬性的一個數(shù)據(jù)結(jié)構(gòu);以及從第二數(shù)據(jù)結(jié)構(gòu)集中確定對應(yīng)于第一集中的所確定的數(shù)據(jù)結(jié)構(gòu)的一個數(shù)據(jù)結(jié)構(gòu),其中,所確定的存儲資源與第二集中的所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)。
16.根據(jù)權(quán)利要求10所述的方法,其中,從第二集中確定一個數(shù)據(jù)結(jié)構(gòu)的過程進一步包括,從第二集中確定對應(yīng)于第一集中的所確定的數(shù)據(jù)結(jié)構(gòu)和至少一個數(shù)據(jù)特征的一個數(shù)據(jù)結(jié)構(gòu)。
17.根據(jù)權(quán)利要求10所述的方法,其中,第一數(shù)據(jù)結(jié)構(gòu)集中的屬性包括涉及與數(shù)據(jù)使用和保留要求相關(guān)的特性的數(shù)據(jù)屬性,其中,第一集中的數(shù)據(jù)結(jié)構(gòu)中所指出的功能指出數(shù)據(jù)管理操作以實現(xiàn)數(shù)據(jù)結(jié)構(gòu)中所指出的數(shù)據(jù)屬性。
18.根據(jù)權(quán)利要求17所述的方法,其中,數(shù)據(jù)屬性包括含有下述內(nèi)容的數(shù)據(jù)屬性集的至少一個成員數(shù)據(jù)性能和可用性、生命周期管理和可恢復(fù)性。
19.根據(jù)權(quán)利要求17所述的方法,其中,第二數(shù)據(jù)結(jié)構(gòu)集中的屬性包括涉及與存儲能力相關(guān)的特性的存儲屬性,并且其中,第二集中的數(shù)據(jù)結(jié)構(gòu)中所指出的功能指出存儲管理操作以實現(xiàn)數(shù)據(jù)結(jié)構(gòu)中所指出的存儲屬性。
20.根據(jù)權(quán)利要求18所述的方法,其中,存儲屬性包括含有下述內(nèi)容的存儲屬性集的至少一個成員存儲容量、帶寬、輸入/輸出(I/O)速率、可靠性/錯誤率、到存儲資源的路徑的數(shù)量、物理位置和安全性。
21.根據(jù)權(quán)利要求15所述的方法,其中,第二數(shù)據(jù)結(jié)構(gòu)集中的屬性包括涉及與存儲能力相關(guān)的特性的存儲屬性,其中,與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的所確定的存儲資源滿足第二集中的所確定的數(shù)據(jù)結(jié)構(gòu)中所指出的存儲屬性。
22.根據(jù)權(quán)利要求21所述的方法,其中,有多個存儲資源,其中,存儲供應(yīng)商屬性被提供給每一個存儲資源,其中,確定與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的一個存儲資源的過程進一步包括確定具有滿足第二集中的所確定的數(shù)據(jù)結(jié)構(gòu)中所指出的存儲屬性的存儲供應(yīng)商屬性的存儲資源。
23.一種用于存儲數(shù)據(jù)的系統(tǒng),包括用于確定數(shù)據(jù)的特征的裝置;包括多個數(shù)據(jù)結(jié)構(gòu)的計算機可讀的介質(zhì),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出多個屬性和至少一個功能;以及用于處理數(shù)據(jù)結(jié)構(gòu),以確定具有對應(yīng)于所確定的數(shù)據(jù)特征的屬性的一個數(shù)據(jù)結(jié)構(gòu)的裝置,其中,一個存儲資源與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián),其中,與所確定的數(shù)據(jù)結(jié)構(gòu)關(guān)聯(lián)的存儲資源實現(xiàn)數(shù)據(jù)結(jié)構(gòu)中所指出的屬性和功能。
24.一種計算機程序,包括用于當(dāng)程序在計算機上運行時執(zhí)行權(quán)利要求10到22中的任何一個權(quán)利要求的所有步驟的程序代碼裝置。
全文摘要
本發(fā)明提供了用于存儲數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。在計算機可讀的介質(zhì)中定義多個數(shù)據(jù)結(jié)構(gòu),其中,每一個數(shù)據(jù)結(jié)構(gòu)都指出存儲資源的多個屬性和至少一個功能以存儲數(shù)據(jù)。在計算機可讀的介質(zhì)中基于數(shù)據(jù)結(jié)構(gòu)中所定義的數(shù)據(jù)特征和屬性的對應(yīng)關(guān)系定義了將數(shù)據(jù)特征關(guān)聯(lián)到數(shù)據(jù)結(jié)構(gòu)的策略,其中,每一個所定義的數(shù)據(jù)結(jié)構(gòu)都可以提供確定存儲關(guān)聯(lián)數(shù)據(jù)的存儲資源的要求,其中,所定義的數(shù)據(jù)結(jié)構(gòu)用于為存儲資源提供存儲數(shù)據(jù)的要求。
文檔編號G06F17/30GK1653422SQ03811202
公開日2005年8月10日 申請日期2003年5月12日 優(yōu)先權(quán)日2002年5月31日
發(fā)明者莫斯·德瓦拉康達, 杰克·格爾布, 阿維吉特·薩哈, 吉米·保羅·斯特里克蘭 申請人:國際商業(yè)機器公司