新四季網

用於存儲並使用多存儲位置中的元數據的方法和系統的製作方法

2023-05-17 05:18:21

專利名稱:用於存儲並使用多存儲位置中的元數據的方法和系統的製作方法
技術領域:
本發明涉及用於存儲並使用多存儲位置中的元數據的方法、系統和程序。
背景技術:
在特定的計算環境中,多主機系統可以與諸如IBM企業存儲伺服器(ESS)的多控制單元通信來獲取由接收請求的ESS管理的存儲裝置中的數據,通過一條或多條邏輯路徑提供到諸如互連的硬碟驅動器的存儲裝置的存取(IBM和ESS是IBM的註冊商標)。互連的驅動器可以配置為直接存取存儲裝置(DASD)、獨立磁碟冗餘陣列(RAID)、磁碟連續捆束陣列(Just a Bunch ofDisks,JBOD)等。控制單元在本地存儲設備中維護用於確定系統的配置所需的關鍵(critical)元數據。如果關鍵元數據是損壞的、非法或無效的,則控制單元將失效並可能不得不完全重新配置。通常關鍵元數據對主機系統是隱藏的,而僅對控制單元作業系統是有效的。

發明內容
提供一種用於存儲並使用在多存儲位置中的元數據的方法、系統和程序。籤名數據存儲在系統存儲設備中,指示多個元數據副本位置,每個定位標識存儲裝置和存儲裝置中的副本位置。每個位置包含元數據的一個副本,其中元數據包括系統配置信息。將籤名數據的副本與元數據的每個副本一起存儲。


圖1圖解其中實現實施例的計算環境的實施例。
圖2圖解籤名數據信息的實施例。
圖3圖解元數據記錄中的信息的實施例。
圖4-9圖解了管理並使用元數據和籤名數據的操作的實施例。
具體實施例方式
圖1圖解實現本發明的各個方面的計算環境的實施例。一個或多個主機2將指向存儲裝置4a、4b、...、4n的輸入/輸出(I/O)請求發送到控制單元6,其中控制單元6管理到4a、4b、...、4n的I/O存取。在一個實施例中,控制單元6包括兩個系統8a和8b,每一個包括處理器10a、10b、高速緩存12a、12b和本地存儲設備14a、14b。每個系統6a、6b可以在單獨的電力邊界(powerboundary)上。兩個系統8a、8b可以作為冗餘對(redundancy pair)協作來執行控制單元的操作,以便在任一系統故障的情況下,剩餘的系統以非中斷方式接管控制單元的操作。可以分配系統6a、6b來處理指向在存儲裝置4a、4b、...、4n中配置的特定卷的I/O請求。系統6a、6b在裝置網絡16上與存儲裝置4a、4b、...、4n通信,該網絡可以包括區域網(LAN)、存儲區域網(storage area network,SAN)、總線接口、串行接口等。處理器8a、8b執行I/O代碼18a、18b來執行這裡描述的I/O和元數據管理操作。本地存儲設備14a、14b可以包括存儲器或者從非易失性存儲裝置加載的存儲器。
控制單元6可以包括任意類型的伺服器,諸如企業存儲伺服器、存儲控制器等,或者其它用於管理對所附存儲裝置4a、4b、...、4n的I/O請求的裝置,其中存儲裝置可以包括本領域公知的存儲裝置,諸如互連的硬碟驅動器(如,配置為DASD、RAID、JBOD等)、磁帶、光碟、電存儲器等。主機2可以通過諸如區域網(LAN)、存儲區域網(SAN)、廣域網(WAN)、無線網絡等等的網絡(未示出)與控制單元6通信。另外,主機2可以通過諸如外部部件互連(PCI)總線或串行總線之類的總線接口與控制單元6通信。處理器10a、10b可以通過連接20相互通信來處理故障切換(failover)和撤退(fallback)。
系統8a、8b在它們的本地存儲設備14a、14b中維護用於指示在存儲裝置4a、4b、4c中的元數據副本24a、24b、24c的位置的數字籤名22a、22b。也與元數據24a、24b、24c一起維護籤名數據副本26a、26b、26c。元數據副本24a、24b、24c可以包括關鍵元數據,該數據包括控制單元運行所需的關鍵配置信息。如果關鍵元數據損壞或不可用,則存儲裝置上的卷的位置和配置可能丟失,並且控制單元6可能需要重新配置。存儲裝置4a、4b、4c還包括主機2存取的用戶數據28a、28b、28c。
可以由比所示的三個存儲裝置4a、4b、4c更多的存儲裝置,並且特定的存儲裝置可能不包括元數據和籤名數據的副本。此外,一個存儲裝置可以包括籤名數據和元數據的多個副本。在一個實施例中,元數據和籤名數據的三個副本存儲在一個或多個存儲裝置中。在另外的實施例中,可以維護元數據和籤名數據的不同數量的副本。
圖2圖解了包含在籤名數據22a、22b、26a、26b、26c中包含的信息的實施例,系統標識符(ID)50,用於指示期望使用由籤名數據標識的元數據的系統(如8a、8b);元數據位置52,用於標識存儲裝置4a、4b、4c中一個或多個位置,其中在該位置上能夠找到元數據的副本,每個元數據位置標識存儲裝置4a、4b、4c,以及在所標識的存儲裝置4a、4b、4c上的副本位置的標識符(如果多於一個的元數據副本可以位於存儲裝置4a、4b、4c上);和世代號54,只要由於元數據位置改變導致修改籤名的內容就增加該世代號。元數據24a、24b、24c可以存儲在對於I/O代碼18a、18b已知的、存儲裝置中預先指定的位置,以便在存儲裝置中標識存儲裝置的ID 54提供足夠的信息定位存儲裝置4a、4b、...、4n中的元數據24a、24b、24c和籤名數據26a、26b、26c。
另外,可以在存儲裝置上由I/O代碼已知的位置上存在指針元數據,用於進一步標識存儲裝置上的元數據的副本位置,以便在存儲裝置中標識存儲裝置的ID 54和每個存儲裝置上的副本號碼的標識符提供足夠的信息來定位該存儲裝置上的指針元數據,而指針元數據提供元數據24a、24b、24c及其籤名數據26a、26b、26c在存儲裝置4a、4b、...、4n上的位置。如果存儲裝置是RAID陣列,則RAID陣列的每個具體實現(incarnation)都具有唯一的標識符。在一個實施例中,排序在籤名數據中的所標識的一組元數據位置使得能夠指示第1到第N副本。該排序可以用於在後面描述的驗證籤名和存取元數據所用到的控制算法。
圖3圖解包含在元數據記錄70中的信息的實施例。在一個實施例中,元數據24a、24b、24c可以包括多個元數據記錄。每個元數據記錄70可以包括用於指示元數據記錄更新的次數的第一和第二世代號72、74、實際元數據76和糾錯碼(ECC)或用於確保元數據記錄沒有損壞的縱向冗餘校驗(LRC)碼。
可以在控制單元(僅包括一個系統或處理器聯合體(processor complex),即沒有冗餘硬體,或者如圖1所示包括兩個系統8a和8b)中執行在圖4、5、6和8中描述的用於使用並管理元數據的操作。
在一個實施例中,可以有N個候選存儲裝置來存儲元數據的副本,其中每一個都具有M個存儲元數據的副本的可能位置。這樣,存在N×M可能的位置來存儲元數據。控制單元嘗試保持K個元數據的有效副本,如果K>N×M,則只能維護N×M個副本。在一個實施例中,K>=2並且N×M>=2,從而在任何時間上至少存在對於控制單元是可用的元數據的兩個副本。至少具有兩個副本使得可以從損壞一個元數據副本的部分的介質故障中恢復。在另一實施例中,K=3而M=2,從而即使當只有一個存儲元數據的存儲裝置時,在該存儲裝置上也至少有兩個可用副本,而當有至少兩個存儲元數據的存儲裝置時,存在三個可用的副本,在單獨的存儲裝置上至少有兩個副本。
圖4圖解了由處理器10a、10b執行來提供元數據的初始副本、實現在I/O代碼18a和/或18b中的操作(圖4的操作可以實現在具有一個處理器/系統或多個處理器/系統的控制單元上)的實施例。在驅動用於選擇元數據副本的最佳地點(home)的操作(在方框100)後,I/O代碼18a、18b根據當前有效的存儲裝置、通過優先在不同的故障邊界(如,在獨立的存儲裝置、在具有獨立存取路徑的存儲裝置、在具有獨立的電力邊界的存儲裝置上等)中的存儲裝置中,或在具有更高可靠性的位置(如,在更高可靠性的存儲裝置、在具有更好的RAID冗餘的陣列上、在不會由於故障裝置而導致性能降低的RAID陣列上、在具有更多獨立存取路徑的存儲裝置上等)上放置20個副本,來(在方框102)做出存儲元數據的、一個或多個存儲裝置4a、4b、4c的初始選擇,以最小化故障點的數量。
由於可用的存儲裝置組改變,所以重新評估最佳元數據地點組,並且按要求重新布置元數據的副本的放置位置以在最佳地點組上保持副本。只要可用的元數據地點組改變就必須執行最佳地點組的評估。該組可以由於添加或取消配置存儲裝置、或者由於存儲裝置故障或修理而改變。當第一存儲裝置成為可用時產生初始化的元數據副本。當添加或移除額外的地點時,可以從現有的地點將元數據的一個或多個現有副本移動到新的地點。每次當用於存儲元數據副本的元數據地點組修改時,可應用的籤名數據的值改變。每次當籤名數據改變時,該籤名數據的世代號54(圖2)增加。
當要產生元數據的新複本,或元數據的現有副本要被移除(或者變得無法存取)時,必須為控制單元更新籤名數據。在從現有地點(存儲裝置4a、4b、4c)將元數據副本移至更好的地點的情況下,可以移除現有的副本,然後嚴生新的副本。
圖5圖解了用於當可用的存儲裝置4a、4b、4c的配置改變時、移除副本並產生新副本以便更新籤名數據50、由此根據上述當前有效的存儲裝置進行重新調整來選擇元數據的最佳地點(存儲裝置4a、4b、...、4n)來最小化故障點的數量的操作的實施例。在(在方框150)啟動操作來從新的存儲裝置配置中改變元數據的地點(存儲裝置4a、4b、4c)後,I/O代碼18a、18b(在方框152)為元數據70確定存儲裝置4a、4b、4c的位置和最佳數量來降低單一故障點的數量。I/O代碼執行操作156到164來移除元數據70的現有副本。(在方框154)為元數據地點的新配置(最佳存儲裝置4a、4b、4c選擇)確定新籤名數據值22a、22b、26a、26b、26c。(在方框156)對元數據副本組24a、24b、24c停頓I/O。在正在移除的副本上將籤名數據值22a、22b、26a、26b、26c(在方框158)設置為零,並且(在方框160)以在新籤名數據中指示的順序更新在新選擇的最佳存儲裝置4a、4b、4c上的籤名數據值26a、26b、26c。(在方框162)也更新在每個系統8a、8b的本地存儲設備14a、14b上的籤名數據值22a、22b,並且(在方框164)對該組元數據副本24a、24b、24c恢復I/O。
I/O代碼執行操作166到176來添加元數據70的新副本。I/O代碼18a、18b為元數據地點的新配置(在方框166)確定新籤名數據值,並且(在方框168)將所有元數據複製到新地點,當更新發生時對所有副本維護任何對元數據的更新。I/O代碼18a、18b(在方框170)對元數據副本24a、24b、24c停頓,並且(在方框172)以在新籤名數據中指示的順序為每個元數據地點更新在存儲裝置4a、4b、4c上的籤名數據值26a、26b、26c。(在方框174)也更新在每個系統8a、8b的本地存儲設備14a、14b上的籤名數據值22a、22b,然後(在方框176)對該組元數據副本24a、24b、24c恢復I/O。
在圖5的實施例中,在抑制到元數據副本的I/O的同時完成籤名的更新,使得到新籤名的轉換作為原子操作發生,而在修改籤名時所有的副本具有相同的元數據。在籤名更新處理末尾,假設所有這些籤名位置是可存取的,籤名的所有副本應該當前存在於所有本地存儲設備和存儲裝置副本上,並且任何沒有元數據副本的存儲設備不應該具有籤名。然而,在只有一個處理器在線或存儲裝置不可存取的情況下,舊籤名可以保存在合適的位置。如果斷電導致更新處理中斷,則籤名可以保持在過渡狀態。
以特定的順序更新籤名,以便可以定義其它算法來在後面描述的重置情況下解決數據籤名。
當控制單元6的一個或者兩個系統8a、8b開機並開始控制單元6的操作時,系統8a、8b必須首先定位當前元數據24a、24b、24c的有效副本。籤名數據26a、26b、26c的副本與元數據的每個副本一起維護,並且還本地存儲在每個系統8a、8b的本地存儲設備14a、14b中。定位當前元數據的副本的處理很複雜,原因在於由於故障作業系統不能存取所有的存儲設備;當發生斷電時籤名可能正在更新中;系統之一可能不能運行,並且其本地籤名數據可能對於其它運行伺服器做出的元數據的位置的任何改變是過期的,以及在開機時任意一個或兩個系統8a、8b可以運行。
I/O代碼18a、18b可以以一定的確信度驗證已經定位了元數據24a、24b、24c的當前副本。籤名數據22a、22b、26a、26b、26c確定當前有效的元數據24a、24b、24c的位置,使得I/O代碼18a、18b只需要確定籤名數據26a、26b、26c的有效性。如果沒有確定有效的籤名,則控制單元6不需要上線到所附主機2,並且調用服務來使服務者嘗試挑選出應該使用元數據的什麼副本(如果有的話)。如果可以定位元數據24a、24b、24c的至少一個有效副本,則系統8a、8b如前所述製作元數據的額外的副本,以便存在合適數量的有效副本。一旦確定一個或多個副本位置,就更新本地籤名數據22a、22b中的存儲裝置4a、4b、4c中的籤名數據值26a、26b、26c來反映當前有效副本。確定有效籤名的算法可以取決於當可應用的籤名為控制單元改變時用於更新籤名數據的副本的過程。
圖6和7圖解了當開機時或作為初始微碼加載(IML)操作的一部分,用於驗證籤名數據值22a、22b、26a、26b、26c的副本的操作的一個實施例。在方框200,一個系統(如8a)在重置情況後執行諸如開機或IML之類的初始化。如果(在方框202)另一系統(如8b)是運行的,並且(在方框204)在兩個系統8a、8b中都存在籤名數據22a、22b,則(在方框206)比較兩個籤名數據22a、22b。如果(在方框208)它們都匹配,並且(在方框210)至少一個存儲裝置籤名數據26a、26b、26c(1)匹配本地存儲設備籤名22a、22b或具有比本地存儲設備籤名數據22a、22b大一的世代號54,且(2)與本地存儲設備籤名數據22a、22b一樣具有至少一個存儲裝置,則控制前進到圖7的方框224。否則,從方框208或210的『否』分支,I/O代碼18a(在方框212)確定是否存在一個具有等於或者比具有最新世代號的本地存儲設備籤名數據22a、22b大一的世代號54的存儲裝置籤名數據26a、26b、26c,並且這些本地和存儲裝置籤名數據都標識具有相等的或更大的世代號的存儲裝置4a、4b、4c。然後控制前進到圖7的方框224。否則,從方框212的『否』分支,控制單元6(在方框214)不在線,並且可以調用服務。
如果(在方框202)另一系統(如8b)不運行,或者(在方框204)只有一個系統8a或8b具有籤名數據22a或22b,則控制前進到圖7的方框220。在方框220,I/O代碼18a為籤名數據26a、26b、26c掃描所有存儲裝置4a、4b、4c的元數據地點,跟蹤每個籤名及其位置。如果(在方框222)在存儲裝置4a、4b、4c上存在兩個匹配籤名數據值26a、26b、26c,並且其具有大於任何其他籤名數據值(本地存儲設備14a或存儲裝置4a、4b、4c)的世代號54,則(在方框224)驗證具有更大的世代號的籤名數據值26a、26b、26c。I/O代碼18a(在方框226)更新在驗證的籤名數據中所指示(圖2的欄位54)的、與所驗證的籤名數據不相同的、本地存儲設備14a、14b和存儲裝置4a、4b、4c中的任何籤名數據22a、22b。將在任何存儲裝置4a、4b、4c上的、沒有由驗證的籤名數據值標識的籤名數據26a、26b、26c歸零(在方框228)。如果控制單元6當前不在線(即,第一運行處理器開機),則I/O代碼18a(在方框230)通過從第一副本複製到第J副本來同步元數據的副本以移除先前的關機造成的任何部分更新。I/O代碼18a還(在方框232)開始按需要將元數據副本複製或移至最佳地點的處理,然後上線(在方框234)。
從方框222的『否』分支出發,如果(在方框236)存在具有比另一存儲裝置的籤名數據世代號54小一的籤名數據26a、26b、26c的一個存儲裝置,並且兩個存儲裝置的籤名數據標識存儲裝置,則控制前進到方框224來使用最新的世代號來驗證籤名數據值26a、26b、26c。從方框236的『否』分支出發,如果(在方框238)存在具有世代號54等於本地存儲設備14a籤名數據22a、22b或大一的籤名數據26a、26b、26c的一個存儲裝置,並且具有最大世代號的存儲裝置和存儲設備系統的籤名數據標識具有籤名數據值26a、26b、26c的存儲裝置4a、4b、4c,則控制前進到方框224來驗證具有比本地籤名數據22a、22b大一代的最新世代號的存儲系統籤名數據26a、26b、26c。否則,從方框238的『否』分支觸發,控制前進到方框240來不上線並調用服務。算法的其它實施例可以為檢查的條件選擇不同的結果(上線或離線),或者可以根據確定驗證籤名時期望的可信度定義額外的檢查條件。
籤名數據值使用元數據的有效副本標識經排序的一組元數據地點。當更新元數據的任何部分(即,記錄)時,以該順序更新每個元數據副本,並且如隨後所述直到在所有副本更新後才認為完成更新。在斷電或特定的故障使得控制單元中所有系統的操作中斷的情況下,可以不更新所有的元數據副本。為了防止元數據副本不同步的情況,在開機時系統從元數據的第一副本複製數據到其餘副本(在圖7的方框230)。通過使用在元數據下一連續副本上可用的有效數據來恢復元數據的第一副本上檢測到的錯誤。如果不是在對出錯的數據進行更新中,則所有的副本應該具有相同的數據,並且恢復處理將當前數據恢復到所有副本。如果正在進行部分更新,則從下一有效連續副本獲得數據將恢復所有副本到元數據所期望更新的版本,或者恢復所有副本到更新前存在的元數據的版本。在第一種情況下,完成部分更新。在後面的情況下,使部分更新無效。在任何情況下,由於部分更新在完成之前中斷,並且系統涉及必須能夠處理發生或未發生未完成的部分更新,所以元數據都恢復到一致狀態。
當更新元數據的任何部分(即,記錄)時,以該順序更新每個元數據副本,並且直到所有副本都被更新後才認為完成更新。串行化對元數據的多個副本的更新,使得斷電不終止導致所有副本裡元數據的丟失的部分更新所有三個副本。通常處理到元數據的相同部分(即,記錄)的讀和寫存取,使得在進行寫操作的同時不允許讀操作。在這種情況下,可以對元數據的任何有效的副本(即,假設在開機時進行同步,所有副本包括相同的數據)發出讀操作。通過從元數據的另一有效副本讀取數據直到找出元數據的部分的有效副本為止,來恢復任何副本上的讀失敗(如,介質錯誤)。一旦找出出錯的任何副本則使用有效數據進行重寫。如果沒有找到有效副本,並且錯誤返回到指示數據丟失的數據的存取者。在可能對元數據的相同部分同時進行讀和寫存取的情況下,以執行更新的順序發出讀操作,以便讀取元數據的最新副本。如果在讀或寫存取中檢測到故障,該故障指示元數據的整個副本故障,則認為該副本是不可存取的,從籤名數據中將其移除,並且如果存在任何可用的位置,則在另一元數據位置產生新副本。
圖8圖解了用於更新在I/O代碼18a、18b中實現的元數據的副本24a、24b、24c之一中的單個的元數據記錄70(圖3)的操作的實施例。(圖8的操作可以實現在具有一個處理器/系統或多系統8a、8b的控制單元上)。在驅動更新特定的元數據記錄70的操作(在方框300)後,通過一次對一個記錄副本執行方框304、306和308的操作、來將對特定元數據記錄的更新寫入(在方框302)至少一個存儲裝置4a、4b、4c中的元數據24a、24b、24c的每個副本。在方框304,I/O代碼18a增加第一世代號72並將第一塊寫入元數據記錄70。將除了第一和最後塊之外的所有塊(在方框306)寫入元數據記錄70。(在方框308)增加第二世代號76,對整個元數據記錄計算LRC/CRC,並且最後的塊寫入元數據記錄70。
圖9圖解了用於讀取在I/O代碼18a、18b中實現的元數據的副本24a、24b、24c之一中的單個的元數據記錄70(圖3)的操作的實施例。(圖9的操作可以實現在具有一個處理器/系統或多系統8a、8b的控制單元上)。在方框350,啟動對包含多個元數據記錄的元數據24a、24b、24c的特定副本讀取特定的元數據記錄70的操作,其中存在與每個元數據記錄70相關的、用於指示元數據記錄更新的次數的第一70和第二76(圖3)世代號,以及ECC或LRC校驗字符。I/O代碼18a(在方框352)嘗試讀取在提供元數據的特定副本70的地點的一個存儲裝置4a、4b、4c上的特定的元數據記錄70。如果(在方框354)存在存取錯誤,則存取錯誤(在方框356)返回更高級的存取程序(accessor)功能。如果(在方框354)不存在存取錯誤,則(在方框358)檢查第一72和第二76世代號。如果(在方框360)它們不匹配,則讀取錯誤(在方框362)返回到更高級。如果(在方框364)在元數據記錄中檢測到LRC或不可糾正的CRC錯誤,則讀取錯誤返回到更高級。如果沒有檢測到錯誤,則驗證了元數據記錄並返回到存取者功能。
額外實施例的詳細內容通過使用標準編程和/或工程技術來產生軟體、固件、硬體或它們的任意組合,所描述的實施例可以實現為方法、裝置或製造物。這裡使用的術語「製造物」指的是在硬體邏輯(如集成電路晶片、可編程門陣列(PGA)、特定用途集成電路(ASIC)等),或計算機可讀介質,諸如磁存儲介質(如硬碟驅動器、軟盤、磁帶等)、光存儲設備(如CD-ROM、光碟等)、易失性和非易失性存儲器器件(如,EEPROM、ROM、RAM、DRAM、SRAM、固件、可編程邏輯等)中實現的代碼和/或邏輯。可以由處理器存取並執行在計算機可讀介質中的代碼。可以進一步通過發送介質或經由網絡從文件伺服器存取實現優選實施例的代碼。在這種情況下,其中實現了代碼的製造物可以包括諸如網絡發送線、無線發送媒體、通過空間傳播的信號、無線電波、紅外信號等等的發送介質。因此,製造物可以包括在其中實現代碼的存儲介質。此外,「製造物」可以包括實現、處理並執行代碼的硬體和軟體的組合。當然,本領域技術人員將認識到可以在不背離實施例的範圍的情況下對該配置做出許多修改,並且製造物可以包括任何本領域公知的信息承載介質。
在一個實施例中,第一世代號可以在每個元數據記錄的第一部分(sector),而第二世代號可以在元數據記錄中的最後部分。
在具有冗餘硬體(如系統8a、8b)的實施例中,一個系統8a或8b可以指定為主機來控制其中存儲元數據的副本24a、24b、24c的存儲裝置4a、4b、4c。在一個實施例中,主系統8a或8b可以向系統8a、8b分配元數據的副本24a、24b、24c,使得系統8a、8b管理它們所分配的元數據的副本24a、24b、24c的鎖定(locking)。
圖2和圖3顯示包含在籤名數據和元數據記錄中的特定信息。在另外的實施例中,該信息可以存儲在具有與所示不同的格式和信息的不同數據結構中。
圖4-8圖解的操作顯示了以特定順序發生的特定事件。在另一實施例中,可以以不同的順序執行、修改或移除特定操作。此外,可以添加步驟到上述邏輯中,並且仍然符合所述實施例。此外,可以順序發生這裡所描述的操作,或可以並行處理特定的操作。此外,可以由單獨的處理單元或分布的處理單元執行操作。
已經為圖示和說明的目的提供了本發明的各種實施例的上述描述。不希望限於所公開的本發明的簡單形式。根據上述教學可以由多種修改和變型。希望本發明的範圍不受該詳細描述的限制,而是由所附的權利要求限制本發明的範圍。以上說明、實例和數據提供了製造和本發明的布局的使用的完整描述。由於可以在不背離本發明的宗旨和範圍的前提下做出多種本發明的實施例,因此由所附本發明權利要求涵蓋本發明。
權利要求
1.一種方法,包括在系統存儲設備中存儲用於指示多個元數據副本位置的籤名數據,每個定位標識一個存儲裝置和該存儲裝置中的一個副本位置,其中每個位置包含元數據的一個副本,元數據包括系統配置信息;和將籤名數據的副本與元數據的每個副本一起存儲。
2.如權利要求1所述的方法,其中選擇用於存儲元數據的副本的存儲裝置的位置來最小化故障點的數量。
3.如權利要求1所述的方法,還包括啟動用來改變元數據副本在存儲元數據的存儲裝置中的位置的操作;確定元數據在存儲裝置中的新位置;更新籤名數據的每個副本來指示元數據的新位置;和將元數據和更新的籤名數據複製到還沒有包含元數據和籤名數據的任何新位置。
4.如權利要求3所述的方法,其中簽名數據中的位置包括排序的組,根據該排序的組的順序來更新位置上的籤名數據。
5.如權利要求3所述的方法,其中響應於存儲裝置組的改變做出新位置的確定,並且執行新位置的確定以便最小化改變後的存儲裝置組的故障點的數量。
6.如權利要求1所述的方法,其中兩個處理系統能夠存取存儲裝置中的元數據和籤名數據,並且每個處理系統都具有包含籤名數據副本的計算機可讀介質。
7.如權利要求6所述的方法,還包括接收對元數據的更新;和根據在籤名數據中指示的存儲裝置位置的順序將對元數據的更新串行複製到存儲裝置中。
8.如權利要求6所述的方法,還包括接收讀取元數據的請求;存取存儲位置中的元數據直到找出元數據的一個有效副本為止;和使用所存取的元數據的有效副本來更新被確定為無效的元數據副本。
9.如權利要求1所述的方法,其中簽名數據的每個副本包括世代號,還包括響應於改變包含元數據的副本位置而增加籤名數據的每個副本中的世代號。
10.如權利要求9所述的方法,其中第一和第二處理系統能夠存取存儲裝置中的元數據和籤名數據,並且第一處理系統和第二處理系統分別維護籤名數據的第一和第二副本,還包括由第一處理系統執行初始化;確定存儲裝置或處理系統上的可存取籤名數據之一的有效性;響應於確定沒有有效籤名數據而停留在離線狀態;和使用籤名數據的驗證的副本來更新在驗證的籤名數據和籤名數據的第一和第二副本中指示的元數據位置中的籤名數據的所有可存取的副本。
11.如權利要求10所述的方法,其中所述確定籤名數據的一個副本的有效性包括驗證與籤名數據的第一和第二副本匹配的一個存儲裝置籤名數據,或者驗證具有比籤名數據匹配的第一和第二副本的世代號大一的世代號的一個存儲裝置籤名數據,並且其中這一個存儲裝置籤名數據和籤名數據的第一和第二副本標識公共存儲裝置。
12.如權利要求10所述的方法,其中所述確定籤名數據的一個副本的有效性包括響應於確定籤名數據的第一和第二副本的世代號不匹配、並且確定籤名數據的第一和第二副本標識驗證的存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本的最大世代號大一的世代號的一個存儲裝置籤名數據。
13.如權利要求10所述的方法,其中所述確定籤名數據的一個副本的有效性包括響應於確定存儲裝置中的籤名數據標識存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本之一中的世代號大一的世代號的一個存儲裝置籤名數據。
14.一種系統,包括多個存儲裝置;具有系統存儲設備並與存儲裝置通信的處理系統;和包括代碼的計算機可讀介質,由處理系統執行代碼來執行如下操作(i)在系統存儲設備中存儲用於指示多個元數據副本位置的籤名數據,每個定位標識一個存儲裝置和該存儲裝置中的一個副本位置,其中每個位置包含元數據的一個副本,元數據包括系統配置信息;和(ii)將籤名數據的副本與元數據的每個副本一起存儲。
15.如權利要求14所述的系統,其中選擇用於存儲元數據的副本的存儲裝置的位置來最小化故障點的數量。
16.如權利要求14所述的系統,其中代碼執行的操作還包括啟動用來改變元數據副本在存儲元數據的存儲裝置中的位置的操作;確定元數據在存儲裝置中的新位置;更新籤名數據的每個副本來指示元數據的新位置;和將元數據和更新的籤名數據複製到還沒有包含元數據和籤名數據的任何新位置。
17.如權利要求16所述的系統,其中簽名數據中的位置包括排序的組,根據該排序的組的順序來更新位置上的籤名數據。
18.如權利要求17所述的系統,其中響應於存儲裝置組的改變做出新位置的確定,並且執行新位置的確定以便最小化改變後的存儲裝置組的故障點的數量。
19.如權利要求14所述的系統,其中處理系統包括第一處理系統,還包括第二處理系統,其中兩個處理系統都能夠存取存儲裝置中的元數據和籤名數據,並且每個處理系統具有包含籤名數據副本的本地存儲設備。
20.如權利要求19所述的系統,其中代碼還引起如下操作接收對元數據的更新;和根據在籤名數據中指示的存儲裝置位置的順序將對元數據的更新串行複製到存儲裝置中。
21.如權利要求19所述的系統,其中代碼還引起如下操作接收讀取元數據的請求;存取存儲位置中的元數據直到找出元數據的一個有效副本為止;和使用所存取的元數據的有效副本來更新被確定為無效的元數據副本。
22.如權利要求16所述的系統,其中簽名數據的每個副本包括世代號,其中代碼還引起如下操作響應於改變包含元數據的副本位置而增加籤名數據的每個副本中的世代號。
23.如權利要求22所述的系統,其中處理系統包括第一處理系統,還包括第二處理系統,其中兩個處理系統都能夠存取存儲裝置中的元數據和籤名數據,並且每個處理系統分別維護籤名數據的副本,其中由第一處理執行的代碼所執行的操作還包括(i)由第一處理系統執行初始化;(ii)確定存儲裝置或處理系統上的可存取籤名數據之一的有效性;(iii)響應於確定沒有有效籤名數據而停留在離線狀態;和(iv)使用籤名數據的驗證的副本來更新在驗證的籤名數據和籤名數據的第一和第二副本中指示的元數據位置中的籤名數據的所有可存取的副本。
24.如權利要求23所述的系統,其中所述確定籤名數據的一個副本的有效性包括驗證與籤名數據的第一和第二副本匹配的一個存儲裝置籤名數據,或者驗證具有比籤名數據匹配的第一和第二副本的世代號大一的世代號的一個存儲裝置籤名數據,並且其中這一個存儲裝置籤名數據和籤名數據的第一和第二副本標識公共存儲裝置。
25.如權利要求23所述的系統,其中所述確定籤名數據的一個副本的有效性包括響應於確定籤名數據的第一和第二副本的世代號不匹配、並且確定籤名數據的第一和第二副本標識驗證的存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本的最大世代號大一的世代號的一個存儲裝置籤名數據。
26.如權利要求23所述的系統,其中所述確定籤名數據的一個副本的有效性包括響應於確定存儲裝置中的籤名數據標識存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本之一中的世代號大一的世代號的一個存儲裝置籤名數據。
27.一種與多個存儲裝置和系統存儲設備通信的製造物,其中製造物包括能夠使得執行如下操作的代碼在系統存儲設備中存儲用於指示多個元數據副本位置的籤名數據,每個定位標識一個存儲裝置和該存儲裝置中的一個副本位置,其中每個位置包含元數據的一個副本,元數據包括系統配置信息;和將籤名數據的副本與元數據的每個副本一起存儲。
28.如權利要求27所述的製造物,其中選擇用於存儲元數據的副本的存儲裝置的位置來最小化故障點的數量。
29.如權利要求27所述的製造物,其中操作還包括啟動用來改變元數據副本在存儲元數據的存儲裝置中的位置的操作;確定元數據在存儲裝置中的新位置;更新籤名數據的每個副本來指示元數據的新位置;和將元數據和更新的籤名數據複製到還沒有包含元數據和籤名數據的任何新位置。
30.如權利要求29所述的製造物,其中簽名數據中的位置包括排序的組,根據該排序的組的順序來更新位置上的籤名數據。
31.如權利要求29所述的製造物,其中響應於存儲裝置組的改變做出新位置的確定,並且執行新位置的確定以便最小化改變後的存儲裝置組的故障點的數量。
32.如權利要求27所述的製造物,其中兩個處理系統能夠存取存儲裝置中的元數據和籤名數據,並且每個處理系統具有包含籤名數據副本的計算機可讀介質。
33.如權利要求32所述的製造物,操作還包括接收對元數據的更新;和根據在籤名數據中指示的存儲裝置位置的順序將對元數據的更新串行複製到存儲裝置中。
34.如權利要求32所述的製造物,其中操作還包括接收讀取元數據的請求;存取存儲位置中的元數據直到找出元數據的一個有效副本為止;和使用所存取的元數據的有效副本來更新被確定為無效的元數據副本。
35.如權利要求27所述的製造物,其中簽名數據的每個副本包括世代號,操作還包括響應於改變包含元數據的副本位置而增加籤名數據的每個副本中的世代號。
36.如權利要求35所述的製造物,其中第一和第二處理系統能夠存取存儲裝置中的元數據和籤名數據,第一處理系統和第二處理系統維持籤名數據的第一和第二副本,第一和第二處理系統執行代碼,並且操作還包括執行初始化;確定存儲裝置或處理系統上的可存取籤名數據之一的有效性;響應於確定沒有有效籤名數據而停留在離線狀態;和使用籤名數據的驗證的副本來更新在驗證的籤名數據和籤名數據的第一和第二副本中指示的元數據位置中的籤名數據的所有可存取的副本。
37.如權利要求36所述的製造物,其中所述確定籤名數據的一個副本的有效性包括驗證與籤名數據的第一和第二副本匹配的一個存儲裝置籤名數據,或者驗證具有比籤名數據匹配的第一和第二副本的世代號大一的世代號的一個存儲裝置籤名數據,並且其中這一個存儲裝置籤名數據和籤名數據的第一和第二副本標識公共存儲裝置。
38.如權利要求36所述的製造物,其中所述確定籤名數據的一個副本的有效性包括響應於確定籤名數據的第一和第二副本的世代號不匹配、並且確定籤名數據的第一和第二副本標識驗證的存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本的最大世代號大一的世代號的一個存儲裝置籤名數據。
39.如權利要求27所述的製造物,其中所述確定籤名數據的一個副本的有效性包括響應於確定存儲裝置中的籤名數據標識存儲裝置,來驗證具有等於或比籤名數據的第一或第二副本之一中的世代號大一的世代號的一個存儲裝置籤名數據。
全文摘要
提供一種用於存儲並使用在多存儲位置中的元數據的方法、系統和程序。在系統存儲設備中存儲用於指示多個元數據副本位置的籤名數據,每個定位標識存儲裝置和存儲裝置中的副本位置。每個位置包含元數據的一個副本,其中元數據包括系統配置信息。將籤名數據的副本與元數據的每個副本一起存儲。
文檔編號G06F11/14GK1776675SQ20051012472
公開日2006年5月24日 申請日期2005年11月16日 優先權日2004年11月17日
發明者雷耶斯·R·弗龍多佐, 庫爾特·A·羅維裡恩, 裡查德·A·裡普伯格, 雅各布·L·謝潑德, 麥可·P·瓦格林 申請人:國際商業機器公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀