專利名稱:存儲管理裝置、存儲管理驅(qū)動器、存儲管理系統(tǒng)以及存儲管理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算M儲技術(shù),更具體地說,涉及用于計算機(jī)系統(tǒng)的存 儲管理技術(shù)。
背景技術(shù):
對于當(dāng)前的業(yè)務(wù)領(lǐng)域,存儲系統(tǒng)及其服務(wù)變得越來越重要,例如用于 快速復(fù)制、遠(yuǎn)程復(fù)制、備盼服務(wù)等。不同于基于簡單的單個磁盤的個人用 途存儲,當(dāng)前的業(yè)務(wù)活動高度地依賴于高性能、高速、高安全性、高可靠 性的存儲系統(tǒng)。對于高端和中端市場,具有許多專用技術(shù)和系統(tǒng),例如存儲區(qū)域網(wǎng)絡(luò)(SAN )和網(wǎng)絡(luò)附加存儲(NAS )等。SAN允許存儲設(shè)備和處理器(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與 LAN相比)連接,通過這種連接實(shí)現(xiàn)只受光纖線路長度限制的集中式存儲。 SAN可以被看作是存儲總線概念的一個擴(kuò)展,它使用局域網(wǎng)(LAN)和廣 域網(wǎng)(WAN)中類似的單元,實(shí)現(xiàn)存儲設(shè)備和服務(wù)器之間的互連。這些單 元包括路由器、集線器、交換機(jī)和網(wǎng)關(guān)。SAN可在服務(wù)器間共享,也可 以為某一服務(wù)器所專有,既可以是本地的存儲設(shè)備也可以擴(kuò)展到地理區(qū)域 上的其他地方。SAN的接口可以是企業(yè)系統(tǒng)連接(ESCON)、小型計算 機(jī)系統(tǒng)接口 (SCSI)、串行存儲結(jié)構(gòu)(SSA)、高性能并行接口 (HIPPI)、 光纖通道(FC)或任何新的物理連接方法。
然而,對于低端市場,這些SAN和NAS系統(tǒng)過于昂貴。對于低端市場,也已經(jīng)涌現(xiàn)出一些技術(shù)和系統(tǒng),例如冗余獨(dú)立磁盤陣 歹寸(Redundant Array of Independent Disks, RAID,最凈刀為"冗余廉價磁 盤陣列(Redundant Array of Inexpensive Disks) " ) 。 RAID技術(shù)允許將 一系列磁盤分組,以實(shí)現(xiàn)提高可用性的目的,并提供為實(shí)現(xiàn)數(shù)據(jù)保護(hù)而必 需的數(shù)據(jù)冗余,有時還有改善性能的作用。目前,采用的RAID方式包括,RAIDO:條帶化,即磁盤的擴(kuò)展,但 不提供數(shù)據(jù)保護(hù);RAID1:磁盤鏡像,兩塊磁盤互為冗余;RAID 10:對 兩個磁盤鏡像的陣列作擴(kuò)展;RAID 5:校驗(yàn)位分布的冗余磁盤陣列,目前 4吏用最為廣泛的方式;RAID 50:對兩個RAID 5的陣列作擴(kuò)展。但是,這些系統(tǒng)是獨(dú)立系統(tǒng),不能在原有系統(tǒng)的^5出上進(jìn)行升級。例 如,低端市場用戶必須使用RAID系統(tǒng)取代舊磁盤,而不能基于舊磁盤進(jìn) 行升級。由于必須要廢棄舊磁盤,使得一些用戶放棄使用RAID,因?yàn)檫@ 些新涌現(xiàn)出的中小型企業(yè)(SMB)用戶對IT成本非常敏感。另 一個選擇是使用基于軟件的RAID技術(shù),例如在微軟Windows系統(tǒng) 中的巻管理的軟件RAID。然而,基于軟件的RAID技術(shù)受到計算機(jī)系統(tǒng) 的主機(jī)的容量和性能的限制。通常,大多數(shù)存儲功能需要大量資源,例如 中央處理單元(CPU),存儲器,輸入/輸出(I/O)總線等,這導(dǎo)致極大 地影響了在計算機(jī)系統(tǒng)的主機(jī)上運(yùn)行的應(yīng)用和服務(wù)。因此,基于軟件的 RAID技術(shù)在當(dāng)前的市場上沒有廣泛采用和使用。因此,對于低端市場,需要以"加"的形式添加新的存儲系統(tǒng)和設(shè)備, 也就是說,需要在舊的存儲系統(tǒng)和設(shè)備的^^出上,添加新的存儲系統(tǒng)和設(shè) 備。發(fā)明內(nèi)容為了解決上述現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供了存儲管理裝置、 存儲管理驅(qū)動器、存儲管理系統(tǒng)以及存儲管理方法。根據(jù)本發(fā)明的一個方面,提供了一種用于計算機(jī)系統(tǒng)的存儲管理裝置, 所述計算機(jī)系統(tǒng)包括在其^Mt系統(tǒng)控制下的第 一存儲設(shè)備,所述存儲管理 裝置包括總線接口單元,用于將所述存儲管理裝置橋接到所述計算機(jī)系 統(tǒng)的擴(kuò)展總線上;數(shù)據(jù)流接收單元,用于通過所迷總線接口羊元接收來自 所述計算機(jī)系統(tǒng)的數(shù)據(jù)流;數(shù)據(jù)流處理單元,用于對所述數(shù)據(jù)流進(jìn)行處理, 并確定所述數(shù)據(jù)流的目的地;以及數(shù)據(jù)流發(fā)送單元,基于所述數(shù)據(jù)流處理 單元所確定的所述數(shù)據(jù)流的目的地,將所述處理后的數(shù)據(jù)流發(fā)送到所述第 一存儲設(shè)備和/或所述存儲管理裝置控制下的第二存儲設(shè)備。根據(jù)本發(fā)明的另一個方面,提供了一種用于計算機(jī)系統(tǒng)的存儲管理驅(qū) 動器,所述計算機(jī)系統(tǒng)包括在其操作系統(tǒng)控制下的存儲設(shè)備,所述驅(qū)動器 用于在所迷操作系統(tǒng)的巻管理層和所述存儲設(shè)備的驅(qū)動層之間插入數(shù)據(jù)流 截獲層,所述數(shù)據(jù)流截獲層用于截獲來自所述巻管理層的數(shù)據(jù)流。根據(jù)本發(fā)明的另一個方面,提供了一種用于計算機(jī)系統(tǒng)的存儲管理系 統(tǒng),所述計算機(jī)系統(tǒng)包括在其操作系統(tǒng)控制下的第一存儲設(shè)備,所述存儲 管理系統(tǒng)包括上面所述的用于計算機(jī)系統(tǒng)的存儲管理驅(qū)動器,用于在所 述操作系統(tǒng)的巻管理層和所述第一存儲設(shè)備的驅(qū)動層之間插入所述數(shù)據(jù)流 截獲層;以及上面所迷的用于計算機(jī)系統(tǒng)的存儲管理裝置,其中所迷數(shù)據(jù) 流接收單元用于接收所述數(shù)據(jù)流截獲層截獲的數(shù)據(jù)流。根據(jù)本發(fā)明的另一個方面,提供了一種用于計算機(jī)系統(tǒng)的存儲管理方 法,所述計算機(jī)系統(tǒng)包括在其操作系統(tǒng)控制下的第一存儲設(shè)備,所述方法 包括以下步驟在所述操作系統(tǒng)的巻管理層和所述第一存儲設(shè)備的驅(qū)動層 之間插入數(shù)據(jù)流截獲層;利用所述數(shù)據(jù)流截獲層截獲來自所述巻管理層的 數(shù)據(jù)流;通過所述計算機(jī)系統(tǒng)的擴(kuò)展總線,接收來自所述數(shù)據(jù)流截獲層截 獲的數(shù)據(jù)流;對所述數(shù)據(jù)流進(jìn)行處理,并確定所述數(shù)據(jù)流的目的地;以及 基于所確定的所述數(shù)據(jù)流的目的地,將處理后的數(shù)據(jù)流發(fā)送到所述第一存 儲設(shè)備和/或不在所迷計算機(jī)系統(tǒng)的操作系統(tǒng)直接控制下的第二存儲設(shè)備。
相信通過以下結(jié)合附圖對本發(fā)明具體實(shí)施方式
的說明,能夠使人們更
好地了解本發(fā)明上述的特點(diǎn)、優(yōu)點(diǎn)和目的。圖1是根據(jù)本發(fā)明的一個實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置的方才匡圖;圖2是根據(jù)圖l的實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置的一個實(shí)例的方框圖;圖3是根據(jù)圖1的實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置的另一個 實(shí)例的方^f匡圖;圖4 ^j艮據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理驅(qū)動 器的操作的示意圖;圖5是根據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理系統(tǒng) 的方框圖;以及圖6是根據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理方法 的流程圖。
具體實(shí)施方式
下面就結(jié)合附圖對本發(fā)明的各個實(shí)施例進(jìn)行詳細(xì)的說明。 存儲管理裝置圖1是根據(jù)本發(fā)明的一個實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置 100的方框圖。如圖1所示,所述存儲管理裝置100包括總線接口單元101、數(shù)據(jù)流 接收單元102、數(shù)據(jù)流處理單元103、和數(shù)據(jù)流發(fā)送單元104。下面將具體 描述各個單元??偩€接口單元101可以是本領(lǐng)域的技術(shù)人員公知的用于與計算機(jī)系統(tǒng) 進(jìn)行連接的任何接口單元,例如外圍部件互連(PCI)接口單元等,本發(fā) 明對此并不限制,只要能將存儲管理裝置IOO橋接到計算機(jī)系統(tǒng)的擴(kuò)展總 線上。計算機(jī)系統(tǒng)的擴(kuò)展總線包括PCI總線等。數(shù)據(jù)流接收單元102用于通過總線接口單元101接收來自計算機(jī)系統(tǒng)的數(shù)據(jù)流,例如i/o搮作等。數(shù)據(jù)流處理單元103用于對數(shù)據(jù)流接收單元102接收到的數(shù)據(jù)流進(jìn)行 處理。數(shù)據(jù)流處理單元103進(jìn)行的處理包括對數(shù)據(jù)流進(jìn)行復(fù)制從而實(shí)現(xiàn)數(shù) 據(jù)流的遠(yuǎn)程復(fù)制,或根據(jù)所采用的RAID策略進(jìn)行各種RAID計算等,以 及本領(lǐng)域的技術(shù)人員公知的對數(shù)據(jù)流進(jìn)行的各種處理,本發(fā)明對此并不限 制。這些處理將在下面參考第一實(shí)例和第二實(shí)例進(jìn)行詳細(xì)描述。此外,數(shù)據(jù)流處理單元103還用于確定處理后的數(shù)據(jù)流的目的地,例 如所述計算機(jī)系統(tǒng)的操作系統(tǒng)控制下的舊存儲設(shè)備,以及所述存儲管理裝 置控制下的新存儲設(shè)備。數(shù)據(jù)流發(fā)送單元104可以包括本領(lǐng)域的技術(shù)人員公知的任何單元,例 如用于將數(shù)據(jù)流處理單元103處理后的數(shù)據(jù)流發(fā)送到所述舊存儲設(shè)備的直 接存儲器訪問(DMA)控制器,以及用于將數(shù)據(jù)流處理單元103處理后的 數(shù)據(jù)流發(fā)送到所述新存儲設(shè)備的網(wǎng)絡(luò)卸栽引擎(TOE)。本發(fā)明對數(shù)據(jù)流 發(fā)送單元104沒有限制,只要能基于數(shù)據(jù)流處理單元103所確定的數(shù)據(jù)流 的目的地,將數(shù)據(jù)流處理單元103處理后的數(shù)據(jù)流發(fā)送到所述舊存儲設(shè)備 和/或所述新存儲設(shè)備。應(yīng)該注意的是,本發(fā)明對舊存儲設(shè)備和新存儲設(shè)備 的個數(shù)沒有限制,可以具有任何數(shù)量的舊存儲設(shè)備和新存儲設(shè)備。第一實(shí)例遠(yuǎn)程復(fù)制裝置圖2是根據(jù)圖1的實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置的一個實(shí) 例的方框圖。如圖2所示,遠(yuǎn)程復(fù)制裝置200基于存儲管理裝置并用于遠(yuǎn)程復(fù)制。 遠(yuǎn)程復(fù)制裝置200可以是插入計算機(jī)系統(tǒng)的PCI總線的PCI卡,其主要部 件包括總線接口單元201、數(shù)據(jù)流接收單元202、數(shù)據(jù)流復(fù)制單元203A、 高速緩存203B、DMA控制器204A、和互聯(lián)網(wǎng)小型計算機(jī)系統(tǒng)接口( iSCSI) TOE 204B。下面將具體描述遠(yuǎn)程復(fù)制裝置200的工作流程。首先,將遠(yuǎn)程復(fù)制裝置200通過總線接口單元201插入計算機(jī)系統(tǒng)的 主板上的PCI總線,并通過IP鏈接,即iSCSITOE204B將遠(yuǎn)程復(fù)制裝置 200連接到新的遠(yuǎn)程存儲設(shè)備上。在此,對遠(yuǎn)程復(fù)制裝置200和遠(yuǎn)程存儲
設(shè)備之間的連接方式?jīng)]有限制,其可以是本領(lǐng)域的技術(shù)人員公知的任何連 接方式,例如物理或網(wǎng)絡(luò)連接。需要注意的是,在計算機(jī)系統(tǒng)的搡作系統(tǒng) 控制下的原始的舊存儲設(shè)備仍然連接在計算機(jī)系統(tǒng)的主機(jī)上,沒有對其作 任何修改。接著,通過遠(yuǎn)程復(fù)制裝置200的驅(qū)動器,在計算機(jī)系統(tǒng)的操作系統(tǒng)的 巻管理層和舊存儲設(shè)備驅(qū)動層之間插入一個中間層,即數(shù)據(jù)流截獲層。遠(yuǎn) 程復(fù)制裝置200通過該數(shù)據(jù)流截獲層將發(fā)送到舊存儲設(shè)備的數(shù)據(jù)流例如 I/O操作截獲。對于讀I/O搡作,數(shù)據(jù)流截獲層將其發(fā)送到舊存儲設(shè)備驅(qū) 動層,以及舊存儲設(shè)備驅(qū)動層調(diào)用舊存儲設(shè)備進(jìn)行讀取。對于寫i/o操作, 數(shù)據(jù)流截獲層直接調(diào)用遠(yuǎn)程復(fù)制裝置200,并將截獲的寫I/O操作通過總 線接口單元201發(fā)送到數(shù)據(jù)流接收單元202。接著,數(shù)據(jù)流復(fù)制單元203A對數(shù)據(jù)流接收單元202接收到的數(shù)據(jù)流 進(jìn)行復(fù)制,并將復(fù)制后的兩份數(shù)據(jù)流存儲到高速緩存203B中。然后,調(diào) 用DMA控制器204A和iSCSI TOE 204B分別處理在高速緩存203B中存 儲的兩份數(shù)據(jù)流。接著,DMA控制器204A通知計算機(jī)系統(tǒng)數(shù)據(jù)流已經(jīng)準(zhǔn)備好用于舊存 儲設(shè)備。然后,遠(yuǎn)程復(fù)制裝置200的驅(qū)動器調(diào)用計算機(jī)系統(tǒng)的DMA中斷, 在DMA中斷期間,將一份數(shù)據(jù)流通過總線接口單元201從遠(yuǎn)程復(fù)制裝置 200的高速緩存203B發(fā)送到舊存儲設(shè)備。另 一方面,iSCSI TOE 204B將另 一份數(shù)據(jù)^Ji送到遠(yuǎn)程存儲設(shè)備。從 而,實(shí)現(xiàn)遠(yuǎn)程復(fù)制功能。第二實(shí)例RAID控制器圖3是4艮據(jù)圖1的實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置的另一個 實(shí)例的方^f匡圖。如圖3所示,RAID控制器300基于存儲管理裝置并用于將舊存儲設(shè) 備與新存儲設(shè)備連接為RAID系統(tǒng)。RAID控制器300可以是插入計算機(jī) 系統(tǒng)的PCI總線的PCI卡,其主要部件包括總線接口單元301、數(shù)據(jù)流接 收單元302、 RAID控制單元303A、高速緩存303B、 DMA控制器304A、
和iSCSI TOE 304B。下面將具體描述RAID控制器300的工作流程。首先,將RAID控制器300通過總線接口單元301插入計算機(jī)系統(tǒng)的 主板上的PCI總線,并通過IP鏈接,即iSCSI TOE 304B將RAID控制器 300連接到新存儲設(shè)備上。在此,對遠(yuǎn)程復(fù)制裝置200和遠(yuǎn)程存儲設(shè)備之 間的連接方式?jīng)]有限制,其可以是本領(lǐng)域的技術(shù)人員公知的任何連接方式, 例如物理或網(wǎng)絡(luò)連接。需要注意的是,在計算機(jī)系統(tǒng)的操作系統(tǒng)控制下的 原始的舊存儲設(shè)備仍然連接在計算機(jī)系統(tǒng)的主機(jī)上,沒有對其作任何修改。接著,通過RAID控制器300的驅(qū)動器,在計算機(jī)系統(tǒng)的操作系統(tǒng)的 巻管理層和舊存儲設(shè)備驅(qū)動層之間插入一個中間層,即數(shù)據(jù)流截獲層。 RAID控制器300通過該數(shù)據(jù)流截獲層將發(fā)送到舊存儲設(shè)備的數(shù)據(jù)流例如 1/0操作截獲。對于讀/寫I/0操作,數(shù)據(jù)流截獲層調(diào)用RAID控制器300, 并將截獲的讀/寫I/O操作通過總線接口單元301發(fā)送到數(shù)據(jù)流接收單元 302。接著,RAID控制單元303A對數(shù)據(jù)流接收單元302接收到的數(shù)據(jù)流進(jìn) 行處理,例如才艮據(jù)所采用的RAID策略利用計算單元對數(shù)據(jù)流進(jìn)行計算, 如進(jìn)行異或(XOR)搮作或鏡像(mirror)操作,本發(fā)明對在此進(jìn)4亍的處 理沒有任何限制,只要能實(shí)現(xiàn)RAID功能即可。然后將處理得到的兩份數(shù) 據(jù)流存儲到高速緩存303B中。然后,調(diào)用DMA控制器304A和iSCSI TOE 304B分別處理在高速緩存303B中存儲的兩份數(shù)據(jù)流。接著,DMA控制器304A通知計算機(jī)系統(tǒng)數(shù)據(jù)流已經(jīng)準(zhǔn)備好用于舊存 儲設(shè)備。然后,RAID控制器300的驅(qū)動器調(diào)用計算機(jī)系統(tǒng)的DMA中斷, 在DMA中斷期間,將一份數(shù)據(jù)流通過總線接口單元301從RAID控制器 300的高速緩存303B發(fā)送到舊存儲設(shè)備。另 一方面,iSCSI TOE 304B將另 一份數(shù)據(jù)流發(fā)送到新存儲設(shè)備。從而, 舊存儲設(shè)備和新存儲設(shè)備一起實(shí)現(xiàn)RAID系統(tǒng)。通過以上的說明可知,本實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理裝置具 有以下優(yōu)點(diǎn)。理裝置支持"加"的存儲系統(tǒng)升級。由于 數(shù)據(jù)流被本實(shí)施例的存儲管理裝置截獲,并將發(fā)送回舊存儲 系統(tǒng),因此在升級系統(tǒng)中仍然可以使用舊存儲系統(tǒng),從而可以保護(hù)舊IT資源不被浪費(fèi)。(2) 本實(shí)施例的存儲管理裝置是適用于SMB市場的低成本裝 置。通常,本實(shí)施例的存儲管理裝置是插入PCI總線的PCI 卡,因此,作為升級平臺,該設(shè)計與高端FC基獨(dú)立存儲系 統(tǒng)相比非常便宜。(3 ) 本實(shí)施例的存儲管理裝置是為計算機(jī)系統(tǒng)提供高性能存儲 的靈活平臺。該平臺支持各種存儲功能,例如RAID、遠(yuǎn)程 復(fù)制、鏡像、快速復(fù)制等。因?yàn)榭梢詫⒏郊犹幚砥?芯片添加 到本實(shí)施例的存儲管理裝置,因此該平臺可以設(shè)計為RAID 卡、遠(yuǎn)程復(fù)制卡等。此外,這些存儲功能通過專用處理器/ 芯片在本實(shí)施例的存儲管理裝置上運(yùn)行,因此可以實(shí)現(xiàn)高性 能的存儲系統(tǒng)。(4 ) 本實(shí)施例的存儲管理裝置可以保持計算機(jī)系統(tǒng)的性能??紤] 到存儲功能,這些功能在本實(shí)施例的存儲管理裝置上運(yùn)行, 而沒有使用計算機(jī)系統(tǒng)的資源??紤]到數(shù)據(jù)流,本實(shí)施例的 存儲管理裝置只消耗計算機(jī)系統(tǒng)的很小的擴(kuò)展總線帶寬,以 支持通過擴(kuò)展總線的兩次數(shù)據(jù)流( 一次從存儲器到本實(shí)施例 的存儲管理裝置,另一次從存儲管理裝置到舊存儲設(shè)備)。 因此,在安裝了本實(shí)施例的存儲管理裝置之后,可以4艮好地 保持計算機(jī)系統(tǒng)的性能。(5 ) 本實(shí)施例的存儲管理裝置使存儲系統(tǒng)升級容易維持和配置。 因?yàn)榇鎯ο到y(tǒng)更新基于舊存儲設(shè)備,因此不需要修改和重新 配置舊存^i殳備。從而使系統(tǒng)維持和配置變得非常容易。 存儲管理驅(qū)動器在同一發(fā)明構(gòu)思下,圖4是根據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī)12 系統(tǒng)的存儲管理驅(qū)動器的操作的示意圖。下面就結(jié)合該圖,對本實(shí)施例進(jìn) 行描述。對于那些與前面實(shí)施例相同的部分,適當(dāng)省略其說明。在圖4中,從邏輯角度示出了根據(jù)本實(shí)施例的存儲管理驅(qū)動器的操作。 在圖4中,部件層400包括文件系統(tǒng)401、巻管理層402、數(shù)據(jù)流截獲層 403、舊存儲設(shè)備驅(qū)動層404、和存儲管理單元405。其中數(shù)據(jù)流截獲層403 是本實(shí)施例的存儲管理驅(qū)動器在巻管理層402和舊存儲設(shè)備驅(qū)動層404之 間插入的中間層。數(shù)據(jù)流截獲層403截獲來自文件系統(tǒng)401的數(shù)據(jù)流,并 調(diào)用存儲管理單元405。存儲管理單元405將接收到的數(shù)據(jù)流進(jìn)行處理, 并將其發(fā)送到計算機(jī)系統(tǒng)的操作系統(tǒng)控制下的存儲設(shè)備,或者將其發(fā)送到 存儲管理單元405控制下的其它存儲設(shè)備。通過以上的說明可知,本實(shí)施例的存儲管理驅(qū)動器支持"加,,的存儲 系統(tǒng)升級。由于數(shù)據(jù)流被本實(shí)施例的存儲管理驅(qū)動器截獲,并將發(fā)送回舊 存儲系統(tǒng),因此在升級系統(tǒng)中仍然可以使用舊存儲系統(tǒng),從而可以保護(hù)舊 IT資源不被浪費(fèi)。存儲管理系統(tǒng)在同一發(fā)明構(gòu)思下,圖5是根據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī) 系統(tǒng)的存儲管理系統(tǒng)的方框圖。下面就結(jié)合該圖,對本實(shí)施例進(jìn)行描述。 對于那些與前面實(shí)施例相同的部分,適當(dāng)省略其說明。在圖5中,存儲管理系統(tǒng)500包括計算機(jī)系統(tǒng)501、上述根據(jù)圖1的 實(shí)施例的存儲管理裝置100和用于存儲管理裝置100的驅(qū)動器。計算機(jī)系 統(tǒng)501包括CPU、在所述CPU上運(yùn)行的操作系統(tǒng)以及在所述操作系統(tǒng)控 制下的舊存儲設(shè)備。存儲管理裝置100包括總線接口單元101、數(shù)據(jù)流接 收單元102、數(shù)據(jù)流處理單元103、數(shù)據(jù)流發(fā)送單元104以及其控制下的其 它存儲設(shè)備。下面將具體描述存儲管理系統(tǒng)500的工作流程。首先,計算機(jī)系統(tǒng)501的搮作系統(tǒng)調(diào)用用于存儲管理裝置100的驅(qū)動 器,以使該驅(qū)動器在計算機(jī)系統(tǒng)的操作系統(tǒng)的巻管理層和舊存儲設(shè)備驅(qū)動 層之間插入一個中間層,即數(shù)據(jù)流截獲層。該數(shù)據(jù)流截獲層將發(fā)送到舊存 儲設(shè)備的數(shù)據(jù)流例如i/o操作截獲。對于讀/寫i/o操作,數(shù)據(jù)流截獲層調(diào)用存儲管理裝置100,并將截獲的讀/寫I/O操作通過總線接口單元101發(fā) 送到數(shù)據(jù)流接收羊元102。接著,數(shù)據(jù)流處理單元103對數(shù)據(jù)流接收單元102接收到的數(shù)據(jù)流進(jìn) 行處理,例如根據(jù)所采用的RAID策略進(jìn)行RAID計算、或?qū)?shù)據(jù)流進(jìn)行 復(fù)制等,從而產(chǎn)生兩份數(shù)據(jù)流。接著,數(shù)據(jù)流發(fā)送單元104通知計算機(jī)系統(tǒng)501數(shù)據(jù)流已經(jīng)準(zhǔn)備好用 于舊存儲設(shè)備。然后,數(shù)據(jù)流發(fā)送單元104通過總線接口單元101將一份 數(shù)據(jù)流發(fā)送到舊存儲設(shè)備。另 一方面,數(shù)據(jù)流發(fā)送單元104將另 一份數(shù)據(jù)流發(fā)送到其它存儲設(shè)備。 從而,完成存儲管理系統(tǒng)的存儲工作。通過以上的說明可知,本實(shí)施例的存儲管理系統(tǒng)具有以下優(yōu)點(diǎn)。(1) 本實(shí)施例的存儲管理系統(tǒng)支持"加"的存儲系統(tǒng)升級。由于 數(shù)據(jù)流被本實(shí)施例的存儲管理系統(tǒng)的存儲管理裝置100截 獲,并將發(fā)送回舊存儲系統(tǒng),因此在升級系統(tǒng)中仍然可以使 用舊存儲系統(tǒng),從而可以保護(hù)舊IT資源不被浪費(fèi)。(2) 本實(shí)施例的存儲管理系統(tǒng)是適用于SMB市場的低成本系 統(tǒng)。通常,本實(shí)施例的存儲管理系統(tǒng)的存儲管理裝置100是 插入PCI總線的PCI卡,因此,作為升級平臺,該設(shè)計與 高端FC基獨(dú)立存儲系統(tǒng)相比非常便宜。(3) 本實(shí)施例的存儲管理系統(tǒng)提供了高性能存儲的靈活平臺。該 平臺支持各種存儲功能,例如RAID、遠(yuǎn)程復(fù)制、鏡像、快 速復(fù)制等。因?yàn)榭梢詫⒏郊犹幚砥?芯片添加到本實(shí)施例的存 儲管理系統(tǒng)的存儲管理裝置100,因此該存儲管理裝置100 可以設(shè)計為RAID卡、遠(yuǎn)程復(fù)制卡等。此外,這些存儲功能 通過專用處理器/芯片在本實(shí)施例的存儲管理系統(tǒng)上運(yùn)行,因 此可以實(shí)現(xiàn)高性能的存儲系統(tǒng)。(4) 本實(shí)施例的存儲管理系統(tǒng)可以保持計算機(jī)系統(tǒng)的性能??紤]
到存儲功能,這些功能在本實(shí)施例的存儲管理系統(tǒng)上運(yùn)行, 而沒有使用計算機(jī)系統(tǒng)的資源??紤]到數(shù)據(jù)流,存儲管理裝置IOO只消耗計算機(jī)系統(tǒng)的很小的擴(kuò)展總線帶寬,以支持通過擴(kuò)展總線的兩次數(shù)據(jù)流( 一次從存儲器到本實(shí)施例的存儲管理裝置100,另一次從本實(shí)施例的存儲管理裝置100到舊存儲設(shè)備)。因此,本實(shí)施例的存儲管理系統(tǒng)可以很好地保 持計算機(jī)系統(tǒng)的性能。(5) 本實(shí)施例的存儲管理系統(tǒng)使存儲系統(tǒng)升級容易維持和配置。 因?yàn)榇鎯ο到y(tǒng)更新基于舊存儲設(shè)備,因此不需要修改和重新 配置舊存儲設(shè)備。從而使系統(tǒng)維持和配置變得非常容易。 存儲管理方法在同一發(fā)明構(gòu)思下,圖6是根據(jù)本發(fā)明的另一個實(shí)施例的用于計算機(jī) 系統(tǒng)的存儲管理方法的流程圖。下面就結(jié)合該圖,對本實(shí)施例進(jìn)行描述。 對于那些與前面實(shí)施例相同的部分,適當(dāng)省略其說明。如圖6所示,首先,在步驟601,在所述計算機(jī)系統(tǒng)的操作系統(tǒng)的巻 管理層和所述操作系統(tǒng)控制下的舊存儲設(shè)備的驅(qū)動層之間插入數(shù)據(jù)流截獲 層。接著,在步驟602,利用所述數(shù)據(jù)流截獲層截獲來自所述巻管理層的數(shù)據(jù)流,例如i/o操作等。接著,在步驟603,通過所述計算機(jī)系統(tǒng)的擴(kuò)展總線,接收來自所述 數(shù)據(jù)流截獲層截獲的數(shù)據(jù)流。計算機(jī)系統(tǒng)的擴(kuò)展總線包括PCI總線等。接著,在步驟604,對所述數(shù)據(jù)流進(jìn)行處理,并確定所述數(shù)據(jù)流的目 的地。所述處理步驟可以包括對數(shù)據(jù)流進(jìn)行復(fù)制從而實(shí)現(xiàn)數(shù)據(jù)流的遠(yuǎn)程復(fù) 制,或根據(jù)所采用的RAID策略進(jìn)行各種RAID計算等,以及本領(lǐng)域的技 術(shù)人員公知的對數(shù)據(jù)流進(jìn)行的各種處理,本發(fā)明對此并不限制。此外,處理后的數(shù)據(jù)流的目的地可以確定為,例如所述計算機(jī)系統(tǒng)的 操作系統(tǒng)控制下的舊存儲設(shè)備,以及不在所述計算機(jī)系統(tǒng)的操作系統(tǒng)直接 控制下的新存儲設(shè)備。最后,在步驟605,基于所確定的所述數(shù)據(jù)流的目的地,將處理后的 數(shù)據(jù)流發(fā)送到所述舊存儲設(shè)備和/或所述新存儲設(shè)備。所述發(fā)送步驟可以通 過本領(lǐng)域的技術(shù)人員公知的任何單元實(shí)現(xiàn),例如通過直接存儲器訪問 (DMA )控制器將處理后的數(shù)據(jù)流發(fā)送到所述舊存儲設(shè)備,或通過網(wǎng)絡(luò)卸 栽引擎(TOE)將處理后的數(shù)據(jù)^JC送到所迷新存儲設(shè)備。通過以上的說明可知,本實(shí)施例的用于計算機(jī)系統(tǒng)的存儲管理方法具 有以下優(yōu)點(diǎn)。(1) 本實(shí)施例的存儲管理方法支持"加"的存儲系統(tǒng)升級。由于 本實(shí)施例的存儲管理方法將數(shù)據(jù)流截獲,并將發(fā)送回舊存儲 系統(tǒng),因此在升級系統(tǒng)中仍然可以使用舊存儲系統(tǒng),從而可 以保護(hù)舊IT資源不被浪費(fèi)。(2) 本實(shí)施例的存儲管理方法是適用于SMB市場的低成本方 法。通常,本實(shí)施例的存儲管理方法使用插入PCI總線的 PCI卡,因此,作為升級平臺,該設(shè)計與高端FC基獨(dú)立存 儲系統(tǒng)相比非常便宜。(3 ) 本實(shí)施例的存儲管理方法提供了高性能存儲的靈活平臺。該 平臺支持各種存儲功能,例如RAID、遠(yuǎn)程復(fù)制、鏡像、快 速復(fù)制等。因此,本實(shí)施例的存儲管理方法可以使用具有附 加處理器/芯片的RAID卡、遠(yuǎn)程復(fù)制卡等。此外,本實(shí)施 例的存儲管理方法可以通過專用處理器/芯片實(shí)現(xiàn)這些存儲 功能,因此可以實(shí)現(xiàn)高性能的存儲系統(tǒng)。(4 ) 本實(shí)施例的存儲管理方法可以保持計算機(jī)系統(tǒng)的性能??紤] 到存儲功能,本實(shí)施例的存儲管理方法沒有使用計算機(jī)系統(tǒng) 的資源??紤]到數(shù)據(jù)流,本實(shí)施例的存儲管理方法只消耗計 算機(jī)系統(tǒng)的很小的擴(kuò)展總線帶寬,以支持通過擴(kuò)展總線的兩 次數(shù)據(jù)流( 一次從存儲器到本實(shí)施例的存儲管理方法4吏用的 設(shè)備,另一次從本實(shí)施例的存儲管理方法使用的設(shè)備到舊存 儲設(shè)備)。因此,本實(shí)施例的存儲管理方法可以很好地保持
計算機(jī)系統(tǒng)的性能。(5 ) 本實(shí)施例的存儲管理方法使存儲系統(tǒng)升級容易維持和配置。 因?yàn)榇鎯ο到y(tǒng)更新基于舊存儲設(shè)備,因此不需要修改和重新 配置舊存儲設(shè)備。從而使系統(tǒng)維持和配置變得非常容易。 以上雖然通過一些示例性的實(shí)施例詳細(xì)地描述了本發(fā)明的存儲管理裝 置、存儲管理驅(qū)動器、存儲管理系統(tǒng)以及存儲管理方法,但是以上這些實(shí) 施例并不是窮舉的,本領(lǐng)域技術(shù)人員可以在本發(fā)明的精神和范圍內(nèi)實(shí)現(xiàn)各 種變化和修改。因此,本發(fā)明并不限于這些實(shí)施例,本發(fā)明的范圍僅由所 附權(quán)利要求為準(zhǔn)。
權(quán)利要求
1. 一種用于計算機(jī)系統(tǒng)的存儲管理裝置,所述計算機(jī)系統(tǒng)包括在其操作系統(tǒng)控制下的第一存^i殳備,所述存儲管理裝置包括總線接口單元,用于將所述存儲管理裝置橋接到所述計算機(jī)系統(tǒng)的擴(kuò)展總線上;數(shù)據(jù)流接收單元,用于通過所述總線接口單元接收來自所述計算機(jī)系 統(tǒng)的數(shù)據(jù)流;數(shù)據(jù)流處理單元,用于對所述數(shù)據(jù)流進(jìn)行處理,并確定所述數(shù)據(jù)流的 目的地;以及數(shù)據(jù)流發(fā)送單元,基于所述數(shù)據(jù)流處理單元所確定的所述數(shù)據(jù)流的目 的地,將所述處理后的數(shù)據(jù)流發(fā)送到所述第 一存儲設(shè)備和/或所述存儲管理 裝置控制下的第二存儲設(shè)備。
2. 根據(jù)權(quán)利要求1所述的用于計算機(jī)系統(tǒng)的存儲管理裝置,其中, 所述擴(kuò)展總線包括外圍部件互連總線。
3. 根據(jù)權(quán)利要求1或2所述的用于計算機(jī)系統(tǒng)的存儲管理裝置,其 中,所述數(shù)據(jù)流包括輸入/輸出操作。
4. 根據(jù)權(quán)利要求1-3中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管理 裝置,其中,所述數(shù)據(jù)流處理單元包括數(shù)據(jù)流復(fù)制單元和高速緩存,所述 數(shù)據(jù)流復(fù)制單元用于復(fù)制所述數(shù)據(jù)流,以及所述高速緩存用于存儲所述復(fù) 制的數(shù)據(jù)流。
5. 根據(jù)權(quán)利要求1-3中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管理 裝置,其中,所述數(shù)據(jù)流處理單元包括冗余獨(dú)立磁盤陣列控制單元和高速 緩存,所述冗余獨(dú)立磁盤陣列控制單元用于根據(jù)所采用的冗余獨(dú)立磁盤陣 列策略對所述數(shù)據(jù)流進(jìn)行計算,以及所述高速緩存用于存儲所述計算得到 的數(shù)據(jù)流。
6. 根據(jù)權(quán)利要求5所述的用于計算機(jī)系統(tǒng)的存儲管理裝置,其中, 對所述數(shù)據(jù)流進(jìn)行的所述計算包括對所述數(shù)據(jù)流進(jìn)行"異或"操作和/或鏡像操作。
7. 根據(jù)權(quán)利要求1-6中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管理 裝置,其中,所述數(shù)據(jù)流發(fā)送羊元包括直接存儲器訪問單元,用于將處理 后的數(shù)據(jù)流發(fā)送到所述第 一存儲設(shè)備。
8. 根據(jù)權(quán)利要求1-7中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管理 裝置,其中,所述數(shù)據(jù)流發(fā)送單元包括網(wǎng)絡(luò)卸載引擎,用于將處理后的數(shù) 據(jù)流發(fā)送到所述存儲管理裝置控制下的第二存^^i殳備。
9. 一種用于計算機(jī)系統(tǒng)的存儲管理驅(qū)動器,所述計算機(jī)系統(tǒng)包括在 其搮作系統(tǒng)控制下的存^i殳備,所述驅(qū)動器用于在所述操作系統(tǒng)的巻管理 層和所述存儲設(shè)備的驅(qū)動層之間插入數(shù)據(jù)流截獲層,所述數(shù)據(jù)流截獲層用 于截獲來自所述巻管理層的數(shù)據(jù)流。
10. —種用于計算機(jī)系統(tǒng)的存儲管理系統(tǒng),所述計算機(jī)系統(tǒng)包括在其 操作系統(tǒng)控制下的第一存儲設(shè)備,所述存儲管理系統(tǒng)包括根據(jù)上述權(quán)利要求9所述的用于計算機(jī)系統(tǒng)的存儲管理驅(qū)動器,用于 在所述操作系統(tǒng)的巻管理層和所述第一存儲設(shè)備的驅(qū)動層之間插入所述數(shù) 據(jù)流截獲層;以及根據(jù)上述權(quán)利要求1-8中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管理 裝置,其中所述數(shù)據(jù)流接收單元用于接收所述數(shù)據(jù)流截獲層截獲的數(shù)據(jù)流。
11. 一種用于計算機(jī)系統(tǒng)的存儲管理方法,所述計算機(jī)系統(tǒng)包括在其 操作系統(tǒng)控制下的第一存儲設(shè)備,所述方法包括以下步驟在所述操作系統(tǒng)的巻管理層和所述第一存儲設(shè)備的驅(qū)動層之間插入數(shù) 據(jù)流截獲層;利用所述數(shù)據(jù)流截獲層截獲來自所述巻管理層的數(shù)據(jù)流; 通過所述計算機(jī)系統(tǒng)的擴(kuò)展總線,接收來自所述數(shù)據(jù)流截獲層截獲的 數(shù)據(jù)流;對所述數(shù)據(jù)流進(jìn)行處理,并確定所述數(shù)據(jù)流的目的地;以及 基于所確定的所述數(shù)據(jù)流的目的地,將處理后的數(shù)據(jù)流發(fā)送到所述第 一存儲設(shè)備和/或不在所述計算機(jī)系統(tǒng)的操作系統(tǒng)直接控制下的第二存儲設(shè)備。
12. 根據(jù)權(quán)利要求ll所述的用于計算機(jī)系統(tǒng)的存儲管理方法,其中, 所述擴(kuò)展總線包括外圍部件互連總線。
13. 根據(jù)權(quán)利要求11或12所述的用于計算機(jī)系統(tǒng)的存儲管理方法, 其中,所述數(shù)據(jù)流包括輸入/輸出操作。
14. 根據(jù)權(quán)利要求11-13中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管 理方法,其中,所述對所述數(shù)據(jù)流進(jìn)行處理的步驟包括復(fù)制所述數(shù)據(jù)流。
15. 根據(jù)權(quán)利要求11-13中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管 理方法,其中,所述對所述數(shù)據(jù)流進(jìn)行處理的步驟包括根據(jù)所采用的冗余 獨(dú)立磁盤陣列策略對所述數(shù)據(jù)流進(jìn)行冗余獨(dú)立磁盤陣列計算。
16. 根據(jù)權(quán)利要求15所述的用于計算機(jī)系統(tǒng)的存儲管理方法,其中, 所述對所述數(shù)據(jù)流進(jìn)行冗余獨(dú)立磁盤陣列計算的步驟包括對所述數(shù)據(jù)流進(jìn) 行"異或"操作和/或鏡像操作。
17. 根據(jù)權(quán)利要求11-16中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管 理方法,其中,所述將處理后的數(shù)據(jù)流發(fā)送到所述第一存儲設(shè)備和/或第二 存儲設(shè)備的步驟包括通過直接存儲器訪問控制器將處理后的數(shù)據(jù)流發(fā)送到 所述第一存儲設(shè)備。
18. 根據(jù)權(quán)利要求11-17中任何一項(xiàng)所述的用于計算機(jī)系統(tǒng)的存儲管 理方法,其中,所述將處理后的數(shù)據(jù)流發(fā)送到所述第一存儲設(shè)備和/或第二 存儲設(shè)備的步驟包括通過網(wǎng)絡(luò)卸栽引擎將處理后的數(shù)據(jù)流發(fā)送到所述第二 存儲設(shè)備。
全文摘要
本發(fā)明提供了存儲管理裝置、存儲管理驅(qū)動器、存儲管理系統(tǒng)以及存儲管理方法。根據(jù)本發(fā)明的一個方面,提供了一種用于計算機(jī)系統(tǒng)的存儲管理裝置,所述計算機(jī)系統(tǒng)包括在其操作系統(tǒng)控制下的第一存儲設(shè)備,所述存儲管理裝置包括總線接口單元,用于將所述存儲管理裝置橋接到所述計算機(jī)系統(tǒng)的擴(kuò)展總線上;數(shù)據(jù)流接收單元,用于通過所述總線接口單元接收來自所述計算機(jī)系統(tǒng)的數(shù)據(jù)流;數(shù)據(jù)流處理單元,用于對所述數(shù)據(jù)流進(jìn)行處理,并確定所述數(shù)據(jù)流的目的地;以及數(shù)據(jù)流發(fā)送單元,基于所述數(shù)據(jù)流處理單元所確定的所述數(shù)據(jù)流的目的地,將所述處理后的數(shù)據(jù)流發(fā)送到所述第一存儲設(shè)備和/或所述存儲管理裝置控制下的第二存儲設(shè)備。
文檔編號G06F13/00GK101145138SQ200610153880
公開日2008年3月19日 申請日期2006年9月14日 優(yōu)先權(quán)日2006年9月14日
發(fā)明者哲 向, 夏寅賁, 浩 王, 劍 黃 申請人:國際商業(yè)機(jī)器公司