專利名稱:存儲控制裝置及其操作方法
技術(shù)領域:
本發(fā)明涉及計算機存儲控制器的領域,并且本發(fā)明特別涉及以具有共享存儲的N通道配置連接的高級功能存儲控制器。
背景技術(shù):
在先進計算機存儲領域,在描述什么是“先進的功能”上,正有增長的需求。如此的功能已經(jīng)超逾了常規(guī)存儲系統(tǒng)的簡單的I/O功能。先進的功能在現(xiàn)有技術(shù)上是廣泛熟知的,并依靠于元數(shù)據(jù)的控制,元數(shù)據(jù)用來保留真實事物的狀態(tài)信息,或者是存儲在系統(tǒng)中的“客戶”數(shù)據(jù)。使用先進功能可用的操作能使得各種動作(action)更快地應用于數(shù)據(jù)的虛擬圖像,而留下“真實”的數(shù)據(jù)為客戶應用程序所使用。這種先進功能的一個例子是‘快閃復制(Flash Copy)’,盡管本發(fā)明不限于那種功能,其使用快閃復制作為一個例子的實施例的描述僅是為了合適地解釋本發(fā)明的背景。
在最高水平上,快閃復制是使‘一些數(shù)據(jù)’的第二圖像變得有效的功能。這個功能有時被叫做實時點(Point-In-Time)復制,或者T0-復制。第二圖像的內(nèi)容起先是和第一個相同的。第二圖像在‘瞬間’變得有效。在實際的術(shù)語上這意味著第二圖像在比產(chǎn)生真實、獨立、物理復制所需要的時間少得多的時間內(nèi)變得有效,這意味著其能在沒有對正使用的應用程序的操作進行不可接受的中斷的情況下被建立。
一旦被建立,第二復制可以用于包括執(zhí)行備份、系統(tǒng)試驗和數(shù)據(jù)采集的多個目的。第一復制可以繼續(xù)被原來使用的應用程序用作其原始的目的。在備份的情況下做比較,沒有快閃復制,應用程序必須被關(guān)閉,并且在應用程序又被重新啟動前,進行備份工作。找到其中應用程序足夠空閑來被關(guān)閉的時間窗口正日益變得困難。完成備份的成本正在增加。在允許進行復制而不停止業(yè)務的快閃復制的能力中,具有重大的和日益增加的商業(yè)價值。
快閃復制的實現(xiàn)通過將尋址到第二圖象(其后稱為“目標”)的讀取I/O重定向到原始圖象(其后稱為“源”)而實現(xiàn)第二圖象存在的幻覺,除非那個區(qū)域進行了寫操作。如果一區(qū)域已經(jīng)被指定為寫(要么是對源,要么是對目標),那么為了維持源和目標都擁有它們自己的數(shù)據(jù)復制的幻覺,調(diào)用掛起寫命令的操作的進程,使得它不再有效,從源發(fā)出受影響區(qū)域的讀取,用寫將讀取的數(shù)據(jù)施加給目標,然后(只要所有的步驟成功)釋放被掛起的寫。隨后對同一區(qū)域的寫不需要被掛起,因為目標已經(jīng)有它自己的數(shù)據(jù)復本。這種復制寫(copy-on-write)的技術(shù)是眾所周知的,并已被使用在很多情況下。
在怎樣實現(xiàn)快閃復制上有許多變化,這些變化顯示在實現(xiàn)的各種特征中。例如,特定的實現(xiàn)允許對目標讀和寫,而另外一些僅允許讀。一些實現(xiàn)僅允許對目標有限的更新。一些要求目標與源具有相同的大小,而另一些允許它更小。
然而,所有的實現(xiàn)取決于管理上述決定的一些數(shù)據(jù)結(jié)構(gòu),即,關(guān)于是否目標收到的讀被發(fā)布到源或者目標的決定,以及關(guān)于是否必須掛起寫以允許復制寫發(fā)生的決定。該數(shù)據(jù)結(jié)構(gòu)實質(zhì)上跟蹤已經(jīng)被從源復制到目標的區(qū)域,以區(qū)分出那些沒有進行復制的區(qū)域。
實現(xiàn)快閃復制之后的算法的關(guān)鍵是維護這種數(shù)據(jù)結(jié)構(gòu)(其后稱為元數(shù)據(jù))。另外的‘先進功能’,如遠程復制(也叫做PPRC、連續(xù)復制或遠程鏡像)或虛擬化,也依賴于相似的數(shù)據(jù)結(jié)構(gòu),并且因此落入本發(fā)明的范圍。對于這些功能的每一種,元數(shù)據(jù)是不同的,但是在所有的情況中,它被用于維護狀態(tài)信息,比如數(shù)據(jù)的位置、虛擬化的文件到實際存儲對象的映射,等等。這個元數(shù)據(jù)被放在永久存儲器中。
在單CPU系統(tǒng)(complex)中(有可能使用SMP處理器),如快閃復制的功能實現(xiàn)起來相對來說是直接的,正如它被經(jīng)常使用在現(xiàn)代存儲控制器中一樣。如增加更多的努力,實現(xiàn)快閃復制的容錯也是可能的,使得(至少)雙CPU系統(tǒng)具有對元數(shù)據(jù)的復本的訪問權(quán)。在第一個CPU系統(tǒng)失敗的情況下,第二個可以被用來繼續(xù)操作,并且對目標圖象沒有失去訪問權(quán)。
然而,單CPU系統(tǒng)的I/O能力是有限的。改善以每秒鐘的I/O次數(shù)或帶寬(MB/s)來測量的單個CPU系統(tǒng)的能力是有限的,并且會逐漸限制使用的應用程序的性能。在很多快閃復制的實現(xiàn)中,這種限制增加了。但是一個好的例子是在存儲控制器中。典型的存儲控制器有單一的CPU系統(tǒng)(或有可能是冗余對),其表示對那個控制器性能能力的限制。
更多存儲控制器能被安裝。但是獨立的存儲控制器并不能共享對元數(shù)據(jù)的訪問,因此也不能協(xié)作來管理快閃復制圖象。當諸如快閃復制的功能被限定到單一控制器系統(tǒng)的范圍中時,存儲空間將變成分片的。源和目標盤必須在同樣的存儲控制器內(nèi)管理。單一存儲控制器盤空間可能已經(jīng)充滿了,而另外一個還有一些空閑的空間,但分離源盤和目標盤是不可能的,把目標盤置于新控制器控制之下。(在新快閃復制的情況下,這是非常不幸的,移動目標是方便的操作,因為沒有物理上的數(shù)據(jù)與其相連)。
限制總性能對于目標/源對是可行的,單控制器存儲功能的限制增加了存儲環(huán)境管理的復雜性。管理上的花費經(jīng)常被認為是在存儲的所有權(quán)的總成本的最大成本。通過刪除所有可能的任意限制,來降低系統(tǒng)開銷和復雜性是相當有利的。
典型地,今天的存儲控制系統(tǒng)沒有企圖去解決這個問題。他們執(zhí)行被限定在單一控制器上的先進功能,并且因此被控制器的能力所限制。
允許多個控制器參與共享快閃復制關(guān)系的簡單的方法是指定一個控制器作為元數(shù)據(jù)的擁有者,而使其他的控制器轉(zhuǎn)發(fā)所有的讀和寫請求到那個控制器。這個有擁有權(quán)的控制器使用上述所描述的算法處理這些請求,好像這些請求直接地來自于其自身附帶的主機服務器,并完成每一個返回到原始控制器上的請求。
這種系統(tǒng)存在的主要缺陷和它不能被廣泛使用的原因是轉(zhuǎn)發(fā)每一個I/O請求的負擔太大,可能雙倍于總的系統(tǒng)開銷,從而可能減半系統(tǒng)的性能。
在分布式并行數(shù)據(jù)庫處理中,已知有一種分布式鎖管理工具,它能使得資源被編輯在“鎖俱樂部(club)”中,并指定鎖俱樂部的擁有者,擁有者可以為它們指定的區(qū)域輪換地控制所有的鎖操作,和發(fā)布鎖操作控制消息到I/O請求客戶端。這樣的系統(tǒng)實現(xiàn)在邏輯資源層,不允許在存儲控制器系統(tǒng)之間的鎖控制,也不在元數(shù)據(jù)層提供任何形式的鎖管理。當真實的數(shù)據(jù)段可以在廣泛的分布式物理介質(zhì)中保存時,它也導致了在存儲虛擬化情況下相當大的開銷。
理論著作上建議,比如在Amiri等的《對于共享存儲陣列的可升級的并行控制和恢復》中,在存儲控制器網(wǎng)絡的設備層上使用分布鎖管理是可能的。但是,已知這種鎖管理技術(shù)被必須發(fā)生在控制器之間的通信的負擔所限制,導致長的等待時間周期、增加的死鎖和重復再試的潛在可能。
因此,在低成本、高性能、可升級方案方面將具有相當大的優(yōu)勢,允許N個存儲控制器(或“N通道”系統(tǒng))中的任一個參加先進的存儲功能,其中能在各個設備中分布元數(shù)據(jù)層上的所有權(quán)和鎖操作。
發(fā)明內(nèi)容
根據(jù)第一方面,本發(fā)明提供在存儲控制器節(jié)點的網(wǎng)絡中可操作的一種存儲控制裝置,包括I/O執(zhí)行部件;所有權(quán)分配部件,以分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán)給所有者存儲控制器節(jié)點;在所述所有者存儲控制器節(jié)點上的鎖管理部件,在I/O活動期間控制所述元數(shù)據(jù)的鎖定,以保證所述數(shù)據(jù)與有時保持的所述數(shù)據(jù)的任何復本相一致;在所述所有者存儲控制器節(jié)點上的消息傳遞部件,可操作地在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授權(quán)鎖、請求釋放鎖、和發(fā)出信號表示已經(jīng)釋放鎖;其中所述I/O執(zhí)行部件對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使所述I/O執(zhí)行部件與由所述所有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和其中維護有時保持的所述數(shù)據(jù)的任何所述復本與所述數(shù)據(jù)保持一致關(guān)系。
最好是,所述I/O執(zhí)行部件執(zhí)行快閃復制,并且其中所述元數(shù)據(jù)包含紋理(grain)復制狀態(tài)元數(shù)據(jù)。
最好是,所述I/O執(zhí)行部件執(zhí)行遠程復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
最好是,所述I/O執(zhí)行部件執(zhí)行存儲虛擬化活動,并且其中所述元數(shù)據(jù)包含虛擬化狀態(tài)元數(shù)據(jù)。
在第二個方面,本發(fā)明提供一種在存儲控制器節(jié)點的網(wǎng)絡中操作存儲控制裝置的方法,包括如下步驟由I/O執(zhí)行部件接收I/O請求;向所有者存儲控制器節(jié)點分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán);在I/O活動期間控制所述元數(shù)據(jù)的鎖定,以保證所述元數(shù)據(jù)與有時保持的所述元數(shù)據(jù)的任何復本相一致;在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授予鎖、請求鎖的釋放、并發(fā)出信號表示已經(jīng)釋放鎖;對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使I/O執(zhí)行部件與由所述所有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和維持有時所保持的所述數(shù)據(jù)的任何所述復本與所述數(shù)據(jù)的一致關(guān)系。
最好是,所述I/O是快閃復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
最好是,所述I/O是遠程復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
最好是,所述I/O是存儲虛擬化活動,并且其中所述元數(shù)據(jù)包含虛擬化狀態(tài)元數(shù)據(jù)。
在第三個方面,本發(fā)明提供一種在計算機可讀存儲介質(zhì)中有形具體化的計算機程序產(chǎn)品,其包含計算機程序代碼部件,以便當加載進計算機系統(tǒng)并在其上執(zhí)行時,使在存儲控制器節(jié)點的網(wǎng)絡中的存儲控制裝置執(zhí)行如下步驟由I/O執(zhí)行部件接收I/O請求;向所有者存儲控制器節(jié)點分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán);在I/O活動期間控制所述元數(shù)據(jù)的鎖定,以保證所述數(shù)據(jù)與有時保持的所述數(shù)據(jù)的任何復本相一致;在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授予鎖、請求鎖的釋放、并發(fā)出信號表示已經(jīng)釋放鎖;對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使I/O執(zhí)行部件與由所述所有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和維持有時所保持的所述數(shù)據(jù)的任何所述復本與所述數(shù)據(jù)的一致關(guān)系。
本發(fā)明目前的最佳實施例使用消息傳遞來在N通道系統(tǒng)內(nèi)的各存儲控制器(或節(jié)點)之間協(xié)調(diào)元數(shù)據(jù)層的鎖定活動。這種消息傳遞協(xié)調(diào)系統(tǒng)內(nèi)的各節(jié)點之間的活動,但每個節(jié)點仍然負責執(zhí)行其自己的I/O。
本發(fā)明的最優(yōu)實施例都將參照附圖舉例說明,其中圖1為一個流程圖,說明根據(jù)本發(fā)明的最優(yōu)實施例方法的步驟。
圖2為一個方框圖,說明根據(jù)本發(fā)明的最優(yōu)實施例的裝置。
具體實施例方式
本發(fā)明的最優(yōu)實施例使用消息傳遞來協(xié)調(diào)在N通道存儲系統(tǒng)中的多個存儲(或節(jié)點)之間的活動。消息傳遞協(xié)調(diào)系統(tǒng)中的各個節(jié)點之間的活動,但是每個節(jié)點仍然負責執(zhí)行其自己的I/O。這樣的消息傳遞對系統(tǒng)中的節(jié)點施加比上述說明的現(xiàn)有技術(shù)的已知的存儲的I/O轉(zhuǎn)發(fā)方案更低的處理負擔.這很大程度上是因為協(xié)議消息比它們相關(guān)的I/O要小(在發(fā)送的總字節(jié)數(shù)上),而且消息服從于聯(lián)合或批處理,以進一步減少系統(tǒng)開銷。
例如,考慮到實現(xiàn)快閃復制的N通道系統(tǒng)。假設每個節(jié)點具有對由N個節(jié)點的協(xié)作組管理的存儲器的訪問權(quán)。其中一個節(jié)點被指定(102)為控制存儲區(qū)的所有I/O關(guān)系的元數(shù)據(jù)的所有者。其他節(jié)點被指定為客戶。在當前大部分的最優(yōu)實施例中,其中一個客戶節(jié)點進一步被指定為備份擁有者,并且維護元數(shù)據(jù)的復本,以便在所有者節(jié)點失敗的情況下提供持續(xù)的有效性。
考慮到到達(104)特定客戶節(jié)點(‘C’)的主機I/O請求。假設主機I/O請求是對目標盤的讀或?qū)?,或者可能是對源盤的寫??蛻鬋通過暫停(106)I/O來開始處理.C然后發(fā)出消息REQ給所有者節(jié)點O,詢問是否已經(jīng)復制了紋理(grain)。
收到REQ消息后,O檢查它自己的元數(shù)據(jù)結(jié)構(gòu)。如果O發(fā)現(xiàn)該區(qū)已經(jīng)被復制,O用NACK消息回答。如果O發(fā)現(xiàn)該區(qū)還未被復制,它將在它自己的元數(shù)據(jù)結(jié)構(gòu)內(nèi)的區(qū)域設置相對于合適的元數(shù)據(jù)的鎖紀錄,并且用GNT消息回復(112),以指示已經(jīng)授予鎖。要求鎖記錄確保在剛剛收到并授予的請求和當在C的處理繼續(xù)時可能到達影響相同元數(shù)據(jù)的進一步請求之間的兼容性。鎖記錄怎么被維護的細節(jié)、兼容性約束是什么與如果由O本地收到I/O相同,并且為本領域的技術(shù)人員所周知。
收到NACK消息后,C釋放(unpend)(114)原始的I/O請求。
收到GNT消息后,C繼續(xù)(116)執(zhí)行數(shù)據(jù)傳輸或快閃復制運算法則要求的傳輸。在目標讀取(Target Read)的情況下,就意味著對源盤的讀。一段時間后,C將處理完成讀請求(118),然后在完成對發(fā)布它的主機系統(tǒng)的原始I/O請求的同時,發(fā)布UNL消息給O,以請求釋放鎖。
收到UNL消息后,O將鎖記錄從其元數(shù)據(jù)表中移開(122),這可能釋放進一步的由于該鎖而被掛起的I/O請求。在本最優(yōu)實施例中,O然后將UNLD消息傳遞(124)給C,表明已經(jīng)釋放鎖,并允許C再次利用與原始請求相關(guān)聯(lián)的資源。而這不是快閃復制算法本身所要求的。
在寫數(shù)據(jù)(在目標盤或源盤上)的情況下,C必須執(zhí)行復制寫(127)。在復制寫全部完成,同時原始寫I/O請求仍被掛起時,C發(fā)布(126)UNLC的請求給O,請求釋放鎖并更新元數(shù)據(jù)以記錄下復制寫。
收到UNLC消息后,O在元數(shù)據(jù)中標記如已經(jīng)被復制所影響的區(qū)域,移開(130)鎖記錄,將該區(qū)域已經(jīng)被復制的消息通知(132)給任何等待請求,然后發(fā)布(134)UNLD消息給C,表明已經(jīng)釋放鎖。
收到UNLD消息后,C釋放(136)被掛起的寫操作,其將在一段時間后完成,然后C完成(138)對主機的寫操作。
恢復路徑要求滿足如下狀態(tài)當磁盤I/O失敗時、或消息傳遞系統(tǒng)失敗、或節(jié)點失敗,但是這些的要求和實現(xiàn)都是本領域內(nèi)一般技術(shù)人員所熟知的,這里無需描述。
已經(jīng)用與單個I/O相關(guān)的術(shù)語和單個客戶C進行了上述說明。但該領域內(nèi)一般技術(shù)人員將清楚地知道該方案將如何在多個I/O中、從多個客戶機節(jié)點連續(xù)操作,同時O使用同樣的算法連續(xù)處理所有的請求。
現(xiàn)在轉(zhuǎn)到圖2,該圖顯示了與本發(fā)明最優(yōu)實施例相關(guān)的設備,該設備配備在一個存儲控制器網(wǎng)絡內(nèi),包括所有者(202),客戶(204)I/O執(zhí)行部件,元數(shù)據(jù)(206)的一部分一與在存儲網(wǎng)絡的控制下所擁有的數(shù)據(jù)(208)和數(shù)據(jù)(208)的復本(209)相關(guān)。該設備包括所有權(quán)分配部件(210),用以將元數(shù)據(jù)所有權(quán)分配給所有者(202);鎖管理部件(212),用以在I/O執(zhí)行期間、在所述元數(shù)據(jù)(206)層控制鎖操作,以確保與任何復本(209)的一致性,這種復本可能是快閃復制圖像(Flash Copy Image),遠程復制圖像(Remote Copy Image),或者是虛擬化的存儲圖像。還有一個依附在所有者(202)和客戶機(204)的消息傳遞部件(214),用以在客戶機(204)和所有者(202)之間傳遞一個或多個消息,以請求關(guān)于元數(shù)據(jù)狀態(tài)的響應、授權(quán)鎖、請求鎖的釋放、和發(fā)出信號表示已釋放鎖。該客戶機(204)對其元數(shù)據(jù)由任何所有者(202)所有的數(shù)據(jù)執(zhí)行I/O,并要求客戶機與由所述所有者(202)控制的元數(shù)據(jù)層的鎖協(xié)議相一致。
本發(fā)明的當前的最優(yōu)實施例分配不同的節(jié)點作為用于不同存儲區(qū)域的元數(shù)據(jù)擁有者的角色。這就確保單個擁有者節(jié)點不會使其成為這個系統(tǒng)中的瓶頸。從眾所周知的現(xiàn)有技術(shù)的分布式并行數(shù)據(jù)庫處理方案中可了解用于平衡區(qū)域所有權(quán)的有效的方案(雖然在數(shù)據(jù)庫表級別上)。
將會理解,上述方法將以運行在一個或多個處理器(未示出)上的軟件來實現(xiàn),并且可以把該軟件提供來作為承載在任何合適的數(shù)據(jù)載體(也未示出)例如磁或光計算機盤上的計算機程序元件。用于數(shù)據(jù)發(fā)送的信道同樣可以包括所有描述的存儲介質(zhì)以及信號承載介質(zhì),例如,有線的或無線的信號介質(zhì)。
可以適當?shù)貙⒈景l(fā)明具體化為用于與計算機系統(tǒng)使用的計算機程序產(chǎn)品。如此的實現(xiàn)可以包括一系列計算機指令,所述計算機指令要么固定在有形介質(zhì),例如磁盤、CD-ROM、ROM、或硬盤的計算機可讀介質(zhì)上,要么通過調(diào)制解調(diào)器或其它接口設備、經(jīng)由包括但不局限于光或類似的通信線的有形介質(zhì)或者無形地使用包括但不局限于微波、紅外線或其它發(fā)送技術(shù)的無線技術(shù)可發(fā)送到計算機上。所述計算機可讀指令使這里先前所述的所有或部分的功能具體化。
本領域技術(shù)人員將理解可以用由很多計算機結(jié)構(gòu)或操作系統(tǒng)使用的多種編程語言來編寫如此的計算機可讀指令。此外,可以通過使用目前或未來的包括但不局限于半導體的、磁的或光的任何存儲技術(shù)來存儲如此指令,通過使用目前或未來的包括但不局限于光的、紅外線的、或微波的任何通信技術(shù)來發(fā)送如此指令??梢灶A期的是可以將如此計算機程序產(chǎn)品作為伴隨打印的或電子文檔的,例如緊縮包裝的軟件、預先裝載在例如系統(tǒng)ROM或硬盤上的計算機系統(tǒng)中的可裝卸介質(zhì)來分配,或者可以通過例如英特網(wǎng)或萬維網(wǎng)的網(wǎng)絡從服務器或電子公告牌分配這樣的計算機程序產(chǎn)品。
將可以理解的是對上述的實施例各種變化對于本技術(shù)領域的技術(shù)人員來說是顯而易見的。
權(quán)利要求
1.在存儲控制器節(jié)點的網(wǎng)絡中可操作的存儲控制裝置,包括I/O執(zhí)行部件;所有權(quán)分配部件,用于向所有者存儲控制器節(jié)點分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán);鎖管理部件,在所述所有者存儲控制器節(jié)點上,可操作地在I/O活動期間控制所述元數(shù)據(jù)的鎖定;消息傳遞部件,在所述所有者存儲控制器節(jié)點上,可操作地在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授予鎖、請求鎖的釋放、并發(fā)出信號表示已經(jīng)釋放了鎖;其中所述I/O執(zhí)行部件可操作地對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使I/O執(zhí)行部件與由所述擁有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和其中維護有時所保持的所述數(shù)據(jù)的任何復本與所述數(shù)據(jù)的一致關(guān)系。
2.根據(jù)權(quán)利要求1的裝置,其中所述I/O執(zhí)行部件可操作地執(zhí)行快閃復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
3.根據(jù)權(quán)利要求1的裝置,其中所述I/O執(zhí)行部件可操作地執(zhí)行遠程復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
4.根據(jù)權(quán)利要求1的裝置,其中所述I/O執(zhí)行部件可操作地執(zhí)行存儲虛擬化活動,并且其中所述元數(shù)據(jù)包含虛擬化狀態(tài)元數(shù)據(jù)。
5.一種在存儲控制器節(jié)點的網(wǎng)絡中操作存儲控制裝置的方法,該方法包括如下步驟由I/O執(zhí)行部件接收I/O請求;向所有者存儲控制器節(jié)點分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán);在I/O活動期間控制所述元數(shù)據(jù)的鎖定;在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授予鎖、請求鎖的釋放、并發(fā)出信號表示已經(jīng)釋放鎖;對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使I/O執(zhí)行部件與由所述所有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和維持有時所保持的所述數(shù)據(jù)的任何復本與所述數(shù)據(jù)的一致關(guān)系。
6.根據(jù)權(quán)利要求5所述的方法,其中所述I/O是快閃復制,并且其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
7.根據(jù)權(quán)利要求5所述的方法,其中所述I/O是遠程復制,其中所述元數(shù)據(jù)包含紋理復制狀態(tài)元數(shù)據(jù)。
8.根據(jù)權(quán)利要求5所述的方法,其中所述I/O是存儲虛擬化活動,并且其中所述元數(shù)據(jù)包含虛擬化狀態(tài)元數(shù)據(jù)。
9.一種在計算機可讀存儲介質(zhì)中有形具體化的計算機程序產(chǎn)品,其包含計算機程序代碼部件,以便當加載進計算機系統(tǒng)中并在其上執(zhí)行時,使在存儲控制器節(jié)點的網(wǎng)絡中的存儲控制裝置執(zhí)行如下步驟由I/O執(zhí)行部件接收I/O請求;向所有者存儲控制器節(jié)點分配數(shù)據(jù)的元數(shù)據(jù)的所有權(quán);在I/O活動期間控制所述元數(shù)據(jù)的鎖定;在存儲控制器節(jié)點之間傳遞一個或多個消息,以請求元數(shù)據(jù)狀態(tài)、授予鎖、請求鎖的釋放、并發(fā)出信號表示已經(jīng)釋放鎖;對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,使I/O執(zhí)行部件與由所述所有者存儲控制器節(jié)點控制的元數(shù)據(jù)鎖協(xié)議一致;和維持有時所保持的所述數(shù)據(jù)的任何復本與所述數(shù)據(jù)的一致關(guān)系。
全文摘要
網(wǎng)絡中的存儲控制器包括I/O執(zhí)行部件;將數(shù)據(jù)的元數(shù)據(jù)的所有權(quán)分配給所有者存儲控制器節(jié)點的部件;用來在I/O期間控制元數(shù)據(jù)的鎖定的鎖管理器;在存儲控制器節(jié)點之間傳遞消息,以請求元數(shù)據(jù)狀態(tài)、授權(quán)鎖、請求釋放鎖、并發(fā)信號通知鎖釋放的消息傳遞部件。對其元數(shù)據(jù)由任何所有者存儲控制器節(jié)點所擁有的數(shù)據(jù)執(zhí)行I/O,而且與由所有者存儲控制器控制的元數(shù)據(jù)鎖協(xié)議一致,并且維護有時所保持的數(shù)據(jù)的任何復本與所述數(shù)據(jù)的一致關(guān)系。
文檔編號G06F17/30GK1504894SQ03147578
公開日2004年6月16日 申請日期2003年7月24日 優(yōu)先權(quán)日2002年11月28日
發(fā)明者卡洛斯·F·富恩特, 卡洛斯 F 富恩特, J 斯凱爾斯, 威廉·J·斯凱爾斯 申請人:國際商業(yè)機器公司