專利名稱:用來控制數(shù)據(jù)移動器和存儲裝置的方法和系統(tǒng)的制作方法
用來控制數(shù)據(jù)移動器和存儲裝置的方法和系統(tǒng) :技術(shù)領(lǐng)域本公開涉及用于數(shù)據(jù)移動器的選擇的一種方法、系統(tǒng)及制造的物 品,該數(shù)據(jù)移動器用于數(shù)據(jù)轉(zhuǎn)移。
背景技術(shù):
存儲管理服務(wù)器可以提供從在計(jì)算機(jī)網(wǎng)絡(luò)中的客戶端節(jié)點(diǎn)備份、 存檔、或遷移的數(shù)據(jù)對象的檔案庫。存儲管理服務(wù)器可以把數(shù)據(jù)對象 存儲在一個或多個存儲池中,并且可以使用數(shù)據(jù)庫來跟蹤關(guān)于存儲數(shù) 據(jù)對象的信息。在已經(jīng)存儲數(shù)據(jù)對象之后,存儲管理服務(wù)器可以在相同存儲池內(nèi)或向其它池拷貝或移動對象。數(shù)據(jù)轉(zhuǎn)移操作直接由存儲管理服務(wù)器進(jìn)行,其中存儲管理服務(wù)器依據(jù)希望的操作存儲、檢索、移動、或拷貝數(shù)據(jù)對象。數(shù)據(jù)轉(zhuǎn)移操作 也可以通過使用位于存儲管理服務(wù)器外的外部數(shù)據(jù)移動器進(jìn)行,并且 通過使用外部數(shù)據(jù)移動器進(jìn)行的這樣的數(shù)據(jù)轉(zhuǎn)移操作可以稱作機(jī)外(outboard)數(shù)據(jù)轉(zhuǎn)移。在某些情形下,可能必需或希望通過使用這 樣的外部數(shù)據(jù)移動器進(jìn)行數(shù)據(jù)轉(zhuǎn)移操作。例如,在某些情形下,存儲 管理服務(wù)器可能不能夠直接訪問存儲裝置和存儲在其上的數(shù)據(jù)對象, 并且可能依賴于用于數(shù)據(jù)轉(zhuǎn)移操作的外部數(shù)據(jù)移動器。在其它情形 下,可能希望從存儲管理服務(wù)器向外部數(shù)據(jù)移動器卸載數(shù)據(jù)轉(zhuǎn)移操作 以減小在存儲管理服務(wù)器上的處理負(fù)載。發(fā)明內(nèi)容提供了方法、系統(tǒng)及制造的物品,其中在多個數(shù)據(jù)移動器與多個 存儲裝置之間保持一組通信路徑。接收從源存儲裝置到目標(biāo)存儲裝置 轉(zhuǎn)移數(shù)據(jù)的請求,其中源存儲裝置和目標(biāo)存儲裝置被包括在多個存儲裝置中?;谕ㄐ怕窂浇M從多個數(shù)據(jù)移動器選擇至少一個數(shù)據(jù)移動 器,其中所選擇的至少一個數(shù)據(jù)移動器可把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到 目標(biāo)存儲裝置。在另外的實(shí)施例中,所述通信路徑組是第一組通信路徑。維持多 個數(shù)據(jù)移動器之間的第二組通信路徑,其中除了基于第 一組通信路徑 之外也基于第二組通信路徑從所述多個數(shù)據(jù)移動器中選擇至少一個 數(shù)據(jù)移動器。在進(jìn)一步的實(shí)施例中,選擇所述至少一個數(shù)據(jù)移動器還包括,相 對于直接連接的第二數(shù)據(jù)移動器和第三數(shù)據(jù)移動器,其中第二數(shù)據(jù)移 動器具有到源裝置的通信路徑并且第三數(shù)據(jù)移動器具有到目標(biāo)裝置 的通信路徑,優(yōu)先選擇具有到源存儲裝置和目標(biāo)存儲裝置的通信路徑 的所述至少一個數(shù)據(jù)移動器為第一數(shù)據(jù)移動器,并且其中第二數(shù)據(jù)移 動器和第三數(shù)據(jù)移動器能夠包括第一數(shù)據(jù)移動器。在更進(jìn)一步的實(shí)施例中,選擇所述至少一個數(shù)據(jù)移動器還包括, 相對于第四數(shù)據(jù)移動器和第五數(shù)據(jù)移動器,其中第四數(shù)據(jù)移動器和第 五數(shù)據(jù)移動器與至少一個其它數(shù)據(jù)移動器組合從而能夠把數(shù)據(jù)從源 存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置,優(yōu)先選擇所述至少一個數(shù)據(jù)移動器為 直接連接的第二數(shù)據(jù)移動器和第三數(shù)據(jù)移動器,其中第四數(shù)據(jù)移動 器、第五數(shù)據(jù)移動器及所述至少一個其它數(shù)據(jù)移動器能夠包括第一、 第二及第三數(shù)據(jù)移動器的一個或多個。在某些實(shí)施例中,第一組通信路徑和第二組通信路徑被保持在存 儲管理服務(wù)器的檔案庫中,其中存儲管理服務(wù)器選擇所述至少一個數(shù) 據(jù)移動器。所選擇的至少 一個數(shù)據(jù)移動器把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到 目標(biāo)存儲裝置,其中選擇所述至少一個數(shù)據(jù)移動器還包括,基于用于 在多個數(shù)據(jù)移動器之間選擇的一個或多個標(biāo)準(zhǔn),相對于一個或多個其 它數(shù)據(jù)移動器,優(yōu)先選擇所述至少一個數(shù)據(jù)移動器,其中所述用于選 擇的一個或多個標(biāo)準(zhǔn)也保持在存儲管理服務(wù)器中的檔案庫中。
終代表對應(yīng)部分的附圖圖l表明按照某些實(shí)施例的計(jì)算環(huán)境的方塊圖,包括存儲管理服 務(wù)器、互連數(shù)據(jù)移動器及存儲裝置;圖2表明方塊圖,顯示按照某些實(shí)施例的在存儲管理服務(wù)器中包 含的數(shù)據(jù)庫的元件;圖3表明方塊圖,顯示按照某些實(shí)施例的在數(shù)據(jù)移動器和存儲裝 置的第一典型配置中的數(shù)據(jù)移動器的選擇;圖4表明方塊圖,顯示按照某些實(shí)施例的在數(shù)據(jù)移動器和存儲裝 置的第二典型配置中的數(shù)據(jù)移動器的選擇;圖5表明按照某些實(shí)施例的用來選擇用于在源存儲裝置與目標(biāo) 存儲裝置之間的數(shù)據(jù)轉(zhuǎn)移的數(shù)據(jù)移動器的操作;及圖6表明方塊圖,顯示按照某些實(shí)施例的可以包含在存儲管理服 務(wù)器中的某些元件。
具體實(shí)施方式
在如下描述中,對于形成其部分和顯示幾個實(shí)施例的附圖進(jìn)行參 考。要理解,可以利用其它實(shí)施例,并且可以進(jìn)行結(jié)構(gòu)和操作變化。某些數(shù)據(jù)移動器可允許在數(shù)據(jù)移動器之間數(shù)據(jù)轉(zhuǎn)移的可能性。數(shù) 據(jù)移動器可合作地工作,以便即使在沒有單個數(shù)據(jù)移動器能夠都訪問 源和目標(biāo)存儲裝置兩者、并且數(shù)據(jù)轉(zhuǎn)移必須發(fā)生在源存儲裝置與目標(biāo) 存儲裝置之間的情形下也能實(shí)施數(shù)據(jù)轉(zhuǎn)移。例如,在某些情況下,第 一數(shù)據(jù)移動器可能能夠訪問源存儲裝置,并且第二數(shù)據(jù)移動器可能能 夠訪問目標(biāo)存儲裝置。第一數(shù)據(jù)移動器從源存儲裝置讀取數(shù)據(jù)并且在 通信鏈路上把數(shù)據(jù)發(fā)送到第二數(shù)據(jù)移動器,并且第二數(shù)據(jù)移動器然后 寫入目標(biāo)存儲裝置。某些實(shí)施例允許選擇數(shù)據(jù)移動器以進(jìn)行機(jī)外數(shù)據(jù)轉(zhuǎn)移。在單個數(shù) 據(jù)移動器能夠訪問源和目標(biāo)存儲裝置的某些實(shí)施例中,單個數(shù)據(jù)移動 器進(jìn)行機(jī)外數(shù)據(jù)轉(zhuǎn)移。在其中多個數(shù)據(jù)移動器可以潛在地進(jìn)行數(shù)據(jù)轉(zhuǎn) 移的其它實(shí)施例中,可以選擇多個數(shù)據(jù)移動器的一個或多個以進(jìn)行數(shù)據(jù)轉(zhuǎn)移。在沒有都能訪問源和目標(biāo)存儲裝置的單個數(shù)據(jù)移動器的某些實(shí) 施例中,可以選擇兩個或更多數(shù)據(jù)移動器,其中兩個或更多數(shù)據(jù)移動 器可合作地進(jìn)行數(shù)據(jù)轉(zhuǎn)移。某些實(shí)施例允許從數(shù)據(jù)移動器的多種組合 選擇一種數(shù)據(jù)移動器的具體組合。某些實(shí)施例也允許在數(shù)據(jù)移動器動態(tài)共享存儲裝置的環(huán)境中選 擇數(shù)據(jù)移動器用于機(jī)外數(shù)據(jù)轉(zhuǎn)移。典型實(shí)施例圖1表明按照某些實(shí)施例的計(jì)算環(huán)境100的方塊圖,該計(jì)算環(huán)境 100包括存儲管理服務(wù)器102、互連數(shù)據(jù)移動器104及多個存儲裝置 106。存儲管理服務(wù)器102可以包括任何適當(dāng)?shù)挠?jì)算平臺,包括在現(xiàn)有 技術(shù)中當(dāng)前已知的那些,如個人計(jì)算機(jī)、工作站、主機(jī)、中檔計(jì)算機(jī)、 網(wǎng)絡(luò)器具、掌上電腦、電話裝置、刀片(blade)計(jì)算機(jī)、手持電腦等 等。互連數(shù)據(jù)移動器104可以包括一個或多個外部數(shù)據(jù)移動器,其中 在圖1中已經(jīng)顯示典型數(shù)據(jù)移動器"i"108、典型數(shù)據(jù)移動器"j"110及 典型數(shù)據(jù)移動器"k,,112。在不同實(shí)施例中可以不同地進(jìn)行在互連數(shù)據(jù) 移動器104中的互連。存儲裝置106可以包括任何適當(dāng)存儲裝置,包 括在現(xiàn)有技術(shù)中當(dāng)前已知的那些,如磁帶裝置、磁盤驅(qū)動器、光學(xué)驅(qū) 動器等等。在圖1中,存儲裝置106已經(jīng)顯示成包括典型存儲裝置 "p"114、典型存儲裝置"q"116及典型存儲裝置"r"118。存儲管理服務(wù)器102聯(lián)接到互連數(shù)據(jù)移動器104上,并且相互通 信路徑120存在于互連數(shù)據(jù)移動器104與存儲裝置106之間。例如, 在典型實(shí)施例中,數(shù)據(jù)移動器"j"110可能具有到存儲裝置"q"116的相 互通信路徑,并且數(shù)據(jù)移動器"k"112可以具有到存儲裝置"r,,118的 相互通信路徑。在互連數(shù)據(jù)移動器104與存儲裝置106之間的相互通 信路徑120在不同實(shí)施例中可以不同。 一個數(shù)據(jù)移動器可以具有到多 個存儲裝置的連接,并且不同數(shù)據(jù)移動器可以具有到相同存儲裝置的 路徑。存儲管理服務(wù)器102包括選擇應(yīng)用程序122和數(shù)據(jù)庫124。選擇 應(yīng)用程序122可以以軟件、硬件、固件或其任何組合實(shí)施,并且選擇 應(yīng)用程序122從互連數(shù)據(jù)移動器104選擇一個或多個數(shù)據(jù)移動器以在 源存儲裝置與目標(biāo)存儲裝置之間移動數(shù)據(jù),其中源和目標(biāo)存儲裝置被 包括在存儲裝置106中。數(shù)據(jù)庫124是在現(xiàn)有技術(shù)中已知的任何適當(dāng)數(shù)據(jù)檔案庫,并且包 括數(shù)據(jù)結(jié)構(gòu)126、 128、 130,其中數(shù)據(jù)結(jié)構(gòu)126存儲數(shù)據(jù)移動器到存 儲裝置互連通信路徑,其中數(shù)據(jù)結(jié)構(gòu)128存儲數(shù)據(jù)移動器內(nèi)部通信路 徑,及數(shù)據(jù)結(jié)構(gòu)130存儲附加選擇標(biāo)準(zhǔn)(tie-breaking selection criteria),相對于也可用來把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置 的一個或多個其它數(shù)據(jù)移動器,該附加選擇標(biāo)準(zhǔn)用來優(yōu)先選擇一個或 多個數(shù)據(jù)移動器以把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置。因此,圖1表明其中選擇應(yīng)用程序122用來從互連數(shù)據(jù)移動器 104選擇一個或多個數(shù)據(jù)移動器的某些實(shí)施例,其中所選擇的一個或 多個數(shù)據(jù)移動器用來把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置,其中 源和目標(biāo)存儲裝置被包括在存儲裝置106中,并且互連路徑存在于互 連數(shù)據(jù)移動器104與存儲裝置106之間。某些實(shí)施例預(yù)先假定一種機(jī) 制來確定用于數(shù)據(jù)轉(zhuǎn)移操作的源和目標(biāo)存儲位置(以及由此可能的存 儲裝置)。源和/或目標(biāo)存儲位置可在每個數(shù)據(jù)轉(zhuǎn)移請求中規(guī)定,或者 可以由策略定義。盡管實(shí)施例可以或不能利用存儲池來存儲數(shù)據(jù),但在包括存儲池 的某些實(shí)施例中,備份請求可基于策略規(guī)定數(shù)據(jù)要從源磁盤裝置轉(zhuǎn)移 到目標(biāo)存儲池。目標(biāo)存儲池又可以指示在包含一個或多個磁帶驅(qū)動器 的磁帶庫中的存儲。在這樣的實(shí)施例中,恢復(fù)請求可以要求從包含一 個或多個磁帶驅(qū)動器的磁帶庫到目標(biāo)盤裝置的數(shù)據(jù)轉(zhuǎn)移?;诓呗远?義,回收操作可以把數(shù)據(jù)從在源存儲池中的一個磁帶移動到在同一存 儲池中的另 一個目標(biāo)磁帶。由存儲池引用的磁帶庫可以包含一個或多 個磁帶驅(qū)動器,該磁帶驅(qū)動器可以用作用于數(shù)據(jù)轉(zhuǎn)移的存儲裝置。遷同或不同的磁帶庫)。磁帶庫的每一個可以包含可以用作數(shù)據(jù)轉(zhuǎn)移的 存儲裝置的一個或多個磁帶驅(qū)動器。存儲池備份操作可以把數(shù)據(jù)從源 存儲池(磁帶庫)拷貝到目標(biāo)拷貝存儲池(相同或不同的磁帶庫)。 磁帶庫的每一個可以包含可以用作數(shù)據(jù)轉(zhuǎn)移的存儲裝置的一個或多 個磁帶驅(qū)動器。圖2的方塊圖顯示按照某些實(shí)施例的在計(jì)算環(huán)境100的存儲管理 服務(wù)器102中包括的數(shù)據(jù)庫124的元件。數(shù)據(jù)結(jié)構(gòu)126存儲數(shù)據(jù)移動器到存儲裝置相互通信路徑,在某些 實(shí)施例中數(shù)據(jù)結(jié)構(gòu)126可以包括典型數(shù)據(jù)移動器到存儲裝置相互通信 路徑200、 206、 212。在某些典型實(shí)施例中,數(shù)據(jù)移動器到存儲裝置 相互通信路徑200保持在數(shù)據(jù)移動器"i,,202與存儲裝置"p,,204之間, 數(shù)據(jù)移動器到存儲裝置相互通信路徑206保持在數(shù)據(jù)移動器"j,,208與 存儲裝置"q"210之間,及數(shù)據(jù)移動器到存儲裝置相互通信路徑212 保持在數(shù)據(jù)移動器"k"214與存儲裝置"r"216之間。在其它實(shí)施例中, 數(shù)據(jù)移動器到存儲裝置相互通信路徑的數(shù)量可以與在圖2中顯示的數(shù) 量不同。在某些實(shí)施例中,數(shù)據(jù)結(jié)構(gòu)126代表的數(shù)據(jù)移動器到存儲裝 置相互通信路徑可以稱作第一組通信路徑。在某些實(shí)施例中,數(shù)據(jù)庫 124可以記錄為數(shù)據(jù)移動器和存儲裝置的每種組合定義的路徑。每種 路徑定義也可以包含由數(shù)據(jù)移動器使用以訪問存儲裝置的參數(shù),如邏 輯單元(LUN)或裝置名稱。路徑可被清晰地定義或可以由數(shù)據(jù)移動 器潛在地自動探測。存儲數(shù)據(jù)移動器內(nèi)部通信路徑的數(shù)據(jù)結(jié)構(gòu)128在某些實(shí)施例中 可以包括典型數(shù)據(jù)移動器內(nèi)部通信路徑218、 224。在某些典型實(shí)施例 中,數(shù)據(jù)移動器內(nèi)部通信路徑218保持在數(shù)據(jù)移動器"i"220與數(shù)據(jù)移 動器"k"222之間,并且數(shù)據(jù)移動器內(nèi)部通信路徑224保持在數(shù)據(jù)移動 器"j"226與數(shù)據(jù)移動器"k"228之間。在其它實(shí)施例中,數(shù)據(jù)移動器內(nèi) 部通信路徑的數(shù)量可以與在圖2中顯示的數(shù)量不同。在某些實(shí)施例中, 數(shù)據(jù)結(jié)構(gòu)128代表的數(shù)據(jù)移動器內(nèi)部通信路徑可以稱作第二組通信路 徑。在某些實(shí)施例中,數(shù)據(jù)移動器內(nèi)部通信路徑可包括允許數(shù)據(jù)移動器建立通信對話的信息,如用于其它數(shù)據(jù)移動器的互聯(lián)網(wǎng)協(xié)議(IP) 地址和口令。在某些實(shí)施例中,系統(tǒng)可以配置成假定任何數(shù)據(jù)移動器具有對于任何其它數(shù)據(jù)移動器的連接性。某些實(shí)施例提供最優(yōu)選的數(shù)據(jù)移動器,并且也允許多個數(shù)據(jù)移動 器具有對相同存儲裝置的共享訪問。數(shù)據(jù)移動器的選擇可以基于預(yù)定定義和選擇標(biāo)準(zhǔn)(如由數(shù)據(jù)結(jié)構(gòu)130表明的附加選擇標(biāo)準(zhǔn))自動地進(jìn) 行。代表附加選擇標(biāo)準(zhǔn)的數(shù)據(jù)結(jié)構(gòu)130可以包括代表數(shù)據(jù)移動器優(yōu)先 順序230、數(shù)據(jù)移動器當(dāng)前工作負(fù)栽順序232、數(shù)據(jù)移動器歷史工作 負(fù)載順序234、數(shù)據(jù)移動器歷史性能順序236及其它標(biāo)準(zhǔn)(未顯示), 以用來在不同數(shù)據(jù)移動器組之間選擇。數(shù)據(jù)移動器優(yōu)先順序230可以用來把預(yù)先分配的優(yōu)先級提供給 數(shù)據(jù)移動器。每個數(shù)據(jù)移動器可賦予優(yōu)先級,或者由管理員通過手工 配置、或者基于數(shù)據(jù)移動器的某種屬性(諸如數(shù)據(jù)移動器的處理能力 之類)。為了甚至更大的粒度性,優(yōu)先級可以賦予數(shù)據(jù)移動器與存儲 裝置之間的每條路徑,或賦予數(shù)據(jù)移動器之間的每條路徑。具有最有 利優(yōu)先級的數(shù)據(jù)移動器(或路徑)可以被選擇應(yīng)用程序122優(yōu)選。數(shù)據(jù)移動器當(dāng)前工作負(fù)載順序232可以用來存儲關(guān)于數(shù)據(jù)移動 器的當(dāng)前工作負(fù)載,其中工作負(fù)載可以包括來自存儲管理服務(wù)器102 的其它數(shù)據(jù)轉(zhuǎn)移請求的處理。為了實(shí)現(xiàn)工作負(fù)栽平衡,具有較低工作 負(fù)載的數(shù)據(jù)移動器可以被選擇應(yīng)用程序122優(yōu)選。數(shù)據(jù)移動器歷史工作負(fù)載順序234可以代表關(guān)于數(shù)據(jù)移動器的 歷史負(fù)栽。為了實(shí)現(xiàn)工作負(fù)載平衡,具有較低歷史負(fù)載的數(shù)據(jù)移動器 可被選擇應(yīng)用程序122優(yōu)選。這考慮到數(shù)據(jù)移動器在數(shù)據(jù)轉(zhuǎn)移操作開 始時(shí)具有低工作負(fù)載、但在數(shù)據(jù)轉(zhuǎn)移操作結(jié)束之前可被分派另外工作 的可能性。在使用多個選擇標(biāo)準(zhǔn)的實(shí)施例中,這些多個選擇標(biāo)準(zhǔn)可以按規(guī)定 的順序應(yīng)用,并且順序較低的標(biāo)準(zhǔn)僅用作附加選擇器(tiebreaker)。 例如,在以上顯示的順序中,預(yù)先分配優(yōu)先級可以是第一考慮,并且 如果多個候選數(shù)據(jù)移動器具有相同的預(yù)先分配優(yōu)先級,則可以使用當(dāng)前工作負(fù)載。組合多個選擇標(biāo)準(zhǔn)的替換手段可以是對于每個標(biāo)準(zhǔn),相對于其它標(biāo)準(zhǔn),使用硬編碼或可配置加權(quán)。例如,所述選擇可以60% 基于預(yù)先分配優(yōu)先級,并且40%基于當(dāng)前工作負(fù)載。某些實(shí)施例可以基于如下順序的可能性選擇一個或多個數(shù)據(jù)移 動器參與數(shù)據(jù)轉(zhuǎn)移。1. 如果具有到源和目標(biāo)存儲裝置的路徑的數(shù)據(jù)移動器的數(shù)量是 1,那么選擇應(yīng)用程序122選擇單個數(shù)據(jù)移動器用來進(jìn)行數(shù)據(jù)轉(zhuǎn)移;2. 如果具有到源和目標(biāo)存儲裝置的路徑的數(shù)據(jù)移動器的數(shù)量大 于1,那么選擇應(yīng)用程序122從多于一個的具有到源和目標(biāo)存儲裝置 的路徑的數(shù)據(jù)移動器選擇單個數(shù)據(jù)移動器。所選擇的數(shù)據(jù)移動器用來 進(jìn)行數(shù)據(jù)轉(zhuǎn)移。根據(jù)一個或多個預(yù)定標(biāo)準(zhǔn),所選擇的單個數(shù)據(jù)移動器 是用于數(shù)據(jù)轉(zhuǎn)移的最優(yōu)數(shù)據(jù)移動器;3. 否則,如果有至少 一個具有到源存儲裝置的路徑的數(shù)據(jù)移動器 以及至少一個具有到目標(biāo)存儲裝置的路徑的其它數(shù)據(jù)移動器,并且這 些數(shù)據(jù)移動器彼此具有通信路徑,則選擇應(yīng)用程序122選擇具有到源 存儲裝置的路徑的單個數(shù)據(jù)移動器和具有到目標(biāo)存儲裝置的路徑的 單個數(shù)據(jù)移動器,其中所選擇的具有到源存儲裝置的路徑的單個數(shù)據(jù) 移動器和所選擇的具有到目標(biāo)存儲裝置的路徑的單個數(shù)據(jù)移動器之 間存在路徑。所選擇的兩個數(shù)據(jù)移動器用來進(jìn)行數(shù)據(jù)轉(zhuǎn)移;及4. 否則,如果有至少 一個具有到源存儲裝置的路徑的數(shù)據(jù)移動器 和至少一個具有到目標(biāo)存儲裝置的路徑的數(shù)據(jù)移動器,并且這些數(shù)據(jù) 移動器可經(jīng)至少一個中間數(shù)據(jù)移動器互連,則選擇應(yīng)用程序122選擇 數(shù)據(jù)移動器的最好組合以進(jìn)行數(shù)據(jù)轉(zhuǎn)移。圖3的方塊圖顯示按照某些實(shí)施例的在數(shù)據(jù)移動器和存儲裝置 的第一典型配置中的數(shù)據(jù)移動器的選擇。在圖3中,兩個數(shù)據(jù)移動器, 數(shù)據(jù)移動器A 300和數(shù)據(jù)移動器B 302,每一個經(jīng)過數(shù)據(jù)移動器到存 儲裝置相互通信路徑(通過在圖例308中顯示的實(shí)線代表)能夠訪問 源存儲裝置304和目標(biāo)存儲裝置306,用于特定數(shù)據(jù)轉(zhuǎn)移操作。在數(shù) 據(jù)移動器A 300與數(shù)據(jù)移動器B 302之間也有通信路徑(通過在圖例308中顯示的虛線代表)。在圖3中,為了在源存儲裝置304與目標(biāo)存儲裝置306之間的數(shù) 據(jù)轉(zhuǎn)移,選擇應(yīng)用程序122選擇(附圖標(biāo)記312):(i) 數(shù)據(jù)移動器A300,如果數(shù)據(jù)移動器A300具有由附加選擇 標(biāo)準(zhǔn)130所確定的較高選擇優(yōu)先級;或(ii) 數(shù)據(jù)移動器B 302,如果數(shù)據(jù)移動器B 302具有由附加選 擇標(biāo)準(zhǔn)130所確定的較高選擇優(yōu)先級。圖4的方塊圖顯示按照某些實(shí)施例的在數(shù)據(jù)移動器和存儲裝置 的第二典型配置中的數(shù)據(jù)移動器的選擇。圖4包括具有通過根據(jù)圖例 414、 416的實(shí)線和虛線顯示的連接的源存儲裝置402、目標(biāo)存儲裝置 404、數(shù)據(jù)移動器A 406、數(shù)據(jù)移動器B 408、數(shù)據(jù)移動器C 410、數(shù) 據(jù)移動器D 412。在圖4中,沒有數(shù)據(jù)移動器具有到源存儲裝置402 和目標(biāo)存儲裝置404的訪問。然而,數(shù)據(jù)移動器A406和B 408每一 個能夠訪問源存儲裝置402,并且數(shù)據(jù)移動器C 410和D 412每一個 能夠訪問目標(biāo)存儲裝置404。另外,如圖4中所示通信路徑存在于數(shù) 據(jù)移動器A/B與C/D之間。在圖4中,為了在源存儲裝置402與目標(biāo)存儲裝置404之間的數(shù) 據(jù)轉(zhuǎn)移,選擇應(yīng)用程序122選擇(附圖標(biāo)記418)如下組合中具有使 用附加選擇標(biāo)準(zhǔn)130所確定的最高選擇優(yōu)先級的那個 (0數(shù)據(jù)移動器A 406和C410;(ii) 數(shù)據(jù)移動器A 406和D 412;(iii) 數(shù)據(jù)移動器B 408和C 410;以及 (iv )數(shù)據(jù)移動器B 408和D 412。圖5表明按照某些實(shí)施例的用來選擇數(shù)據(jù)移動器的操作,所述數(shù) 據(jù)移動器在源存儲裝置與目標(biāo)存儲裝置之間的數(shù)據(jù)轉(zhuǎn)移。操作可以由 在存儲管理服務(wù)器102中實(shí)施的選擇應(yīng)用程序122進(jìn)行。控制在塊500開始,并且前進(jìn)到塊502,其中選擇應(yīng)用程序122 接收從多個數(shù)據(jù)移動器104選擇一個或多個數(shù)據(jù)移動器的請求,其中 所選擇的數(shù)據(jù)移動器要用于源裝置與目標(biāo)裝置之間的數(shù)據(jù)移動。源裝置和目標(biāo)裝置被包括在存儲裝置106中。選擇應(yīng)用程序122從數(shù)據(jù)庫124確定(在塊504 )是否有具有到 源裝置和目標(biāo)裝置的路徑的至少一個第一數(shù)據(jù)移動器。如果有,那么 選擇應(yīng)用程序122 (在塊506處)選擇第一數(shù)據(jù)移動器以進(jìn)行源裝置 與目標(biāo)裝置之間的數(shù)據(jù)移動,并且過程停止(在塊508處)。在塊506 平局(tie)的情況下(即,有多于一個的合適數(shù)據(jù)移動器),選擇應(yīng) 用程序122使用附加選擇標(biāo)準(zhǔn)130選擇第一數(shù)據(jù)移動器。如果選擇應(yīng)用程序122從數(shù)據(jù)庫124確定(在塊504)不存在具 有到源裝置和目標(biāo)裝置的路徑的第一數(shù)據(jù)移動器,那么控制轉(zhuǎn)到塊 510。在塊510,選擇應(yīng)用程序122確定是否有具有到源裝置的路徑的 第二數(shù)據(jù)移動器、是否有具有到目標(biāo)裝置的路徑的第三數(shù)據(jù)移動器及 是否有在第二數(shù)據(jù)移動器與第三數(shù)據(jù)移動器之間的直接通信路徑。如 果有,那么選擇應(yīng)用程序122 (在塊512處)選擇第二數(shù)據(jù)移動器和 第三數(shù)據(jù)移動器以進(jìn)行源裝置與目標(biāo)裝置之間的數(shù)據(jù)移動,并且過程 停止(在塊508)。在塊512,在平局的情況下,選擇應(yīng)用程序122 使用附加選擇標(biāo)準(zhǔn)130選擇第二和第三數(shù)據(jù)移動器。確定塊510是"否"的情況下,那么控制轉(zhuǎn)到塊514,在該處選擇 應(yīng)用程序122確定是否有具有到源裝置的路徑的第四數(shù)據(jù)移動器、具 有到目標(biāo)裝置的路徑的第五數(shù)據(jù)移動器、及在第四數(shù)據(jù)移動器與第五 數(shù)據(jù)移動器之間是否有經(jīng)過除了第四數(shù)據(jù)移動器和第五數(shù)據(jù)移動器 以外的一個或多個其它數(shù)據(jù)移動器的通信路徑。如果有,則選擇應(yīng)用 程序122 (在塊516處)選擇第四數(shù)據(jù)移動器、第五數(shù)據(jù)移動器及一 個或多個其它數(shù)據(jù)移動器以進(jìn)行源裝置與目標(biāo)裝置之間的數(shù)據(jù)移動。 在平局的情況下,選擇應(yīng)用程序122使用附加選擇標(biāo)準(zhǔn)130選擇具有 最高優(yōu)先級的數(shù)據(jù)移動器的組合。確定塊514是"否"的情況下,那么控制轉(zhuǎn)到塊518,在該處選擇 應(yīng)用程序122返回一個錯誤,指示沒有數(shù)據(jù)移動器組合能夠用于所請 求的源裝置與目標(biāo)裝置之間的數(shù)據(jù)移動,并且過程停止(在塊508 )。在某些實(shí)施例中,如果多于兩組數(shù)據(jù)移動器是可用的,則選擇最好的組。通過考慮源和目標(biāo)數(shù)據(jù)移動器對,以及通過確定鏈接源和目 標(biāo)的最小數(shù)量的中間數(shù)據(jù)移動器而實(shí)現(xiàn)這一點(diǎn)。如果多組都具有相同 數(shù)量的中間數(shù)據(jù)移動器,則早先描述的選擇標(biāo)準(zhǔn)可以用來選擇最好的 組。在實(shí)際中,中間數(shù)據(jù)移動器的數(shù)量可以限于某一較小數(shù)值,因?yàn)?合理地期望系統(tǒng)可能被配置路徑為使數(shù)據(jù)轉(zhuǎn)移所要求的數(shù)據(jù)移動器 的總數(shù)最小。另外的實(shí)施例細(xì)節(jié)所描述的技術(shù)可以作為涉及軟件、固件、微代碼、硬件和/或其 任何組合的方法、設(shè)備或制造的物品實(shí)施。這里所使用的術(shù)語"制造 的物品,,是指在介質(zhì)中實(shí)施的代碼或邏輯電路,其中這樣的介質(zhì)可以包括硬件邏輯電路[例如,集成電路芯片、可編程門陣列(PGA)、 專用集成電路(ASIC)等等l或計(jì)算機(jī)可讀存儲介質(zhì),如磁性存儲介 質(zhì)(例如,硬盤驅(qū)動器、軟盤、磁帶等等)、光學(xué)存儲器(CD-ROM、 光盤等等)、易失和非易失存儲器裝置[例如,電可擦除可編程只讀存 儲器(EEPROM )、只讀存儲器(ROM )、可編程只讀存儲器(PROM )、 隨機(jī)存取存儲器(RAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、靜態(tài) 隨機(jī)存取存儲器(SRAM)、閃盤、固件、可編程邏輯電路等等l。在 計(jì)算機(jī)可讀存儲介質(zhì)中的代碼由處理器訪問和執(zhí)行。其中編碼代碼或 邏輯電路的介質(zhì)也可以包括通過空間或傳輸介質(zhì),如光纖、銅導(dǎo)線等 等,傳播的傳輸信號。其中編碼代碼或邏輯電路的傳輸信號還可以包 括無線信號、衛(wèi)星傳輸、無線電波、紅外信號、藍(lán)牙等等。其中編碼 代碼或邏輯電路的傳輸信號能夠由發(fā)射站發(fā)射和由接收站接收,其中在傳輸信號中編碼的代碼或邏輯電路在接收和發(fā)射站或裝置處在硬 件或計(jì)算機(jī)可讀介質(zhì)中可以譯碼和存儲。另外,"制造的物品,,可以包括其中實(shí)施、處理及執(zhí)行代碼的硬件和軟件元件的組合。當(dāng)然,本領(lǐng)域的技術(shù)人員將認(rèn)識到,可以進(jìn)行多種修改而不脫離實(shí)施例的范圍,并且制造的物品可以包括任何信息承載介質(zhì)。例如,制造的物品可以包括存儲介質(zhì),該存儲介質(zhì)在其中已經(jīng)存儲當(dāng)由機(jī)器執(zhí)行時(shí)導(dǎo)致進(jìn)行的操作的指令。某些實(shí)施例可具有全部硬件實(shí)施例、全部軟件實(shí)施例或包含硬件 和軟件元件的實(shí)施例的形式。在優(yōu)選實(shí)施例中,本發(fā)明以軟件實(shí)施, 它包括但不限于固件、駐留軟件、微代碼等等。此外,某些實(shí)施例可具有由計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)可訪問 的計(jì)算機(jī)程序產(chǎn)品的形式,該介質(zhì)提供由計(jì)算機(jī)或任何指令執(zhí)行系統(tǒng) 使用或相連接的程序代碼。為了這種描述的目的,計(jì)算機(jī)可用或計(jì)算 機(jī)可讀介質(zhì)能是可包含、存儲、通信、傳播、或輸送由指令執(zhí)行系統(tǒng)、 設(shè)備、或裝置使用與其連接的程序的任何設(shè)備。介質(zhì)能是電子、磁性、 光學(xué)、電磁、紅外、或半導(dǎo)體系統(tǒng)(或設(shè)備或裝置)或傳播介質(zhì)。計(jì) 算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài)存儲器、磁帶、可除去計(jì)算機(jī)盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、剛性磁盤及 光盤。光盤的當(dāng)前例子包括緊致盤-只讀存儲器(CD-ROM)、緊致 盤-讀/寫(CD-R/W)及DVD。術(shù)語"某些實(shí)施例"、"一實(shí)施例"、"實(shí)施例"、"數(shù)個實(shí)施例"、"該 實(shí)施例"、"該數(shù)個實(shí)施例"、"一個或多個實(shí)施例"、"一些實(shí)施例"及"一 個實(shí)施例"是指一個或多個(但不是所有)實(shí)施例,除非另外特意規(guī) 定。術(shù)語"包括(including),,、"包括(comprising),,、"具有,,及其 變化是指"包括但不限于",除非另外特意規(guī)定。術(shù)語的羅列不意味著 術(shù)語的任一個或全部是相互排它的,除非另外特意規(guī)定。術(shù)語"a"、 "an,,及"the"是指"一個或多個",除非另外特意規(guī)定。處于彼此通信中的裝置不必處于彼此連續(xù)通信中,除非另外特意 規(guī)定。另外,處于彼此通信中的裝置可以直接或通過一個或多個中間 物間接地通信。另外,關(guān)于處于彼此通信中的幾個元件的實(shí)施例的描 述不意味著要求這樣的所有元件。相反,各種選擇性元件描述成說明 各種各樣的可能實(shí)施例。而且,盡管過程步驟、方法步驟、算法等可以按序列順序描述, 但這樣的過程、方法及算法可以配置成按交替順序工作。換句話說, 可以描述的步驟的任何次序或順序不必指示按該順序進(jìn)行步驟的要 求。這里描述的過程的步驟可以按任何實(shí)際順序進(jìn)行。而且, 一些步驟可以同時(shí)、并行或共行地進(jìn)行。當(dāng)這里描述單個裝置或物品時(shí),顯然多于一個的裝置/物品(不 管它們是否合作)可以用來代替單個裝置/物品。類似地,在這里描述 多于一個的裝置或物品的場合(不管它們是否合作),顯然單個裝置 /物品可以用來代替多于一個的裝置或物品。裝置的功能和/或特征由 沒有清晰描述成具有這樣的功能/特征的一個或多個其它裝置交替地 實(shí)施。因而,其它實(shí)施例不必包括裝置本身。圖6的方塊圖顯示按照某些實(shí)施例的可以被包括在存儲管理服 務(wù)器102中的某些元件。存儲管理服務(wù)器102也可以稱作系統(tǒng),并且 可以包括電路602,該電路602在某些實(shí)施例中可以包括處理器604。 系統(tǒng)600也可以包括存儲器606 (例如,易失存儲器裝置)和存儲裝 置608。存儲裝置608可以包括非易失存儲器裝置(例如,EEPROM、 ROM、 PROM、 RAM、 DRAM、 SRAM、閃盤、固件、可編程邏輯 電路等等)、磁盤驅(qū)動器、光盤驅(qū)動器、磁帶驅(qū)動器等等。存儲裝置 608可以包括內(nèi)部存儲裝置、附加的存儲裝置及/或網(wǎng)絡(luò)可訪問存儲裝 置。系統(tǒng)600可以包括程序邏輯電路610,該程序邏輯電路610包括 可以加載到存儲器606中并由處理器604或電路602執(zhí)行的代碼612。 在某些實(shí)施例中,包括代碼612的程序邏輯電路610可以存儲在存儲 裝置608中。在某些其它實(shí)施例中,程序邏輯電路610可以在電路602 中實(shí)施。因此,盡管圖6顯示與其它元件分離的程序邏輯電路610, 但程序邏輯電路610可以在存儲器606和/或電路602中實(shí)施。某些實(shí)施例旨在一種用來把計(jì)算指令通過個人或自動處理集成 計(jì)算機(jī)可讀代碼展開成計(jì)算機(jī)系統(tǒng)的方法,其中與計(jì)算系統(tǒng)組合的代 碼能夠進(jìn)行描述實(shí)施例的操作。在圖1-6中所表明的至少一些操作可以并行以及順序地進(jìn)行。在 可選擇實(shí)施例中, 一些操作可以按不同順序進(jìn)行、修改或除去。此外,為了說明目的在分離的模塊中已經(jīng)描述了多個軟件和硬件 元件。這些元件可以集成為更少數(shù)量的元件,或者分割成更大數(shù)量的 元件。另外,描述成由特定元件進(jìn)行的某些操作可以由其它元件進(jìn)行。在圖l-6中顯示或參考的數(shù)據(jù)結(jié)構(gòu)和元件描述成具有特定類型的 信息。在替換實(shí)施例中,數(shù)據(jù)結(jié)構(gòu)和元件可以不同地配置,并且具有 比在圖中顯示或提到的更少、更多或不同的字段或不同的功能。因此,實(shí)施例的以上描述為了說明和描述的目的已經(jīng)呈現(xiàn)。不打 算窮盡或把實(shí)施例限于所公開的精確形式。多種修改和變化鑒于以上 教導(dǎo)是可能的。
權(quán)利要求
1.一種方法,包括保持多個數(shù)據(jù)移動器與多個存儲裝置之間的一組通信路徑;接收從源存儲裝置到目標(biāo)存儲裝置轉(zhuǎn)移數(shù)據(jù)的請求,其中源存儲裝置和目標(biāo)存儲裝置被包括在所述多個存儲裝置中;及基于所述通信路徑組從所述多個數(shù)據(jù)移動器選擇至少一個數(shù)據(jù)移動器,其中所選擇的至少一個數(shù)據(jù)移動器能夠把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述通信路徑組是第一組通 信路徑,還包括保持多個數(shù)據(jù)移動器之間的第二組通信路徑,其中除了基于第一 組通信路徑之外也基于第二組通信路徑來選擇所述多個數(shù)據(jù)移動器 中的所述至少一個數(shù)據(jù)移動器。
3. 根據(jù)權(quán)利要求2所述的方法,其中所述至少一個數(shù)據(jù)移動器的 選擇還包括相對于直接連接的第二數(shù)據(jù)移動器和第三數(shù)據(jù)移動器,其中第二 數(shù)據(jù)移動器具有到源裝置的通信路徑并且第三數(shù)據(jù)移動器具有到目 標(biāo)裝置的通信路徑,優(yōu)先選擇具有到源存儲裝置和目標(biāo)存儲裝置的通 信路徑的所述至少一個數(shù)據(jù)移動器為第一數(shù)據(jù)移動器,其中第二數(shù)據(jù) 移動器和第三數(shù)據(jù)移動器能夠包括第一數(shù)據(jù)移動器。
4. 根據(jù)權(quán)利要求3所述的方法,其中所述至少一個數(shù)據(jù)移動器的 選擇還包括相對于第四數(shù)據(jù)移動器和第五數(shù)據(jù)移動器,其中第四數(shù)據(jù)移動器 和第五數(shù)據(jù)移動器與至少一個其它數(shù)據(jù)移動器組合從而能夠把數(shù)據(jù) 從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置,優(yōu)先選擇所述至少一個數(shù)據(jù)移動 器為直接連接的第二數(shù)據(jù)移動器和第三數(shù)據(jù)移動器,其中所述第四數(shù) 據(jù)移動器、第五數(shù)據(jù)移動器及至少一個其它數(shù)據(jù)移動器能夠包括所述 第一、第二及第三數(shù)據(jù)移動器的一個或多個。
5. 根據(jù)權(quán)利要求2所述的方法,其中所述第一組通信路徑和第二 組通信路徑被保持在存儲管理服務(wù)器的檔案庫中,其中存儲管理服務(wù) 器選擇所述至少一個數(shù)據(jù)移動器,該方法還包括所選擇的至少一個數(shù)據(jù)移動器把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo) 存儲裝置,其中選擇所述至少一個數(shù)據(jù)移動器還包括,基于用于在多 個數(shù)據(jù)移動器之間進(jìn)行選擇的一個或多個標(biāo)準(zhǔn),相對于一個或多個其 它數(shù)據(jù)移動器,優(yōu)先選擇所述至少一個數(shù)據(jù)移動器,其中所述用于選 擇的一個或多個標(biāo)準(zhǔn)也被保持在存儲管理服務(wù)器中的檔案庫中。
6. —種用來控制多個數(shù)據(jù)移動器和多個存儲裝置的系統(tǒng),該系統(tǒng)包括存儲器;和處理器,耦合到所述存儲器,其中所述處理器執(zhí)行操作,所述操 作包括(i) 保持多個數(shù)據(jù)移動器與多個存儲裝置之間的一組通信路徑;(ii) 接收從源存儲裝置到目標(biāo)存儲裝置轉(zhuǎn)移數(shù)據(jù)的請求,其中 源存儲裝置和目標(biāo)存儲裝置被包括在所述多個存儲裝置中;及(iii) 基于所述通信路徑組從多個數(shù)據(jù)移動器選擇至少一個數(shù)據(jù) 移動器,其中所選擇的至少一個數(shù)據(jù)移動器能夠把數(shù)據(jù)從源存儲裝置 轉(zhuǎn)移到目標(biāo)存儲裝置。
7. 根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述通信路徑組是第 一組通 信路徑,操作還包括保持所述多個數(shù)據(jù)移動器之間的第二組通信路徑,其中除了基于 第一組通信路徑之外也基于第二組通信路徑從所述多個數(shù)據(jù)移動器 中選擇至少 一個數(shù)據(jù)移動器。
8. 根據(jù)權(quán)利要求7所述的系統(tǒng),其中選擇所述至少一個數(shù)據(jù)移動 器還包括相對于直接連接的第二數(shù)據(jù)移動器和第三數(shù)據(jù)移動器,其中第二 數(shù)據(jù)移動器具有到源裝置的通信路徑并且第三數(shù)據(jù)移動器具有到目標(biāo)裝置的通信路徑,優(yōu)先選擇具有到源存儲裝置和目標(biāo)存儲裝置的通信路徑的所述至少 一個數(shù)據(jù)移動器為第 一數(shù)據(jù)移動器,并且其中第二 數(shù)據(jù)移動器和第三數(shù)據(jù)移動器能夠包括第一數(shù)據(jù)移動器。
9. 根據(jù)權(quán)利要求8所述的系統(tǒng),其中選擇所述至少一個數(shù)據(jù)移動 器還包括相對于與至少一個其它數(shù)據(jù)移動器組合從而能夠把數(shù)據(jù)從源存 儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置第四數(shù)據(jù)移動器和第五數(shù)據(jù)移動器,優(yōu)先 選擇所述至少一個數(shù)據(jù)移動器為直接連接的第二數(shù)據(jù)移動器和第三 數(shù)據(jù)移動器,其中所述第四數(shù)據(jù)移動器、第五數(shù)據(jù)移動器及至少一個 其它數(shù)據(jù)移動器能夠包括所述第一、第二及第三數(shù)據(jù)移動器的一個或 多個。
10. 根據(jù)權(quán)利要求7所述的系統(tǒng),其中所述第一組通信路徑和第 二組通信路徑被保持在存儲管理服務(wù)器的檔案庫中,其中存儲管理服 務(wù)器選擇所述至少一個數(shù)據(jù)移動器,該操作還包括所選擇的至少一個數(shù)據(jù)移動器把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo) 存儲裝置,其中選擇所述至少一個數(shù)據(jù)移動器還包括,基于用于多個 數(shù)據(jù)移動器之間選擇的一個或多個標(biāo)準(zhǔn),相對于一個或多個其它數(shù)據(jù)移動器,優(yōu)先選擇所述至少一個數(shù)據(jù)移動器,其中用于選擇的所述一 個或多個標(biāo)準(zhǔn)也被保持在存儲管理服務(wù)器中的檔案庫中。
全文摘要
本發(fā)明涉及一種用來控制數(shù)據(jù)移動器和存儲裝置的方法和系統(tǒng)。更具體地,提供一種方法、系統(tǒng)及制造物品,其中保持多個數(shù)據(jù)移動器與多個存儲裝置之間的一組通信路徑。接收從源存儲裝置到目標(biāo)存儲裝置轉(zhuǎn)移數(shù)據(jù)的請求,其中源存儲裝置和目標(biāo)存儲裝置被包括在多個存儲裝置中?;谕ㄐ怕窂浇M從多個數(shù)據(jù)移動器選擇至少一個數(shù)據(jù)移動器,其中所選擇的至少一個數(shù)據(jù)移動器可把數(shù)據(jù)從源存儲裝置轉(zhuǎn)移到目標(biāo)存儲裝置。
文檔編號G06F12/00GK101231615SQ20081000292
公開日2008年7月30日 申請日期2008年1月11日 優(yōu)先權(quán)日2007年1月22日
發(fā)明者埃里克·C.·克塞爾, 巴里·弗魯奇特曼, 戴維·M.·坎農(nóng), 蕭玉美, 邁克爾·H.·塞加匹里 申請人:國際商業(yè)機(jī)器公司