跨具有不同分配尺寸的存儲器遷移數(shù)據(jù)的制作方法
【專利說明】跨具有不同分配尺寸的存儲器遷移數(shù)據(jù)
【背景技術(shù)】
[0001] 本發(fā)明一般的涉及在數(shù)據(jù)處理環(huán)境中應(yīng)用的移動數(shù)據(jù)的方法,系統(tǒng)和計算機程序 產(chǎn)品。更特別的,本發(fā)明是關(guān)于跨具有不相似分配尺寸的存儲器迀移數(shù)據(jù)的方法,系統(tǒng)和計 算機程序產(chǎn)品。
[0002] 數(shù)據(jù)存儲設(shè)備(存儲設(shè)備)是任何可用于存儲數(shù)據(jù)的裝置。存儲設(shè)備設(shè)備例如是 硬盤驅(qū)動,磁帶驅(qū)動,固態(tài)存儲器及驅(qū)動,以及光盤。
[0003] 存儲設(shè)備通過在存儲空間的塊中為數(shù)據(jù)分配空間來存儲數(shù)據(jù)。典型的,通過存儲 設(shè)備的類型和特定的其它因素確定預(yù)設(shè)定尺寸(size),該特定的其它因素例如是操作系統(tǒng) 使用的地址尺寸,地址空間尺寸,給定數(shù)據(jù)處理系統(tǒng)可用的存儲空間尺寸,以及這些和許多 其它因素的組合。
[0004] 例如,一些存儲設(shè)備定義軌道(track)和相應(yīng)的軌道尺寸。通過分配一些用于存 儲數(shù)據(jù)的軌道為數(shù)據(jù)分配空間??砂磫诬壍莱叽缁虿煌瑪?shù)目的軌道在塊中分配空間。
[0005] 相似的,一些存儲設(shè)備定義了柱(cylinder)以及相應(yīng)的柱尺寸。這種存儲設(shè)備通 過在塊中分配一些柱為數(shù)據(jù)分配空間。
[0006] 因此,一些這樣的存儲設(shè)備能夠按照一個或多個軌道的塊分配它的一部分空間, 以及根據(jù)一個或多個柱的塊分配它的另一部分空間。不同的存儲設(shè)備能用不同的塊尺寸為 數(shù)據(jù)分配空間。例如,一個存儲設(shè)備可使用η個軌道的塊為數(shù)據(jù)分配空間,另一個存儲設(shè)備 可使用m個軌道的塊為數(shù)據(jù)分配空間。存儲設(shè)備用于為數(shù)據(jù)分配空間的塊被稱為最小分配 單元,該塊的尺寸被稱為最小分配單元尺寸。
【發(fā)明內(nèi)容】
[0007] 示例性實施例提供了一種用于跨具有不同分配尺寸的存儲器迀移數(shù)據(jù)的方法、 系統(tǒng)以及計算機程序產(chǎn)品。一個實施例用第一數(shù)據(jù)處理系統(tǒng)的處理器,確定用來在源 (source)數(shù)據(jù)存儲設(shè)備為數(shù)據(jù)分配空間的最小分配單元尺寸。該實例用第一數(shù)據(jù)處理系統(tǒng) 的處理器,計算在目標(biāo)(target)數(shù)據(jù)存儲設(shè)備的具有第一最小分配單元尺寸的第一最小 分配單元的數(shù)目,其中該數(shù)目的第一最小分配單元能夠被該數(shù)據(jù)的一部分完全占據(jù)。該實 施例用第一數(shù)據(jù)處理系統(tǒng)的處理器,計算從該數(shù)據(jù)中排除該數(shù)據(jù)的該部分后剩余數(shù)據(jù)的數(shù) 量。該實施例用第一數(shù)據(jù)處理系統(tǒng)的處理器,將該數(shù)據(jù)的該部分迀移至該目標(biāo)(target)的 該數(shù)目的第一最小分配單元。該實施例用第一數(shù)據(jù)處理系統(tǒng)的處理器,將該數(shù)量的剩余數(shù) 據(jù)迀移至該目標(biāo)的第二數(shù)目的具有第二最小分配單元尺寸的第二最小分配單元。
[0008] 另一個實施例包括一個或多個計算機可讀的有形存儲設(shè)備。該實施例還包括存儲 在該一個或多個存儲設(shè)備上的程序指令,用于確定用來在源數(shù)據(jù)存儲設(shè)備為數(shù)據(jù)分配空間 的最小分配單元尺寸。該實例還包括存儲在該一個或多個存儲設(shè)備中的至少之一上的程序 指令,用于計算在目標(biāo)數(shù)據(jù)存儲設(shè)備的具有第一最小分配單元尺寸的第一最小分配單元的 數(shù)目,其中該數(shù)目的第一最小分配單元能夠被該數(shù)據(jù)的部分完全占據(jù)。該實施例還包括存 儲在該一個或多個存儲設(shè)備中的至少之一上的程序指令,用于計算從該數(shù)據(jù)中排除該數(shù)據(jù) 的該部分后剩余數(shù)據(jù)的數(shù)量。該實施例還包括存儲在該一個或多個存儲設(shè)備中的至少之一 上的程序指令,用于將該數(shù)據(jù)的該部分迀移至目標(biāo)的該數(shù)目的第一最小分配單元。該實施 例還包括存儲在該一個或多個存儲設(shè)備中的至少之一上的程序指令,用于將該數(shù)量的剩余 數(shù)據(jù)迀移至目標(biāo)的第二數(shù)目的具有第二最小分配單元尺寸的第二最小分配單元。
[0009] 另一個實施例包括一個或多個處理器,一個或多個計算機可讀的內(nèi)存,以及一個 或多個計算機可讀的有形存儲設(shè)備。該實施例還包括存儲在該一個或多個存儲設(shè)備中至少 一個之上的用于通過該一個或多個處理器中至少一個經(jīng)由該一個或多個內(nèi)存中至少一個 來執(zhí)行的計算機可讀程序指令,用于確定用來在源數(shù)據(jù)存儲設(shè)備為數(shù)據(jù)分配空間的最小分 配單元尺寸。該實施例還包括存儲在該一個或多個存儲設(shè)備中至少一個之上的用于通過該 一個或多個處理器中至少一個經(jīng)由該一個或多個內(nèi)存中至少一個來執(zhí)行的計算機可讀程 序指令,用于計算在目標(biāo)數(shù)據(jù)存儲設(shè)備的具有第一最小分配單元尺寸的第一最小分配單元 的數(shù)目,其中該數(shù)目的第一最小分配單元能夠被該數(shù)據(jù)的部分完全占據(jù)。該實施例還包括 存儲在該一個或多個存儲設(shè)備中至少一個之上的用于通過該一個或多個處理器中至少一 個經(jīng)由該一個或多個內(nèi)存中至少一個來執(zhí)行的計算機可讀程序指令,用于計算從該數(shù)據(jù)中 排除該數(shù)據(jù)的該部分后剩余數(shù)據(jù)的數(shù)量。該實施例還包括存儲在該一個或多個存儲設(shè)備中 至少一個之上的用于通過該一個或多個處理器中至少一個經(jīng)由該一個或多個內(nèi)存中至少 一個來執(zhí)行的計算機可讀程序指令,用于將該數(shù)據(jù)的該部分迀移至目標(biāo)的該數(shù)目的第一最 小分配單元。該實施例還包括存儲在該一個或多個存儲設(shè)備中至少一個之上的用于通過該 一個或多個處理器中至少一個經(jīng)由該一個或多個內(nèi)存中至少一個來執(zhí)行的計算機可讀程 序指令,用于將該數(shù)量的剩余數(shù)據(jù)迀移至目標(biāo)的第二數(shù)目的具有第二最小分配單元尺寸的 第二最小分配單元。
【附圖說明】
[0010] 在附加的權(quán)利要求中列出了被認(rèn)為是本發(fā)明所特有的新特征。通過參看后面示例 性實施例的詳細描述并當(dāng)連同附圖一起閱讀時,將能夠更好的理解該發(fā)明本身,以及優(yōu)選 的使用方式、進一步的目的及其優(yōu)點。
[0011] 圖1描述了可實施示例性實施例的數(shù)據(jù)處理系統(tǒng)網(wǎng)絡(luò)的框圖;
[0012] 圖2描述了可實施示例性實施例的數(shù)據(jù)處理系統(tǒng)的框圖;
[0013] 圖3描述了根據(jù)示例性實施例能被改進的數(shù)據(jù)迀移的框圖;
[0014] 圖4描述了根據(jù)示例性實施例能被改進的另一個數(shù)據(jù)迀移的框圖;
[0015] 圖5描述了根據(jù)示例性實施例的跨具有不同分配尺寸的存儲器迀移數(shù)據(jù)過程的 框圖;
[0016] 圖6描述了根據(jù)示例性實施例的跨具有不同分配尺寸的存儲器迀移數(shù)據(jù)過程的 流程圖。
【具體實施方式】
[0017] 為了說明存儲器管理及分配的機制,考慮了運行在z/OS操作系統(tǒng)中的IBM 3390 存儲設(shè)備的例子。("IBM"和"z/OS"是國際商業(yè)機器公司在美國及其它國家的注冊商標(biāo)。)
[0018] 例如,IBM 3390結(jié)構(gòu)定義一個"柱"等于15個軌道。3390-9類型的設(shè)備可定義從 1到 65520的任意數(shù)量的柱。因此,在存儲設(shè)備物理硬件的配置中規(guī)定了若干柱,而從z/OS 操作系統(tǒng)軟件一側(cè),數(shù)據(jù)集可以軌道級別進行分配。
[0019] 3390-A設(shè)備類型可配置有多于65520個柱。物理配置的超過65520數(shù)目的 數(shù)目的柱,以具有1113個柱的塊來配置。例如,為了配置具有70000個柱的3390-A 設(shè)備,該設(shè)備被配置有65520個柱,再加上整數(shù)數(shù)量的以1113為單元的柱,從而會 得到至少70000個柱。在這個具有70000個柱的例子中,硬件將配置65520+Ceili ng( ((70000-65520)+1112)/1113]) *1113 = 71085 個柱,其中"Ceiling"函數(shù)舍入至下一個 整數(shù)。加1112向上舍入差70000-65520,以包括1113的下一個倍數(shù)。
[0020] 接下來從z/OS軟件側(cè),第一個65520個柱是該"軌道管理"區(qū)域,高出65520(相 對于1)的剩余的5565個柱是柱管理區(qū)域。在實際實施中,該3390-A設(shè)備被配置了更大的 容量,例如半個TB或一個TB。對于半個TB的設(shè)備,硬件配置了 639828個柱。
[0021] 示例性的實施例認(rèn)識到,出于多方面的原因,在數(shù)據(jù)處理系統(tǒng)中出現(xiàn)了將數(shù)據(jù)從 一個存儲設(shè)備中移動、或迀移到另一個存儲設(shè)備的需求。例如,用更新的、更大的或更快的 數(shù)據(jù)存儲設(shè)備替換舊的、過時的或有缺陷的數(shù)據(jù)存儲設(shè)備經(jīng)常是將數(shù)據(jù)從以前的數(shù)據(jù)存儲 設(shè)備迀移到替代數(shù)據(jù)存儲設(shè)備的原因。
[0022] 在上面的例子中,在數(shù)據(jù)迀移中,以前使用的數(shù)據(jù)存儲設(shè)備作為源數(shù)據(jù)存儲設(shè)備 (源),而該替代數(shù)據(jù)存儲設(shè)備作為目標(biāo)數(shù)據(jù)存儲設(shè)備(目標(biāo))。通常,在示例性的實施例的 范圍內(nèi),任何數(shù)據(jù)存儲設(shè)備都能成為源,任何數(shù)據(jù)存儲設(shè)備也能成為目標(biāo)。
[0023] 該示例性的實施例認(rèn)識到,源以及目標(biāo)在很大程度上自由地選擇用于為數(shù)據(jù)分配 存儲器的最小分配單元以及對應(yīng)的最小分配單元尺寸。因此,待迀移的數(shù)據(jù)可采用一個最 小分配單元尺寸存儲在源上,一旦迀移,就可采用不同的最小分配單元尺寸存儲在目標(biāo)上。
[0024] 該示例性的實施例認(rèn)識到,在數(shù)據(jù)迀移中,源和目標(biāo)數(shù)據(jù)存儲設(shè)備中不同的最小 分配單元尺寸導(dǎo)致了重大問題。例如,假設(shè)源使用的最小分配單元尺寸是15個柱,使用了 30個柱來存儲數(shù)據(jù),也