JP2008198221A - Automatic capacity expansion method for storage device - Google Patents

Automatic capacity expansion method for storage device Download PDF

Info

Publication number
JP2008198221A
JP2008198221A JP2008068556A JP2008068556A JP2008198221A JP 2008198221 A JP2008198221 A JP 2008198221A JP 2008068556 A JP2008068556 A JP 2008068556A JP 2008068556 A JP2008068556 A JP 2008068556A JP 2008198221 A JP2008198221 A JP 2008198221A
Authority
JP
Japan
Prior art keywords
volume
segment
logical
unit
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008068556A
Other languages
Japanese (ja)
Other versions
JP4369520B2 (en
JP2008198221A5 (en
Inventor
Yoshiki Kano
義樹 加納
Manabu Kitamura
学 北村
Hiroharu Arai
弘治 荒井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008068556A priority Critical patent/JP4369520B2/en
Publication of JP2008198221A publication Critical patent/JP2008198221A/en
Publication of JP2008198221A5 publication Critical patent/JP2008198221A5/ja
Application granted granted Critical
Publication of JP4369520B2 publication Critical patent/JP4369520B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To determine a storage area of a storage device not uniquely but dynamically. <P>SOLUTION: This system monitors a logical block address of a read or write I/O accessed to the logical volume of the storage device from a host. The storage area of the logical volume is dynamically extended based on the acquired logical block address. The storage area of the logical volume is also reduced/expanded by an instruction to reduce/expand capacity of the logical volume to a volume server from a command part of the host. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、記憶装置システムにおいて、オンライン中に逐次容量拡張を行う方法に関する。   The present invention relates to a method for performing sequential capacity expansion while online in a storage device system.

近年、複数のホスト計算機の記憶領域を一つの記憶装置に記憶する動きが盛んになっている。この動きを促している記憶装置の代表的なものとして、ディスクアレイがある。ディスクアレイは装置内部で複数の磁気ディスク記憶装置によって記憶領域の冗長性を持たせることにより信頼性を高め、必要な容量の記憶領域を論理ボリュームとして複数のホストへ提供する。このディスクアレイを用いたときの大きな利点の一つとして、論理ボリュームの容量拡張ができる点が挙げられる。   In recent years, the movement to store the storage areas of a plurality of host computers in one storage device has become popular. A typical storage device that promotes this movement is a disk array. The disk array enhances reliability by providing storage area redundancy by a plurality of magnetic disk storage devices within the apparatus, and provides a storage area having a necessary capacity to a plurality of hosts as a logical volume. One of the major advantages of using this disk array is that the capacity of the logical volume can be expanded.

例えば、計算機がディスクアレイによって提供された論理ボリュームを使い切った場合、ディスクアレイ内部の未使用領域を任意長で切り出した論理ボリュームとして割り当て、計算機がこの論理ボリュームを使用中の論理ボリュームと結合することにより記憶領域を拡張できる。この機能はオンライン中にもボリュームの拡張ができるため、オンラインボリューム拡張と呼ばれる。オンラインボリューム拡張により、時々刻々と増大するデータに対して論理ボリュームの記憶領域の範囲をアプリケーション無停止で拡張するので、アプリケーションの稼動時間を拡大できる。また、ボリューム容量移行時にボリューム間データ移行を行う必要もないのでストレージの管理コストを大幅に削減できる。   For example, when the computer uses up the logical volume provided by the disk array, the unused area inside the disk array is allocated as a logical volume cut out with an arbitrary length, and the computer combines this logical volume with the logical volume in use. The storage area can be expanded. This function is called online volume expansion because the volume can be expanded while online. With online volume expansion, the range of the logical volume storage area is expanded without stopping the application for data that increases every moment, so that the operation time of the application can be expanded. In addition, since it is not necessary to transfer data between volumes when transferring the volume capacity, storage management costs can be greatly reduced.

従来、論理ボリューム利用者はオンラインボリューム拡張をするためには論理ボリューム提供者に連絡して拡張を施さなければならない。一つの企業内で利用するような小規模のサイトでは逼迫したデータの増加が無いため随時オンラインボリューム拡張をする必要がないが、データセンタなどの複数企業が共同で利用するような大規模のサイトでは、急激なデータの増加が複数企業の計算機から生じる可能性があり、随時オンラインボリューム拡張を行う必要性がある。加えて、ディスクアレイなどの記憶領域の利用効率を高めるために、1つの記憶装置で無駄なく   Conventionally, in order to perform online volume expansion, a logical volume user must contact the logical volume provider to perform expansion. A small site that is used within a single company does not need to expand online volume at any time because there is no tight increase in data, but a large site that is used jointly by multiple companies such as a data center. Then, a sudden increase in data may occur from computers of multiple companies, and it is necessary to perform online volume expansion at any time. In addition, in order to increase the efficiency of use of storage areas such as disk arrays, one storage device can be used without waste

記憶装置の記憶領域を無駄なく利用するためには、記憶領域を小さい容量の論理ボリュームの単位で管理して、拡張の度に小さい容量の論理ボリュームで論理ボリュームの拡張を行わなければならない。このような状況下でオンラインボリューム拡張を利用する際、時々刻々と増大するデータにより複数の利用者からオンラインボリューム拡張の要求が同時発生して、論理ボリューム提供者が対応仕切れない場合がある。最悪の場合、オンラインボリューム拡張ができずに計算機の処理停止を余儀なくされるという問題がある。   In order to use the storage area of the storage device without waste, it is necessary to manage the storage area in units of a small capacity logical volume, and to expand the logical volume with a small capacity logical volume each time the expansion is performed. When online volume expansion is used under such circumstances, there are cases in which requests for online volume expansion are simultaneously generated from a plurality of users due to data that increases every moment, and the logical volume provider cannot be partitioned. In the worst case, there is a problem that online volume expansion cannot be performed and the processing of the computer is forced to stop.

論理ボリューム利用者は記憶領域を管理することなく、無限の記憶容量を要求する。一方、論理ボリューム提供者は、論理ボリューム利用者が記憶領域をどのように利用するかを考えることなく、記憶領域を効率よく管理を行い、より迅速に利用者へ提供することを要求する。   The logical volume user requests infinite storage capacity without managing the storage area. On the other hand, the logical volume provider requests to manage the storage area efficiently and provide it to the user more quickly without considering how the logical volume user uses the storage area.

本発明の目的は、記憶資源の利用者と提供者の要求を解決するために、記憶領域を管理する装置によって、計算機のオンライン中に、一元的に管理された記憶領域から動的に適切な容量の記憶領域を割り当てることによって論理ボリュームを拡張することにある。   It is an object of the present invention to solve the demands of users and providers of storage resources by using a storage area management device, which is dynamically appropriate from a centrally managed storage area while the computer is online. The purpose is to expand the logical volume by allocating a storage area of capacity.

本発明の計算機システムは、1台ないし複数のホスト計算機、1台ないし複数のディスク記憶装置、そして、ボリューム提供装置が相互接続された構成をとる。複数のディスク記憶装置を管理するボリューム提供装置は、複数のディスク記憶装置から個々のホスト計算機に対応する論理ボリュームを提供する。ホスト計算機は論理ボリュームへI/O要求を送り、ボリューム提供部はI/O要求のリードやライトが行われる論理ブロックアドレスを読み取り、論理ボリューム上にI/O要求がアクセスした論理ブロックアドレスの記憶領域が存在しない場合、ボリューム提供装置が未使用磁気ディスク記憶装置から記憶領域を割り当て、動的に論理ボリュームの記憶領域を拡張する。また、アプリケーションの指示による任意量での論理ボリュームを縮小する。   The computer system of the present invention has a configuration in which one or more host computers, one or more disk storage devices, and a volume providing device are interconnected. A volume providing device that manages a plurality of disk storage devices provides a logical volume corresponding to each host computer from the plurality of disk storage devices. The host computer sends an I / O request to the logical volume, the volume provider reads the logical block address where the I / O request is read or written, and stores the logical block address accessed by the I / O request on the logical volume. When the area does not exist, the volume providing apparatus allocates a storage area from an unused magnetic disk storage device and dynamically expands the storage area of the logical volume. In addition, the logical volume is reduced by an arbitrary amount according to an application instruction.

本発明によれば、ボリュームサーバの要求に応じて記憶領域をボリュームサーバに付加することにより、ホスト計算機のアプリケーションは、容量を動的に伸縮可能な単一ボリュームを利用できる。   According to the present invention, by adding a storage area to a volume server in response to a request from the volume server, a host computer application can use a single volume whose capacity can be dynamically expanded and contracted.

<第一の実施例>
以下に、発明の実施例を図面を用いて説明する。
<First embodiment>
Embodiments of the present invention will be described below with reference to the drawings.

図1に本発明を適用した計算機システムの構成例を示す。本計算機システムは
、複数のホスト1100、ボリュームサーバ1200、複数の磁気ディスク記憶装置1300から構成される。本実施例では、ホスト1100が1台、磁気ディスク記憶装置1300が3台となっているが、1台ないし複数台あってもよい。また、ホスト1100、ボリュームサーバ1200、そして、磁気ディスク記憶装置1300はCPU、メモリ等を有するが、本発明の実施例の説明に関係がないため説明を省略する。
FIG. 1 shows a configuration example of a computer system to which the present invention is applied. The computer system includes a plurality of hosts 1100, a volume server 1200, and a plurality of magnetic disk storage devices 1300. In this embodiment, there is one host 1100 and three magnetic disk storage devices 1300, but there may be one or more. In addition, the host 1100, the volume server 1200, and the magnetic disk storage device 1300 have a CPU, a memory, and the like.

ホスト1100は、アプリケーション(App)1110、オペレーティングシステム(以下OS)1130、そして、チャネルインターフェイス1140を有する。アプリケーション1110は、ボリューム提供装置であるボリュームサーバ1200から提供されるボリュームをリード処理、ライト処理するDBやファイルシステム等の応用ソフトウエアである。オペレーティングシステム1130は、アプリケーション1110からのI/O要求を受け取りチャネルインターフェイス(I/F)1140へ転送するボリュームデバイス部(rsd0)1131と命令部1132から構成される。OS1130の命令部1132は、OS1130が使用する記憶装置の開始ブロック位置と終了ブロック位置等から構成される論理区画情報の管理とボリュームサーバ1200の動作制御を行うソフトウエアである。   The host 1100 includes an application (App) 1110, an operating system (hereinafter referred to as OS) 1130, and a channel interface 1140. The application 1110 is application software such as a DB or a file system that performs read processing and write processing on a volume provided from the volume server 1200 that is a volume providing device. The operating system 1130 includes a volume device unit (rsd0) 1131 that receives an I / O request from the application 1110 and transfers it to a channel interface (I / F) 1140 and an instruction unit 1132. The command unit 1132 of the OS 1130 is software that manages logical partition information including the start block position and end block position of the storage device used by the OS 1130 and controls the operation of the volume server 1200.

ボリュームサーバ1200から提供される記憶領域である論理ボリュームを示す図4を用いて論理区画情報4100について説明する。本実施例では動的にボリュームを拡張するために、OS1130が扱う論理区画情報の開始ブロック位置は0LBA(4200)で示し、また終了ブロック位置は記憶装置のOSがサポートする最大記憶装置の容量もしくはユーザが利用する記憶容量を示す。もし、最大容量がユーザの利用する記憶容量によって制限された場合、ボリュームサーバ1200によって提供される論理ボリュームの記憶領域もこの終了ブロック位置によって制限される。また、論理区画情報はOS1130の管理下にある記憶装置において開始ブロック位置0LBA(4200)から論理区画情報の保管に必要な領域(4100)分のLBAまでに保管される。通常の保管されるデータは論理区画情報以外の記憶領域(4400)に保管される。   The logical partition information 4100 will be described with reference to FIG. 4 showing a logical volume which is a storage area provided from the volume server 1200. In this embodiment, in order to dynamically expand the volume, the start block position of the logical partition information handled by the OS 1130 is indicated by 0 LBA (4200), and the end block position is the capacity of the maximum storage device supported by the OS of the storage device or Indicates the storage capacity used by the user. If the maximum capacity is limited by the storage capacity used by the user, the storage area of the logical volume provided by the volume server 1200 is also limited by this end block position. Also, the logical partition information is stored in the storage device under the management of the OS 1130 from the start block position 0 LBA (4200) to the LBA for the area (4100) required for storing the logical partition information. Normally stored data is stored in a storage area (4400) other than logical partition information.

図1に示すチャネルI/F1140は、OS1130からのI/Oを外部デバイスへ転送する機能を有するデバイスであり、ファイバチャネルI/FやSCSI I/FなどのブロックデバイスI/Fである。   A channel I / F 1140 shown in FIG. 1 is a device having a function of transferring I / O from the OS 1130 to an external device, and is a block device I / F such as a fiber channel I / F or a SCSI I / F.

ホスト1100とボリュームサーバ1200間並びにボリュームサーバ1200とディスク1300間を制御するコマンドはI/O要求と呼ばれる。I/O要求はSCSIプロトコルなどのブロックデバイスプロトコルのコマンドである。図17にI/O要求のコマンドフォーマットを示す。I/O要求は、オペレーションコード17001、LUN(Logical Unit Number)17002、LBA(Logical Block Address)17003、転送データ長17004を持つ。オペレーションコード17001は、リード処理、ライト処理等を示す番号である。LUN17002は、コマンドが処理を行う論理ボリュームの一意な番号である。LBA17003はボリュームサーバ1200から提供される論理ボリューム上の処理を行う位置である。転送データ長17004は、本I/O要求で一度に処理される量である。   Commands for controlling between the host 1100 and the volume server 1200 and between the volume server 1200 and the disk 1300 are called I / O requests. The I / O request is a command of a block device protocol such as a SCSI protocol. FIG. 17 shows the command format of the I / O request. The I / O request has an operation code 17001, LUN (Logical Unit Number) 17002, LBA (Logical Block Address) 17003, and transfer data length 17004. The operation code 17001 is a number indicating read processing, write processing, and the like. The LUN 17002 is a unique number of the logical volume that is processed by the command. The LBA 17003 is a position where processing on the logical volume provided from the volume server 1200 is performed. The transfer data length 17004 is an amount processed at a time by this I / O request.

ボリュームサーバ1200は、ホスト側のチャネルI/F1210、ホスト1100から要求されたI/O要求の処理と磁気ディスク記憶装置1300の管理を行うボリューム提供部1230、そして、ボリューム提供部1230が要求するI/O要求を磁気ディスク記憶装置1300へ転送するチャネルI/F1220から構成される。ホスト側のチャネルI/F1200は、ホスト1100と接続可能なファイバチャネルI/FやSCSIなどのブロックデバイスI/Fである。本実施例ではホスト1100側と磁気ディスク記憶装置1300側のチャネルは分離しているが、ホスト1100側のチャネルI/F1210と磁気ディスク記憶装置1300側のチャネルI/F1220は共有していてもよい。   The volume server 1200 includes a channel I / F 1210 on the host side, a volume providing unit 1230 that performs processing of I / O requests requested from the host 1100 and management of the magnetic disk storage device 1300, and an I requested by the volume providing unit 1230. It comprises a channel I / F 1220 for transferring the / O request to the magnetic disk storage device 1300. The host-side channel I / F 1200 is a block device I / F such as a fiber channel I / F or SCSI that can be connected to the host 1100. In this embodiment, the channel on the host 1100 side and the magnetic disk storage device 1300 side are separated, but the channel I / F 1210 on the host 1100 side and the channel I / F 1220 on the magnetic disk storage device 1300 side may be shared. .

また、このボリュームサーバ1200はホスト1100に対して無尽蔵の容量を持つ論理ボリュームを提供する。つまり、ホスト1100からボリュームサーバ1200を見たときにボリュームの範囲を決定する論理ブロック番号(LBA)の開始値は0と決まっているが、範囲の終了値であるLBAは規定しなくてもよい。また、範囲の終了値のLBAを規定した場合、その値がボリュームサーバ1200から提供されるボリュームの最大容量となる。   The volume server 1200 provides the host 1100 with a logical volume having infinite capacity. That is, when the volume server 1200 is viewed from the host 1100, the start value of the logical block number (LBA) that determines the volume range is determined to be 0, but the LBA that is the end value of the range may not be specified. . Further, when the LBA of the end value of the range is defined, the value becomes the maximum capacity of the volume provided from the volume server 1200.

ボリュームサーバ1200内のボリューム提供部1230は、I/O監視部1231、容量増減部1232、セグメント管理部1233、I/O処理部1234、そして、物理論理アドレス管理部1235から構成される。セグメント管理部1233は、セグメント管理表2000を内部に持ち、このセグメント管理表2000を使用してボリュームサーバ1200によって提供されるボリュームの記憶領域の管理を行っている。   The volume providing unit 1230 in the volume server 1200 includes an I / O monitoring unit 1231, a capacity increasing / decreasing unit 1232, a segment management unit 1233, an I / O processing unit 1234, and a physical logical address management unit 1235. The segment management unit 1233 has a segment management table 2000 therein, and manages the storage area of the volume provided by the volume server 1200 using the segment management table 2000.

図2のセグメント管理表2000は、ディスク番号(Disk ID)2100、セグメント番号(Segment Number)2200、開始LBA(LBA(START))2300、セグメントの大きさ(Size)2400とそのセグメントの利用状況(In−Use)2500の値を持つ。ディスクID2100は、磁気ディスク記憶装置1300がボリュームサーバ1200に接続された際にSCSI等のブロックレベルプロトコルによって決定されたディスクの一意な識別番号である。セグメントは、個々の磁気ディスク記憶装置1300内で分けられたボリュームサーバ1200で管理される記憶領域の最小単位であり、セグメント番号2200はボリュームサーバ1200でセグメントを管理するための一意な識別番号である。LBA(START)2300はディスクID2100の磁気ディスク記憶装置1300内でセグメントの記憶領域が開始する物理位置を規定する。セグメントの大きさはディスク内のLBA(START)2300から始まる記憶領域の大きさを示す。セグメントの利用状況はセグメントの記憶領域がボリュームサーバ1200によって使用されているか未使用であるかを2つの値によって示す。使用中の場合は1、または未使用の場合は0の値によって利用状況を示す。   The segment management table 2000 in FIG. 2 includes a disk number (Disk ID) 2100, a segment number (Segment Number) 2200, a start LBA (LBA (START)) 2300, a segment size (Size) 2400, and the usage status of the segment ( In-Use) 2500. The disk ID 2100 is a unique identification number of a disk determined by a block level protocol such as SCSI when the magnetic disk storage device 1300 is connected to the volume server 1200. A segment is a minimum unit of a storage area managed by the volume server 1200 divided in each magnetic disk storage device 1300, and a segment number 2200 is a unique identification number for managing the segment by the volume server 1200. . The LBA (START) 2300 defines the physical position where the segment storage area starts in the magnetic disk storage device 1300 with the disk ID 2100. The size of the segment indicates the size of the storage area starting from LBA (START) 2300 in the disk. The usage status of the segment indicates by two values whether the storage area of the segment is used by the volume server 1200 or not. The usage status is indicated by a value of 1 when in use, or 0 when not in use.

次に、物理論理アドレス管理部1235ではボリュームサーバ1200によって提供される論理ボリュームとデータが保管される磁気ディスク記憶装置1300との間の物理論理アドレス管理を行う。この論理ボリュームと実データが存在する磁気ディスク記憶装置1300を管理する手段として、物理論理アドレス管理部1235内に図3の物理論理管理表3000をもつ。物理論理管理表3000は論理ユニット番号(LUN)3100、セグメント番号(Segment Number)3200、LUN LBA(START)3300、そして、LUN LBA(END)3400が管理される。LUN3100は論理ユニット番号と呼ばれ、ボリュームサーバ1200からホスト1100へ提供される論理ボリュームの一意な番号である。セグメント番号3200はセグメント管理部1233で管理されている記憶領域の一意な番号である。LUN3100により提供される論理ボリュームは複数のセグメントから構成され、論理ボリュームの論理ブロック番号(LBA)は物理論理管理表3000の個々のLUN3100内で若いセグメントのLBAから古いセグメントのLBAの順に連続して結合されている。   Next, the physical logical address management unit 1235 performs physical logical address management between the logical volume provided by the volume server 1200 and the magnetic disk storage device 1300 in which data is stored. As a means for managing the magnetic disk storage device 1300 in which this logical volume and actual data exist, the physical logical address management unit 1235 has the physical logical management table 3000 shown in FIG. In the physical logical management table 3000, a logical unit number (LUN) 3100, a segment number (Segment Number) 3200, a LUN LBA (START) 3300, and a LUN LBA (END) 3400 are managed. The LUN 3100 is called a logical unit number and is a unique number of a logical volume provided from the volume server 1200 to the host 1100. The segment number 3200 is a unique number of the storage area managed by the segment management unit 1233. The logical volume provided by the LUN 3100 is composed of a plurality of segments, and the logical block number (LBA) of the logical volume is consecutive in the order of the young segment LBA to the old segment LBA in each LUN 3100 of the physical logical management table 3000. Are combined.

例えば、図3でLUN0(3500)の時にセグメント番号1(3510)、セグメント番号2(3520)、セグメント番号3(3530)の順に結合され、図4のようにLUN0(4000)の 単一論理ボリュームとしてホスト1100に提供される。LUN LBA(START)3300はLUN内でセグメントが使用するLBAの開始位置が示されている。LUN LBA(END)3400はLUN内でセグメントが使用するLBAの終了位置が示されている。I/O監視部1231は、ホスト1100から磁気ディスク記憶装置1300へアクセスされる個々のI/O要求内のLBAを監視する。I/O処理部1234は実際のリード/ライトのI/O処理を行う。容量増減部1232は、I/O監視部1231もしくはホスト1100の命令部1132から要求された容量の増減処理を行う。   For example, when LUN 0 (3500) in FIG. 3, segment number 1 (3510), segment number 2 (3520), and segment number 3 (3530) are combined in this order, and LUN 0 (4000) single logical volume as shown in FIG. To the host 1100. The LUN LBA (START) 3300 indicates the start position of the LBA used by the segment in the LUN. The LUN LBA (END) 3400 indicates the end position of the LBA used by the segment in the LUN. The I / O monitoring unit 1231 monitors LBAs in individual I / O requests accessed from the host 1100 to the magnetic disk storage device 1300. The I / O processing unit 1234 performs an actual read / write I / O process. The capacity increasing / decreasing unit 1232 performs a capacity increasing / decreasing process requested from the I / O monitoring unit 1231 or the command unit 1132 of the host 1100.

本実施例では、ボリュームサーバ1200が独立した装置として配置されているが、磁気ディスク記憶装置1300にボリュームサーバ1200の機能を組み込んでもよい。   In this embodiment, the volume server 1200 is arranged as an independent device, but the function of the volume server 1200 may be incorporated in the magnetic disk storage device 1300.

また、本実施例ではセグメント単位でボリューム拡張を行っているが、セグメント管理部1233と物理論理アドレス管理部1235を例えば、Log Structuredファイルシステム等の容量拡張可能なファイルシステムとして見なすと、セグメント管理表2000と物理論理管理表300内の記憶領域の最小単位であるセグメントをファイルシステムの記憶領域の最小単位であるブロックと置き換え、ファイルシステムのファイルをボリュームサーバ1200より提供されるLUN3100が付けられた論理ボリュームと見なすことができる。つまり、セグメント管理部1233と物理論理アドレス管理部1235をファイルシステムに置き換えても、ブロック単位で動的に拡張可能な論理ボリュームを提供できる。
(動作の説明)
次に、ボリュームサーバ1200の動作を図5を用いて説明をする。ホスト1100からボリュームサーバ1200へI/O要求が発行された後(ステップ5001)、ボリュームサーバ1200は受信したI/O要求の処理をボリューム提供部1230で行う(ステップ5002)。I/O要求の処理が終了するとI/O要求の処理完了通知をホスト1100へ発行する(ステップ5003)。ホストはI/O完了通知を受信して(ステップ5004)、処理を終了する。ボリュームサーバ1200のボリューム提供部1230は一見すると従来の磁気ディスク記憶装置1300の制御部と同じ動作に見えるが、ボリュームを無限に拡張する機構が施されている。以下では、この機構が備わっているボリューム提供部1230の内部動作を説明する。
In this embodiment, volume expansion is performed on a segment basis. However, when the segment management unit 1233 and the physical logical address management unit 1235 are regarded as a file system whose capacity can be expanded, such as a Log Structured file system, the segment management table The logical unit with the LUN 3100 provided by the volume server 1200 is replaced by replacing the segment which is the smallest unit of the storage area in the 2000 and the physical logical management table 300 with the block which is the smallest unit of the storage area of the file system. It can be regarded as a volume. That is, even if the segment management unit 1233 and the physical logical address management unit 1235 are replaced with a file system, a logical volume that can be dynamically expanded in units of blocks can be provided.
(Description of operation)
Next, the operation of the volume server 1200 will be described with reference to FIG. After an I / O request is issued from the host 1100 to the volume server 1200 (step 5001), the volume server 1200 processes the received I / O request at the volume providing unit 1230 (step 5002). When the processing of the I / O request is completed, an I / O request processing completion notification is issued to the host 1100 (step 5003). The host receives the I / O completion notification (step 5004) and ends the process. At first glance, the volume providing unit 1230 of the volume server 1200 appears to operate in the same manner as the control unit of the conventional magnetic disk storage device 1300, but has a mechanism for infinitely expanding the volume. Hereinafter, an internal operation of the volume providing unit 1230 provided with this mechanism will be described.

ボリューム提供部1230は、I/O監視部1231、I/O処理部1234、物理論理アドレス管理部1235、容量増減部1232、そして、セグメント管理部1233の連携により動作する。図1のボリューム提供部1230の拡大図1236内の太い線はI/O要求の流れを表し、細い線は制御の流れを示す。まず、ホスト 側I/F1210から流されたI/O要求はI/O監視部1231で処理され、その後I/O処理部1234で個々のI/O要求のLBAを物理論理変換した後、個々の磁気ディスク記憶装置1300に対してリード/ライト処理が行われる。この処理の流れに従い個々の部について説明する。   The volume providing unit 1230 operates in cooperation with the I / O monitoring unit 1231, the I / O processing unit 1234, the physical logical address management unit 1235, the capacity increase / decrease unit 1232, and the segment management unit 1233. A thick line in the enlarged view 1236 of the volume providing unit 1230 in FIG. 1 indicates a flow of I / O requests, and a thin line indicates a flow of control. First, an I / O request sent from the host-side I / F 1210 is processed by the I / O monitoring unit 1231, and then the I / O processing unit 1234 performs physical-to-logical conversion of the LBA of each I / O request, Read / write processing is performed on the magnetic disk storage device 1300. Each part will be described in accordance with this processing flow.

I/O監視部1231の動作について図6を用いて説明する。各LUNにおける論理ボリュームの既存の確保領域容量は図3の物理論理管理表3000のセグメント番号と各セグメントのサイズ2400が記載されている図2のセグメント管理表2000よりLUN内の各セグメントのサイズ2400を合算して計算する(ステップ6001)。ホスト1100からのI/O要求が送られるとI/O要求が論理ボリューム上のアクセスされるLBAを検出する(ステップ6002)。アクセスされるLBAより確保されている領域が大きい場合(ステップ6003)、物理論理アドレス管理部1235へI/O処理を要求する(ステップ6005)。アクセスされるLBAより確保されている領域が小さい場合(ステップ6003)、容量増減部1232へ容量確保の要求を行い(ステップ6004)、I/O処理部1234へI/O処理を要求(ステップ6005)する。   The operation of the I / O monitoring unit 1231 will be described with reference to FIG. The existing reserved area capacity of the logical volume in each LUN is the size 2400 of each segment in the LUN from the segment management table 2000 of FIG. 2 in which the segment number of the physical logical management table 3000 of FIG. 3 and the size 2400 of each segment are described. Are calculated (step 6001). When an I / O request is sent from the host 1100, the LBA accessed on the logical volume is detected by the I / O request (step 6002). When the area secured is larger than the accessed LBA (step 6003), the I / O processing is requested to the physical logical address management unit 1235 (step 6005). When the area secured from the accessed LBA is smaller (step 6003), a request for securing the capacity is made to the capacity increasing / decreasing unit 1232 (step 6004), and an I / O process is requested to the I / O processing unit 1234 (step 6005). )

次に、容量増減部1232の処理動作について図7を用いて説明する。I/O監視部1231からの要求とホスト1100の命令部1132からの要求とで動作が異なる。まず、I/O監視部1231からの動作について説明する。I/O監視部1231から容量増加の命令が要求される(ステップ7001)とボリューム増加処理(ステップ7002)を行い、処理を終了する。一方、ホスト1100の命令部1132から全容量の中からmLBA分の容量減少の命令が要求されると(ステップ7001)、mLBA分のボリューム減少処理を行う(ステップ7003)。   Next, the processing operation of the capacity increasing / decreasing unit 1232 will be described with reference to FIG. The operation differs between a request from the I / O monitoring unit 1231 and a request from the command unit 1132 of the host 1100. First, the operation from the I / O monitoring unit 1231 will be described. When a command to increase capacity is requested from the I / O monitoring unit 1231 (step 7001), volume increase processing (step 7002) is performed, and the processing ends. On the other hand, when a command to reduce the capacity for mLBA is requested from the command unit 1132 of the host 1100 (step 7001), volume reduction processing for mLBA is performed (step 7003).

ボリューム増加処理(ステップ 7002)では、セグメント管理部1233と物理論理アドレス管理部1235と連携して次の処理が行われる(図8)。まず、セグメント管理部1233へ未使用セグメントの取得要求をセグメント番号パラメータSN=−1として行う(ステップ 8001)。セグメント管理部1233では、要求されたセグメントが存在する場合セグメント番号パラメータSNにセグメント番号(SN>=0)を入れて戻し、要求されたセグメントが存在しない場合SN=−1を戻す(ステップ8002)。セグメント番号を受け取った容量増減部1232はセグメント番号パラメータSNが正数であるか否かを判別する(ステップ8003)。SN>=0の場合には処理を継続し、SN<0の場合はエラーを戻し(ステップ 8006)、処理を終了する。容量増減部1232ではセグメント管理部1233より取得したセグメント番号SNを元に物理論理アドレス管理部1235へボリューム結合要求をする(ステップ8004)。物理論理アドレス管理部1235では、セグメント番号を元に物理論理管理表3000へ目的のLUNである論理ボリュームの最後尾セグメントに対してセグメントを結合して(ステップ8005)、処理を終了する。この物理論理アドレス管理部1235の具体的な動作については後述する。   In the volume increase processing (step 7002), the following processing is performed in cooperation with the segment management unit 1233 and the physical logical address management unit 1235 (FIG. 8). First, an unused segment acquisition request is sent to the segment management unit 1233 as the segment number parameter SN = −1 (step 8001). In the segment management unit 1233, when the requested segment exists, the segment number parameter SN is returned with the segment number (SN> = 0), and when the requested segment does not exist, SN = −1 is returned (step 8002). . The capacity increasing / decreasing unit 1232 that has received the segment number determines whether or not the segment number parameter SN is a positive number (step 8003). If SN> = 0, the process is continued. If SN <0, an error is returned (step 8006), and the process is terminated. The capacity increase / decrease unit 1232 makes a volume connection request to the physical logical address management unit 1235 based on the segment number SN acquired from the segment management unit 1233 (step 8004). Based on the segment number, the physical logical address management unit 1235 combines the segment with the last segment of the logical volume that is the target LUN to the physical logical management table 3000 (step 8005), and ends the process. Specific operation of the physical logical address management unit 1235 will be described later.

一方、ボリューム減少処理(ステップ 7003)は次の処理が行われる(図9)。縮小容量がmLBAの時、縮小後の論理ボリューム領域が存在しない一つもしくは複数のセグメント番号を物理論理管理表3000から取得する(ステップ9001)。セグメント取得手順としては、まず、物理論理管理表3000より終了LBA(3400)よりLBA(END)−mとして縮小後のLBA算出する。この縮小後のLBAを元にして目的のLUN上で縮小後のLBAと重複していない一つないし複数のセグメント番号(SN)を取得する。   On the other hand, the volume reduction process (step 7003) is performed as follows (FIG. 9). When the reduced capacity is mLBA, one or a plurality of segment numbers in which no reduced logical volume area exists are acquired from the physical logical management table 3000 (step 9001). As a segment acquisition procedure, first, a reduced LBA is calculated from the physical logical management table 3000 as LBA (END) -m from the end LBA (3400). Based on the reduced LBA, one or more segment numbers (SN) that do not overlap with the reduced LBA are acquired on the target LUN.

次に、これらのセグメントを物理論理アドレス管理部1235へセグメントの返還要求を行う(ステップ9002)。物理論理アドレス管理部1235は受け取ったセグメントを物理論理管理表3000上のLUNで指定される論理ボリュームのリストからセグメント番号と一致する列(SN3200、LBA(START)3300、LBA(END)3400)を切り離す(ステップ9003)。容量増減部1232はセグメント管理部1233へ切り離されたセグメント番号SNを未使用セグメントとして管理するように命令する(ステップ9004)。セグメント管理部1233では、切り離されたセグメントを未使用セグメントとして管理する(ステップ9005)。ホスト1100に論理ボリュームが切り離されたことを通知する(ステップ9006)。以上で、ボリューム縮小の処理手順を終了する。   Next, a return request for these segments is made to the physical logical address management unit 1235 (step 9002). The physical logical address management unit 1235 sets the columns (SN 3200, LBA (START) 3300, LBA (END) 3400) matching the segment number from the list of logical volumes specified by the LUN on the physical logical management table 3000 for the received segment. Disconnect (step 9003). The capacity increasing / decreasing unit 1232 instructs the segment management unit 1233 to manage the segment number SN thus separated as an unused segment (step 9004). The segment management unit 1233 manages the separated segment as an unused segment (step 9005). The host 1100 is notified that the logical volume has been disconnected (step 9006). This is the end of the volume reduction processing procedure.

セグメント管理部1233は、容量増減部1232より命令を受けたときに、セグメント管理表2000に記載されているセグメントの使用状況の管理とセグメント追加・削除を管理する。セグメント使用状況の管理は前述したセグメント管理表2000の管理手順に従う。   When the segment management unit 1233 receives an instruction from the capacity increase / decrease unit 1232, the segment management unit 1233 manages the use status of segments described in the segment management table 2000 and the addition / deletion of segments. The management of the segment usage status follows the management procedure of the segment management table 2000 described above.

セグメント使用状況の管理の動作について、図10を用いて説明する。まず、容量増減部1232よりボリューム増減要求が引き数のセグメント番号と共に渡される。セグメント番号<0のとき 未使用セグメント取得要求と判断され(ステップ10001)、ステップ10002へ処理を続ける。未使用セグメント取得要求は、未使用ボリュームが存在の可否をセグメント管理表2000を用いて調べる(ステップ10002)。未使用ボリュームが無ければ(ステップ10002)、エラーとして容量増減部1232へ通知する(ステップ10005)。未使用セグメントが存在する場合(ステップ10002)、未使用セグメントのセグメント番号を容量増減部1232へ戻す(ステップ10003)。そして、セグメント管理表のセグメントに対応する使用状況を、使用中を示す1に変更して(ステップ10004)、ステップ10007に進む。
一方、セグメント番号>=0の時(ステップ10001)、セグメントの未使用状態へ移す動作と判断され、ステップ10006で処理を継続する。ステップ10006でセグメント管理表2000よりセグメント番号に対応する使用状況を未使用の0にして、ステップ10006に進む。ステップ10007では、セグメント管理表2000の利用状態2400の項目を用いて使用中セグメントの数と全セグメント数よりセグメントの利用率(使用中セグメント数/全セグメント数)を計算して、利用率が90%以上の可否を判別する。90%以上の場合、保守員に磁気ディスク記憶装置1300の追加を依頼して(ステップ10008)、処理を終了する。利用率が90%以下の場合はそのまま処理を終了する。利用率のしきい値である90%は、保守員がシステムの信頼性に応じて可変に変更できるものとする。以上で、セグメント管理部1233のボリューム使用状況管理の動作についての説明を終了する。
The operation of managing the segment usage status will be described with reference to FIG. First, a volume increase / decrease request is passed from the capacity increase / decrease unit 1232 together with an argument segment number. When segment number <0, it is determined as an unused segment acquisition request (step 10001), and the processing continues to step 10002. The unused segment acquisition request checks whether or not an unused volume exists using the segment management table 2000 (step 10002). If there is no unused volume (step 10002), it notifies the capacity increasing / decreasing unit 1232 as an error (step 10005). If there is an unused segment (step 10002), the segment number of the unused segment is returned to the capacity increasing / decreasing unit 1232 (step 10003). Then, the usage status corresponding to the segment in the segment management table is changed to 1 indicating in use (step 10004), and the process proceeds to step 10007.
On the other hand, when the segment number> = 0 (step 10001), it is determined that the operation moves to the unused state of the segment, and the processing is continued in step 10006. In step 10006, the usage status corresponding to the segment number is set to 0 which is not used from the segment management table 2000, and the process proceeds to step 10006. In step 10007, the usage rate 290 of the segment management table 2000 is used to calculate the segment usage rate (number of used segments / total number of segments) from the number of used segments and the total number of segments. % Or not is determined. If it is 90% or more, the maintenance staff is requested to add the magnetic disk storage device 1300 (step 10008), and the process is terminated. If the usage rate is 90% or less, the process is terminated as it is. It is assumed that 90%, which is the threshold value of the utilization rate, can be changed variably by the maintenance staff depending on the reliability of the system. This is the end of the description of the volume usage status management operation of the segment management unit 1233.

次に、磁気ディスク記憶装置1300の追加・削除の動作を図11を用いて説明する。ボリューム追加・削除の動作をステップ11001で判断する。追加の場合はステップ11005へ進み、削除の場合はステップ11002へ進む。磁気ディスク記憶装置1300の追加の場合、ステップ11005で磁気ディスク記憶装置1300の容量を確認する(ステップ11005)。確認された容量を元にセグメントの数ならびに大きさを決定する(ステップ11006)。セグメントの数並びに大きさは、固定値もしくは保守員による指定される値のどちらでもよい。この値を元にセグメント管理表2000の最後尾へ、磁気ディスク記憶装置1300の追加毎に、ディスク ID2100、セグメントのセグメント番号2200、開始位置2300、セグメントの大きさ2400、そして、利用状況2500として未使用を表す0を挿入して(ステップ11007)、処理を終了する。   Next, operations for adding / deleting the magnetic disk storage device 1300 will be described with reference to FIG. The operation of volume addition / deletion is determined in step 11001. If it is added, the process proceeds to step 11005. If it is deleted, the process proceeds to step 11002. When the magnetic disk storage device 1300 is added, the capacity of the magnetic disk storage device 1300 is confirmed in step 11005 (step 11005). The number and size of segments are determined based on the confirmed capacity (step 11006). The number and size of segments may be fixed values or values specified by maintenance personnel. Based on this value, every time a magnetic disk storage device 1300 is added to the end of the segment management table 2000, the disk ID 2100, the segment number 2200, the start position 2300, the segment size 2400, and the usage status 2500 are not yet used. Inserting 0 representing use (step 11007), the process is terminated.

一方、ボリューム削除の場合、該当のセグメント番号のセグメントが未使用セグメントか否かを判断する(ステップ11002)。未使用セグメントである場合、セグメント管理表2000よりそのセグメント番号の列を削除する(ステップ11003)。該当セグメントが未使用セグメントでない場合(ステップ 11002)、エラーとして戻し、処理を終える(ステップ11004)。   On the other hand, in the case of volume deletion, it is determined whether or not the segment with the corresponding segment number is an unused segment (step 11002). If it is an unused segment, the segment number column is deleted from the segment management table 2000 (step 11003). If the segment is not an unused segment (step 11002), it is returned as an error, and the process is terminated (step 11004).

以上で、セグメント管理部1233のセグメント追加・削除の動作について説明を終了する。セグメント管理部1233は、以上で説明された手順でセグメントの使用状況の管理と追加・削除の動作を行う。   This is the end of the description of the segment addition / deletion operation of the segment management unit 1233. The segment management unit 1233 performs segment usage status management and addition / deletion operations according to the procedure described above.

I/O処理部1234の動作処理を図12を用いて説明する。まずI/O監視部1231よりI/O処理部1234へ送られたI/O要求はI/O要求のLBAを物理アドレスへ変換することを物理論理アドレス管理部1235へ要求する(ステップ12001)。次に、I/O要求の種別を判別する(ステップ12002)。リード I/Oの場合、物理アドレスを用いて磁気ディスク記憶装置1300よりデータを読み出し(ステップ12003)、読み出されたデータをホスト1100に戻す(ステップ12004)。ライト I/Oの場合、物理アドレスを用いて磁気ディスク記憶装置1300へデータを書き込み(ステップ12005)、書き込みが完了したことをホスト1100に通知する(ステップ12006)。以上でI/O処理部1234の動作を手順の説明を終了する。   The operation process of the I / O processing unit 1234 will be described with reference to FIG. First, an I / O request sent from the I / O monitoring unit 1231 to the I / O processing unit 1234 requests the physical logical address management unit 1235 to convert the LBA of the I / O request into a physical address (step 12001). . Next, the type of I / O request is determined (step 12002). In the case of read I / O, data is read from the magnetic disk storage device 1300 using the physical address (step 12003), and the read data is returned to the host 1100 (step 12004). In the case of write I / O, data is written to the magnetic disk storage device 1300 using the physical address (step 12005), and the completion of the writing is notified to the host 1100 (step 12006). This is the end of the description of the procedure of the operation of the I / O processing unit 1234.

物理論理アドレス管理部1235の動作は2つの動作に分かれる。まず、I/O処理部1234から要求される物理論理アドレス変換手順である。この変換手順を図13を用いて説明し、実際の物理アドレスと論理アドレスとの物理論理間の構造を図14を用いて説明する。変換の際には次の規則を使う。まず、I/O要求のターゲットとなっているLUNに対するセグメント群を選ぶ(ステップ13001)。LBAから物理側のディスク番号とLBAを算出する(ステップ13002)。   The operation of the physical logical address management unit 1235 is divided into two operations. First, a physical logical address conversion procedure requested from the I / O processing unit 1234 will be described. This conversion procedure will be described with reference to FIG. 13, and the structure between the physical and actual physical addresses will be described with reference to FIG. Use the following rules for conversion: First, a segment group for the LUN that is the target of the I / O request is selected (step 13001). The physical disk number and LBA are calculated from the LBA (step 13002).

算出する手順は、まず、ターゲットのLUNが属する複数のセグメント群からI/O要求に記載されているLBAtargetを元に物理論理管理表3000から各セグメントの開始LBAを参照してLBAtarget(14300)がアクセスするセグメント番号(SN)を選ぶ。判明したセグメント番号SNよりセグメント管理表2000を用いて、LBAtargetが(14300)アクセスするディスクID、セグメントの磁気ディスク装置の先頭から物理アドレスを割り出す。N番目のセグメントの先頭物理アドレスLBAN(14003)からデータが操作されるセグメント上のアドレスはLBAtarget−LBANであるので、磁気ディスク記憶装置1300の先頭からセグメントの物理アドレスは、(セグメントの先頭LBA LBAsegstart)+(LBA−LBAN)(14005)である。I/O処理部1234へディスクID2100、ディスクID2100の磁気ディスク記憶装置1300のLBAである(セグメントの先頭LBA LBAsegstart)+(LBA−LBAN)(14005)を戻す(ステップ13003)。   First, the LBA target (14300) refers to the start LBA of each segment from the physical logical management table 3000 based on the LBA target described in the I / O request from a plurality of segment groups to which the target LUN belongs. Select the segment number (SN) to access. Using the segment management table 2000 from the segment number SN that has been found, the LBA target (14300) calculates the disk ID to be accessed and the physical address from the beginning of the segment magnetic disk device. Since the address on the segment on which data is operated from the head physical address LBAN (14003) of the Nth segment is LBAtarget-LBAN, the physical address of the segment from the head of the magnetic disk storage device 1300 is (the head LBA LBA segstart of the segment). ) + (LBA-LBAN) (14005). The LBA (start LBA LBA segstart of segment) + (LBA-LBAN) (14005) which is the LBA of the disk ID 2100 and the magnetic disk storage device 1300 with the disk ID 2100 is returned to the I / O processing unit 1234 (step 13003).

もう一つの物理論理アドレス管理部1235の動作は、ボリュームの物理論理管理表3000への追加と削除である。この動作を図15を用いて説明する。物理論理管理表内のLUNを選択する(ステップ15001)。ボリュームの追加の際(ステップ15002)、容量増減部1232より追加されるセグメント番号が与えられ、追加されるLUNボリュームにおいてセグメント列の最後尾にセグメントを追加する(ステップ15003)。この際、ホスト1100から追加されたセグメントの見え方は、LBAは、LBAN(14003)からLBAN+SIZEN(14004)のアドレス間に追加ボリュームが存在する。ボリュームを削除する際には(ステップ15002)、容量増減部1232よりmLBA分が削除される命令を受けた後、削除されるLUNボリューム内のセグメント列の最後尾よりセグメント単位毎にmLBA分の容量を削除する(ステップ15004)。削除されたセグメントはセグメント番号を容量増減部1232へ戻す(ステップ15005)。以上で物理論理アドレス管理部1235の動作の説明を終了する。   Another operation of the physical logical address management unit 1235 is addition and deletion of the volume to the physical logical management table 3000. This operation will be described with reference to FIG. A LUN in the physical logical management table is selected (step 15001). When a volume is added (step 15002), a segment number added by the capacity increasing / decreasing unit 1232 is given, and a segment is added to the end of the segment column in the LUN volume to be added (step 15003). At this time, as to how the segment added from the host 1100 appears, the LBA has an additional volume between addresses LBAN (14003) and LBAN + SIZE (14004). When deleting a volume (step 15002), after receiving an instruction to delete mLBA from the capacity increase / decrease unit 1232, the capacity of mLBA for each segment unit from the end of the segment column in the LUN volume to be deleted Is deleted (step 15004). The deleted segment returns the segment number to the capacity increasing / decreasing unit 1232 (step 15005). Above, description of operation | movement of the physical logical address management part 1235 is complete | finished.

ホスト1100の命令部1132は、アプリケーション1110側で使用するボリューム内のデータの容量を縮小した後、アプリケーションからもしくはユーザから指示を受け、ボリュームサーバ1200から提供される論理ボリュームの記憶領域をセグメント単位毎に縮小する命令をI/F1140経由でボリュームサーバ1200へ命令するプログラムである。図16を用いて、この動作を説明する。   The command unit 1132 of the host 1100 reduces the capacity of data in the volume used on the application 1110 side, and then receives an instruction from the application or the user, and sets the storage area of the logical volume provided from the volume server 1200 for each segment unit. Is a program for instructing the volume server 1200 via the I / F 1140. This operation will be described with reference to FIG.

まず、アプリケーション1110からボリュームのmLBA分の縮小の要求を受ける(ステップ16001)。命令部1132では、OS1130の下で管理されている論理ボリュームの論理区画情報の最終ブロック位置をmLBA分縮小する(ステップ16002)。命令部1132より容量がmLBA分のボリュームをボリュームサーバの容量増減部1232へ発行する(ステップ16003)。容量増減部1232はボリューム縮小処理を行い(ステップ16004)、ホスト1100側にその結果を戻す。以上で命令部1132の動作の説明を終了する。   First, the application 1110 receives a request to reduce the volume of mLBA (step 16001). The command unit 1132 reduces the final block position of the logical partition information of the logical volume managed under the OS 1130 by mLBA (step 16002). The command unit 1132 issues a volume having a capacity of mLBA to the volume server capacity increasing / decreasing unit 1232 (step 16003). The capacity increasing / decreasing unit 1232 performs volume reduction processing (step 16004), and returns the result to the host 1100 side. This is the end of the description of the operation of the command unit 1132.

次に、アプリケーション1110との連携動作を示す。前述したように、ホスト1100はボリュームサーバ1200から提供される論理ボリュームを既存のボリュームとして取扱うことができるが、ボリュームサーバ1200側でLUNが示すボリュームが保持しているセグメント以上のボリュームへのアクセスが生じた時に、ボリュームがセグメント管理部1233より追加される。この動作は、前述したボリューム提供部1230の動作と同じである。   Next, a cooperative operation with the application 1110 is shown. As described above, the host 1100 can handle the logical volume provided from the volume server 1200 as an existing volume. However, the volume server 1200 can access a volume that is larger than the segment held by the volume indicated by the LUN. When it occurs, the volume is added from the segment management unit 1233. This operation is the same as the operation of the volume providing unit 1230 described above.

一方、アプリケーション1110が自ら拡張したボリュームの容量整理等を行い、実際のアプリケーション1110で使用されている容量が減った時には、ホスト1100の命令部1132へ、アプリケーション1110側で、削減前後における差分の容量を伝え、前述のホスト1100の命令部1132経由でのボリュームサーバでの前述のボリューム縮小手順(図16)を実行する。これらの手順で、ボリュームサーバで使用中のセグメント数をアプリケーション1110の動作にあわせて適切な論理ボリューム容量を提供できる。
<第二の実施例>
第一の実施例では、ホスト1100が、ボリュームサーバ1300から提供される論理ボリュームの記憶領域外へライトI/Oアクセスが発生時に、ボリュームサーバ1200が逐次記憶領域を割り当てることによって、ボリュームサーバ1200から提供される論理ボリュームへの記憶領域拡張を実施した。第二の実施例では、アプリケーション1110の指示によってホスト1100の命令部1300経由で予め論理ボリュームの記憶容量拡張を行い、OS1130によって論理ボリュームの記憶容量の大きさを認知した上でアプリケーション1110に利用可能にする。この手順について図18を用いて説明する。
On the other hand, when the capacity of the volume expanded by the application 1110 itself is reduced and the capacity used in the actual application 1110 decreases, the capacity of the difference before and after the reduction is sent to the command unit 1132 of the host 1100 on the application 1110 side. And the above-described volume reduction procedure (FIG. 16) in the volume server via the command unit 1132 of the host 1100 is executed. With these procedures, it is possible to provide an appropriate logical volume capacity in accordance with the operation of the application 1110 with the number of segments being used in the volume server.
<Second Example>
In the first embodiment, when a write I / O access occurs outside the storage area of the logical volume provided from the volume server 1300 by the host 1100, the volume server 1200 allocates the storage area sequentially, thereby The storage area was expanded to the provided logical volume. In the second embodiment, the storage capacity of the logical volume is expanded in advance via the command unit 1300 of the host 1100 according to the instruction of the application 1110, and the OS 1130 can recognize the size of the storage capacity of the logical volume and use it for the application 1110. To. This procedure will be described with reference to FIG.

まず、ホスト1000の命令部1132はアプリケーション1110からlLBAの記憶領域の拡張要求を受け取る(ステップ18001)。ホスト1100の命令部1132は、該当論理ボリュームの全容量と拡張領域分mLBAの合算したLBAへライトI/Oを発行する。ボリュームサーバ1200のI/O監視部1231は、ボリュームサーバが提供しているボリュームよりmLBA分拡張しているので容量増減部1232への容量拡張処理を行う(ステップ18003)。ライトI/Oが成功して記憶領域が増加した場合、ステップ18005を行い、失敗したときには記憶領域拡張を行わず処理は終了する。ステップ18005ではホスト1100の命令部1132は、ボリュームサーバ1200から提供される該当論理ボリュームに対するOS1130の論理区画情報の終了ブロック数をmLBA分増加する。以上で、アプリケーション1110経由でボリュームサーバ1200から提供される論理ボリュームの記憶領域拡張手順について説明を終了する。   First, the command unit 1132 of the host 1000 receives an lLBA storage area expansion request from the application 1110 (step 18001). The command unit 1132 of the host 1100 issues a write I / O to the LBA obtained by adding up the total capacity of the corresponding logical volume and the extended area mLBA. The I / O monitoring unit 1231 of the volume server 1200 performs capacity expansion processing to the capacity increasing / decreasing unit 1232 because the volume is expanded by mLBA from the volume provided by the volume server (step 18003). If the write I / O succeeds and the storage area increases, step 18005 is performed. If the storage area fails, the storage area is not expanded and the process ends. In step 18005, the command unit 1132 of the host 1100 increases the number of end blocks of the logical partition information of the OS 1130 for the corresponding logical volume provided from the volume server 1200 by mLBA. This is the end of the description of the procedure for expanding the storage area of the logical volume provided from the volume server 1200 via the application 1110.

記憶装置システムの構成図。The block diagram of a memory | storage device system. セグメント管理表2000を示す図。The figure which shows the segment management table 2000. FIG. 物理論理管理表3000を示す図。The figure which shows the physical logical management table 3000. FIG. LUN0(4000)とセグメント1(3410)、セグメント2(3420)、セグメント3(3410)の論理構造関係を示す図。The figure which shows the logical structure relationship of LUN0 (4000), segment 1 (3410), segment 2 (3420), and segment 3 (3410). ホスト1100とボリュームサーバ1200間で処理されるI/Oの動作フロー。An operation flow of I / O processed between the host 1100 and the volume server 1200. I/O監視部1231の動作フロー。The operation flow of the I / O monitoring unit 1231. 容量増減部1232の動作フロー。The operation flow of the capacity increasing / decreasing unit 1232. セグメント管理部1233、容量増減部1232、物理論理アドレス管理部1235間のボリューム拡張処理の動作フロー。An operation flow of volume expansion processing among the segment management unit 1233, the capacity increase / decrease unit 1232, and the physical logical address management unit 1235. セグメント管理部1233、容量増減部1232、物理論理アドレス管理部1235間のボリューム縮小処理の動作フロー。An operation flow of volume reduction processing among the segment management unit 1233, the capacity increase / decrease unit 1232, and the physical logical address management unit 1235. セグメント管理部1233のセグメント使用状況管理の動作フロー。The operation flow of the segment use condition management of the segment management part 1233. FIG. セグメント管理部1233のディスク追加・削除時の動作フロー。An operation flow at the time of disk addition / deletion by the segment management unit 1233. I/O処理部1234の動作フロー。The operation flow of the I / O processing unit 1234. 物理論理アドレス管理部1235の物理論理アドレス変換の動作フロー。The operation | movement flow of physical logical address conversion of the physical logical address management part 1235. FIG. LUN14000、セグメント14201とセグメント14202、磁気ディスク記憶装置14100間の論理構造関係を示す図。The figure showing the logical structural relationship among LUN 14000, segment 14201 and segment 14202, and magnetic disk storage device 14100. 物理論理アドレス管理部1235のセグメントの物理論理管理表への追加削除時の動作フロー。The operation | movement flow at the time of the addition and deletion of the segment to the physical logical management table of the physical logical address management part 1235. ホスト1100内の命令部1132とボリュームサーバ1200内の容量増減部1232間の論理ボリューム記憶容量拡張時の動作フロー。An operation flow at the time of expanding the logical volume storage capacity between the command unit 1132 in the host 1100 and the capacity increase / decrease unit 1232 in the volume server 1200. I/Oコマンドの物理フォーマットを示す図。The figure which shows the physical format of an I / O command. ホスト1100内の命令部1132とボリュームサーバ1200内の容量増減部1232間の論理ボリューム記憶容量拡張時の動作フロー。An operation flow at the time of expanding the logical volume storage capacity between the command unit 1132 in the host 1100 and the capacity increase / decrease unit 1232 in the volume server 1200.

符号の説明Explanation of symbols

1100:ホスト、1110:アプリケーション、1130:オペレーティングシステム(OS)、1131:ボリュームデバイス部、1132:命令部、1140:チャネルインターフェイス、1200:ボリュームサーバ、1210:チャネルインターフェイス、1220:チャネルインターフェイス、1230:ボリューム提供部、1231:I/O監視部、1232:容量増減部、1233:セグメント管理部、1234:I/O処理部、1235:物理論理アドレス管理部、1236:ボリューム提供部、1300:磁気ディスク記憶装置 1100: Host, 1110: Application, 1130: Operating system (OS), 1131: Volume device part, 1132: Command part, 1140: Channel interface, 1200: Volume server, 1210: Channel interface, 1220: Channel interface, 1230: Volume Providing unit, 1231: I / O monitoring unit, 1232: capacity increasing / decreasing unit, 1233: segment managing unit, 1234: I / O processing unit, 1235: physical logical address managing unit, 1236: volume providing unit, 1300: magnetic disk storage apparatus

Claims (5)

少なくとも1台のホスト計算機及び少なくとも1台のディスク記憶装置に接続されたボリューム提供装置における容量自動拡張方法は、
前記ホスト計算機から論理ボリュームへのI/O要求を受け付け、
前記I/O要求のアクセス対象の論理ブロックアドレスを読み取り、
前記I/O要求がアクセスした論理ブロックアドレスの記憶領域が論理ボリューム上に存在しない場合、未使用ディスク記憶装置から記憶領域を割り当て、動的に論理ボリュームの記憶領域を拡張することを特徴とする記憶装置の容量自動拡張方法。
An automatic capacity expansion method in a volume providing device connected to at least one host computer and at least one disk storage device is:
Accepts an I / O request from the host computer to the logical volume,
Read the logical block address to be accessed of the I / O request,
When the storage area of the logical block address accessed by the I / O request does not exist on the logical volume, a storage area is allocated from an unused disk storage device and the storage area of the logical volume is dynamically expanded. A method for automatically expanding the capacity of a storage device.
少なくとも1台のホスト計算機及び少なくとも1台のディスク記憶装置に接続されたボリューム提供装置における容量自動拡張方法は、
前記ホスト計算機から論理ボリュームの縮小要求を受け付け、
前記縮小要求の対象となる論理ブロックアドレスを読み取り、
前記縮小要求が指定した論理ブロックアドレスの記憶領域を縮小することを特徴とする記憶装置の容量自動拡張方法。
An automatic capacity expansion method in a volume providing device connected to at least one host computer and at least one disk storage device is:
Accept a logical volume reduction request from the host computer,
Read the logical block address subject to the reduction request,
An automatic capacity expansion method for a storage device, wherein the storage area of a logical block address designated by the reduction request is reduced.
アプリケーションからの指示に基づいて論理ボリュームの記憶領域を拡張することを特徴とする請求項1記載の記憶装置の容量自動拡張方法。   2. The method for automatically expanding the capacity of a storage device according to claim 1, wherein the storage area of the logical volume is expanded based on an instruction from an application. アプリケーションからの指示に基づいて論理ボリュームの記憶領域を縮小することを特徴とする請求項2記載の記憶装置の容量自動拡張方法。   3. The method for automatically expanding the capacity of a storage device according to claim 2, wherein the storage area of the logical volume is reduced based on an instruction from an application. 少なくとも1台のホスト計算機及び少なくとも1台のディスク記憶装置に接続されたボリューム提供装置は、
前記ホスト計算機から論理ボリュームへのI/O要求を受け付ける手段、
前記I/O要求のアクセス対象の論理ブロックアドレスを読み取る手段、
前記I/O要求がアクセスした論理ブロックアドレスの記憶領域が論理ボリューム上に存在しない場合、未使用ディスク記憶装置から記憶領域を割り当て、動的に論理ボリュームの記憶領域を拡張する手段を有することを特徴とするボリューム提供装置。
The volume providing device connected to at least one host computer and at least one disk storage device is:
Means for receiving an I / O request from the host computer to the logical volume;
Means for reading a logical block address to be accessed by the I / O request;
Means for allocating a storage area from an unused disk storage device and dynamically expanding the storage area of the logical volume when the storage area of the logical block address accessed by the I / O request does not exist on the logical volume; A volume providing apparatus.
JP2008068556A 2008-03-17 2008-03-17 Volume control apparatus and method Expired - Lifetime JP4369520B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008068556A JP4369520B2 (en) 2008-03-17 2008-03-17 Volume control apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008068556A JP4369520B2 (en) 2008-03-17 2008-03-17 Volume control apparatus and method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001204305A Division JP4175788B2 (en) 2001-07-05 2001-07-05 Volume controller

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009026882A Division JP2009151807A (en) 2009-02-09 2009-02-09 Storage device

Publications (3)

Publication Number Publication Date
JP2008198221A true JP2008198221A (en) 2008-08-28
JP2008198221A5 JP2008198221A5 (en) 2008-10-09
JP4369520B2 JP4369520B2 (en) 2009-11-25

Family

ID=39757032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008068556A Expired - Lifetime JP4369520B2 (en) 2008-03-17 2008-03-17 Volume control apparatus and method

Country Status (1)

Country Link
JP (1) JP4369520B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086114A (en) * 2008-09-30 2010-04-15 Hitachi Ltd Computer system and capacity management method in computer system
US11907746B2 (en) 2020-09-25 2024-02-20 Hitachi, Ltd. Compound storage system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130282998A1 (en) 2012-04-24 2013-10-24 Hitachi, Ltd. Backup system and backup method
JP6114397B2 (en) 2013-03-18 2017-04-12 株式会社日立製作所 Hybrid storage system and storage control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086114A (en) * 2008-09-30 2010-04-15 Hitachi Ltd Computer system and capacity management method in computer system
US11907746B2 (en) 2020-09-25 2024-02-20 Hitachi, Ltd. Compound storage system

Also Published As

Publication number Publication date
JP4369520B2 (en) 2009-11-25

Similar Documents

Publication Publication Date Title
JP4175788B2 (en) Volume controller
US9411746B2 (en) Computer system, computer and method for performing thin provisioning capacity management in coordination with virtual machines
US7127557B2 (en) RAID apparatus and logical device expansion method thereof
EP2254036B1 (en) Storage apparatus and data copy method
JP4464378B2 (en) Computer system, storage system and control method for saving storage area by collecting the same data
US20110066823A1 (en) Computer system performing capacity virtualization based on thin provisioning technology in both storage system and server computer
US7380090B2 (en) Storage device and control method for the same
JP6459644B2 (en) Storage control device, control system, and control program
JP2008186172A (en) Storage module and capacity pool free capacity adjustment method
JP2010073095A (en) Computer system and control method therefor
JPH08101782A (en) System and method for control of storage
JP2013515979A (en) Storage device
JP2014514622A (en) Storage system including flash memory and storage control method
US20150293719A1 (en) Storage Space Processing Method and Apparatus, and Non-Volatile Computer Readable Storage Medium
US8037276B2 (en) Computer system, storage area allocation method, and management computer
WO2018158808A1 (en) Information system, management program, and program exchanging method for information system
JP4369520B2 (en) Volume control apparatus and method
JP5597266B2 (en) Storage system
JP6636159B2 (en) Storage device
JP2009151807A (en) Storage device
JP2010113727A (en) Control method and storage system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080815

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081209

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090209

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090410

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090820

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090827

R150 Certificate of patent or registration of utility model

Ref document number: 4369520

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

EXPY Cancellation because of completion of term