TWI550407B - 資料存取的方法及執行該方法的裝置 - Google Patents
資料存取的方法及執行該方法的裝置 Download PDFInfo
- Publication number
- TWI550407B TWI550407B TW103107919A TW103107919A TWI550407B TW I550407 B TWI550407 B TW I550407B TW 103107919 A TW103107919 A TW 103107919A TW 103107919 A TW103107919 A TW 103107919A TW I550407 B TWI550407 B TW I550407B
- Authority
- TW
- Taiwan
- Prior art keywords
- host
- logical unit
- hlun
- partition
- logical
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
本發明係關於一種資料存取的方法及執行該方法的裝置,尤指一種在處理主機輸出入請求時,不須辨識主機身分,便可以找到正確對應的邏輯碟並存取資料的方法及執行該方法的裝置。
在現代社會中,儲存系統/子系統被廣泛地應用於生活中以服務各種需求。冗餘磁碟陣列(Redundant Array of Independent Disk,RAID)是其中一種普遍應用的儲存子系統,其除了提供大量的資料儲存空間之外,亦可以增進資料存取的效能以及提供資料容錯的能力。根據不同的應用,一或複數個冗餘磁碟陣列(RAID),透過主機端連接介面(host-side interconnect interface),可以與一或複數個主機(Host)連接,整體形成一個儲存系統。儲存系統中,主機(Host)對冗餘磁碟陣列(RAID)存取資料,以服務自身應用程式的需求。
冗餘磁碟陣列(RAID)也是一種儲存虛擬化子系統,其中的控制器,稱為「儲存虛擬化控制器」,利用儲存虛擬化(storage virtualization)技術將實體儲存裝置(Physical Storage Device,PSD)的不同區段組合成一個邏輯儲存體(logical storage entity)。此邏輯儲存體於冗餘磁碟陣列(RAID)中稱為「邏輯碟(Logical Drive,LD)」;若是將此邏輯儲存體映射(map)出去供主機(host)存取,則
稱為「邏輯單元」(Logical Unit Number,LUN)。
因此,從主機(Host)的觀點,其所發出之主機命令(Host Command)係針對某一可辨識的邏輯單元(LUN)。儲存虛擬化控制器接收到該主機命令(Host Command)後,會先剖析並解釋該主機命令(Host Command),其中包括主機(Host)欲存取的邏輯單元(LUN)是對應到哪一個邏輯碟(LD)、或是對應到哪一個邏輯碟(LD)的哪一個分割區(Partition),以下以「邏輯碟(LD)/分割區(Partition)」表示之。之後,再將相關之操作參數及資料轉譯為該邏輯碟(LD)/分割區(Partition)所在之實體儲存裝置(PSD)的輸出入請求(IO Request)。
邏輯單元(LUN)與邏輯碟(LD)之間可以有兩種映射(mapping)關係:全域映射(Global Mapping)與主機特定映射(Host-specific Mapping)。全域映射(Global Mapping)是指與某一邏輯單元(LUN)連結的邏輯碟(LD)/分割區(Partition)是用做儲存全域資料(global data)之用,也就是所有的主機皆可以對該邏輯碟(LD)/分割區(Partition)存取資料,邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間是一對一或多對一的映射關係;而,主機特定映射(Host-specific Mapping)是指與某一邏輯單元(LUN)連結的邏輯碟(LD)/分割區(Partition)是用做儲存區域資料(local data)之用,也就是只有特定的一些主機可以對該邏輯碟(LD)/分割區(Partition)存取資料,邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間可能是一對多、多對多或一對一的映射關係。在全域映射(Global Mapping)的情況下,複數個主機(Host)所見的同一邏輯單元(LUN)必是映射到同一邏輯碟(LD)/分割區(Partition);也就是該複數個主機(Host)可以透過同一邏輯單元(LUN)對同一邏輯碟(LD)/分割區(Partition)存取資料。相對地,在主機特定映射(Host-specific Mapping)的情況下,複數個主機(Host)雖然看見相同的邏輯單元(LUN),但其實是透過該邏輯單元(LUN)各自映射到不同的邏輯碟(LD)/分割區(Partition)。控制器在接收到主機發出的輸出入請求
(Host IO Request)時,根據辨認主機身分(Host ID)的結果而決定與其映射的邏輯碟(LD)/分割區(Partition),使得該複數個主機(Host)只能各自對其映射的邏輯碟(LD)/分割區(Partition)存取資料,以達到「存取控制(access control)」的目的。
在主機特定映射(Host-specific Mapping)的情況下,如何讓儲存虛擬化控制器可以正確地映射由不同主機(Host)發出的主機命令(Host Command)到其對應的邏輯碟(LD)/分割區(Partition),是一在此儲存領域的重要課題。
本發明之目的係在提供一種邏輯單元映射的方法及執行該方法的裝置,藉由指派每一邏輯單元(LUN)至邏輯碟(LD)一專屬的主機邏輯單元(HLUN),而達到不須辨識主機身分即可正確存取資料的功效。
依據本發明之一實施例,提出一種資料存取的方法,用以存取儲存在一儲存空間的資料,該方法包含以下步驟:一資訊提供步驟,係由一控制器執行,用以根據一主機的身分而提供該主機一主機特定資訊(Host-specific Information)以回應該主機所發出的至少一第一命令;一接收步驟,係由該控制器執行,用以接收由該主機發出之一輸出入請求(IO request);一解譯步驟,係由該控制器執行,用以解譯該輸出入請求,以得知該輸出入請求所攜帶的一邏輯單元代號;一查表步驟,係由該控制器執行,用以不須辨認該主機的身分,藉由查詢一主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該邏輯單元代號所對應的一邏輯碟(LD)/分割區(Partition);一資料存取步驟,係由該控制器執行,用以至該邏輯碟(LD)/分割區(Partition)存取資料;以及一回覆步驟,係由該控制器執行,用以回覆該資料存取步驟的執行結果給該主機;其中,在該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)中,該主
機邏輯單元(HLUN)係唯一地對應到其所映射的邏輯碟(LD)/分割區(Partition)。
依據本發明之再一實施例,提出一種資料存取的方法,用以存取儲存在一儲存空間的資料,該方法包含以下步驟:一接收步驟,係由一控制器執行,用以接收由一主機發出之一輸出入請求(IO request);一解譯步驟,係由該控制器執行,用以解譯該輸出入請求,以得知該輸出入請求所攜帶的一邏輯單元的代號;一查表步驟,係由該控制器執行,用以不須辨認該主機的身分,藉由查詢一主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該邏輯單元代號所對應的至少一邏輯碟(LD)/分割區(Partition);一資料存取步驟,係由該控制器執行,用以至該至少一邏輯碟(LD)/分割區(Partition)存取資料;以及一回覆步驟,係由該控制器執行,用以回覆該資料存取步驟的執行結果給該主機;其中,該邏輯單元代號對應於該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)中所表示之一主機邏輯單元(HLUN),該主機邏輯單元(HLUN)係為一用於代表與一邏輯碟(LD)/分割區(Partition)相關之映射關係的專屬的代號;其中,在該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)中,該主機邏輯單元(HLUN)係唯一地對應到其所映射的邏輯碟(LD)/分割區(Partition)。
依據本發明之又一實施例,提出一種資料存取的方法,用以存取儲存在一儲存空間的資料,該方法包含以下步驟:一主機發出至少一第一命令給一控制器,要求該控制器回報該主機可以存取的邏輯單元;該控制器更執行以下步驟以回應該至少一第一命令:查詢一主機身分紀錄表(Host-ID Table),以得知該主機的身分所對應的一主機代號(Host Number);查詢或換算一邏輯單元對照資訊(LUN Cross-reference Information),以得知指派給該主機代號的至少一主機邏輯單元(HLUN);對於該至少一主機邏輯單元
(HLUN),查詢一主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該至少一主機邏輯單元(HLUN)是否與至少一邏輯碟(LD)/分割區(Partition)具有映射關係;以及回覆該主機該至少一主機邏輯單元(HLUN)中與該至少一邏輯碟(LD)/分割區(Partition)具有映射關係者;該主機發出一輸出入請求(IO request)給該控制器,以對該至少一主機邏輯單元(HLUN)進行存取;以及回應於該輸出入請求,該控制器係針對該具有映射關係之至少一邏輯碟(LD)/分割區(Partition)執行存取資料;其中,在該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)中,該主機邏輯單元(HLUN)係唯一地對應到其所映射的邏輯碟(LD)/分割區(Partition)。
11‧‧‧主機端連結介面
12‧‧‧裝置端連結介面
20‧‧‧儲存虛擬化子系統
21‧‧‧儲存虛擬化控制器
211‧‧‧主機端輸出入裝置連結控制器
212‧‧‧中央處理電路
213‧‧‧記憶體
214‧‧‧裝置端輸出入裝置連結控制器
22‧‧‧儲存空間
220~227‧‧‧邏輯單元(LUN)
230~236‧‧‧邏輯碟(LD)
30~36‧‧‧主機
240~247‧‧‧內部邏輯單元(ILUN)
250~257‧‧‧主機邏輯單元(HLUN)
260~266‧‧‧主機邏輯單元(HLUN)
第1A圖與第1B圖、描繪應用本發明之儲存系統架構之第一實施例與第二實施例之示意圖;第2圖、描繪應用本發明方法之儲存虛擬化控制器(SVC)之一實施例之示意圖;第3A圖與第3B圖、描繪本發明所揭露之邏輯單元對照資訊(LUN Cross-reference Information)之第一實施例與第二實施例之示意圖;第4A圖與第4B圖、描繪根據第1A圖與第1B圖的架構,並參考第3A圖之邏輯單元對照資訊(LUN Cross-reference Information)之實施例,所繪示之邏輯單元對邏輯碟(LD)/分割區(Partition)之映射關係之示意圖;第5圖、描繪本發明之主機身分紀錄表(Host-ID Table)之一實施例之示意圖;第6圖、描繪本發明之主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)之一實施例之示意圖;第7圖、描繪實施本發明方法時,在主機電腦(Host)與儲存虛
擬化控制器(SVC)之間執行的處理程序之一實施例之流程圖;第8圖、描繪第7圖中本發明處理“Report LUNs”命令之一實施例之流程圖;第9圖、描繪第7圖中本發明處理“Inquiry”命令之一實施例之流程圖;第10圖、描繪第7圖中本發明處理主機所發出之輸出入請求(IO request)之一實施例之流程圖;第11A圖至第11C圖、描繪本發明查詢邏輯單元對照資訊(LUN Cross-reference Information)與主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)而得主機之主機特定資訊(Host-specific Information)之一實施例之流程圖。
本發明主要是提出一種邏輯單元映射的方法及執行該方法的裝置。藉由本發明定義之兩種不同的邏輯單元,於一實施例中稱為:「內部邏輯單元(Internal LUN,ILUN)」與「主機邏輯單元(Host LUN,HLUN)」,處理儲存空間中邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間的映射(mapping)關係。「內部邏輯單元(Internal LUN,ILUN)」係用做控制器內部辨識之用,「主機邏輯單元(Host LUN,HLUN)」則是對外呈現給主機辨識之邏輯單元。本發明可以適用於邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間為全域映射(Global Mapping)或主機特定映射(Host-specific Mapping)的關係。尤其當邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間是主機特定映射(Host-specific Mapping)的關係時,可以讓對應到同一內部邏輯單元(ILUN)的不同主機(Host)各自有一專有的主機邏輯單元(HLUN)唯一地對應到其可存取資料的邏輯碟(Logical Drive,LD)/分割區(Partition)。藉此,當控制器處理主機發出的輸出入請求(Host IO)時,不須辨識主機的身分,只憑輸出入請求(Host IO)中的主機邏輯單元(HLUN)資訊,
便可以找到其對應的邏輯碟(LD)/分割區(Partition)存取資料。
雖然本發明在處理主機輸出入請求(Host IO)時,不辨識主機的身分;但是藉由主機邏輯單元(HLUN)的輔助,仍然可使單一邏輯單元(即本發明所稱之內部邏輯單元(ILUN))對應到不同的邏輯碟(LD)/分割區(Partition)。依據本發明之一實施例,若是主機發出“Inquiry”命令,在回覆“Inquiry”命令時,若是其查詢的邏輯單元(也就是本發明所稱之主機邏輯單元(HLUN))是在「主機特定資訊(Host-specific Information)」內,則依標準程序回覆該主機邏輯單元(HLUN)所對應之邏輯碟(LD)/分割區(Partition)的特性與基本資料;否則,則回覆“裝置未知或沒有裝置型態(unknown or no device type)”。藉此,可以使得某一主機(Host)主動只對特定的邏輯碟(LD)/分割區(Partition)進行存取,且藉由本發明方法所造成的阻礙,使得其他非特定的主機自行不對該些特定的邏輯碟(LD)/分割區(Partition)進行存取。至於,本發明中與“Inquiry”命令相關的處理程序將於後文中說明。依據本發明之另一實施例,可以自行定義特定命令來進行邏輯單元(即本發明所稱之主機邏輯單元(HLUN))的查詢,而使得控制器在接收到該特定命令時,若是其查詢的邏輯單元是在「主機特定資訊(Host-specific Information)」內,則依標準程序回覆該主機邏輯單元(HLUN)所對應之邏輯碟(LD)/分割區(Partition)的特性與基本資料;否則,則回覆“裝置未知或沒有裝置型態(unknown or no device type)”。
請參照第1A圖與第1B圖,係為應用本發明之儲存系統架構之第一實施例與第二實施例之示意圖。該兩實施例各自包含有複數個主機(Host)30-36與一儲存虛擬化子系統(Storage Virtualization Subsystem,SVS)20。複數個主機30-36與儲存虛擬化子系統20之間係以一主機端連結介面(Host-side interconnect interface)11連接溝通資料和訊號。於本發明中,該主機端連結介面11可以是光纖通道(Fibre Channel,FC)、序列連接小型電腦系統介面(Serial-Attached SCSI,SAS)、網路小型電腦系統介面
(Internet SCSI,iSCSI)等可以提供全球網域名稱(World Wide Name,WWN)的電腦通訊協定(protocol),或是其他可以提供主機身分(Host ID)以供辨識的電腦通訊協定(protocol)。
主機30-36可為主機電腦,如伺服器系統、工作站、個人電腦系統等。雖然圖中繪示有七個主機30-36透過主機端連結介面11與一儲存虛擬化子系統20相連接;但於其他實施例,可以有其他任意至少一個主機與一或一個以上的儲存虛擬化子系統20相連接。
儲存虛擬化子系統20包含有一儲存虛擬化控制器(Storage Virtualization Controller,SVC)21、以及一連接至儲存虛擬化控制器21之儲存空間22。該儲存空間22可以由一或複數個實體儲存裝置陣列(圖中沒有繪示)所組成。該儲存虛擬化控制器21可為一磁碟陣列控制器或是一JBOD(Just a Bunch of Drives)模擬控制器。主機30-36也可以是儲存虛擬化控制器。
儲存虛擬化控制器(SVC)21接受由主機30-36傳來的輸出入請求及相關資料(控制訊號及資料訊號),並執行此輸出入請求而將此輸出入請求映射至儲存空間22中的實體儲存裝置(Physical Storage Device,PSD)進行資料存取,並將相關資料回覆給主機(如果有的話)。儲存空間22中的實體儲存裝置(PSD)可為,舉例而言,硬式磁碟機(HDD)、磁帶(Tape)、可讀寫光碟(CD-R/W)、影音光碟(Digital Versatile Disc,DVD)或固態硬碟(Solid State Drive,SSD)等各種實體儲存裝置(PSD)。儲存虛擬化控制器(SVC)21可用來加強效能及/或改進資料有效性(data availability),或是用來增加對主機30-36而言的單一邏輯媒體單元的儲存容量。
請參照第2圖,係為儲存虛擬化控制器(SVC)之一實施例之示意圖。儲存虛擬化控制器21包含有一主機端輸出入裝置連結控制器(Host-side IO Device Interconnect Controller)211、一中央處理電路(Central Processing Circuit,CPC)212、一記憶體213以
及一裝置端輸出入裝置連結控制器(Device-side IO Device Interconnect Controller)214。此處雖以分開的功能方塊描述,但於實際應用時,部份甚至全部的功能方塊(functional block)皆可整合在一單一晶片上。
主機端輸出入裝置連結控制器211透過主機端連結介面11對外與主機30-36連接,做為儲存虛擬化控制器21及主機30-36之間的介面及緩衝;對內則與中央處理電路212連接。主機端輸出入裝置連結控制器211可接收由主機30-36傳來的輸出入請求和相關資料,並且將其轉換至中央處理電路212。
記憶體213連接於中央處理電路212,做為一緩衝器,用來緩衝傳送於主機30-36及儲存空間22之間通過中央處理電路212的資料。實際應用時,記憶體213可以是DRAM(動態隨機存取記憶体Dynamic Random Access Memory),該DRAM亦可為SDRAM(同步動態隨機存取記憶體Synchronous Dynamic Random Access Memory)。
裝置端輸出入裝置連結控制器214透過裝置端連結介面12對外與儲存空間22連接,做為儲存虛擬化控制器21及儲存空間22之間的介面及緩衝;對內則與中央處理電路212連接。裝置端輸出入裝置連結控制器214接收由中央處理電路212傳入之輸出入請求及相關資料,並將其映射及/或傳送至儲存空間22。
於本發明中,該裝置端連結介面12可以是序列先進技術接取介面(serial ATA,SATA)、小型電腦系統介面(Small Computer System Interface,SCSI)、序列連接小型電腦系統介面(Serial-Attached SCSI,SAS)、網路小型電腦系統介面(Internet SCSI,iSCSI)、或光纖通道(Fibre Channel,FC)等任何電腦通訊協定。
中央處理電路212是儲存虛擬化控制器21之運算核心。當中央處理電路132接收到來自主機端輸出入裝置連結控制器211之主機輸出入請求時,中央處理電路212會將此輸出入請
求剖析,並且執行一些操作以回應此輸出入請求,以及將所請求之資料及/或報告及/或資訊,由儲存虛擬化控制器21經由主機端輸出入裝置連結控制器211傳送至主機11。本發明之邏輯單元映射的方法可以程式編碼的方式實現,且將該程式編碼儲存於中央處理電路212內部的記憶體,例如:ROM(圖中沒有繪示)之中,或是儲存中央處理電路212外部的記憶體213中,以供中央處理電路212執行。
請再次參考第1A圖。儲存虛擬化控制器(SVC)21可以將儲存空間22中之實體儲存裝置(PSD)的各區段組合映射(map)成主機30-36可見之邏輯儲存裝置,稱之為「邏輯單元(LUN)」。當主機30-36發出輸出入請求(Host IO)至儲存虛擬化子系統20時,儲存虛擬化控制器21會先剖析並解釋該輸出入請求(Host IO),其中包括主機30-36欲存取的邏輯單元(LUN)是對應到哪一個邏輯碟(LD)/分割區(Partition)。之後,再將相關之操作參數及資料轉譯為該邏輯碟(LD)/分割區(Partition)所在之實體儲存裝置(PSD)的輸出入請求(IO Request)。其中,該等邏輯碟(LD)/分割區(Partition)係為儲存虛擬化控制器(SVC)21將儲存空間22中之該等實體儲存裝置(PSD)的各區段,利用RAID技術或是nRAID(non-RAID)技術或是其他技術,建構而成,而由於在儲存業界具有一般技術之人士皆知如何進行此等建構技術,故在此不再贅述。
第1A圖所繪示之第一實施例,假設儲存虛擬化子系統20最多能提供8個邏輯單元,各是LUN0至LUN7 220-227。其中LUN0至LUN6 220-226各自關聯到LD0至LD6 230-236並對外映射(map)給主機30-36,而LUN7 227沒有。各邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間的映射關係是:LUN0 220對LD0 230是主機特定映射(Host-specific Mapping)的關係,設定LD0 230儲存的區域資料(local data)只給Host0 30存取;LUN1 221對LD1 231也是主機特定映射(Host-specific Mapping)的關係,設定LD1 231儲存的區域資料(local data)只給Host1 31存取;而其他LUN2
至LUN6 222-226對LD2至LD6 232-236之間都是全域映射(Global Mapping)的關係,因此任一主機(Host)皆可對LD2至LD6 232-236所儲存的全域資料(global data)進行存取。
第1B圖所繪示之第二實施例,更進一步設定某一邏輯單元(LUN)是與複數個邏輯碟(LD)/分割區(Partition)之間形成主機特定映射(Host-specific Mapping)的關係。同樣假設儲存虛擬化子系統20最多能提供8個邏輯單元,各是LUN0至LUN7 220-227,而其中LUN0 220、LUN4 224、LUN5 225與LUN6 226各自有關聯到一或複數個邏輯碟(LD)/分割區(Partition)並有對外映射(map)給主機30-36。又其中,LUN0 220至邏輯碟(LD)/分割區(Partition)之間的映射關係是一對多的主機特定映射(Host-specific Mapping),也就是說有第一主機(例如:Host0 30)透過LUN0 220對應到LD0 230、有第二主機(例如:Host1 31)透過LUN0 220對應到LD1 231、有第三主機(例如:Host2 32)透過LUN0 220對應到LD2 232、以及有第四主機(例如:Host3 33)透過LUN0 220對應到LD3 233。其他的主機(例如:Host4 34、Host5 35與Host6 36)在正常情況下不會透過LUN0 220對LD0 230、LD1 231、LD2 232與LD3 233的其中任一存取資料,因為儲存虛擬化子系統20沒有映射(map)LUN0 220給上述第一主機至第四主機之外的其他主機(Host)。相對地,由於LUN4 224、LUN5 225與LUN6 226至邏輯碟(LD)/分割區(Partition)之間的映射關係是全域映射(Global Mapping),因此所有的主機30-36皆可以透過LUN4 224、LUN5 225與LUN6 226存取到LD4 234、LD5 235與LD6 236的資料。
不論是第1A圖或第1B圖,由於主機30-36只會辨認(recognize)儲存虛擬化子系統20所對其呈現的邏輯單元,因此主機輸出入請求(Host IO)所攜帶的訊息也指僅止於描述對某特定邏輯單元(例如:LUN0 220)存取資料。至於該主機輸出入請求(Host IO)應被轉譯至哪一個邏輯碟(LD)/分割區(Partition),則由居間溝通的儲存虛擬化控制器(SVC)21判斷決定。
為使儲存虛擬化控制器(SVC)21可以正確地轉譯主機輸出入請求(Host IO)至正確對應的邏輯碟(LD)/分割區(Partition),以存取正確的資料回覆給發出該主機輸出入請求(Host IO)的主機,本發明定義一新的邏輯單元,稱為「主機邏輯單元(Host LUN,HLUN)」,用來唯一地代表每一邏輯單元(LUN)與邏輯碟(LD)/分割區(Partition)之間的映射關係。另外,本發明稱原本儲存虛擬化控制器(SVC)21使用的邏輯單元(LUN)為「內部邏輯單元(Internal LUN,ILUN)」。依據本發明技術,將「內部邏輯單元(ILUN)」保留做為儲存虛擬化控制器(SVC)21內部資料轉換時之辨識之用,而對外則改以「主機邏輯單元(HLUN)」做為呈現給主機的邏輯單元。
依據本發明之一實施例,當主機30-36第一次要對儲存虛擬化子系統20發出輸出入請求(IO request)前,會先發出“Report LUNs”與“Inquiry”命令,以詢問其可以存取哪些裝置,以及詢問該些裝置的類型與特性等基本資料。“Report LUNs”與“Inquiry”命令都是遵循SCSI規格下的標準命令,為習知此技藝人士所熟知,因此此處不再多做贅述。
依據本發明技術,當每一主機發出“Report LUNs”與“Inquiry”命令,詢問其可以存取的邏輯單元(LUN)與該些邏輯單元的基本特性時,儲存虛擬化控制器(SVC)21必須要能給予每一主機對每一內部邏輯單元(ILUN)一唯一的代號,也就是主機邏輯單元(HLUN),用來代表此唯一的映射關係。換句話說,內部邏輯單元(ILUN)可以視做主機來詢問邏輯單元(LUN)資訊時的索引代號(index)。至於“Report LUNs”與“Inquiry”命令係為小型電腦系統介面(Small Computer System Interface,SCSI)的常用命令。簡單來說,“Report LUNs”是要求接受命令的目標端(target)回報有哪些邏輯單元(LUN)可供啟動端(initiator)之用;“Inquiry”則是啟動端(initiator)對邏輯單元(LUN)所發出的命令,詢問某一特定邏輯單元(LUN)的基本資料。至於其詳細內容為習知此技藝人士所熟知,因
此以下不再多做贅述。
如何分配每一來詢問的主機對其可存取的每一內部邏輯單元(ILUN)一唯一的主機邏輯單元(HLUN)代號,有數種不同的實施方式。儲存虛擬化控制器(SVC)21可以選擇用固定分配的方式、或是動態分配的方式。只要能夠達到給予每一主機對應每一內部邏輯單元(ILUN)有一唯一的主機邏輯單元(HLUN)代號,都應視為不脫離本發明精神之外。
上述固定分配的方式,可以在儲存系統設定之初,即建立一邏輯單元對照資訊(LUN Cross-reference Information),用於紀錄內部邏輯單元(ILUN)與主機邏輯單元(HLUN)之間的對應關係;於本發明的其他實施例中,若是內部邏輯單元(ILUN)與主機邏輯單元(HLUN)之間的對應關係是遵循一特定規則,亦可只紀錄該特定規則來替代該邏輯單元對照資訊(LUN Cross-reference Information)以供換算(convert)之用。請參照第3A圖與第3B圖,係為本發明所揭露之邏輯單元對照資訊(LUN Cross-reference Information)之第一實施例與第二實施例之示意圖。該兩實施例假設儲存虛擬化子系統20設定用1位元組(byte)來儲存邏輯單元(LUN)的代號,即:0-255,且假設儲存系統使用8個內部邏輯單元(即ILUN0至ILUN7)即已足夠。則256/8=32,表示該儲存系統可以支援連接32台主機電腦,每一設定支援的主機電腦對應8個內部邏輯單元(ILUN)都有一專屬的主機邏輯單元(HLUN)代碼。雖然第3A圖與第3B圖皆是假設以1位元組(byte)的資料長度來儲存邏輯單元(LUN)代號,因此有256個數字可以做為主機邏輯單元(HLUN)的代號,且又假設有8個內部邏輯單元(ILUN);但是,在本發明的其他實施例中,不應以此為限。儲存主機邏輯單元(HLUN)代號的長度可以是小於或大於1位元組(byte)的任意長度,並且內部邏輯單元(ILUN)的數量也可以是小於或大於8的任意數字。
以第3A圖為例說明,分配給Host0對ILUN0至ILUN7的主機邏輯單元(HLUN)代碼依序為“0”至“7”;同理,Host1對
ILUN0至ILUN7的主機邏輯單元(HLUN)代碼依序為“8”至“15”;以下以此類推,一直到Host31對ILUN0至ILUN7的主機邏輯單元(HLUN)代碼依序為“248”至“255”。
第3A圖與第3B圖所示之邏輯單元對照資訊(LUN Cross-reference Information)之二實施例,事先即已設定好所有可能的主機邏輯單元(HLUN)代碼。但是,這些代碼未必皆使用得到,只是以備不時之需。舉例來說,如果某一內部邏輯單元(ILUN)對其映射(map)的邏輯碟(LD)/分割區(Partition)之間是全域映射(Global Mapping)的關係,則可以只要一個主機邏輯單元(HLUN)代號來代表此映射關係。通常,會選擇數值最小者為代表,用來代表所有主機對該內部邏輯單元(ILUN)的主機邏輯單元(HLUN)代碼。若以第3A圖所示之實施例為例,假設是全域映射(Global Mapping)的狀況,則選擇“0”做為所有主機對應ILUN0的主機邏輯單元(HLUN)代碼;其他以此類推,各是選擇“1”至“7”做為所有主機對應ILUN1至ILUN7的主機邏輯單元(HLUN)代碼。第3B圖亦同。當然,於其他實施例中,未必要選擇數值最小者做為全域映射(Global Mapping)時所有主機對應之主機邏輯單元(HLUN)的代碼。只要能夠唯一地代表每一邏輯單元對每一邏輯碟(LD)/分割區(Partition)的映射關係,都應視為不脫離本發明精神之外。
至於動態分配的方式可以是:每一主機(Host)所被分配到的主機邏輯單元(HLUN)的數量未必相同。若同樣假設儲存主機邏輯單元(HLUN)代號的長度是1位元組(byte),因此可以有256個數字做為主機邏輯單元(HLUN)的代號。只是,動態分配與第3A圖與第3B圖所示之固定分配實施例不同的是,使用者可以依照應用需要分配每一主機(Host)不同數目的主機邏輯單元(HLUN)的數量,只要所有分配給主機(Host)使用的主機邏輯單元(HLUN)的數量不超過256即可。
請參照第4A圖與第4B圖,係為根據第1A圖與第1B圖的架構,並參考第3A圖之邏輯單元對照資訊(LUN
Cross-reference Information)之實施例,所繪示之邏輯單元對邏輯碟(LD)/分割區(Partition)之映射關係之示意圖。
在第4A圖中,經查詢第3A圖得知:ILUN代號為“0”者與Host代號為“0”者所對應的HLUN代號為“0”,因此將原本LUN0 220對應到LD0 230的映射關係以HLUN0 250代表。而,又經查詢第3A圖得知:ILUN代號為“1”者與Host代號為“1”者所對應的HLUN代號為“9”,因此將原本LUN1 221對應到LD1 231的映射關係以HLUN9 251代表。但是,因為第1A圖所示之LUN2至LUN6 222-226對LD2至LD6 232-236之間都是全域映射(Global Mapping)的關係,因此在查表時可以不用理會Host的代號,只要找出該ILUN的代表HLUN代號即可。據此,在第4A圖中,將原本第1A圖的LUN2 222稱做ILUN2 242,其對應到LD2 232的映射關係以HLUN2 252代表;同理,將原本LUN3 223稱做ILUN3 243,其對應到LD3 233的映射關係以HLUN3 253代表;同理,將原本LUN4 224稱做ILUN4 244,其對應到LD4 234的映射關係以HLUN4 254代表;同理,將原本LUN5 225稱做ILUN5 245,其對應到LD5 235的映射關係以HLUN5 255代表;同理,將原本LUN6 226稱做ILUN6 246,其對應到LD6 236的映射關係以HLUN6 256代表。
至於第4B圖,經查詢第3A圖並以此類推可以得知:將原本LUN0 220稱做ILUN0 240,其對應到LD0 230的映射關係以HLUN0 260代表、其對應到LD1 231的映射關係以HLUN8 261代表、其對應到LD2 232的映射關係以HLUN16 262代表、其對應到LD3 233的映射關係以HLUN24 263代表;將原本LUN4 224稱做ILUN4 244,其對應到LD4 234的映射關係以HLUN4 264代表;將原本LUN5 225稱做ILUN5 245,其對應到LD5 235的映射關係以HLUN5 265代表;將原本LUN6 226稱做ILUN6 246,其對應到LD6 236的映射關係以HLUN6 266代表。其中,HLUN0 260、HLUN8 261、HLUN16 262與HLUN24 263皆是在同一內部
邏輯單元,即:ILUN0 240,的架構下衍生出來的主機邏輯單元(HLUN)。
以上敘述雖說是“查詢”第3A圖之邏輯單元對照資訊(LUN Cross-reference Information)以得知每一映射關係所唯一對應的HLUN代號;但於本發明的其他實施例中,若是設定各個ILUN對應不同主機(Host)的HLUN代號係遵循一定的規則,其可以藉由特定公式換算(convert)而來,則亦可以用換算的方式取代查表的方式來得知一特定映射關係所唯一對應的HLUN代號。
請參照第5圖,係為本發明之主機身分紀錄表(Host-ID Table)之一實施例之示意圖。其中紀錄儲存虛擬化控制器(SVC)21指派主機代號(Host Number)給每一連接之主機的主機身分(Host ID)對主機代號(Host Number)的資訊。當儲存虛擬化子系統20在運作的過程中,使用者可以依需要隨時透過使用者介面(User Interface)對儲存虛擬化控制器(SVC)21做組態設定,而建立此主機身分紀錄表(Host-ID Table),以紀錄當時所有在線上主機的主機身分(Host ID)對主機代號(Host Number)的資料。若是之後又有新的主機加入,一般來說,還是需要由使用者透過使用者介面(User Interface)做此設定,以指派1個新的主機代號(Host Number)給該新加入的主機,並紀錄相關資訊。
請參照第6圖,係為本發明之主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)之一實施例之示意圖。其中紀錄每一主機邏輯單元(HLUN)所映射的一邏輯碟(LD)與分割區(Partition)資訊。當儲存虛擬化子系統20在運作的過程中,使用者可以依需要隨時透過使用者介面(User Interface)對儲存虛擬化控制器(SVC)21做組態設定,因而建立此主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table);或是,之後又有新的主機加入,一般來說,還是需要由使用者透過使用者介面(User Interface)做此設定,以更新此主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)的紀錄
資訊。
請參照第7圖,係為實施本發明方法時,在主機電腦(Host)與儲存虛擬化控制器(SVC)之間執行的處理程序之一實施例之流程圖。第7圖所示之實施例只是一個典型且簡化的架構。於本發明之其他實施例中,第7圖中所示的步驟順序可能有所改變,主機發出“Report LUNs”與“Inquiry”命令的次數也不以一次為限。若以第1B圖與第4B圖的架構為例,其步驟詳述如下。
步驟401,一主機(例如:Host0 30)發出“Report LUNs”命令給儲存虛擬化控制器(SVC)21。
步驟402,儲存虛擬化控制器(SVC)21解譯該“Report LUNs”命令,然後根據內部設定與儲存資訊回報該主機(例如:Host0 30)一主機特定資訊(Host-specific Information),其中儲存有設定給該主機存取的邏輯單元(例如:HLUN0 260、HLUN4 264、HLUN5 265與HLUN6 266)。
上述步驟402中,儲存虛擬化控制器(SVC)21處理“Report LUNs”命令的詳細內容請參考第8圖。首先,在步驟501,查詢主機身分紀錄表(Host-ID Table)(例如:第5圖所示之示意圖),以得知下命令的主機身分(Host ID)所對應之在該儲存虛擬化子系統(SVS)20內部使用的主機代號(Host Number),例如:“0”,本發明表示為“Host0”。於本發明的其他實施例中,下命令的主機可能是新上線、且使用者還未設定至主機身分紀錄表(Host-ID Table)之中,因此步驟501的查詢結果也可能是:沒有該主機身分(Host ID)所對應之主機代號(Host Number)。步驟502,根據步驟501所得之結果,查詢邏輯單元對照資訊(LUN Cross-reference Information)(例如:第3A圖與第3B圖所示之實施例)與主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table)(例如:第6圖所示之示意圖),或藉由換算(convert)取代查表的方式,而得到一主機特定資訊(Host-specific Information),此主機特定資訊(Host-specific Information)紀錄所有該主機可存取
資料的邏輯單元(即,主機邏輯單元(HLUN))。步驟503,儲存虛擬化控制器(SVC)21回覆該主機特定資訊(Host-specific Information)給發出“Report LUNs”命令的主機。
至於第8圖的步驟502中,如何得到該主機特定資訊(Host-specific Information)的詳細內容係描述於第11A至第11C圖。
首先進入第11A圖,由步驟820判斷:是否有在主機身分紀錄表(Host-ID Table)中查詢到與下命令的主機身分(Host ID)關聯的主機代號(Host Number)?如果上述判斷結果為“是”,則由節點A(步驟821)進入第11B圖;如果上述判斷結果為“否”,則由節點B(步驟822)進入第11C圖。
請參照第11B圖,由節點A(步驟821)進入本流程後,首先在步驟801,找出邏輯單元對照資訊(LUN Cross-reference Information)中與前述主機代號(Host Number)關聯的HLUN資料列(row)(或是“行(column)”)。步驟802,以ILUN做為索引(index),由第一個ILUN開始,逐步做確認。步驟803,判斷目前正進行之ILUN是否是最後一個。如果前述判斷結果為“是”,則結束本流程;否則,進入步驟804。步驟804,查詢該進行中ILUN的映射型態為何。如果紀錄該ILUN的映射型態是全域映射(Global Mapping),則進入步驟805,選取代表該ILUN的HLUN代號。如果紀錄該ILUN的映射型態是主機特定映射(Host-specific Mapping),則進入步驟806,保留原本指派的HLUN代號。步驟807,根據步驟805或步驟806所得之選取的HLUN代號,查詢主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該選取的HLUN代號是否與邏輯碟/分割區有映射關係。如果以上判斷結果為“是”,進入步驟808,將該HLUN代號加至其主機特定資訊(Host-specific Information)中;否則,進入步驟809,忽略該HLUN代號。步驟810,將確認的目標移至下一個ILUN,然後回到步驟803,將以上流程再做一遍。
請參照第11C圖,若是由節點B(步驟822)進入本流程,表示之前查詢主機身分紀錄表(Host-ID Table)時,找不到下命令的主機身分(Host ID),因此,也不會有關聯的主機代號(Host Number)。在此情況下,於一實施例中,儲存虛擬化控制器(SVC)21允許該主機可以存取那些與內部邏輯單元(ILUN)是全域映射(Global Mapping)關係、也就是儲存全域資料(global data)的邏輯碟(LD)/分割區(Partition)。首先在步驟811,以ILUN做為索引(index),由第一個ILUN開始,逐步做確認。步驟812,判斷目前正進行之ILUN是否是最後一個。如果前述判斷結果為“是”,則結束本流程;否則,進入步驟813。步驟813,查詢該進行中ILUN的映射型態為何。如果紀錄該ILUN的映射型態是全域映射(Global Mapping),則進入步驟814,選取代表該ILUN的HLUN代號。如果紀錄該ILUN的映射型態是主機特定映射(Host-specific Mapping),則忽略,直接跳到步驟818,將確認的目標移至下一個ILUN。在步驟814之後,進入步驟815,根據所選取之HLUN代號,查詢主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該選取的HLUN代號是否與邏輯碟/分割區有映射關係。如果以上判斷結果為“是”,進入步驟816,將該HLUN代號加至其主機特定資訊(Host-specific Information)中;否則,進入步驟817,忽略該HLUN代號。步驟818,將確認的目標移至下一個ILUN,然後回到步驟812,將以上流程再做一遍。
若是以可以查詢到主機代號(Host Number)的情況為例,請同時參照第1B圖、第3圖、第4B圖與第11A圖至第11B圖。若是來詢問的主機是Host1 31,且假設查詢主機身分紀錄表(Host-ID Table)後得知:Host1 31在儲存虛擬化子系統(SVS)20內部使用的主機代號(Host Number)為“1”。於是根據主機代號(Host Number)是“1”查詢邏輯單元對照資訊(LUN Cross-reference Information),得到系統保留指派給Host1 31的所有HLUN代號為
“8”、“9”、“10”、“11”、“12”、“13”、“14”、“15”,以下表示為“HLUN8”、“HLUN9”、“HLUN10”、“HLUN11”、“HLUN12”、“HLUN13”、“HLUN14”、“HLUN15”。於是由第一個HLUN8開始,查詢與HLUN8關聯的ILUN 0是何種映射型態?由第1B圖可以知道,ILUN 0是主機特定映射(Host-specific Mapping),於是保留HLUN8。然後進一步查詢主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以確認HLUN8是否與邏輯碟(LD)有映射關係?由第4B圖可以知道,HLUN8 261映射至LD1 231,於是將HLUN8增加至Host1 31的主機特定資訊(Host-specific Information)中。然後,移至下一個HLUN9,查詢與HLUN 9關聯的ILUN 1是何種映射型態?假設是全域映射(Global Mapping),於是改以代表ILUN1的HLUN1取代HLUN9。然後進一步查詢主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以確認HLUN1是否與邏輯碟(LD)有映射關係?由第1B圖可以知道,與HLUN1關聯的LUN1 221(即ILUN1)沒有與任何邏輯碟(LD)有映射關係,於是忽略HLUN1。然後又推移到下一個HLUN10,重複以上作業。當流程進行到確認HLUN12的程序時,可以得知與HLUN12關聯的ILUN4是設定為全域映射(Global Mapping),於是改以代表ILUN4的HLUN4取代HLUN12,且HLUN4 264與LD4 234有映射關係,於是又將HLUN4增加至Host1 31的主機特定資訊(Host-specific Information)中。以下以此類推。當所有的HLUN都確認過後,便可以得到Host1 31的主機特定資訊(Host-specific Information)有“HLUN8”、“HLUN4”、“HLUN5”、“HLUN6”。
請再次參考第7圖,步驟403,該主機(例如:Host0 30)進一步對其可存取的邏輯單元(例如:HLUN0 260、HLUN4 264、HLUN5 265與HLUN6 266)中的某一(或複數個)邏輯單元發出“Inquiry”命令。
步驟404,儲存虛擬化控制器(SVC)21解譯收到的
“Inquiry”命令,可以得知該“Inquiry”命令所針對的主機邏輯單元(HLUN)所唯一對應的邏輯碟(LD)/分割區(Partition)(例如:HLUN0 260對應LD0 230、HLUN4 264對應LD4 234、HLUN5 265對應LD5 235、HLUN6 266對應LD6 236),然後將該邏輯碟(LD)/分割區(Partition)的裝置型態(device type)與特性(Properties)等基本資料回覆給該主機(例如:Host0 30)。
上述步驟404中,儲存虛擬化控制器(SVC)21處理“Inquiry”命令的詳細內容請參考第9圖。首先,在步驟601,查詢第5圖所示之主機身分紀錄表(Host-ID Table),得知來下命令的主機身分(Host ID)所對應之在該儲存虛擬化子系統(SVS)20內部使用的主機代號(Host Number),例如:“0”,本發明表示為“Host0”。同樣地,於本發明的其他實施例中,下命令的主機可能是新上線、且使用者還未設定至主機身分紀錄表(Host-ID Table)之中,因此步驟601的查詢結果也可能是:沒有該主機身分(Host ID)所對應之主機代號(Host Number)。步驟602,根據步驟601所得之結果以及“Inquiry”命令中紀錄的目標邏輯單元代號(LUN Number),查詢邏輯單元對照資訊(LUN Cross-reference Information)與主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),或藉由換算(convert)取代查表的方式,以確認該主機是否可以辨認(recognize)此一邏輯單元。以上所謂「主機是否可以辨認(recognize)此一邏輯單元」是指該邏輯單元(即:HLUN)是否在該主機的主機特定資訊(Host-specific Information)中。因此,需要執行上述第11A圖至第11C圖的流程,以供比對而判斷「主機是否可以辨認(recognize)此一邏輯單元」。至於第11A圖至第11C圖的詳細內容已於前文中說明,在此不再多做贅述。若步驟602測試的結果為“否”,則進入步驟605,回覆該主機其所詢問的裝置未知或沒有裝置型態(unknown or no device type)。若是步驟602測試的結果為“是”,則進入步驟603,根據查詢邏輯單元對照資訊(LUN Cross-reference Information)與主機邏輯單元對邏輯碟/分割區映射
表(HLUN-to-LD/Partition Mapping Table),或藉由換算(convert)取代查表的方式,便可以知道與該目標邏輯單元(本發明中表示為主機邏輯單元(HLUN))映射的邏輯碟(LD)/分割區(Partition)為何。然後,進入步驟604,回覆該主機該目標邏輯單元所映射的邏輯碟(LD)/分割區(Partition)的特性及基本資料。
請再次參考第7圖,步驟405,經過以上步驟後,該主機(例如:Host0 30)便知道有哪些邏輯單元(儲存虛擬化控制器21以HLUN回報)可以存取,其具有什麼特性,據此,該主機(例如:Host0 30)可以對其所知的邏輯單元(例如:HLUN0 250、HLUN4 254、HLUN5 255、HLUN6 256)發出輸出入要求(IO request)以存取資料。
步驟406,儲存虛擬化控制器(SVC)21根據所接收的輸出入要求(IO request)中所攜帶的主機邏輯單元(HLUN)資訊,不做辨識主機身分的工作,便可以知道其關聯的邏輯碟(LD)/分割區(Partition)為何,並可以直接至該邏輯碟(LD)/分割區(Partition)存取資料。
上述步驟406中,儲存虛擬化控制器(SVC)21處理輸出入要求(IO request)的詳細內容請參考第10圖。首先,步驟701,儲存虛擬化控制器(SVC)21解譯輸出入要求(IO request),可以得知其所要存取的邏輯單元(LUN)的代號。因為於本發明中,該邏輯單元(LUN)的代號即是主機邏輯單元(HLUN),而主機邏輯單元(HLUN)與其映射的邏輯碟(LD)/分割區(Partition)之間是唯一的對應關係;因此本發明可以在不用辨識主機身分的情況下,藉由查詢主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),便可以得知該輸出入要求(IO request)的目的地是對應到哪一個邏輯碟(LD)/分割區(Partition)。步驟702,根據以上步驟的結果,直接到對應的邏輯碟(LD)/分割區(Partition)讀取或寫入資料,並將其結果回覆給發出該輸出入要求(IO request)的主機。
值得注意的是,第7圖中主機(Host)發出“Report LUNs”
命令(步驟401)與“Inquiry”命令(步驟401)的順序與次數可能與圖中繪示的實施例有所不同。於其他實施例中,主機(Host)可能先發出“Inquiry”命令、再發出“Report LUNs”命令;再者,發出“Report LUNs”命令與“Inquiry”命令的次數可能也不限於只有一次。無論如何,於本發明中,只要主機(Host)發出“Report LUNs”命令(步驟401),儲存虛擬化控制器(SVC)21便會執行步驟402與其所對應的第8圖的流程。同樣地,只要主機(Host)發出“Inquiry”命令(步驟403),儲存虛擬化控制器(SVC)21便會執行步驟404與其所對應的第9圖的流程。無論以上所述流程之順序與次數為何。
本發明藉由一新定義的主機邏輯單元(HLUN),給予每一邏輯單元(LUN)對邏輯碟(LD)/分割區(Partition)的映射關係有一唯一的主機邏輯單元(HLUN)代碼,並將此主機邏輯單元(HLUN)對外呈現給主機。如此,使得同一儲存系統中的所有主機都辨認到不同的邏輯單元(即:HLUN)。因此,當儲存虛擬化控制器(SVC)21處理任一主機所發出的輸出入要求(IO request)時,可以不必辨識發出輸出入要求(IO request)的主機的身分,便可以正確地到對應的邏輯碟(LD)/分割區(Partition)存取到正確的資料。
Claims (16)
- 一種資料存取的方法,用以存取儲存在一儲存空間的資料,該方法包含以下步驟:一資訊提供步驟,係由一控制器執行,用以根據一主機的身分而提供該主機一主機特定資訊(Host-specific Information)以回應該主機所發出的至少一第一命令;一接收步驟,係由該控制器執行,用以接收由該主機發出之一輸出入請求(IO request);一解譯步驟,係由該控制器執行,用以解譯該輸出入請求,以得知該輸出入請求所攜帶的一邏輯單元代號;一查表步驟,係由該控制器執行,用以不須辨認該主機的身分,藉由查詢一主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該邏輯單元代號所對應的一邏輯碟(LD)/分割區(Partition);一資料存取步驟,係由該控制器執行,用以至該邏輯碟(LD)/分割區(Partition)存取資料;以及一回覆步驟,係由該控制器執行,用以回覆該資料存取步驟的執行結果給該主機。
- 如申請專利範圍第1項所述之資料存取的方法,其中該資訊提供步驟係包含:用以根據該主機的身分而提供該主機該主機特定資訊(Host-specific Information)以回應該主機所發出的一在SCSI標準下的“Report LUNs”命令。
- 如申請專利範圍第1項所述之資料存取的方法,其中該控制器更執行以下步驟以回應該至少一第一命令: 查詢一主機身分紀錄表(Host-ID Table),以得知該主機的身分所對應的一主機代號(Host Number);根據該主機代號(Host Number),查詢或換算一邏輯單元對照資訊(LUN Cross-reference Information)與該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該主機特定資訊(Host-specific Information)而使得該主機可以利用該主機特定資訊來決定如何對該邏輯碟(LD)/分割區(Partition)進行存取;以及回覆該主機特定資訊(Host-specific Information)給該主機。
- 如申請專利範圍第1項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:找出一邏輯單元對照資訊(LUN Cross-reference Information)中與一主機代號(Host Number)關聯的一組相關資料;由該組相關資料中得到一第一主機邏輯單元,並將該第一主機邏輯單元指派給一選定的主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;以及當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/ 分割區(Partition)有映射關係時,增加該選定的主機邏輯單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第1項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:找出一邏輯單元對照資訊(LUN Cross-reference Information)中與一主機代號(Host Number)關聯的一組相關資料;查詢該組相關資料中與一第一主機邏輯單元(HLUN)關聯之一第一內部邏輯單元(ILUN)的映射型態為何;得到一選定的主機邏輯單元(HLUN),當該第一內部邏輯單元(ILUN)的映射型態為一主機特定映射(Host-specific Mapping)時,該選定的主機邏輯單元(HLUN)是該第一主機邏輯單元(HLUN);當該第一內部邏輯單元(ILUN)的映射型態為一全域映射(Global Mapping)時,該選定的主機邏輯單元(HLUN)是代表該第一內部邏輯單元(ILUN)的一代表主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;以及 當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)有映射關係時,增加該選定的主機邏輯單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第1項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:找出一邏輯單元對照資訊(LUN Cross-reference Information)中與一主機代號(Host Number)關聯的一組相關資料;查詢該組相關資料中與一第一主機邏輯單元(HLUN)關聯之一第一內部邏輯單元(ILUN)的映射型態為何;得到一選定的主機邏輯單元(HLUN),當該第一內部邏輯單元(ILUN)的映射型態為一全域映射(Global Mapping)時,該選定的主機邏輯單元(HLUN)是代表該第一內部邏輯單元(ILUN)的一代表主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)有映射關係時,增加該選定的主機邏輯 單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第1項所述之資料存取的方法,其中更包含以下之步驟:該主機發出至少一第二命令給該控制器,要求該控制器回報該至少一第二命令中所指之一目標邏輯單元的裝置型態與特性的基本資料。
- 如申請專利範圍第7項所述之資料存取的方法,其中該至少一第二命令是一在SCSI標準下的“Inquiry”命令。
- 如申請專利範圍第7項所述之資料存取的方法,其中該控制器更執行以下步驟以回應該至少一第二命令:查詢一主機身分紀錄表(Host-ID Table),以得知該主機的身分所對應的一主機代號(Host Number);判斷該主機是否可以辨認該目標邏輯單元;根據該主機代號(Host Number)以及該至少一第二命令所指的該目標邏輯單元,查詢或換算一邏輯單元對照資訊(LUN Cross-reference Information)與該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知與該目標邏輯單元對應之該邏輯碟(LD)/分割區(Partition);以及回覆該主機該目標邏輯單元對應之該邏輯碟(LD)/分割區(Partition)的特性與基本資料。
- 如申請專利範圍第7項所述之資料存取的方法,其中該 控制器更執行以下步驟以回應該至少一第二命令:查詢一主機身分紀錄表(Host-ID Table),以得知該主機的身分所對應的一主機代號(Host Number);判斷該主機是否可以辨認該目標邏輯單元;以及回覆該主機該目標邏輯單元未知或沒有裝置型態(unknown or no device type)。
- 如申請專利範圍第9項或第10項所述之資料存取的方法,其中判斷該主機是否可以辨認該目標邏輯單元的步驟,係藉由比對該目標邏輯單元是否在該主機的該主機特定資訊(Host-specific Information)而達成。
- 如申請專利範圍第11項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:查詢該邏輯單元對照資訊(LUN Cross-reference Information)中與該主機代號(Host Number)關聯的一組相關資料;由該組相關資料中得到一第一主機邏輯單元(HLUN),並將該第一主機邏輯單元指派給一選定的主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;以及當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/ 分割區(Partition)有映射關係時,增加該選定的主機邏輯單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第11項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:找出該邏輯單元對照資訊(LUN Cross-reference Information)中與該主機代號(Host Number)關聯的一組相關資料;查詢該組相關資料中與一第一主機邏輯單元(HLUN)關聯之一第一內部邏輯單元(ILUN)的映射型態為何;得到一選定的主機邏輯單元(HLUN),當該第一內部邏輯單元(ILUN)的映射型態為一主機特定映射(Host-specific Mapping)時,該選定的主機邏輯單元(HLUN)是該第一主機邏輯單元(HLUN);當該第一內部邏輯單元(ILUN)的映射型態為一全域映射(Global Mapping)時,該選定的主機邏輯單元(HLUN)是代表該第一內部邏輯單元(ILUN)的一代表主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;以及 當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)有映射關係時,增加該選定的主機邏輯單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第11項所述之資料存取的方法,其中該主機特定資訊(Host-specific Information)係經由以下步驟產生:找出該邏輯單元對照資訊(LUN Cross-reference Information)中與該主機代號(Host Number)關聯的一組相關資料;查詢該組相關資料中與一第一主機邏輯單元(HLUN)關聯之一第一內部邏輯單元(ILUN)的映射型態為何;得到一選定的主機邏輯單元(HLUN),當該第一內部邏輯單元(ILUN)的映射型態為一全域映射(Global Mapping)時,該選定的主機邏輯單元(HLUN)是代表該第一內部邏輯單元(ILUN)的一代表主機邏輯單元(HLUN);查詢該主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以判斷該選定的主機邏輯單元(HLUN)是否與該邏輯碟(LD)/分割區(Partition)有映射關係;當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)有映射關係時,增加該選定的主機邏輯 單元(HLUN)至該主機特定資訊(Host-specific Information);當該選定的主機邏輯單元(HLUN)與該邏輯碟(LD)/分割區(Partition)沒有映射關係時,忽略該選定的主機邏輯單元(HLUN)。
- 如申請專利範圍第1項所述之資料存取的方法,其中該查表步驟係在一主機特定映射(Host-specific Mapping)的情況下進行。
- 一種資料存取的方法,用以存取儲存在一儲存空間的資料,該方法包含以下步驟:一主機發出至少一第一命令給一控制器,要求該控制器回報該主機一主機特定資訊(Host-specific Information);該控制器更執行以下步驟以回應該至少一第一命令:查詢一主機身分紀錄表(Host-ID Table),以得知該主機的身分所對應的一主機代號(Host Number);查詢或換算一邏輯單元對照資訊(LUN Cross-reference Information),以得知指派給該主機代號的至少一主機邏輯單元(HLUN);對於該至少一主機邏輯單元(HLUN),查詢一主機邏輯單元對邏輯碟/分割區映射表(HLUN-to-LD/Partition Mapping Table),以得知該至少一主機邏輯單元(HLUN)是否與至少一邏輯碟(LD)/分割區(Partition)具有映射關係;以及回覆該主機該至少一主機邏輯單元(HLUN)中與該至 少一邏輯碟(LD)/分割區(Partition)具有映射關係者;該主機發出一輸出入請求(IO request)給該控制器,以對該至少一主機邏輯單元(HLUN)進行存取;以及回應於該輸出入請求,該控制器係針對該具有映射關係之至少一邏輯碟(LD)/分割區(Partition)執行存取資料。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17147209P | 2009-04-22 | 2009-04-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201426317A TW201426317A (zh) | 2014-07-01 |
TWI550407B true TWI550407B (zh) | 2016-09-21 |
Family
ID=42993137
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099106504A TWI431479B (zh) | 2009-04-22 | 2010-03-05 | 資料存取的方法及執行該方法的裝置 |
TW103107919A TWI550407B (zh) | 2009-04-22 | 2010-03-05 | 資料存取的方法及執行該方法的裝置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099106504A TWI431479B (zh) | 2009-04-22 | 2010-03-05 | 資料存取的方法及執行該方法的裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9223516B2 (zh) |
TW (2) | TWI431479B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11221773B2 (en) | 2018-11-08 | 2022-01-11 | Silicon Motion, Inc. | Method and apparatus for performing mapping information management regarding redundant array of independent disks |
TWI768476B (zh) * | 2018-11-08 | 2022-06-21 | 慧榮科技股份有限公司 | 用來進行關於容錯式磁碟陣列的映射資訊管理之方法與裝置以及儲存系統 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102043732A (zh) * | 2010-12-30 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 一种缓存分配方法及装置 |
US8898385B2 (en) | 2011-09-09 | 2014-11-25 | Lsi Corporation | Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment |
US8583840B1 (en) | 2012-04-25 | 2013-11-12 | Lsi Corporation | Methods and structure for determining mapping information inconsistencies in I/O requests generated for fast path circuits of a storage controller |
US9471259B2 (en) * | 2014-01-28 | 2016-10-18 | Netapp, Inc. | Shared storage architecture |
CN107688435B (zh) * | 2016-08-04 | 2022-06-03 | 北京忆恒创源科技股份有限公司 | Io流调节方法与装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200602901A (en) * | 2004-02-12 | 2006-01-16 | Ibm | Architecture and method for managing the sharing of logical resources among separate partitions of a logically partitioned computer system |
US20060101204A1 (en) * | 2004-08-25 | 2006-05-11 | Bao Bill Q | Storage virtualization |
US7051182B2 (en) * | 1998-06-29 | 2006-05-23 | Emc Corporation | Mapping of hosts to logical storage units and data storage ports in a data processing system |
US20070079098A1 (en) * | 2005-10-03 | 2007-04-05 | Hitachi, Ltd. | Automatic allocation of volumes in storage area networks |
US7243196B2 (en) * | 2003-11-28 | 2007-07-10 | Hitachi, Ltd. | Disk array apparatus, and method for avoiding data corruption by simultaneous access by local and remote host device |
US20070168470A1 (en) * | 2005-12-14 | 2007-07-19 | Hitachi, Ltd. | Storage apparatus and control method for the same, and computer program product |
TW200813844A (en) * | 2006-02-28 | 2008-03-16 | Ibm | Method and apparatus for generating unique identifiers for logical partitions |
US7392364B2 (en) * | 2003-12-26 | 2008-06-24 | Hitachi, Ltd. | Storage system having dynamic volume allocation function |
TW200917256A (en) * | 2007-10-04 | 2009-04-16 | Super Talent Electronics Inc | Using various flash memory cells to build USB data flash cards with multiple partitions and autorun function |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4462849B2 (ja) * | 2003-05-30 | 2010-05-12 | 株式会社日立製作所 | データの保護装置、方法およびプログラム |
JP2006048313A (ja) * | 2004-08-04 | 2006-02-16 | Hitachi Ltd | 複数の管理者から管理されるストレージシステムの管理方法 |
JP2009217466A (ja) * | 2008-03-10 | 2009-09-24 | Hitachi Ltd | ストレージ装置、計算機システム及びデータ管理方法 |
JP2010033287A (ja) * | 2008-07-28 | 2010-02-12 | Hitachi Ltd | ストレージサブシステム及びこれを用いたデータ検証方法 |
-
2010
- 2010-03-05 TW TW099106504A patent/TWI431479B/zh not_active IP Right Cessation
- 2010-03-05 US US12/717,954 patent/US9223516B2/en not_active Expired - Fee Related
- 2010-03-05 TW TW103107919A patent/TWI550407B/zh not_active IP Right Cessation
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7051182B2 (en) * | 1998-06-29 | 2006-05-23 | Emc Corporation | Mapping of hosts to logical storage units and data storage ports in a data processing system |
US7243196B2 (en) * | 2003-11-28 | 2007-07-10 | Hitachi, Ltd. | Disk array apparatus, and method for avoiding data corruption by simultaneous access by local and remote host device |
US7392364B2 (en) * | 2003-12-26 | 2008-06-24 | Hitachi, Ltd. | Storage system having dynamic volume allocation function |
TW200602901A (en) * | 2004-02-12 | 2006-01-16 | Ibm | Architecture and method for managing the sharing of logical resources among separate partitions of a logically partitioned computer system |
US20060101204A1 (en) * | 2004-08-25 | 2006-05-11 | Bao Bill Q | Storage virtualization |
US20070079098A1 (en) * | 2005-10-03 | 2007-04-05 | Hitachi, Ltd. | Automatic allocation of volumes in storage area networks |
US20070168470A1 (en) * | 2005-12-14 | 2007-07-19 | Hitachi, Ltd. | Storage apparatus and control method for the same, and computer program product |
TW200813844A (en) * | 2006-02-28 | 2008-03-16 | Ibm | Method and apparatus for generating unique identifiers for logical partitions |
TW200917256A (en) * | 2007-10-04 | 2009-04-16 | Super Talent Electronics Inc | Using various flash memory cells to build USB data flash cards with multiple partitions and autorun function |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11221773B2 (en) | 2018-11-08 | 2022-01-11 | Silicon Motion, Inc. | Method and apparatus for performing mapping information management regarding redundant array of independent disks |
TWI768476B (zh) * | 2018-11-08 | 2022-06-21 | 慧榮科技股份有限公司 | 用來進行關於容錯式磁碟陣列的映射資訊管理之方法與裝置以及儲存系統 |
Also Published As
Publication number | Publication date |
---|---|
US9223516B2 (en) | 2015-12-29 |
TW201426317A (zh) | 2014-07-01 |
TW201039134A (en) | 2010-11-01 |
TWI431479B (zh) | 2014-03-21 |
US20100274977A1 (en) | 2010-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI550407B (zh) | 資料存取的方法及執行該方法的裝置 | |
JP7116381B2 (ja) | クラウド・ベースのランクを使用するデータの動的再配置 | |
US7506101B2 (en) | Data migration method and system | |
JP6409613B2 (ja) | 情報処理装置,マルチパス制御方法及びマルチパス制御プログラム | |
CN109791522B (zh) | 数据迁移的方法、系统及智能网卡 | |
US9009395B2 (en) | Storage subsystem and its data processing method for reducing the amount of data to be stored in nonvolatile memory | |
US8650381B2 (en) | Storage system using real data storage area dynamic allocation method | |
US9542126B2 (en) | Redundant array of independent disks systems that utilize spans with different storage device counts for a logical volume | |
JP5537732B2 (ja) | ストレージシステム | |
US20070050575A1 (en) | Storage system and control method thereof, and computer program product | |
JP7210554B2 (ja) | クラウド・ストレージをランクとして使用するストレージ・システム | |
US20070079098A1 (en) | Automatic allocation of volumes in storage area networks | |
US20100235599A1 (en) | Access control device, storage system, and access control method | |
JP2020533689A (ja) | クラウド・ベースのランクを使用するシン・プロビジョニング | |
JP2005165444A (ja) | ディスクアレイ装置、及びディスクアレイ装置の制御方法 | |
JP5533252B2 (ja) | ディスクアレイ装置及びディスクアレイ装置の制御方法 | |
US6961836B2 (en) | Method and apparatus for mapping storage partitions of storage elements to host systems | |
US9348513B2 (en) | SAS virtual tape drive | |
JP2004355638A (ja) | 計算機システム及びそのデバイスの割り当て方法 | |
US7966448B2 (en) | Storage apparatus and data writing method | |
JP2009129261A (ja) | ストレージシステム及びストレージシステムの外部ボリューム接続経路探索方法 | |
JP6039149B2 (ja) | ストレージ装置及びその制御方法 | |
US20100281191A1 (en) | Striping with SCSI I/O referrals | |
JP6427913B2 (ja) | ストレージシステム、制御装置、ストレージ装置、入出力制御方法、及びプログラム | |
JP5770884B2 (ja) | ストレージ装置及びその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |