專利名稱:備份數(shù)據(jù)協(xié)調(diào)方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于協(xié)調(diào)本地和遠程備份數(shù)據(jù)的方法、系統(tǒng)和制品。
背景技術(shù):
包含存儲系統(tǒng)的信息技術(shù)系統(tǒng)中的數(shù)據(jù)可以出于例如便于從存儲系統(tǒng)的故障中進行恢復等多種原因被復制或備份。某些備份系統(tǒng)可以在本地存儲和管理數(shù)據(jù),而另一些備份系統(tǒng)可以在遠程服務器上存儲和管理數(shù)據(jù)。
在某些存儲管理系統(tǒng)中,可以在本地系統(tǒng)中生成并存儲備份數(shù)據(jù),其中本地系統(tǒng)也參與基于服務器的存儲管理系統(tǒng)。例如,用于硬件的Tivoli數(shù)據(jù)保護套件產(chǎn)品能夠在IBM的Enterprise StorageServer盤上創(chuàng)建DB2、Oracle以及mySAP數(shù)據(jù)集的本地或遠程備份,其中IBM的Enterprise Storage Server可以是包括連接到存儲裝置的一個或多個處理器的盤存儲服務器,所述存儲裝置包括大容量可伸縮存儲裝置,例如獨立磁盤冗余陣列(RAID)等。IBM、EnterpriseStorage Server、DB2、Tivoli是國際商用機器公司的商標或注冊商標。Oracle是Oracle公司的商標或注冊商標。mySAP是SAP AG的商標或注冊商標。
遠程備份服務器與本地系統(tǒng)相比可以具有不同組的接口和控制來存儲、訪問和修改備份數(shù)據(jù)。例如,某些在遠程備份服務器上可用的,用于存儲、訪問和修改備份數(shù)據(jù)的接口可以不存在于本地系統(tǒng)中。用戶可以使用一個接口來訪問和修改存儲在本地系統(tǒng)上的數(shù)據(jù),并且使用另一個接口來訪問和修改存儲在遠程備份服務器上的數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明提供一種方法、系統(tǒng)、制品、計算機程序產(chǎn)品,其中在第一計算裝置中存儲第一備份數(shù)據(jù)集,以及在第二計算裝置中存儲第二備份數(shù)據(jù)集。在第二計算裝置中維護對應于第一備份數(shù)據(jù)集的元數(shù)據(jù)。根據(jù)所述元數(shù)據(jù)協(xié)調(diào)第一備份數(shù)據(jù)集和第二備份數(shù)據(jù)集。
在其它實施例中,所述第一計算裝置是本地系統(tǒng)并且所述第二計算裝置是遠程服務器,其中所述第一備份數(shù)據(jù)集是本地備份數(shù)據(jù)并且所述第二備份數(shù)據(jù)集是遠程備份數(shù)據(jù),并且其中遠程服務器提供比本地系統(tǒng)更多的數(shù)據(jù)存儲和數(shù)據(jù)訪問功能。
在另外的實施例中,協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)還包括由元數(shù)據(jù)確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于遠程備份數(shù)據(jù)中,以及響應于確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于遠程備份數(shù)據(jù)中,刪除包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器。
在進一步的實施例中,協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)還包括由元數(shù)據(jù)確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于本地備份數(shù)據(jù)中,以及響應于確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于本地備份數(shù)據(jù)中,刪除包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器。
在進一步的實施例中,響應于在協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)的過程中確定一個組的組成(constituent)數(shù)據(jù)容器中的至少一個不存在于本地備份數(shù)據(jù)中,從遠程備份數(shù)據(jù)中刪除該組中的所有組成數(shù)據(jù)容器。響應于在本地系統(tǒng)接收的請求,確定先前啟動的異步備份拷貝操作的狀態(tài),該操作是針對對本地和遠程存儲器的可能更新而進行的。
現(xiàn)在參考附圖,其中所有附圖中相似的參考數(shù)字表示相應的部分圖1描述了根據(jù)某些實施例的計算環(huán)境的方框圖;圖2是在根據(jù)某些實施例示出在計算環(huán)境中實現(xiàn)的數(shù)據(jù)結(jié)構(gòu)的方框圖;
圖3是根據(jù)某些實施例示出本地和遠程備份數(shù)據(jù)的協(xié)調(diào)的第一流程圖;圖4是根據(jù)某些實施例示出本地和遠程備份數(shù)據(jù)的協(xié)調(diào)的第二流程圖;圖5描述了根據(jù)某些實施例、其中實現(xiàn)某些實施例的系統(tǒng)。
具體實施例方式
在下面的描述中,將參考作為說明書一部分并描述了多個實施例的附圖。應該明白,也可以應用其它實施例并且進行結(jié)構(gòu)上和操作上的改變。
某些實施例允許本地數(shù)據(jù)備份管理與遠程數(shù)據(jù)備份管理協(xié)同工作。通過共同管理本地數(shù)據(jù)備份和遠程數(shù)據(jù)備份,可以為最終用戶提供所有備份數(shù)據(jù)的統(tǒng)一表示。
圖1示出了根據(jù)某些實施例的計算環(huán)境100的方框圖。
至少一個本地計算平臺102通過網(wǎng)絡106連接到遠程計算平臺104。在某些實施例中,本地計算平臺102和遠程計算平臺104可以包括任何適當?shù)挠嬎闫脚_,包括本領(lǐng)域公知的平臺,如個人計算機、工作站、大型機、中型計算機、網(wǎng)絡設備(network appliance)、掌上計算機、電話設備、刀片計算機(blade computer)、手持計算機等等。網(wǎng)絡106可以包括本領(lǐng)域公知的任何網(wǎng)絡,例如,存儲區(qū)域網(wǎng)絡(SAN)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、因特網(wǎng)和企業(yè)網(wǎng)等等。
本地計算平臺102包括本地應用程序108并且連接到本地存儲設備110,其中存儲在本地存儲設備110中的備份數(shù)據(jù)可以在邏輯上表示在多個數(shù)據(jù)容器112a,112b,...112n中。本地存儲設備110可以包括多個存儲裝置,例如盤驅(qū)動器、磁帶驅(qū)動器等,它們的內(nèi)容可以在邏輯上表示在數(shù)據(jù)容器112a...112n中。雖然本地存儲設備110在本地計算平臺102內(nèi)示出,然而在可選實施例中本地存儲設備110也可以位于本地計算平臺102之外。在某些實施例中,數(shù)據(jù)容器112a...112n可以包括能夠表示一個或多個備份數(shù)據(jù)單元的任何適當數(shù)據(jù)結(jié)構(gòu)。例如,在某些實施例中,數(shù)據(jù)容器112a...112n可以是面向?qū)ο蟪绦蛟O計系統(tǒng)的對象。在某些其它的實施例,數(shù)據(jù)容器可以是邏輯單元或邏輯單元組。
遠程計算平臺104包括遠程應用程序114并且連接到遠程存儲設備116,其中所述遠程存儲設備116包括遠程備份數(shù)據(jù)118和容器元數(shù)據(jù)120。遠程存儲設備116可以包括多個存儲裝置,例如盤驅(qū)動器、磁帶驅(qū)動器等。雖然遠程存儲設備116在遠程計算平臺104內(nèi)示出,然而在可選實施例中遠程存儲設備116也可以位于遠程計算平臺104之外。
遠程備份數(shù)據(jù)118包括存儲在遠程存儲設備116中的備份數(shù)據(jù)。容器元數(shù)據(jù)120存儲對應于數(shù)據(jù)容器112a...112n的元數(shù)據(jù),其中元數(shù)據(jù)是有關(guān)數(shù)據(jù)容器112a...112n的信息。例如,容器元數(shù)據(jù)120可以存儲有關(guān)哪些數(shù)據(jù)容器112a...112n出現(xiàn)在本地計算平臺102中的信息,而不存儲包含在數(shù)據(jù)容器112a...112n中的數(shù)據(jù)。
雖然在圖1中示出了單個本地應用程序108和單個遠程應用程序114,然而在可選實施例中,由單個本地應用程序108執(zhí)行的功能也可以由在本地計算平臺102中的多個應用程序執(zhí)行,而且由單個遠程應用程序114執(zhí)行的功能也可以由在遠程計算平臺104中的多個應用程序執(zhí)行。例如,在某些實施例中,由本地應用程序108執(zhí)行的功能可以由管理數(shù)據(jù)容器112a...112n的本地備份管理器(未示出)和執(zhí)行對遠程計算平臺104的數(shù)據(jù)備份的本地備份軟件(未示出)來執(zhí)行。
在圖1示出的某些實施例中,數(shù)據(jù)在本地計算平臺102的本地存儲器110中進行本地備份,并且所備份的數(shù)據(jù)存儲在數(shù)據(jù)容器112a...112n中。數(shù)據(jù)也可以在連接到遠程計算平臺104的遠程存儲器116中進行備份。某些實施例允許在本地存儲設備110和遠程存儲設備116之間協(xié)調(diào)備份數(shù)據(jù)。備份數(shù)據(jù)的協(xié)調(diào)使得備份數(shù)據(jù)在本地存儲設備110和遠程存儲設備116之間一致。
雖然圖1僅示出了單個本地計算平臺102,然而在可選實施例中也可以提供多個本地計算平臺并且可以通過網(wǎng)絡106將它們連接到遠程計算平臺104。在這樣的可選實施例中,備份數(shù)據(jù)的協(xié)調(diào)使得備份數(shù)據(jù)在本地計算平臺和遠程計算平臺104之間一致。
在某些實施例中,在本地存儲設備110和遠程存儲設備116之間協(xié)調(diào)備份數(shù)據(jù),以使遠程存儲設備116的備份數(shù)據(jù)和本地存儲設備110的備份數(shù)據(jù)互相一致。
圖2根據(jù)某些實施例示出了在計算環(huán)境100中實現(xiàn)的數(shù)據(jù)結(jié)構(gòu)的方框圖。
在某些實施例中,容器元數(shù)據(jù)120可以包括對象200a,200b,...200n,包含在本地存儲設備110中的數(shù)據(jù)容器112a...112n可以映射到這些對象。舉例來說,數(shù)據(jù)容器112a可以映射到(參考數(shù)字202a)對象200a,數(shù)據(jù)容器112b可以映射到(參考數(shù)字202b)對象200b,并且數(shù)據(jù)容器112n可以映射到(參考數(shù)字202n)對象200n。雖然已經(jīng)示出了數(shù)據(jù)容器112a...112n和對象200a...200n之間的一對一映射,但是在可選實施例中也可以進行其它類型的映射。
在某些實施例中,從對象200a...200n中選擇的多個對象可以形成一個或多個組。例如,對象200a和對象200b可以形成組204,其中組204可以被稱為備份組。備份組200可以表示數(shù)據(jù)容器112a、112b的元數(shù)據(jù)。雖然圖2僅示出了單個備份組200,然而在可選實施例中可以由對象200a...200n創(chuàng)建其它備份組。
在某些實施例中,從數(shù)據(jù)容器112a...112n中選擇的、被獲取以在遠程存儲設備116中進行備份的每個數(shù)據(jù)容器被分配有在所有數(shù)據(jù)容器112a...112n的上下文中唯一的標識符,即,不同的數(shù)據(jù)容器具有不同的標識符。標識符可以被用于唯一標識數(shù)據(jù)容器112a...112n。
因此,圖2示出了對應于數(shù)據(jù)容器112a...112n的元數(shù)據(jù)被存儲在遠程存儲設備116上的對象200a...200n中的某些實施例。然而,在可選實施例中,不同于對象200a...200n的其它數(shù)據(jù)結(jié)構(gòu)也可以用于表示對應于數(shù)據(jù)容器112a...112n的元數(shù)據(jù)。
某些實施例允許使用容器元數(shù)據(jù)120來協(xié)調(diào)存儲在本地存儲設備110中的備份數(shù)據(jù)和存儲在遠程存儲設備116中的備份數(shù)據(jù),從而使得遠程存儲設備116的備份數(shù)據(jù)與本地存儲設備110的備份數(shù)據(jù)相一致。
圖3是根據(jù)某些實施例示出了本地和遠程備份數(shù)據(jù)的協(xié)調(diào)的第一流程圖。圖3的流程圖所示出的操作可以由本地計算平臺102和遠程計算平臺104在計算環(huán)境100中實現(xiàn)。
控制過程從塊300開始,其中本地應用程序108將存儲在本地存儲設備110中的數(shù)據(jù)在邏輯上分組為可被用于存儲本地備份數(shù)據(jù)的多個數(shù)據(jù)容器112a...112n。
本地應用程序108接收針對本地存儲設備110的備份請求(塊302)。在某些實施例中,備份請求可能試圖保護從數(shù)據(jù)容器112a...112n中選擇的一個或多個數(shù)據(jù)容器。作為響應,與遠程應用程序114協(xié)同工作的本地應用程序108將對應于數(shù)據(jù)容器112a...112n的元數(shù)據(jù)存儲在遠程存儲設備116的容器元數(shù)據(jù)120中(塊304)。容器元數(shù)據(jù)120可以存儲對應于數(shù)據(jù)容器112a...112n的多個對象200a...200n。
本地應用程序108接收一個或多個附加備份、恢復或查詢請求(塊306)。在接收到附加備份、恢復或查詢請求時,與遠程應用程序114協(xié)同工作的本地應用程序108啟動存儲在本地存儲設備110的數(shù)據(jù)容器112a...112n中的數(shù)據(jù)和存儲在遠程存儲設備116中的容器元數(shù)據(jù)120之間的協(xié)調(diào)(塊308)。在某些實施例中,生成在本地存儲設備110中存儲備份數(shù)據(jù)的所有數(shù)據(jù)容器的列表,并且生成其元數(shù)據(jù)被存儲在遠程存儲設備116的容器元數(shù)據(jù)120中的所有數(shù)據(jù)容器的列表。
控制過程前進到塊310,其中確定某些數(shù)據(jù)容器已經(jīng)在本地存儲設備110中找到,但是不存在于遠程存儲設備116中。如果是這樣,那么在控制過程前進到塊314之前,為后續(xù)本地備份中的可能使用,將在本地存儲設備中的不存在于遠程存儲設備116中的數(shù)據(jù)容器釋放(塊312)。
如果在塊310處沒有在本地存儲設備110中找到任何未在遠程存儲設備116中出現(xiàn)的數(shù)據(jù)容器,那么控制過程前進到塊314來確定所選數(shù)據(jù)容器是否已經(jīng)在遠程存儲設備116中找到,但是不存在于本地存儲設備110中。如果是這樣,那么從遠程存儲設備116中刪除在遠程存儲設備116的容器元數(shù)據(jù)120中的所選數(shù)據(jù)容器(塊316)。這樣的情況可能發(fā)生在用戶從多個數(shù)據(jù)容器112a...112n中移除數(shù)據(jù)容器,使得被移除的數(shù)據(jù)容器將不再可用的時候??刂七^程前進到塊318。
在塊318處,確定備份數(shù)據(jù)集的一致性(consistency)是否需要選定的多個組成(constituent)數(shù)據(jù)容器。如果是這樣,除非所有組成數(shù)據(jù)容器都存在,否則移除該選定的多個組成數(shù)據(jù)容器(塊320)。舉例來說,數(shù)據(jù)備份可以由數(shù)據(jù)容器“A”、“B”和“C”組成,而且除非所有3個數(shù)據(jù)容器“A”、“B”和“C”都存在,否則該數(shù)據(jù)備份無效。用戶從本地應用程序108的控制中移除數(shù)據(jù)容器“B”。在協(xié)調(diào)過程中,數(shù)據(jù)容器“B”被從遠程存儲設備116中移除。由于數(shù)據(jù)容器“A”和“C”也依賴于數(shù)據(jù)容器“B”的存在,因此數(shù)據(jù)容器“A”和“C”也被從遠程存儲設備116以及本地存儲設備110中移除,并且控制過程前進到塊322。
如果在塊318處備份數(shù)據(jù)集的一致性不需要選定的多個組成數(shù)據(jù)容器,那么檢查任何先前啟動的異步備份拷貝操作的狀態(tài)(塊322)。如果必要,則更新本地存儲設備110和遠程存儲設備116,并且處理過程終止。由于在本地存儲設備110中和遠程存儲設備116中的備份數(shù)據(jù)的協(xié)調(diào)可以在任何備份、恢復或查詢操作之前進行,因此可以在備份數(shù)據(jù)的協(xié)調(diào)過程中檢查異步備份拷貝操作的狀態(tài)。舉例來說,數(shù)據(jù)集的備份可以被轉(zhuǎn)換為示例數(shù)據(jù)容器“A”、“B”、“C”的本地備份。用于在本地備份數(shù)據(jù)的機制可能花費相當長的一段時間,例如幾分鐘或幾小時。數(shù)據(jù)容器可以啟動備份操作,在本地存儲設備110和遠程存儲設備116中將數(shù)據(jù)容器正在使用。在這個時候,用于異步拷貝的備份應用程序可以終止。在隨后的時間,用戶發(fā)出備份、恢復或查詢請求。在協(xié)調(diào)過程中,可以確定先前的本地備份操作是否還在進行中,并且在本地存儲設備110上檢查先前本地備份操作的狀態(tài)。如果先前本地備份操作已經(jīng)完成,并且更新本地存儲設備110和遠程存儲設備116來反映出數(shù)據(jù)容器表示已完成的備份處理。
如果在塊314中確定在遠程存儲設備中沒有找到任何不在本地存儲設備中的數(shù)據(jù)容器,那么控制過程前進到塊322。
由此,圖3示出了用于協(xié)調(diào)存儲在本地存儲設備110中的備份數(shù)據(jù)和存儲在遠程存儲設備116中的備份數(shù)據(jù)的某些實施例。異步備份操作也可以在備份數(shù)據(jù)的協(xié)調(diào)過程中進行處理。在可選實施例中,塊310-322可以以不同于圖3所示的順序來執(zhí)行。
圖4是根據(jù)某些實施例示出了本地和遠程備份數(shù)據(jù)的協(xié)調(diào)的第二流程圖。圖4所示的流程圖中的操作可以在計算環(huán)境100中執(zhí)行。
控制過程從塊400開始,其中第一備份數(shù)據(jù)集(本地備份數(shù)據(jù))以數(shù)據(jù)容器112a...112n被存儲在第一計算裝置(本地系統(tǒng))102中。第二備份數(shù)據(jù)集(遠程備份數(shù)據(jù))存儲在第二計算裝置(遠程系統(tǒng))104中(塊402)。
遠程應用程序114在第二計算裝置104中保存對應于第一備份數(shù)據(jù)集的元數(shù)據(jù)120(塊404)。根據(jù)所述元數(shù)據(jù)120對第一備份數(shù)據(jù)集和第二備份數(shù)據(jù)集進行協(xié)調(diào)(塊406)。
所述協(xié)調(diào)可以包括由元數(shù)據(jù)120確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于遠程備份數(shù)據(jù)中(塊408),并且響應于確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于遠程備份數(shù)據(jù)中,刪除該包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器(塊410)。
所述協(xié)調(diào)也可以包括由元數(shù)據(jù)120確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于本地備份數(shù)據(jù)中(塊412),并且響應于確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于本地備份數(shù)據(jù)中,刪除該包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器(塊414)。
所述協(xié)調(diào)也可以包括響應于在本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)的協(xié)調(diào)過程中確定一個組的組成數(shù)據(jù)容器中的至少一個不存在于本地備份數(shù)據(jù)中,從遠程備份數(shù)據(jù)中刪除該組中的所有組成數(shù)據(jù)容器(塊416)。此外,在某些實施例中,響應于在本地系統(tǒng)接收到請求,確定先前啟動的異步備份拷貝操作的狀態(tài)(塊418)。根據(jù)先前啟動的異步拷貝操作的狀態(tài),可以對本地存儲設備110和遠程存儲設備116進行更新。
因此,圖4示出了協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)的某些實施例。在某些實施例中也可以共同處理數(shù)據(jù)容器組。此外,可以確定先前啟動的用于備份的異步拷貝操作的完成狀態(tài),并且可以根據(jù)所述完成狀態(tài)來對本地存儲設備110和遠程存儲設備116進行更新。
某些實施例允許通過使用能夠協(xié)調(diào)本地數(shù)據(jù)存儲管理系統(tǒng)和遠程數(shù)據(jù)存儲管理系統(tǒng)的庫的協(xié)調(diào)功能來使本地數(shù)據(jù)存儲管理系統(tǒng)的功能與遠程數(shù)據(jù)存儲管理系統(tǒng)的功能協(xié)同。本地數(shù)據(jù)存儲通過存儲在遠程備份系統(tǒng)中的元數(shù)據(jù)來表示。遠程備份系統(tǒng)可被用于提供被本地和遠程存儲的集成備份數(shù)據(jù)集,并且也可被用于利用策略管理構(gòu)件來控制本地備份數(shù)據(jù)。
其它實施例細節(jié)上面所描述的技術(shù)可以作為涉及軟件、固件、微碼、硬件和/或它們的任意組合的方法、設備或制品來實現(xiàn)。這里所使用的術(shù)語“制品”是指在介質(zhì)中實現(xiàn)的代碼或邏輯,其中所述介質(zhì)可以包括硬件邏輯(如,集成電路芯片、可編程門陣列(PGA)、專用集成電路(ASIC)等)或計算機可讀介質(zhì),例如磁存儲介質(zhì)(如硬盤驅(qū)動器、軟盤、磁帶等),光學存儲器(CD-ROM、光盤等),易失性和非易失性存儲器裝置(如,電可擦除可編程只讀存儲器(EEPROM)、只讀存儲器(ROM)、可編程只讀存儲器(PROM)、隨機訪問存儲器(RAM)、動態(tài)隨機訪問存儲器(DRAM)、靜態(tài)隨機訪問存儲器(SRAM)、閃存、固件、可編程邏輯等)。在計算機可讀介質(zhì)中的代碼由處理器訪問并執(zhí)行。代碼或邏輯被編碼于其中的介質(zhì)也可以包括通過空間或諸如光纖、銅線等傳輸介質(zhì)傳播的傳輸信號。代碼或邏輯被編碼于其中的傳輸信號也可以包括無線信號、衛(wèi)星傳輸、無線電波、紅外信號、藍牙等。代碼或邏輯被編碼于其中的傳輸信號能夠由發(fā)送站發(fā)送并由接收站接收,其中在傳輸信號中編碼的代碼或邏輯可以被解碼并存儲在位于接收和發(fā)送站或裝置中的硬件或計算機可讀介質(zhì)中。此外,“制品”可以包括在其中代碼被體現(xiàn)、處理并執(zhí)行的硬件和軟件部件的組合。當然,本領(lǐng)域的普通技術(shù)人員會明白,在不背離實施例的范圍的情況下可以作出許多修改,并且制品可以包括任何信息承載介質(zhì)。例如,制品可以包括具有存儲在其上的指令的存儲介質(zhì),當所述指令由機器運行時,將導致操作的執(zhí)行。
某些實施例可以采取全硬件實施例,全軟件實施例或包含硬件和軟件元素的實施例的方式。在優(yōu)選實施例中,本發(fā)明由軟件實現(xiàn),它包括但不限于固件、駐留的軟件、微碼等。
此外,某些實施例可以采用從提供由計算機或任何指令執(zhí)行系統(tǒng)使用或與之相結(jié)合的程序代碼的計算機可使用或計算機可讀介質(zhì)可訪問的計算機程序產(chǎn)品的形式。出于說明目的,計算機可使用或計算機可讀介質(zhì)可以是任何能夠包含、存儲、傳送、傳播或者傳輸由指令執(zhí)行系統(tǒng)、設備或裝置使用的或與之相結(jié)合的程序的設備。介質(zhì)可以是電子的、磁的、光學的、電磁的、紅外線的或半導體的系統(tǒng)(或設備、或裝置)或者傳播介質(zhì)。計算機可讀介質(zhì)的例子包括半導體或固態(tài)存儲器、磁帶、可移除計算機軟磁盤、隨機訪問存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤?,F(xiàn)有的光盤的例子包括袖珍盤-只讀存儲器(CD-ROM)、袖珍盤-讀/寫(CD-R/W)和DVD。
除非明確指明別的含義,術(shù)語“某些實施例”、“一個實施例”、“實施例”、“多個實施例”、“所述實施例”、“所述多個實施例”、“一個或多個實施例”、“一些實施例”和“一個實施例”表示一個或多個(但不是全部)實施例。除非明確指明別的含義,術(shù)語“包括”、“包含”、“具有”和它們的變化表示“包括但不限于”的含義。除非明確指明別的含義,列舉的項目列表不意味項目中的任何一個或所有項目都是互相排除的。除非明確指明別的含義,術(shù)語“一個”和“所述”表示“一個或多個”。
除非明確指明別的含義,彼此互相通信的裝置不需要持續(xù)地互相通信。此外,互相通信的裝置可以直接或通過一種或多種媒介間接地互相通信。另外,對具有多個互相通信的部件的實施例進行的描述不意味著所有這些部件都是必須的。相反,描述了各種可選部件來表示各種可能的實施例。
此外,雖然處理步驟、方法、算法等可以以相繼的順序描述,然而這些處理、方法和算法也可以被配置為以其它的順序工作。換句話說,可被描述的步驟的任何序列或順序都不必然表示所述步驟必須以該順序執(zhí)行。在此描述的處理步驟可以以任何可行的順序執(zhí)行。此外,一些步驟也可以同時、并行或并發(fā)執(zhí)行。
當在說明書中描述單個裝置或制品時,顯然可以使用多于一個的裝置/制品(不論它們是否協(xié)同工作)來替代單個裝置/制品。同樣地,當在說明書中描述多于一個的裝置或制品(不論他們是否協(xié)同工作)時,顯然可以使用單個裝置/制品來替代該多于一個裝置或制品。裝置的功能和/或特征可以替代地由一個或多個沒有明確描述為具有這樣的功能/特征的其它裝置來實現(xiàn)。這樣,其它的實施例不需要包括該裝置本身。
圖5示出了在其中實現(xiàn)某些實施例的系統(tǒng)500的方框圖。在某些實施例中,圖1所示的計算平臺,例如本地計算平臺102和遠程計算平臺104可以根據(jù)系統(tǒng)500來實現(xiàn)。系統(tǒng)500可以包括電路502,該電路502在某些實施例中可以包括處理器504。系統(tǒng)500還可以包括存儲器506(例如,易失性存儲器裝置)和存儲設備(storage)508。系統(tǒng)500的某些單元可以存在于、也可以不存在于計算平臺102、104中。存儲設備508可以包括非易失性存儲器裝置(如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、閃存、固件、可編程邏輯等)、磁盤驅(qū)動器、光盤驅(qū)動器、磁帶驅(qū)動器等等。存儲設備508可以包括內(nèi)部存儲裝置、附連存儲裝置和/或網(wǎng)絡可訪問存儲裝置。系統(tǒng)500可以包括程序邏輯510,它含有可被載入存儲器506并由處理器504或電路502執(zhí)行的代碼512。在某些實施例中,包括代碼512的程序邏輯510可以存儲在存儲設備508中。在某些實施例中,程序邏輯510可以在電路502中實現(xiàn)。因此,雖然在圖5中示出的程序邏輯510是與其它單元分離的,然而程序邏輯510可以在存儲器506和/或電路502中實現(xiàn)。
某些實施例可以涉及由人工或自動處理來配置計算指令的方法,以便在計算系統(tǒng)中集成計算機可讀代碼,其中與計算系統(tǒng)結(jié)合的代碼被使得能夠執(zhí)行所述實施例的操作。
圖3和圖4所示的至少某些操作可以并行或順序執(zhí)行。在可選實施例中,某些操作可以以不同的順序執(zhí)行、被改變或者刪除。
此外,為了說明目的,已經(jīng)以分立的模塊對許多軟件和硬件組件進行了描述。這些部件可以集成到更少的部件當中或者被分割成更多的部件。此外,所述由特定部件執(zhí)行的某些操作也可以由其它部件執(zhí)行。
圖1-5所示出或所指出的數(shù)據(jù)結(jié)構(gòu)和部件被描述為具有特定類型的信息。在可選實施例中,數(shù)據(jù)結(jié)構(gòu)和部件也可以進行不同的構(gòu)造,并且可以與附圖中示出或指出的數(shù)據(jù)結(jié)構(gòu)和部件相比具有更少、更多或不同的字段或不同的功能。由此,已經(jīng)為解釋和說明的目的提供了上述實施例的描述。但是,這不意在窮舉或?qū)嵤├拗朴谒_的確切形式。根據(jù)上述教導可以作出許多修改和變化。
權(quán)利要求
1.一種方法,包括在第一計算裝置中存儲第一備份數(shù)據(jù)集;在第二計算裝置中存儲第二備份數(shù)據(jù)集;以及在第二計算裝置中維護對應于第一備份數(shù)據(jù)集的元數(shù)據(jù);以及根據(jù)所述元數(shù)據(jù)協(xié)調(diào)第一組備份數(shù)據(jù)和第二組備份數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的方法,其中所述第一計算裝置是本地系統(tǒng)并且所述第二計算裝置是遠程服務器,其中所述第一備份數(shù)據(jù)集是本地備份數(shù)據(jù)并且所述第二備份數(shù)據(jù)集是遠程備份數(shù)據(jù),并且其中遠程服務器提供比本地系統(tǒng)更多的數(shù)據(jù)存儲和數(shù)據(jù)訪問功能。
3.根據(jù)權(quán)利要求2所述的方法,其中協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)還包括由元數(shù)據(jù)確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于遠程備份數(shù)據(jù)中;以及響應于確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于遠程備份數(shù)據(jù)中,刪除包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器。
4.根據(jù)權(quán)利要求2所述的方法,其中協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)還包括由元數(shù)據(jù)確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于本地備份數(shù)據(jù)中;以及響應于確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于本地備份數(shù)據(jù)中,刪除包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器。
5.根據(jù)權(quán)利要求2所述的方法,還包括響應于在協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)的過程中確定一個組的組成數(shù)據(jù)容器中的至少一個不存在于本地備份數(shù)據(jù)中,從遠程備份數(shù)據(jù)中刪除該組中的所有組成數(shù)據(jù)容器;以及響應于在本地系統(tǒng)接收到請求,確定先前啟動的異步備份拷貝操作的狀態(tài),該操作是針對對本地和遠程存儲器的可能更新而進行的。
6.一種系統(tǒng),包括存儲器;連接于存儲器的第一計算裝置;連接于存儲器的第二計算裝置;以及連接于存儲器的處理器,其中所述處理器用于在第一計算裝置中存儲第一備份數(shù)據(jù)集;在第二計算裝置中存儲第二備份數(shù)據(jù)集;以及在第二計算裝置中維護對應于第一備份數(shù)據(jù)集的元數(shù)據(jù);以及根據(jù)所述元數(shù)據(jù)協(xié)調(diào)第一備份數(shù)據(jù)集和第二備份數(shù)據(jù)集。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述第一計算裝置是本地系統(tǒng)并且所述第二計算裝置是遠程服務器,其中所述第一備份數(shù)據(jù)集是本地備份數(shù)據(jù)并且所述第二備份數(shù)據(jù)集是遠程備份數(shù)據(jù),并且其中遠程服務器提供比本地系統(tǒng)更多的數(shù)據(jù)存儲和數(shù)據(jù)訪問功能。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其中所述處理器還用于通過如下操作來協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)由元數(shù)據(jù)確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于遠程備份數(shù)據(jù)中;以及響應于確定包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于遠程備份數(shù)據(jù)中,刪除包含在本地備份數(shù)據(jù)中的數(shù)據(jù)容器。
9.根據(jù)權(quán)利要求7所述的系統(tǒng),其中所述處理器還用于通過如下操作來協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)由元數(shù)據(jù)確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器是否不存在于本地備份數(shù)據(jù)中;以及響應于確定包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器不存在于本地備份數(shù)據(jù)中,刪除包含在遠程備份數(shù)據(jù)中的數(shù)據(jù)容器。
10.根據(jù)權(quán)利要求7所述的系統(tǒng),其中所述處理器還用于響應于在協(xié)調(diào)本地備份數(shù)據(jù)和遠程備份數(shù)據(jù)的過程中確定一個組的組成數(shù)據(jù)容器中的至少一個不存在于本地備份數(shù)據(jù)中,從遠程備份數(shù)據(jù)中刪除該組中的所有組成數(shù)據(jù)容器;以及響應于在本地系統(tǒng)接收到請求,確定先前啟動的異步備份拷貝操作的狀態(tài),該操作是針對對本地和遠程存儲器的可能更新而進行的。
11.一種計算機程序產(chǎn)品,包括含有計算機可讀程序的計算機可用介質(zhì),其中當在處理器上運行所述計算機可讀程序時,使得所述處理器執(zhí)行前述方法權(quán)利要求中的任何一種方法。
全文摘要
本發(fā)明提供一種方法、系統(tǒng)、制品、計算機程序產(chǎn)品,其中在第一計算裝置中存儲第一備份數(shù)據(jù)集以及在第二計算裝置中存儲第二備份數(shù)據(jù)集。在第二計算裝置中維護對應于第一備份數(shù)據(jù)集的元數(shù)據(jù)。根據(jù)所述元數(shù)據(jù)協(xié)調(diào)第一備份數(shù)據(jù)集和第二備份數(shù)據(jù)集。
文檔編號G06F17/30GK1892613SQ20061008771
公開日2007年1月10日 申請日期2006年5月31日 優(yōu)先權(quán)日2005年6月28日
發(fā)明者詹姆斯·P.·史密斯, 埃維沙·H.·豪克伯格, 尼它·加里梅爾拉, 克里斯托弗·扎里姆巴, 卡拉·杜塔, 儲恩芬·P.·帕克, 尼爾·G.·拉斯姆塞恩, 奧利弗·奧根斯坦 申請人:國際商業(yè)機器公司