專利名稱:存儲控制裝置、數(shù)據(jù)管理系統(tǒng)及數(shù)據(jù)管理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于減少將數(shù)據(jù)存儲在至少一個硬盤設(shè)備以及其它存儲介質(zhì)的存儲控制裝置的功率消耗的技術(shù)。本發(fā)明還涉及存儲系統(tǒng),該存儲系統(tǒng)包括存儲裝置,特別是在用于將數(shù)據(jù)存儲在一個或多個磁盤裝置或存儲介質(zhì)中的存儲控制裝置或磁帶庫控制裝置、諸如光盤庫控制裝置、硅盤控制裝置之類的固態(tài)盤裝置、以及使用多個存儲控制裝置或以閃存器為代表的非易失性存儲器的存儲裝置等。
背景技術(shù):
近來,在例如數(shù)據(jù)中心的信息商務(wù)的現(xiàn)場,減少存儲系統(tǒng)(存儲控制裝置和硬盤設(shè)備等的總稱)中的TCO(Total Cost of Ownership)變得更為重要。此外,需要長期的安全的數(shù)據(jù)存儲。例如,法律,如個人信息保護(hù)法規(guī)定,日本的金融機(jī)構(gòu)和醫(yī)療機(jī)構(gòu)應(yīng)不刪除地積累它們的文件數(shù)據(jù)。
在這種背景基礎(chǔ)上,存儲系統(tǒng)應(yīng)高度可靠且大容量。一般,在使用硬盤設(shè)備(在下文稱為HDD)的具有大容量的存儲系統(tǒng)中,功率消耗與存儲介質(zhì)容量的增長成比例增長。具體地,具有大容量存儲系統(tǒng)會導(dǎo)致包括電費(fèi)在內(nèi)的TCO的增長。
鑒于上述缺點,當(dāng)需要積累大量的信息,如有必要,需要長期保存該數(shù)據(jù)信息時,考慮到對存儲的數(shù)據(jù)的各種要求,通過恰當(dāng)?shù)貙?shù)據(jù)存儲在一個合適的存儲位置,可以有效的減少整個存儲系統(tǒng)的TCO,尤其是由功率消耗量代表的運(yùn)行成本。
另外,近來,作為非易失性存儲介質(zhì),閃存器等受到關(guān)注。一般,與HDD相比,閃存器減小功率消耗至其幾十分之一,并可以進(jìn)行高速讀取。由于沒有HDD所需的驅(qū)動機(jī)構(gòu),閃存器可以小型化,并一般具有較高抗故障性。
然而,由于存儲信息的存儲單元的物理特性,閃存器有寫入次數(shù)的限制。為了應(yīng)對該限制,通過采用所謂的平均讀寫(WARE LEVELING)調(diào)整,其中提供一種控制來保持存儲單元位置和向上一級設(shè)備表示的地址的對應(yīng),并使寫入各個存儲單元的次數(shù)平均,來提高了閃存器的可重寫次數(shù)。
在下文中,作為保持信息的元件而使用的閃存器、包括用于進(jìn)行平均讀寫調(diào)整和對于上位設(shè)備的協(xié)議處理的機(jī)構(gòu)的閃存器,被稱為“閃存器設(shè)備”。另外,用于保持信息的元件被稱為“閃存器”。
盡管在元件級的存儲區(qū)域的分散方面,上述技術(shù)在對閃存器設(shè)備的寫入次數(shù)的限制提高了效率,但是,閃存器設(shè)備的寫入次數(shù)的限制依然存在。閃存器有另一缺點,即當(dāng)需要在寫入新數(shù)據(jù)前刪除數(shù)據(jù)時,寫入速度降至與HDD相同的速度。
為了將具有上述特性的閃存器應(yīng)用于存儲系統(tǒng),從現(xiàn)有技術(shù)中對存儲的數(shù)據(jù)的要求,即寫入性能以及可靠性或成本的觀點出發(fā),在專利文獻(xiàn)1(見以下專利文獻(xiàn)1)中公開了在合適的存儲位置存儲數(shù)據(jù)的技術(shù)。
為了實現(xiàn)較低功率消耗的存儲系統(tǒng),介紹了與MAID(Massive Array ofIdle Disks)相關(guān)的、如U.S.Patent App.Pub.NO.2004/0054939和專利文獻(xiàn)2(見以下的專利文獻(xiàn)2)中所公開的技術(shù)。
然而,因為專利文獻(xiàn)1中公開的技術(shù)未考慮到各個存儲介質(zhì)間的重寫次數(shù)、寫入速度和功率消耗的差異,所以難以對整個存儲系統(tǒng)進(jìn)行適當(dāng)?shù)目刂啤T赨.S.Patent App.Pub.NO.2004/0054939和專利文獻(xiàn)2中的存儲系統(tǒng)中,MAID的可應(yīng)用目的地受到限制,因此,難于在降低系統(tǒng)功率消耗和維持系統(tǒng)的高性能兩者間保持折衷。因此,要求實現(xiàn)一種計算機(jī)系統(tǒng),其實現(xiàn)了高性能及低功率消耗,從而優(yōu)化整個存儲系統(tǒng)。特別地,要求降低功率消耗,這在數(shù)據(jù)中心等中是關(guān)鍵問題,以及要求確保高存取性能。
專利文獻(xiàn)1John Wilkes,Richard Golding,Carl Staelin,and Tim Sullivan,″The HP AutoRAID hierarchical storage system″,Transactions on ComputerSystems(TOCS)archive,America,ACM(Association for Computing Machinery),F(xiàn)ebruary 1996,Volume 14,Issue 1,ISSN0734-2071,Pages108-136專利文獻(xiàn)2Dennis Colarelli,Dirk Grunwald,and Michael Neufeld,″TheCase for Massive Arrays of Idle Disks(MAID)″,[online],January 7,2002,USENIX(U.S.A.),(Searched on August 5,2005)<URLhttp://www.usenix.org/publications/library/proceedings/fast02/wips/colarelli.pdf>
為了解決上述問題,本發(fā)明的目的在于,在存儲系統(tǒng)的低功率消耗和高性能的維持之間實現(xiàn)成功的平衡。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的的一個方面,提供一種存儲控制裝置,其包括多個連接到至少一個主機(jī)和作為存儲數(shù)據(jù)的存儲介質(zhì)的至少一個硬盤驅(qū)動器的連接單元;至少一個與硬盤驅(qū)動器不同類型的非易失性存儲介質(zhì),其存儲由主機(jī)進(jìn)行寫請求的數(shù)據(jù);處理單元,其通過使用所述硬盤驅(qū)動器或所述非易失性存儲介質(zhì),處理來自主機(jī)的寫請求和讀請求;和存儲由處理單元使用的控制信息的存儲器單元。
在所述存儲控制裝置中,作為獨立單元或具有控制單元的磁盤陣列設(shè)備的一部分,設(shè)有一個或多個硬盤驅(qū)動器;存儲在各個所述存儲器單元中的控制信息,是一個將各個存儲介質(zhì)的每個識別符和每個存儲介質(zhì)的使用狀態(tài)的信息關(guān)聯(lián)起來的使用狀態(tài)管理表;每個存儲器單元還存儲每個關(guān)于使用狀態(tài)的信息的各個閾值;并且,每個處理單元查詢存儲在每個存儲器單元中的使用狀態(tài)管理表和每個閾值,當(dāng)任何關(guān)于使用狀態(tài)的信息超過閾值時,將超過閾值的類型的存儲介質(zhì)中的數(shù)據(jù)轉(zhuǎn)移到另一種類型的存儲介質(zhì)中。
根據(jù)本發(fā)明的另一方面,提供一種數(shù)據(jù)管理方法,其由至少一個存儲控制裝置執(zhí)行,所述存儲控制裝置包括多個連接單元,其與一個或多個主機(jī)、以及作為存儲數(shù)據(jù)用的存儲介質(zhì)的一個或多個硬盤驅(qū)動器相連;一個或多個非易失性存儲介質(zhì),其是和硬盤驅(qū)動器類型不同的存儲介質(zhì),存儲由主機(jī)進(jìn)行寫請求的數(shù)據(jù);多個處理單元,其通過使用硬盤驅(qū)動器或非易失性存儲介質(zhì),處理來自所述主機(jī)的寫請求和讀請求;和多個存儲器單元,其存儲所述處理單元要使用的控制信息。
所述方法包括如下步驟將作為使用狀態(tài)管理表的信息存儲在各個存儲器單元,該使用狀態(tài)管理表將各個存儲介質(zhì)的識別符和關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息關(guān)聯(lián)起來;將關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息的各個閾值存儲在各個存儲器單元中;在各個處理單元查詢存儲在存儲器單元上的使用狀態(tài)表和各個閾值,當(dāng)與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息中的任何一個超過其閾值時,將存儲在使用狀態(tài)超過對于該使用狀態(tài)的閾值的任一類型的存儲介質(zhì)之一中的數(shù)據(jù),轉(zhuǎn)移到另一類型的存儲介質(zhì)之一。
根據(jù)本發(fā)明的還有一個方面,提供一種存儲控制裝置,其包括多個連接單元,其與一個或多個主機(jī)、以及作為存儲數(shù)據(jù)的存儲介質(zhì)的一個或多個磁盤驅(qū)動器相連;一個或多個非易失性存儲介質(zhì),其是和磁盤驅(qū)動器類型不同的存儲介質(zhì),存儲由主機(jī)進(jìn)行寫請求的數(shù)據(jù);多個處理單元,其通過使用所述磁盤驅(qū)動器或所述非易失性存儲介質(zhì),對來自所述主機(jī)的寫請求和讀請求進(jìn)行處理;多個存儲器單元。
在所述存儲控制裝置中,所述存儲器單元包括用戶指定表,用于存儲關(guān)于用戶對數(shù)據(jù)指定的存儲介質(zhì)的性能的識別信息;存儲介質(zhì)管理表,用于將所述存儲介質(zhì)與其性能相關(guān)聯(lián);使用狀況管理表,用于將對每個存儲介質(zhì)的識別符與關(guān)于每個存儲介質(zhì)的使用狀況的信息相關(guān)聯(lián)。所述處理單元查詢所述用戶指定表,判定對于所述數(shù)據(jù)的用戶指定,查詢所述存儲介質(zhì)管理表以及所述使用狀況管理表,選擇具有滿足對于所述數(shù)據(jù)的所述用戶指定的性能的存儲介質(zhì),且存儲所述數(shù)據(jù)在所選定的存儲介質(zhì)上。
在結(jié)合附圖閱讀下面的說明書和權(quán)利要求的基礎(chǔ)上,本發(fā)明的其它方面、特征以及優(yōu)點會顯而易見。
圖1是表示包括存儲系統(tǒng)S的本發(fā)明的一個實施方式的整體構(gòu)成的框圖。
圖2是表示通道控制單元104的結(jié)構(gòu)的框圖。
圖3是表示FM控制單元106的結(jié)構(gòu)的框圖。
圖4是表示FM控制單元106的另一結(jié)構(gòu)的框圖。
圖5是表示FM控制單元106的另一結(jié)構(gòu)的框圖。
圖6是表示存在多個存儲控制裝置101的整體構(gòu)成的說明例中的信息流的圖。
圖7是表示邏輯卷管理表700的一例的圖。
圖8是表示使用狀態(tài)管理表800的一例的圖。
圖9是表示讀/寫次數(shù)管理表900的一例的圖。
圖10是表示設(shè)備類型管理表1000的一例的圖。
圖11A是表示MP單元220在HDD110和FM控制單元106的FM306之間進(jìn)行數(shù)據(jù)轉(zhuǎn)移的判定處理的一例的流程圖。
圖11B是表示用于在HDD110和FM控制單元106中的FM306之間進(jìn)行數(shù)據(jù)轉(zhuǎn)移的判定處理的一例的流程圖。
圖12是表示當(dāng)在數(shù)據(jù)轉(zhuǎn)移期間從主機(jī)102受到讀請求時,MP單元220的處理的一例的流程圖。
圖13時表示當(dāng)在數(shù)據(jù)轉(zhuǎn)移期間,從主機(jī)102接收到寫請求時,MP單元220的處理一例的流程圖。
圖14是表示在通過使用圖6所示的管理終端601,對整個存儲系統(tǒng)S進(jìn)行功率消耗管理的情況下所使用的整體信息表1400的一例的圖。
圖15顯示選擇作為滿足用戶指定要求的數(shù)據(jù)存儲目的地設(shè)備的流程。
圖16顯示用戶指定要求表的一例。
圖17顯示選擇作為滿足具有優(yōu)先級的用戶指定要求的數(shù)據(jù)存儲目的地的設(shè)備的流程。
圖18顯示用戶指定要求表的又一例。
圖19顯示設(shè)備判定要求表的一例。
具體實施例方式
(實施例1)下面,參照附圖,對本發(fā)明的第一實施方式的存儲系統(tǒng)S進(jìn)行詳細(xì)說明。
圖1是表示包括一個存儲系統(tǒng)的本發(fā)明的一個實施方式的整體結(jié)構(gòu)的框圖。存儲系統(tǒng)S具有存儲控制裝置101和HDD(硬盤驅(qū)動器)110。存儲控制裝置101通過通道114,經(jīng)過由SAN交換器等構(gòu)成的SAN(Storage AreaNetwork)103,連接到一個或多個主機(jī)102(圖中為兩個)。
存儲控制裝置101還與經(jīng)由磁盤側(cè)通道111存儲數(shù)據(jù)的多個HDD10相連。存儲控制裝置101包括多個通道控制單元(連接單元)104,多個高速緩沖存儲器(存儲器單元)113,控制信息存儲區(qū)(存儲器單元)117,多個磁盤控制單元(連接單元)105,多個FM控制單元106,以及將上述組件通過內(nèi)部通路115互相連接的相互接合網(wǎng)絡(luò)107。
通道控制單元104,通過通道114從主機(jī)102接收I/O請求,并解釋該I/O請求的請求類型,例如,在HDD110上進(jìn)行數(shù)據(jù)讀寫的讀/寫請求,或其目標(biāo)地址,來進(jìn)行關(guān)于請求的適當(dāng)?shù)奶幚怼?br>
高速緩沖存儲器113,臨時存儲將要存儲在HDD110和FM控制單元106內(nèi)的閃存器306(非易失性存儲介質(zhì)后述)的數(shù)據(jù),或?qū)⒁l(fā)送至主機(jī)102的數(shù)據(jù)??刂菩畔⒋鎯^(qū)117是在存儲系統(tǒng)S上存儲控制信息的區(qū)域,其由存儲器如RAM(Random Access Memory)構(gòu)成。
通過根據(jù)存儲的信息的類型準(zhǔn)備物理上不同的存儲器,或通過分配邏輯上不同的區(qū)域,高速緩沖存儲器113和控制信息存儲區(qū)117可以獨立使用。
磁盤控制單元105,響應(yīng)來自通道控制單元104的請求,通過磁盤側(cè)通道111對HDD110進(jìn)行控制,實施由主機(jī)102請求的數(shù)據(jù)取得或數(shù)據(jù)存儲。此時,磁盤控制單元105以RAID(Redundant Arrays of Inexpensive Disks管理多個HDD的技術(shù))對HDD100進(jìn)行控制,以便提高存儲系統(tǒng)S的可靠性、可用性和性能。
FM控制單元106對閃存器306(在圖3中進(jìn)一步詳述)或存儲系統(tǒng)S內(nèi)的閃存器設(shè)備(圖4和圖5中進(jìn)一步詳述)進(jìn)行控制。FM控制單元106響應(yīng)來自通道控制單元104等的請求,在閃存器306或閃存器設(shè)備中,進(jìn)行主機(jī)102請求的數(shù)據(jù)獲取或數(shù)據(jù)存儲。此時,F(xiàn)M控制單元106可對閃存器設(shè)備進(jìn)行RAID控制,以便提高存儲系統(tǒng)S的可靠性、可用性和性能。在所述第一實施例中,雖然存儲系統(tǒng)S與HDD110相連,但存儲系統(tǒng)S可以省略HDD110以及磁盤控制單元105。
接著,參照圖2,對通道控制單元104的結(jié)構(gòu)進(jìn)行說明(如有需要,參照圖1)。圖2是表示通道控制單元104的結(jié)構(gòu)的框圖。通道控制單元104包括MP(微處理器)單元(處理單元)220、多個通道協(xié)議處理單元204和內(nèi)部網(wǎng)絡(luò)接口單元205。MP單元220包括多個處理器201、存儲器模塊202和外圍處理單元203。
每個處理器201通過總線等連接介質(zhì)與外圍處理單元203相連。外圍處理單元203與存儲器模塊202相連,來對存儲器模塊202進(jìn)行控制。外圍處理單元203還通過通信系統(tǒng)的總線215與通道協(xié)議處理單元204以及內(nèi)部網(wǎng)絡(luò)接口單元205相連。
外圍處理單元203,從與其相連的處理器201、通道協(xié)議處理單元204以及內(nèi)部網(wǎng)絡(luò)接口單元205接收信息包(數(shù)據(jù))。若接收到的信息包所指示的傳輸目的地地址存儲在存儲器模塊202中,則實施對應(yīng)于該地址的適當(dāng)?shù)奶幚?,如有必要,將?shù)據(jù)返回到內(nèi)部網(wǎng)絡(luò)接口單元205。若傳輸目的地地址是存儲器模塊202之外的位置地址,則外圍處理單元203進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)(數(shù)據(jù)傳輸)。通過LAN(Local Area Network)等內(nèi)部通信網(wǎng)絡(luò)221,外圍處理單元203與存儲控制裝置101的另一單元,如磁盤控制單元105相連(圖6中進(jìn)一步詳述)。
存儲器模塊202具有與外圍處理單元203相連的郵箱213,用于進(jìn)行處理器201之間的通信。處理器201通過外圍處理單元203訪問存儲器模塊202,根據(jù)存儲在存儲器模塊202中的控制程序212進(jìn)行適當(dāng)?shù)奶幚怼?br>
存儲器模塊202中存儲著當(dāng)進(jìn)行DMA(Direct Memory access不通過處理器201進(jìn)行數(shù)據(jù)傳輸?shù)募夹g(shù))時,由通道協(xié)議處理單元204使用的傳輸列表214。通道協(xié)議處理單元204對通道114進(jìn)行協(xié)議控制,將來自主機(jī)102的數(shù)據(jù)轉(zhuǎn)換為協(xié)議格式,從而可以在存儲系統(tǒng)S內(nèi)對其進(jìn)行處理。具體地,當(dāng)通過通道114從主機(jī)102接收I/O請求時,通道協(xié)議處理單元204向處理器201通知主機(jī)號碼、LUN(邏輯單元號碼HDD110中的邏輯單元的識別符,與圖7中邏輯卷ID701對應(yīng)的存儲區(qū))或I/O請求的訪問目的地地址。
響應(yīng)來自通道協(xié)議處理單元204的通知,處理器201訪問控制信息存儲區(qū)117上的目錄信息、或在存儲器模塊202上復(fù)制并展開的目錄信息。如果目錄信息中存在被I/O請求的數(shù)據(jù)必須被存儲到的地址,或被I/O請求的數(shù)據(jù)本身,則處理器201在存儲器模塊202中創(chuàng)建傳輸列表214。根據(jù)傳輸列表214,通道協(xié)議處理單元204進(jìn)行數(shù)據(jù)傳輸。
如果被讀請求的數(shù)據(jù)不存在于高速緩沖存儲器113上,而是存儲在HDD110上,處理器201指示磁盤控制單元105,使其將數(shù)據(jù)存儲在高速緩沖存儲器113中(此操作稱為“升級(staging)”),然后根據(jù)傳輸列表214傳輸數(shù)據(jù)。
如果由主機(jī)102進(jìn)行寫請求的數(shù)據(jù)存儲在閃存器上(閃存器306等在圖3至圖5中后述),處理器201在傳輸列表214中設(shè)置閃存器的地址。傳輸列表214是高速緩沖存儲器113或閃存器上的地址的列表。
當(dāng)從主機(jī)102接收到寫請求時,通道協(xié)議處理單元204通過內(nèi)部網(wǎng)絡(luò)接口單元205,經(jīng)由內(nèi)部通路115將主機(jī)102請求的數(shù)據(jù)寫入對應(yīng)于傳輸列表214中的地址的位置。當(dāng)從主機(jī)102接收到讀請求時,通道協(xié)議處理單元204從傳輸列表214中的對應(yīng)地址讀取數(shù)據(jù),然后將數(shù)據(jù)返回主機(jī)102。
內(nèi)部網(wǎng)絡(luò)接口單元205,作為在通道控制單元104和另一存儲系統(tǒng)S之間經(jīng)由內(nèi)部通路115進(jìn)行內(nèi)部通信時的接口工作。
盡管磁盤控制單元105具有和104大致相同的結(jié)構(gòu),但是,磁盤控制單元105,具有與控制程序212對應(yīng)的部分不同的部分,具有用于和HDD110進(jìn)行通信的、與通道協(xié)議處理單元204對應(yīng)的部分。
需要注意,通道114和磁盤側(cè)通道111可以具有彼此不同的協(xié)議。然而,進(jìn)行磁盤側(cè)通道111上的協(xié)議處理,以使處理可以在存儲系統(tǒng)S中進(jìn)行,在這一點上,磁盤控制單元105中與通道協(xié)議處理單元204對應(yīng)的部分與通道控制單元104中的通道協(xié)議處理單元204相似。
如果在高速緩沖存儲器113中存在數(shù)據(jù),則處理器201根據(jù)來自通道控制單元104的請求或以一定的時間間隔,將高速緩沖存儲器113上的數(shù)據(jù)寫入HDD110。如果高速緩沖存儲器113上沒有數(shù)據(jù),則處理器201從通道控制單元104接收指示,然后根據(jù)該指示,從HDD110讀取數(shù)據(jù),并將該數(shù)據(jù)寫入高速緩沖存儲器113。
處理器201訪問存儲在控制信息存儲區(qū)117的目錄信息,檢索由主機(jī)102請求的數(shù)據(jù)應(yīng)被讀出或被存儲入的、高速緩沖存儲器113的存儲地址。
當(dāng)所請求的數(shù)據(jù)不在高速緩沖存儲器113上,或當(dāng)為了創(chuàng)建空閑區(qū)域而將存在的數(shù)據(jù)存儲在HDD110上(該操作被稱為“降級(destaging)”)時,磁盤控制單元105通過磁盤側(cè)通道111控制HDD110。此時,磁盤控制單元105可以對HDD110組進(jìn)行RAID控制,因此可以提高整個HDD110的可用性和性能。
參照圖3,對FM控制單元106的結(jié)構(gòu)進(jìn)行說明(如有需要,參照圖1和圖2)。圖3是表示FM控制單元106的結(jié)構(gòu)的框圖。FM控制單元106包括內(nèi)部網(wǎng)絡(luò)接口單元301、進(jìn)行DMA控制的DMA控制器302、非易失性存儲器的存儲器模塊304,控制存儲器模塊304的存儲器控制器303,作為非易失性存儲元件的閃存器(FM)306、控制FM306的存儲器控制器305。
內(nèi)部網(wǎng)絡(luò)接口單元301作為經(jīng)由內(nèi)部通路115,在FM控制單元106和另一存儲控制裝置101之間進(jìn)行內(nèi)部通信時的接口工作。
存儲器模塊304具有用于在FM控制單元106中進(jìn)行DMA的傳輸列表308。
FM控制單元106中包含的DMA控制器302,為了在高速緩沖存儲器113中創(chuàng)建空閑區(qū),例如,當(dāng)處理來自主機(jī)102的寫請求時,根據(jù)通道控制單元104的處理器201設(shè)置的傳輸列表214,從高速緩沖存儲器113到FM306進(jìn)行數(shù)據(jù)傳輸。
存儲器控制器305,根據(jù)通過內(nèi)部通路115來自通道控制單元104的讀請求和DMA控制器302的寫請求,對FM306進(jìn)行控制并存取數(shù)據(jù)。存儲器控制器305在存儲區(qū)307存儲關(guān)于FM306的使用的信息。存儲在存儲區(qū)307的信息被用來創(chuàng)建使用狀態(tài)管理表800(在圖8中后述)。
代替使用FM306,也可以使用其它存儲器,比如鐵電體存儲器(使用鐵電的材料的非易失性存儲器FeRAM(Ferroelectric Random Access Memory)或相變存儲器(通過使用非結(jié)晶狀態(tài)的變化(相變化),來存儲數(shù)據(jù)的非易失性存儲器,比如OUM(Ovonic Unified Memory))。
參照圖4,對圖3中的FM控制單元106的另一結(jié)構(gòu)進(jìn)行說明(參照圖1至圖3)。圖4是表示FM控制單元106的另一結(jié)構(gòu)的框圖。該FM控制單元106使用閃存器(FM)設(shè)備409。通過使用相同的符號,省略和圖3中相同結(jié)構(gòu)的說明。
FM設(shè)備409是一存儲系統(tǒng),其包括類似于圖3中的FM306的閃存器、存儲器控制器或控制器303、用于和FM協(xié)議處理單元407進(jìn)行通信的通信單元(未圖示)。
如圖4所示,F(xiàn)M設(shè)備409存在于每個FM控制單元106中,通過連接器408和FM控制單元106可拆卸地連接。因此,當(dāng)設(shè)備409發(fā)生故障時易于更換FM設(shè)備409。為了便于更換FM設(shè)備409,通道控制單元104的處理器201可以設(shè)置傳輸列表214,以使冗余結(jié)構(gòu)在各個FM設(shè)備409間共用。
上述結(jié)構(gòu)也使FM設(shè)備409本身可以被具有更大容量的另一設(shè)備替換。通過FFS(Fast File System)等通用協(xié)議,進(jìn)行與FM設(shè)備409的通信。因此,F(xiàn)M協(xié)議處理單元407對用于與FM設(shè)備409進(jìn)行通信的格式進(jìn)行轉(zhuǎn)換,使其在存儲控制裝置101中可用。
FM協(xié)議處理單元407將關(guān)于FM設(shè)備409的使用的信息,存儲在存儲區(qū)410,存儲在存儲區(qū)410的信息被用來創(chuàng)建使用狀態(tài)管理表800(在圖8中后述)。
下面,參照圖5,對不同于圖3和圖4所示的FM控制單元106的另一結(jié)構(gòu)進(jìn)行說明(參照圖1至圖4)。圖5是表示FM控制單元106的另一結(jié)構(gòu)的框圖。MF側(cè)通道510建立與FM設(shè)備409的連接。通過使用相同的符合,省略了與圖3或圖4相同的結(jié)構(gòu)的說明。
FM協(xié)議處理單元507與FM協(xié)議處理單元407類似地工作,在其存儲區(qū)508內(nèi),存儲關(guān)于所連接的多個FM設(shè)備409的使用狀態(tài)的信息。在存儲區(qū)508中存儲的信息被用于創(chuàng)建使用狀態(tài)管理表800(在圖8中后述)。
這種結(jié)構(gòu)不僅帶來圖4中所述的FM控制單元106的特征,而且使得更多FM設(shè)備409可以與FM控制單元106連接,從而可以實現(xiàn)大容量的存儲系統(tǒng)S。
作為圖3中的FM306的一種安裝形態(tài),可以將其直接配置在基板上。在這種情況下,不需要連接器408、FM協(xié)議處理單元407和FM側(cè)通道510,從而可以實現(xiàn)更緊湊的存儲系統(tǒng)S。
此外,在圖3中,每個存儲器控制器305可以對FM306進(jìn)行平均讀寫調(diào)整。存儲器控制器305可以收集,當(dāng)訪問FM306時,有關(guān)擦除錯誤發(fā)生的次數(shù)和所發(fā)生的壞塊的統(tǒng)計信息,將該信息存儲在FM306的一部分,或存儲在另外提供的另一FM306上,可以設(shè)置任何單元來根據(jù)來自處理器的請求發(fā)送該統(tǒng)計信息。
接著,參照圖6,對存儲控制裝置101以及其它部件中的信息流進(jìn)行說明(如有必要,參照圖1)。圖6表示存在多個存儲控制裝置101的情況下的整體結(jié)構(gòu)的一例中的信息流。通過使用相同符號,省略和圖1中相同的結(jié)構(gòu)的說明。
多個(圖6中是2個)存儲控制裝置101,通過網(wǎng)絡(luò)602與管理終端601相連。
管理終端601可以是普通的服務(wù)器,用于從一臺或多臺存儲控制裝置101收集內(nèi)部信息,集中管理該內(nèi)部信息,如性能和功率消耗量(可以是根據(jù)存儲控制裝置101內(nèi)部的各個部件的基本功率消耗量,由運(yùn)行中的部件的數(shù)量計算而得到的換算值),或是關(guān)于故障信息的統(tǒng)計信息(在圖8至圖10中進(jìn)一步詳細(xì)說明)。
具體地,管理終端601具有CPU(Central Processing Unit)等管理終端處理單元(未圖示),以及硬盤驅(qū)動器等管理終端存儲單元(未圖示)。管理終端601,作為收集信息的一個單元,經(jīng)由一般的通信網(wǎng)絡(luò)602,通過各個存儲控制裝置101中的管理單元603,訪問存儲在存儲控制裝置101中的信息,例如,存儲在控制信息存儲區(qū)117的圖8中的使用狀態(tài)管理表800等設(shè)備內(nèi)部信息604,或者,通過管理單元603獲取該信息604。管理終端601,根據(jù)從各個存儲系統(tǒng)101收集到的設(shè)備內(nèi)部信息604,生成信息608(例如,圖14中的整體信息表1400)。
在存儲控制系統(tǒng)101中,在每個通道控制單元104中存在MP單元220,在每個磁盤控制單元105中存在MP1051。還存在用于在MP單元220和1051之間、或MP單元220、1051和管理單元603之間進(jìn)行通信的內(nèi)部通信網(wǎng)絡(luò)221。
管理單元603可以直接或間接訪問由MP單元220和1051收集到的信息,或者在各個高速緩沖存儲器113等上累積的構(gòu)成信息和統(tǒng)計信息等設(shè)備內(nèi)部信息604。
管理終端601,以預(yù)定的標(biāo)準(zhǔn)(閾值)整理收集到的信息,從而可以根據(jù)信息的內(nèi)容進(jìn)行恰當(dāng)?shù)牟僮鳌O旅?,對存儲控制裝置101中的控制的一例進(jìn)行說明后,對管理終端601中的動作和處理進(jìn)行進(jìn)一步說明。
參照圖7,對與HDD110(下文中也稱為設(shè)備)相關(guān)的設(shè)備管理表進(jìn)行說明(如有必要,參照圖1)。圖7表示設(shè)備管理表700的一例。具體地,其說明如何通過使用邏輯卷管理表700對存儲控制裝置101中的各個存儲設(shè)備(如控制信息存儲區(qū)117)進(jìn)行管理,以及說明作為主機(jī)102可見的訪問對象的一例的邏輯卷(相當(dāng)于前面所述的邏輯單元)。
盡管在此作為一例,對主機(jī)102對各個塊的訪問進(jìn)行說明,主機(jī)對各個文件的訪問也可以同樣方式考慮,因為在最低存儲層次的控制,由包括各種存儲介質(zhì)(HDD110和閃存器等)的設(shè)備實施。
具體地,代替SAN103,也可以使用由NAS(Network Attached Storage與網(wǎng)絡(luò)直接相連而使用的文件服務(wù)器專用計算機(jī))所使用的另一網(wǎng)絡(luò),如因特網(wǎng)。
當(dāng)主機(jī)102對HDD進(jìn)行寫操作時,寫訪問不對作為HDD110的物理識別符的設(shè)備ID進(jìn)行,而是對作為邏輯卷的識別符的邏輯卷ID進(jìn)行。
如圖7所示,在邏輯卷管理表700中,邏輯卷ID701是邏輯卷的識別符,其與作為存儲控制裝置101中的HDD110的邏輯設(shè)備的識別符的邏輯設(shè)備ID702相關(guān)聯(lián)。邏輯設(shè)備ID702還與作為虛擬設(shè)備的識別符的虛擬設(shè)備ID703相關(guān)聯(lián)。
虛擬設(shè)備ID703與作為實際的(物理的)設(shè)備的識別符的設(shè)備ID704、表示設(shè)備內(nèi)的空間區(qū)域的設(shè)備范圍705相關(guān)聯(lián)。設(shè)備范圍705是可以存儲一定數(shù)據(jù)量的區(qū)域的管理單元。根據(jù)本發(fā)明的實施例,該數(shù)據(jù)量的一定值與本發(fā)明的實質(zhì)無關(guān),因此沒有限制。
虛擬設(shè)備ID703定義為,由一個或多個設(shè)備ID704所表示的設(shè)備的存儲區(qū)域的集合體。
需要注意,邏輯卷管理表700設(shè)置在所有處理器(MP單元220、1051)可以直接或間接查詢該管理表700的位置(例如,控制信息存儲區(qū)117)。
接著,參照圖8,對管理各個設(shè)備的使用狀態(tài)管理表進(jìn)行說明。圖8表示使用狀態(tài)管理表的一例。
使用狀態(tài)管理表800,對于與設(shè)備ID801(對應(yīng)于圖7中的設(shè)備ID704)關(guān)聯(lián)的各個設(shè)備,管理其與特性、屬性、使用狀態(tài)相關(guān)的信息?,F(xiàn)在,假設(shè)對閃存器等存儲介質(zhì)進(jìn)行管理,從使用開始的總寫入次數(shù)802,總擦除次數(shù)803,壞塊數(shù)量804、壞塊增長率805以及平均刪除時間806與設(shè)備ID801相關(guān)。盡管圖中未表示,但在使用狀態(tài)管理表800中,或在另外的專門用于管理閾值的表中,對每一項信息的各閾值進(jìn)行管理。
各個信息及其閾值被用于管理設(shè)備。例如,當(dāng)設(shè)備的平均擦除時間806變長時,可以判定該設(shè)備(如FM306)的使用期限即將結(jié)束。
除所述信息以外,也可以管理擦除操作錯誤次數(shù)(擦除錯誤次數(shù))等其它信息,來幫助判斷該設(shè)備的使用期限。
需要注意,當(dāng)初始化設(shè)備或改變設(shè)備的安裝位置時,有必要持續(xù)地存儲從使用開始的總寫入次數(shù)802和總擦除次數(shù)803。
使用狀態(tài)管理表800也可對除FM306以外的、使用次數(shù)(總寫入次數(shù)和總擦除次數(shù))、總加速/減速次數(shù)和錯誤產(chǎn)生率是設(shè)備使用期限管理重要因素的、通過使用ATA(AT Attachment)磁盤驅(qū)動器等應(yīng)用MAID技術(shù)的其它設(shè)備和存儲設(shè)備進(jìn)行管理。
例如,如果HDD110由SCSI(Small Computer System Interface)磁盤和ATA磁盤驅(qū)動器組成,或由ATA磁盤驅(qū)動器單獨組成,則磁盤控制單元105通過使用MAID技術(shù)可以控制該ATA磁盤驅(qū)動器的旋轉(zhuǎn)和停止。
不僅是HDD110,裝備有HDD110和控制單元(未圖示)的磁盤陣列設(shè)備(未圖示)也可以與磁盤控制單元105相連。在這種情況下,通過磁盤控制單元105的指示以及裝備在控制單元(未圖示)的MAID,可以控制ATA磁盤驅(qū)動器的旋轉(zhuǎn)和停止。即,ATA磁盤驅(qū)動器在硬件基礎(chǔ)上是脆弱的,因此,最好在它們的使用期限內(nèi),和管理FM306相同地,在使用狀態(tài)管理表800上管理ATA磁盤驅(qū)動器。
作為管理閃存器的一例,對使用狀態(tài)管理表800進(jìn)行說明。然而,在ATA磁盤驅(qū)動器、或通過使用ATA磁盤驅(qū)動器應(yīng)用了MAID的驅(qū)動器的情況下,使用狀態(tài)管理表800可包括總加速/減速次數(shù)、總旋轉(zhuǎn)時間和錯誤發(fā)生率。即,使用狀態(tài)管理表800,根據(jù)其狀況,具有與存儲介質(zhì)和設(shè)備的使用期限管理相關(guān)的各種信息(總使用時間、錯誤發(fā)生率、壞塊增長率、訪問次數(shù)等)。
使用狀態(tài)管理表800,和邏輯卷表700的情況相同,被配置在所有處理器(MP單元220、1051)可以直接或間接對其進(jìn)行查詢的位置。
參照圖9,對讀/寫次數(shù)管理表900進(jìn)行說明(如有必要,參照圖1)。圖9表示讀/寫次數(shù)管理表900的一例。
讀/寫次數(shù)管理表900與邏輯卷ID901(對應(yīng)于邏輯卷ID701)、邏輯設(shè)備ID902(對應(yīng)于邏輯設(shè)備ID702)、RD次數(shù)(總讀取次數(shù))903、和WR次數(shù)(總寫入次數(shù))904關(guān)聯(lián)。讀/寫次數(shù)管理表900,每當(dāng)訪問邏輯卷ID901或邏輯設(shè)備ID902時,作為統(tǒng)計信息更新。
讀/寫次數(shù)管理表900,和邏輯卷管理表700的情況相同地,設(shè)置在所有處理器(MP單元220、1051)能夠查詢表900的位置。
在將與寫入的頻率相比,讀取的頻率更高的大量數(shù)據(jù),從每一定時間段的功率消耗高的HDD110,向每一定時間段的功率消耗低的閃存器轉(zhuǎn)移的處理中使用讀/寫次數(shù)管理表900(從圖11到圖13中后述)。
類似的,盡管與讀/寫次數(shù)管理表900無關(guān),存儲在被指定為WORM(WriteOnce Read Many,一次寫多次讀)、只讀、或長期的保持期間的邏輯卷中的數(shù)據(jù)可以被轉(zhuǎn)移(從HDD110到FM306)。
接著,參照圖10,對設(shè)備類型管理表進(jìn)行說明(如有必要參照圖1)。圖10表示設(shè)備類型管理表的一例。
設(shè)備類型管理表1000,與表示設(shè)備類型的存儲層設(shè)備類型1001、每一定時間段的功率消耗量1002、表示運(yùn)行中的設(shè)備的數(shù)量的活動設(shè)備數(shù)1003、空閑的低功率消耗設(shè)備池的數(shù)量(低功率消耗的存儲介質(zhì)的空閑容量)1400關(guān)聯(lián)。
在存儲層設(shè)備類型1001中,“Flash”表示FM306,“ATA”表示作為使用在MAID技術(shù)中的HDD110的整個或一部分的ATA磁盤驅(qū)動器、應(yīng)用MAID技術(shù)的磁盤陣列設(shè)備在磁盤陣列設(shè)備與磁盤控制單元105相連的情況下所包含ATA磁盤驅(qū)動器、或者上述磁盤陣列設(shè)備所具有的ATA磁盤驅(qū)動器所構(gòu)成的邏輯設(shè)備(邏輯卷)?!癝CSI”表示作為HDD110的整體或者一部分的SCSI磁盤驅(qū)動器?!癈ache”表示作為高速緩沖存儲器113使用的RAM。
空閑低功率消耗設(shè)備池的數(shù)量1004的單位為兆字節(jié)(MB)和十億字節(jié)(GB)等。
存儲控制裝置101的總功率消耗量,通過在電源單元(未圖示)設(shè)有測量實際功率消耗的設(shè)備(例如功率計)來進(jìn)行測量和記錄的方法可以得到。為了去除測量單元如功率計,通過使用設(shè)備類型管理表1000來計算總功率消耗量的粗略估計值。
換言之,因為存儲控制裝置101監(jiān)視每個部件的操作狀態(tài),只要將設(shè)備類型管理表1000中的信息作為統(tǒng)計信息來管理,就可以得到總功率消耗量的粗略估計值。在圖11A至圖13中后述的處理中,可以使用設(shè)備類型管理表1000來根據(jù)各個部件的狀態(tài)及其功率消耗量,將數(shù)據(jù)轉(zhuǎn)移至較低功率消耗的設(shè)備,以便減少每個部件的功率消耗。
需要注意,設(shè)備類型管理表1000,和邏輯卷表700的情況相同地,設(shè)置在所有處理器(MP單元220、1051)能夠直接或間接查詢該表1000的位置。
此外,參照圖11A至圖13,對存儲系統(tǒng)的操作進(jìn)行說明(如有必要,參照圖6等)。
圖11A是表示MP單元220在HDD110和FM控制單元106之間進(jìn)行數(shù)據(jù)轉(zhuǎn)移時的判定的流程圖。
MP220執(zhí)行該數(shù)據(jù)轉(zhuǎn)移處理時的時刻,例如,是當(dāng)從主機(jī)102接收周期性讀/寫請求時,或當(dāng)從主機(jī)102接收指示特定的邏輯卷為WORM的指示時。
舉出了圖3至圖5中的FM控制單元106的結(jié)構(gòu)的3個例子。在此,對圖3中的例子進(jìn)行說明。
MP單元220,當(dāng)執(zhí)行該數(shù)據(jù)轉(zhuǎn)移的判定時,對收集到的信息(圖8至圖10中的各個表)進(jìn)行確認(rèn)(S111)。
接著,MP單元220根據(jù)收集到的信息和判定條件(n),對狀態(tài)進(jìn)行分析(S112)。判定條件(n)包括,例如FM306的使用期限管理(查詢總寫入次數(shù)802,判定總寫入次數(shù)是否超過預(yù)定值)、功率消耗的減少(查詢設(shè)備類型管理表1000)、基于來自主機(jī)102的WORM化的指示的數(shù)據(jù)轉(zhuǎn)移、RD/RW次數(shù)比(查詢RD次數(shù)903和WR次數(shù)904,若RD次數(shù)903對WR次數(shù)904的比值超過預(yù)定值,則判定可以將數(shù)據(jù)轉(zhuǎn)移至FM306)。這些判定條件(n)按照優(yōu)先級彼此結(jié)合使用。
MP單元220,根據(jù)步驟S112的分析,判定是否存在超過閾值的狀態(tài)(S113)。步驟S113用于判定FM306的總寫入次數(shù)是否超過閾值,若其超過閾值,則在以后的處理中將數(shù)據(jù)轉(zhuǎn)移至沒有寫入次數(shù)限制的HDD110。
如果沒有超過閾值的狀態(tài)(S113中為“NO”),則MP單元220結(jié)束處理。
如果存在超過閾值的狀態(tài)(S113中為“YES”),MP220選擇數(shù)據(jù)轉(zhuǎn)移的轉(zhuǎn)移源和轉(zhuǎn)移目的地(S114),并通過查詢空閑低功率消耗設(shè)備池的數(shù)量1004等,判斷是否存在數(shù)據(jù)轉(zhuǎn)移的目的地(S115)。
若沒有數(shù)據(jù)轉(zhuǎn)移的目的地(S115中為“NO”),MP單元220判斷是否可能在判定條件中的較高優(yōu)先級的一定條件的范圍內(nèi),創(chuàng)建一個數(shù)據(jù)轉(zhuǎn)移目的地(S117)。
此外,若不可能創(chuàng)建數(shù)據(jù)轉(zhuǎn)移目的地(S117中為“NO”),則MP單元220結(jié)束處理。
如果可能創(chuàng)建數(shù)據(jù)轉(zhuǎn)移目的地(S117中為“YES”),則MP單元220創(chuàng)建數(shù)據(jù)轉(zhuǎn)移目的地(S118),并開始數(shù)據(jù)轉(zhuǎn)移處理(S119)。
具體地,如果試圖從HDD110向任何一個FM306轉(zhuǎn)移數(shù)據(jù),但在FM306中沒有數(shù)據(jù)轉(zhuǎn)移目的地(沒有空閑容量),例如,在判定條件(n)中的優(yōu)先級高的條件(例如與功率消耗相關(guān)的條件)的范圍內(nèi),將FM306上的部分?jǐn)?shù)據(jù)轉(zhuǎn)移到HDD110,以便在FM306上生成一些可以向其中轉(zhuǎn)移數(shù)據(jù)的空閑容量。
若存在數(shù)據(jù)轉(zhuǎn)移目的地(S115中為“YES”),則MP單元220判斷是否由于數(shù)據(jù)轉(zhuǎn)移,狀態(tài)超過判定條件(n)中的優(yōu)先級較高的條件(S116)。
若狀態(tài)超過判定條件(n)中優(yōu)先級較高的條件(S116中為“NO”),則MP單元220結(jié)束處理。例如,盡管由于數(shù)據(jù)轉(zhuǎn)移,F(xiàn)M306在其使用期限內(nèi)沒有問題,但是如果不滿足優(yōu)先級較高的條件,MP單元220不進(jìn)行數(shù)據(jù)轉(zhuǎn)移。
如果狀態(tài)未超過判定條件中優(yōu)先級較高的條件(S116中為“YES”),則MP單元220開始數(shù)據(jù)轉(zhuǎn)移的處理(S119)。
如上所述,在存儲系統(tǒng)S內(nèi),可以進(jìn)行用于優(yōu)化整體功率消耗和FM306的使用期限管理的數(shù)據(jù)轉(zhuǎn)移。具體地,通過根據(jù)設(shè)備的寫/讀頻率,進(jìn)行向功率消耗低的FM306的數(shù)據(jù)轉(zhuǎn)移,可以降低總體功率消耗。
接著,參照圖11B,對數(shù)據(jù)轉(zhuǎn)移處理進(jìn)行說明(如有必要,參照圖6等)。圖11B是表示用于使FM控制單元106在HDD110和FM306之間進(jìn)行數(shù)據(jù)轉(zhuǎn)移的判定處理的一例的流程圖。需要注意,該步驟在圖11A的步驟S119后執(zhí)行。
首先,MP單元220判斷數(shù)據(jù)轉(zhuǎn)移目的地是否在FM306中(S1101)。
如果數(shù)據(jù)轉(zhuǎn)移目的地在FM306中(S1101中為“YES”),由于FM306對寫入次數(shù)和動作敏感,因此,在HDD110中確保暫時存儲區(qū)(S1102)。與此同時,MP單元220在控制信息存儲區(qū)117中創(chuàng)建暫時存儲區(qū)管理表。
如果數(shù)據(jù)轉(zhuǎn)移目的地區(qū)域不在FM306中(S1101中為“NO”),則沒有必要確保暫時存儲區(qū),從而前進(jìn)到步驟S1103。
然后,MP單元220創(chuàng)建用于以一定單位大小管理數(shù)據(jù)轉(zhuǎn)移目的地的存儲區(qū)的管理表(未圖示)(S1103)。該管理表,例如,可以是管理64KB單位的數(shù)據(jù)的位圖表。除位圖表以外,只要可以管理數(shù)據(jù)轉(zhuǎn)移處理,其它任何表都可以用于該管理表。
接著,MP單元220通過向DMA控制器302發(fā)送指示,將源數(shù)據(jù)復(fù)制到數(shù)據(jù)轉(zhuǎn)移的目的地(S1104)。
MP單元220,根據(jù)上述管理表(位圖表),檢查結(jié)束了數(shù)據(jù)轉(zhuǎn)移的區(qū)域,例如,通過將位從“0”變更為“1”(S1105)。
MP單元220,根據(jù)管理表判斷是否復(fù)制了轉(zhuǎn)移對象的全部數(shù)據(jù)區(qū)域,即,數(shù)據(jù)轉(zhuǎn)移的處理是否達(dá)到了100%(S1106)。
如果轉(zhuǎn)移對象的整個數(shù)據(jù)區(qū)域沒有復(fù)制完,MP單元220重復(fù)步驟S1104和步驟S1105的處理。
如果轉(zhuǎn)移對象的整個數(shù)據(jù)區(qū)域的復(fù)制處理已結(jié)束(S1106中為“YES”),則MP單元220前進(jìn)到步驟S1107。
此外,在步驟S1101到步驟S1106的數(shù)據(jù)轉(zhuǎn)移處理期間,存儲控制裝置101有時接收數(shù)據(jù)的讀和寫請求。在圖12和圖13中,對這種情況下的適當(dāng)處理進(jìn)行說明。
接著,在步驟S1107,MP單元220查詢在步驟S1102創(chuàng)建的暫時存儲區(qū)域管理表,并檢查在暫時存儲區(qū)域中是否存在存儲的數(shù)據(jù)。
如果在暫時存儲區(qū)域中存在任何存儲的數(shù)據(jù)(S1107中為”YES”),則MP單元220將暫時存儲區(qū)域中存儲的數(shù)據(jù)反映到轉(zhuǎn)移目的地區(qū)域(S1108),并重復(fù)步驟S1108的處理,直到所有數(shù)據(jù)的轉(zhuǎn)移結(jié)束(S1109中為“YES“)。
如果暫時存儲區(qū)域內(nèi)沒有存儲的數(shù)據(jù)(S1107中為“NO“),則MP單元220前進(jìn)到步驟S1110。
MP單元220,根據(jù)數(shù)據(jù)轉(zhuǎn)移重寫邏輯卷管理表700(S1110)。在這種情況下,例如,若在表700中的設(shè)備ID704的適當(dāng)位置,將ID名從轉(zhuǎn)移源設(shè)備ID變更為轉(zhuǎn)移目的地設(shè)備ID,則沒必要重寫在主機(jī)中的虛擬設(shè)備(對應(yīng)于虛擬設(shè)備ID703)。
MP單元220將在步驟S1110中變得不必要的轉(zhuǎn)移源設(shè)備釋放,以便于以其它目的對其進(jìn)行再利用(S1111)。
如上所述,在存儲系統(tǒng)S中,可以根據(jù)圖11A中所述的轉(zhuǎn)移的判定結(jié)果進(jìn)行數(shù)據(jù)轉(zhuǎn)移。
另外,還有另一方法,其在步驟S1104至S1106中執(zhí)行的數(shù)據(jù)轉(zhuǎn)移的實際操作之前,在步驟S1111中進(jìn)行邏輯執(zhí)行。該方法,不僅可以應(yīng)用于數(shù)據(jù)轉(zhuǎn)移操作,而且可以應(yīng)用于數(shù)據(jù)復(fù)制功能中的高速快照訪問功能(一般稱為卷鏡像分隔或快照)。在使用該方法的情況下,可以根據(jù)各個用途,在圖12和圖13中后述的處理(對于讀/寫請求)中進(jìn)行適當(dāng)?shù)母淖儭?br>
接著,參照圖12,對數(shù)據(jù)轉(zhuǎn)移操作過程中,從主機(jī)102接收到讀請求時MP單元220的處理進(jìn)行說明(圖11B中的S1101至S1106)(如有需要,參照圖6)。圖12是表示這種情況下MP單元220的處理的一例的流程圖。
首先,MP單元220,從主機(jī)102接收與數(shù)據(jù)轉(zhuǎn)移操作中的數(shù)據(jù)有關(guān)的讀請求(S1201),然后,在管理表(在圖11的步驟S1103中創(chuàng)建)上,對最新的數(shù)據(jù)存儲位置(在轉(zhuǎn)移源設(shè)備或暫時存儲區(qū)域)進(jìn)行確認(rèn)(S1202)。
接著,MP單元220通過從適當(dāng)?shù)拇鎯ξ恢冒l(fā)送數(shù)據(jù),向主機(jī)102返回讀響應(yīng)(S1203)。
然后,在讀對象的數(shù)據(jù)轉(zhuǎn)移未結(jié)束的情況下,MP單元220將轉(zhuǎn)移源數(shù)據(jù)復(fù)制到轉(zhuǎn)移目的地(S1204)。
MP單元220將執(zhí)行了數(shù)據(jù)轉(zhuǎn)移操作的區(qū)域內(nèi)的操作的完成,反映到管理表(S1205)。
需要注意,步驟S1203和步驟S1204中的處理,可以在步驟S1202的處理前進(jìn)行。
如上所述,存儲系統(tǒng)S,即使在數(shù)據(jù)轉(zhuǎn)移進(jìn)行中,也可以處理來自主機(jī)102的讀請求。
參照圖13,對于當(dāng)在數(shù)據(jù)轉(zhuǎn)移操作中,從主機(jī)102接收到寫請求時的MP單元220的處理進(jìn)行說明(圖11B中的S1101至S1106)(如有必要,參照圖6)。圖13是表示在這種情況下MP單元220的處理的一例的流程圖。
首先,MP單元220從主機(jī)102接收對于轉(zhuǎn)移操作中的數(shù)據(jù)的寫請求(S1301),然后,將對應(yīng)于其訪問地址而編址的、被寫請求的數(shù)據(jù)寫入暫時存儲區(qū)域(S1302)。
然后,MP單元220,對圖11B中的步驟S1102中創(chuàng)建的暫時存儲區(qū)域表進(jìn)行更新,來反映最新的數(shù)據(jù)位于暫時存儲區(qū)域內(nèi)(S1303)。
如上所述,即使數(shù)據(jù)轉(zhuǎn)移進(jìn)行中,存儲系統(tǒng)S也可以處理來自主機(jī)102的寫請求。
此外,被主機(jī)102寫請求的數(shù)據(jù)暫時存儲在暫時存儲區(qū)中,在后面對其進(jìn)行反映,即使轉(zhuǎn)移目的地是FM306那樣的、由復(fù)雜的步驟,如追加、指示字替換和塊擦除等來實施寫入的設(shè)備,或是使用ATA磁盤驅(qū)動器來僅處理用于重復(fù)加速和減速的磁盤設(shè)備的設(shè)備,也可以實現(xiàn)平穩(wěn)的數(shù)據(jù)轉(zhuǎn)移。
盡管MP單元220進(jìn)行圖11A至圖13中的各個處理,但是,其它功能或方法也可用于各處理,如由MP單元220和MP單元1051指示的DMA功能。
在此,參照圖14,對本方面的另一實施例進(jìn)行說明(如有必要,參照圖6等)。圖14表示在圖6所述的管理終端601對整個存儲系統(tǒng)S進(jìn)行功率消耗管理的情況下,使用的整體信息表1400的一例。
在整體信息表1400中,作為存儲控制裝置101的識別符的控制設(shè)備ID1401、各個存儲控制裝置101中的每一定時間段的功率消耗量1402、表示運(yùn)行中的FM306等的低功率消耗介質(zhì)的數(shù)量的活動設(shè)備1403、表示運(yùn)行中的低功率消耗介質(zhì)的總?cè)萘康幕顒釉O(shè)備總?cè)萘?404、表示HDD110等普通功率消耗介質(zhì)的數(shù)量的活動設(shè)備1405、表示運(yùn)行中的普通功率消耗介質(zhì)的總?cè)萘康幕顒釉O(shè)備總?cè)萘?406、表示空閑低功率消耗設(shè)備的數(shù)量的空閑低功率消耗設(shè)備池1407、分別關(guān)聯(lián)。
即使在某存儲控制裝置101中,不可能將數(shù)據(jù)從具有普通功率消耗的設(shè)備,轉(zhuǎn)移到具有低功率消耗的設(shè)備,該整體信息表1400使數(shù)據(jù)可以從該普通功率消耗設(shè)備轉(zhuǎn)移至另一存儲控制裝置101中的低功率消耗設(shè)備,由此,可以減少整個存儲系統(tǒng)S的功率消耗。
需要注意,在整體信息表1400或其它專用于閾值管理的表(未圖示)中,對整個存儲系統(tǒng)S的功率消耗的閾值進(jìn)行存儲和管理。
具體的數(shù)據(jù)轉(zhuǎn)移處理,與圖11A至圖13中的流程圖的處理相似。例如,圖11B所示的單個存儲控制裝置101內(nèi)的設(shè)備問的數(shù)據(jù)轉(zhuǎn)移處理,可以在多個存儲控制裝置101之間的設(shè)備問進(jìn)行。然后,主機(jī)102可以識別訪問目的地設(shè)備的變更。或者,可以由主機(jī)102上的卷虛擬化軟件或虛擬化開關(guān)實現(xiàn),來識別訪問目的地設(shè)備的變更。
根據(jù)本發(fā)明,存儲系統(tǒng)S可實現(xiàn)低功率消耗的系統(tǒng),不發(fā)生關(guān)于必要的數(shù)據(jù)的動作的惡化,可大規(guī)模構(gòu)成,并能夠?qū)?shù)據(jù)存儲在最佳的存儲介質(zhì)中。對于每個存儲介質(zhì)具有的特性(例如重寫次數(shù)的使用期限和容錯性),存儲系統(tǒng)S還可以提高整個系統(tǒng)的可靠性和可用性。
上面對根據(jù)本發(fā)明的實施例進(jìn)行了說明,但是本發(fā)明的實施例不限于這些說明,本領(lǐng)域技術(shù)人員弄清本發(fā)明的實質(zhì)特點,在不超出權(quán)利要求的主旨和范圍的情況下,可以對本發(fā)明進(jìn)行多種修改和變更,來使其適用于各種用途和條件。
(實施例2)下面,參照附圖,對根據(jù)本發(fā)明的第二實施方式的存儲系統(tǒng)S進(jìn)行詳細(xì)說明。
注意的是,在第二實施方式的描述中,與第一實施方式中相同的部件用與第一實施方式中相同的附圖標(biāo)記表示,在第二實施方式中沒有描述的存儲系統(tǒng)S的部件基本上與本發(fā)明第一實施方式中的部件相同。
在第二實施方式中,將尤其解釋說明如何分配數(shù)據(jù)存儲位置,這是在管理終端601或管理單元603中所執(zhí)行的功能之一。特別地,將解釋說明當(dāng)用戶指定了數(shù)據(jù)屬性或數(shù)據(jù)使用要求時如何進(jìn)行選擇數(shù)據(jù)存儲位置的處理。
在存儲控制裝置101或管理終端601上執(zhí)行的控制程序,考慮到賦予數(shù)據(jù)的屬性、存儲系統(tǒng)的用戶或系統(tǒng)管理者指定的策略、對于所述數(shù)據(jù)的實際存取特性、用作所述數(shù)據(jù)的存儲區(qū)域的設(shè)備、裝置、整個系統(tǒng)在某時刻的動作狀態(tài)或隨時間變化狀態(tài)等,將所述數(shù)據(jù)分配到對所述數(shù)據(jù)的優(yōu)化存儲區(qū)域。
具體地,關(guān)于某數(shù)據(jù),根據(jù)預(yù)先確定的判定條件,所述程序確定圖8-10和圖14中所示的設(shè)備、裝置、整個系統(tǒng)的動作狀態(tài),關(guān)于所述設(shè)備、裝置、整個系統(tǒng)的信息經(jīng)常被收集。根據(jù)上述所述狀態(tài)的確定,所述程序分配滿足預(yù)定要求且優(yōu)化功率消耗管理或系統(tǒng)壽命管理的優(yōu)化存儲區(qū)域。當(dāng)從主機(jī)102接收數(shù)據(jù)時或用戶或系統(tǒng)管理者創(chuàng)建邏輯卷時,或以一定時間間隔等,執(zhí)行該分配處理。
在此,下面描述判定條件的例子以及如何基于所述判定條件選擇分配目的地的例子。
(1)根據(jù)當(dāng)前的使用狀態(tài)或歷史,在寫/擦除壽命和設(shè)備壽命與其它存儲設(shè)備的相比較短的存儲設(shè)備上,提供分配控制。
具體地,若存在具有差不多達(dá)到預(yù)定閾值的寫/擦除壽命的任何存儲設(shè)備,則分配對數(shù)據(jù)的存儲區(qū)域給具有更長或無限制的壽命的其它設(shè)備。例如,查詢在關(guān)于圖8的說明中所描述的管理表,如果存在具有擦除次數(shù)、寫入次數(shù)、壞塊增加率、平均擦除時間、加速/減速次數(shù)、或?qū)⑦_(dá)到或已達(dá)到閾值的總使用時間中的任何一個的設(shè)備,則這些設(shè)備將用作讀優(yōu)先數(shù)據(jù)用的存儲區(qū)域。
(2)根據(jù)用戶或管理者指定的諸如寫頻度或讀頻度、功率消耗、性能等的策略,分配適當(dāng)?shù)脑O(shè)備作為對數(shù)據(jù)的存儲區(qū)域。
例如,如后述的圖16的條目#0所示,如果確定及指定讀頻度非常大,則將數(shù)據(jù)分配到諸如讀動作快得多的閃存器之類的存儲區(qū)域。類似地,如果指定數(shù)據(jù)存儲在WORM(Write Once Read Many,一次寫多次讀)介質(zhì)中,或者指定數(shù)據(jù)存儲長期的保持時間(retention period),則在諸如在消耗功率和長期保存方面有利的閃存器之類的設(shè)備上分配。
(3)在降低功率消耗的存儲設(shè)備上進(jìn)行分配。例如,參照圖10,根據(jù)設(shè)備的功率消耗和各部件的工作狀態(tài),選擇低消耗功率設(shè)備(例如閃存器或在MAID技術(shù)控制下的HDD),使得這些低消耗功率設(shè)備的存儲區(qū)域被優(yōu)先地分配數(shù)據(jù)。通過使用如圖14所示那樣的表、掌握整個所述系統(tǒng)S中這些設(shè)備的使用狀態(tài),則可以進(jìn)行分配控制使得降低整個所述系統(tǒng)S中的這些裝置的功率消耗。
圖15是顯示用于控制對數(shù)據(jù)的存儲區(qū)域的分配的處理流程圖。該處理通過圖6中所示的存儲控制裝置101的MP單元220進(jìn)行。
MP單元220,從用戶或者管理者接收與要存儲的數(shù)據(jù)的屬性相一致的、對存儲目的地請求的屬性或運(yùn)用策略的指定。例如,對于用作存儲目的地的邏輯卷,指定關(guān)于容量、性能、R/W頻度、WORM化、歸檔(archive)等的使用屬性。在此,所指定的策略在后述的圖16中所示的表中被管理(步驟S1501)。
接著,MP單元220,將現(xiàn)在的使用狀況以及可以使用的沒備的列表等,如圖7-10所示的表上管理的信息,和在步驟S1501中指定的策略的內(nèi)容進(jìn)行比較。例如,MP單元220將用戶指定的數(shù)據(jù)的容量,和圖10的空閑低消耗功率設(shè)備池的容量1004進(jìn)行比較(步驟S1502)。
接下來,MP單元220,根據(jù)在步驟S1502中的比較結(jié)果,選擇在當(dāng)前時刻判定為最佳的分配目的地作為候補(bǔ)目的地。例如,如果指定對于某數(shù)據(jù)在將策略設(shè)定為寫頻度為“少”,讀頻度為“大”,讀性能為“高性能”的情況下,MP單元220選擇例如由閃存器構(gòu)成的存儲區(qū)域。另外,在對于某數(shù)據(jù)指定存儲在WORM卷中的情況下,則MP單元220選擇例如由閃存器構(gòu)成的存儲區(qū)域。而且在另外的例子中,在寫頻度和讀頻度均為“少”,讀性能為“低性能”的這種稱為“低成本”的策略的情況下MP單元220選擇例如使用ATA磁盤驅(qū)動器進(jìn)行MAID控制的存儲區(qū)域。另外,在用戶指定的策略為寫頻度和讀頻度均為“多”的情況下,MP單元220選擇SCSI HDD驅(qū)動器作為存儲區(qū)域。而且,在不可能作出明確的判定的情況下,MP單元220優(yōu)先分配由閃存器構(gòu)成的區(qū)域(步驟S1503)。
接下來,為了確認(rèn)所選擇的數(shù)據(jù)存儲目的地,MP單元220將在步驟S1503中所選擇的存儲區(qū)域通知給用戶或管理者(步驟S1504)。
然后,按照用戶或系統(tǒng)管理者的決定,MP單元220在所選擇的存儲區(qū)域上創(chuàng)建邏輯卷(步驟S1505)。
雖然作為一個例子已經(jīng)說明了主要由MP單元220執(zhí)行上述分配處理的動作,但是該處理也可以通過執(zhí)行管理單元603中的程序而執(zhí)行,也可以通過管理終端601中的程序而執(zhí)行。在圖6所示的系統(tǒng)S被構(gòu)造得經(jīng)通信路徑接收上述分配處理所需要的、由用戶或系統(tǒng)管理者所發(fā)送的策略指定。該系統(tǒng)還被構(gòu)造成經(jīng)通信路徑接入包括后述表的各種表的存儲單元,基于所述各種表,進(jìn)行各種判定。因此,上述分配處理可以在所述系統(tǒng)的任一單元或其結(jié)合中執(zhí)行。例如,所述分配處理可以由所述系統(tǒng)的幾個單元的組合來進(jìn)行,使得管理終端601可以用作與用戶或系統(tǒng)管理者的接口,如策略的輸入或、對選擇或確認(rèn)的顯示等;MP單元220用于取得關(guān)于這些表的信息;管理單元603對輸入的條件和這些表上的信息進(jìn)行綜合判斷。
圖16顯示用于判定存儲目的地用設(shè)備的管理表的一例。
用戶指定要求表1600(也稱為“用戶指定表”)包括容量字段1601,其對于構(gòu)成存儲區(qū)域的各個卷或各個要存儲的數(shù)據(jù),存儲表示其容量(大小)的值;用戶指定要求字段1602,用于存儲用戶所指定的要求。雖然用戶指定要求字段1602可以存儲特定的值,例如,I/O特性“(讀/寫比率)[100]”,“要求的功率[1W以下]”,“性能/響應(yīng)時間[1μs以下]”等,但是也可以包括也可以不是具體的數(shù)字。在此,為方便起見,寫入定性的值。除上述用戶指定要求字段(1602)以外,用戶指定要求表1600可以還設(shè)有指定設(shè)備字段1603,該指定設(shè)備字段1603可以包括直接指定設(shè)備類型如“ATA磁盤驅(qū)動器”或“SCSI磁盤驅(qū)動器”的字段。
如圖19所示,設(shè)備判定表1900(也稱為“存儲介質(zhì)管理表”)包括用戶指定要求字段1901以及分配第一候補(bǔ)設(shè)備類型字段1902。用戶指定要求字段1901存儲與圖16中所示的用戶指定要求表1600中的內(nèi)容對應(yīng)的值。分配第一候補(bǔ)設(shè)備類型字段1902表示對于用戶指定的要求,作為第一候補(bǔ)的設(shè)備類型。
圖16中所示的用戶指定要求可以是具有優(yōu)先級的形式。以下,使用圖15以及圖17的流程圖,說明在用戶指定要求具有優(yōu)先級的情況下數(shù)據(jù)存儲區(qū)域的選擇處理。
在用戶指定要求具有優(yōu)先級的情況下,MP單元220執(zhí)行在圖15中步驟S1502以及步驟S1503和在圖17中步驟S15020至步驟S15026的處理。
首先,在圖17中的步驟S15020中,開始判定處理。
MP單元220,使用用戶指定要求表1600和設(shè)備判定表1900,選擇分配第一候補(bǔ)目的地。例如,在圖16中的條目#0的情況下,MP單元220選擇閃存器設(shè)備作為分配目的地。另外,在如圖16中的條目#1那樣的情況下,MP單元220選擇ATA磁盤驅(qū)動器作為指定的設(shè)備(步驟S15021)。
接下來,MP單元220檢查如圖8-10的各表中所管理的那樣的使用狀況(步驟S15022)。
接下來,MP單元220判定有無滿足用戶指定要求的設(shè)備區(qū)域(步驟S15023)。
在步驟S15023,在有滿足要求的設(shè)備區(qū)域的情況下,所述處理進(jìn)入步驟S15024,其中MP單元220確保所要求的容量,確認(rèn)所選擇的數(shù)據(jù)存儲目的地,然后所述處理進(jìn)入步驟S15040。
在此,在基于圖17的流程的處理中,對于第一候補(bǔ)分配目的地,當(dāng)基于使用狀況進(jìn)行判斷,沒有可的設(shè)備時,也可以選擇以第二優(yōu)先級判斷的分配候補(bǔ)目的地。
例如,在步驟S15023中,在沒有滿足要求的設(shè)備區(qū)域的情況下,如果查詢圖18中所示的用戶指定要求表1800,可以檢查具有第二優(yōu)先級的要求。
圖18顯示附加了優(yōu)先級的用戶指定要求表1800的一例。用戶指定要求表1800包括存儲分配目的地所要求的容量的值的容量字段1801、附加了優(yōu)先級的信息的用戶指定要件順序字段1802~1804、以及用于指定設(shè)備的指定設(shè)備類型字段1805。例如,在圖18中的用戶指定要求表1800的條目#0的情況下,關(guān)于寫/讀比的寫“少”讀“多”,為第1優(yōu)先級的指定要件、第2優(yōu)先級的指定要件為關(guān)于消耗功率的“低消耗功率”,第3優(yōu)先級的指定要件是關(guān)于“性能”的。
在此,返回到圖17,在步驟S15021中,如圖18的條目#0那樣,在用戶指定了寫“少”讀“多”的要件的情況下,MP單元220查詢圖19的表,選擇閃存器區(qū)域或者ATA磁盤驅(qū)動器。但是,在步驟S15022中,在根據(jù)使用狀況沒有可以選擇的閃存器區(qū)域的情況下,MP單元220,在步驟S15023中判斷為沒有滿足用戶指定要求和使用狀況的設(shè)備,所述處理進(jìn)入步驟S15026。
MP單元220判定有無具有第二級的優(yōu)先要求(步驟S15026)。
在步驟S15026中,在存在第二級的優(yōu)先要求的情況下,所述處理進(jìn)入步驟S15025,重新選擇滿足用戶指定要求的用于分配目的地的候補(bǔ)目的地。例如,如圖18中用戶指定要求表1800的條目#0那樣,在第二優(yōu)先級的項目為“低消耗功率”,最低優(yōu)先級是“性能”的項目的情況下,選擇ATA磁盤驅(qū)動器(MAID控制的HDD)作為滿足用戶指定要求的下一候選目的地,而不是閃存器區(qū)域(步驟S15025)。
接下來,在步驟S15022中,MP單元220綜合判斷使用狀況,在步驟S15024確保所要求的區(qū)域,然后進(jìn)入到步驟S15040來確認(rèn)已被選擇的數(shù)據(jù)的存儲目的地。
如果選擇第一候補(bǔ)設(shè)備作為第一候補(bǔ)目的地變得困難,則這可能是由于根據(jù)圖8中所示的設(shè)備的使用狀況可選擇的可能性變化而引起的。即,將由閃存器構(gòu)成的區(qū)域或由ATA磁盤驅(qū)動器(MAID控制HDD)構(gòu)成的區(qū)域作為第一候補(bǔ)的情況下,在圖8中的、基于使用狀況的設(shè)備的選擇中,在僅存有寫頻度超過預(yù)定寫次數(shù)的設(shè)備的情況下,或相對于用戶要求的容量,空閑區(qū)域不足等情況下,即使執(zhí)行該選擇,也無法高效率地使用該數(shù)據(jù)或存儲區(qū)域。另一方面,在數(shù)據(jù)被指定存儲在如WORM那樣的限定寫頻度的設(shè)備的情況下,由于可以分配甚至具有更多寫入次數(shù)的設(shè)備,則通過選擇該設(shè)備,可以高效率地使用該數(shù)據(jù)。另外,作為要求的優(yōu)先級,在要求是性能相同、讀“多”寫“少”、且低消耗功率的情況下,沒有閃存器區(qū)域,即使通過接著選擇ATA磁盤驅(qū)動器(MAID控制的HDD),也可以滿足要求。這樣,根據(jù)本發(fā)明的第二實施方式,可以根據(jù)存儲系統(tǒng)S的使用狀況選擇所述數(shù)據(jù)存儲目的地。
根據(jù)本發(fā)明的第一和第二實施方式中的存儲系統(tǒng)S,可以提供低消耗功率、且在必要的數(shù)據(jù)中不引起性能降低、可以大規(guī)模構(gòu)成,并可以將數(shù)據(jù)存儲在最佳介質(zhì)中的系統(tǒng)。另外,可以進(jìn)行最佳數(shù)據(jù)存儲位置控制,該控制就各介質(zhì)所具有的特性(例如重寫壽命或?qū)懭胄阅堋⑷蒎e性)而言,可以提高系統(tǒng)整體的可靠性、可用性。
根據(jù)本發(fā)明的第一和第二實施方式中的實施例已如上所述進(jìn)行了解釋說明。但是,本發(fā)明的實施例并不限于這些解釋說明,本領(lǐng)域的技術(shù)人員確保本發(fā)明的必要技術(shù)特征而可以對本發(fā)明進(jìn)行各種修改或改變以使其適用于不同的用途和狀況而不脫離要求保護(hù)的精神和范圍。
權(quán)利要求
1.一種存儲控制裝置,其包括多個連接單元,其與一個或多個主機(jī),以及作為存儲數(shù)據(jù)用的存儲介質(zhì)的一個或多個硬盤驅(qū)動器相連;一個或多個非易失性存儲介質(zhì),其作為和硬盤驅(qū)動器不同類型的存儲介質(zhì),存儲由主機(jī)進(jìn)行寫請求的數(shù)據(jù);多個處理單元,其通過使用硬盤驅(qū)動器或非易失性存儲介質(zhì),處理來自所述主機(jī)的寫請求和讀請求;和存儲所述處理單元所使用的控制信息的多個存儲器單元,其特征在于,硬盤驅(qū)動器,作為獨立單元或具有控制單元的磁盤陣列設(shè)備的一部分而設(shè)置;在各個存儲器單元中存儲的控制信息是使用狀態(tài)管理表,其將各個存儲介質(zhì)的識別符和關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息關(guān)聯(lián)起來;各個存儲器單元還存儲關(guān)于各個存儲介質(zhì)的信息的各個閾值;各個處理單元查詢存儲在各個存儲器單元中的所述使用狀態(tài)管理表以及各個閾值,當(dāng)關(guān)于使用狀態(tài)的信息中的任何一個超過閾值時,將存儲在使用狀態(tài)超過該閾值的任何類型的存儲介質(zhì)的中數(shù)據(jù),向另一類型的存儲介質(zhì)轉(zhuǎn)移。
2.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,各個非易失性存儲介質(zhì)為閃存器。
3.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,各個非易失性存儲介質(zhì)為鐵電體存儲器。
4.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,各個非易失性存儲介質(zhì)為相變化存儲器。
5.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,通過直接或經(jīng)由磁盤陣列設(shè)備的控制單元來使用MAID(Massive Array of Idle Disks)技術(shù),各個處理單元使硬盤驅(qū)動器旋轉(zhuǎn)或停止。
6.根據(jù)權(quán)利要求5所述的存儲控制裝置,其特征在于,硬盤驅(qū)動器包括SCSI(Small Computer system Interface)磁盤驅(qū)動器或ATA(AT Attachment)磁盤驅(qū)動器中至少一種。
7.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,各個非易失性存儲介質(zhì)的重寫次數(shù)比硬盤驅(qū)動器的重寫次數(shù)少;使用狀態(tài)管理表,作為與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息,包括重寫次數(shù);各個存儲器單元,作為閾值,存儲重寫次數(shù)的閾值;每個處理單元查詢存儲在各個存儲器單元中的使用狀態(tài)管理表以及與重寫次數(shù)相關(guān)的閾值,當(dāng)關(guān)于重寫次數(shù)的信息中的任何一個超過閾值時,將重寫次數(shù)超過該重寫次數(shù)閾值的任何類型的存儲介質(zhì)之一中存儲的數(shù)據(jù),向另一類型的存儲介質(zhì)之一轉(zhuǎn)移。
8.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,硬盤驅(qū)動器的讀/寫響應(yīng)速度比各個非易失性存儲介質(zhì)的讀/寫響應(yīng)速度低;使用狀態(tài)管理表,作為關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息,包括數(shù)據(jù)寫入或數(shù)據(jù)讀取的使用次數(shù);各個存儲器單元,作為所述閾值,存儲與數(shù)據(jù)寫入或數(shù)據(jù)讀取的使用次數(shù)相關(guān)的閾值;處理單元,查詢在存儲器單元中存儲的使用狀態(tài)管理表和與數(shù)據(jù)寫入或數(shù)據(jù)讀取的使用次數(shù)相關(guān)的閾值,當(dāng)關(guān)于所述數(shù)據(jù)寫入或數(shù)據(jù)讀取使用次數(shù)的信息中的任何一個超過閾值時,將數(shù)據(jù)寫入或數(shù)據(jù)讀取使用次數(shù)超過該數(shù)據(jù)寫入或數(shù)據(jù)讀取使用次數(shù)閾值的任何類型的存儲介質(zhì)之一中存儲的數(shù)據(jù),向另一類型的存儲介質(zhì)之一轉(zhuǎn)移。
9.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,使用狀態(tài)管理表,作為與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息,包括故障區(qū)域數(shù);各個存儲器單元,作為閾值,存儲與故障區(qū)域數(shù)相關(guān)的閾值;各個處理單元查詢存儲在各個存儲器單元中的使用狀態(tài)管理表和與故障區(qū)域數(shù)相關(guān)的閾值,當(dāng)關(guān)于所述故障區(qū)域數(shù)的信息中的任何一個超過閾值時,將故障區(qū)域數(shù)超過該故障區(qū)域數(shù)的閾值的任何類型的存儲介質(zhì)之一中存儲的數(shù)據(jù),向另一類型的存儲介質(zhì)之一轉(zhuǎn)移。
10.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,處理單元,當(dāng)作為數(shù)據(jù)轉(zhuǎn)移目的地的另一類型的存儲介質(zhì)是非易失性存儲介質(zhì)之一時,在硬盤上確保一定的區(qū)域作為暫時存儲區(qū)域,并將準(zhǔn)備轉(zhuǎn)移的數(shù)據(jù)逐部分地順次復(fù)制到硬盤上的該暫時存儲區(qū)域上;當(dāng)在數(shù)據(jù)轉(zhuǎn)移過程中,從主機(jī)接收到與部分所述數(shù)據(jù)有關(guān)的讀請求時,所述處理單元將存儲在數(shù)據(jù)轉(zhuǎn)移源的存儲區(qū)域中的對應(yīng)數(shù)據(jù)發(fā)送至主機(jī),并不同步地、逐部分地順次處理向作為數(shù)據(jù)轉(zhuǎn)移目的地的所述存儲介質(zhì)的數(shù)據(jù)轉(zhuǎn)移。
11.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,處理單元,當(dāng)作為數(shù)據(jù)轉(zhuǎn)移目的地的另一類型的存儲介質(zhì)是非易失性存儲介質(zhì)之一時,在硬盤上確保一定的區(qū)域作為暫時存儲區(qū)域,并將準(zhǔn)備轉(zhuǎn)移的數(shù)據(jù)逐部分地順次復(fù)制到硬盤上的該暫時存儲區(qū)域上;當(dāng)在數(shù)據(jù)轉(zhuǎn)移過程中,從主機(jī)接收到與部分所述數(shù)據(jù)有關(guān)的讀請求時,如果對應(yīng)于這部分?jǐn)?shù)據(jù)的新數(shù)據(jù),已經(jīng)通過來自所述主機(jī)的另一個寫請求存儲在所述非易失性存儲介質(zhì)之一上時,處理單元將該新數(shù)據(jù)返回到主機(jī)。
12.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,處理單元,當(dāng)作為數(shù)據(jù)轉(zhuǎn)移目的地的另一類型的存儲介質(zhì)是非易失性存儲介質(zhì)之一時,在硬盤上確保一定的區(qū)域作為暫時存儲區(qū)域;當(dāng)在數(shù)據(jù)轉(zhuǎn)移過程中,從主機(jī)接收到與部分所述數(shù)據(jù)有關(guān)的寫請求時,所述處理單元將與存儲在暫時區(qū)域內(nèi)的所述部分?jǐn)?shù)據(jù)相關(guān)的新數(shù)據(jù)存儲在暫時存儲區(qū)內(nèi),在所述數(shù)據(jù)轉(zhuǎn)移結(jié)束后,在所述非易失性存儲介質(zhì)上反映該新數(shù)據(jù)。
13.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,所述使用狀態(tài)管理表,作為關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息,包括擦除操作錯誤次數(shù);所述存儲器單元,作為閾值,存儲于擦除操作錯誤次數(shù)相關(guān)的閾值;所述處理單元查詢存儲在所述存儲器單元中的使用狀態(tài)管理表和閾值,當(dāng)關(guān)于擦除操作錯誤次數(shù)的信息中的任何一個超過所述閾值時,將擦除操作錯誤次數(shù)超過該擦除操作錯誤次數(shù)閾值的任何類型的所述存儲介質(zhì)之一中存儲的數(shù)據(jù),向另一類型的存儲介質(zhì)之一轉(zhuǎn)移。
14.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,所述使用狀態(tài)管理表,作為與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息,包括平均擦除時間;所述存儲器單元,作為閾值,存儲與平均擦除時間相關(guān)的閾值;所述存儲器單元查詢存儲在各個存儲器單元中的使用狀態(tài)管理表和閾值,當(dāng)關(guān)于所述平均擦除時間的信息中的任何一個超過所述閾值時,將平均擦除時間超過平均擦除時間閾值的任何類型的所述存儲介質(zhì)之一中存儲的數(shù)據(jù),向另一類型的所述存儲介質(zhì)之一轉(zhuǎn)移。
15.一種數(shù)據(jù)管理系統(tǒng),其包括權(quán)利要求1所述的存儲控制裝置、至少一個與存儲控制裝置相連接的管理終端,其特征在于,管理終端具有管理終端處理單元和管理終端存儲單元;管理終端存儲單元,存儲有包括各個存儲控制裝置的每一定時間段的功率消耗量的整體信息表,和多個存儲控制裝置的每一定時間段的整體功率消耗量的閾值;管理終端處理單元查詢整體信息表并計算多個存儲控制裝置每一定時間段的總體功率消耗量,如果計算出的功率消耗量超過全部存儲控制裝置的每一定時間段的總功率消耗量的閾值,則在存儲控制裝置內(nèi)部的存儲介質(zhì)間、或多個存儲控制裝置中的存儲介質(zhì)間進(jìn)行數(shù)據(jù)轉(zhuǎn)移,來降低每一定時間段的功率消耗。
16.根據(jù)權(quán)利要求15所述數(shù)據(jù)管理系統(tǒng),其特征在于,整體信息表包括各個存儲控制裝置中的低功率消耗的存儲介質(zhì)的空閑區(qū)域。
17.一種數(shù)據(jù)管理方法,其由至少一個存儲控制裝置來實施,該裝置包括與一個或多個主機(jī)、以及一個或多個作為存儲數(shù)據(jù)的存儲介質(zhì)的硬盤驅(qū)動器連接的連接單元;存儲由主機(jī)寫請求的數(shù)據(jù)的一個或多個與硬盤驅(qū)動器不同類型的非易失性存儲介質(zhì);通過使用硬盤驅(qū)動器或非易失性存儲介質(zhì)來處理來自主機(jī)的寫和讀請求的多個處理單元;和多個用于存儲將由處理單元使用的控制信息的存儲器單元,其特征在于,該方法包括將作為使用狀態(tài)管理表的信息存儲在各個存儲器單元,該使用狀態(tài)管理表將各個存儲介質(zhì)的識別符和關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息關(guān)聯(lián)起來;將關(guān)于各個存儲介質(zhì)的使用狀態(tài)的信息的各個閾值,存儲在各個存儲器單元中;各個處理單元查詢存儲在存儲器單元上的使用狀態(tài)表和各個閾值,當(dāng)與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息中的任何一個超過閾值時,將存儲在使用狀態(tài)超過使用狀態(tài)閾值的任意類型的存儲介質(zhì)之一中的數(shù)據(jù),轉(zhuǎn)移到另一類型的存儲介質(zhì)之一。
18.根據(jù)權(quán)利要求17所述的數(shù)據(jù)管理方法,其特征在于,通過使用作為閃存器的各個非易失性存儲介質(zhì)來實施數(shù)據(jù)管理。
19.根據(jù)權(quán)利要求17所述的數(shù)據(jù)管理方法,其特征在于,數(shù)據(jù)管理通過以下方式實施各個非易失性存儲介質(zhì)具有比硬盤驅(qū)動器少的可重寫次數(shù);使用狀態(tài)管理表,作為與各個存儲介質(zhì)的使用狀態(tài)相關(guān)的信息,包括重寫次數(shù);各個存儲器單元,作為閾值,存儲與重寫次數(shù)相關(guān)的閾值;各個處理單元查詢存儲在各個存儲器單元中的使用狀態(tài)管理表和閾值,將在重寫次數(shù)超過重寫次數(shù)閾值的非易失性存儲介質(zhì)之一上存儲的數(shù)據(jù),轉(zhuǎn)移至硬盤驅(qū)動器之一。
20.根據(jù)權(quán)利要求17所述的數(shù)據(jù)管理方法,其特征在于,數(shù)據(jù)管理通過以下方式實施硬盤驅(qū)動器具有比各個非易失性存儲介質(zhì)慢的讀/寫響應(yīng)速度;使用狀態(tài)管理表,作為與各個存儲介質(zhì)相關(guān)的信息,包括讀/寫使用次數(shù);各個存儲器單元,作為閾值,存儲讀/寫使用次數(shù)的閾值;各個處理單元查詢存儲在各個存儲器單元中的使用狀態(tài)管理表和閾值,當(dāng)與各個存儲介質(zhì)的讀/寫使用次數(shù)相關(guān)的信息中的任何一個超過閾值時,將存儲在讀/寫使用次數(shù)超過讀/寫使用次數(shù)閾值的任意類型的存儲介質(zhì)之一中的數(shù)據(jù),轉(zhuǎn)移到另一類型的存儲介質(zhì)之一。
21.一種存儲控制裝置,其特征在于,具有多個連接單元,其與一個或多個主機(jī)、以及作為存儲數(shù)據(jù)的存儲介質(zhì)的一個或多個磁盤驅(qū)動器相連;一個或多個非易失性存儲介質(zhì),其是和磁盤驅(qū)動器不同類型的存儲介質(zhì),存儲由主機(jī)進(jìn)行寫請求的數(shù)據(jù);多個處理單元,其通過使用所述磁盤驅(qū)動器或所述非易失性存儲介質(zhì),對來自所述主機(jī)的寫請求和讀請求進(jìn)行處理;多個存儲器單元,其存儲用戶指定表,其存儲關(guān)于用戶對數(shù)據(jù)指定的存儲介質(zhì)的性能的識別信息,存儲介質(zhì)管理表,用于將所述存儲介質(zhì)與其性能相關(guān)聯(lián),使用狀況管理表,用于將對每個存儲介質(zhì)的識別符與每個存儲介質(zhì)的使用狀況相關(guān)的信息相關(guān)聯(lián);其中所述處理單元查詢所述用戶指定表,判定關(guān)于所述數(shù)據(jù)的用戶指定,查詢所述存儲介質(zhì)管理表以及所述使用狀況管理表,選擇具有滿足關(guān)于所述數(shù)據(jù)的所述用戶指定的性能的存儲介質(zhì),且存儲所述數(shù)據(jù)在所選定的存儲介質(zhì)上。
22.根據(jù)權(quán)利要求21所述的存儲控制裝置,其特征在于,所述處理單元,如果從所述用戶接收到一指示以建立用于存儲所述數(shù)據(jù)的邏輯存儲區(qū)域,查詢所述存儲介質(zhì)管理表和所述使用狀況管理表并選擇滿足對于存儲所述數(shù)據(jù)的邏輯存儲區(qū)域的所述用戶指定的存儲介質(zhì),以及使用所選擇的存儲介質(zhì)創(chuàng)建用于存儲所述數(shù)據(jù)的邏輯存儲區(qū)域,并將所述數(shù)據(jù)存儲在所創(chuàng)建的邏輯存儲區(qū)域中。
23.根據(jù)權(quán)利要求21所述的存儲控制裝置,其特征在于,所述非易失性存儲介質(zhì)是閃存器。
24.根據(jù)權(quán)利要求21所述的存儲控制裝置,其特征在于,存儲在所述用戶指定表中的、與所述存儲介質(zhì)的性能有關(guān)的識別信息,包括與所述數(shù)據(jù)的容量、所述數(shù)據(jù)的讀頻度、以及WORM是否被指定用于所述數(shù)據(jù)中的任一項相關(guān)的信息。
25.根據(jù)權(quán)利要求21所述的存儲控制裝置,其特征在于,所述用戶指定表存儲具有由所述用戶指定的優(yōu)先級的、關(guān)于多個存儲介質(zhì)的性能的識別信息;所述處理單元查詢所述用戶指定表和所述存儲介質(zhì)管理表以及所述使用狀況管理表,按照所述優(yōu)先級,選擇由所述用戶指定的用于所述數(shù)據(jù)的存儲介質(zhì),將所述數(shù)據(jù)存儲在所選擇的存儲介質(zhì)中。
全文摘要
根據(jù)本發(fā)明的一個存儲控制裝置包括多個連接單元,其與一個或多個主機(jī)以及一個或多個作為存儲數(shù)據(jù)的存儲介質(zhì)的硬盤驅(qū)動器相連;一個或多個與硬盤驅(qū)動器不同類型的非易失性存儲介質(zhì),其存儲由主機(jī)寫請求的數(shù)據(jù);多個處理單元,其通過使用硬盤驅(qū)動器或非易失性存儲介質(zhì),來處理來自主機(jī)的寫和讀請求;多個存儲器單元,其存儲將要被處理單元使用的控制信息。
文檔編號G06F3/06GK1959598SQ20061013930
公開日2007年5月9日 申請日期2006年9月22日 優(yōu)先權(quán)日2005年9月22日
發(fā)明者藤林昭, 藤本和久, 中村崇仁 申請人:株式會社日立制作所