專(zhuān)利名稱(chēng):使用不同復(fù)制技術(shù)執(zhí)行數(shù)據(jù)鏡像時(shí)保持一致性的方法系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于在使用不同的復(fù)制技術(shù)執(zhí)行數(shù)據(jù)鏡像時(shí)維持一致性的方法、系統(tǒng)及程序。
背景技術(shù):
災(zāi)難恢復(fù)系統(tǒng)通常處理兩種類(lèi)型的故障,單個(gè)時(shí)間點(diǎn)上的突發(fā)災(zāi)難性故障或者一段時(shí)間上的數(shù)據(jù)丟失。在第二種類(lèi)型的漸進(jìn)性災(zāi)難中,可能丟失大量的更新。為了有助于進(jìn)行數(shù)據(jù)更新的恢復(fù),可能在遠(yuǎn)程位置上提供數(shù)據(jù)拷貝。這種雙重或者影像拷貝通常在應(yīng)用系統(tǒng)正在向主要存儲(chǔ)設(shè)備寫(xiě)入新數(shù)據(jù)時(shí)進(jìn)行。不同的復(fù)制技術(shù)可用于在輔助站點(diǎn)維持?jǐn)?shù)據(jù)的遠(yuǎn)程拷貝,例如,國(guó)際商業(yè)機(jī)器公司(“IBM”)的擴(kuò)展遠(yuǎn)程拷貝(XRC)、耦合擴(kuò)展遠(yuǎn)程拷貝(CXRC)、全局拷貝以及全局鏡像拷貝。這些不同的復(fù)制技術(shù)在IBM公開(kāi)物“The IBMTotalStorage DS6000 SeriesCopy Services in OpenEnvironments”,IBM文檔號(hào)SG24-6783-00(2005年9月)以及“IBMTotalStorage Enterprise Storage ServerImplementing ESS CopyServices with IBM eServer zSeries”,IBM文檔號(hào)SG24-5680-04(2004年7月)中描述。
在數(shù)據(jù)鏡像系統(tǒng)中,數(shù)據(jù)維持在卷對(duì)(volume pairs)中。卷對(duì)包括主要存儲(chǔ)設(shè)備中的卷以及輔助存儲(chǔ)設(shè)備中的相應(yīng)卷,其包括維持在主卷中的數(shù)據(jù)的相同拷貝。主要和輔助存儲(chǔ)控制器可用于控制對(duì)主要和輔助存儲(chǔ)設(shè)備的訪問(wèn),在特定的備份系統(tǒng)中,sysplex定時(shí)器用于跨系統(tǒng)提供一致的時(shí)間,使得,不同應(yīng)用向不同的主要存儲(chǔ)設(shè)備寫(xiě)入的更新使用一致的日期時(shí)間(TOD)值作為時(shí)間戳。主機(jī)操作系統(tǒng)或者應(yīng)用可在向主要存儲(chǔ)器的卷中寫(xiě)入數(shù)據(jù)集時(shí),對(duì)這種數(shù)據(jù)集或數(shù)據(jù)集的集合的更新打上時(shí)間戳。數(shù)據(jù)更新的完整性涉及確保在卷對(duì)中的輔助卷中進(jìn)行更新的順序與在主卷中進(jìn)行的順序一致。應(yīng)用程序所提供的時(shí)間戳確定數(shù)據(jù)更新的邏輯序列。
在很多應(yīng)用程序中,例如,數(shù)據(jù)庫(kù)系統(tǒng)中,除非發(fā)生了在先前的寫(xiě)操作否則不能進(jìn)行特定的寫(xiě)操作;否則,就會(huì)危及數(shù)據(jù)完整性。這種其完整性依賴于先前數(shù)據(jù)寫(xiě)操作發(fā)生的數(shù)據(jù)寫(xiě)操作被稱(chēng)為依賴性寫(xiě)操作。當(dāng)所有寫(xiě)操作以其邏輯順序傳輸完畢之后,也就是,所有依賴性寫(xiě)操作在依賴其的寫(xiě)操作之前被傳輸,主要以及輔助存儲(chǔ)器中的卷是一致的。一致性組對(duì)具有等于或者早于一致性時(shí)間戳的時(shí)間戳的一致性組中的所有寫(xiě)操作具有一致性時(shí)間。一致性組是對(duì)于主要卷的更新集合,以便使得以一致性的方式保護(hù)依賴性寫(xiě)操作。一致性時(shí)間是系統(tǒng)保證對(duì)于輔助卷的更新是一致的最新時(shí)間。一致性組維持卷以及存儲(chǔ)設(shè)備之間的數(shù)據(jù)一致性。從而,當(dāng)數(shù)據(jù)從輔助卷進(jìn)行恢復(fù)時(shí),所恢復(fù)的數(shù)據(jù)將是一致的。
一致性組在會(huì)話內(nèi)形成。指定給一個(gè)會(huì)話的所有卷對(duì)將使其更新維持在同一個(gè)一致性組中。從而,會(huì)話是用于確定將會(huì)放在一個(gè)一致性組中的卷。一致性組在日志(journal)設(shè)備或者卷中形成。從日志中,將集中用于形成一致性組的更新應(yīng)用于輔助卷。如果恢復(fù)操作期間,在將來(lái)自日志的更新應(yīng)用于輔助卷時(shí)系統(tǒng)發(fā)生故障,則未完成對(duì)輔助卷的寫(xiě)操作的更新可以從日志中進(jìn)行恢復(fù),并且應(yīng)用于輔助卷。
特定的網(wǎng)絡(luò)環(huán)境可部署不同的復(fù)制技術(shù),以在網(wǎng)絡(luò)中提供主要卷的鏡像拷貝。不同的復(fù)制技術(shù)可使用不同的方法和算法形成一致性組,以便使得在使用不同的復(fù)制技術(shù)形成的一致性組之間不能保持一致性。
由于這些原因,需要現(xiàn)有技術(shù)進(jìn)行改進(jìn),用于管理一致性組。
發(fā)明內(nèi)容
提供一種方法、系統(tǒng)和程序,用于在使用不同的復(fù)制技術(shù)執(zhí)行數(shù)據(jù)鏡像時(shí)維持一致性。使用第一復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組。將更新組中的更新復(fù)制到輔助存儲(chǔ)器位置。使用第二復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組,其中,將更新組中的更新復(fù)制到輔助存儲(chǔ)器位置。響應(yīng)于在使用第一復(fù)制技術(shù)形成的更新組的其中一個(gè)中包括該更新,在數(shù)據(jù)結(jié)構(gòu)中指示更新的時(shí)間。同時(shí),在數(shù)據(jù)結(jié)構(gòu)中指示使用第二復(fù)制技術(shù)形成的更新組的時(shí)間。
圖1說(shuō)明網(wǎng)絡(luò)計(jì)算環(huán)境的一個(gè)實(shí)施方式。
圖2說(shuō)明維持在主數(shù)據(jù)集中的信息的一個(gè)實(shí)施方式。
圖3和圖4說(shuō)明使用不同的復(fù)制技術(shù)將主要存儲(chǔ)器鏡像到輔助存儲(chǔ)器的操作的實(shí)施方式。
具體實(shí)施例方式
圖1說(shuō)明網(wǎng)絡(luò)計(jì)算環(huán)境的一個(gè)實(shí)施方式。鏡像系統(tǒng)2包括鏡像程序4,以對(duì)將應(yīng)用(未示出)寫(xiě)入主要存儲(chǔ)器6的更新復(fù)制到可能位于遠(yuǎn)程站點(diǎn)的存儲(chǔ)系統(tǒng)中的日志卷8中進(jìn)行管理。一旦將更新復(fù)制到日志卷8中作為一個(gè)時(shí)間點(diǎn),那些更新就可集中到一致性組(CG)10中。一旦一致性組的所有更新集中在日志卷8中,就可進(jìn)行另一個(gè)復(fù)制操作,以將一致性組10復(fù)制到可能位于一個(gè)獨(dú)立系統(tǒng)中的輔助存儲(chǔ)器12中。鏡像系統(tǒng)2、主要存儲(chǔ)器6、日志卷8以及輔助存儲(chǔ)器12可通過(guò)網(wǎng)絡(luò)14進(jìn)行通信,例如,點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)、存儲(chǔ)局域網(wǎng)(SAN)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN),等等。主要存儲(chǔ)器6可能位于主要站點(diǎn),并且日志卷8和輔助存儲(chǔ)器12可能位于輔助站點(diǎn),其中站點(diǎn)可以以明顯的距離進(jìn)行分隔,例如,幾百或者幾千公里,以在輔助站點(diǎn)提供擴(kuò)展距離的鏡像。此外,可能存在主要和輔助存儲(chǔ)控制器,提供對(duì)主要6和輔助12存儲(chǔ)器的訪問(wèn)。
從主要存儲(chǔ)器6到日志卷8的更新復(fù)制操作可包括異步復(fù)制操作,例如,點(diǎn)對(duì)點(diǎn)遠(yuǎn)程拷貝擴(kuò)展距離、全局拷貝、全局鏡像,等等。為了形成一致性組,鏡像程序4可維持一個(gè)位圖,指示對(duì)主要存儲(chǔ)器6的更新。為了完成一致性組,鏡像程序4可凍結(jié)或者停止對(duì)主要存儲(chǔ)器6的任何更新,然后提供新的位圖,以用于記錄對(duì)主要存儲(chǔ)器6隨后的任何更新。在建立新位圖以記錄對(duì)主要存儲(chǔ)器6的任何新更新的指示之后,鏡像程序4允許I/O繼續(xù)訪問(wèn)主要存儲(chǔ)器6。指示出現(xiàn)于建立新位圖之前的更新的先前位圖則用于通過(guò)異步地將在先前位圖中指示的更新復(fù)制到日志卷8中,在日志卷8處形成一致性組10。一旦一致性組10中的所有數(shù)據(jù)位于日志卷8中,鏡像程序4可發(fā)起將一致性組10復(fù)制到輔助存儲(chǔ)器12的操作。一致性組10從日志卷8到輔助存儲(chǔ)器12的復(fù)制操作可包括邏輯復(fù)制操作,例如,IBM快照復(fù)制(IBM Flash Copy)操作,其中,在創(chuàng)建標(biāo)識(shí)復(fù)制軌道的位圖時(shí)完成復(fù)制操作。在一個(gè)實(shí)施方式中,用于將對(duì)主要存儲(chǔ)器6的變化復(fù)制到日志卷8然后復(fù)制到輔助存儲(chǔ)器12的復(fù)制技術(shù)可包括IBM全局鏡像拷貝操作,其涉及對(duì)一致性組的更新從主要存儲(chǔ)器6到輔助站點(diǎn)的日志卷8的異步遠(yuǎn)程復(fù)制,以及隨后的一致性組10到輔助存儲(chǔ)器6的快照復(fù)制。
鏡像程序4所管理的從主要存儲(chǔ)器6到輔助存儲(chǔ)器12的復(fù)制操作包括第一復(fù)制技術(shù)??刹渴鸬诙?fù)制技術(shù),以將數(shù)據(jù)從主要存儲(chǔ)器20a…20n復(fù)制到輔助存儲(chǔ)器22a…22n,該第二復(fù)制技術(shù)例如是IBM擴(kuò)展遠(yuǎn)程拷貝(XRC)復(fù)制技術(shù)。這兩種復(fù)制技術(shù)形成對(duì)共享一個(gè)會(huì)話的卷的所有更新的一致性組。一致性組包含具有所保存的更新順序的記錄,甚至是跨多個(gè)存儲(chǔ)器控制所保存的。這種順序的保存對(duì)于處理依賴性寫(xiě)操作I/O,例如,索引和數(shù)據(jù)以及數(shù)據(jù)庫(kù)和日志,是至關(guān)重要的。
第二復(fù)制技術(shù)使用系統(tǒng)數(shù)據(jù)移動(dòng)器(SDM)程序24a…24n,24o。SDM 24a…24n分別與主要20a…20n以及輔助22a…22n進(jìn)行通信,并且管理一致性組中更新從主要存儲(chǔ)器20a…20n到相應(yīng)的輔助存儲(chǔ)器22a…22n的傳輸。從而,使用第二復(fù)制技術(shù)通過(guò)SDM 24a…24n在主要20a…20n和輔助22a…22n之間進(jìn)行數(shù)據(jù)傳輸。在主要存儲(chǔ)器20a…20n處,可將更新寫(xiě)入管理主要存儲(chǔ)器20a…20n的存儲(chǔ)控制器緩存中的側(cè)文件中。然后可將更新傳輸?shù)絊DM 24a…24n所維持的日志26a…26n中。在日志26a…26n的每個(gè)中,將更新置于一致性組中。日志26a…26n可存儲(chǔ)一個(gè)或多個(gè)一致性組。SDM 24a…24o可包括實(shí)現(xiàn)在系統(tǒng)中的程序。SDM 24a…24o可在主要存儲(chǔ)器、輔助存儲(chǔ)器的站點(diǎn)或者獨(dú)立的站點(diǎn)和系統(tǒng)中實(shí)現(xiàn)。
主數(shù)據(jù)集28包括所管理會(huì)話的列表,以及對(duì)于所管理的每個(gè)會(huì)話的對(duì)這個(gè)會(huì)話中卷的最新更新時(shí)間。主數(shù)據(jù)集28可位于存儲(chǔ)器20a…20n、22a…22n的卷中。對(duì)于主要/輔助控制對(duì)的日志數(shù)據(jù)集可位于任何設(shè)備中。在圖1中,每個(gè)SDM 24a…24n,24o是一個(gè)會(huì)話的一部分,該會(huì)話的信息是在主數(shù)據(jù)集28中進(jìn)行指示的。每個(gè)會(huì)話可指定一個(gè)或多個(gè)SDM 24a…24n。主數(shù)據(jù)集28進(jìn)一步維持用于正在由鏡像程序4所管理的復(fù)制操作的會(huì)話信息。
鏡像SDM 24o與鏡像系統(tǒng)2進(jìn)行通信,以與使用第一復(fù)制技術(shù)(例如,耦合XRC(CXRC))通過(guò)SDM 24a…24n對(duì)一致性組的寫(xiě)操作一致的方式,對(duì)使用第二復(fù)制技術(shù)(例如,全局鏡像)的、針對(duì)日志卷8和輔助存儲(chǔ)器12的一致性組20的形成以及傳輸進(jìn)行協(xié)調(diào)。SDM24o向鏡像會(huì)話的主數(shù)據(jù)集28寫(xiě)入鏡像日志時(shí)間,其指示主要存儲(chǔ)器6更新的最新形成的一致性組的時(shí)間,以復(fù)制到日志卷8中。在特定的實(shí)施方式中,第一復(fù)制技術(shù)可在基本上高于第二復(fù)制技術(shù)的頻率上形成一致性組,第二復(fù)制技術(shù)在停止對(duì)主要存儲(chǔ)器6的I/O時(shí)形成一致性組。此外,SDM 24a…24n可以基本上高于對(duì)鏡像程序4形成的一致性組的主數(shù)據(jù)集28中進(jìn)行記錄的更新時(shí)間的頻率在主數(shù)據(jù)集28中記錄更新。
網(wǎng)絡(luò)30提供在SDM 24a…24n,24o、存儲(chǔ)器20a…20n、22a…22n、主數(shù)據(jù)集28以及系統(tǒng)定時(shí)器32之間的通信。系統(tǒng)定時(shí)器30為更新提供時(shí)間戳,以保證在所有SDM 24a…24o之間使用通用的時(shí)間,以及為向卷中寫(xiě)入更新的應(yīng)用程序提供通用時(shí)間參考,以保證按照順序?qū)Ω聢?zhí)行鏡像。一旦日志26a…26n以及日志卷8中的更新組織在一致性組中,就使用不同的復(fù)制技術(shù)將一致性內(nèi)的更新應(yīng)用于輔助存儲(chǔ)器22a…22n以及12。一致性組的創(chuàng)建保證系統(tǒng)將數(shù)據(jù)實(shí)時(shí)地映像到遠(yuǎn)程站點(diǎn)并且對(duì)于任何類(lèi)型數(shù)據(jù)具有更新序列完整性。使用一致性組保證在會(huì)話內(nèi)應(yīng)用于輔助存儲(chǔ)器12和22a…22n的更新遵照一致性組的一致性時(shí)間,并且在會(huì)話之間是一致的。如果在將更新從日志寫(xiě)入輔助存儲(chǔ)器22a....22n的輔助卷時(shí)發(fā)生故障,則在恢復(fù)期間,在系統(tǒng)故障期間中斷的更新可以從日志中恢復(fù),并且重新應(yīng)用于輔助卷。這樣,在作為時(shí)間點(diǎn)的恢復(fù)期間,數(shù)據(jù)在會(huì)話內(nèi)以及在會(huì)話之間是一致的。
網(wǎng)絡(luò)14和網(wǎng)絡(luò)30可能是獨(dú)立的網(wǎng)絡(luò),其通過(guò)一個(gè)或多個(gè)交換機(jī)或者同一網(wǎng)絡(luò)的一部分相連。網(wǎng)絡(luò)14和網(wǎng)絡(luò)30可包括存儲(chǔ)局域網(wǎng)(SAN)、局域網(wǎng)(LAN)、內(nèi)聯(lián)網(wǎng)、互聯(lián)網(wǎng)、廣域網(wǎng)(WAN)、點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò),等等。存儲(chǔ)器20a…20n、22a…22n可包括存儲(chǔ)設(shè)備陣列,例如,磁盤(pán)束(JBOD)、直接訪問(wèn)存儲(chǔ)設(shè)備(DASD)、獨(dú)立磁盤(pán)冗余陣列(RAID)、虛擬設(shè)備、磁帶存儲(chǔ)器、閃速存儲(chǔ)器,等等。
圖2說(shuō)明維持在一個(gè)會(huì)話50的主數(shù)據(jù)集28中的信息的一個(gè)實(shí)施方式。會(huì)話可包括由一個(gè)或多個(gè)SDM 24a…24n管理的主要-輔助卷對(duì)以及由鏡像程序4管理的卷對(duì)的操作。會(huì)話更新信息50包括會(huì)話標(biāo)識(shí)符52以及包括在一致性組中的最近更新時(shí)間54。對(duì)于SDM24a…24n管理的復(fù)制操作,時(shí)間54包括添加到日志26a…26n的一致性組中的最近更新的時(shí)間。對(duì)于鏡像程序4管理的復(fù)制操作,最近更新時(shí)間54可包括一致性組10在日志卷8中形成的時(shí)間。對(duì)于第二復(fù)制技術(shù),例如,全局鏡像,一致性組10的這個(gè)時(shí)間可包括鏡像程序4停止對(duì)主要存儲(chǔ)器6的I/O以形成新一致性組的時(shí)間。
圖3說(shuō)明使用第一復(fù)制技術(shù),例如,XRC、CXRC等等,對(duì)不同的會(huì)話復(fù)制數(shù)據(jù)的通過(guò)SDM 24a…24n所進(jìn)行操作的一個(gè)實(shí)施方式。響應(yīng)于發(fā)起復(fù)制操作(框100),SDM 24a…24n使用第一復(fù)制技術(shù)(XRC)形成(框102)具有對(duì)于主要存儲(chǔ)器位置的更新的一致性組。如上所述,SDM 24a…24n可通過(guò)從主要存儲(chǔ)器20a…20n向在那里形成一致性組的日志26a…26n讀取更新,來(lái)形成一致性組。SDM 24a…24n在主數(shù)據(jù)集28中指示(框104)添加到日志26a…26n的一致性組中的更新時(shí)間。SDM 24a…24n可周期性地輪詢(框106)主數(shù)據(jù)集28,以確定參考時(shí)間(最大會(huì)話更新時(shí)間54中的最小值)。SDM 24a…24n將日志26a…26n中的一致性組復(fù)制到(框108)時(shí)間戳小于或者等于所確定參考時(shí)間的輔助存儲(chǔ)器22a…22n中。
圖4說(shuō)明鏡像程序4和鏡像SDM 24o所執(zhí)行的用以協(xié)調(diào)鏡像程序4如何將一致性組10復(fù)制到輔助存儲(chǔ)器12以保證輔助存儲(chǔ)器12、22a…22n具有與時(shí)間點(diǎn)一致,也就是在會(huì)話以及不同的復(fù)制技術(shù)之間保持一致性的一致性組的一個(gè)實(shí)施方式。鏡像程序4執(zhí)行框200-208中的操作,鏡像SDM 24o執(zhí)行框230-240中的操作。當(dāng)鏡像程序4停止(在塊200中)從主機(jī)對(duì)主要存儲(chǔ)器22a…22n的I/O訪問(wèn)以形成新的一致性組位圖時(shí),控制在框200-208處開(kāi)始,其中,用于最后形成的一致性組的位圖包括失步位圖,指示主要存儲(chǔ)器6中要復(fù)制到日志卷8中的更新,在日志卷8中形成有一致性組10。響應(yīng)于建立一致性組,鏡像程序4提供(在框202中)對(duì)鏡像SDM 24o的關(guān)注。響應(yīng)于這種關(guān)注,鏡像SDM 24o基于系統(tǒng)定時(shí)器32向鏡像SDM會(huì)話的主數(shù)據(jù)集28寫(xiě)入(在框230中)時(shí)間戳(鏡像日志時(shí)間)。寫(xiě)入到主數(shù)據(jù)集28中的鏡像日志時(shí)間包括正在將其中的更新從主要存儲(chǔ)器6復(fù)制到日志卷8中的一致性組10的時(shí)間。鏡像SDM 24o返回(在框232中)鏡像程序4繼續(xù)。
響應(yīng)于該繼續(xù)進(jìn)行,鏡像程序4將最后形成的一致性組(其軌道可在生成新一致性組的位圖時(shí)形成的失步位圖中進(jìn)行指示)的更新從主要存儲(chǔ)器20a…20n復(fù)制(在框204中)到日志卷8,以在日志卷8中形成最后完成的一致性組10。響應(yīng)于將所有更新集中在日志卷8的一致性組10中,鏡像程序4向鏡像SDM 24o發(fā)送(在框206中)提交請(qǐng)求。響應(yīng)于接收到提交請(qǐng)求(在框234中),鏡像SDM 24o輪詢(在框236中)主數(shù)據(jù)集28,以確定鏡像日志時(shí)間(鏡像程序4所形成的最后一致性組完成的時(shí)間)何時(shí)小于參考時(shí)間(不同會(huì)話,包括鏡像會(huì)話的最大更新時(shí)間戳的最小值)。如果(在框238中)主數(shù)據(jù)集28中的鏡像日志時(shí)間并不小于參考時(shí)間,則控制返回到框236,以繼續(xù)進(jìn)行輪詢。否則,如果(在框238中)主數(shù)據(jù)集28中的鏡像日志時(shí)間小于參考時(shí)間,則鏡像SDM 24o向鏡像程序4發(fā)送信號(hào)(在框240中),以將一致性組10復(fù)制到輔助存儲(chǔ)器12。響應(yīng)于這個(gè)信號(hào),鏡像程序4發(fā)起一致性組10從日志卷8到輔助存儲(chǔ)器12的復(fù)制(在框208)中。如上所述,塊208中一致性組10的復(fù)制操作可包括邏輯復(fù)制操作,例如,快照復(fù)制操作。
圖3和圖4的操作考慮到對(duì)每個(gè)會(huì)話的最近更新的最小值。這保證,當(dāng)將一個(gè)一致性組內(nèi)的更新應(yīng)用于輔助卷時(shí),日志26a…26n和日志卷8在所有會(huì)話之間維持在該更新正被應(yīng)用的時(shí)間之前出現(xiàn)的所有更新。這樣,如果發(fā)生故障,可以從日志恢復(fù)更新,以使得所有會(huì)話之間以及復(fù)制技術(shù)之間恢復(fù)的更新在單個(gè)時(shí)間點(diǎn)上是一致的。在特定的實(shí)施方式中,只對(duì)于具有寫(xiě)入到日志中的更新的那些會(huì)話考慮其它會(huì)話的最近更新時(shí)間。如果會(huì)話還不具有寫(xiě)入到日志中的更新,則在保證更新在會(huì)話之間一致時(shí)將不考慮那個(gè)會(huì)話。這樣,直至至少將數(shù)據(jù)所依賴的早先數(shù)據(jù)寫(xiě)入到日志中,依賴于早先數(shù)據(jù)的依賴性數(shù)據(jù)才能應(yīng)用于輔助卷。
所述實(shí)施方式提供了如下技術(shù),該技術(shù)保證將使用不同復(fù)制技術(shù)形成的一致性組中的更新復(fù)制到輔助存儲(chǔ)器位置,以維持會(huì)話和復(fù)制技術(shù)之間的數(shù)據(jù)一致性,包括使用不同的技術(shù)和方法來(lái)形成一致性組以及以不同的頻率形成一致性組的復(fù)制技術(shù)。
所述操作可使用標(biāo)準(zhǔn)編程和/或工程技術(shù)實(shí)現(xiàn)為一種方法、裝置或者制造品,以產(chǎn)生軟件、固件、硬件或者其任意組合。所述操作可實(shí)現(xiàn)為維持在“計(jì)算機(jī)可讀介質(zhì)”中的代碼,其中處理器可從計(jì)算機(jī)可讀介質(zhì)中讀取代碼以及執(zhí)行代碼。計(jì)算機(jī)可讀介質(zhì)可包括媒體,例如,磁存儲(chǔ)器介質(zhì)(例如,硬盤(pán)驅(qū)動(dòng)器、軟盤(pán)、磁帶,等等)、光存儲(chǔ)器(CD-ROM、DVD、光盤(pán),等等)、易失性以及非易失性存儲(chǔ)器設(shè)備(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、閃速存儲(chǔ)器、固件、可編程邏輯,等等)等。實(shí)現(xiàn)所述操作的代碼可以進(jìn)一步實(shí)現(xiàn)在硬件邏輯(例如,集成電路芯片、可編程門(mén)陣列(PGA)、專(zhuān)用集成電路(ASIC)等等)中。此外,實(shí)現(xiàn)所述操作的代碼可實(shí)現(xiàn)在“傳輸信號(hào)”中,其中傳輸信號(hào)可在空間或者傳輸介質(zhì),例如,光纖、銅線等中進(jìn)行傳播。代碼或者邏輯在其中進(jìn)行編碼的傳輸信號(hào)可進(jìn)一步包括無(wú)線信號(hào)、衛(wèi)星傳輸、無(wú)線電波、紅外信號(hào)、藍(lán)牙等等。代碼或者邏輯在其中進(jìn)行編碼的傳輸信號(hào)能夠由發(fā)射臺(tái)發(fā)射,并且由接收臺(tái)接收,其中,對(duì)在傳輸信號(hào)中進(jìn)行編碼的代碼或者邏輯進(jìn)行解碼,并且將其存儲(chǔ)在接收和發(fā)射臺(tái)或設(shè)備的硬件或者計(jì)算機(jī)可讀介質(zhì)中?!爸圃炱贰卑ㄓ?jì)算機(jī)可讀介質(zhì)、硬件邏輯、和/或可在其中實(shí)現(xiàn)代碼的傳輸信號(hào)。實(shí)現(xiàn)所述操作的實(shí)施方式的代碼在其中進(jìn)行編碼的設(shè)備可以包括計(jì)算機(jī)可讀介質(zhì)或者硬件邏輯。當(dāng)然,本領(lǐng)域中熟練的技術(shù)人員將了解到,在不偏離本發(fā)明范圍的前提下可對(duì)這種配置進(jìn)行多種修改,而且,制造品可包括本領(lǐng)域中已知的適當(dāng)信息承載介質(zhì)。
除非明確指出,術(shù)語(yǔ)“一個(gè)實(shí)施方式”、“實(shí)施方式”、“多個(gè)實(shí)施方式”、“該實(shí)施方式”、“這些實(shí)施方式”、“一個(gè)或多個(gè)實(shí)施方式”、“某些實(shí)施方式”以及“一個(gè)實(shí)施方式”表示“本發(fā)明的一個(gè)或多個(gè)(但并非全部)實(shí)施方式”。
除非明確指出,術(shù)語(yǔ)“包括”、“包含”、“具有”及其變型表示“包括但不限于”。
除非明確指出,所列舉的項(xiàng)目列表并不表示所有的項(xiàng)目。
除非明確指出,術(shù)語(yǔ)“一個(gè)”、“這個(gè)”表示“一個(gè)或多個(gè)”。
除非明確指出,彼此之間相互通信的設(shè)備不需要彼此進(jìn)行連續(xù)通信。另外,彼此之間相互通信的設(shè)備可直接或者通過(guò)一個(gè)或多個(gè)中介間接通信。
多個(gè)組件彼此相互通信的實(shí)施方式的描述并不表示所有這些組件都是必須的。相反地,描述了多種可選組件,以說(shuō)明本發(fā)明可能實(shí)施方式的廣泛范圍。
此外,盡管過(guò)程步驟、方法步驟、算法等等可按照順序進(jìn)行描述,但是,這種過(guò)程、方法和算法可配置為按照可替換的順序進(jìn)行工作。換句話說(shuō),可能被描述的步驟的任何序列或者順序不必表示按照那個(gè)順序執(zhí)行各個(gè)步驟。在這里所述過(guò)程的步驟可按照任何可能的順序進(jìn)行執(zhí)行。此外,某些步驟可同時(shí)執(zhí)行。
當(dāng)在這里描述單個(gè)設(shè)備或者制造品時(shí),顯然,可使用多個(gè)設(shè)備/制造品(其是否可進(jìn)行組合)來(lái)代替單個(gè)設(shè)備/制造品。相似地,當(dāng)在這里描述多個(gè)設(shè)備或者制造品(其是否可進(jìn)行組合)時(shí),顯然,可使用單個(gè)設(shè)備/制造品來(lái)代替多個(gè)設(shè)備或制造品,或者可使用不同數(shù)量的設(shè)備/制造品代替所示數(shù)量的設(shè)備或者程序。設(shè)備的功能和/或特性可以可選地由一個(gè)或多個(gè)未明確描述的具有這種功能/特性的其它設(shè)備實(shí)現(xiàn)。從而,本發(fā)明的其它實(shí)施方式不必包括設(shè)備本身。
圖3和4所說(shuō)明的操作表示以特定順序發(fā)生的特定事件。在可選的實(shí)施方式中,可以不同的順序執(zhí)行特定的操作,進(jìn)行修改或者取消。而且,可向上述的邏輯中添加步驟,并且仍然符合所述的實(shí)施方式。此外,在這里描述的操作可順序發(fā)生或者特定的操作可并行執(zhí)行。此外,操作可由單個(gè)處理單元執(zhí)行或者由分布式處理單元執(zhí)行。
本發(fā)明多個(gè)實(shí)施方式的前述說(shuō)明用于說(shuō)明和描述的目的。其并不旨在將本發(fā)明限制在所公開(kāi)的特定形式。根據(jù)上述教導(dǎo),多種修改和變形是可能的。旨在本發(fā)明的范圍不由這個(gè)詳細(xì)的描述進(jìn)行限制,而是由所附權(quán)利要求書(shū)進(jìn)行限制。上述說(shuō)明書(shū)、實(shí)例和數(shù)據(jù)提供對(duì)本發(fā)明組成的實(shí)現(xiàn)和使用的描述。由于可以在不偏離本發(fā)明的原理和范圍的前提下實(shí)現(xiàn)本發(fā)明的多個(gè)實(shí)施方式,本發(fā)明體現(xiàn)在其后所附權(quán)利要求書(shū)中。
權(quán)利要求
1.一種實(shí)現(xiàn)在包括主要存儲(chǔ)器位置和輔助存儲(chǔ)器位置的網(wǎng)絡(luò)中的系統(tǒng),包括數(shù)據(jù)結(jié)構(gòu);第一系統(tǒng),包括第一復(fù)制程序,使該第一系統(tǒng)執(zhí)行操作,該操作包括使用第一復(fù)制技術(shù)形成具有對(duì)于至少一個(gè)該主要存儲(chǔ)器位置的更新的更新組,其中,將該更新組中的更新復(fù)制到至少一個(gè)該輔助存儲(chǔ)器位置;以及響應(yīng)于在使用該第一復(fù)制技術(shù)形成的其中一個(gè)更新組中包括更新,在該數(shù)據(jù)結(jié)構(gòu)中指示該更新的時(shí)間;以及第二系統(tǒng),包括第二復(fù)制程序,使該第二系統(tǒng)執(zhí)行如下操作,包括使用第二復(fù)制技術(shù)形成具有對(duì)于至少一個(gè)該主要存儲(chǔ)器位置的更新的更新組,其中,將更新組中的更新復(fù)制到至少一個(gè)該輔助存儲(chǔ)器位置;以及在該數(shù)據(jù)結(jié)構(gòu)中指示使用該第二復(fù)制技術(shù)形成的該更新組的時(shí)間。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,該第一復(fù)制程序進(jìn)一步能夠進(jìn)行如下操作,該操作包括基于在該數(shù)據(jù)結(jié)構(gòu)中指示的時(shí)間,確定具有小于參考時(shí)間的所有更新組;以及發(fā)起操作,以將該確定更新組中的更新復(fù)制到其輔助存儲(chǔ)器位置,其中,該所確定的更新組能夠包括使用該第一和第二復(fù)制技術(shù)形成的更新組。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其中,該更新組包括一致性組,進(jìn)一步包括多個(gè)第一系統(tǒng),其中,每個(gè)第一系統(tǒng)使用該第一復(fù)制程序的一個(gè)實(shí)例,以形成要從該主要存儲(chǔ)器位置復(fù)制到該輔助存儲(chǔ)器位置的更新的一致性組,其中,該第一復(fù)制程序的實(shí)例進(jìn)一步執(zhí)行對(duì)于每個(gè)系統(tǒng)數(shù)據(jù)移動(dòng)器,確定在該數(shù)據(jù)結(jié)構(gòu)中指示的最大時(shí)間,其中,該參考時(shí)間包括該所確定最大時(shí)間中的最小值,以及在數(shù)據(jù)結(jié)構(gòu)中指示的、由第二復(fù)制技術(shù)所形成的一致性組的時(shí)間。
4.根據(jù)權(quán)利要求3所述的系統(tǒng),進(jìn)一步包括第三系統(tǒng),包括第三復(fù)制程序,其執(zhí)行如下操作,該操作包括響應(yīng)于確定在數(shù)據(jù)結(jié)構(gòu)中指示的、用于使用第二復(fù)制技術(shù)形成的一致性組的時(shí)間小于該參考時(shí)間,向該第二系統(tǒng)發(fā)送信號(hào),以將使用該第二復(fù)制技術(shù)形成的一致性組中的更新復(fù)制到該輔助存儲(chǔ)器位置。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,該更新組包括一致性組,其中,該第一復(fù)制程序使用該第一復(fù)制技術(shù)通過(guò)將該更新讀取到該主要存儲(chǔ)器位置形成一致性組,其中,該第一復(fù)制程序在該數(shù)據(jù)結(jié)構(gòu)中指示添加到一個(gè)一致性組中的最近更新的時(shí)間,以及其中,該第二復(fù)制程序使用該第二復(fù)制技術(shù)通過(guò)停止應(yīng)用對(duì)源存儲(chǔ)器位置的訪問(wèn),形成新的一致性組。
6.一種方法,包括使用第一復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組,其中,將該更新組中的更新復(fù)制到輔助存儲(chǔ)器位置;使用第二復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組,其中,將該更新組中的更新復(fù)制到輔助存儲(chǔ)器位置;響應(yīng)于在使用該第一復(fù)制技術(shù)形成的其中一個(gè)更新組中包括更新,在數(shù)據(jù)結(jié)構(gòu)中指示該更新的時(shí)間;以及在該數(shù)據(jù)結(jié)構(gòu)中指示使用該第二復(fù)制技術(shù)形成的該更新組的時(shí)間。
7.根據(jù)權(quán)利要求6所述的方法,進(jìn)一步包括基于在該數(shù)據(jù)結(jié)構(gòu)中指示的時(shí)間,確定具有小于參考時(shí)間的所有更新組;以及發(fā)起操作,以將該所確定更新組中的更新復(fù)制到其輔助存儲(chǔ)器位置,其中,該所確定的更新組能夠包括使用該第一和第二復(fù)制技術(shù)形成的更新組。
8.根據(jù)權(quán)利要求7所述的方法,其中,該更新組包括一致性組,其中,多個(gè)系統(tǒng)數(shù)據(jù)移動(dòng)器使用該第一復(fù)制程序,以形成要從該主要存儲(chǔ)器位置復(fù)制到該輔助存儲(chǔ)器位置的更新的一致性組,進(jìn)一步包括對(duì)于該系統(tǒng)數(shù)據(jù)移動(dòng)器的每一個(gè),確定在該數(shù)據(jù)結(jié)構(gòu)中指示的最大時(shí)間,其中,該參考時(shí)間包括該所確定最大時(shí)間中的最小值,以及在該數(shù)據(jù)結(jié)構(gòu)中指示的、由該第二復(fù)制技術(shù)所形成的一致性組的時(shí)間。
9.根據(jù)權(quán)利要求8所述的方法,其中,該第二復(fù)制技術(shù)系統(tǒng)使用該第二復(fù)制技術(shù)形成一致性組,進(jìn)一步包括響應(yīng)于確定在該數(shù)據(jù)結(jié)構(gòu)中指示的、用于使用該第二復(fù)制技術(shù)形成的一致性組的時(shí)間小于該參考時(shí)間,向該第二復(fù)制技術(shù)系統(tǒng)發(fā)送信號(hào),將使用該第二復(fù)制技術(shù)形成的一致性組中的更新復(fù)制到該輔助存儲(chǔ)器位置。
10.根據(jù)權(quán)利要求6所述的方法,其中,該更新組包括一致性組,其中,該第一復(fù)制程序通過(guò)系統(tǒng)數(shù)據(jù)移動(dòng)器將更新讀取到該主要存儲(chǔ)器位置來(lái)形成一致性組,其中,該系統(tǒng)數(shù)據(jù)移動(dòng)器在該數(shù)據(jù)結(jié)構(gòu)中指示添加到一個(gè)一致性組中的最近更新的時(shí)間,以及其中,該第二復(fù)制技術(shù)通過(guò)停止應(yīng)用對(duì)源存儲(chǔ)器位置的訪問(wèn),形成新的一致性組。
全文摘要
提供一種方法、系統(tǒng)和程序,用于在使用不同的復(fù)制技術(shù)執(zhí)行數(shù)據(jù)鏡像時(shí)保持一致性。使用第一復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組。將更新組中的更新復(fù)制到輔助存儲(chǔ)器位置。使用第二復(fù)制技術(shù)形成具有對(duì)于主要存儲(chǔ)器位置的更新的更新組,其中,將更新組中的更新復(fù)制到輔助存儲(chǔ)器位置。響應(yīng)于在使用第一復(fù)制技術(shù)形成的其中一個(gè)更新組中包括更新,在數(shù)據(jù)結(jié)構(gòu)中指示更新的時(shí)間。還在數(shù)據(jù)結(jié)構(gòu)中指示使用第二復(fù)制技術(shù)形成的更新組的時(shí)間。
文檔編號(hào)G06F11/14GK1996309SQ20071000150
公開(kāi)日2007年7月11日 申請(qǐng)日期2007年1月4日 優(yōu)先權(quán)日2006年1月3日
發(fā)明者羅伯特·弗雷德里克·克恩, 肯尼思·韋恩·博伊德, 格雷戈里·愛(ài)德華·麥克布賴德, 蓋爾·安德烈亞·斯皮爾, 威廉·弗蘭克·米克卡, 肯尼思·費(fèi)爾克拉夫·戴三世, 羅伯特·弗朗西斯·巴特費(fèi) 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司