本發(fā)明涉及數(shù)據(jù)復(fù)制,具體來(lái)說(shuō),涉及用于創(chuàng)建數(shù)據(jù)的時(shí)間點(diǎn)拷貝(point-in-timecopy)同時(shí)最小化數(shù)據(jù)副本的設(shè)備和方法。
背景技術(shù):可以使用諸如HitachiShadowImage等等之類的數(shù)據(jù)復(fù)制功能來(lái)生成邏輯卷或數(shù)據(jù)集的幾乎瞬時(shí)的時(shí)間點(diǎn)拷貝。除了別的用途之外,這些時(shí)間點(diǎn)拷貝可以用于災(zāi)難恢復(fù)和業(yè)務(wù)連續(xù)性目的。IBMFlashCopy特別通過(guò)在源卷和目標(biāo)卷之間建立關(guān)系(或“映射”)來(lái)創(chuàng)建時(shí)間點(diǎn)拷貝。一旦建立了此關(guān)系,可以從源卷或者目標(biāo)卷中讀取數(shù)據(jù)。與目標(biāo)卷相關(guān)聯(lián)的目標(biāo)位圖跟蹤哪些數(shù)據(jù)磁道已經(jīng)實(shí)際從源卷被復(fù)制到目標(biāo)卷。在某些情況下,卷可以呈現(xiàn)級(jí)聯(lián)配置,以便某些卷同時(shí)充當(dāng)目標(biāo)和源。在其他情況下,卷可以呈現(xiàn)平的(或“多目標(biāo)”)配置,以便一個(gè)源卷與多個(gè)目標(biāo)卷具有關(guān)系。盡管如此,I/O性能可以隨著卷的數(shù)量在級(jí)聯(lián)或者多目標(biāo)配置中增大而顯著受到影響。例如,在級(jí)聯(lián)配置中,向源卷的寫入,在可以執(zhí)行寫入之前,可能需要等待在級(jí)聯(lián)中的各種卷之間復(fù)制數(shù)據(jù)。如此,級(jí)聯(lián)中的卷的數(shù)量越大,在數(shù)據(jù)可以被寫入到源卷之前需要發(fā)生的復(fù)制的數(shù)量就越大。類似地,在多目標(biāo)配置中,向源卷的寫入,在可以執(zhí)行寫入之前,可能需要等待數(shù)據(jù)被復(fù)制到每一個(gè)連接的目標(biāo)。多目標(biāo)配置中的卷的數(shù)量越大,在數(shù)據(jù)可以被寫入到源卷之前需要發(fā)生的復(fù)制的數(shù)量就越大。這會(huì)使得向源卷的寫入非常慢。因此,當(dāng)前FlashCopy實(shí)現(xiàn)在多目標(biāo)配置中通常只允許有限數(shù)量的目標(biāo),以使性能影響保持在可接受的范圍內(nèi)。鑒于前面的內(nèi)容,所需要的是降低在級(jí)聯(lián)或多目標(biāo)配置中具有大數(shù)量卷的性能影響的方法。例如,需要當(dāng)執(zhí)行讀和寫時(shí)減少級(jí)聯(lián)或多目標(biāo)配置中的數(shù)據(jù)重復(fù)的方法。進(jìn)一步需要有效率地刪除級(jí)聯(lián)或多目標(biāo)配置中的關(guān)系的方法。因此,有解決如前所述的問(wèn)題的需要。
技術(shù)實(shí)現(xiàn)要素:本發(fā)明是響應(yīng)于當(dāng)前現(xiàn)有技術(shù)狀況而開發(fā)的,具體來(lái)說(shuō),響應(yīng)于當(dāng)前現(xiàn)有技術(shù)中的當(dāng)前可用的方法還沒有完全解決的問(wèn)題和需求而開發(fā)的。相應(yīng)地,開發(fā)了本發(fā)明以提供用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和省空間的目標(biāo)之間的關(guān)系的方法、設(shè)備、計(jì)算機(jī)程序產(chǎn)品和計(jì)算機(jī)程序。通過(guò)下面的描述和所附的權(quán)利要求,本發(fā)明的特點(diǎn)和優(yōu)點(diǎn)將變得顯而易見,或者,如下面所描述的,也可以通過(guò)本發(fā)明的實(shí)踐來(lái)了解本發(fā)明的特點(diǎn)和優(yōu)點(diǎn)。根據(jù)前面的內(nèi)容,公開了一種用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和目標(biāo)之間的關(guān)系的方法。所述多目標(biāo)體系結(jié)構(gòu)包括源和映射到其上的多個(gè)省空間的(SE)目標(biāo)。在一個(gè)實(shí)施例中,所述方法包括最初標(biāo)識(shí)用于從多目標(biāo)體系結(jié)構(gòu)中刪除的關(guān)系。然后,標(biāo)識(shí)與所述關(guān)系相關(guān)聯(lián)的省空間的(SE)目標(biāo)。映射結(jié)構(gòu)將SE目標(biāo)的邏輯磁道中的數(shù)據(jù)映射到儲(chǔ)存庫(kù)的物理磁道。然后,所述方法標(biāo)識(shí)從SE目標(biāo)繼承數(shù)據(jù)的同輩SE目標(biāo)。一旦標(biāo)識(shí)了SE目標(biāo)和同輩SE目標(biāo),所述方法修改映射結(jié)構(gòu),以便將儲(chǔ)存庫(kù)的物理磁道中的數(shù)據(jù)映射到同輩SE目標(biāo)的邏輯磁道。然后,刪除源和SE目標(biāo)之間的關(guān)系。從第一方面來(lái)看,本發(fā)明提供了一種用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和省空間的(SE)目標(biāo)之間的關(guān)系的方法,所述多目標(biāo)體系結(jié)構(gòu)包括源和映射到其上的多個(gè)SE目標(biāo),所述方法包括:標(biāo)識(shí)用于從多目標(biāo)體系結(jié)構(gòu)中刪除的第一關(guān)系;標(biāo)識(shí)與所述第一關(guān)系相關(guān)聯(lián)的省空間的(SE)目標(biāo),其中,映射結(jié)構(gòu)將所述SE目標(biāo)的邏輯磁道中的數(shù)據(jù)映射到儲(chǔ)存庫(kù)的物理磁道;標(biāo)識(shí)從所述SE目標(biāo)繼承數(shù)據(jù)的同輩SE目標(biāo);修改所述映射結(jié)構(gòu)以將所述儲(chǔ)存庫(kù)的物理磁道中的所述數(shù)據(jù)映射到所述同輩SE目標(biāo)的邏輯磁道;以及刪除所述第一關(guān)系。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和省空間的(SE)目標(biāo)之間的關(guān)系的計(jì)算機(jī)程序產(chǎn)品,所述多目標(biāo)體系結(jié)構(gòu)包括源和映射到其上的多個(gè)SE目標(biāo),所述計(jì)算機(jī)程序產(chǎn)品包括:可以由處理電路讀取的并存儲(chǔ)由所述處理電路執(zhí)行以便執(zhí)行用于執(zhí)行本發(fā)明的步驟的方法的指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上并可加載到數(shù)字計(jì)算機(jī)的內(nèi)部存儲(chǔ)器的計(jì)算機(jī)程序,包括軟件代碼部分,當(dāng)所述程序在計(jì)算機(jī)上運(yùn)行時(shí),所述軟件代碼部分用于執(zhí)行本發(fā)明的步驟。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和省空間的(SE)目標(biāo)之間的關(guān)系的設(shè)備,所述多目標(biāo)體系結(jié)構(gòu)包括源和映射到其上的多個(gè)SE目標(biāo),所述設(shè)備包括:用于標(biāo)識(shí)用于從多目標(biāo)體系結(jié)構(gòu)中刪除的第一關(guān)系的標(biāo)識(shí)組件;所述標(biāo)識(shí)組件進(jìn)一步可操作用于標(biāo)識(shí)與所述第一關(guān)系相關(guān)聯(lián)的省空間的(SE)目標(biāo),其中,映射結(jié)構(gòu)將所述SE目標(biāo)的邏輯磁道中的數(shù)據(jù)映射到儲(chǔ)存庫(kù)的物理磁道;所述標(biāo)識(shí)組件進(jìn)一步可操作用于標(biāo)識(shí)從所述SE目標(biāo)繼承數(shù)據(jù)的同輩SE目標(biāo);用于修改所述映射結(jié)構(gòu)以將所述儲(chǔ)存庫(kù)的物理磁道中的所述數(shù)據(jù)映射到所述同輩SE目標(biāo)的邏輯磁道的修改組件;以及用于刪除所述第一關(guān)系的刪除組件。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于在多目標(biāo)體系結(jié)構(gòu)中執(zhí)行向目標(biāo)卷(目標(biāo)x)的寫入的方法,所述多目標(biāo)卷體系結(jié)構(gòu)包括源卷和映射到其上的多個(gè)目標(biāo)卷,所述方法包括:確定目標(biāo)x是否具有最近的較年長(zhǎng)的同輩(COS),其中所述COS是緊接在所述目標(biāo)x前面建立的目標(biāo)卷;確定所述目標(biāo)x和所述COS中的每一個(gè)的目標(biāo)位圖(TBM)是否被置位;如果所述COS和所述目標(biāo)x兩者的TBM都被置位,則將數(shù)據(jù)從較高源(HS)卷復(fù)制到所述COS;如果所述COS的TBM被置位,而所述目標(biāo)x的TBM未被置位,則將所述數(shù)據(jù)從所述目標(biāo)x復(fù)制到所述COS;以及執(zhí)行向所述目標(biāo)x的寫入。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于在多目標(biāo)體系結(jié)構(gòu)中對(duì)目標(biāo)卷(目標(biāo)x)執(zhí)行讀取的方法,所述多目標(biāo)卷體系結(jié)構(gòu)包括源卷和映射到其上的多個(gè)目標(biāo)卷,所述方法包括:讀取與所述目標(biāo)x相關(guān)聯(lián)的目標(biāo)位圖(TBM);確定所述TBM是否置位;如果所述TBM被置位,則從較高源(HS)卷讀取數(shù)據(jù),其中從所述HS卷讀取數(shù)據(jù)包括:查找與所述目標(biāo)x相關(guān)聯(lián)的源卷;通過(guò)檢測(cè)所述源卷上的生成號(hào)(GN),查找相對(duì)于所述目標(biāo)x的下一較年輕的同輩;以及如果與下一較年輕的同輩相關(guān)聯(lián)的TBM未被置位,則從所述下一較年輕的同輩讀取所述數(shù)據(jù)。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于在多目標(biāo)體系結(jié)構(gòu)中執(zhí)行向源卷的寫入的方法,所述多目標(biāo)卷體系結(jié)構(gòu)包括源卷和映射到其上的多個(gè)目標(biāo)卷,所述方法包括:將所述源卷的磁道中的數(shù)據(jù)復(fù)制到被映射到所述源卷的目標(biāo)卷(目標(biāo)x);允許被映射到所述源卷的至少一個(gè)同輩目標(biāo)卷(同輩)從所述目標(biāo)x繼承所述數(shù)據(jù);以及執(zhí)行向所述源卷的磁道的寫入。從再一個(gè)方面來(lái)看,本發(fā)明提供了一種用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和目標(biāo)之間的關(guān)系的方法,所述多目標(biāo)體系結(jié)構(gòu)包括源和映射到其上的多個(gè)目標(biāo),所述方法包括:標(biāo)識(shí)用于從多目標(biāo)體系結(jié)構(gòu)中刪除的第一關(guān)系;標(biāo)識(shí)與所述第一關(guān)系相關(guān)聯(lián)的目標(biāo);標(biāo)識(shí)從所述目標(biāo)繼承數(shù)據(jù)的同輩目標(biāo);將所述數(shù)據(jù)從所述目標(biāo)復(fù)制到所述同輩目標(biāo);以及刪除所述第一關(guān)系。附圖說(shuō)明現(xiàn)在將參考如下面的附圖所示的優(yōu)選實(shí)施例,只作為示例,對(duì)本發(fā)明進(jìn)行描述:圖1是示出了根據(jù)現(xiàn)有技術(shù)的包括各種類型的存儲(chǔ)系統(tǒng)的并且其中可以實(shí)現(xiàn)本發(fā)明的優(yōu)選實(shí)施例的網(wǎng)絡(luò)體系結(jié)構(gòu)的一個(gè)示例的高級(jí)框圖;圖2是示出了根據(jù)現(xiàn)有技術(shù)的方法并且其中可以實(shí)現(xiàn)本發(fā)明的優(yōu)選實(shí)施例的存儲(chǔ)系統(tǒng)的一個(gè)示例的高級(jí)框圖;圖3是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的包括被映射到多個(gè)目標(biāo)卷的源卷的多目標(biāo)體系結(jié)構(gòu)的一個(gè)示例的高級(jí)框圖;圖4是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于從目標(biāo)卷讀取磁道的方法的一個(gè)實(shí)施例的高級(jí)框圖;圖5是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于響應(yīng)于對(duì)源卷的寫入而復(fù)制數(shù)據(jù)磁道的方法的一個(gè)實(shí)施例的流程圖;圖6是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于響應(yīng)于對(duì)目標(biāo)卷的寫入而復(fù)制數(shù)據(jù)磁道的方法的一個(gè)實(shí)施例的流程圖;圖7是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于響應(yīng)于對(duì)卷的讀取而查找較高源(HS)卷的方法的一個(gè)實(shí)施例的流程圖;圖8是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于響應(yīng)于對(duì)卷的寫入而查找較高源(HS)卷的方法的一個(gè)實(shí)施例的流程圖;圖9是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的示出了使用生成號(hào)的多目標(biāo)體系結(jié)構(gòu)的一個(gè)示例的高級(jí)框圖;圖10和11是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的在對(duì)其進(jìn)行了各種寫入之后的圖9中所示出的卷的數(shù)據(jù)和TBM值的表;圖12A是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的源卷和目標(biāo)卷之間的關(guān)系的刪除的高級(jí)框圖;圖12B是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的源卷和省空間的(SE)目標(biāo)卷之間的關(guān)系的刪除的高級(jí)框圖;圖13是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的存儲(chǔ)器中的源和目標(biāo)關(guān)系條目的高級(jí)框圖;圖14是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于刪除多目標(biāo)體系結(jié)構(gòu)中的源和SE目標(biāo)之間的關(guān)系的方法的一個(gè)實(shí)施例的流程圖;圖15是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于處理刪除的關(guān)系的方法的一個(gè)實(shí)施例的流程圖;以及圖16是示出了根據(jù)本發(fā)明的優(yōu)選實(shí)施例的用于處理刪除的關(guān)系的方法的另一實(shí)施例的流程圖。具體實(shí)施方式可以容易地理解,本發(fā)明的組件,如通常所描述的和此處的圖中所示出的,可以以各種不同的配置來(lái)提供和設(shè)計(jì)。如此,如在圖中所表示的,本發(fā)明的優(yōu)選實(shí)施例的下列比較詳細(xì)的描述,不會(huì)限制本發(fā)明的范圍,如在權(quán)利要求中所敘述的,而僅是目前設(shè)想的根據(jù)本發(fā)明的優(yōu)選實(shí)施例的某些示例的代表。通過(guò)參考附圖,將最好地理解目前所描述的各實(shí)施例,其中,類似的部分通過(guò)類似的附圖標(biāo)記來(lái)表示。如本領(lǐng)域技術(shù)人員所了解的,本發(fā)明可以作為設(shè)備、系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品來(lái)實(shí)現(xiàn)。此外,本發(fā)明還可以采取硬件實(shí)施例、被配置成操作硬件的軟件實(shí)施例(包括固件、駐留軟件、微代碼等等),或組合了軟件和硬件方面的實(shí)施例的形式,此處它們所有的都可以一般地被稱為“模塊”或“系統(tǒng)”。此外,本發(fā)明還可以采取在任何有形的表達(dá)介質(zhì)中實(shí)現(xiàn)的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)的形式,在介質(zhì)上存儲(chǔ)了計(jì)算機(jī)可用程序代碼??梢允褂靡粋€(gè)或多個(gè)計(jì)算機(jī)可用或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的任何組合來(lái)存儲(chǔ)計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)可用或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是例如但不僅限于電子、磁、光、電磁、紅外、或半導(dǎo)體系統(tǒng)、設(shè)備或器件。更具體的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的示例(非窮盡列表)可以包括下列各項(xiàng):具有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦除可編程只讀存儲(chǔ)器(EPROM或閃存)、光纖、便攜式壓縮盤只讀存儲(chǔ)器(CDROM)、光存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備。在此文檔的上下文中,計(jì)算機(jī)可用或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是可以包含、存儲(chǔ)、或傳輸供指令執(zhí)行系統(tǒng)、設(shè)備或器件使用或與它們結(jié)合使用的程序的任何介質(zhì)。用于執(zhí)行本發(fā)明的操作的計(jì)算機(jī)程序代碼可以以一種或多種編程語(yǔ)言的任何組合來(lái)進(jìn)行編寫,包括諸如Smalltalk、C++等等之類的面向?qū)ο蟮木幊陶Z(yǔ)言,以及諸如“C”編程語(yǔ)言或類似的編程語(yǔ)言之類的常規(guī)過(guò)程編程語(yǔ)言。用于實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)程序代碼也可以以諸如匯編語(yǔ)言之類的低級(jí)別的編程語(yǔ)言來(lái)編寫。程序代碼可以作為獨(dú)立軟件包完全在用戶的計(jì)算機(jī)上,部分地在用戶的計(jì)算機(jī)上執(zhí)行,部分地在用戶的計(jì)算機(jī)上并且部分地在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行,或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后一種情況下,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任何網(wǎng)絡(luò)類型連接到用戶的計(jì)算機(jī),包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN),或者可以連接到外部計(jì)算機(jī)(例如,使用因特網(wǎng)服務(wù)提供商,通過(guò)因特網(wǎng))。Java以及所有基于Java的商標(biāo)和徽標(biāo)是Oracle和/或其附屬的商標(biāo)或注冊(cè)商標(biāo)。下文可以參考根據(jù)本發(fā)明的各實(shí)施例的方法、設(shè)備、系統(tǒng)、以及計(jì)算機(jī)程序產(chǎn)品的流程圖例示和/或框圖來(lái)描述本發(fā)明??梢岳斫?,流程圖例示和/或框圖的每個(gè)框,流程圖例示和/或框圖中的框的組合,都可以通過(guò)計(jì)算機(jī)程序指令或代碼來(lái)實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以被提供到通用計(jì)算機(jī)、專用計(jì)算機(jī)、或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生機(jī)器,以便通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在該流程圖和/或框圖的框中所指定的功能/動(dòng)作的裝置。計(jì)算機(jī)程序指令也可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,計(jì)算機(jī)程序指令可以指示計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式運(yùn)轉(zhuǎn),以便存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令產(chǎn)生一種包括了指令裝置的物品,該指令裝置實(shí)現(xiàn)了流程圖和/或框圖的框中所指定的功能/動(dòng)作。計(jì)算機(jī)程序指令也可以加載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備中,以使一系列操作步驟在計(jì)算機(jī)上或其他可編程設(shè)備上執(zhí)行,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的進(jìn)程,以便在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖和/或框圖的框中所指定的功能/動(dòng)作的過(guò)程。參考圖1,示出了網(wǎng)絡(luò)體系結(jié)構(gòu)100的一個(gè)示例。呈現(xiàn)網(wǎng)絡(luò)體系結(jié)構(gòu)100,以示出了其中可以實(shí)現(xiàn)根據(jù)本發(fā)明的時(shí)間點(diǎn)復(fù)制(point-in-time-copy)方法的環(huán)境的一個(gè)示例。網(wǎng)絡(luò)體系結(jié)構(gòu)100是只作為示例而非限制來(lái)呈現(xiàn)的。實(shí)際上,除所示出的網(wǎng)絡(luò)體系結(jié)構(gòu)100之外,此處所公開的方法還可以適用于各種不同的計(jì)算機(jī)、服務(wù)器、存儲(chǔ)設(shè)備以及網(wǎng)絡(luò)體系結(jié)構(gòu)。如圖所示,網(wǎng)絡(luò)體系結(jié)構(gòu)100包括通過(guò)網(wǎng)絡(luò)104互連的一臺(tái)或多臺(tái)計(jì)算機(jī)102,106。網(wǎng)絡(luò)104可以包括例如局域網(wǎng)(LAN)104、廣域網(wǎng)(WAN)104、因特網(wǎng)104、或內(nèi)聯(lián)網(wǎng)104等等。在某些實(shí)施例中,計(jì)算機(jī)102,106可以包括客戶端計(jì)算機(jī)102和服務(wù)器計(jì)算機(jī)106(此處也被稱為“主機(jī)系統(tǒng)”106)。一般而言,客戶端計(jì)算機(jī)102啟動(dòng)通信會(huì)話,而服務(wù)器計(jì)算機(jī)106等待來(lái)自客戶端計(jì)算機(jī)102的請(qǐng)求。在某些實(shí)施例中,計(jì)算機(jī)102和/或服務(wù)器106可以連接到一個(gè)或多個(gè)內(nèi)部或外部直接外接存儲(chǔ)系統(tǒng)112(例如,硬盤驅(qū)動(dòng)器、固態(tài)驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器等等的陣列)。這些計(jì)算機(jī)102,106和直接外接存儲(chǔ)系統(tǒng)112可以使用諸如ATA、SATA、SCSI、SAS、光纖通道等等之類的協(xié)議來(lái)進(jìn)行通信。存儲(chǔ)系統(tǒng)112中的一個(gè)或多個(gè)可以使用此處所公開的時(shí)間點(diǎn)復(fù)制方法。在某些實(shí)施例中,網(wǎng)絡(luò)體系結(jié)構(gòu)100可以包括服務(wù)器106背后的存儲(chǔ)網(wǎng)絡(luò)108,諸如存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)108或LAN108(例如,當(dāng)使用網(wǎng)絡(luò)附屬存儲(chǔ)器)。此網(wǎng)絡(luò)108可以將服務(wù)器106連接到一個(gè)或多個(gè)存儲(chǔ)系統(tǒng)110,諸如硬盤驅(qū)動(dòng)器或固態(tài)驅(qū)動(dòng)器的陣列110a、磁帶庫(kù)110b、單個(gè)硬盤驅(qū)動(dòng)器110c或固態(tài)驅(qū)動(dòng)器110c、磁帶驅(qū)動(dòng)器110d、CD-ROM庫(kù)等等。為訪問(wèn)存儲(chǔ)系統(tǒng)110,主機(jī)系統(tǒng)106可以通過(guò)從主機(jī)106上的一個(gè)或多個(gè)端口到存儲(chǔ)系統(tǒng)110上的一個(gè)或多個(gè)端口的物理連接來(lái)進(jìn)行通信。連接可以是通過(guò)交換機(jī)、構(gòu)造(fabric)、直接連接等等。在某些實(shí)施例中,服務(wù)器106和存儲(chǔ)系統(tǒng)110可以使用諸如光纖通道(FC)連網(wǎng)標(biāo)準(zhǔn)來(lái)進(jìn)行通信。存儲(chǔ)系統(tǒng)110中的一個(gè)或多個(gè)可以使用此處所公開的時(shí)間點(diǎn)復(fù)制方法。參考圖2,示出了包含硬盤驅(qū)動(dòng)器204和/或固態(tài)驅(qū)動(dòng)器204的陣列的存儲(chǔ)系統(tǒng)110b的一個(gè)實(shí)施例。示出了存儲(chǔ)系統(tǒng)110b的內(nèi)部組件,因?yàn)榇颂幩_的時(shí)間點(diǎn)復(fù)制方法可以在某些實(shí)施例中在這樣的存儲(chǔ)系統(tǒng)110b內(nèi)實(shí)現(xiàn),雖然該方法也可以適用于其他存儲(chǔ)系統(tǒng)110。如圖所示,存儲(chǔ)系統(tǒng)110b包括存儲(chǔ)控制器200、一個(gè)或多個(gè)交換機(jī)202、以及諸如硬盤驅(qū)動(dòng)器204或固態(tài)驅(qū)動(dòng)器204(諸如基于閃存的驅(qū)動(dòng)器204)之類的一個(gè)或多個(gè)存儲(chǔ)設(shè)備204。存儲(chǔ)控制器200可以允許一個(gè)或多個(gè)主機(jī)106(例如,開放系統(tǒng)和/或大型機(jī)服務(wù)器106)訪問(wèn)一個(gè)或多個(gè)存儲(chǔ)設(shè)備204中的數(shù)據(jù)。在選定的各實(shí)施例中,存儲(chǔ)控制器200包括一個(gè)或多個(gè)服務(wù)器206。存儲(chǔ)控制器200還可包括主機(jī)適配器208和設(shè)備適配器210,以將存儲(chǔ)控制器200分別連接到主機(jī)設(shè)備106和存儲(chǔ)設(shè)備204。多個(gè)服務(wù)器206a、206b可以提供冗余,以確保數(shù)據(jù)始終對(duì)所連接的主機(jī)106可用。如此,當(dāng)一個(gè)服務(wù)器206a發(fā)生故障時(shí),其他服務(wù)器206b可以拾取發(fā)生故障的服務(wù)器206a的I/O負(fù)載,以確保I/O能夠在主機(jī)106和存儲(chǔ)設(shè)備204之間繼續(xù)。此過(guò)程可以被稱為“故障轉(zhuǎn)移”。具有類似于圖2中所示出的體系結(jié)構(gòu)的體系結(jié)構(gòu)的存儲(chǔ)系統(tǒng)110b的一個(gè)示例是IBM企業(yè)存儲(chǔ)系統(tǒng)。IBMDS8000是提供被設(shè)計(jì)用于支持連續(xù)操作的磁盤存儲(chǔ)器的高性能大容量的存儲(chǔ)控制器。盡管如此,此處所公開的方法不限于IBMDS8000企業(yè)存儲(chǔ)系統(tǒng)110b,而是可以在任何可比較的或類似的存儲(chǔ)系統(tǒng)110中實(shí)現(xiàn),不管與系統(tǒng)110相關(guān)聯(lián)的制造商、產(chǎn)品名稱、或組件或組件名稱是什么。此外,可以得益于本發(fā)明的一個(gè)或多個(gè)優(yōu)選實(shí)施例的任何存儲(chǔ)系統(tǒng)都被認(rèn)為在本發(fā)明的范圍內(nèi)。如此,IBMDS8000只作為示例而非限制來(lái)呈現(xiàn)的。IBM、FlashCopy、DS8000是IBM公司在世界范圍的許多管轄區(qū)域注冊(cè)的商標(biāo)。在選定的各實(shí)施例中,每一個(gè)服務(wù)器206都可以包括一個(gè)或多個(gè)處理器212和存儲(chǔ)器214。存儲(chǔ)器214可以包括易失性存儲(chǔ)器(例如,RAM)以及非易失性存儲(chǔ)器(例如,ROM、EPROM、EEPROM、硬盤,閃存等等)。在某些實(shí)施例中,易失性和非易失性存儲(chǔ)器可以存儲(chǔ)在處理器212上運(yùn)行的并被用來(lái)訪問(wèn)存儲(chǔ)設(shè)備204中的數(shù)據(jù)的軟件模塊。服務(wù)器206可以托管這些軟件模塊的至少一個(gè)實(shí)例。這些軟件模塊可以管理向存儲(chǔ)設(shè)備204中的邏輯卷的所有讀和寫請(qǐng)求。在選定的各實(shí)施例中,存儲(chǔ)器214包括高速緩存218。每當(dāng)主機(jī)106(例如,開放系統(tǒng)或大型機(jī)服務(wù)器106)執(zhí)行讀取操作時(shí),執(zhí)行讀取的服務(wù)器206可以從存儲(chǔ)設(shè)備204獲取數(shù)據(jù),并將它保存在其高速緩存218中,以便在再次需要時(shí)使用。如果由主機(jī)106再次請(qǐng)求數(shù)據(jù),則服務(wù)器206可以從高速緩存218獲取數(shù)據(jù),代替從存儲(chǔ)設(shè)備204中獲取它,這會(huì)節(jié)省時(shí)間和資源。類似地,當(dāng)主機(jī)106執(zhí)行寫入時(shí),接收到寫入請(qǐng)求的服務(wù)器106可以將寫入存儲(chǔ)在其高速緩存218中。然后,服務(wù)器106可以在時(shí)間和資源允許時(shí)將寫入轉(zhuǎn)出到存儲(chǔ)設(shè)備204。參考圖3,示出了用于創(chuàng)建時(shí)間點(diǎn)拷貝的多目標(biāo)體系結(jié)構(gòu)300的一個(gè)示例。這樣的體系結(jié)構(gòu)300可以在諸如圖2中所示出的存儲(chǔ)系統(tǒng)110b之類的存儲(chǔ)系統(tǒng)110內(nèi)實(shí)現(xiàn)。如圖所示,多目標(biāo)體系結(jié)構(gòu)300包括源卷302和一個(gè)或多個(gè)目標(biāo)卷304a-d。目標(biāo)卷304a-d中的每一個(gè)都包含源卷302中的數(shù)據(jù)的時(shí)間點(diǎn)拷貝。在選定的各實(shí)施例中,諸如在FlashCopy實(shí)現(xiàn)中,通過(guò)在源卷302和目標(biāo)卷304之間建立關(guān)系(或“映射”)來(lái)創(chuàng)建時(shí)間點(diǎn)拷貝。一旦建立了此關(guān)系,就可以從源卷302或者目標(biāo)卷304中讀取數(shù)據(jù),盡管數(shù)據(jù)仍可能沒有從源卷302復(fù)制到目標(biāo)卷304中。與目標(biāo)卷304相關(guān)聯(lián)的目標(biāo)位圖(TBM)306跟蹤哪些數(shù)據(jù)磁道已經(jīng)實(shí)際從源卷302被復(fù)制到目標(biāo)卷304。例如,TBM306中的“0”可以表示數(shù)據(jù)磁道已經(jīng)被復(fù)制(即,目標(biāo)卷304具有其自己的數(shù)據(jù)),而“1”可以表示數(shù)據(jù)磁道還沒有被復(fù)制。在TBM306包含“1”的情況下,對(duì)目標(biāo)卷306上的磁道的讀取可以被定向到源卷302上的相應(yīng)的磁道。出于本公開的目的,如果包含“1”,則可以說(shuō)TBM304中的比特“被置位”,如果它包含“0”,則“復(fù)位”,雖然在其他實(shí)施例中這可以相反。雖然在所示出的實(shí)施例中,源302和目標(biāo)304都被標(biāo)記為“卷”,但是應(yīng)該認(rèn)識(shí)到,源302和目標(biāo)304也可以是數(shù)據(jù)集或其他數(shù)據(jù)集合。如上文所提及的,在常規(guī)多目標(biāo)體系結(jié)構(gòu)300中,在可以完成對(duì)源卷302的寫入之前,向源卷302的寫入可能需要等待源卷302中的數(shù)據(jù)被復(fù)制(即,轉(zhuǎn)出)到不包含其自己的數(shù)據(jù)的每一個(gè)連接的目標(biāo)卷304a-d。即,在對(duì)源卷302的數(shù)據(jù)磁道執(zhí)行寫入之前,現(xiàn)有的數(shù)據(jù)磁道需要被復(fù)制到在源卷302上數(shù)據(jù)磁道被改寫之前還沒有包含數(shù)據(jù)磁道的目標(biāo)卷304a-d。多目標(biāo)體系結(jié)構(gòu)300中的目標(biāo)卷304a-d的數(shù)量越大,在數(shù)據(jù)可以被成功地寫入到源卷302之前需要發(fā)生的復(fù)制的數(shù)量也就越大。這會(huì)使得向源卷302的寫入非常慢。因此,常規(guī)時(shí)間點(diǎn)復(fù)制技術(shù)可以在多目標(biāo)體系結(jié)構(gòu)300中只支持有限數(shù)量(例如,十二)的目標(biāo)304,以使性能影響保持在可接受的范圍內(nèi)。如下面更詳細(xì)地說(shuō)明的,可以使用根據(jù)本發(fā)明的優(yōu)選實(shí)施例的改善方法來(lái)減小將多個(gè)目標(biāo)卷304a-d映射到源卷302的性能影響。代替當(dāng)對(duì)源卷302執(zhí)行寫入時(shí)將數(shù)據(jù)復(fù)制到多個(gè)目標(biāo)304a-d,所述改善方法將數(shù)據(jù)復(fù)制到單個(gè)目標(biāo)304或目標(biāo)304的子集。然后,繼承方案允許其他目標(biāo)304從包含數(shù)據(jù)的單個(gè)目標(biāo)304或目標(biāo)304的子集繼承數(shù)據(jù)。如此,向源卷302的寫入可以只須在寫入可以在源卷302完成之前將數(shù)據(jù)復(fù)制到單個(gè)目標(biāo)304或目標(biāo)304的子集。圖4到8中所示出的流程圖示出了實(shí)現(xiàn)這樣的方法的各種方法的具體示例。參考圖4,示出了用于從目標(biāo)卷304讀取磁道的方法400的一個(gè)示例。在接收到從目標(biāo)卷304讀取數(shù)據(jù)磁道的請(qǐng)求之后,方法400確定402目標(biāo)卷304的TBM是否被置位。如果TBM沒有被置位(表示目標(biāo)卷304包含所請(qǐng)求的數(shù)據(jù)),則方法400簡(jiǎn)單地從目標(biāo)卷304中讀取406所請(qǐng)求的數(shù)據(jù)磁道。另一方面,如果TBM被置位(表示目標(biāo)卷304不包含所請(qǐng)求的數(shù)據(jù)),則方法400查找404要從其讀取數(shù)據(jù)的較高源(HS)卷,并從HS卷讀取404。與圖7相關(guān)聯(lián)地描述了用于查找HS卷的一個(gè)方法700。出于本公開的目的,HS卷是包含所請(qǐng)求的數(shù)據(jù)并且目標(biāo)卷304從其繼承的卷。參考圖5,示出了用于響應(yīng)于向源卷302的寫入而轉(zhuǎn)出數(shù)據(jù)磁道的方法500的一個(gè)實(shí)施例。如圖所示,方法500最初查找502源卷302的最年輕的子(YC)。出于本公開的目的,YC是最后被映射到源卷302的目標(biāo)卷304。在選定的各實(shí)施例中,可以使用生成號(hào)(GN)來(lái)確定目標(biāo)卷304被添加到源卷302以便生成時(shí)間點(diǎn)拷貝的順序。將與圖9相關(guān)聯(lián)地討論GN被用來(lái)確定目標(biāo)304被映射到源卷302的順序的方式。一旦方法500查找到Y(jié)C,方法500確定504YC的TBM是否被置位。如果TBM沒有被置位(表示YC304包含數(shù)據(jù)的其自己的拷貝),則方法500不執(zhí)行任何操作508,因?yàn)閅C304已經(jīng)具有數(shù)據(jù)的拷貝。另一方面,如果TBM被置位(表示YC304不包含數(shù)據(jù)的其自己的拷貝),則方法500將數(shù)據(jù)從源卷302復(fù)制506到Y(jié)C304。如此,當(dāng)對(duì)源卷302進(jìn)行寫入時(shí),在源卷302和YC304之間進(jìn)行單次復(fù)制,而并非將數(shù)據(jù)復(fù)制到不包含數(shù)據(jù)的所有目標(biāo)卷304。然后,其他目標(biāo)卷304(不是YC304)可以從YC304繼承此數(shù)據(jù),諸如當(dāng)對(duì)其他卷304進(jìn)行讀取時(shí)或當(dāng)從其他卷304復(fù)制數(shù)據(jù)時(shí)。參考圖6,示出了用于響應(yīng)于向目標(biāo)卷304(目標(biāo)x)的寫入而轉(zhuǎn)出數(shù)據(jù)磁道的方法600的一個(gè)實(shí)施例。如圖所示,方法600最初確定602對(duì)于正在向其寫入的磁道是否置位了目標(biāo)x304和最近的較年長(zhǎng)的同輩(COS)304的TBM。出于本公開的目的,COS是緊接在目標(biāo)x304前面被映射的目標(biāo)卷304。如果兩個(gè)TBM都被置位(表示兩個(gè)卷都不包含正在向其寫入的磁道中的數(shù)據(jù)),則方法600將數(shù)據(jù)磁道從較高源(HS)卷復(fù)制604到COS304。將與圖8相關(guān)聯(lián)地討論用于查找HS卷的方法。另一方面,如果目標(biāo)x的TBM沒有被置位,而COS的TBM被置位(表示目標(biāo)x304包含正在被改寫的數(shù)據(jù)磁道中的數(shù)據(jù)),如在步驟606中的確定的,則方法600將數(shù)據(jù)磁道從目標(biāo)x復(fù)制608到COS304——即,數(shù)據(jù)磁道從目標(biāo)x304轉(zhuǎn)出到COS304。另一方面,如果COS的TBM沒有被置位(表示COS包含數(shù)據(jù)),或者沒有COS,則方法600不執(zhí)行任何操作610,因?yàn)椴恍枰獜?fù)制。一旦到達(dá)方法600的結(jié)束處,可以對(duì)目標(biāo)x執(zhí)行寫入。應(yīng)該認(rèn)識(shí)到,在不偏離本發(fā)明的情況下,可以以各種方式來(lái)修改上文所描述的方法500、600。例如,最年輕的子(YC)可以替換為最舊的子,而最近的較年長(zhǎng)的同輩(COS)可以替換為最近的較年輕的同輩。如此,出于本公開的目的,使用YC和COS的各實(shí)施例也被視為包含使用最舊的子和最近的較年輕的同輩的各實(shí)施例。其他變化也是可以的,并在本發(fā)明的范圍內(nèi)。參考圖7,示出了用于查找HS卷來(lái)進(jìn)行讀取的方法700的一個(gè)實(shí)施例。這樣的方法700可以與圖4的步驟404相關(guān)聯(lián)地使用。如圖所示,方法700最初確定702正在被讀取的卷是否是目標(biāo)卷304。如果否,則方法700從卷中讀取704,因?yàn)樗窃淳?02。如果卷是目標(biāo)卷304,則方法確定706卷的TBM是否被置位。如果TBM沒有被置位,則方法700從卷304中讀取704。如果卷的TBM被置位,則方法700查找708與目標(biāo)卷304相關(guān)聯(lián)的源卷302。然后,方法700查找710帶有剛剛高于所述目標(biāo)卷304的生成號(hào)(GN)的生成號(hào)的下一關(guān)系。將在圖9的示例中更詳細(xì)地說(shuō)明使用GN的方式。一般而言,確定步驟710查找源卷302上的僅僅比與所述目標(biāo)卷304相關(guān)聯(lián)的關(guān)系年輕的關(guān)系(如在步驟702中標(biāo)識(shí)的)。然后,方法700查找714此關(guān)系的目標(biāo)304。如果此目標(biāo)304的TBM被置位716,則方法700從目標(biāo)304中讀取。如果此目標(biāo)304的TBM沒有被置位716,則方法700重復(fù)步驟710,714,以查找下一較年輕的目標(biāo)304,并確定716其TBM是否被置位。如此,方法700遍歷在步驟702中標(biāo)識(shí)的目標(biāo)卷304的較年輕的同輩,直到找到包含所需數(shù)據(jù)的目標(biāo)卷304。一旦找到此數(shù)據(jù),方法700就從目標(biāo)304中讀取718。如果沒有找到包含所需數(shù)據(jù)的較年輕的同輩目標(biāo)304,則方法700簡(jiǎn)單地從源卷302中讀取712。如此,目標(biāo)卷304能夠當(dāng)對(duì)其執(zhí)行讀取時(shí)從同輩304繼承數(shù)據(jù)。參考圖8,示出了用于查找從其復(fù)制數(shù)據(jù)的HS卷的方法800的一個(gè)實(shí)施例。這樣的方法800可以與圖6的步驟604相關(guān)聯(lián)地使用。如圖所示,方法800最初確定802正在向其寫入的卷是否是目標(biāo)卷304。如果否,則不需要復(fù)制,如在步驟804中反映的。如果卷是目標(biāo)卷304,則方法確定806卷的TBM是否被置位。如果TBM沒有被置位,則不需要復(fù)制。如果卷是目標(biāo)卷304,并且卷的TBM被置位,則方法查找808與目標(biāo)卷304相關(guān)聯(lián)的源卷302。然后,方法800以前面所討論的方式查找?guī)в休^高的生成號(hào)(GN)的下一關(guān)系。在找到下一較高GN之后,方法800查找814此關(guān)系的目標(biāo)304,該目標(biāo)304是在步驟802中所標(biāo)識(shí)的目標(biāo)304的同輩。如果此同輩目標(biāo)304的TBM沒有被置位816(表示它包含所需數(shù)據(jù)),則方法800將數(shù)據(jù)從同輩目標(biāo)304復(fù)制818到COS304。如果此同輩目標(biāo)304的TBM被置位816(表示它不包含所需數(shù)據(jù)),則方法800重復(fù)步驟810,814,以查找下一較年輕的同輩目標(biāo)304,并確定816其TBM是否被置位。如此,方法800遍歷在步驟802中標(biāo)識(shí)的目標(biāo)卷304的較年輕的同輩,直到找到包含所需數(shù)據(jù)的同輩目標(biāo)卷304。一旦找到此數(shù)據(jù),方法800將數(shù)據(jù)從同輩目標(biāo)304復(fù)制818到COS。如果沒有找到包含所需數(shù)據(jù)的同輩目標(biāo)304,則方法800將數(shù)據(jù)從源卷302復(fù)制812到COS。一旦復(fù)制了數(shù)據(jù),就可以對(duì)在步驟802中標(biāo)識(shí)的目標(biāo)304執(zhí)行寫入。參考圖9,描述了示出使用生成號(hào)(GN)的多目標(biāo)體系結(jié)構(gòu)300的一個(gè)示例。在此示例中,假設(shè)源卷(SV)302和第一目標(biāo)卷(TV1)304a之間的關(guān)系被首先創(chuàng)建,接下來(lái)是源卷302和第二目標(biāo)卷(TV2)304b之間的關(guān)系,接下來(lái)是源卷302和第三目標(biāo)卷(TV3)304c之間的關(guān)系。每當(dāng)向源卷302中添加新關(guān)系時(shí),生成號(hào)遞增。如此,如源卷302所示,第一關(guān)系與生成號(hào)“1”相關(guān)聯(lián),第二關(guān)系與生成號(hào)“2”相關(guān)聯(lián),而第三關(guān)系與生成號(hào)“3”相關(guān)聯(lián)。假設(shè)最初在源卷302與第一和第二目標(biāo)卷304a,304b之間建立了關(guān)系,但是源卷302和第三目標(biāo)卷304c之間的關(guān)系還沒有建立。在此情況下,為向第二目標(biāo)卷304b的磁道1執(zhí)行寫入,磁道1中的數(shù)據(jù)被從源卷302(較高源)復(fù)制到第一目標(biāo)卷304a(最近的較年長(zhǎng)的同輩或COS),并且第一目標(biāo)卷304a的TBM被復(fù)位。然后,對(duì)第二目標(biāo)卷304b的磁道1執(zhí)行寫入,并且第二目標(biāo)卷304b的TBM被復(fù)位。類似地,為向源卷302的磁道2執(zhí)行寫入,磁道2中的數(shù)據(jù)被從源卷302復(fù)制到第二目標(biāo)卷304b(最年輕的子或YC),并且第二目標(biāo)卷304b的TBM被復(fù)位(表示它現(xiàn)在包含數(shù)據(jù))。然后,對(duì)源卷302的磁道2執(zhí)行寫入。在圖10中示出了在上文所描述的兩次寫入之后的駐留在第一目標(biāo)卷(TV1)304a和第二目標(biāo)卷(TV2)304b中的數(shù)據(jù)。還示出了TBM中的值。假設(shè)現(xiàn)在在源卷302和第三目標(biāo)卷304c之間建立了第三關(guān)系。為向源卷302的磁道3執(zhí)行寫入,磁道3中的數(shù)據(jù)被從源卷302復(fù)制到第三目標(biāo)卷304c(最年輕第三子或YC),并且第三目標(biāo)卷304c的TBM被復(fù)位。然后,對(duì)源卷302的磁道3執(zhí)行寫入。為向第二目標(biāo)卷304b的磁道4執(zhí)行寫入,磁道4中的數(shù)據(jù)被從源卷302(較高源)復(fù)制到第一目標(biāo)卷304a(最近的較年長(zhǎng)的同輩或COS),并且第一目標(biāo)卷304a的TBM被復(fù)位。然后,對(duì)第二目標(biāo)卷304b的磁道4執(zhí)行寫入,并且第二目標(biāo)卷304b的TBM被復(fù)位。為向第一目標(biāo)卷304a的磁道5執(zhí)行寫入,不進(jìn)行復(fù)制,因?yàn)闆]有最近的較年長(zhǎng)的同輩或COS。然后,對(duì)第一目標(biāo)卷304a的磁道5執(zhí)行寫入,并且第一目標(biāo)卷304a的TBM被復(fù)位。為向第三目標(biāo)卷304c的磁道6執(zhí)行寫入,磁道6中的數(shù)據(jù)被從源卷302(較高源)復(fù)制到第二目標(biāo)卷304b(最近的較年長(zhǎng)的同輩或COS),并且第二目標(biāo)卷304b的TBM被復(fù)位。然后,對(duì)第三目標(biāo)卷304c的磁道6執(zhí)行寫入,并且第三目標(biāo)卷304c的TBM被復(fù)位。在圖11中示出了在上文所描述的所有六次寫入之后駐留在第一目標(biāo)卷(TV1)304a、第二目標(biāo)卷(TV2)304b、以及第三目標(biāo)卷(TV3)304c中的數(shù)據(jù)。還示出了TBM中的值。參考圖12A,在某些情況下,可以從多目標(biāo)體系結(jié)構(gòu)300中刪除源卷302和目標(biāo)卷304之間的關(guān)系,或源卷302和多個(gè)目標(biāo)卷304之間的多個(gè)關(guān)系。當(dāng)從多目標(biāo)體系結(jié)構(gòu)300中刪除關(guān)系時(shí),源卷302和與關(guān)系相關(guān)聯(lián)的目標(biāo)卷304之間的時(shí)間點(diǎn)復(fù)制關(guān)系結(jié)束。在某些實(shí)施例中,這可能結(jié)束其他同輩目標(biāo)卷304從為其刪除了關(guān)系的目標(biāo)卷304繼承數(shù)據(jù)的能力。如此,在某些實(shí)施例中,在刪除關(guān)系之前,與關(guān)系相關(guān)聯(lián)的目標(biāo)卷304上的數(shù)據(jù)可以被復(fù)制到一個(gè)或多個(gè)同輩目標(biāo)卷304,以便數(shù)據(jù)仍可以被同輩目標(biāo)卷304訪問(wèn)。例如,假設(shè)標(biāo)識(shí)用于刪除的源卷302和目標(biāo)卷304c之間的關(guān)系(如由虛線箭頭所指示的)。在刪除關(guān)系之前,存儲(chǔ)在目標(biāo)卷304c上的并由其他同輩目標(biāo)卷304繼承的數(shù)據(jù)可以從目標(biāo)卷304c復(fù)制到一個(gè)或多個(gè)同輩目標(biāo)卷304,以便數(shù)據(jù)仍可以被同輩目標(biāo)卷304訪問(wèn)。例如,在某些實(shí)施例中,諸如當(dāng)使用圖4到8中所描述的時(shí)間點(diǎn)復(fù)制方法時(shí),數(shù)據(jù)將被復(fù)制到最近的較年長(zhǎng)的同輩(COS)。通過(guò)使用其他時(shí)間點(diǎn)復(fù)制方法,數(shù)據(jù)可以被復(fù)制到除COS以外的其他同輩目標(biāo)卷304。盡管如此,出于本公開的目的,假設(shè)數(shù)據(jù)被復(fù)制到COS。一旦存儲(chǔ)在目標(biāo)卷304c中的并由其他同輩目標(biāo)卷304繼承的所有數(shù)據(jù)都被復(fù)制到COS,就可以刪除源卷302和目標(biāo)卷304c之間的關(guān)系,從而結(jié)束源卷302和目標(biāo)卷304c之間的時(shí)間點(diǎn)復(fù)制關(guān)系。參考圖12B,在某些情況下,可以刪除源卷302和省空間的(SE)目標(biāo)卷304之間的關(guān)系。SE目標(biāo)卷304與標(biāo)準(zhǔn)目標(biāo)卷304(諸如圖12A中所示出的那些)的不同之處在于,數(shù)據(jù)沒有在物理上存儲(chǔ)在卷中。相反,SE目標(biāo)卷304是其數(shù)據(jù)在物理上存儲(chǔ)在公共儲(chǔ)存庫(kù)1200中的虛擬卷(如由虛線所指示的)。映射結(jié)構(gòu)1202跟蹤SE目標(biāo)卷的數(shù)據(jù)在物理上位于儲(chǔ)存庫(kù)1200中的位置。換句話說(shuō),映射結(jié)構(gòu)1202將SE目標(biāo)卷304的邏輯磁道映射到儲(chǔ)存庫(kù)1200的物理磁道。從主機(jī)設(shè)備106的角度來(lái)看,讀寫SE目標(biāo)卷304可以與讀寫標(biāo)準(zhǔn)目標(biāo)卷相同。由于SE目標(biāo)卷304在物理上不存儲(chǔ)任何數(shù)據(jù),因此當(dāng)刪除關(guān)系時(shí),不需要在物理上將數(shù)據(jù)從SE目標(biāo)卷304復(fù)制到其他同輩SE目標(biāo)卷304。相反地,可以修改映射結(jié)構(gòu)1202,以便其他同輩SE目標(biāo)卷,更具體而言,一個(gè)或多個(gè)COS卷,指向儲(chǔ)存庫(kù)1200中的SE目標(biāo)卷的數(shù)據(jù)。換句話說(shuō),并非在物理上將數(shù)據(jù)從一個(gè)SE目標(biāo)卷復(fù)制到另一個(gè),如對(duì)標(biāo)準(zhǔn)目標(biāo)卷可能發(fā)生的,修改映射結(jié)構(gòu)1202,以便在邏輯上存儲(chǔ)在一個(gè)SE目標(biāo)卷中的數(shù)據(jù)現(xiàn)在在邏輯上存儲(chǔ)在另一個(gè)SE目標(biāo)卷中。出于本公開的目的,假設(shè)下面引用的所有目標(biāo)卷都是省空間的(SE)目標(biāo)卷。參考圖13,在某些實(shí)施例中,關(guān)系表1300存儲(chǔ)在存儲(chǔ)器214中,以跟蹤多目標(biāo)體系結(jié)構(gòu)300中的每個(gè)關(guān)系。在某些實(shí)施例中,每個(gè)關(guān)系都具有與其相關(guān)聯(lián)的對(duì)應(yīng)于關(guān)系的源的源關(guān)系條目1302a,以及對(duì)應(yīng)于關(guān)系的目標(biāo)的目標(biāo)關(guān)系條目1302b。如下面更詳細(xì)地說(shuō)明的,當(dāng)刪除關(guān)系時(shí),與該關(guān)系相關(guān)聯(lián)的源關(guān)系條目1302a和目標(biāo)關(guān)系條目1302b可以被標(biāo)記為“已刪除”,以表示所述關(guān)系處于正在被刪除的過(guò)程中(即,映射結(jié)構(gòu)處于正在被修改以將數(shù)據(jù)映射到COS的過(guò)程中,在刪除關(guān)系的準(zhǔn)備中)。以此方式標(biāo)記關(guān)系條目1302a、1302b還可確保數(shù)據(jù)不會(huì)被寫入到其關(guān)系處于正在被刪除的過(guò)程中的SE目標(biāo)卷304中。一旦修改映射結(jié)構(gòu)以便在邏輯上存儲(chǔ)在SE目標(biāo)卷中的數(shù)據(jù)在邏輯上存儲(chǔ)在COS中,就可以刪除關(guān)系。刪除關(guān)系可以包括從關(guān)系表1300中刪除與關(guān)系相關(guān)聯(lián)的源關(guān)系條目1302a和目標(biāo)關(guān)系條目1302b。參考圖14,示出了用于刪除多目標(biāo)體系結(jié)構(gòu)300中的源302和SE目標(biāo)304之間的關(guān)系的方法1400的一個(gè)實(shí)施例。如圖所示,方法1400最初確定1402是否接收到撤消的請(qǐng)求(即,刪除關(guān)系的請(qǐng)求)。如果接收到撤消的請(qǐng)求,方法1400將與關(guān)系相關(guān)聯(lián)的關(guān)系條目標(biāo)記1404為“已刪除”。這可以包括將與關(guān)系相關(guān)聯(lián)的源關(guān)系條目1302a和目標(biāo)關(guān)系條目1302b兩者標(biāo)記1404為“已刪除”。然后,方法1400確定1406關(guān)系是否已經(jīng)在過(guò)程中,意味著映射結(jié)構(gòu)1202處于被修改以將數(shù)據(jù)映射到COS的過(guò)程中,在刪除關(guān)系的準(zhǔn)備中。如果關(guān)系已經(jīng)在過(guò)程中,方法1400使關(guān)系排隊(duì)1408。在使關(guān)系排隊(duì)之后,方法1400從最老的到最年輕的在隊(duì)列中排序1408關(guān)系,以便在較年輕的關(guān)系之前處理較年長(zhǎng)的關(guān)系。這將理想地最小化映射結(jié)構(gòu)1202被修改的次數(shù)。例如,如果映射結(jié)構(gòu)1202被修改以將數(shù)據(jù)映射到其關(guān)系在要?jiǎng)h除的隊(duì)列中的COS,則可能需要再次修改映射結(jié)構(gòu)1202,這會(huì)浪費(fèi)時(shí)間和資源。處理從最老的到最年輕的關(guān)系將幫助確保映射結(jié)構(gòu)1202被修改最少的次數(shù)??梢允褂酶鞣N不同的方法或技術(shù)來(lái)確定關(guān)系的年齡。在某些實(shí)施例中,使用生成號(hào)來(lái)確定關(guān)系的年齡,如圖9所示。例如,通過(guò)檢測(cè)源卷302上的生成號(hào),可以容易地確定關(guān)系的年齡。在圖9的所示出的示例中,每當(dāng)生成新關(guān)系時(shí),就遞增生成號(hào)。如此,與生成號(hào)“1”相關(guān)聯(lián)的關(guān)系是最老的,而與生成號(hào)“3”相關(guān)聯(lián)的關(guān)系是最年輕的。在其他實(shí)施例中,可以顛倒這種約定。如果沒有關(guān)系處于隊(duì)列中,則方法1400簡(jiǎn)單地處理1410關(guān)系。如果一個(gè)或多個(gè)關(guān)系處于隊(duì)列中,則方法1400處理1410隊(duì)列中的下一關(guān)系。將與圖15和16相關(guān)聯(lián)地描述用于處理1410關(guān)系的各種方法。一旦處理了關(guān)系,就意味著映射結(jié)構(gòu)1202已經(jīng)被修改,以便SE目標(biāo)304將數(shù)據(jù)映射到COS304,方法1400就從關(guān)系表1300中移除1412與關(guān)系相關(guān)聯(lián)的關(guān)系條目1302a、1302b。這將結(jié)束關(guān)系。然后,方法1414核查任何其他關(guān)系是否處于隊(duì)列中。如果隊(duì)列是空的,則方法1400等待1402下一撤消請(qǐng)求。如果隊(duì)列不是空的,則方法1400處理1410隊(duì)列中的下一關(guān)系。這一過(guò)程持續(xù),直到處理完隊(duì)列中的所有關(guān)系。在某些實(shí)施例中,方法1400被配置為使得在任何特定時(shí)間都可以有多個(gè)關(guān)系在處理中。在某些實(shí)施例中,在任何特定時(shí)間在處理中的關(guān)系的數(shù)量可以是受限的,以便不至于使存儲(chǔ)設(shè)備204(例如,磁盤驅(qū)動(dòng)器、固態(tài)驅(qū)動(dòng)器等等)或與存儲(chǔ)設(shè)備204相關(guān)聯(lián)的設(shè)備適配器210過(guò)度驅(qū)動(dòng)。例如,在某些實(shí)施例中,設(shè)備適配器210和存儲(chǔ)設(shè)備204可以在任何特定時(shí)間僅限于處理某個(gè)數(shù)量(例如,四個(gè))關(guān)系,以不至于使設(shè)備過(guò)驅(qū)動(dòng)。當(dāng)同時(shí)處理多個(gè)關(guān)系時(shí),可以給較年長(zhǎng)的關(guān)系提供比較新的關(guān)系更高的優(yōu)先級(jí),以最小化映射結(jié)構(gòu)1202被修改的次數(shù)。參考圖15,示出了用于處理關(guān)系的方法1410的一個(gè)實(shí)施例。每當(dāng)處理1410關(guān)系時(shí),都可以執(zhí)行這樣的方法1410,如圖14所描述的。如圖所示,為處理關(guān)系,方法1410最初標(biāo)識(shí)1500與關(guān)系相關(guān)聯(lián)的SE目標(biāo)。然后,方法1410標(biāo)識(shí)1502SE目標(biāo)的最近的較年長(zhǎng)的同輩(COS)。然后,方法1410檢查1504SE目標(biāo)和COS的第一磁道。如果方法1410確定1506磁道的SE目標(biāo)的TBM沒有被置位(表示SE目標(biāo)包括數(shù)據(jù)的拷貝)并確定1508磁道的COS的TBM被置位(表示COS不包括數(shù)據(jù)的拷貝),那么方法1410修改1510映射結(jié)構(gòu)1202,以將儲(chǔ)存庫(kù)1200中的數(shù)據(jù)映射到COS。然后,COS的TBM對(duì)于磁道復(fù)位1510,以表示它包括數(shù)據(jù)的拷貝。然而,如果磁道的SE目標(biāo)的TBM被置位(表示SE目標(biāo)不包括數(shù)據(jù)的拷貝)或磁道的COS的TBM沒有被置位(表示COS已經(jīng)包括數(shù)據(jù)的拷貝),那么映射結(jié)構(gòu)1202沒有被修改,方法1410轉(zhuǎn)到確定步驟1512。一旦方法1410檢查磁道,并修改映射結(jié)構(gòu)1202或者確定不需要修改,方法1410確定1512是否到達(dá)SE目標(biāo)304的最后一個(gè)磁道。如果沒有到達(dá)最后一個(gè)磁道,則方法1410檢查1514SE目標(biāo)的下一磁道以及COS的相應(yīng)磁道,并重復(fù)步驟1506,1508,1510,1512。當(dāng)SE目標(biāo)304中的所有磁道都已經(jīng)被檢查,并且對(duì)于需要修改的那些磁道,修改了映射結(jié)構(gòu)1202,則方法1410結(jié)束。參考圖16,示出了用于處理關(guān)系的方法1410的另一實(shí)施例。每當(dāng)處理1410關(guān)系時(shí),可以代替圖15的方法執(zhí)行這樣的方法1410。可以使用圖16中所示出的方法1410來(lái)解決SE目標(biāo)中的不同的磁道范圍具有不同的最近的較年長(zhǎng)的同輩(COS)的實(shí)現(xiàn),諸如在數(shù)據(jù)集級(jí)別的時(shí)間點(diǎn)復(fù)制實(shí)現(xiàn)中。如圖所示,為處理關(guān)系,方法1410最初標(biāo)識(shí)1600與關(guān)系相關(guān)聯(lián)的SE目標(biāo),并標(biāo)識(shí)1602SE目標(biāo)的第一磁道范圍(例如,開頭五十個(gè)磁道)。然后,方法1410標(biāo)識(shí)1604與磁道范圍相關(guān)聯(lián)的最近的較年長(zhǎng)的同輩(COS)。然后,方法1410檢查1606磁道范圍的第一磁道和COS的相應(yīng)磁道。如果方法1410確定1608磁道范圍中的磁道的TBM沒有被置位(表示磁道包括數(shù)據(jù)的拷貝),并確定1610COS的相應(yīng)磁道的TBM被置位(表示COS中的磁道不包括數(shù)據(jù)的拷貝),那么方法1410修改1620映射結(jié)構(gòu)1202,以將儲(chǔ)存庫(kù)1200中的數(shù)據(jù)映射到COS。然后,COS中的磁道的TBM被復(fù)位1620,以表示它現(xiàn)在包括數(shù)據(jù)的拷貝。然而,如果SE目標(biāo)上的磁道的TBM被置位(表示SE目標(biāo)不包括數(shù)據(jù)的拷貝)或相應(yīng)磁道的COS的TBM沒有被置位(表示COS已經(jīng)包括數(shù)據(jù)的拷貝),那么映射結(jié)構(gòu)1202沒有被修改,方法1410轉(zhuǎn)到確定步驟1618。一旦方法1410檢查了磁道范圍中的磁道,并修改映射結(jié)構(gòu)1202或者確定不需要修改,方法1410就確定1618磁道范圍中是否存在另一個(gè)磁道。如果在磁道范圍中存在另一個(gè)磁道,則方法1410通過(guò)重復(fù)步驟1608,1610,1620,1618來(lái)檢查1616磁道范圍的下一磁道以及COS中的相應(yīng)磁道。當(dāng)已經(jīng)檢查完磁道范圍中的所有磁道,并對(duì)于需要修改的那些磁道,修改了映射結(jié)構(gòu)1202,方法1410確定1614在SE目標(biāo)中是否有另一個(gè)磁道范圍。如果有另一個(gè)磁道范圍,則方法1410標(biāo)識(shí)1604磁道范圍的COS,對(duì)于磁道范圍和標(biāo)識(shí)的COS,重復(fù)步驟1606,1608,1610,1620,1618,1616。此過(guò)程持續(xù),直到已經(jīng)檢查完SE目標(biāo)的所有磁道范圍,并對(duì)于需要修改的那些磁道,修改了映射結(jié)構(gòu)1202。一旦SE目標(biāo)的所有磁道范圍中的所有磁道都已經(jīng)被檢查,并且相應(yīng)地修改了映射結(jié)構(gòu)1202,則方法1410結(jié)束。圖中的流程圖和框圖示出了根據(jù)本發(fā)明的各種優(yōu)選實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)可用介質(zhì)的可能實(shí)現(xiàn)的體系結(jié)構(gòu)、功能、以及操作。關(guān)于這一點(diǎn),流程圖或框圖中的每一個(gè)框都可以代表包括用于實(shí)現(xiàn)指定的邏輯功能的一個(gè)或多個(gè)可執(zhí)行指令的一個(gè)模塊、代碼段或部分。還應(yīng)注意,在某些替代實(shí)現(xiàn)中,在框中所指出的功能可以不按照?qǐng)D中所說(shuō)明的順序發(fā)生。例如,依次顯示的兩個(gè)框可以事實(shí)上基本上同時(shí)地執(zhí)行,或者,取決于涉及的功能,各框有時(shí)也可以按相反的順序執(zhí)行。還應(yīng)該注意,框圖和/或流程圖例示中的每一個(gè)框,以及框圖和/或流程圖例示中的各框的組合,可以通過(guò)執(zhí)行指定的功能或操作,或?qū)S糜布约坝?jì)算機(jī)指令的組合的基于專用硬件的系統(tǒng)來(lái)實(shí)現(xiàn)。