JP4261532B2 - Logical disk management method and virtualization apparatus - Google Patents
Logical disk management method and virtualization apparatus Download PDFInfo
- Publication number
- JP4261532B2 JP4261532B2 JP2005265261A JP2005265261A JP4261532B2 JP 4261532 B2 JP4261532 B2 JP 4261532B2 JP 2005265261 A JP2005265261 A JP 2005265261A JP 2005265261 A JP2005265261 A JP 2005265261A JP 4261532 B2 JP4261532 B2 JP 4261532B2
- Authority
- JP
- Japan
- Prior art keywords
- slice
- array
- information
- logical disk
- data
- 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.)
- Expired - Lifetime
Links
Images
Description
本発明は、少なくとも1台のディスクドライブの記憶領域を利用して構成される、ホスト計算機から単一のディスク領域として認識される論理ディスクを管理する論理ディスク管理方法及び仮想化装置に関する。 The present invention relates to a logical disk management method and a virtualization apparatus that manage a logical disk that is recognized as a single disk area from a host computer and that is configured using a storage area of at least one disk drive.
一般にディスクアレイ装置は、複数のディスクドライブ、例えばハードディスクドライブ(HDD)と、これらのHDDと接続されたアレイコントローラとを備えている。アレイコントローラは、一般に知られているRAID(Redundant Arrays of Independent Disks,Redundant Arrays of Inexpensive Disks)の手法により複数のHDDを管理する。つまりアレイコントローラは、ホスト(ホスト計算機)からのデータ読み出し/書き込み要求に対し、当該コントローラに接続された複数のHDDを並列に動かすことにより、データの読み出し/書き込みを分散して実行する。これによりディスクアレイ装置においては、ホストから要求されたデータアクセスの高速化を図ることが可能となる。またディスクアレイ装置においては、ディスクの冗長構成によって信頼性の向上を図ることも可能となる。 Generally, a disk array device includes a plurality of disk drives, for example, hard disk drives (HDD), and an array controller connected to these HDDs. The array controller manages a plurality of HDDs by a commonly known RAID (Redundant Arrays of Independent Disks, Redundant Arrays of Inexpensive Disks) method. In other words, in response to a data read / write request from a host (host computer), the array controller executes data read / write in a distributed manner by moving a plurality of HDDs connected to the controller in parallel. As a result, in the disk array device, it is possible to increase the speed of data access requested from the host. In the disk array device, the reliability can be improved by the redundant configuration of the disks.
従来のディスクアレイ装置では、ホストから認識される論理ディスクの領域の物理的な配置は固定的である。このため、従来のディスクアレイ装置では、論理ディスクのブロックアドレスとそれに対応するアレイの構成との関係は基本的に変化することがない。同様に、論理ディスクのブロックアドレスとそれに対応するHDDのブロックアドレスとの関係も基本的に変化することがない。 In the conventional disk array device, the physical arrangement of logical disk areas recognized by the host is fixed. For this reason, in the conventional disk array device, the relationship between the block address of the logical disk and the array configuration corresponding thereto does not basically change. Similarly, the relationship between the block address of the logical disk and the corresponding block address of the HDD does not basically change.
一方、ディスクアレイ装置では、当該ディスクアレイ装置の運用を開始した結果、論理ディスクへのアクセス負荷が当初の計画と異なる場合がある。また、時間と共にアクセス負荷が変化する場合もある。このような場合、従来のディスクアレイ装置では、論理ディスクを構成するアレイやHDDにおいてボトルネックやホットスポットが発生しても、これを解消することは容易ではない。その理由は、論理ディスクとアレイとの対応や、論理ディスクとHDDとの対応が固定的であるためである。ボトルネックやホットスポットの発生を解消するためには、論理ディスクに格納されているデータを例えばテープにバックアップした上で、論理ディスクを改めて作り直す作業が必要となる。また、作り直された論理ディスクに上記テープからデータをリストアする作業も必要となる。なお、ホットスポットとは、HDDのある領域にアクセス負荷が集中する状態を意味する。 On the other hand, in the disk array device, as a result of starting operation of the disk array device, the access load to the logical disk may differ from the original plan. In addition, the access load may change with time. In such a case, in the conventional disk array device, even if a bottleneck or a hot spot occurs in the array or HDD constituting the logical disk, it is not easy to eliminate it. This is because the correspondence between the logical disk and the array and the correspondence between the logical disk and the HDD are fixed. In order to eliminate the occurrence of bottlenecks and hot spots, it is necessary to back up the data stored in the logical disk to, for example, a tape and then recreate the logical disk. In addition, it is necessary to restore data from the tape to the re-created logical disk. Note that a hot spot means a state in which an access load is concentrated in a certain area of the HDD.
また、最近では複数のホストがディスクアレイ装置を共有する場合も多い。このような場合、ディスクアレイ装置と接続されるホストの数の増加などによりアクセス負荷が変化し、ボトルネックやホットスポットが発生することも考えられる。 Recently, a plurality of hosts often share a disk array device. In such a case, an access load may change due to an increase in the number of hosts connected to the disk array device, and a bottleneck or a hot spot may occur.
しかし、従来のディスクアレイ装置では、論理ディスクの領域の物理的な配置が固定的である。このため、一度運用を開始してしまうと、アクセス負荷の変化へ対応することは容易ではない。 However, in the conventional disk array device, the physical arrangement of logical disk areas is fixed. For this reason, once the operation is started, it is not easy to cope with a change in access load.
そこで、例えば特許文献1は、各HDD(物理ディスク)の入出力(I/O)処理の性能(I/O性能)を表す値を用いることで各物理ディスクのI/O性能に合った最適な論理ディスクの再配置を行う技術(以下、先行技術と称する)を開示している。この先行技術においては、各HDDのビジー率が最適ビジー率に近づけられる。
上述の先行技術では、論理ディスクの再配置により論理ディスク全体ではアクセス負荷を軽減できる。しかしながら、先行技術では、論理ディスク単位に当該論理ディスクが再配置される。このため、論理ディスクを構成するアレイやHDDにおいてボトルネックやホットスポットが発生している場合に、そのボトルネックやホットスポットの発生を解消することは容易ではない。 In the above-described prior art, the access load on the entire logical disk can be reduced by rearranging the logical disks. However, in the prior art, the logical disk is rearranged in units of logical disks. For this reason, when a bottleneck or hot spot occurs in an array or HDD constituting a logical disk, it is not easy to eliminate the occurrence of the bottleneck or hot spot.
本発明は上記事情を考慮してなされたものでその目的は、アクセス性能の向上が図れる論理ディスク管理方法及び仮想化装置を提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a logical disk management method and a virtualization apparatus capable of improving access performance.
本発明の1つの観点によれば、少なくとも1台のディスクドライブの記憶領域を利用して構成され、且つホスト計算機から単一のディスクボリュームとして認識される論理ディスクを管理する論理ディスク管理方法が提供される。この方法は、前記少なくとも1台のディスクドライブの記憶領域を1つの物理的なアレイ領域として定義することによって構成される、スライスの集合からなるアレイであって、当該物理的なアレイ領域が一定の容量にて複数の領域に分割され、その分割された領域が前記スライスとして定義されるアレイを構成するステップと、前記アレイに含まれているスライスうちの任意の複数のスライスを組み合わせて論理ディスクを構成するステップと、前記論理ディスクを構成するスライス毎に、当該スライスを対象とするアクセス処理に関する統計情報を取得して記憶手段に格納するステップと、前記スライス毎に取得された統計情報に基づいて、リードアクセスの負荷が一定レベルより高いスライスを検出するステップと、検出されたスライスが配置された前記アレイ内の第1の領域のデータの複製を格納するための第2の領域を前記アレイとは別のアレイに配置するステップと、ホスト計算機から前記論理ディスクの前記第1の領域に含まれているスライスのデータをリードすることが要求された場合、前記アレイ内の前記第1の領域または前記別のアレイ内の前記第2の領域の何れか一方の対応するスライスからデータをリードするステップと、前記ホスト計算機から前記論理ディスクの前記第1の領域に含まれているスライスにデータをライトすることが要求された場合、前記アレイ内の前記第1の領域及び前記別のアレイ内の前記第2の領域のそれぞれ対応するスライスに同一のデータをライトするステップとを具備する。 According to one aspect of the present invention, there is provided a logical disk management method that manages a logical disk that is configured using a storage area of at least one disk drive and that is recognized as a single disk volume by a host computer. Is done. This method is an array composed of a set of slices defined by defining a storage area of the at least one disk drive as one physical array area, and the physical array area is constant. A logical disk is formed by combining a step of forming an array in which the divided area is defined as the slice and a plurality of slices included in the array. On the basis of the step of configuring, the step of acquiring the statistical information relating to the access processing for the slice for each slice constituting the logical disk and storing it in the storage means, and the statistical information acquired for each slice Detecting a slice having a read access load higher than a certain level and detecting the detected slice A second area for storing a copy of the data in the first area in the array in which the first and second disks are arranged in a different array from the array; and from the host computer, the first of the logical disk When it is requested to read the data of the slice included in the area, the data from the corresponding slice of either the first area in the array or the second area in the other array And when the host computer is requested to write data to a slice included in the first area of the logical disk, the first area in the array and the other area Writing the same data to each corresponding slice of the second region in the array.
本発明によれば、論理ディスクの領域の物理的な配置を仮想的に管理し、装置の運用中に論理ディスクの領域の物理的な配置を部分的に柔軟に変更可能とすることにより、アクセス性能の向上を図ることができる。 According to the present invention, the physical arrangement of the logical disk area is virtually managed, and the physical arrangement of the logical disk area can be partially flexibly changed during operation of the apparatus. The performance can be improved.
以下、本発明の一実施形態につき図面を参照して説明する。
図1は本発明の一実施形態に係るディスクアレイ装置を備えた計算機システムの構成を示すブロック図である。この計算機システムは、ディスクアレイ装置10とホスト(ホスト計算機)20とから構成される。ホスト20は、SCSI(small computer system interface)或いはファイバチャネルのようなホストインタフェースHIによってディスクアレイ装置10と接続されている。ホスト20は、ディスクアレイ装置10を外部記憶装置として利用する。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing a configuration of a computer system provided with a disk array device according to an embodiment of the present invention. This computer system includes a
ディスクアレイ装置10は、少なくとも1つのアレイ(物理アレイ)、例えば図3に示すような4つのアレイ11a(#a),11b(#b),11c(#c)及び11d(#d)を含むアレイの群を有する。但し図1では、アレイの群は作図の都合で省略されている。各アレイは、それぞれ、少なくとも1台のHDD(ハードディスクドライブ)の記憶領域を当該アレイの物理的な領域(アレイ領域)として定義することによって構成される。本実施形態では、各アレイは、複数のHDDの記憶領域を当該アレイの物理的なアレイ領域として定義することによって構成されている。
The
ディスクアレイ装置10はまた、少なくとも1つのアレイコントローラ、例えば2重化されたアレイコントローラ12-1及び12-2を有する。ディスクアレイ装置10は更に、半導体ディスク装置131と、HDD(ハードディスクドライブ)132A(#A),132B(#B),132C(#C)及び132D(#D)を含むHDD群とを有する。
The
半導体ディスク装置131は、バッテリバックアップ型のRAMディスク装置のような、一般にシリコンディスクドライブと呼ばれるストレージデバイスである。つまり半導体ディスク装置131は、複数のダイナミックRAM(DRAM)のようなメモリ素子を用いて構成されるストレージデバイスである。半導体ディスク装置131は、ホストから当該デバイス131にアクセスするのに、HDDに対するのと同様のアクセス方法(インタフェース)が適用できるように設計されている。半導体ディスク装置131はメモリ素子を用いて構成されることから、一般にHDDと比べて非常に高価格で小容量であるが、極めて高速なアクセスが可能である。
The
HDD132A及び132Bは、性能は低いが安価で大容量のHDDであり、アレイを構成するのに用いられる。HDD132C及び132Dは、HDD132A及び132Bと比べて、性能は高いが高価格で小容量のHDDであり、アレイを構成するのに用いられる。HDD132A,132B,132C及び132Dは半導体ディスク装置131と共に、SCSI或いはファイバチャネルのようなストレージインタフェースSIを介して、アレイコントローラ12-1及び12-2と接続されている。アレイコントローラ12-1及び12-2は、ホスト20からのデータ読み出し/書き込み要求に対し、アレイを構成する複数のHDDを並列に動かしてデータの読み出し/書き込みを分散して実行する。アレイコントローラ12-1及び12-2は相互に通信を行うことで常に同一の状態となるように同期化されている。
The
アレイコントローラ12-1及び12-2は、それぞれ、仮想化ユニット120-1及び120-2を有する。仮想化ユニット120-1及び120-2は、任意のアレイ内の複数の任意のスライスを組み合わせて、ホスト20から認識される少なくとも1つの論理ディスクを構成する。スライスについては後述する。仮想化ユニット120-1は、論理ディスク構成部121とメモリ122とから構成される。論理ディスク構成部121は、アレイ/スライス定義部121aと、論理ディスク定義部121bと、スライス移動部121cと、データリード/ライト部121dと、統計情報取得部121eと、検出部121fとを含む。メモリ122の記憶領域の一部は、マップテーブル122aを格納するマップテーブル領域として用いられる。メモリ122の記憶領域の他の一部は、統計情報取得部121eによって取得される後述するI/O統計情報を格納するための統計情報領域(統計情報記憶手段)122bとして用いられる。メモリ122には例えばRAMが用いられる。なお、図1では省略されているが、仮想化ユニット120-2も、仮想化ユニット120-1と同様の構成を有している。
The array controllers 12-1 and 12-2 have virtualization units 120-1 and 120-2, respectively. The virtualization units 120-1 and 120-2 combine at least one arbitrary slice in an arbitrary array to constitute at least one logical disk recognized by the
論理ディスク構成部121は、アレイコントローラ12-1内のプロセッサ(図示せず)が当該コントローラ12-1にインストールされた特定のソフトウェアプログラムを読み取って実行することにより実現されるものとする。このプログラムは、コンピュータで読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード(頒布)されても構わない。
The logical
アレイ/スライス定義部121aは、アレイとスライスとを定義する。このアレイ/スライス定義部121aによるアレイとスライスの定義について、図2(a)及び(b)を参照して説明する。
The array /
アレイ/スライス定義部121aは、少なくとも1つのグループ、例えば複数のグループを定義する。定義されたグループの各々は、少なくとも1台のHDD、例えば複数のHDDを含む。アレイ/スライス定義部121aは、定義されたグループ毎に、それぞれアレイを定義する。ここでは、各アレイは、RAIDの手法により、当該アレイに対応するグループ内の複数のHDDの記憶領域を自身の物理的な領域(アレイ領域)とするアレイとして定義(管理)される。
The array /
まず、図2(a)には、アレイ11a(#a)が示されている。このアレイ11aは、HDD132A,132B,132C及び132Dを含むHDD群のうちの4台のHDDの集合21aから構成され、RAID1+0レベルで管理されるアレイであるものとする。一方、図2(b)には、アレイ11b(#b)が示されている。このアレイ11bは、上記HDD群のうちの5台のHDDの集合21bから構成され、RAID5レベルで管理されるアレイであるものとする。ここでは、説明を簡略化するために、アレイ11a及び11bを構成する2つのグループに共通のHDDは存在しないものとする。この場合、アレイ11a及び11bの物理的な記憶領域(アレイ領域)の容量は、それぞれ、4台のHDDの総容量及び5台のHDDの総容量に等しい。
First, FIG. 2A shows the array 11a (#a). This array 11a is composed of a
アレイ/スライス定義部121aは、アレイ11a及び11bを含む各アレイの記憶領域を、ディスクアレイ装置10内で共通の一定の容量(例えば1GB)で分割する。アレイ/スライス定義部121aは、分割された各々の一定容量の領域をスライスと定義する。つまりアレイ/スライス定義部121aは、各アレイの記憶領域を複数の一定容量のスライスに分割する。これにより、ディスクアレイ装置10内の何れのアレイの何れのスライスも同一容量となる。後述のスライス移動部121cによるスライスの移動のためにはこの点が重要となる。ここでは、各アレイに含まれる各スライスには、当該スライスのID(識別情報)としての番号(スライス番号)が、当該アレイにおけるアドレスの昇順に割り当てられている。つまり、アレイ内の各スライスに割り当てられるスライス番号は、当該スライスのアレイ内の位置(物理位置)をも表す。
The array /
論理ディスク定義部121bは、ホスト20から単一のディスク(ディスクボリューム)として認識される論理ディスクを定義する。この論理ディスク定義部121bによる論理ディスクの定義について、図3を参照して説明する。論理ディスク定義部121bは、少なくとも1つの任意アレイに含まれている複数の任意のスライスを連結する(組み合わせる)。論理ディスク定義部121bは、複数の任意のスライスが連結された(組み合わされた)領域が論理的な記憶領域として管理される論理ディスクを定義する。図3には、4つのアレイ11a,11b,11c及び11dが示されている。この図3の例では、アレイ11a内のスライス#a0と、アレイ11c内のスライス#c0と、アレイ11a内のスライス#a1と、アレイ11d内のスライス#d0とを含むスライス群を組み合わせて(連結して)論理ディスク31-0(#0)が定義される。同様に、アレイ11a内のスライス#a2と、アレイ11b内のスライス#b0と、アレイ11b内のスライス#b1と、アレイ11c内のスライス#c1とを含むスライス群を組み合わせて論理ディスク31-1(#1)が定義される。
The logical
このように、論理ディスクの記憶領域は、スライスの単位で物理的に不連続な割り付けとなる。論理ディスクの容量は、1スライスの容量×スライス数となる。論理ディスクは、最終的にホスト20から単一のディスクボリュームとして認識される単位となる。ホスト20からは、この論理ディスクがあたかも1台のHDDのように認識される。論理ディスクに割り付けられた各スライスには、当該論理ディスクにおけるアドレス(論理アドレス)の昇順にスライス番号が割り当てられる。つまり、論理ディスクに割り付けられた各スライスは、当該論理ディスクにおける位置(論理位置)を表すスライス番号と、対応するアレイにおける位置(物理位置)を表すスライス番号との2つのスライス番号で管理される。
As described above, the storage area of the logical disk is physically discontinuously allocated in units of slices. The capacity of the logical disk is 1 slice capacity × slice number. A logical disk is a unit that is finally recognized as a single disk volume from the
マップテーブル122aは、上記論理ディスクとアレイとを関連付けるための情報(マップ情報)を格納する記憶手段である。このマップテーブル122aのデータ構造例を図4に示す。図4の例では、論理ディスク内のより小さなアドレスに割り付けられたスライスから順に、スライスの情報がマップテーブル122aの行方向に格納される。本実施形態において、論理ディスクに含まれる各スライスの情報は、フィールド(項目)41乃至48に格納される情報を含む。フィールド41は、対応するスライスが割り付けられる論理ディスクのID(識別情報)としての論理ディスク番号を格納するのに用いられる。フィールド42は、対応するスライスの論理ディスクにおけるスライス番号を格納するのに用いられる。フィールド43は、対応するスライスが所属するアレイのIDとしてのアレイ番号を格納するのに用いられ、フィールド44は、当該アレイ内における当該スライスのスライス番号を格納するのに用いられる。フィールド45は、対応するスライスのデータが別のスライスにコピー中であるかを示すコピーフラグを格納するのに用いられる。フィールド46は、対応するスライスのコピー先のアレイを示すアレイ番号を格納するのに用いられる。フィールド47は、対応するスライスのデータのコピー先のアレイ内における、コピー先のスライスのスライス番号を格納するのに用いられる。コピー先のスライスのスライス番号を格納するのに用いられる。フィールド48は、対応するスライスにおいて既にコピーが完了しているデータのサイズを示すサイズ情報を格納するのに用いられる。なお、マップテーブル122aには、アレイ内の各スライスの位置と、そのスライスの対応するHDD内における位置とを関係付ける位置情報は格納されていない。その理由は、アレイ内の各スライスの対応するHDD内における位置は、そのスライスのスライス番号(アレイ内の位置を示すスライス番号)とスライスのサイズとから一意に計算にて求まるためである。勿論、上記位置情報を、マップテーブル122aに格納することは可能である。
The map table 122a is storage means for storing information (map information) for associating the logical disk with the array. An example of the data structure of the map table 122a is shown in FIG. In the example of FIG. 4, slice information is stored in the row direction of the map table 122a in order from the slice assigned to the smaller address in the logical disk. In the present embodiment, the information of each slice included in the logical disk includes information stored in the fields (items) 41 to 48. The
スライス移動部121cは、論理ディスク内の任意のスライスのデータを移動する。この移動は次のように行われる。スライス移動部121cは、任意の論理ディスク内の任意のスライス(第1のスライス)のデータを、当該論理ディスクにエントリされていない(割り付けられていない)別のスライス(第2のスライス)にコピーする。次にスライス移動部121cは、双方のスライスを入れ替える。即ちスライス移動部121cは、前者のスライス(第1のスライス)を上記論理ディスクにエントリされていない状態(未使用の状態)に切り替える。またスライス移動部121cは、後者のスライス(第2のスライス)を上記論理ディスクにエントリされた(割り付けられた)状態に切り替える。
The
このように本実施形態においては、論理ディスクにエントリされる(割り付けられる)スライスを入れ替えるだけで、簡単に論理ディスクを再構成できる。このため、運用開始後も、論理ディスクを停止することなく(つまりオンラインで)、アクセス負荷の変化に容易に対応でき、アクセス性能を向上できる。 As described above, in this embodiment, the logical disk can be easily reconfigured by simply replacing the slices entered (allocated) in the logical disk. For this reason, even after the operation is started, it is possible to easily cope with a change in the access load without stopping the logical disk (that is, online) and to improve the access performance.
このスライス移動部121cによるスライス移動の詳細について、図4のマップテーブル122aを参照して説明する。この例では、論理ディスク番号0の論理ディスクに含まれているスライス番号3のスライスが移動の対象となっているものとする。このスライス番号3のスライスは、アレイ番号2のアレイに含まれているスライス番号10のスライスに対応する。そして、論理ディスク番号0の論理ディスクに含まれているスライス番号3のスライスのデータが、アレイ番号2のアレイに含まれているスライス番号10のスライスから、アレイ番号1のアレイに含まれているスライス番号5のスライスへコピーされるものとする。このスライス番号5のスライスのどの位置までデータのコピーが完了しているかは、フィールド48に格納されているサイズ情報によって示される。
Details of the slice movement by the
スライス移動部121cは、スライス番号3のスライスに格納されている全てのデータのコピーが完了すると、コピー元とコピー先のスライスを入れ替える。即ちスライス移動部121cは、論理ディスク番号0の論理ディスクに含まれているスライス番号3のスライスを、アレイ番号2のアレイに含まれているスライス番号10のスライスから、アレイ番号1のアレイに含まれているスライス番号5のスライスに変更する。これにより、論理ディスク番号0の論理ディスクに含まれているスライス番号3のスライスの物理的な割り付けが、アレイ番号2のアレイに含まれているスライス番号10のスライスから、アレイ番号1のアレイに含まれているスライス番号5のスライスへ移動(変更)されたこととなる。また、コピー完了時には、コピーフラグがクリア(“0”クリア)されると共に、コピー先のアレイを示すアレイ番号及びコピー先のアレイ内のコピー先スライスを示すスライス番号もクリア(“0”クリア)される。
When the copying of all data stored in the slice with
次に、上述のスライス移動部121cによるスライス移動の開始処理及び完了処理の手順について、それぞれ図5のフローチャートを参照して説明する。
まず、スライス移動の開始処理について説明する。スライス移動部121cは、スライス移動の対象となる論理ディスクへのアレイコントローラ12-1によるI/O処理(データ読み出し/書き込み)を一時停止させる(ステップS11)。ここで、移動(コピー)対象となるスライスに対応するマップテーブル122aの行を、マップテーブル122aの行Xと称する。スライス移動部121cはステップS11を実行するとステップS12の処理に進む。このステップS12において、スライス移動部121cは、マップテーブル122aの行Xのフィールド46及び47に、移動(コピー)先のスライスが属するアレイの番号及び当該移動(コピー)先のスライスの番号をそれぞれセットする。
Next, the procedure of the slice movement start process and the completion process by the
First, slice movement start processing will be described. The
次にスライス移動部121cは、マップテーブル122aの行Xのフィールド48に、コピー完了サイズとしてゼロをセットする(ステップS13)。このステップS13においてスライス移動部121cは、マップテーブル122aの行Xのフィールド45に、コピーフラグをセットする。次にスライス移動部121cは、その時点におけるマップテーブル122aの内容、つまりステップS12及びS13で更新された行Xの情報を含むマップ情報をセーブする(ステップS14)。ステップS14において、このマップ情報は、ディスクアレイ装置10内の各HDDに確保されている後述する管理情報領域にそれぞれセーブされる。そしてスライス移動部121cは、スライスコピー(移動)の対象となっていた論理ディスクへのアレイコントローラ12-1によるI/O処理を再開させる(ステップS15)。
Next, the
次に、スライス移動(コピー)の完了処理について説明する。スライス移動部121cは、スライスコピー(移動)の完了時には、当該スライスコピーの対象となっていた論理ディスクへの、アレイコントローラ12-1によるI/O処理を一時停止させる(ステップS21)。次にスライス移動部121cは、マップテーブル122aの行Xのフィールド43及び44の内容を、コピー先のスライスが属するアレイのアレイ番号及び当該コピー先のスライスのスライス番号に、それぞれ変更する(ステップS22)。
Next, slice movement (copy) completion processing will be described. When the slice copy (move) is completed, the
次にスライス移動部121cは、マップテーブル122aの行Xのフィールド46及び47にセットされていた、コピー先のスライスが属するアレイのアレイ番号及び当該コピー先のスライスのスライス番号をそれぞれクリアする(ステップS23)。このステップS23においてスライス移動部121cは、マップテーブル122aの行Xのフィールド49にセットされていたコピーフラグもクリアする。次にスライス移動部121cは、その時点におけるマップテーブル122aの内容、つまりステップS22及びS23で更新された行Xの情報を含むマップ情報をセーブする(ステップS24)。ステップS24において、このマップ情報は、ディスクアレイ装置10内の各HDDに確保されている管理情報領域にそれぞれセーブされる。そしてスライス移動部121cは、スライスコピーの対象となっていた論理ディスクへのアレイコントローラ12-1によるI/O処理を再開させる(ステップS25)。
Next, the
本実施形態では、上述したスライスのコピー(移動)は、当該スライスが割り当てられる論理ディスクの稼動中にオンラインで行うことができる。そのためには、ホスト20からディスクアレイ装置10に送られるデータ書き込み要求に従うデータライト処理が、図6のフローチャートに示す手順でデータリード/ライト部121dによって実行される必要がある。以下、スライスのコピー中に、ホスト20からディスクアレイ装置10に対して当該スライスに対するデータ書き込み要求が送られた場合におけるデータライト処理について、図6を参照して説明する。ここでは、ライト対象となる論理ディスク内のスライスに対応するマップテーブル122aの行を、マップテーブル122aの行Yと称する。
In this embodiment, the above-described slice copy (move) can be performed online while the logical disk to which the slice is assigned is operating. For this purpose, data write processing in accordance with the data write request sent from the
まずデータリード/ライト部121dは、マップテーブル122aの行Yのフィールド45にコピーフラグがセットされている(立っている)かを判定する(ステップS31)。この例では、コピーフラグがセットされている。このように、コピーフラグがセットされているならば、つまりライト対象となるスライスがコピー元としてコピー中であるならば、データリード/ライト部121dは、当該スライスのライトすべき領域のデータのコピーは完了しているかを判定する(ステップS32)。このステップS32の判定は、マップテーブル122aの行Yのフィールド48に設定されているサイズ情報(コピー完了サイズ)に基づいて行われる。
First, the data read /
まず、ライトすべき領域のデータのコピーが完了しているものとする(ステップS32)。この場合、データリード/ライト部121dは、コピー(移動)元のスライス(ライト対象となるスライス)及びコピー(移動)先のスライスの両スライスの対応する領域にデータをライトする(ステップS33)。スライスへのコピーが、途中で何らかの要因により中止されることを考慮すると、コピーが完了した領域については、上述のように、コピー先だけでなくコピー元(オリジナル)のスライスにもライトする2重ライトを行うと良い。
First, it is assumed that the data copy of the area to be written has been completed (step S32). In this case, the data read /
次に、ライト対象となるスライスがコピー中でないか(ステップS31)、或いはライト対象となるスライスがコピー中であってもライトすべき領域のデータのコピーは完了していないものとする(ステップS32)。この場合、データリード/ライト部121dは、ライト対象となるスライス(コピー元のスライス)のライトすべき領域のみにデータをライトする(ステップS34)。
Next, it is assumed that the slice to be written is not being copied (step S31), or even if the slice to be written is being copied, copying of data in the area to be written has not been completed (step S32). ). In this case, the data read /
次に、マップテーブル122aの保存について説明する。マップテーブル122aは、論理ディスクと当該論理ディスクを構成するスライスの物理的な割り付けとを関連付ける重要なテーブルである。したがって、マップテーブル122aに格納されている情報(マップ情報)の消失は、データの消失につながる。このためマップテーブル122aの情報を失うことは、万一アレイコントローラ12-1及び12-2が共に故障したとしても、或いは停電が発生したとしても許されない。それ故、本実施形態では、アレイコントローラ、或いはHDDの故障・交換に対し十分な冗長性を有し、容易に消失することのない保存方法が適用される。更に本実施形態では、図5に示したフローチャートにおいても、マップテーブル122aの情報が失われるのを防止する手順が採用されている。即ち本実施形態では、ホスト20から要求されたI/O処理は、スライスの移動に伴って更新されたマップテーブル122aの情報(マップ情報)のセーブが完了した後に再開される手順が採用されている。
Next, storage of the map table 122a will be described. The map table 122a is an important table that associates a logical disk with physical allocation of slices that constitute the logical disk. Therefore, the loss of information (map information) stored in the map table 122a leads to the loss of data. For this reason, losing information in the map table 122a is not allowed even if both the array controllers 12-1 and 12-2 fail or a power failure occurs. Therefore, in the present embodiment, a storage method that has sufficient redundancy for failure / replacement of the array controller or HDD and that does not easily disappear is applied. Furthermore, in the present embodiment, the procedure for preventing the information in the map table 122a from being lost is also adopted in the flowchart shown in FIG. In other words, in this embodiment, the I / O processing requested from the
上述したように、ディスクアレイ装置10のアレイコントローラ12-1及び12-2には、HDD132A〜132Dを含むHDD群70-nが接続されている。しかし以下では、説明の便宜上、アレイコントローラ12-1及び12-2には、HDDとして、HDD132A〜132Dのみが接続されているものとする。本実施形態では、以下に述べるように、これらのHDD132A〜132Dを利用して、マップテーブル122aの情報が保存される。
As described above, the HDD group 70-n including the
まず、HDD132A〜132Dの記憶領域の一部が管理情報領域71としてそれぞれ確保される。管理情報領域71は、アレイコントローラ12-1及び12-2によるディスクアレイ管理のための情報(管理情報)を保存するのに用いられる特別の領域である。管理情報領域71は、スライスとしての使用から除外される。つまり管理情報領域71は、ユーザがデータを読み出し/書き込みできる領域(ユーザボリューム)としては使用できない。
First, a part of the storage area of the HDDs 132 </ b> A to 132 </ b> D is secured as the
図5中のステップS14及びS24では、更新されたマップテーブル122aの情報(マップ情報)が、図7において矢印72で示されるように、HDD132A〜132Dの各管理情報領域71に多重に保存される。これにより、マップ情報が多重化される。また、マップ情報をマップテーブル122aとしてメモリ122のマップテーブル領域にロードする際には、マップ情報の読み出しが、図7において矢印73で示されるように、HDD132A〜132D内の全て管理情報領域71を対象に行われる。ここでは、読み出された4個のマップ情報が比較され、例えば多数決により、正しいマップ情報が決定される。この決定された正しいマップ情報がマップテーブル122aとしてメモリ122のマップテーブル領域にロードされる。こうすることで、HDD故障やアレイコントローラ故障に耐えることができる。
In steps S14 and S24 in FIG. 5, the updated information (map information) in the map table 122a is stored in multiple in the
図1中の統計情報採取部121eは、スライス毎に、当該スライスに対するI/O処理(アクセス処理)に関する統計的な情報(以下、I/O統計情報と称する)を採取する。この統計情報採取部121eによるスライス毎のI/O統計情報の採取は定期的に行われるものとする。採取されたスライス毎のI/O統計情報は、アレイコントローラ12-1内のメモリ122の統計情報領域122bに格納される。このI/O統計情報は、例えば単位時間当たりのライト回数、リード回数、転送サイズまたはI/O処理時間である。一般的には、この種のI/O統計情報は、前記特許文献1にも記載されているように、論理ディスクやHDDの単位で採取される。しかし本実施形態では、スライスの移動によってアレイやHDDへのアクセス負荷を調整するために、その負荷調整の判断に、スライス単位のI/O統計情報が用いられることに注意されたい。当然、スライス毎の統計情報の示す値を利用する(例えば加算する)ことにより、論理ディスクやアレイレベルでのI/O処理の統計値も算出できる。
The statistical
本実施形態では、上述のスライス毎に取得されたI/O統計情報が利用される。検出部121fは、スライス毎のI/O統計情報を例えば定期的にチェックすることにより、当該I/O統計情報の示す統計値が一定値(しきい値)を超えたスライスを検出する。スライス移動部121cは、I/O統計情報の示す統計値がしきい値を超えたスライスを対象に、予め定義されたポリシーに従って自動的にスライスの移動を行う。これにより、例えば、あるアレイに対するアクセス負荷が当該アレイの能力の一定割合(N%)を超えた場合に、スライス移動部121cが、一定数のスライスを最も負荷の低いアレイの同数のスライスと自動的に交代することもできる。この他に、一定周期でスライスの割り付けを見直し、アクセス負荷の高いスライスにはRAID1+0レベルを適用しているアレイのスライスを使用し、アクセス負荷の低いスライスにはRAID5レベルを適用しているアレイのスライスを使用するよう、スライスを交代することも可能である。
In the present embodiment, I / O statistical information acquired for each slice described above is used. The
次に、統計情報採取部121eによって定期的に採取されるI/O統計情報を利用してスライスの移動を行うことで、論理ディスクのリードアクセス性能(リード性能)の低下を解消する方法について、図8を参照して説明する。
Next, with respect to a method for eliminating a decrease in read access performance (read performance) of a logical disk by moving slices using I / O statistical information periodically collected by the statistical
図8には、複数のスライスから構成される論理ディスク141が示されている。この論理ディスク141は、領域141a(#m)及び141b(#n)を含む。論理ディスク141の領域141a(#m)及び141b(#n)は、それぞれアレイ142-0(#0)の領域142a(#m)及び142b(#n)を構成する物理的に連続する複数のスライスを組み合わせて構成されているものとする。
FIG. 8 shows a
今、ホスト20から、論理ディスク141の領域141a(#m)または141b(#n)に含まれているスライスへのアクセスが要求されたものとする。この場合、物理的には、アレイ142-0(#0)の領域142a(#m)または142b(#n)の対応するスライスがアクセスされる。
Assume that the
論理ディスク141の領域141b(#n)を構成する複数のスライスの各々の単位時間当たりのリード回数は、予め定められたしきい値を超えているものとする。一方、論理ディスク141の領域141a(#m)を構成する複数のスライスの各々の単位時間当たりのリード回数は、上記しきい値を超えていないものとする。つまり論理ディスク141の領域141b(#n)のリードアクセスの負荷(リード負荷)は高く、論理ディスク141の領域141a(#m)のリード負荷は低いものとする。この場合、論理ディスク141へのリードアクセスに関し、当該論理ディスク141の領域141b(#n)に対応するアレイ142-0(#0)の領域142b(#n)がボトルネックとなる。この結果、論理ディスク141のリードアクセス性能が低下する。
It is assumed that the number of reads per unit time of each of a plurality of slices constituting the
検出部121fは、統計情報取得部121eによって取得されて統計情報領域122bに格納されているスライス毎のI/O統計情報の示す単位時間当たりのリード回数に基づき、論理ディスク141においてリード負荷の高いスライスが配置された領域をリード負荷の高い領域として検出することができる。一般に、負荷の高い領域では複数のスライスが連続する。この傾向は、スライスの容量が小さいほど高くなる。そこで以下の説明では、負荷の高い領域は、複数の連続するスライスから構成されているものとするが、これに限るものではない。ここでは検出部121fは、論理ディスク141の領域141b(#n)をリード負荷の高い領域として検出する。
The
するとアレイ/スライス定義部121aは、図8に示す新たなアレイ142-1(#1)を定義する。この定義に従い、スライス移動部121cは、アレイ142-1(#1)に対し、図8において矢印144で示すように、アレイ142-0(#0)の領域142b(#n)の複製(ミラー)となる領域143b(#n)を割り付ける。このアレイ142-1の領域143b(#n)に含まれるスライスは、アレイ142-0(#0)の領域142b(#n)に含まれているスライスの複製となる。アレイ142-0(#0)の領域142b(#n)は、前記したように論理ディスク141の領域141b(#n)に対応する。
Then, the array /
このような状態で、ホスト20からディスクアレイ装置10に対して、論理ディスク141の領域141b(#n)に含まれているスライスへのデータライトが要求されたものとする。この場合、データリード/ライト部121dは、図8において矢印145で示すように、アレイ142-0(#0)の領域142b(#n)及びアレイ142-1(#1)の領域143b(#n)に同一のデータを書き込む。即ちデータリード/ライト部121dは、アレイ142-0(#0)の領域142b(#n)に含まれている対応するスライスにデータを書き込む。同時にデータリード/ライト部121dは、アレイ142-1(#1)の領域143b(#n)に含まれている対応するスライスにも同一データの書き込み(ミラー書き込み)を行う。
In this state, it is assumed that the
一方、ホスト20から論理ディスク141の領域141b(#n)に含まれているスライスからのデータリードが要求された場合、データリード/ライト部121dは、次のようにデータをリードする。即ちデータリード/ライト部121dは、図8において矢印146-0または146-1で示されるように、アレイ142-0(#0)の領域142b(#n)に含まれている対応するスライス及びアレイ142-1(#1)の領域143b(#n)に含まれている対応するスライスの何れか一方からデータをリードする。ここではデータリード/ライト部121dは、リードアクセスが、アレイ142-0(#0)の領域142b(#n)及びアレイ142-1(#1)の領域143b(#n)に分散されるように、当該領域142b(#n)または領域143b(#n)からデータをリードする。例えばデータリード/ライト部121dは、論理ディスク141の領域141b(#n)からのデータリードがホスト20から要求される毎に、アレイ142-0(#0)の領域142b(#n)及びアレイ142-1(#1)の領域143b(#n)から交互にデータをリードする。
On the other hand, when the
このように、本実施形態では、アレイ142-0(#0)内でリード負荷の高いスライスを含む領域142b(#n)の複製となる領域143b(#n)が、アレイ142-0(#0)とは別のアレイ142-1(#1)に割り付けられる。これにより、領域142b(#n)へのリードアクセスを領域143b(#n)に分散することができる。このリードアクセスの分散により、アレイ142-0(#0)における領域142b(#n)のリードアクセスのボトルネックが解消され、論理ディスク141における領域141b(#n)のリード性能が向上する。
As described above, in this embodiment, the region 143b (#n) that is a duplicate of the region 142b (#n) including the slice with a high read load in the array 142-0 (# 0) is the array 142-0 (# 0) is assigned to another array 142-1 (# 1). Thereby, read access to the area 142b (#n) can be distributed to the area 143b (#n). This distribution of read access eliminates the bottleneck of read access in the area 142b (#n) in the array 142-0 (# 0) and improves the read performance of the
次に、論理ディスク141の領域141b(#n)に含まれるスライスへのリードアクセスの頻度が減少し、当該領域141b(#n)のリード負荷が低くなったことが、検出部121fによる定期的な検査によって検出されたものとする。この場合、スライス移動部121cは、アレイ142-0(#0)における領域(複製領域)142b(#n)を解放する。即ちスライス移動部121cは、論理ディスク141の領域141b(#n)に対応するアレイにおける領域の配置を元の状態に戻す。これにより、物理ディスクの限られた容量を有効に利用して、論理ディスクのリードアクセス性能の改善を図ることができる。
Next, the frequency of read accesses to the slices included in the
このように本実施形態においては、ディスクアレイ装置10を運用して行く中で、徐々に変化する論理ディスク141へのアクセス特性に追従し、常に最良の性能を発揮するようデータの物理的な配置を定期的に見直すことにより、常に最良のアクセス性能を維持することができる。
As described above, in this embodiment, the physical arrangement of data is performed so as to follow the gradually changing access characteristic to the
次に、本実施形態で適用される、論理ディスクのライトアクセス性能(ライト性能)の低下を解消する方法について、図9を参照して説明する。図9には、複数のスライスから構成される論理ディスク151が示されている。この論理ディスク151は、領域151a(#m)及び151b(#n)を含む。論理ディスク151の領域151a(#m)及び151b(#n)は、それぞれアレイ152の領域152a(#m)及び152b(#n)を構成する物理的に連続する複数のスライスを組み合わせて構成されているものとする。
Next, a method for eliminating a decrease in write access performance (write performance) of a logical disk applied in this embodiment will be described with reference to FIG. FIG. 9 shows a
図9の例では、論理ディスク151の領域151b(#n)を構成する複数のスライスの各々の単位時間当たりのライト回数は、予め定められたしきい値を超えているものとする。一方、論理ディスク151の領域151a(#m)を構成する複数のスライスの各々の単位時間当たりのライト回数は、上記しきい値を超えていないものとする。この場合、検出部121fは、統計情報取得部121eによって取得されて統計情報領域122bに格納されているスライス毎のI/O統計情報の示す単位時間当たりのライト回数に基づき、論理ディスク151の領域151b(#n)を、ライトアクセスの負荷(ライト負荷)が高い領域として検出する。同様に検出部121fは、論理ディスク151の領域151a(#m)を、ライト負荷が低い領域として検出する。
In the example of FIG. 9, it is assumed that the number of writes per unit time of each of a plurality of slices constituting the
するとアレイ/スライス定義部121aは、半導体ディスク装置131の記憶領域内に、図9において矢印154bで示すように、論理ディスク151の領域151b(#n)に対応する領域153b(#n)を定義する。この定義に従い、スライス移動部121cは、論理ディスク151の領域151b(#n)を構成するスライスを、アレイ152の領域152b(#n)から、半導体ディスク装置131の領域153b(#n)に再配置する。この半導体ディスク装置131は、アレイ152を構成するHDDに比べてアクセス速度が極めて高速アクセスである。したがって、上記の再配置により、論理ディスク151における領域151b(#n)のライト性能が向上する。
Then, the array /
半導体ディスク装置131は、HDDに比べて非常に高価格である。そのため、論理ディスク151を構成する全てのスライスを半導体ディスク装置131に割り付けるのはコストパフォーマンス上不利である。しかしながら、本実施形態においては、論理ディスク151の中でライト負荷が高い領域151bを構成するスライスのみが、半導体ディスク装置131に割り付けられる。これにより、高価格の半導体ディスク装置131の少ない記憶領域を有効に活用することが可能となる。
The
次に、論理ディスク151の領域151b(#n)を構成するスライスへのライトアクセスの頻度が低くなり、当該領域151b(#n)のライト負荷が低くなったことが、検出部121fによって検出されたものとする。この場合、スライス移動部121cは、論理ディスク151の領域151b(#n)に含まれているスライスを、半導体ディスク装置131から、HDDによって構成されるアレイ、例えば元のアレイ152に配置し直す。これにより、高価格の半導体ディスク装置131の限られた容量をより一層有効に利用して、論理ディスクのライトアクセス性能の改善を図ることができる。
Next, the
上述の例では、論理ディスクのライトアクセス性能(ライト性能)の低下を解消する方法について説明した。しかし、論理ディスク151からリード負荷(リードアクセスの負荷)が高い領域と低い領域とを検出して、上述の例と同様の領域単位でのスライスの再配置を行うようにしても構わない。この場合、高価格の半導体ディスク装置131の限られた容量を有効に利用して、論理ディスクのリードアクセス性能(リード性能)の低下を解消することができる。また、論理ディスク151からアクセスの頻度(アクセス頻度)の高い領域と低い領域とを検出して、上述の例と同様の領域単位でのスライスの再配置を行うようにしても構わない。この場合、高価格の半導体ディスク装置131の限られた容量を有効に利用して、論理ディスクのアクセス性能の低下を解消することができる。
In the above example, the method for eliminating the decrease in the write access performance (write performance) of the logical disk has been described. However, it is also possible to detect areas with high and low read loads (read access loads) from the
このように本実施形態においては、論理ディスクへのアクセス特性に応じて、データを格納する物理的な領域のコストを最適化することにより、ディスクアレイ装置10としてのコストパフォーマンスの向上を図ることができる。
As described above, in this embodiment, the cost performance of the
さて、ディスクアレイ装置10は前記したように、HDD132A(#A)及び132B(#B)と、当該HDD132A(#A)及び132B(#B)とはタイプが異なるHDD132C及び132Dとを有している。そこで、本実施形態で適用される、タイプが異なるHDDを用いて論理ディスクのアクセス性能を向上する方法について、図10を参照して説明する。
As described above, the
図10には、複数のスライスから構成される論理ディスク161が示されている。この論理ディスク161は、領域161a(#m)及び161b(#n)を含む。論理ディスク161の領域161b(#n)は、アクセスの頻度がしきい値より高い、論理的に連続する複数のスライスから構成されるものとする。一方、論理ディスク161の領域161a(#m)は、アクセスの頻度がしきい値より低い、論理的に連続する複数のスライスから構成されるものとする。この場合、検出部121fは、論理ディスク161の領域161b(#n)をアクセスの頻度の高い領域として検出する。
FIG. 10 shows a
図10にはまた、複数のアレイ、例えば2つのアレイ162及び163が示されている。アレイ162は、矢印164で示されているように、性能は低いが安価で大容量のHDD132A(#A)及び132B(#B)の記憶領域を用いて構成されているる。これに対してアレイ163は、矢印165で示されているように、性能は高いが高価格で小容量のHDD132C(#C)及び132D(#D)の記憶領域を用いて構成されている。このように、アレイ162は容量とコストとを重視して構成され、アレイ163は性能を重視して構成されている。
FIG. 10 also shows a plurality of arrays, for example two
スライス移動部121cは、論理ディスク161のアクセスの頻度が低い領域161a(#m)に含まれているスライスを、図10において矢印166で示すように、アレイ162の例えば領域162aに配置する。またスライス移動部121cは、論理ディスク161のアクセスの頻度が高い領域161b(#n)に含まれているスライスを、図10において矢印167で示すように、アレイ163の例えば領域163bに配置する。この配置後に、論理ディスク161の領域161a(#m)または161b(#n)のアクセス頻度が変化した場合、スライス移動部121cは、領域161a(#m)または161b(#n)に含まれているスライスを配置すべきアレイを変更する。
The
このように本実施形態では、特性(タイプ)の異なるアレイ162及び163、つまり容量及びコストを重視したアレイ162及び性能を重視したアレイ163を用意し、論理ディスク161内でアクセス性能(アクセス頻度)の異なる領域毎に、当該領域を構成するスライスが割り付けられるべきアレイが切り替え(使い分け)られる。これにより本実施形態においては、ディスクアレイ装置10としてのコストパフォーマンスを向上させることができる。
As described above, in this embodiment, the
[変形例]
次に上記実施形態の変形例について説明する。上記実施形態では、論理ディスクを構成した時点で、当該論理ディスクを構成するスライスがアレイに割り付けられる。しかし、ホストからディスクアレイ装置に対して、論理ディスク内のスライスへの最初のアクセスが要求された際に、当該スライスがアレイの記憶領域内に割り付けられても構わない。
[Modification]
Next, a modification of the above embodiment will be described. In the above embodiment, when a logical disk is configured, slices that configure the logical disk are allocated to the array. However, when the host requests the disk array apparatus to access the slice in the logical disk for the first time, the slice may be allocated in the storage area of the array.
上記実施形態の変形例では、論理ディスク内のスライスが最初に使用された際、即ち当該スライスが未使用スライスから使用スライスに変化した際に、当該スライスをアレイの記憶領域内に割り付けるアレイ構築方法が適用される。このアレイ構築方法が図1に示すディスクアレイ装置10で適用されるものとして、当該アレイ構築方法について図11を参照して説明する。
In the modified example of the above embodiment, when a slice in a logical disk is first used, that is, when the slice changes from an unused slice to a used slice, the array construction method allocates the slice in the storage area of the array. Applies. Assuming that this array construction method is applied to the
図11には、論理ディスク171及びアレイ172(#0)が示されている。論理ディスク171は、スライス171a,171b,171c,171d,171e,171f及び171gを含む。この変形例では、論理ディスク171が生成(定義)された時点では、当該論理ディスク171を構成するスライス(つまりスライス171a乃至171gを含む未使用のスライス)は、何れもアレイ172(#0)に割り付けられることはない。その後、時刻t1にホスト20からスライス171aへの最初のアクセスが発生し、時刻t1より後の時刻t2にホスト20からスライス171d,171e及び171fへの初めてのアクセスが発生したものとする。
FIG. 11 shows a
アレイ/スライス定義部121aは、スライス171aへの最初のアクセスが発生した時点t1で、当該スライス171aに対し、図11において矢印173aで示すように、実際にアレイ172の領域を割り付ける。以降、スライス171aは、アレイ172への割り付けが完了している状態となり、未使用のスライスから使用されたスライスとなる。同様にアレイ/スライス定義部121aは、スライス171d,171e及び171fへの最初のアクセスが発生した時点t2で、当該スライス171d,171e及び171fに対し、図11において矢印173d,173e及び173fで示すように、実際にアレイ172の領域を割り付ける。以降、スライス171d,171e及び171fは、アレイ172への割り付けが完了している状態となり、未使用のスライスから使用されたスライスとなる。
The array /
このようにアレイ/スライス定義部121aは、論理ディスク171を構成するスライスのうち、アクセスが発生したスライスから順次アレイ172の物理的な実領域を割り付けるように管理する。この管理手法を適用するディスクアレイ装置10は、運用を継続していく中でユーザ数、データベース或いはコンテンツの増加などにより実際に使用するディスク容量が徐々に増加するようなシステムに最適である。その理由は、システム構築時には実際のアレイの容量に拘わらずに、最終的に必要と予測される容量の論理ディスクを生成しておくことができるためである。ここでは、論理ディスクの全スライスのうち、実際に使用されたスライスだけがアレイへ配置される。このため、使用されるディスク容量が徐々に増加した際に、その増加容量に応じてアレイを追加して行くことが可能となる。
As described above, the array /
これにより、上記実施形態の変形例においては、システム構築時の初期投資を少なく抑えることができる。また、論理ディスクの使用されていない領域に対しアレイの領域が消費されることがなくなるため、物理的なディスク容量の使用効率が高くなる。また、変形例では、システムの運用が開始された後に物理的なディスク容量が不足した結果、アレイを追加して論理ディスクの新たに使用されたスライスに当該追加されたアレイの実領域が割り付けられる。ここで、論理ディスク自体は最終的に必要な容量にて予め生成(定義)されている。このため、上述のようにアレイの追加と当該アレイの実領域の割り付けが行われても、論理ディスクの容量などホスト計算機から認識される構成を見直す必要がなく、システムの運用が容易になる。 Thereby, in the modification of the said embodiment, the initial investment at the time of system construction can be restrained few. Also, since the array area is not consumed for the unused area of the logical disk, the use efficiency of the physical disk capacity is increased. Further, in the modified example, as a result of the lack of physical disk capacity after the system operation is started, an array is added and the real area of the added array is allocated to the newly used slice of the logical disk. . Here, the logical disk itself is generated (defined) in advance with a finally required capacity. Therefore, even if an array is added and an actual area of the array is allocated as described above, it is not necessary to review the configuration recognized by the host computer, such as the capacity of the logical disk, and the operation of the system is facilitated.
図1では、ディスクアレイ装置10を利用するホストとしてホスト20だけが示されている。しかし、ホスト20を含む複数のホストとディスクアレイ装置10とを接続することにより、当該複数のホストがディスクアレイ装置10を共有することも可能である。
In FIG. 1, only the
なお、本発明は、上記実施形態またはその変形例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態またはその変形例に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態またはその変形例に示される全構成要素から幾つかの構成要素を削除してもよい。 In addition, this invention is not limited to the said embodiment or its modification example as it is, A component can be deform | transformed and embodied in the range which does not deviate from the summary in an implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment or the modification thereof. For example, you may delete a some component from all the components shown by embodiment or its modification.
10…ディスクアレイ装置、11a〜11d,142-0,142-1,152,162,163,172…アレイ、12-1,12-2…アレイコントローラ、20…ホスト、31-0,31-1,141,151,161,171…論理ディスク、71…管理情報領域、120-1,120-2…仮想化ユニット(仮想化装置)、121a…アレイ/スライス定義部、121b…論理ディスク定義部、121c…スライス移動部、121d…データライト部、121e…統計情報採取部、121f…検出部、122…メモリ、122a…マップテーブル、122b…統計情報領域、131…半導体ディスク装置、132A〜132D…HDD(ハードディスクドライブ)。
DESCRIPTION OF
Claims (2)
前記論理ディスクを構成するスライス毎に前記マップテーブルに保持される前記スライス情報は、前記論理ディスクを構成する当該スライスとして前記論理ディスクに割り付けられる第1のスライスを含む第1のアレイを識別するための第1のアレイ識別情報と、当該第1のアレイにおいて当該第1のスライスを識別するための第1のスライス識別情報と、当該第1のスライスのデータが別のスライスに移動またはコピー中であるかを示すフラグ情報と、当該第1のスライスのデータが前記第1のアレイとは別のアレイ内の前記別のスライスに移動またはコピー中である場合に、当該移動またはコピー先の前記別のアレイを識別するための第2のアレイ識別情報と、当該別のアレイにおいて前記別のスライスを識別するための第2のスライス識別情報とを含み、
前記論理ディスク管理方法は、
前記アレイコントローラが有する統計情報採取手段が、前記論理ディスクを構成するスライス毎に、当該スライスを対象とするアクセス処理に関する統計情報を取得して、当該スライス毎に取得された統計情報を前記アレイコントローラが有する記憶手段に格納するステップと、
前記スライス毎に取得された統計情報に基づいて、前記アレイコントローラが有する検出手段が、アクセスの負荷が一定レベルより高いスライスを検出するステップと、
前記検出されたスライスに対応付けて前記マップテーブルに保持されているスライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって、当該検出されたスライスとして、前記第1のアレイ内の前記第1のスライスが割り付けられていることが示されている場合、前記第1のスライスのデータを、前記アレイコントローラが有するスライス移動手段が、当該第1のスライスが割り付けられている論理ディスクに割り付けられていない第2のスライスであって、当該第1のスライスを含む前記第1のアレイとは別の第2のアレイ内の第2のスライスに移動またはコピーするステップと、
前記移動またはコピーするステップの実行に際し、前記スライス移動手段が、前記アレイコントローラが有するデータリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを一時停止させ、しかる後に前記マップテーブルに前記検出されたスライスに対応付けて保持されているスライス情報中に、前記第1のスライスのデータの移動またはコピー先の前記第2のスライスが属する前記第2のアレイを識別するための前記第2のアレイ識別情報と、前記第2のアレイにおける前記第2のスライスを識別するための前記第2のスライス識別情報と、前記第1のスライスのデータが移動またはコピー中であることを示す前記フラグ情報とを設定し、しかる後に前記マップテーブルの内容を前記ディスクドライブに保存し、しかる後に前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを再開させるステップと、
前記移動またはコピーするステップが完了した際に、前記スライス移動手段が、前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを一時停止させ、しかる後に前記マップテーブルに前記検出されたスライスに対応付けて保持されているスライス情報を、当該スライス情報中の前記第1のアレイ識別情報が前記第2のアレイを示し、当該スライス情報中の前記第1のスライス識別情報が前記第2のアレイ内の前記第2のスライスを示すように更新し、しかる後に当該スライス情報中に設定されている、前記第2のアレイ識別情報と前記第2のスライス識別情報と前記フラグ情報とをクリアし、しかる後に前記マップテーブルの内容を前記ディスクドライブに保存し、しかる後に前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを再開させるステップと、
前記ホスト計算機から、前記論理ディスク内のスライスにデータをライトすることが要求された場合、前記データリード/ライト手段が、前記マップテーブルに当該要求されたスライスに対応付けて保持されているスライス情報中に、前記移動またはコピー中を示すフラグ情報が設定されていないか、或いは設定されていて且つ移動またはコピーが完了していないならば、当該スライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって識別される前記第1のアレイ内の前記第1のスライスにデータをライトし、前記移動またはコピー中を示すフラグ情報が設定され、且つ移動またはコピーが完了しているならば、当該スライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって識別される前記第1のアレイ内の前記第1のスライス及び当該スライス情報中の前記第2のアレイ識別情報及び前記第2のスライス識別情報によって識別される前記第2のアレイ内の前記第2のスライスに同一のデータをライトするステップと
を具備することを特徴とする論理ディスク管理方法。 The storage area of at least one disk drive is divided into a predetermined capacity, and is composed of a combination of a plurality of the aforementioned slices in an array consisting of a set of slices having a certain capacity area, and is simply received from the host computer. An array controller connected to the host computer and the at least one disk drive holds a logical disk recognized as one disk volume in the map table in association with each slice constituting the logical disk. a logical disk management method for managing on the basis of the slice information,
The slice information held in the map table for each slice configuring the logical disk identifies the first array including the first slice allocated to the logical disk as the slice configuring the logical disk. First array identification information, first slice identification information for identifying the first slice in the first array, and data of the first slice being moved or copied to another slice Flag information indicating whether or not the data of the first slice is being moved or copied to another slice in an array different from the first array. Second array identification information for identifying the second array and second slice for identifying the second slice in the second array And a separate information,
The logical disk management method includes:
The statistical information collection means of the array controller acquires statistical information related to access processing for the slice for each slice constituting the logical disk, and the statistical information acquired for the slice is stored in the array controller. Storing in a storage means possessed by:
Based on the obtained statistics for each of the slices, the detecting means, wherein the array controller comprises the steps of: loading the access detecting high chair rice than a predetermined level,
The first array is detected as the detected slice by the first array identification information and the first slice identification information in the slice information held in the map table in association with the detected slice. If the first slice in the array controller is allocated , the slice moving means included in the array controller stores the data of the first slice in the logic to which the first slice is allocated. Moving or copying to a second slice in a second array that is not assigned to a disk and that is different from the first array that includes the first slice;
When executing the step of moving or copying, the slice moving unit temporarily stops data reading / writing on the logical disk by the data reading / writing unit included in the array controller, and then stores the data in the map table. In the slice information held in association with the detected slice, the second array for identifying the second array to which the second slice of the data movement or copy destination of the first slice belongs the flag indicating the an array identification information, and said second slice ID information for identifying the second slice in the second array, the data of the first slice is being moved or copied Information and then save the contents of the map table to the disk drive A step of resuming the data read / write to target the logical disk by the data read / write unit and thereafter,
When the moving or copying step is completed, the slice moving unit temporarily stops the data reading / writing on the logical disk by the data reading / writing unit, and then detected in the map table. In the slice information held in association with the slice, the first array identification information in the slice information indicates the second array, and the first slice identification information in the slice information is the first slice identification information. The second array identification information, the second slice identification information, and the flag information set in the slice information are updated to indicate the second slice in the second array. Clear, and then store the contents of the map table in the disk drive, and then read the data read / write A step of resuming the data read / write to target the logical disk by site means,
When the host computer requests to write data to a slice in the logical disk , the data read / write unit holds slice information associated with the requested slice in the map table If the flag information indicating that the migration or copying is in progress is not set, or if it is set and the migration or copying is not completed, the first array identification information in the slice information and the Data is written to the first slice in the first array identified by the first slice identification information, flag information indicating that the move or copy is in progress is set, and the move or copy is completed If, identified by the first array identification information and the first slice identification information in the slice information The second slice in the second array identified by the first of the first slice and the second array identification information and the second slice identification information in the slice information in the array A logical disk management method comprising: writing the same data.
前記論理ディスクを構成するスライス毎に、前記論理ディスクを構成する当該スライスとして割り付けられる第1のスライスを含む第1のアレイを識別するための第1のアレイ識別情報と、当該第1のアレイにおいて当該第1のスライスを識別するための第1のスライス識別情報と、当該第1のスライスのデータが別のスライスに移動またはコピー中であるかを示すフラグ情報と、当該第1のスライスのデータが前記第1のアレイとは別のアレイ内の前記別のスライスに移動またはコピー中である場合に、当該移動またはコピー先の前記別のアレイを識別するための第2のアレイ識別情報と、当該別のアレイにおいて前記別のスライスを識別するための第2のスライス識別情報とを含むスライス情報を、当該スライスに対応付けて保持するマップテーブルと、
前記論理ディスクを構成するスライス毎に、当該スライスを対象とするアクセス処理に関する統計情報を取得する統計情報採取手段と、
前記統計情報採取手段によって取得された前記論理ディスクを構成するスライス毎の統計情報を格納する統計情報記憶手段と、
前記統計情報記憶手段に格納されている前記論理ディスクを構成するスライス毎の統計情報に基づいて、アクセスの負荷が一定レベルより高いスライスを検出する検出手段と、
前記ホスト計算機から要求された前記論理ディスクを対象とするデータ読み出し/書き込みを実行するデータリード/ライト手段と、
前記検出手段によって検出されたスライスに対応付けて前記マップテーブルに保持されているスライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって、当該検出されたスライスとして、前記第1のアレイ内の前記第1のスライスが割り付けられていることが示されている場合、前記第1のスライスのデータを、当該第1のスライスが割り付けられている論理ディスクに割り付けられていない第2のスライスであって、当該第1のスライスを含む前記第1のアレイとは別の第2のアレイ内の第2のスライスに移動またはコピーし、前記移動またはコピーの実行に際し、前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを一時停止させ、しかる後に、前記マップテーブルに前記検出されたスライスに対応付けて保持されているスライス情報中に、前記第1のスライスのデータの移動またはコピー先の前記第2のスライスが属する前記第2のアレイを識別するための前記第2のアレイ識別情報と、前記第2のアレイにおける前記第2のスライスを識別するための前記第2のスライス識別情報と、前記第1のスライスのデータが移動またはコピー中であることを示す前記フラグ情報とを設定し、しかる後に前記マップテーブルの内容を前記ディスクドライブに保存し、しかる後に前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを再開させるスライス移動手段とを具備し、
前記スライス移動手段は、前記移動またはコピーが完了した際に、前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを一時停止させ、しかる後に、前記マップテーブルに前記検出されたスライスに対応付けて保持されているスライス情報を、当該スライス情報中の前記第1のアレイ識別情報が前記第2のアレイを示し、当該スライス情報中の前記第1のスライス識別情報が前記第2のアレイ内の前記第2のスライスを示すように更新し、しかる後に当該スライス情報中に設定されている、前記第2のアレイ識別情報と前記第2のスライス識別情報と前記フラグ情報とをクリアし、しかる後に前記マップテーブルの内容を前記ディスクドライブに保存し、しかる後に前記データリード/ライト手段による前記論理ディスクを対象とするデータ読み出し/書き込みを再開させ、
前記リード/ライト手段は、前記ホスト計算機から前記論理ディスク内のスライスにデータをライトすることが要求された場合、前記マップテーブルに当該要求されたスライスに対応付けて保持されているスライス情報中に、前記移動またはコピー中を示すフラグ情報が設定されていないか、或いは設定されていて且つ移動またはコピーが完了していないならば、当該スライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって識別される前記第1のアレイ内の前記第1のスライスにデータをライトし、前記移動またはコピー中を示すフラグ情報が設定され、且つ移動またはコピーが完了しているならば、当該スライス情報中の前記第1のアレイ識別情報及び前記第1のスライス識別情報によって識別される前記第1のアレイ内の前記第1のスライス及び当該スライス情報中の前記第2のアレイ識別情報及び前記第2のスライス識別情報によって識別される前記第2のアレイ内の前記第2のスライスに同一のデータをライトすることを特徴とする仮想化装置。 The storage area of at least one disk drive is divided into a predetermined capacity, and is composed of a combination of a plurality of the aforementioned slices in an array consisting of a set of slices having a certain capacity area, and is simply received from the host computer. In a virtualization apparatus for managing a logical disk recognized as one disk volume,
For each slice constituting the logical disk, first array identification information for identifying the first array including the first slice allocated as the slice constituting the logical disk, and the first array First slice identification information for identifying the first slice, flag information indicating whether the data of the first slice is being moved or copied to another slice, and data of the first slice Is moving or copying to another slice in an array different from the first array, second array identification information for identifying the other array to be moved or copied; while the slice information and a second slice identification information for identifying the another slice in the another array, held in association with the slice And up table,
For each slice constituting the logical disk, statistical information collection means for acquiring statistical information related to access processing for the slice;
Statistical information storage means for storing statistical information for each slice constituting the logical disk acquired by the statistical information collection means;
Based on the statistics for each slice constituting the logical disk that is stored in the statistical information storage means, and detecting means for loading the access detecting high chair rice than a predetermined level,
Data read / write means for performing data read / write on the logical disk requested by the host computer;
The first slice identification information and the first slice identification information in the slice information held in the map table in association with the slice detected by the detection means are used as the detected slice. If it is indicated that the first slice in one array is allocated, the data of the first slice is not allocated to the logical disk to which the first slice is allocated. a 2 slices, upon the from the first array including a first slice moved or copied to the second slice in another second array, the moving or copying of execution, the data read / Reading / writing data to / from the logical disk by the writing means is suspended, and then the map table is The in the is held in association with the detected slice away rice information, for identifying the second array the second slice of the moving or copying destination of the data of the first slice belongs said second array identification information, and said second slice ID information for identifying the second slice in the second array, the data of the first slice is being moved or copied the flag is set and the information, the contents of the map table stored in the disk drive Thereafter, thereafter the data read / write unit according to the slice moving means for resuming the data read / write to target logical disk shown And
When the movement or copying is completed, the slice moving unit temporarily stops data reading / writing on the logical disk by the data reading / writing unit, and then the detected data is detected in the map table . the absence Rice information is held in association with the slice, the first array identification information in the slice information indicates the second array, the first slice identification information in the slice information the first The second array identification information, the second slice identification information, and the flag information set in the slice information are updated to indicate the second slice in the second array. Clear, and then store the contents of the map table in the disk drive, and then read the data read / write means To restart the data read / write to target the logical disk by,
Said read / write means, said if it is required from the host computer writes data to the slices in the logical disk, the requested absence of rice information is held in association with the slice to the map table If the flag information indicating that the migration or copying is in progress is not set, or is set and the migration or copying is not completed, the first array identification information and the first If data is written to the first slice in the first array identified by one slice identification information, flag information indicating that the move or copy is in progress is set, and the move or copy is completed in the first identified by the first array identification information and the first slice identification information in the slice information The first slice and the same data to the second slice in the second array identified by said second array identification information and the second slice identification information in the slice information in the array of A virtualization apparatus characterized by writing
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005265261A JP4261532B2 (en) | 2005-09-13 | 2005-09-13 | Logical disk management method and virtualization apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005265261A JP4261532B2 (en) | 2005-09-13 | 2005-09-13 | Logical disk management method and virtualization apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007079787A JP2007079787A (en) | 2007-03-29 |
JP4261532B2 true JP4261532B2 (en) | 2009-04-30 |
Family
ID=37940049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005265261A Expired - Lifetime JP4261532B2 (en) | 2005-09-13 | 2005-09-13 | Logical disk management method and virtualization apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4261532B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1975998A3 (en) | 2007-03-26 | 2013-12-04 | Semiconductor Energy Laboratory Co., Ltd. | Method for manufacturing a plurality of island-shaped SOI structures |
JP4877006B2 (en) * | 2007-03-27 | 2012-02-15 | 日本電気株式会社 | Disk array device and data backup system |
JP2008293350A (en) * | 2007-05-25 | 2008-12-04 | Storage Vision Co Ltd | Storage device, control method for storage device and control program |
US8874867B2 (en) | 2008-11-21 | 2014-10-28 | Lsi Corporation | Identification and containment of performance hot-spots in virtual volumes |
JP5396836B2 (en) * | 2008-12-01 | 2014-01-22 | 富士通株式会社 | Data distribution control program, storage management program, control node, and disk node |
US8713267B2 (en) | 2009-01-23 | 2014-04-29 | Lsi Corporation | Method and system for dynamic storage tiering using allocate-on-write snapshots |
JP2010244130A (en) * | 2009-04-01 | 2010-10-28 | Toshiba Corp | Disk array device and disk array control method |
JP5032620B2 (en) * | 2010-03-16 | 2012-09-26 | 株式会社東芝 | Disk array device and logical disk reconfiguration method applied to the disk array device |
CN103827970B (en) | 2012-09-25 | 2016-05-18 | 株式会社东芝 | To solid-state drive storage device, storage control and the method for configuration data again |
-
2005
- 2005-09-13 JP JP2005265261A patent/JP4261532B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2007079787A (en) | 2007-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006024024A (en) | Logical disk management method and device | |
US7971013B2 (en) | Compensating for write speed differences between mirroring storage devices by striping | |
US9152332B2 (en) | Storage system and method for reducing energy consumption | |
JP5942511B2 (en) | Backup device, backup method, and backup program | |
US7159150B2 (en) | Distributed storage system capable of restoring data in case of a storage failure | |
US8364858B1 (en) | Normalizing capacity utilization within virtual storage pools | |
JP5944587B2 (en) | Computer system and control method | |
US20140223223A1 (en) | Storage system | |
US20050034013A1 (en) | Method and apparatus for the takeover of primary volume in multiple volume mirroring | |
JP4229626B2 (en) | File management system | |
JPWO2008136075A1 (en) | Storage management program, storage management device, and storage management method | |
JP2003131816A (en) | Storage device having I / O counter for local data reallocation and control method thereof | |
US11128535B2 (en) | Computer system and data management method | |
JP2016118821A (en) | Storage management device, storage management method and storage management program | |
CN108733326B (en) | Disk processing method and device | |
US20180107409A1 (en) | Storage area network having fabric-attached storage drives, san agent-executing client devices, and san manager | |
US11188258B2 (en) | Distributed storage system | |
JP4261532B2 (en) | Logical disk management method and virtualization apparatus | |
US7496724B2 (en) | Load balancing in a mirrored storage system | |
US20180307427A1 (en) | Storage control apparatus and storage control method | |
CN112379825B (en) | Distributed data storage method and device based on data feature sub-pools | |
US7073029B2 (en) | Storage system using fast storage and log-structured storage | |
JP5453872B2 (en) | Disk array device, disk control device, and load distribution method in disk array device | |
US20130159656A1 (en) | Controller, computer-readable recording medium, and apparatus | |
US6934803B2 (en) | Methods and structure for multi-drive mirroring in a resource constrained raid controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080520 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080826 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081024 |
|
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: 20090203 |
|
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: 20090205 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120220 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4261532 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: 20130220 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140220 Year of fee payment: 5 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |