欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法

文檔序號(hào):6509473閱讀:303來(lái)源:國(guó)知局
專利名稱:存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法
技術(shù)領(lǐng)域
本發(fā)明涉及存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法。
背景技術(shù)
存儲(chǔ)子系統(tǒng)可以向主機(jī)提供大容量且高性能的存儲(chǔ)服務(wù)。在存儲(chǔ)子系統(tǒng)中,例如陣列狀設(shè)置多個(gè)盤驅(qū)動(dòng)器,構(gòu)筑基于RAID(Redundant Array ofIndependent Inexpensive Disks)的存儲(chǔ)區(qū)域。在各盤驅(qū)動(dòng)器具有的物理存儲(chǔ)區(qū)域上形成作為邏輯存儲(chǔ)區(qū)域的邏輯卷。在邏輯卷中預(yù)先對(duì)應(yīng)付與LUN(Logical Unit Number)。主機(jī)通過(guò)指定LUN或塊地址等,對(duì)存儲(chǔ)子系統(tǒng)發(fā)布規(guī)定形式的寫入命令或讀出命令。由此,主機(jī)可以對(duì)存儲(chǔ)子系統(tǒng)進(jìn)行所希望的數(shù)據(jù)的讀寫。
在存儲(chǔ)子系統(tǒng)可以連接多個(gè)主機(jī)。在將某個(gè)主機(jī)或應(yīng)用程序管理的數(shù)據(jù)群可以從其他主機(jī)或應(yīng)用程序讀寫時(shí),有時(shí)產(chǎn)生不便。因此,例如采用分區(qū)或LUN屏蔽等的訪問(wèn)控制技術(shù)。所謂分區(qū),是對(duì)存儲(chǔ)子系統(tǒng)設(shè)定1個(gè)或多個(gè)區(qū),許可只對(duì)屬于區(qū)的特定通信端口或WWN(World Wide Name)轉(zhuǎn)發(fā)數(shù)據(jù)的技術(shù)。所謂LUN屏蔽,是對(duì)特定主機(jī)許可訪問(wèn)特定LUN的技術(shù)。
但是,主機(jī)和盤驅(qū)動(dòng)器間的數(shù)據(jù)交接是經(jīng)高速緩存進(jìn)行的。若從主機(jī)輸出寫命令,則例如數(shù)據(jù)一次保存到高速緩存之后,寫入盤驅(qū)動(dòng)器。另外,若從主機(jī)輸出讀命令,則例如從盤驅(qū)動(dòng)器讀出的數(shù)據(jù)經(jīng)高速緩存提供給主機(jī)。因此,適當(dāng)分配對(duì)盤驅(qū)動(dòng)器的緩存分配量的技術(shù)也被公知(專利文獻(xiàn)1)。
專利文獻(xiàn)1特開平4-264940號(hào)公報(bào)。

發(fā)明內(nèi)容
利用現(xiàn)有的分區(qū)和LUN屏蔽可以設(shè)定主機(jī)對(duì)存儲(chǔ)子系統(tǒng)的訪問(wèn)限制。但是,現(xiàn)有技術(shù)僅僅可以對(duì)邏輯卷的簡(jiǎn)單訪問(wèn)進(jìn)行限制,沒有實(shí)現(xiàn)存儲(chǔ)子系統(tǒng)具有的資源的分割管理,所以使用不方便。在由多個(gè)用戶公共使用存儲(chǔ)子系統(tǒng)時(shí),例如,若某用戶輸出大量的輸入輸出請(qǐng)求(IO請(qǐng)求),則為了處理該請(qǐng)求,使用高速緩存的多個(gè)區(qū)域。從而,對(duì)于來(lái)自其他用戶的輸入輸出處理不能使用充分的高速緩存,作為子系統(tǒng)整體的服務(wù)性能降低。即,為了對(duì)某用戶的服務(wù)而會(huì)影響對(duì)其他用戶的服務(wù)。
另外,上述專利文獻(xiàn)中,對(duì)各存儲(chǔ)裝置分別分配有高速緩存,但這是為了將高速緩存中存儲(chǔ)的數(shù)據(jù)有效寫入存儲(chǔ)裝置中,不是為了提供給多個(gè)用戶而進(jìn)行資源(高速緩存)的分割管理。
因此,本發(fā)明的一個(gè)目的在于,提供一種可以向多個(gè)用戶分別分配高速緩存區(qū)域并公共使用,可以降低為了向某個(gè)用戶提供服務(wù)而影響其他用戶的存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法。本發(fā)明的一個(gè)目的在于,提供一種可以向多個(gè)用戶靈活地分配資源,并且可以用更少的信息量為使各用戶的管理范圍相互不影響而進(jìn)行管理的存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法。本發(fā)明的一個(gè)目的在于,提供一種通過(guò)對(duì)應(yīng)高速緩存的管理單位來(lái)構(gòu)成管理信息,可以邏輯分割并使用高速緩存資源的存儲(chǔ)子系統(tǒng)和存儲(chǔ)子系統(tǒng)的控制方法。本發(fā)明的其他目的可以從后述的實(shí)施例中變得清楚。
為了解決上述問(wèn)題,本發(fā)明的存儲(chǔ)子系統(tǒng)具有分別控制與上位裝置的數(shù)據(jù)交接的多個(gè)通道適配器、分別提供邏輯存儲(chǔ)區(qū)域的多個(gè)存儲(chǔ)設(shè)備組、分別控制與各存儲(chǔ)設(shè)備組的數(shù)據(jù)交接的多個(gè)盤適配器、由各通道適配器和各盤適配器分別使用的高速緩存、邏輯分割并構(gòu)成高速緩存的多個(gè)高速緩存分區(qū)、存儲(chǔ)用于管理各高速緩存分區(qū)的管理信息的控制存儲(chǔ)器。另外,管理信息由對(duì)各高速緩存分區(qū)分別設(shè)置的分割管理信息、和適用于各高速緩存分區(qū)的整體的公共管理信息構(gòu)成。
高速緩存和控制存儲(chǔ)器可以采用分別安裝兩者的不同的存儲(chǔ)器基板,也可以采用混合裝載兩者的存儲(chǔ)器基板。另外,也可以將存儲(chǔ)器的某個(gè)區(qū)域用作高速緩存,將其他區(qū)域用作控制存儲(chǔ)器。高速緩存用于暫時(shí)(或長(zhǎng)期)存儲(chǔ)上位裝置和存儲(chǔ)設(shè)備組之間交接的數(shù)據(jù)。高速緩存邏輯分割成多個(gè)高速緩存分區(qū)。各高速緩存分區(qū)由管理信息分別獨(dú)立管理。各高速緩存分區(qū)例如可以對(duì)每個(gè)通道適配器分別設(shè)置(分配)。另外,各高速緩存分區(qū)例如可以由不同的用戶使用。管理信息由分割管理信息和公共管理信息構(gòu)成。分割管理信息是對(duì)各高速緩存分區(qū)分別設(shè)置的信息。公共管理信息是適用于所有高速緩存分區(qū)的信息。通過(guò)由分割管理信息和公共管理信息構(gòu)成管理信息,可以有效使用控制存儲(chǔ)器的存儲(chǔ)資源,分別使用多個(gè)高速緩存分區(qū)。
各分割管理信息和公共管理信息可以基于高速緩存管理單位的屬性來(lái)設(shè)定。作為高速緩存管理單位例如可以舉出例如槽位和段等。1個(gè)槽位可以至少由1個(gè)或1個(gè)以上的段構(gòu)成,1個(gè)段例如具有16KB程度的數(shù)據(jù)大小。作為高速緩存管理單位的屬性例如可以舉出空閑狀態(tài)、不正常狀態(tài)、正常狀態(tài)??臻e狀態(tài)是表示高速緩存管理單位為未使用的狀態(tài)。不正常狀態(tài)是表示高速緩存管理單位中存儲(chǔ)的數(shù)據(jù)未寫入存儲(chǔ)設(shè)備的狀態(tài)。正常狀態(tài)是表示高速緩存管理單位中存儲(chǔ)的數(shù)據(jù)已寫入存儲(chǔ)設(shè)備的狀態(tài)。存在根據(jù)高速緩存管理單位的屬性,希望在各高速緩存分區(qū)設(shè)置各管理信息的情況。相反,還有根據(jù)高速緩存管理單位的屬性,可以適用于所有高速緩存分區(qū)的管理信息。
例如,管理信息由多種子管理信息構(gòu)成時(shí),可以在各高速緩存分區(qū)分別分割設(shè)置部分子管理信息,將剩余的子管理信息適用于所有高速緩存分區(qū)。在此,將子管理信息中的哪些用作分割管理信息和將哪些用作公共管理信息是基于高速緩存管理單位的屬性確定的。
例如,管理信息可以構(gòu)成為包括多種隊(duì)列、與這些各隊(duì)列分別相關(guān)的計(jì)數(shù)器。在此,基于高速緩存管理單位的屬性,可以通過(guò)在各高速緩存分區(qū)分別設(shè)置各隊(duì)列和各計(jì)數(shù)器的一部分來(lái)構(gòu)成各分割管理信息。于是,可以將各隊(duì)列的剩余部分和各計(jì)數(shù)器的剩余部分用作公共管理信息。“基于高速緩存管理單位的屬性”也可以說(shuō)成“基于隊(duì)列(以及計(jì)數(shù)器)的屬性”。
在此,還可以是相互相關(guān)的隊(duì)列和計(jì)數(shù)器中的一方構(gòu)成分割管理信息,另一方用作公共管理信息。即,相互相關(guān)的隊(duì)列和計(jì)數(shù)器中,可以只分割計(jì)數(shù)器并分別分配給各高速緩存分區(qū)。
另外,可以在各隊(duì)列分別相關(guān)聯(lián)隊(duì)列管理表。接著,與構(gòu)成分割管理信息的隊(duì)列相關(guān)的隊(duì)列管理表可以分別設(shè)置在各高速緩存分區(qū)。即,隊(duì)列和隊(duì)列管理表是一直被一體使用,在隊(duì)列分別設(shè)置在各高速緩存分區(qū)的情況下,隊(duì)列管理表也是分別設(shè)置在各高速緩存分區(qū)。
管理信息構(gòu)成為可以包括連接有未使用狀態(tài)的高速緩存管理單位的空閑隊(duì)列以及與該空閑隊(duì)列相關(guān)的空閑隊(duì)列計(jì)數(shù)器、連接有存儲(chǔ)反映到存儲(chǔ)設(shè)備組之前的不正常(dirty)狀態(tài)的數(shù)據(jù)的高速緩存管理單位的不正常隊(duì)列以及與該不正常隊(duì)列相關(guān)的不正常隊(duì)列計(jì)數(shù)器、連接有存儲(chǔ)反映到存儲(chǔ)設(shè)備組之后的正常(clean)狀態(tài)的數(shù)據(jù)的高速緩存管理單位的正常隊(duì)列以及與該正常隊(duì)列相關(guān)的正常隊(duì)列計(jì)數(shù)器、和計(jì)數(shù)使用中的高速緩存管理單位的總量的使用中計(jì)數(shù)器。另外,空閑隊(duì)列計(jì)數(shù)器、正常隊(duì)列、正常隊(duì)列計(jì)數(shù)器以及使用中計(jì)數(shù)器作為分割管理信息可以分別設(shè)置在各高速緩存分區(qū)。另外,空閑隊(duì)列、不正常隊(duì)列以及不正常隊(duì)列計(jì)數(shù)器可以用作公共管理信息。
通過(guò)將各高速緩存分區(qū)中的1個(gè)高速緩存分區(qū)設(shè)定為公共區(qū)域并分配屬于該公共區(qū)域的資源,也可以設(shè)定新的高速緩存分區(qū)。例如,在初始狀態(tài),將所有高速緩存區(qū)域用作公共區(qū)域。接著,在新生成高速緩存分區(qū)的情況下,從公共區(qū)域截取部分高速緩存區(qū)域并分配給新的高速緩存分區(qū)。另外,在刪除高速緩存分區(qū)時(shí),將分配給該高速緩存分區(qū)的高速緩存區(qū)域返回到公共區(qū)域即可。


圖1是表示本發(fā)明的實(shí)施例的存儲(chǔ)子系統(tǒng)的外觀圖。
圖2是表示存儲(chǔ)子系統(tǒng)的邏輯概要結(jié)構(gòu)的框圖。
圖3是存儲(chǔ)子系統(tǒng)的更具體的框圖。
圖4是表示對(duì)各CLPR分配的高速緩存區(qū)域和VDEV的關(guān)系的說(shuō)明圖。
圖5是表示具有階段結(jié)構(gòu)的高速緩存管理方法的說(shuō)明圖。
圖6是SLCB表的狀態(tài)轉(zhuǎn)移圖。
圖7是表示隊(duì)列、計(jì)數(shù)器以及隊(duì)列管理表的關(guān)系的說(shuō)明圖。
圖8是表示SLCB表的概要結(jié)構(gòu)的說(shuō)明圖。
圖9是表示高速緩存區(qū)域、各隊(duì)列以及計(jì)數(shù)器的關(guān)系的說(shuō)明圖。
圖10是表示分配CLPR的管理信息的情況的模式圖。
圖11是表示利用VDEV鎖定和隊(duì)列鎖定可以移動(dòng)數(shù)據(jù)的情況的說(shuō)明圖。
圖12是表示從CLPR0向CLPR1移動(dòng)VDEV的情況的說(shuō)明圖。
圖13是表示移動(dòng)VDEV時(shí)的處理的流程圖。
圖14是變更對(duì)CLPR的高速緩存分配時(shí)的流程圖。
圖15是表示空閑段的收集處理的流程圖。
圖16是從用作庫(kù)區(qū)域的CLPR0截取緩存區(qū)域,設(shè)定新的CLPR的情況的說(shuō)明圖。
圖17是表示定義CLPR時(shí)的處理的流程圖。
圖18是表示在子管理終端顯示有關(guān)各CLPR的信息的情況的說(shuō)明圖。
具體實(shí)施例方式
下面,根據(jù)圖1~圖18說(shuō)明本發(fā)明的實(shí)施例。本實(shí)施例公開了一種具有對(duì)與上位裝置的數(shù)據(jù)交接分別進(jìn)行控制的多個(gè)上位接口控制單元、分別提供邏輯存儲(chǔ)區(qū)域的多個(gè)存儲(chǔ)設(shè)備組、對(duì)與各存儲(chǔ)設(shè)備組的數(shù)據(jù)交接分別進(jìn)行控制的多個(gè)下位接口控制單元、通過(guò)各上位接口控制單元和各下位接口控制單元分別使用的存儲(chǔ)器的存儲(chǔ)子系統(tǒng)。另外,本實(shí)施例中,將存儲(chǔ)器提供的高速緩存區(qū)域分割給多個(gè)高速緩存分區(qū)。另外,本實(shí)施例中,根據(jù)用于在存儲(chǔ)器管理數(shù)據(jù)的高速緩存管理單位的屬性,將管理信息分別分割給各高速緩存分區(qū),基于各管理信息,按各高速緩存分區(qū)分別管理數(shù)據(jù)。
實(shí)施例1圖1是表示存儲(chǔ)子系統(tǒng)10的外觀結(jié)構(gòu)的概要斜視圖。存儲(chǔ)子系統(tǒng)10例如可以由基本殼體11和多個(gè)增設(shè)殼體12構(gòu)成?;練んw11是存儲(chǔ)子系統(tǒng)10的最小結(jié)構(gòu)單位,具有存儲(chǔ)功能和控制功能的雙方。增設(shè)殼體12是存儲(chǔ)子系統(tǒng)10的選項(xiàng),由基本殼體11具有的控制功能控制。例如,可以將最多4個(gè)增設(shè)殼體12連接到基本殼體11。
在基本殼體11分別可拆卸地設(shè)置有多個(gè)控制組件13、多個(gè)電源單元14、多個(gè)電池單元15和多個(gè)盤驅(qū)動(dòng)器80。在增設(shè)殼體12可拆卸地設(shè)置有多個(gè)盤驅(qū)動(dòng)器80、多個(gè)電源單元14和多個(gè)電池單元15。另外,在基本殼體11和各增設(shè)殼體12分別設(shè)置有多個(gè)冷卻風(fēng)扇16。
控制組件13是用于分別實(shí)現(xiàn)后述的通道適配器20、盤適配器30以及高速緩存40等的模塊。即,在基本殼體11分別可拆卸地設(shè)置有多個(gè)通道適配器組件、多個(gè)盤適配器組件和1個(gè)或1個(gè)以上的存儲(chǔ)器組件,能以組件單位進(jìn)行交換。
圖2是概要表示包含存儲(chǔ)子系統(tǒng)10的整個(gè)存儲(chǔ)系統(tǒng)的框圖。存儲(chǔ)子系統(tǒng)10經(jīng)通信網(wǎng)CN1可進(jìn)行雙向通信地分別與多個(gè)主機(jī)1A~1C(以下,在不特別進(jìn)行區(qū)別時(shí),稱為“主機(jī)1”)連接。在此,通信網(wǎng)CN1例如是LAN(LocalArea Network)、SAN(Storage Area Network)、因特網(wǎng)或?qū)S镁€路等。在使用LAN時(shí),主機(jī)1和存儲(chǔ)子系統(tǒng)10之間的數(shù)據(jù)轉(zhuǎn)發(fā)按照TCP/IP(TransmissionControl Protocol/Internet Protocol)協(xié)議進(jìn)行。在使用SAN時(shí),主機(jī)1和存儲(chǔ)子系統(tǒng)10之間按照光纖通道協(xié)議進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。另外,在主機(jī)1是大型計(jì)算機(jī)時(shí),例如按照FICON(Fiber Connection注冊(cè)商標(biāo))、ESCON(EnterpriseSystem Connection注冊(cè)商標(biāo))、ACONARC(Advanced ConnectionArchitecture注冊(cè)商標(biāo))、FIBARC(Fiber Connection Architecture注冊(cè)商標(biāo))等通信協(xié)議進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。
各主機(jī)1例如以服務(wù)器、個(gè)人計(jì)算機(jī)、工作站、大型計(jì)算機(jī)等來(lái)實(shí)現(xiàn)。例如,各主機(jī)1與位于圖外的多個(gè)客戶機(jī)終端經(jīng)其他通信網(wǎng)連接。各主機(jī)1通過(guò)例如根據(jù)來(lái)自各客戶機(jī)終端的請(qǐng)求來(lái)對(duì)存儲(chǔ)子系統(tǒng)10進(jìn)行數(shù)據(jù)讀寫,向各客戶機(jī)終端提供服務(wù)。圖中,只示出了1個(gè),但在存儲(chǔ)子系統(tǒng)10內(nèi)可以設(shè)定多個(gè)虛擬殼體(SLPRStorage Logical Partition)。
SLPR是通過(guò)將存儲(chǔ)子系統(tǒng)10內(nèi)的各種物理資源和邏輯資源按各用戶(或按各應(yīng)用程序)進(jìn)行分割并分配而構(gòu)成的區(qū)域。即,例如在SLPR具有各專用的通道適配器20、各專用的高速緩存區(qū)域40、各專用的虛擬邏輯設(shè)備(VDEV)70等。即,SLPR如虛擬的小型存儲(chǔ)子系統(tǒng)那樣工作。
在SLPR可以設(shè)置至少1個(gè)以上的高速緩存分區(qū)(CLPRCache LogicalPartition)。圖2中,在左側(cè)只示出1個(gè)SLPR,但可以設(shè)置多個(gè)SLPR。另外,在1個(gè)SLPR內(nèi)可以設(shè)定1個(gè)或多個(gè)CLPR。
CLPR是將高速緩存40邏輯分割成多個(gè)區(qū)域。CLPR可以對(duì)各通道適配器20分別設(shè)定。例如在安裝n個(gè)通道適配器20時(shí),可以設(shè)定n個(gè)CLPR。例如,可以設(shè)定為n=32,但本發(fā)明不限于此。各CLPR0~CLPRn是分別獨(dú)立使用的,各主機(jī)1可以獨(dú)占地僅使用其可利用的CLPR。于是,構(gòu)成為從對(duì)某個(gè)CLPR的主機(jī)1來(lái)的操作盡量不影響其他CLPR。即,構(gòu)成為即使在來(lái)自主機(jī)1的訪問(wèn)集中的情況下,也只用該主機(jī)1可利用的CLPR確保必要的高速緩存容量,不會(huì)搶奪其他CLPR的資源(高速緩存區(qū)域)。
另外,圖中右側(cè)所示的CLPR0是沒有定義SLPR的公共區(qū)域,在該公共區(qū)域CLPR0存儲(chǔ)有整個(gè)存儲(chǔ)子系統(tǒng)10使用的各種信息。另外,如后所述,在初始狀態(tài),高速緩存40的整個(gè)區(qū)域分配給公共區(qū)域CLPR0。然后,通過(guò)從公共區(qū)域CLPR0截取規(guī)定量的高速緩存區(qū)域,設(shè)定新的CLPR。
圖2所示的例子中,主機(jī)1A只可以訪問(wèn)公共區(qū)域CLPR0并進(jìn)行數(shù)據(jù)的輸入輸出。主機(jī)1B只可以訪問(wèn)公共區(qū)域CLPR1,主機(jī)1C只可以訪問(wèn)公共區(qū)域CLPR2,主機(jī)1N只可以訪問(wèn)公共區(qū)域CLPRn,不能利用或參考其他CLPR。
SVP(Service Processor)90是用于管理和監(jiān)視存儲(chǔ)子系統(tǒng)10的計(jì)算機(jī)裝置,提供管理用的服務(wù)器功能。SVP90例如經(jīng)存儲(chǔ)子系統(tǒng)10內(nèi)設(shè)置的LAN等內(nèi)部網(wǎng)CN3(參考圖3),從各通道適配器20和各盤適配器30等收集各種環(huán)境信息和性能信息等。作為SVP90收集的信息例如可以舉出裝置結(jié)構(gòu)、電源告警、溫度告警、輸入輸出速度(IOPS)等。SVP90和各管理終端2A~2N、3例如經(jīng)LAN等的通信網(wǎng)CN2連接。管理者通過(guò)經(jīng)管理終端登錄SVP90,在權(quán)限范圍內(nèi)可以進(jìn)行例如RAID結(jié)構(gòu)的設(shè)定、各種組件(通道適配器組件、盤適配器組件、存儲(chǔ)器組件、盤驅(qū)動(dòng)器等)的停止運(yùn)轉(zhuǎn)處理和各種設(shè)定變更等。
SVP90可以連接多個(gè)管理終端2A~2N、3。在此,管理終端2A~2N是按各SLPR設(shè)置的終端,管理終端3是為了管理整個(gè)存儲(chǔ)子系統(tǒng)10而設(shè)置的終端。在以下說(shuō)明中以對(duì)1個(gè)SLPR設(shè)置1個(gè)CLPR的情況為例進(jìn)行說(shuō)明。因此,管理終端2A~2N是由分別管理各CLPR的管理者(以下,稱為分割管理者)分別操作的子終端。管理終端3是由管理整個(gè)存儲(chǔ)子系統(tǒng)10的系統(tǒng)管理者(或還可以稱為全體管理者)操作的全體終端。
各子終端2A~2N的分割管理者只可以對(duì)自己有管理權(quán)限的CLPR進(jìn)行各種設(shè)定變更等,不允許參照或變更其他CLPR的結(jié)構(gòu)等。與此不同,系統(tǒng)管理者可以對(duì)包含各CLPR的整個(gè)存儲(chǔ)子系統(tǒng)10進(jìn)行各種設(shè)定變更等。
系統(tǒng)管理者通過(guò)經(jīng)全體終端3登錄SVP90,適當(dāng)分割存儲(chǔ)子系統(tǒng)10具有的物理資源和邏輯資源,可以對(duì)各用戶設(shè)定SLPR(CLPR)。另外,系統(tǒng)管理者還可以對(duì)各分割管理者發(fā)行用戶ID等。分割管理者采用系統(tǒng)管理者發(fā)行的專用的用戶ID可以登錄SVP90。分割管理者通過(guò)操作子終端2,可以變更自己管理下的CLPR內(nèi)的設(shè)定。
圖3是著眼于存儲(chǔ)子系統(tǒng)10的邏輯結(jié)構(gòu)的框圖。存儲(chǔ)子系統(tǒng)10具有多個(gè)通道適配器(以下,CHA)20、多個(gè)盤適配器(以下,DKA)30、至少1個(gè)以上的高速緩存40、公共存儲(chǔ)器50、開關(guān)單元60、多個(gè)虛擬邏輯設(shè)備(VDEV)70、多個(gè)盤驅(qū)動(dòng)器80、SVP90。
各CHA20控制與各主機(jī)1間的數(shù)據(jù)轉(zhuǎn)發(fā),具有通信端口21。在存儲(chǔ)子系統(tǒng)10可以設(shè)置例如32個(gè)CHA20。CHA20如例如開放系統(tǒng)用CHA、大型計(jì)算機(jī)系統(tǒng)用CHA等,根據(jù)主機(jī)1的種類來(lái)準(zhǔn)備。
各CHA20從分別連接的主機(jī)1接收請(qǐng)求讀寫數(shù)據(jù)的命令和數(shù)據(jù),按照從主機(jī)1接收到的命令工作。如果還包含DKA30的動(dòng)作首先進(jìn)行說(shuō)明,則例如CHA20一從主機(jī)1接收數(shù)據(jù)的讀出請(qǐng)求,就將讀出命令存儲(chǔ)到公共存儲(chǔ)器50。DKA30隨時(shí)參照公共存儲(chǔ)器50,若發(fā)現(xiàn)未處理的讀出命令,則從盤驅(qū)動(dòng)器80讀出數(shù)據(jù),并存儲(chǔ)到高速緩存40。CHA20將移到高速緩存40的數(shù)據(jù)讀出,發(fā)送給命令發(fā)行源的主機(jī)1。
CHA20一從主機(jī)1接收數(shù)據(jù)的寫入請(qǐng)求,就將寫入命令存儲(chǔ)到公共存儲(chǔ)器50。另外,CHA20將接收到的數(shù)據(jù)(用戶數(shù)據(jù))存儲(chǔ)到高速緩存40。在此,由于被主機(jī)1請(qǐng)求寫入的數(shù)據(jù)沒有寫入盤驅(qū)動(dòng)80(非正常數(shù)據(jù)),所以例如分別存儲(chǔ)到多處而多重化。
CHA20在高速緩存40存儲(chǔ)了數(shù)據(jù)之后,向主機(jī)1報(bào)告寫入結(jié)束。接著,DKA30按照存儲(chǔ)在公共存儲(chǔ)器50中的寫入命令,讀出高速緩存40中存儲(chǔ)的數(shù)據(jù),并存儲(chǔ)到規(guī)定的盤驅(qū)動(dòng)器80。寫入盤驅(qū)動(dòng)器80的數(shù)據(jù)的屬性從“非正常數(shù)據(jù)”變化為“正常數(shù)據(jù)”,從高速緩存40的多重管理釋放。另外,本說(shuō)明書中,“非正常數(shù)據(jù)”意味著沒有寫入盤驅(qū)動(dòng)器80的狀態(tài)的數(shù)據(jù)。另外,“正常數(shù)據(jù)”意味著已寫入盤驅(qū)動(dòng)器80的數(shù)據(jù)。
各DKA30在存儲(chǔ)子系統(tǒng)10內(nèi)可以設(shè)置多個(gè),例如4個(gè)或8個(gè)。各DKA30控制與各盤驅(qū)動(dòng)器80之間的數(shù)據(jù)通信。各DKA30和各盤驅(qū)動(dòng)器80例如經(jīng)SAN等通信網(wǎng)CN4連接,按照光纖通道協(xié)議以塊單位進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。各DKA30隨時(shí)監(jiān)視盤驅(qū)動(dòng)器80的狀態(tài),該監(jiān)視結(jié)果經(jīng)內(nèi)部網(wǎng)CN3發(fā)送給SVP90。各CHA20和各DKA30分別具有例如安裝有處理器和存儲(chǔ)器等的印刷電路板、和存儲(chǔ)到存儲(chǔ)器的控制程序(都沒有圖示),利用這些硬件和軟件的協(xié)作工作,分別實(shí)現(xiàn)規(guī)定功能。
高速緩存40例如存儲(chǔ)用戶數(shù)據(jù)等。高速緩存40例如由非易失性存儲(chǔ)器構(gòu)成。高速緩存40可以由多個(gè)存儲(chǔ)器構(gòu)成,可以多重管理非正常數(shù)據(jù)。本實(shí)施例中,通過(guò)將高速緩存40具有的整個(gè)高速緩存區(qū)域分割為多個(gè),設(shè)定各CLPR0~n。
公共存儲(chǔ)器(或控制存儲(chǔ)器)50例如由非易失性存儲(chǔ)器構(gòu)成。在公共存儲(chǔ)器50例如存儲(chǔ)有控制信息和管理信息等。這些控制信息等信息可以由多個(gè)公共存儲(chǔ)器50多重管理。公共存儲(chǔ)器50和高速緩存40可以分別設(shè)置多個(gè)。另外,還可以在同一存儲(chǔ)器基板混合安裝高速緩存40和公共存儲(chǔ)器50?;蛘撸鳛楦咚倬彺鎱^(qū)域使用部分存儲(chǔ)器,作為控制區(qū)域使用其他部分。
開關(guān)單元60分別連接各CHA20、各DKA30、高速緩存40、公共存儲(chǔ)器50。由此,所有CHA20、DKA30可以分別訪問(wèn)高速緩存40和公共存儲(chǔ)器50。開關(guān)單元60例如可以構(gòu)成為超高速縱橫開關(guān)等。
存儲(chǔ)子系統(tǒng)10可以安裝多個(gè)盤驅(qū)動(dòng)器80。各盤驅(qū)動(dòng)器80例如可以用硬盤驅(qū)動(dòng)器(HDD)或半導(dǎo)體存儲(chǔ)器裝置等來(lái)實(shí)現(xiàn)。盤驅(qū)動(dòng)器80是物理存儲(chǔ)設(shè)備(PDEV)。另外,根據(jù)RAID結(jié)構(gòu)等也不同,例如在4個(gè)1組的盤驅(qū)動(dòng)器80提供的物理存儲(chǔ)區(qū)域上構(gòu)筑虛擬的邏輯設(shè)備(VDEV)70。另外,在VDEV70上還可以設(shè)定虛擬邏輯設(shè)備。另外,由存儲(chǔ)子系統(tǒng)10使用的存儲(chǔ)資源不需要都設(shè)置在存儲(chǔ)子系統(tǒng)10內(nèi),還可以利用在存儲(chǔ)子系統(tǒng)10的外部存在的存儲(chǔ)資源。例如,通過(guò)將外部的其他公司制造的存儲(chǔ)子系統(tǒng)10具有的存儲(chǔ)設(shè)備分配給特定VDEV70,管理對(duì)其他公司制造的存儲(chǔ)設(shè)備的訪問(wèn)通路等,可以將其他公司的存儲(chǔ)設(shè)備像自己的存儲(chǔ)設(shè)備那樣使用。
圖4是模式表示各CLPR分割并利用資源的情況的說(shuō)明圖。圖中示出利用公共區(qū)域CLPR0和2個(gè)專用CLPR1、2,分割并使用高速緩存40的情況。在各CLPR分別分配有高速緩存區(qū)域。各CLPR分別可使用的高速緩存區(qū)域的最大值(最大分配量)由系統(tǒng)管理者設(shè)定。在分別分配給各CLPR的高速緩存區(qū)域存儲(chǔ)有由利用各CLPR的主機(jī)1使用的數(shù)據(jù)(寫數(shù)據(jù)、讀數(shù)據(jù))。圖4中,對(duì)存儲(chǔ)有數(shù)據(jù)的區(qū)域標(biāo)上斜線,記為“使用中”。各CLPR可以最多使用分別可用的最大分配量的高速緩存區(qū)域,不能使用其他CLPR的高速緩存區(qū)域。
另外,各CLPR不僅管理各高速緩存區(qū)域,還管理其他高速緩存相關(guān)數(shù)據(jù)。作為高速緩存相關(guān)數(shù)據(jù)例如可以舉出DCR(F1)、側(cè)文件F2、和PCR(F3)。
DCR(Dynamic Cache Residency)100是高速緩存固定化功能,是將VDEV70的特定區(qū)域存在的數(shù)據(jù)固定到高速緩存區(qū)域。由此,可以提高對(duì)重要的數(shù)據(jù)組的訪問(wèn)性能。
側(cè)文件F2是存儲(chǔ)用于將數(shù)據(jù)向圖外的遠(yuǎn)程地點(diǎn)轉(zhuǎn)發(fā)并復(fù)制的數(shù)據(jù)的文件。例如,在側(cè)文件F2存儲(chǔ)有規(guī)定量以上的遠(yuǎn)程復(fù)制對(duì)象的數(shù)據(jù)時(shí),經(jīng)通信網(wǎng),向在距離上分離的場(chǎng)所的其他存儲(chǔ)子系統(tǒng)轉(zhuǎn)發(fā)數(shù)據(jù)并保持。遠(yuǎn)程復(fù)制的初始復(fù)制中,將指定的數(shù)據(jù)組全部復(fù)制到遠(yuǎn)程地點(diǎn),之后更新的數(shù)據(jù)作為差分文件進(jìn)行遠(yuǎn)程復(fù)制。
PCR(Partical Cache Residence)102是在存儲(chǔ)子系統(tǒng)10設(shè)置NAS(NetworkAttached Storage)功能時(shí)使用的,是按數(shù)據(jù)種類固定到高速緩存區(qū)域的功能。DCR(F1)是固定特定存儲(chǔ)空間中存在的數(shù)據(jù)的,PCR(F3)是固定特定種類的數(shù)據(jù)的。另外,這些高速緩存相關(guān)數(shù)據(jù)DCR(F1)、側(cè)文件F2以及PCR(F3)分別只設(shè)置在需要它的CLPR。即,在沒有設(shè)定固定化功能的CLPR沒有存儲(chǔ)有關(guān)高速緩存固定化的數(shù)據(jù)。同樣,在沒有設(shè)定遠(yuǎn)程復(fù)制的CLPR沒有存儲(chǔ)側(cè)文件F2。
另外,如圖4所示,在各CLPR分別分配有至少1個(gè)以上的VDEV70。寫入各CLPR的高速緩存區(qū)域的數(shù)據(jù)寫入到分別分配的VDEV70的規(guī)定區(qū)域。另外,從VDEV70讀出的數(shù)據(jù)保持在對(duì)應(yīng)的CLPR的高速緩存區(qū)域。
圖5是表示用于管理存儲(chǔ)在高速緩存區(qū)域的數(shù)據(jù)的方法的說(shuō)明圖。在存儲(chǔ)子系統(tǒng)10,為了有效檢索高速緩存40中存儲(chǔ)的數(shù)據(jù),以如下的層次結(jié)構(gòu)進(jìn)行管理。
首先,一有來(lái)自主機(jī)1的數(shù)據(jù)輸入輸出請(qǐng)求,就基于該輸入輸出請(qǐng)求中包含的LBA(Logical Block Address)求出VDEVSLOT號(hào)(VDEVSLOT#)。接著,基于VDEVSLOT號(hào),通過(guò)參照VDSLOT-PAGE表T1,取得對(duì)下一層次的指針。在VDSLOT-PAGE表T1包含有對(duì)PAGE-DIR表T2的指針。在PAGE-DIR表T2包含對(duì)PAGE-GRPP表T3的指針。另外,在PAGE-GRPP表T3包含對(duì)GRPT1表T4的指針。在GRPT1表T4包含對(duì)GRPT2表T5的指針。在GRPT2表T5包含對(duì)SLCB(槽位控制表)T6的指針。
像這樣,基于LBA,通過(guò)依序參照各表T1~T5,到達(dá)SLCB表T6。在SLCB表T6關(guān)聯(lián)有至少1個(gè)以上的SGCB(段控制塊)表T7。SGCB表7存儲(chǔ)與作為高速緩存管理的最小單位的段有關(guān)的控制信息。在1個(gè)槽位可以相關(guān)聯(lián)1~4個(gè)段。在1個(gè)段例如可以存儲(chǔ)48KB或64KB的數(shù)據(jù)。
高速緩存管理的最小單位是段,但非正常數(shù)據(jù)(寫入物理盤之前的狀態(tài))和正常數(shù)據(jù)(寫入物理盤之后的狀態(tài))的各狀態(tài)之間的轉(zhuǎn)移是以槽位單位進(jìn)行的。另外,高速緩存區(qū)域的確保(保留)和釋放(解放)也是以槽位單位或段單位進(jìn)行的。
如圖8所示,在SLCB表T6可以包含后方指針、前方指針、隊(duì)列狀態(tài)、VDSLOT#、槽位狀態(tài)、CLPR信息、至少1個(gè)以上的SGCB指針。隊(duì)列狀態(tài)包含與該SLCB表T6相關(guān)的隊(duì)列種類和隊(duì)列號(hào)。槽位狀態(tài)包含與該SLCB表T6對(duì)應(yīng)的槽位狀態(tài)。CLPR信息包含與該SLCB表T6所屬的CLPR相關(guān)的信息(CLPR號(hào)等)。SGCN指針包含用于指定與該SLCB表T6相關(guān)的SGCB表T7的指針。
另外,SLCB表T6和SGCB表T7例如為了避免發(fā)生指針變更等的競(jìng)爭(zhēng)而失去匹配性,以VDEV70單位進(jìn)行排斥控制。即,對(duì)于SLCB表T6或SGCB表T7所屬的VDEV70,僅在取得了鎖定的情況下,可以操作SLCB表T6或SGCB表T7。本說(shuō)明書中,將該VDEV單位的排斥控制稱為“VDEV鎖定”。VDEV鎖定還可以稱為邏輯卷單位的排斥控制。
圖6是表示SLCB表T6的狀態(tài)轉(zhuǎn)移的說(shuō)明圖。SLCB表T6例如可以取未使用狀態(tài)ST1、設(shè)備反映完?duì)顟B(tài)ST2、奇偶性無(wú)&設(shè)備反映前狀態(tài)ST3、奇偶性生成中狀態(tài)ST4以及奇偶性有&驅(qū)動(dòng)器反映前狀態(tài)ST5的5個(gè)狀態(tài)。
未使用狀態(tài)ST1是表示該槽位為未使用的狀態(tài)。處于未使用狀態(tài)的槽位(SLCB)由空閑SGCB隊(duì)列(以下,簡(jiǎn)記為空閑隊(duì)列)管理。設(shè)備反映完?duì)顟B(tài)ST2是表示該槽位中存儲(chǔ)的數(shù)據(jù)已經(jīng)寫入到物理設(shè)備(盤驅(qū)動(dòng)器80)的狀態(tài)。處于設(shè)備反映完?duì)顟B(tài)ST2的槽位由正常隊(duì)列管理。
奇偶性無(wú)&設(shè)備反映前狀態(tài)ST3是表示例如如RAID5等那樣需要奇偶性數(shù)據(jù)時(shí),對(duì)該槽位中存儲(chǔ)的數(shù)據(jù)還沒有生成奇偶性數(shù)據(jù)的狀態(tài)。處于奇偶性無(wú)&設(shè)備反映前狀態(tài)ST3的槽位由中間非正常隊(duì)列管理。奇偶性生成中狀態(tài)ST4是表示對(duì)該槽位中存儲(chǔ)的數(shù)據(jù)正在生成奇偶性數(shù)據(jù)。處于奇偶性生成中狀態(tài)ST4的槽位由主非正常隊(duì)列管理。
奇偶性有&驅(qū)動(dòng)器反映前狀態(tài)ST5是表示對(duì)于存儲(chǔ)在該槽位的數(shù)據(jù)生成奇偶性數(shù)據(jù),但還沒有寫入物理設(shè)備的狀態(tài)。處于奇偶性有&驅(qū)動(dòng)器反映前狀態(tài)ST5的槽位由物理非正常隊(duì)列(以下,簡(jiǎn)記為非正常隊(duì)列)管理。
在有來(lái)自主機(jī)1的寫訪問(wèn)時(shí),狀態(tài)從ST1經(jīng)ST2轉(zhuǎn)移到ST3,開始生成奇偶性數(shù)據(jù)。接著,若對(duì)請(qǐng)求寫入的數(shù)據(jù)生成奇偶性數(shù)據(jù),則狀態(tài)從ST3經(jīng)ST4變換為ST5。在從主機(jī)1向CLPR的高速緩存區(qū)域的1個(gè)或多個(gè)槽位寫入了數(shù)據(jù)的時(shí)刻,向主機(jī)1發(fā)送寫入結(jié)束報(bào)告。在該時(shí)刻,由于請(qǐng)求了寫入的數(shù)據(jù)僅在高速緩存區(qū)域上存在,所以成為非正常狀態(tài)(ST5)。
接著,若處于非正常狀態(tài)的槽位的數(shù)據(jù)寫入規(guī)定的物理設(shè)備(去標(biāo)記),則該槽位從非正常狀態(tài)變化為正常狀態(tài)(ST5→ST2)。由于處于正常狀態(tài)的數(shù)據(jù)寫入物理設(shè)備,所以也可以根據(jù)需要從高速緩存區(qū)域刪除。若從高速緩存上刪除處于正常狀態(tài)的槽位中存儲(chǔ)的數(shù)據(jù),則該槽位從正常狀態(tài)返回到未使用狀態(tài)(ST2→ST1)。
在有來(lái)自主機(jī)1的讀訪問(wèn)時(shí),通過(guò)依次執(zhí)行與圖5一起所述的各層次表T1~T6,指定請(qǐng)求的數(shù)據(jù)。接著,將主機(jī)1請(qǐng)求的數(shù)據(jù)從物理設(shè)備讀出,存儲(chǔ)到高速緩存區(qū)域的1個(gè)或多個(gè)槽位。存儲(chǔ)從物理設(shè)備讀出的數(shù)據(jù)的槽位具有正常狀態(tài)。
圖7是表示隊(duì)列結(jié)構(gòu)的說(shuō)明圖。隊(duì)列100構(gòu)成為在單方向或雙向連接處于同一狀態(tài)的SLCB表T6的等待行列。若SLCB表T6的狀態(tài)變化,則基于例如如FIFO(First-In First-out先入先出)和LRU(Least Recently Used最長(zhǎng)未使用時(shí)間)等的預(yù)先設(shè)定的算法,變化隊(duì)列100的結(jié)構(gòu)。
為了防止對(duì)SLCB表T6的操作相競(jìng)爭(zhēng)而失去匹配性,對(duì)各隊(duì)列100進(jìn)行排斥控制。即,只有在取得了操作對(duì)象的隊(duì)列鎖定的情況下,可以對(duì)該隊(duì)列進(jìn)行操作。本說(shuō)明書中,將該隊(duì)列單位的排斥控制稱為“隊(duì)列鎖定”。從而,在上述的VDEV鎖定和隊(duì)列鎖定的2層次的排斥控制下,可以操作SLCB表T6。即,只有在取得了2個(gè)鎖定,即要操作的SLCB表T6所屬的VDEV70鎖定和該SLCB表T6連接的隊(duì)列鎖定的情況下,可以變更該SLCB表T6的內(nèi)容。
像這樣,由于排斥控制對(duì)隊(duì)列100的操作,所以考慮取得鎖定時(shí)的總開銷,設(shè)置多個(gè)同一種類的隊(duì)列。正常隊(duì)列、非正常隊(duì)列、空閑隊(duì)列等分別由多個(gè)隊(duì)列構(gòu)成。
在構(gòu)成隊(duì)列集的各隊(duì)列分別關(guān)聯(lián)有計(jì)數(shù)器200。計(jì)數(shù)器200管理屬于該隊(duì)列的SLCB表T6和SGCB表T7的個(gè)數(shù)?;谟?jì)數(shù)器200管理的SLCB數(shù)等,可以進(jìn)行后述的過(guò)負(fù)荷控制等。
另外,在構(gòu)成隊(duì)列集的各隊(duì)列100還關(guān)聯(lián)有隊(duì)列管理表300。隊(duì)列管理表300管理隊(duì)列100的結(jié)構(gòu)等。隊(duì)列100、計(jì)數(shù)器200以及隊(duì)列管理表300分別存儲(chǔ)在公共存儲(chǔ)器50。
圖9是模式表示各CLPR的高速緩存區(qū)域的使用狀態(tài)和各隊(duì)列的關(guān)系的說(shuō)明圖。各CLPR的高速緩存區(qū)域可以根據(jù)其使用狀態(tài)分為“使用中區(qū)域”和“未使用區(qū)域”。使用中區(qū)域是表示存儲(chǔ)有數(shù)據(jù)的槽位群(段群)。未使用區(qū)域表示空的槽位群(段群)。
將使用的段的總數(shù)與1個(gè)段的數(shù)據(jù)大小相乘的結(jié)果成為該CLPR的使用中區(qū)域的大小。在正在使用的段中包含有處于正常狀態(tài)的段和處于非正常狀態(tài)的段。從而,分配給該CLPR的高速緩存區(qū)域中的當(dāng)前正在使用的區(qū)域的大小可以用(正常狀態(tài)的段數(shù)+非正常狀態(tài)的段數(shù))表示。未使用區(qū)域的大小可以用處于空閑狀態(tài)的段數(shù)表示。
空閑隊(duì)列101管理處于空閑狀態(tài)(未使用狀態(tài))的SLCB表T6。連接到空閑隊(duì)列101的SLCB表T6(以及SGCB表T7)的個(gè)數(shù)由與空閑隊(duì)列101相關(guān)聯(lián)的空閑計(jì)數(shù)器201掌握??臻e隊(duì)列101的控制單位是VDEV,隊(duì)列鎖定的單位也是VDEV單位。另外,例如按照FIFO使用空閑隊(duì)列101。例如設(shè)置VDEV70的安裝個(gè)數(shù)的2倍的空閑隊(duì)列101。從而,若可安裝的VDEV70的最大數(shù)為512,則空閑隊(duì)列101的總數(shù)成為1024。
正常隊(duì)列102管理處于正常狀態(tài)的SLCB表T6。連接到正常隊(duì)列102的SLCB表T6(以及SGCB表T7)的個(gè)數(shù)由與正常隊(duì)列102相關(guān)聯(lián)的正常計(jì)數(shù)器202掌握。正常隊(duì)列102的控制單位為VDEV,隊(duì)列鎖定的單位也是VDEV單位。例如按照LRU使用正常隊(duì)列102。例如設(shè)置VDEV70的安裝數(shù)的4倍的凈化隊(duì)列102(512×4=2048)。
非正常隊(duì)列103管理處于非正常狀態(tài)的SLCB表T6。連接到非正常隊(duì)列103的SLCB表T6(以及SGCB表T7)的個(gè)數(shù)由與非正常隊(duì)列103相關(guān)聯(lián)的非正常計(jì)數(shù)器203掌握。非正常隊(duì)列103的控制單位為物理驅(qū)動(dòng)器。例如設(shè)置盤驅(qū)動(dòng)器80的安裝數(shù)的32倍的非正常隊(duì)列103。在安裝2048個(gè)盤驅(qū)動(dòng)器80時(shí),可以設(shè)置65536個(gè)非正常隊(duì)列103。非正常隊(duì)列103用于管理寫入物理設(shè)備之前的數(shù)據(jù)(段)。從而,物理設(shè)備(盤驅(qū)動(dòng)器80)比邏輯設(shè)備(VDEV70)關(guān)聯(lián)更深。因此,非正常隊(duì)列103依賴于物理設(shè)備的個(gè)數(shù)設(shè)定。
使用中計(jì)數(shù)器206計(jì)數(shù)各CLPR的使用中的段數(shù)(非正常狀態(tài)的段數(shù)+正常狀態(tài)的段數(shù))。
圖10是表示各CLPR、各隊(duì)列以及計(jì)數(shù)器等的關(guān)系的說(shuō)明圖。上述的各隊(duì)列、計(jì)數(shù)器以及管理表構(gòu)成用于管理高速緩存管理單位(段或槽位)的管理信息。本實(shí)施例中,根據(jù)段或槽位的性質(zhì)(狀態(tài)),區(qū)別為在各CLPR分別設(shè)置的管理信息(分割管理信息)和適用于所有CLPR的公共管理信息。
如圖10所示,在各CLPR分別設(shè)置有正常隊(duì)列102、正常計(jì)數(shù)器(正確是正常隊(duì)列計(jì)數(shù)器)202、空閑隊(duì)列計(jì)數(shù)器201、分類隊(duì)列計(jì)數(shù)器204、使用中計(jì)數(shù)器206、BIND隊(duì)列計(jì)數(shù)器205。另外,省略圖示,但在各CLPR還分別設(shè)置用于管理正常隊(duì)列102的結(jié)構(gòu)的正常隊(duì)列管理表。如上所述,在各CLPR分別設(shè)置的管理用的信息構(gòu)成分割管理信息。
與此不同,空閑隊(duì)列101、非正常隊(duì)列103、非正常計(jì)數(shù)器(正確是非正常隊(duì)列計(jì)數(shù)器)203、分類隊(duì)列104、BIND隊(duì)列105、用于管理這些各隊(duì)列101、103~105的隊(duì)列管理表301構(gòu)成公共適用于所有CLPR的公共管理信息。
分類隊(duì)列104是用于管理根據(jù)PCR功能固定到高速緩存區(qū)域的數(shù)據(jù)的隊(duì)列。分類隊(duì)列計(jì)數(shù)器204計(jì)數(shù)由PCR固定的段數(shù)。
BIND隊(duì)列105是用于管理根據(jù)DCR功能固定到高速緩存區(qū)域的數(shù)據(jù)的隊(duì)列。BIND隊(duì)列計(jì)數(shù)器205計(jì)數(shù)由DCR固定的段數(shù)(或槽位數(shù))。
通過(guò)分別設(shè)置用于管理存儲(chǔ)固定的數(shù)據(jù)段的分類隊(duì)列104以及BIND隊(duì)列105,在各CLPR內(nèi),可以防止存儲(chǔ)應(yīng)固定的數(shù)據(jù)的段變更為空閑狀態(tài)。
下面,說(shuō)明構(gòu)成管理信息的各子管理信息(隊(duì)列、計(jì)數(shù)器、隊(duì)列管理表)中,將哪些按各CLPR分別設(shè)置,將哪些適用于所有CLPR的理由。
正常隊(duì)列102、正常計(jì)數(shù)器202以及正常隊(duì)列管理表分別按各CLPR設(shè)置。若空閑狀態(tài)的段耗盡,則正常狀態(tài)的槽位被釋放并變成空閑槽位。從而,正常隊(duì)列102是使用頻率最高的隊(duì)列。假使,在所有CLPR使用1組正常隊(duì)列的場(chǎng)合,若在某個(gè)CLPR產(chǎn)生空閑段耗盡,則在其他CLPR中會(huì)有存儲(chǔ)被利用的數(shù)據(jù)的正常狀態(tài)的槽位被釋放的可能性。即,一方的CLPR中的高速緩存利用狀態(tài)影響另一方的CLPR中的高速緩存利用狀態(tài)。因此,本實(shí)施例中,可以對(duì)各CLPR分別設(shè)置正常隊(duì)列102、正常計(jì)數(shù)器202。另外,隊(duì)列管理表與隊(duì)列一體采用。從而,在各CLPR分別設(shè)置正常隊(duì)列102時(shí),正常隊(duì)列管理表也分別設(shè)置在各CLPR。
使用中計(jì)數(shù)器206在各CLPR分別設(shè)置。使用中計(jì)數(shù)器206計(jì)數(shù)相加了正常狀態(tài)的段數(shù)和非正常狀態(tài)的段數(shù)的值。從而,從使用中計(jì)數(shù)器206的計(jì)數(shù)值減去正常計(jì)數(shù)器202的計(jì)數(shù)值而所得的值成為該CLPR中的非正常狀態(tài)的段數(shù)。從而,若在各CLPR分別設(shè)置正常計(jì)數(shù)器202和使用中計(jì)數(shù)器206,則不需要在各CLPR分別設(shè)置非正常計(jì)數(shù)器203。
非正常隊(duì)列103是與物理設(shè)備相關(guān)聯(lián)的隊(duì)列,控制單位也成為物理設(shè)備單位。從而,假使,在各CLPR分別設(shè)置非正常隊(duì)列103的場(chǎng)合,用于存儲(chǔ)非正常隊(duì)列管理表的存儲(chǔ)容量增大,壓迫公共存儲(chǔ)器50的存儲(chǔ)區(qū)域。例如,1個(gè)隊(duì)列所需的信息量是隊(duì)列管理表為16字節(jié),計(jì)數(shù)器為4字節(jié)。由于隊(duì)列分割意味著隊(duì)列管理表的分割,所以公共存儲(chǔ)器50的多個(gè)存儲(chǔ)區(qū)域耗費(fèi)于存儲(chǔ)分割管理信息。因此,本實(shí)施例中,為了有效使用公共存儲(chǔ)器50的存儲(chǔ)資源,非正常隊(duì)列103和非正常計(jì)數(shù)器203不設(shè)置在各CLPR,而適用于所有CLPR。
另外,從有效利用公共存儲(chǔ)器50的存儲(chǔ)資源的觀點(diǎn),空閑隊(duì)列101也不是分別設(shè)置在各CLPR,在各CLPR只設(shè)置字節(jié)數(shù)少的空閑計(jì)數(shù)器201。
由于與空閑隊(duì)列101相同的理由,分類隊(duì)列104、BIND隊(duì)列105也是在各CLPR分別只設(shè)置各計(jì)數(shù)器204和205,隊(duì)列自身適用于所有CLPR。
像這樣,本實(shí)施例中,根據(jù)子管理信息的屬性,即,根據(jù)由子管理信息管理的高速緩存管理單位的屬性,分配子管理信息。從而,有效利用公共存儲(chǔ)器50的存儲(chǔ)資源,可以確保各CLPR間的獨(dú)立性。
圖11是表示高速緩存管理結(jié)構(gòu)和排斥控制的關(guān)系的說(shuō)明圖。圖11中只示出與圖10一起敘述的管理信息的一部分。圖11中的“VDEV鎖定Gr”表示VDEV鎖定的組。為了操作目錄,需要取得VDEV鎖定,為了操作隊(duì)列,需要操作隊(duì)列鎖定。即,為了移動(dòng)CLPR管理的數(shù)據(jù),需要對(duì)管理存儲(chǔ)該數(shù)據(jù)的段的隊(duì)列的操作權(quán)限、和對(duì)該段所屬的目錄的操作權(quán)限雙方。
如圖11的右側(cè)所示,在各CLPR可以相關(guān)聯(lián)1個(gè)或多個(gè)VDEV70。還可以將與某個(gè)CLPR相關(guān)聯(lián)的VDEV70關(guān)聯(lián)到另一CLPR。圖12是表示將與CLPR0相關(guān)聯(lián)的VDEV#1關(guān)聯(lián)到CLPR1的情況的說(shuō)明圖。
在變更VDEV70的所屬目的地CLPR時(shí),需要變更VDEV70和CLPR的相關(guān),并且,將所屬于移動(dòng)對(duì)象VDEV70的數(shù)據(jù)群與新的CLPR進(jìn)行相關(guān)聯(lián)。即,將移動(dòng)對(duì)象的段(或槽位)從與移動(dòng)源CLPR相關(guān)聯(lián)的隊(duì)列去除,連接到與移動(dòng)目的地CLPR相關(guān)聯(lián)的隊(duì)列。在該操作時(shí),需要VDEV鎖定和隊(duì)列鎖定的雙方。
圖13是表示變更CLPR的結(jié)構(gòu)時(shí)的處理的一例。在圖13概要示出將與移動(dòng)源CLPR相關(guān)聯(lián)的VDEV70移動(dòng)到移動(dòng)目的地CLPR的情況。
首先,經(jīng)管理終端3,系統(tǒng)管理者請(qǐng)求VDEV70的移動(dòng)時(shí)(S1YES),CHA20或DKA30的代表處理器變更指定為移動(dòng)對(duì)象的VDEV70的固有信息(S2)。即,該VDEV70所屬的CLPR有關(guān)的信息(歸屬目的地CLPR信息)被改寫為有關(guān)移動(dòng)目的地CLPR的信息。
下面,代表處理器檢索并抽出與移動(dòng)對(duì)象的VDEV70對(duì)應(yīng)的SLCB表T6,對(duì)于成為該移動(dòng)對(duì)象的SLCB表T6變更CLPR信息(S3)。即,如與圖8一起所述,對(duì)成為移動(dòng)對(duì)象的各SLCB表T6,將有關(guān)該所屬目的地CLPR的信息變更為有關(guān)移動(dòng)目的地CLPR的信息。
接著,代表處理器檢查移動(dòng)對(duì)象的SLCB表T6的槽位狀態(tài)是否是正常狀態(tài)(S4)。在是正常狀態(tài)的槽位的情況下(S4YES),即移動(dòng)對(duì)象的SLCB表T6連接到正常隊(duì)列102的情況下,代表處理器將該SLCB表T6的隊(duì)列狀態(tài)根據(jù)移動(dòng)目的地CLPR進(jìn)行變更(S5)。即,改寫連接到在移動(dòng)目的地CLPR設(shè)置的第幾個(gè)正常隊(duì)列102等的信息。
代表處理器變更隊(duì)列狀態(tài)之后,將移動(dòng)對(duì)象的SLCB表T6從當(dāng)前的正常隊(duì)列102去除(S6)。接著,代表處理器根據(jù)要移動(dòng)的正常槽位數(shù),分別減去移動(dòng)源CLPR設(shè)置的使用中計(jì)數(shù)器206和正常計(jì)數(shù)器202的計(jì)數(shù)值(S7)。接著,代表處理器將移動(dòng)對(duì)象的SLCB表T6連接到移動(dòng)目的地CLPR的正常隊(duì)列102(S8)。接著,代表處理器分別增加移動(dòng)目的地CLPR的使用中計(jì)數(shù)器206和正常計(jì)數(shù)器202的計(jì)數(shù)值(S9),結(jié)束本處理。
另一方面,在對(duì)應(yīng)于移動(dòng)對(duì)象的VDEV70的SLCB表T6不是正常狀態(tài)的情況下(S4NO),代表處理器檢查該移動(dòng)對(duì)象的SLCB表T6是否是空閑狀態(tài)(S10)。在移動(dòng)對(duì)象的SLCB表T6為空閑狀態(tài)的情況下(S10YES),代表處理器分別變更移動(dòng)源以及移動(dòng)目的地的空閑計(jì)數(shù)器201(S11)。即,根據(jù)要移動(dòng)的空閑槽位數(shù),減去移動(dòng)源的空閑計(jì)數(shù)器201,加上移動(dòng)目的地的空閑計(jì)數(shù)器201,結(jié)束處理。在移動(dòng)對(duì)象的SLCB表T6是非正常狀態(tài)時(shí)(S10NO),不作任何工作而結(jié)束處理。由于非正常隊(duì)列103和非正常計(jì)數(shù)器203公共適用于所有CLPR,所以不需要進(jìn)行隊(duì)列移動(dòng)和計(jì)數(shù)器的增減。
另外,在圖13中省略,但連接到分類隊(duì)列104和BIND隊(duì)列105的SLCB表T6分別進(jìn)行與空閑隊(duì)列101相同的處理。分類隊(duì)列104和BIND隊(duì)列105不是在各CLPR分別分割設(shè)置,而是在各CLPR只設(shè)置其計(jì)數(shù)器204、205。從而,不產(chǎn)生隊(duì)列間的移動(dòng),只發(fā)生移動(dòng)源和移動(dòng)目的地的計(jì)數(shù)器值的變更。
圖14是表示變更CLPR的高速緩存分配量時(shí)的概要處理的流程圖。在由系統(tǒng)管理者進(jìn)行高速緩存分配處理的變更操作時(shí)(S31YES),代表處理器檢測(cè)與高速緩存分配變更相關(guān)的SLCB表T6(S32)。接著,代表處理器將與變更相關(guān)的SLCB表T6的CLPR信息根據(jù)高速緩存分配的變更進(jìn)行變更(S33)。
例如,減少CLPR1的高速緩存分配量,增加相應(yīng)數(shù)量CLPR2的高速緩存分配量時(shí),位于該變動(dòng)區(qū)域的SLCB表T6的歸屬目的地CLPR從CLPR1變更為CLPR2。接著,根據(jù)高速緩存區(qū)域的分配變更,增減正常計(jì)數(shù)器202等的值并結(jié)束處理(S34)。
圖15是概要表示用于確??臻e段的空閑段收集處理的流程圖。在此,空閑段意味著處于空閑狀態(tài)的段。本處理可以定期或在空閑段不足時(shí)(過(guò)負(fù)荷時(shí))進(jìn)行。
首先,檢測(cè)正常狀態(tài)的SLCB表T6中使用頻率最低的狀態(tài)(S4),將檢測(cè)出的SLCB表T6的狀態(tài)從正常狀態(tài)變更為空閑狀態(tài)(S42)。伴隨著該狀態(tài)變更,SLCB表T6從正常隊(duì)列102代替為空閑隊(duì)列101。另外,正常計(jì)數(shù)器202和空閑計(jì)數(shù)器201的計(jì)數(shù)值也分別變更。到確保規(guī)定量的空閑段為止,重復(fù)進(jìn)行S41和S42的處理(S43)。
圖16是表示定義CLPR的情況的模式圖。本實(shí)施例中,作為公共庫(kù)區(qū)域使用CLPR0。在CLPR0中存儲(chǔ)有存儲(chǔ)子系統(tǒng)10內(nèi)公共使用的各種信息。另外,如上所述,各種管理信息存儲(chǔ)在公共存儲(chǔ)器50。
如圖16(a)所示,在將用戶專用的CLPR連1個(gè)也沒有設(shè)定的初始狀態(tài)下,高速緩存40具有的所有高速緩存區(qū)域所屬于CLPR0。如圖16(b)所示,分配給CLPR0的高速緩存區(qū)域可以區(qū)別為存儲(chǔ)公共的各信息等的“使用中區(qū)域”和“未使用區(qū)域”。在新設(shè)定用戶專用的CLPR1時(shí),如圖16(c)所示,從作為庫(kù)區(qū)域的CLPR0截取所需的高速緩存區(qū)域,分配給CLPR1。另外,在新設(shè)定其他用戶用的CLPR 2時(shí),如圖16(d)所示,從作為庫(kù)區(qū)域使用的CLPR0截取所需量的高速緩存區(qū)域,分配給新生成的CLPR2。在刪除用戶專用的CLPR1或CLPR2時(shí),分配給刪除的CLPR的高速緩存區(qū)域返回到CLPR0。
圖17是表示上述處理的流程圖。在初始狀態(tài)下,高速緩存40具有的所有緩存區(qū)域分配給作為庫(kù)區(qū)域使用的公共區(qū)域CLPR0(S51)。在整個(gè)存儲(chǔ)子系統(tǒng)10使用的各信息存儲(chǔ)到CLPR0,被開始運(yùn)用(S52)。
在新追加CLPR時(shí)(S53YES),變更CLPR結(jié)構(gòu)(S54)。該CLPR結(jié)構(gòu)變更處理是進(jìn)行從CLPR0截取高速緩存區(qū)域并分配給新的CLPR等的處理。另一方面,在刪除已經(jīng)生成的CLPR時(shí)(S53NO、S55YES),進(jìn)行將分配給刪除的CLPR的高速緩存區(qū)域返回到CLPR0等的處理(S56)。另外,作為原則不可以刪除CLPR0。
圖18是表示對(duì)各子終端2顯示與各子終端2管理的CLPR有關(guān)的信息等的情況的說(shuō)明圖。
SVP90具有認(rèn)證單元91和結(jié)構(gòu)管理單元92。各CLPR的管理者經(jīng)子終端2訪問(wèn)SVP90,輸入用戶ID等。由認(rèn)證單元91進(jìn)行的用戶認(rèn)證結(jié)果是合法用戶時(shí),CLPR的管理者可以對(duì)自己管理下的CLPR進(jìn)行結(jié)構(gòu)變更。該結(jié)構(gòu)變更的操作由結(jié)構(gòu)管理單元92反映到各CLPR。另外,從結(jié)構(gòu)管理單元92取得的有關(guān)CLPR的結(jié)構(gòu)信息可以顯示在子終端2。
作為可以在子終端2顯示的信息,例如可以舉出分配給CLPR的最大高速緩存量、有關(guān)分配給CLPR的VDEV的信息(VDEV號(hào)和卷大小等)、使用中的高速緩存大小、未使用的高速緩存大小、對(duì)CLPR的IO頻率等。另外,管理整個(gè)存儲(chǔ)子系統(tǒng)10的系統(tǒng)管理者經(jīng)全體終端3可以取得有關(guān)所有CLPR的信息,可以進(jìn)行各CLPR的結(jié)構(gòu)變更等。
像這樣,根據(jù)本實(shí)施例,構(gòu)成為對(duì)存儲(chǔ)子系統(tǒng)10內(nèi)設(shè)定的各CLPR分割各管理用的信息。從而,可以抑制各CLPR間的干擾,可以提高使用方便性。即,在對(duì)一方的CLPR的訪問(wèn)增大的情況下,也可以極力防止對(duì)其他CLPR帶來(lái)影響。
另外,本實(shí)施例中,基于段或槽位的屬性,分配管理信息。從而,與將所有管理信息簡(jiǎn)單地分別設(shè)置在各CLPR的結(jié)構(gòu)相比,可以降低管理信息整體的數(shù)據(jù)大小,可以有效使用公共存儲(chǔ)器50。
另外,本發(fā)明不限于上述實(shí)施例。工作人員在本發(fā)明的范圍內(nèi)可以進(jìn)行各種追加和變更等。
權(quán)利要求
1.一種存儲(chǔ)子系統(tǒng),具有多個(gè)通道適配器,分別控制與上位裝置的數(shù)據(jù)交接;多個(gè)存儲(chǔ)設(shè)備組,分別提供邏輯存儲(chǔ)區(qū)域;多個(gè)盤適配器,分別控制與上述各存儲(chǔ)設(shè)備組的數(shù)據(jù)交接;高速緩存,由上述各通道適配器和上述各盤適配器分別使用;多個(gè)高速緩存分區(qū),邏輯分割上述高速緩存構(gòu)成;控制存儲(chǔ)器,存儲(chǔ)用于管理上述各高速緩存分區(qū)的管理信息,上述管理信息由對(duì)上述各高速緩存分區(qū)分別設(shè)置的分割管理信息、和適用于上述各高速緩存分區(qū)的整體的公共管理信息構(gòu)成。
2.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于上述各分割管理信息和公共管理信息基于高速緩存管理單位的屬性來(lái)設(shè)定。
3.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于上述管理信息由多種子管理信息構(gòu)成,基于高速緩存管理單位的屬性,將上述各子管理信息的一部分按上述各高速緩存分區(qū)分別分割而構(gòu)成上述各分割管理信息,將上述各子管理信息的剩余部分用作上述公共管理信息。
4.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于上述管理信息構(gòu)成為,包括多種隊(duì)列、與這些各隊(duì)列分別相關(guān)的計(jì)數(shù)器,基于高速緩存管理單位的屬性,通過(guò)在上述各高速緩存分區(qū)分別設(shè)置上述各隊(duì)列和上述各計(jì)數(shù)器的一部分來(lái)構(gòu)成上述各分割管理信息,將上述各隊(duì)列的剩余部分和上述各計(jì)數(shù)器的剩余部分用作公共管理信息。
5.如權(quán)利要求4所述的存儲(chǔ)子系統(tǒng),其特征在于相互相關(guān)的上述隊(duì)列和上述計(jì)數(shù)器中的一方構(gòu)成上述分割管理信息,另一方用作上述公共管理信息。
6.如權(quán)利要求4所述的存儲(chǔ)子系統(tǒng),其特征在于與上述各隊(duì)列分別相關(guān)聯(lián)的隊(duì)列管理表,與構(gòu)成上述分割管理信息的隊(duì)列相關(guān)的隊(duì)列管理表分別設(shè)置在上述各高速緩存分區(qū)。
7.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于上述管理信息構(gòu)成為,包括連接有未使用狀態(tài)的高速緩存管理單位的空閑隊(duì)列以及與該空閑隊(duì)列相關(guān)的空閑隊(duì)列計(jì)數(shù)器、連接有存儲(chǔ)反映到上述存儲(chǔ)設(shè)備組之前的非正常狀態(tài)的數(shù)據(jù)的高速緩存管理單位的非正常隊(duì)列以及與該非正常隊(duì)列相關(guān)的非正常隊(duì)列計(jì)數(shù)器、連接有存儲(chǔ)反映到上述存儲(chǔ)設(shè)備組之后的正常狀態(tài)的數(shù)據(jù)的高速緩存管理單位的正常隊(duì)列以及與該正常隊(duì)列相關(guān)的正常隊(duì)列計(jì)數(shù)器、和計(jì)數(shù)使用中的高速緩存管理單位的總量的使用中計(jì)數(shù)器,上述空閑隊(duì)列計(jì)數(shù)器、上述正常隊(duì)列、上述正常隊(duì)列計(jì)數(shù)器以及上述使用中計(jì)數(shù)器分別設(shè)置在上述各高速緩存分區(qū),分別構(gòu)成上述分割管理信息,上述空閑隊(duì)列、上述非正常隊(duì)列以及上述非正常隊(duì)列計(jì)數(shù)器用作上述公共管理信息。
8.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于在上述各通道適配器上可以分別設(shè)定上述各高速緩存分區(qū)。
9.如權(quán)利要求1所述的存儲(chǔ)子系統(tǒng),其特征在于通過(guò)將上述各高速緩存分區(qū)中的1個(gè)高速緩存分區(qū)設(shè)定為公共區(qū)域并分配屬于該公共區(qū)域的資源,設(shè)定新的高速緩存分區(qū)。
10.一種控制存儲(chǔ)子系統(tǒng)的方法,該存儲(chǔ)子系統(tǒng)具有多個(gè)上位接口控制單元,分別控制與上位裝置的數(shù)據(jù)交接;多個(gè)存儲(chǔ)設(shè)備組,分別提供邏輯存儲(chǔ)區(qū)域;多個(gè)下位接口控制單元,分別控制與上述各存儲(chǔ)設(shè)備組的數(shù)據(jù)交接;存儲(chǔ)器單元,由上述各上位接口控制單元和上述各下位接口控制單元分別使用,將上述存儲(chǔ)器單元提供的高速緩存區(qū)域分割成多個(gè)緩存分區(qū),根據(jù)用于在上述存儲(chǔ)器單元中管理數(shù)據(jù)的高速緩存管理單位的屬性,將管理信息分別分割給上述各高速緩存分區(qū),基于上述各管理信息,按上述各高速緩存分區(qū)分別管理數(shù)據(jù)。
全文摘要
對(duì)各用戶分割存儲(chǔ)子系統(tǒng)的高速緩存區(qū)域,防止用戶專用區(qū)域之間的干擾。在存儲(chǔ)子系統(tǒng)內(nèi)可以設(shè)定多個(gè)CLPR。CLPR是可以分割成高速緩存具有的高速緩存區(qū)域并使用的用戶專用區(qū)域。為了管理高速緩存中存儲(chǔ)的數(shù)據(jù)而所需的管理信息根據(jù)段或槽位的屬性,分配給各CLPR。管理正常狀態(tài)的段的正常隊(duì)列(102)以及正常計(jì)數(shù)器(202)在各CLPR分別設(shè)置。非正常隊(duì)列(103)以及非正常計(jì)數(shù)器(103)在所有CLPR中公共使用??臻e隊(duì)列(101)、分類隊(duì)列(104)以及BIND隊(duì)列(105)公共適用于所有CLPR,在各CLPR分別只設(shè)置各計(jì)數(shù)器(201、204、205)。
文檔編號(hào)G06F12/08GK1652093SQ200510000220
公開日2005年8月10日 申請(qǐng)日期2005年1月5日 優(yōu)先權(quán)日2004年2月5日
發(fā)明者星野幸子, 坂口孝, 長(zhǎng)副康之, 杉野升史 申請(qǐng)人:株式會(huì)社日立制作所
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
克什克腾旗| 庆元县| 秦皇岛市| 奉贤区| 乐昌市| 乐陵市| 周口市| 基隆市| 开平市| 开江县| 南郑县| 安康市| 甘肃省| 子洲县| 突泉县| 宁安市| 武强县| 芒康县| 邛崃市| 阜南县| 罗江县| 邓州市| 泽普县| 东丰县| 云霄县| 塔河县| 东安县| 兖州市| 丁青县| 湖口县| 五河县| 上林县| 静乐县| 育儿| 景德镇市| 栾川县| 东莞市| 宜君县| 阿克陶县| 洞口县| 乐安县|