JP2005293119A - ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム - Google Patents

ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム Download PDF

Info

Publication number
JP2005293119A
JP2005293119A JP2004105979A JP2004105979A JP2005293119A JP 2005293119 A JP2005293119 A JP 2005293119A JP 2004105979 A JP2004105979 A JP 2004105979A JP 2004105979 A JP2004105979 A JP 2004105979A JP 2005293119 A JP2005293119 A JP 2005293119A
Authority
JP
Japan
Prior art keywords
data
sector
read
disk
loss
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
JP2004105979A
Other languages
English (en)
Other versions
JP4143040B2 (ja
Inventor
Masanori Tomota
正憲 友田
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2004105979A priority Critical patent/JP4143040B2/ja
Publication of JP2005293119A publication Critical patent/JP2005293119A/ja
Application granted granted Critical
Publication of JP4143040B2 publication Critical patent/JP4143040B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

【課題】ディスク上のデータ欠損箇所が簡単に管理でき、しかもホストから欠損箇所へのリード要求が発生するまで当該欠陥個所をホストに認識させないで済むようにする。
【解決手段】データ欠損登録部113は、論理ディスク12へのリードアクセス時のデータ読み出し失敗によりデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、当該不良セクタが割り当てられる代替セクタの欠損情報領域に“データ欠損あり”を示す欠損情報を記録する。データ欠損判定部115aは、ホスト20からのリード要求に従うリードアクセスによって論理ディスク12から読み出されるセクタのデータに基づき、当該セクタの欠損情報領域に“データ欠損あり”を示す欠損情報が記録されているかを判定する。エラー通知部115bは、データ欠損判定部115aによる判定結果に応じて、データ読み出し失敗をホスト20に返す。
【選択図】 図1

Description

本発明は、複数の物理ディスクから構成される論理ディスクを制御するディスクアレイ制御装置に係り、特に当該論理ディスク上のデータ欠損が検出された場合に好適なディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラムに関する。
ストレージ装置におけるデータの信頼性の向上とデータアクセスの高速化とを実現する技術として、RAID(Redundant Array of Inexpensive Disks、またはRedundant Array of Independent Disks)技術が提案され、また実用化されている。RAID技術の特徴は、複数の物理ディスク(物理ディスクドライブ)を束ねて1つの論理ディスク(論理ディスクドライブ)を実現し、データ(もしくはデータ及び冗長データ)を当該複数の物理ディスクに分散して格納する点にある。
RAIDには幾つかのレベル(RAIDレベル)が定義されており、RAID0(ストライピング)、RAID1(ミラーリング)並びにRAID3及びRAID5(パリティ付きストライピング)などが知られている。いずれのRAIDレベル(RAID方式)を適用するストレージ装置、つまりディスクアレイ装置(RAID装置)でも、複数の物理ディスクを用いて構成される論理ディスク上に、データ及び冗長データが配置される(但し、RAID0を除く)。この冗長データの配置により、論理ディスクを構成する複数の物理ディスクのいずれか1つに障害が発生しても、当該冗長データを利用することで、障害が発生したディスクのデータを復元することが可能となる。この冗長データが配置される論理ディスク、即ちデータの冗長性がある論理ディスクは、冗長化論理ディスクと呼ばれる。
さて、冗長化論理ディスクを備えたディスクアレイ装置においても、当該冗長化論理ディスクを構成する複数の物理ディスクの中に故障したディスクが存在する状態、いわゆる縮退状態では、データの冗長性が失われる。このような状況で、更に別の物理ディスクが故障したり、或いは物理ディスク自体は故障していないが、当該ディスクの一部に物理的もしくは論理的に損傷(欠陥)があって、一部分のデータをリードすることができない、メディアエラー等の障害が発生することがある。この場合、障害が発生した箇所に保存されていたデータを復元できない。
ディスクアレイ装置では、当該ディスクアレイ装置が縮退状態に陥った場合に、当該ディスクアレイ装置を縮退状態から回復させるために、故障した物理ディスク(故障ディスク)を別の新たな物理ディスク(新ディスク)に交換し、残りの物理ディスクのデータを利用して、故障ディスクのデータを新ディスクに復元する処理が行われる。ところが、故障ディスクのデータを復元する処理で、残りの物理ディスクの一部分のデータをリードできないと、当該故障ディスクの該当する個所のデータを復元できない。
一方、上記物理ディスク(物理ディスクドライブ)に相当する磁気ディスク装置において、磁気ディスクからのデータリードで、回復不能な不良セクタが検出された場合に、その不良セクタのアドレスをテーブルに登録しておき、当該テーブルにアドレスが登録されたセクタへのデータライトに成功した場合に、磁気ディスク装置内の制御装置がホストコンピュータから独立に、当該セクタを予備セクタに割り当てる技術(自動交代処理技術)も知られている(例えば、特許文献1参照)。
特開平10−240454号公報(段落0009、0017〜0023)
上記したように、RAID技術を適用したディスクアレイ装置であっても、論理ディスクを構成する複数の物理ディスクの1つが故障している縮退状態において、更に残りのいずれかの物理ディスクの一部分に障害が発生した場合には、その部分のデータを復元することができない。したがって、このデータ復元不能な物理ディスクの障害部分は、データ欠損を発生している部分であるといえる。このようなデータ欠損は、故障ディスクを交換して、残りの物理ディスクから故障ディスクのデータを復元しようとする場合にも発生する。
ディスクアレイ装置において、このようなデータ欠損が発生している箇所を検出する都度、当該ディスクアレイ装置を利用するホスト(ホストコンピュータ)に、その旨を通知するのでは、ディスクアレイ装置及びホストの処理効率が低下する。
一方、上記特許文献1に記載された磁気ディスク装置、即ちディスクアレイ装置の論理ディスクを構成する各物理ディスク(物理ディスクドライブ)に相当する磁気ディスク装置では、データ欠損が発生している箇所を、当該ディスク装置内の制御装置がテーブルにより管理する技術を適用している。しかし、磁気ディスク装置と接続される装置(特許文献1ではホストコンピュータであり、ディスクアレイ装置ではディスクアレイ制御装置)からは、当該ディスク装置内の制御装置における動作は、上記テーブルを含めて認識できない。そこで、ディスク装置内の制御装置が管理するテーブルとは別に、ディスクアレイ制御装置が利用可能なテーブルを用意して、当該テーブルによりデータ欠損が発生している箇所を管理することが考えられる。しかし、一般にディスクアレイ装置の論理ディスクは大容量であることが多く、その容量も年々増加する傾向にある。この場合、テーブルにも多くの容量を必要とする。
本発明は上記事情を考慮してなされたものでその目的は、論理ディスク上のデータ欠損箇所がテーブルを用いることなく簡単に管理でき、しかもデータ欠損箇所を検出しても当該データ欠損箇所へのホストからのリード要求が発生するまで当該ホストに認識させないで済むディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラムを提供することにある。
本発明の1つの観点によれば、データを格納するためのデータ領域及びデータ欠損の有無を示す欠損情報を格納するための欠損情報領域を含むセクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを上記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置が提供される。このディスクアレイ制御装置は、論理ディスクへのリードアクセス時に復元不能なデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、当該不良セクタが割り当てられる代替セクタの上記欠損情報領域にデータ欠損ありを示す欠損情報を記録することにより、上記論理ディスクへのリードアクセスが上記論理ディスクを利用するホストからのリード要求以外で行われた場合に、データ読み出し失敗が上記ホストに通知されるのを抑止するデータ欠損登録手段と、上記ホストからのリード要求に従うリードアクセスによって上記論理ディスクから読み出されるセクタのデータに基づき、当該セクタの上記欠損情報領域にデータ欠損ありを示す欠損情報が記録されているかを判定するデータ欠損判定手段と、このデータ欠損判定手段によってデータ欠損ありを示す欠損情報が記録されていると判定された場合に、上記リード要求に対する応答としてデータ読み出し失敗を上記ホストに返すエラー通知手段とを備えている。
上記の構成においては、論理ディスクを構成する各物理ディスク上の各セクタのデータ欠損の有無が、当該セクタに確保された欠損情報領域に格納される欠損情報、つまりセクタデータの一部をなす欠損情報を用いて管理される。このように上記の構成においては、ディスク上のデータ欠損箇所がテーブルを用いることなく簡単に管理できる。しかも、このディスク上の各セクタの欠損情報領域を利用したデータ欠損の有無の管理により、データ欠損箇所を検出しても当該データ欠損箇所へのホストからのリード要求が発生するまで当該ホストへのエラー通知(読み出し失敗)を抑止することにより、エラー通知が頻繁に発生するのを防止して、ディスクアレイ装置及びホストの処理効率が低下するのを抑えることができる。
ここで、ディスク上の各セクタに、当該セクタへのデータライトがあったか否かを示すデータライト情報を格納するためのデータライト情報領域を持たせ、上記ライト要求処理手段が、要求されたデータのみ、もしくは要求されたデータ及び当該データに対応する冗長データをディスクに書き込む際には、対応するセクタの上記データライト情報領域にデータライトありを示すデータライト情報を記録する構成とすると共に、上記データ欠損登録手段に、上記不良セクタが検出された場合、上記複数の物理ディスクのうち当該不良セクタに対応する他の物理ディスク上のセクタの上記データライト情報領域にデータライトありを示すデータライト情報が記録されているかを判定するデータライト判定手段を持たせ、データライトありを示すデータライト情報が記録されていないセクタに関しては、当該セクタの上記欠損情報領域へのデータ欠損ありを示す欠損情報の記録を控える構成とすると良い。
このように、データが一度もライトされていないセクタのディスク障害に対しては、データ欠損の登録を行わないことで、データ欠損の発生確率を下げることができる。
また本発明は、論理ディスクを構成する複数の物理ディスクのうちのいずれか1つの物理ディスクのデータを復元するためのデータ復元手段であって、データの復元に必要な冗長データ、もしくはデータ及び冗長データを上記論理ディスクから読み出すデータ復元用情報読み出し手段を含むデータ復元手段と、このデータ復元用情報読み出し手段によるデータの復元に必要な冗長データ、もしくはデータ及び冗長データの読み出しに失敗した場合、データを復元すべきセクタに対するリードアクセスでメディアエラーとなるように当該セクタの情報を設定するエラー作成手段と、上記論理ディスクを利用するホストからのリード要求に従うリードアクセスで復元不能なデータ読み出し失敗となった場合、上記リード要求に対する応答としてデータ読み出し失敗を上記ホストに返すエラー通知手段とを備えたことをも特徴とする。
このような構成においては、データの復元に必要な冗長データ、もしくはデータ及び冗長データの読み出しに失敗した場合、つまりデータを復元すべきセクタへのデータ復元が不能な場合、当該データ復元不能なセクタはデータ欠損のあるセクタとして管理される。しかも、この管理は、データ復元不能なセクタに対するリードアクセスでメディアエラーとなるように当該セクタの情報を設定することにより行われる。つまり、データが復元されなかったデータ欠損のあるセクタを、当該セクタに上記欠損情報領域を確保することなく簡単に管理できる。
本発明によれば、論理ディスク上のデータ欠損箇所がテーブルを用いることなく簡単に管理できる。また本発明によれば、データ欠損箇所を検出しても当該データ欠損箇所へのホストからのリード要求が発生するまで当該ホストに認識させないで済むため、ホストへのエラー通知が頻繁に発生するのを防止できる。
以下、本発明の一実施形態につき図面を参照して説明する。
図1は本発明の一実施形態に係るディスクアレイ装置10の構成を示すブロック図である。図1において、ディスクアレイ装置10は、ディスクアレイ制御装置11と、当該ディスクアレイ制御装置11によって制御されるRAID構成の論理ディスク(論理ディスクドライブ)12とを備えた、いわゆるRAID装置である。論理ディスク12は、複数、例えば4つの物理ディスク12-1〜12-4から構成されるディスクアレイである。物理ディスク(物理ディスクドライブ)12-1〜12-4は例えばハードディスクドライブ(HDD)である。物理ディスク12-1〜12-4は一定サイズのストライプを単位に分割して管理される。物理ディスク12-1〜12-4内の同一オフセット位置のストライプの集合はストライプグループと呼ばれる。
ディスクアレイ制御装置11は、ディスクアレイ装置10を外部記憶装置(ストレージ装置)として利用するホスト(ホストコンピュータ)20と、ホストインタフェースバス13を介して接続されている。ホスト20からは、物理ディスク12-1〜12-4が1つの論理ディスク12として認識される。ディスクアレイ制御装置11はまた、論理ディスク12(を構成する物理ディスク12-1〜12-4)と、ディスクインタフェースバス14を介して接続されている。ホストインタフェースバス13は、例えばSCSI(Small Computer System Interface)バス、或いはファイバチャネル(Fibre Channel)である。ディスクインタフェースバス14も、SCSIバス、或いはファイバチャネルである。なお、ディスクアレイ制御装置11とホスト20とがネットワークを介して接続されていても構わない。
本実施形態では、論理ディスク12がRAID1レベルで用いられる場合、当該論理ディスク12を構成する物理ディスク12-1〜12-4のうち、物理ディスク12-1及び12-3の対と、物理ディスク12-2及び12-4の対が、それぞれ同一内容を保持するように制御される。ここでは、物理ディスク12-1及び12-2はマスタ(primary)ディスク(主ディスク)として用いられ、物理ディスク12-3及び12-4はサブ(secondary)ディスク(従ディスク)として用いられるものとする。
また、論理ディスク12がRAID3レベルまたはRAID5レベルで用いられる場合、1つのストライプグループに属する物理ディスク12-1〜12-4上のストライプのうち、1つは冗長データとしてのパリティデータを格納するパリティストライプとして用いられ、残りの3つのストライプはデータを格納するデータストライプとして用いられる。物理ディスク12-1〜12-4上の最小のアクセス単位としてのセクタのうち、データストライプに含まれるセクタをデータセクタと呼び、パリティストライプに含まれるセクタをパリティセクタと呼ぶ。RAID3レベルの場合、物理ディスク12-1〜12-4のうちの特定の物理ディスク(例えば物理ディスク12-4)上のストライプだけがパリティストライプとして用いられる。一方、RAID5レベルの場合、パリティストライプの位置は、物理ディスク12-1〜12-4の間でストライプグループ毎にサイクリックに切り替わる。
ディスクアレイ制御装置11は、構成管理部111と、データ復元部112と、データ欠損登録部113と、アクセス要求処理部114とを備えている。
構成管理部111は、論理ディスク12の、RAIDレベルを含む構成状態を管理する。
データ復元部112は、物理ディスクの故障検出から故障したディスクが交換された後のデータ復元までを制御する。データ復元部112は、データ復元用情報読み出し部112a及びエラー作成部112bを有する。データ復元用情報読み出し部112aは、物理ディスクのデータ復元に必要なデータ及び冗長データ(但し、RAID1では冗長データのみ)を論理ディスク12から読み出す。エラー作成部112bは、論理ディスク12上の目的のセクタ(ここではデータ復元できなかったセクタ)に対し、メディアエラーを発生させるための設定を行う。
データ欠損登録部113は、論理ディスクへのリードアクセス時に検出される、少なくともその時点において復元不能な不良セクタ、つまりデータ欠損のある不良セクタを管理する。この管理の詳細は後述する。データ欠損登録部113は、データライト判定部113aを含む。データライト判定部113aは、データ欠損のある不良セクタに対応する他の物理ディスク上のセクタ(つまりオフセット位置が同一のセクタ)へのデータライト(ホスト20からのデータライト)が一度でもあったかを判定する。
アクセス要求処理部114は、ホスト20からのリード要求を処理するリード要求処理部115と、ホスト20からのライト要求を処理するライト要求処理部116とを有する。リード要求処理部115は、後述するデータ欠損判定部115a及びエラー通知部115bを含む。ライト要求処理部116は、冗長データ生成用情報読み出し部116aを含む。冗長データ生成用情報読み出し部116aは、ライト要求処理時に冗長データ生成のための情報を論理ディスク12から読み出す必要がある場合に、その読み出しを実行する。
ディスクアレイ制御装置11は更に、論理ディスク12を構成する物理ディスク12-1〜12-4の各セクタのメディアエラー(障害)の有無を定期的に検査するメディア検査部(図示せず)も有している。
ディスクアレイ制御装置11の上記各部の機能は、当該ディスクアレイ制御装置11の図示せぬメモリにインストールされた特定のディスクアレイ制御プログラムを当該ディスクアレイ制御装置11(が有するCPU)が読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体、例えばフロッピー(登録商標)ディスクに代表される磁気ディスク、CD−ROM、DVDに代表される光ディスク、フラッシュメモリに代表される半導体メモリ等の記憶媒体に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード(頒布)されても構わない。
さて、論理ディスク12を、RAID0に代表されるデータ冗長性のないRAIDレベルで適用する場合、論理ディスク12を構成する物理ディスク12-1〜12-4のいずれかのディスク上にメディアエラーなどの部分的な障害が発生すると、その障害が発生した箇所のデータを復元できない(この状態を、状態1と呼ぶ)。
一方、論理ディスク12を、RAID1、RAID3またはRAID5など、データ冗長性のあるRAIDレベルで適用する場合、つまり論理ディスク12が冗長化論理ディスクである場合でも、当該論理ディスク12を構成する物理ディスク12-1〜12-4のいずれかが故障して、データ冗長性が失われた縮退状態で、残りの物理ディスクのいずれかに部分的な障害が更に発生すると、その障害が発生した箇所のデータを復元できない(この状態を、状態2と呼ぶ)。
状態1では、障害が発生した個所を含む論理ディスク12上の領域に対するリードアクセスがホストから要求された場合に、要求されたデータをホストに返すことができず、データ欠損となる。一方、状態2でも、故障したディスクを別の新たなディスク(新ディスク)に交換し、その新ディスクに故障したディスクのデータを復元するためのデータ復元処理を開始した際に、障害が発生した箇所のデータ(ホスト20からの要求に応じてライトされたデータ)を復元することができないために、新ディスクに書き込むべきデータがなく、データ欠損となる。
上記状態2に起因するデータ欠損を、論理ディスク12がRAID1レベルを適用する場合を例に図2を参照して説明する。ここでは、物理ディスク12-1〜12-4のうちの物理ディスク12-1及び12-2がマスタディスク(主ディスク)に、物理ディスク12-3及び12-4がサブディスク(従ディスク)に、それぞれ割り当てられているものとする。この場合、物理ディスク12-1または12-2のデータ書き込み時には、物理ディスク12-3または12-4の相対位置が同一の領域にも同じデータが書き込まれる。ところが、図2の例のように、物理ディスク12-3が故障している状態で、物理ディスク12-1の一部分Pにメディアエラー(障害)が発生すると、その部分Pのデータを読み出すことができなくなり、データ欠損が発生する。これに対し、物理ディスク12-3が故障していなければ、物理ディスク12-1の一部分Pにメディアエラーが発生しても、メディアエラーの発生していない物理ディスク12-3からデータを読み出すことができるので、データ欠損は発生しない。
さて、ホスト20からディスクアレイ装置10内のディスクアレイ制御装置11に対しリード要求が発行された場合に、要求先にデータ欠損が発生していると、要求先のデータを回復することはできない。このような場合、ディスクアレイ制御装置11は、ホスト20からのリード要求に対し、失敗を返す以外にない。
しかし、論理ディスク12へのアクセスは、ホスト20からのリード要求に応じて行われるとは限らない。つまり、論理ディスク12へのアクセスが、ディスクアレイ制御装置11によって自律的に行われることもある。そこで本実施形態では、ディスクアレイ制御装置11が行う論理ディスク12へのリードアクセス時にデータ欠損が発生している箇所を検出した場合、データ欠損登録部113は、そのデータ欠損を対応するセクタに登録するための後述するデータ欠損登録処理を行うように構成されている。また、ディスクアレイ制御装置11は、ホスト20からのリード要求以外でのリードアクセス時にデータ欠損登録処理を行った場合、データ欠損箇所を検出したことをホスト20に通知しないように構成されている。これによりディスクアレイ制御装置11は、ホスト20からデータ欠損が発生している箇所を含む領域を対象とするリード要求が発行されて、当該要求を実行するまで、当該箇所のデータ欠損をホスト20に認識させないようにすることができる。
本実施形態において、ディスクアレイ制御装置11が、ホスト20からのリード要求の実行時以外でデータ欠損を検出し得るケース(つまりディスクアレイ制御装置11が自律的に論理ディスク12にリードアクセスするケース)としては、次の2つが挙げられる。
(1)故障した物理ディスク(故障ディスク)が新たなディスク(新ディスク)に交換された後、故障ディスクのデータを新ディスクに復元するデータ復元処理を行う場合
このデータ復元処理で、他の物理ディスクから復元に必要なデータを読み出す際にメディアエラーが発生すると、その部分のデータの復元を行うことができない。
(2)定期的なディスクの検査(メディア検査)が行われる場合
ディスクアレイ制御装置11は、論理ディスク12を構成する物理ディスク12-1〜12-4上の最小のアクセス単位としての各セクタの健全性を定期的に確認している。即ちディスクアレイ制御装置11は、物理ディスク12-1〜12-4に対して定期的にコマンド(リードコマンドまたはベリファイコマンド)を出して、エラー(メディアエラー)がないかどうかを確認するメディア検査を実行している。このメディア検査では、ホストからのアクセスに関係なく、メディアエラーが検出される場合がある。論理ディスク12が冗長性のあるRAIDレベルで用いられている場合、メディアエラーが検出された箇所のデータは他の物理ディスク上の対応する冗長データにより復元できる。しかし、縮退状態では、データの冗長性が失われているために、メディアエラーが検出された箇所のデータは復元できず、データ欠損として検出される。
上記したデータ復元の場合、新ディスク以外の物理ディスクの全領域がリードアクセスされる。このため、メディアエラーが検出されることが十分あり得る。特に、ホスト20からのアクセスが一度もない領域(一度もリードされたり、或いはライトされていない部分)では、メディアエラーが時間の経過と共に発生している場合があり、ディスク交換時のデータ復元処理まで当該メディアエラーが発見されない可能性がある。
このような、ホスト20からのアクセスが一度もない領域でのデータ欠損は、ライトデータが最初から存在しないため、エラーとしてホストへ通知する必要がない。そこで本実施形態では、後述するデータ欠損登録処理を行うことで、ホスト20が必要としない領域でのデータ欠損をできる限り当該ホスト20に認識させないようにすることができる。
次に、本実施形態の特徴の1つであるデータ欠損登録処理について、図3のフローチャートを参照して説明する。
ディスクアレイ制御装置11は、論理ディスク12を構成する物理ディスク12-1〜12-4のうちのいずれかの物理ディスクの一部分に、新たなデータ欠損を検出した場合には、データ欠損登録部113として機能する。この場合、データ欠損登録部113はデータ欠損登録処理を実行する。
このデータ欠損登録処理が実行されるのは、次のような、ディスクの復元不能な部分的なエラーを検出した場合、即ち
(1)RAID0に代表される、冗長性を持たないRAIDレベルで適用される物理ディスク12-1〜12-4に対するメディア検査により、ディスクの部分的なエラー(メディアエラー)を検出した場合
(2)冗長性を持たないRAIDレベルで適用される物理ディスク12-1〜12-4のいずれかに対するホスト20からのリードアクセス時に、ディスクの部分的なエラーを検出した場合
(3)RAID1,3または5に代表される、冗長性を持つRAIDレベルを適用しているにも拘わらずに、冗長データを用いてデータを復元できない場合。このような場合は、物理ディスク12-1〜12-4のいずれか1つが故障して縮退状態となっていて、且つ故障しているディスク以外のディスクに部分的なエラー(メディアエラーなど)があるときに生じる。ここでは、次に挙げる処理でデータ欠損が検出される。
・故障したディスクを新ディスクに交換し、当該故障したディスクのデータを新ディスクに復元するデータ復元処理
・故障してないディスクを対象とするメディア検査
(4)冗長性を持つRAIDレベルで適用される物理ディスク12-1〜12-4のいずれか1つが故障して縮退状態となっていて、且つホスト20からのリードアクセス時にディスクの部分的なエラーを検出した場合
である。
さて、データ欠損登録部113は、上記した4つのいずれかの場合に、ディスクの部分的なエラーが発生したデータ復元不能な箇所をデータ欠損が発生している箇所であるとして、図3のフローチャートに従う手順でデータ欠損登録処理を実行する。
まずデータ欠損登録部113は、物理ディスク12-1〜12-4のうちのいずれかのディスクから検出した、データ欠損が発生している箇所の全てのセクタ(データ欠損のある不良セクタ)を代替セクタ(予備セクタ)に割り当てる代替処理を行う(ステップS1)。
図4に物理ディスク12-i上の各セクタのフォーマットを示し、図5に物理ディスク12-i(iは1〜4のいずれか)上のデータ欠損のある不良セクタ51が代替セクタ52に割り当てられている状態と、当該代替セクタ52の内容とを示す。
本実施形態において、1セクタは、図4に示すように、データ領域41と、管理領域42と、ECC領域43とから構成される。データ領域41のサイズは例えば512バイトである。データ領域41は、基本的にはホスト20からのデータを格納するのに用いられる。管理領域42のサイズは例えば8バイトである。管理領域42の一部は、対応するセクタのデータ欠損の有無を示す欠損情報、例えばデータ欠損フラグを格納するためのデータ欠損フラグ領域421として用いられる。データ欠損フラグには、後述するようにF0,F1,F2の3種類がある。
ECC領域43は、データ領域41及び管理領域42に格納されている情報のエラー検出・訂正のためのエラー訂正符号、即ちECC(Error Correcting Code)を格納するのに用いられる。但し、ディスクアレイ制御装置11と論理ディスク12を構成する物理ディスク12-1〜12-4との間で入出力されるのは、データ領域41及び管理領域42の情報(ここでは520バイトの情報)である。ECC領域43の情報(ECC)は一般には物理ディスク12-1〜12-4内でのみ処理され、ディスクアレイ制御装置11からは認識できない。
データ欠損登録部113は、上記ステップS1においてデータ欠損のある不良セクタ51を代替セクタ52に割り当てると、その代替セクタ52のデータ領域41に固定のデータ、例えば512バイトが全て0のデータを書き込む(ステップS2)。この固定データを書き込む理由は、代替セクタ52に割り当てられた不良セクタ51は、データ欠損が発生しているセクタであり、当該不良セクタ51のデータを読み出して、または復元して、代替セクタ52に書き込むことができないためである。上記ステップS2において、データ欠損登録部113は、代替セクタ52のデータ欠損フラグ領域421に、“データ欠損あり”を示すデータ欠損フラグF1を設定する。このステップS2により、不良セクタ51が代替セクタ52を介してデータ欠損セクタとして登録され、当該不良セクタ51が、データ欠損が発生しているセクタであることを示すことができる。また上記ステップS2において、データ欠損登録部113は、論理ディスク12が適用されているRAIDレベルに応じ、データ欠損のある不良セクタ51に対応する冗長データ(パリティデータ)の生成と生成された冗長データの論理ディスク12(不良セクタ51に対応するセクタ)への書き込みとを行う。但し、RAID3または5では、不良セクタ51に対応する他の物理ディスク上のデータセクタが正しく読めることが必要となる。もし、不良セクタ51に対応するデータセクタにデータ欠損がある場合には、当該データセクタも代替処理して上記不良セクタ51の場合と同様の処理を行った上で、冗長データの生成と書き込みを行う必要がある。
データ欠損登録部113は更に、論理ディスク12が適用されているRAIDレベルに応じ(具体的には、論理ディスク12が冗長性のあるRAIDレベルで適用される場合)、データ欠損のある不良セクタ51に対応する他の物理ディスク上のセクタ(不良セクタ51と同一オフセット位置のセクタ)のデータ欠損フラグ領域421に、データ欠損フラグF2を設定する(ステップS3)。このデータ欠損フラグF2は、当該フラグF2が設定されているセクタが、他の物理ディスク上のデータ欠損のあるセクタに対応していることを示す。つまりデータ欠損登録部113は上記ステップS3において、データ欠損のある不良セクタ51に対応する他の物理ディスク上のセクタ(のデータ欠損フラグ領域421)に、当該セクタがデータ欠損のあるセクタ(ここでは不良セクタ51)に対応していることを示す欠損情報(データ欠損フラグF2)を記録する。このステップS3は、論理ディスク12がRAID0に代表される、冗長性を持たないRAIDレベルで適用される場合には、実行されない。また、論理ディスク12がRAID1で適用される場合には、データ欠損のある不良セクタ51に対応して冗長データが格納されるセクタにデータ欠損フラグF2が設定される。同様に、論理ディスク12がRAID3または5で適用される場合には、データ欠損のある不良セクタ51に対応するパリティセクタ及びデータセクタにデータ欠損フラグF2が設定される。これにより、不良セクタ51が割り当てられた代替セクタ52にデータ欠損が発生して当該代替セクタ52からデータ欠損フラグF1をリードできない場合、つまりデータ欠損が再度発生した場合でも、不良セクタ51に対応する他の物理ディスク上のセクタ(のデータ欠損フラグ領域421)にデータ欠損フラグF2が設定されているのを確認することで対処できるようになる。なお、データ欠損フラグF2を用いずに、不良セクタ51を別の代替セクタに割り当てて、当該別の代替セクタ(のデータ欠損フラグ領域421)にデータ欠損フラグF1を設定しても構わない。
次に、上述のデータ欠損登録処理が行われたセクタへのアクセスが行われる場合の動作について、(1)ホスト20からのリード要求に対するリード要求処理、(2)ホスト20からのライト要求に対するライト要求処理、(3)データ復元処理を例に順次説明する。
まず、ホスト20からのリード要求に対する処理(リード要求処理)について、図6のフローチャートを参照して説明する。
ディスクアレイ制御装置11内のリード要求処理部115は、ホスト20からリード要求を受け取ると、当該リード要求を、論理ディスク12を構成する物理ディスク12-1〜12-4のうちの該当する物理ディスク12-i(1つとは限らない)へのリード要求に変換して、その変換されたリード要求を当該該当する物理ディスクに発行する。
リード要求処理部115は、物理ディスク12-iに発行したリード要求により当該ディスクからデータ(セクタデータ)をリードする(ステップS11)。もし、リード要求で指定されたセクタデータを物理ディスク12-iから正常にリードできた場合(ステップS12)、リード要求処理部115内のデータ欠損判定部115aは、当該データに付されているデータ欠損フラグを参照する(ステップS13)。ここで、リード要求で指定されたディスク領域に、例えば図5に示す状態のデータ欠損のある不良セクタ51が含まれている場合、当該不良セクタ51が割り当てられた代替セクタ52のデータがリードされる。この代替セクタ52のデータ欠損フラグ領域421にはデータ欠損フラグF1が設定されている。つまり、代替セクタ52のデータ領域41のデータには、“データ欠損あり”を示すデータ欠損フラグF1が付されている。
データ欠損判定部115aは、物理ディスク12-iからリードされたセクタデータに付されているデータ欠損フラグがF1であるか否かにより、リードされたセクタはデータ欠損が発生しているセクタ(が割り当てられた代替セクタ)であるか否かを判定する(ステップS14)。もし、リードされたセクタが、データ欠損が発生しているセクタであるならば、データ欠損判定部115aはホスト20から要求されたリード要求処理は失敗(エラー)となったと判断する。この場合、リード要求処理部115内のエラー通知部115bは、ホスト20からのリード要求に対する応答として、当該ホスト20にエラーを返す(ステップS15)。
これに対し、リードされたセクタデータにデータ欠損フラグF1が付されていないならば、データ欠損判定部115aは、リードされたセクタは、データ欠損が発生していない正常なセクタであると判断する。この場合、リード要求処理部115は、リードされたセクタデータを要求されたセクタデータとしてホスト20に転送する(ステップS16)。
一方、リード要求で指定されたセクタデータのリードに失敗した場合(ステップS12)、リード要求処理部115は要求されたセクタに対応する他の物理ディスク上のセクタの情報から、要求されたセクタデータを復元可能か否かを判定する(ステップS17)。この判定は、要求されたセクタのデータを復元するのに必要な、当該セクタに対応する他の物理ディスク上のセクタのデータが全てリードできたか否かに基づいて行われる。ここで、一部のセクタのデータだけはリードできた場合、そのセクタのデータに付されているデータ欠損フラグが参照される。ここで、要求されたセクタに対応する他の物理ディスク上のセクタは、論理ディスク12が例えばRAID1で適用される場合には、冗長データが格納されるセクタであり、論理ディスク12が例えばRAID3または5で適用される場合には、データが格納されるデータセクタとパリティデータが格納されるパリティセクタとである。
もし、要求されたセクタデータを復元可能ならば、リード要求処理部115は当該セクタデータを復元し(ステップS18)、その復元されたデータを要求されたセクタデータとしてホスト20に転送する(ステップS16)。これに対し、要求されたセクタデータを復元できないものの、その復元のために一部のセクタデータをリードできた場合、リード要求処理部115内のデータ欠損判定部115aは、当該リードできたセクタデータに付されているデータ欠損フラグがF2であるか否か、つまり当該セクタがデータ欠損のあるセクタに対応しているか否かを判定する(ステップS19)。もし、データ欠損のあるセクタに対応しているならば、リード要求処理部115はデータ欠損登録部113に対し、上記要求された(データ復元すべき)セクタを、データ欠損フラグF1によりデータ欠損のあるセクタとして登録させる(ステップS20a)。そしてリード要求処理部115は、エラー通知部115bにより、ホスト20にエラーを返させる(ステップS15)。一方、データ欠損のあるセクタには対応していないか、データ欠損のあるセクタに対応していると判定できない場合には、リード要求処理部115はデータ欠損登録部113に対し、図3のフローチャートに示した手順でデータ欠損登録処理を行わせる(ステップS20b)。これにより、上記要求されたセクタがデータ欠損フラグF1によりデータ欠損のあるセクタとして登録されると共に、当該要求されたセクタに対応する他の物理ディスク上のセクタが、データ欠損フラグF2によりデータ欠損のあるセクタに対応するセクタとして登録される。リード要求処理部115はステップS20bの後、エラー通知部115bにより、ホスト20にエラーを返させる(ステップS15)。
データ欠損が物理ディスク12-iの一時的なエラーで発生した場合には、該当するセクタにデータを上書きすることで、エラーを解消することができる。物理ディスク12-iに物理的な損傷があるために永続的なエラーとなっているセクタに関しても、当該セクタが割り当てられた代替セクタにデータを書き込むことで、データ欠損を解消できる。
次に、ホスト20からのライト要求に対する処理(ライト要求処理)について、図7のフローチャートを参照して説明する。
(a)RAID0の場合
まず、論理ディスク12がRAID0で用いられ、且つ要求先が物理ディスク12-i上のセクタSECであるものとする。この場合、ディスクアレイ制御装置11内のライト要求処理部116は、物理ディスク12-i上のセクタSECに対し次のようなデータ書き込みを行う。即ちライト要求処理部116は、セクタSECのデータ領域41にはホスト20から要求されたデータを、当該セクタSECのデータ欠損フラグ領域421には“データ欠損なし”を示すデータ欠損フラグF2を、それぞれ書き込む(ステップS21)。このようにディスクアレイ制御装置11は、セクタSECへのデータライト時には、当該セクタSECを“データ欠損なし”の状態に設定する。もし、セクタSECがデータ欠損のある不良セクタ51の場合、上記ステップS21では、当該不良セクタ51が割り当てられた代替セクタ52へのデータ書き込みが行われる。この場合、ステップS21での書き込みにより、代替セクタ52は“データ欠損なし”の状態に設定される。
(b)RAID1の場合
次に、論理ディスク12がRAID1で用いられ、且つ要求先がマスタ物理ディスク上のセクタSECであるものとする。この場合、ライト要求処理部116は、マスタ物理ディスク上のセクタSECと当該SECに対応するサブ物理ディスク上のセクタSEC’へのデータライトを実行する(ステップS31)。このステップS31でのデータライト時には、ライト要求処理部116はセクタSEC及びSEC’の両方を、上記したRAID0におけるセクタSECへのデータライト時と同様に、“データ欠損なし”の状態に設定する。
(c)RAID3,5の場合
次に、論理ディスク12がRAID3またはRAID5で用いられるものとする。この場合、ライト要求処理部116は、ホスト20から要求されたデータのみでパリティを算出できるか否かを判定する(ステップS41)。
例えば1つのストライプグループに属する全てのデータストライプ(ここでは、物理ディスク12-1〜12-3上に存在するものとする)へのデータライトの場合、要求されたライトデータのみでパリティ(冗長データ)を生成(算出)できる。この場合、ディスクアレイ制御装置11は、各データストライプに書き込むライトデータをもとに、例えば排他的論理和演算により、同じストライプグループに属するパリティストライプに書き込むべきパリティデータを作成する(ステップS42)。そしてライト要求処理部116は、各データストライプへのデータライトと、パリティストライプへのパリティデータライトとを実行する(ステップS43)。このステップS43では、ライト要求処理部116は、各データストライプ及びパリティストライプに含まれる全てのセクタを“データ欠損なし”の状態に設定する。
これに対し、例えば物理ディスク12-i上のセクタSECへのデータライトの場合には、要求されたライトデータのみではパリティを生成できない。この場合、ライト要求処理部116内の冗長データ生成用情報読み出し部116aは、セクタ(データセクタ)SECに保存されているデータ(旧データ)及び当該セクタSECに対応するパリティセクタPSに保存されているパリティデータ(旧パリティ)を、パリティ生成用情報として読み出す(ステップS44)。
もし、ステップS44での読み出しに成功し、旧データ及び旧パリティ共にデータ欠損がないならば(ステップS45)、冗長データ生成用情報読み出し部116aは、当該旧データ及び旧パリティと、ホスト20から要求されたデータセクタSECに書き込むべきデータ(新データ)とから、パリティデータ(新パリティ)を生成する(ステップS46)。そして冗長データ生成用情報読み出し部116aは、データセクタSECへのデータライトと、パリティスセクタPSへのパリティデータライトとを実行する(ステップS47)。このステップS47では、冗長データ生成用情報読み出し部116aは、データセクタSEC及びパリティスセクタPSを“データ欠損なし”の状態に設定する。
一方、ステップS44での読み出しに失敗し、旧データ及び旧パリティの少なくとも一方にデータ欠損があることが検出されたならば(ステップS45)、ディスクアレイ制御装置11内のデータ欠損登録部113は、データセクタSEC及びパリティスセクタPSを、図3のフローチャートに示した手順で、データ欠損のあるセクタとして登録する(ステップS48)。なお、セクタSECに対応する他の全てのデータセクタのデータを読み出してパリティを生成する構成であっても構わない。
次に、ディスクアレイ制御装置11内のデータ復元部112によるデータ復元処理について、図8のフローチャートを参照して説明する。
論理ディスク12がデータ冗長性のあるRAIDレベル(例えばRAID1,3または5など)で用いられている場合、当該論理ディスク12を構成する物理ディスク12-1〜12-4のいずれか1つが故障しても、その故障した物理ディスクのデータを、残りの物理ディスクのデータから復元できる。但し、既に述べたように、残りの物理ディスクのいずれかにデータ欠損が発生している箇所があると、その箇所に対応する故障したディスクのデータは復元できない。
データ復元部112は、論理ディスク12からデータ復元に必要なデータ及び冗長データ(但し、RAID1では冗長データのみ)をリードする(ステップS51)。ここでは、物理ディスク12-1が故障した結果、当該故障した物理ディスク12-1のデータを、物理ディスク12-2〜12-4上のデータ及び冗長データから復元し、当該故障した物理ディスク12-1に代えて用いられる新たな物理ディスク(新ディスク)に保存するものとする。
もし、ステップS51において、少なくとも一部のリードに失敗して、該当する箇所でのデータ欠損を検出した場合(ステップS52)、データ復元部112からデータ欠損登録部113に制御が渡される。するとデータ欠損登録部113は、リードに失敗したセクタについて、図3のフローチャートに示したのと同様の手順で、データ欠損フラグF1によりデータ欠損のあるセクタとして登録する(ステップS53)。このステップS53では、正常にリードできたセクタには、データ欠損フラグF2により、データ欠損のあるセクタと対応していることが記録されるものの、データを復元すべきセクタには、データ欠損フラグF1によりデータ欠損のあることが記録される。ステップS53が実行されると、目的とするデータの復元処理は終了し、次のデータの復元処理が開始される。
また、ステップS51でのリードには成功したものの、リードした部分に既に“データ欠損あり”として記録されているセクタ、即ちデータ欠損フラグF1が設定されているセクタが含まれている場合も(ステップS54)、データ復元部112からデータ欠損登録部113に制御が渡される。このとき、データ欠損のあるセクタに対応する他の物理ディスク上のセクタ(のデータ欠損フラグ領域421)には、データ欠損フラグF2が記録されている。データ欠損登録部113は、データを復元すべきセクタに、データ欠損フラグF1によりデータ欠損のあることを記録する(ステップS55)。このステップS55が実行されると、目的とするデータの復元処理は終了する。
これに対し、ステップS51でのリードに成功し、且つリードした部分に“データ欠損あり”として記録されているセクタが含まれていない場合(ステップS54)、データ復元部112は、論理ディスク12からステップS51でリードしたデータ及び冗長データをもとに、対応するデータを復元する(ステップS56)。
上述したように本実施形態においては、各セクタの一部に確保されたデータ欠損フラグ領域421に保持される、データ欠損フラグと呼ぶフラグ情報(欠損情報)を用いて、データ欠損部分を管理している。これにより、ホストからの要求ではなく、ディスクアレイ装置10の内部の処理(ディスクアレイ制御装置11によるデータ復元処理やメディア検査)にて発見したデータ欠損を、必要なとき以外にはホストに認識させることなく、リードライト要求を処理できる。
なお、データ欠損登録部113によるデータ欠損登録処理で、データ欠損のあるセクタに対応する他の物理ディスク上のセクタに、データ欠損フラグF2に代えてデータ欠損フラグF1を記録する構成としても構わない。つまり、データ欠損のあるセクタに対応する他の物理ディスク上のセクタも、データ欠損のあるセクタとして取り扱う構成としても構わない。
[第1の変形例]
次に、上記実施形態の第1の変形例について説明する。
まず、第1の変形例で適用されるセクタのフォーマットを図9に示す。図9から明らかなように、第1の変形例では、管理領域42の一部に、データ欠損フラグ領域421とは別に、ライトフラグを格納するためのライトフラグ領域422が確保されている。このライトフラグは、対応するセクタに対してホスト20からのライト要求に従うデータライトが一度でも行われたか否かを示すフラグ情報(データライト情報)である。つまり第1の変形例では、論理ディスク12上の各セクタに、データ欠損の有無を示すデータ欠損フラグ以外に、ホスト20からのデータライトがあったか否かを示すライトフラグを記録する構成が適用される。
第1の変形例の特徴は、各セクタにライトフラグを記録することにより、データライトがあったか否かをセクタ毎に判別可能とし、更に、ホスト20からのデータライトがあった部分に関してはデータ欠損の有無を管理する一方、それ以外の部分では、もともとデータが書かれていないことから、データ欠損フラグの状態に無関係にデータ欠損と判定しない構成とした点にある。この第1の変形例によれば、ホスト20から実際にデータライトがあった部分だけのデータ欠損を管理することができる。つまり、第1の変形例においては、データ欠損の発生部分を限定することができる。但し、第1の変形例では、論理ディスク12が冗長性のあるRAIDレベルで適用される必要がある。
ディスクアレイ制御装置11は、論理ディスク12を作成する際に、当該論理ディスク12上の全セクタを初期化する。このときディスクアレイ制御装置11は、各セクタのライトフラグ領域422に、データライトなしを示す例えばライトフラグF10を設定する。
またディスクアレイ制御装置11は、ホスト20からライト要求を受け取った場合には、ライト要求処理部116として機能して、上記図7のフローチャートと同様の手順でライト要求処理を実行する。上記実施形態と異なる点は、書き込みの対象となるセクタのデータ領域41にデータ(またはパリティ)を書き込む際に、当該セクタのライトフラグ領域422に、データ欠損の有無に無関係に、データライトありを示すライトフラグF11を書き込む点である。
次に、上記第1の変形例におけるデータ欠損登録処理について、上記実施形態におけるデータ欠損登録処理(図3のフローチャート)と異なる点を中心に、図10のフローチャートを参照して説明する。なお、図3のフローチャートと同様のステップには、同一符号を付してある。
まずディスクアレイ制御装置11内のデータ欠損登録部113は、データ欠損のある不良セクタが検出された場合、上記実施形態と同様に、当該不良セクタを代替セクタに割り当てる代替処理を行う(ステップS1)。すると、データ欠損登録部113内のデータライト判定部113aが起動される。データライト判定部113aは、データ欠損のある不良セクタに対応する他の物理ディスク上のセクタのライトフラグを参照する(ステップS61)。明らかなように、論理ディスク12が冗長性のあるRAIDレベルで適用される第1の変形例では、物理ディスク12-1〜12-4上のそれぞれ対応するセクタ、つまりオフセット位置が同一のセクタは、全てデータライトされているか、全てデータライトされていないかのいずれかである。したがってデータライト判定部113aは、データ欠損のある不良セクタが検出された場合、当該不良セクタに対応する他の物理ディスク上のセクタのライトフラグ領域422に設定されているライトフラグを参照することにより、当該不良セクタに対するデータライトがあったか否かを判別することができる(ステップS62)。
データ欠損登録部113は、ステップS61で参照されたライトフラグがF10であり、したがってライトなしを示すと判定された場合(ステップS62)、データ欠損のある不良セクタが割り当てられた代替セクタのデータ領域41には固定データ(全て0のデータ)を書くものの、データ欠損フラグ領域421には“データ欠損あり”を示すデータ欠損フラグF1を書き込まない(ステップS63)。
このように、データライトが一度も行われていないセクタの障害に対しては、データ欠損の登録を行わないことで、データ欠損の発生確率を下げることができる。なお、ステップS61で参照されたライトフラグがF11であり、したがってライトありを示すと判定された場合(ステップS62)、データ欠損登録部113は、データ欠損の登録を伴う前記ステップS2及びS3を実行する。
[第2の変形例]
次に、上記実施形態の第2の変形例について説明する。
この第2の変形例の特徴は、セクタのデータ欠損を、当該セクタ内に欠損情報のための領域(データ欠損フラグ領域)を確保することなしに管理する点、つまり欠損情報(データ欠損フラグ)を用いることなく管理する点にある。したがって、第2の変形例では、論理ディスク12上の各セクタに、図4に示したような管理領域42を必ずしも確保する必要はない。第2の変形例で適用されるセクタのフォーマットを図11に示す。ここでは、1セクタは、データ領域41とECC領域43とから構成される。
第2の変形例では、データ欠損のある不良セクタが検出された場合、当該不良セクタの代替処理を行わない。これにより、その後データ欠損のある不良セクタをリードする場合には、当該リードに失敗して“データ欠損あり”が検出される。
さて、データを復元する処理では、上記実施形態でも述べたように、データ復元に必要なデータ及び冗長データ(RAID1では冗長データのみ)のリードが行われる。しかし、データ欠損がある場合には、リードに失敗してデータを復元できない。したがって、データを復元すべき箇所(セクタ)も“データ欠損あり”とすることが好ましい。
そこで、データを復元できないセクタ内に欠損情報のための領域(データ欠損フラグ領域)を確保することなしに、当該セクタをデータ欠損のあるセクタとして管理することが可能な、上記第2の変形例におけるデータ復元処理について、図12のフローチャートを参照して説明する。
まずディスクアレイ制御装置11内のデータ復元部112は、論理ディスク12からデータ復元に必要なデータ及び冗長データをリードする(ステップS71)。
もし、ステップS71において、少なくとも一部のデータのリードに失敗して、該当する箇所でのデータ欠損を検出した場合(ステップS72)、データ復元はできなくなる。この場合、データ復元部112はデータ欠損登録部113によるデータ欠損登録処理に代えて、当該データ復元部112内のエラー作成部112bによるエラー作成処理を行わせる。即ちエラー作成部112bは、データ復元すべき(であるもののデータ復元できなかった部分に含まれる)セクタが、メディアエラーとなるように設定する(ステップS73)。この設定は、例えば、データ復元すべきセクタのデータ領域41に固定データ(例えば全て0のデータ)が設定され、ECC領域43に当該データとは矛盾したECCが設定されたセクタデータ(つまりメディアエラーを引き起こすセクタデータ)を、強制的に物理ディスク12-iに書き込むことにより実現される。既に述べたように、ディスクアレイ制御装置11と物理ディスク12-iとの間で入出力(リード/ライト)される情報は、一般には、セクタ内のECC領域43を除く部分の情報である。そしてECC領域43の情報、つまりECCは、セクタ内のECC領域43を除く部分の情報をもとに物理ディスク12-iの内部で自動的に生成・処理される。しかし、特別のライトコマンド、例えばライトロングコマンドを用いるならば、ディスクアレイ制御装置11内のエラー作成部112bは、物理ディスク(物理ディスクドライブ)12-iの内部のECC生成・処理機能を抑止して、データ及び当該データとは矛盾したECCから構成されるセクタデータを当該物理ディスク12-iに書き込ませることができる。
上記ステップS73により、その後、データ復元できなかったセクタへのライトアクセスが行われる前に、当該セクタに対するリード要求がホスト20から発行された場合、当該セクタへのアクセスは可能であるが、メディアエラー(物理ディスク上でのエラー)となってリードに失敗することになる。この場合、要求されたセクタのデータは復元不能であることから、ディスクアレイ制御装置11のリード要求処理部115内のデータ欠損判定部115aではデータ欠損が判定(検出)される。するとリード要求処理部115内のエラー通知部115bは、ホスト20からのリード要求に対する応答として、当該ホスト20に対してエラーが返される。これによりホスト20は、リード要求先のセクタのデータ欠損を認識できる。
一方、データ復元に必要なデータ及び冗長データが正常にリードできたなら(ステップS72)、データ復元部112は、論理ディスク12からステップS71でリードしたデータ及び冗長データをもとに、対応するデータを復元する(ステップS74)
このように、上記実施形態の第2の変形例によれば、データ復元処理において、データ復元に必要なデータ及び冗長データをリードした際にデータ欠損を検出した結果、データ復元ができなかった部分に対し、メディアエラーが発生するように設定することにより、データ欠損を、欠損情報(データ欠損フラグ)を用いることなく管理できる。
なお、上記ステップS73において、データ復元すべき(であるもののデータ復元できなかった部分に含まれる)セクタだけでなく、当該セクタに対応する他の物理ディスク上のセクタに対しても、メディアエラーが発生するように設定する構成としても構わない。但し、リードに失敗したセクタについては、この設定は必ずしも必要としない。この構成を適用する場合、リード要求処理時に、リードに失敗し、要求されたセクタデータを復元することもできない場合に、要求されたセクタに対応する他の物理ディスク上のセクタに対しても、メディアエラーが発生するように設定すると良い。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、実施形態及びその変形例に亘る構成要素を適宜組み合せてもよい。
本発明の一実施形態に係るディスクアレイ装置の構成を示すブロック図。 データ欠損が発生する例を示す図。 同実施形態におけるデータ欠損登録処理の手順を示すフローチャート。 同実施形態で適用されるセクタフォーマットを示す図。 物理ディスク上のデータ欠損のある不良セクタ51が代替セクタ52に割り当てられている状態と、当該代替セクタ52の内容とを示す図。 同実施形態におけるリード要求処理の手順を示すフローチャート。 同実施形態におけるライト要求処理の手順を示すフローチャート。 同実施形態におけるデータ復元処理の手順を示すフローチャート。 同実施形態の第1の変形例で適用されるセクタフォーマットを示す図。 上記第1の変形例におけるデータ欠損登録処理の手順を示すフローチャート。 同実施形態の第2の変形例で適用されるセクタフォーマットを示す図。 上記第2の変形例におけるデータ復元処理の手順を示すフローチャート。
符号の説明
10…ディスクアレイ装置、11…ディスクアレイ制御装置、12…論理ディスク、12-1〜12-4,12-i…物理ディスク、20…ホスト、51…不良セクタ(データ欠損のある不良セクタ)、52…代替セクタ、41…データ領域、42…非データ領域、43…ECC領域、112…データ復元部、112a…データ復元用情報読み出し部、112b…エラー作成部、113…データ欠損登録部、113a…データライト判定部、115…リード要求処理部、115a…データ欠損判定部、115b…エラー通知部、116…ライト要求処理部、116a…冗長データ生成用情報読み出し部、421…データ欠損フラグ領域(欠損情報領域)、422…ライトフラグ領域(データライト情報領域)。

Claims (12)

  1. データを格納するためのデータ領域及びデータ欠損の有無を示す欠損情報を格納するための欠損情報領域を含むセクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを前記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置であって、
    前記論理ディスクへのリードアクセス時に復元不能なデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、当該不良セクタが割り当てられる代替セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報を記録することにより、前記論理ディスクへのリードアクセスが前記論理ディスクを利用するホストからのリード要求以外で行われた場合に、データ読み出し失敗が前記ホストに通知されるのを抑止するデータ欠損登録手段と、
    前記ホストからのリード要求に従うリードアクセスによって前記論理ディスクから読み出されるセクタのデータに基づき、当該セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報が記録されているかを判定するデータ欠損判定手段と、
    前記データ欠損判定手段によってデータ欠損ありを示す欠損情報が記録されていると判定された場合に、前記リード要求に対する応答としてデータ読み出し失敗を前記ホストに返すエラー通知手段と
    を具備することを特徴とするディスクアレイ制御装置。
  2. 前記データ欠損登録手段は、前記検出された不良セクタが割り当てられる前記代替セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報を記録する際に、当該不良セクタのデータに対応する冗長データ、もしくは当該不良セクタのデータに対応するデータ及び冗長データを格納している、前記複数の物理ディスクのうちの当該不良セクタとは異なる物理ディスク上のセクタの前記欠損情報領域にも、データ欠損ありを示す欠損情報を記録することを特徴とする請求項1記載のディスクアレイ制御装置。
  3. 前記複数の物理ディスクのうちのいずれか1つの物理ディスクのデータを復元するためのデータ復元手段であって、データの復元に必要な冗長データ、もしくはデータ及び冗長データを前記論理ディスクから読み出すためのリードアクセスを実行するデータ復元用情報読み出し手段を含むデータ復元手段を更に具備し、
    前記データ欠損登録手段は、前記データ復元に必要な情報の読み出し失敗により復元不能なデータ欠損のある不良セクタが検出された場合には、当該不良セクタに関し、データ欠損ありを示す欠損情報を記録するための処理を実行し、前記データ復元用情報読み出し手段によって読み出された前記データ復元に必要な情報に、データ欠損ありを示す欠損情報が記録されているセクタのデータが含まれている場合には、当該データ欠損ありを示す欠損情報が記録されているセクタに対応する、データを復元すべきセクタに関し、データ欠損ありを示す欠損情報を記録するための処理を実行する
    ことを特徴とする請求項1記載のディスクアレイ制御装置。
  4. 前記データ欠損登録手段は、前記データ復元に必要な情報の読み出し失敗により復元不能なデータ欠損のある不良セクタが検出された結果、当該不良セクタに関し、データ欠損ありを示す欠損情報を記録するための処理を実行する際には、当該不良セクタのデータに対応する冗長データ、もしくは当該不良セクタのデータに対応するデータ及び冗長データを格納している、前記複数の物理ディスクのうちの当該不良セクタとは異なる物理ディスク上のセクタの前記欠損情報領域にも、データ欠損ありを示す欠損情報を記録することを特徴とする請求項3記載のディスクアレイ制御装置。
  5. 前記ホストからのライト要求を処理するライト要求処理手段であって、要求されたデータのみ、もしくは要求されたデータ及び当該データに対応する冗長データを前記論理ディスクに書き込む際には、対応するセクタの前記欠損情報領域にデータ欠損なしを示す欠損情報を記録するライト要求処理手段を更に具備することを特徴とする請求項1記載のディスクアレイ制御装置。
  6. 前記ライト要求処理手段は、要求されたデータに対応する冗長データを生成する必要があり、且つ当該冗長データの生成に必要な情報を前記論理ディスクから読み出す必要がある場合に、当該冗長データの生成に必要な情報を前記論理ディスクから読み出すためのリードアクセスを実行する冗長データ生成用情報読み出し手段を含み、
    前記データ欠損登録手段は、前記冗長データの生成に必要な情報の読み出し失敗により復元不能なデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、データ欠損ありを示す欠損情報を記録するための処理を実行する
    ことを特徴とする請求項5記載のディスクアレイ制御装置。
  7. 前記複数の物理ディスク上の各セクタは、当該セクタへのデータライトがあったか否かを示すデータライト情報を格納するためのデータライト情報領域を更に含み、
    前記ライト要求処理手段は、要求されたデータのみ、もしくは要求されたデータ及び当該データに対応する冗長データを前記論理ディスクに書き込む際には、対応するセクタの前記データライト情報領域にデータライトありを示すデータライト情報を記録し、
    前記データ欠損登録手段は、前記不良セクタが検出された場合、前記複数の物理ディスクのうち当該不良セクタに対応する他の物理ディスク上のセクタの前記データライト情報領域にデータライトありを示すデータライト情報が記録されているかを判定するデータライト判定手段を含み、データライトありを示すデータライト情報が記録されていないセクタに関しては、当該セクタの前記欠損情報領域へのデータ欠損ありを示す欠損情報の記録を控える
    ことを特徴とする請求項5記載のディスクアレイ制御装置。
  8. セクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを前記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置であって、
    前記複数の物理ディスクのうちのいずれか1つの物理ディスクのデータを復元するためのデータ復元手段であって、データの復元に必要な冗長データ、もしくはデータ及び冗長データを前記論理ディスクから読み出すデータ復元用情報読み出し手段を含むデータ復元手段と、
    前記データ復元用情報読み出し手段による前記データの復元に必要な冗長データ、もしくはデータ及び冗長データの読み出しに失敗した場合、データを復元すべきセクタに対するリードアクセスでメディアエラーとなるように当該セクタの情報を設定するエラー作成手段と、
    前記論理ディスクを利用するホストからのリード要求に従うリードアクセスで復元不能なデータ読み出し失敗となった場合、前記リード要求に対する応答としてデータ読み出し失敗を前記ホストに返すエラー通知手段と
    を具備することを特徴とするディスクアレイ制御装置。
  9. データを格納するためのデータ領域及びデータ欠損の有無を示す欠損情報を格納するための欠損情報領域を含むセクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを前記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置に適用されるデータ欠損検出時の処理方法であって、
    前記論理ディスクへのリードアクセス時に復元不能なデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、当該不良セクタが割り当てられる代替セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報を記録することにより、前記論理ディスクへのリードアクセスが前記論理ディスクを利用するホストからのリード要求以外で行われた場合に、データ読み出し失敗が前記ホストに通知されるのを抑止するステップと、
    前記ホストからのリード要求に従うリードアクセスによって前記論理ディスクから読み出されるセクタのデータに基づき、当該セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報が記録されているかを判定するステップと、
    データ欠損ありを示す欠損情報が記録されていると判定された場合に、前記リード要求に対する応答としてデータ読み出し失敗を前記ホストに返すステップと
    を具備することを特徴とするデータ欠損検出時の処理方法。
  10. 前記ホストからのライト要求に応じて、要求されたデータのみ、もしくは要求されたデータ及び当該データに対応する冗長データを前記論理ディスクに書き込む際に、対応するセクタの前記欠損情報領域にデータ欠損なしを示す欠損情報を記録すると共に、当該セクタに前記欠損情報領域とは別に予め確保されているデータライト情報領域にデータライトありを示すデータライト情報を記録するステップと、
    前記不良セクタが検出された場合に、前記複数の物理ディスクのうち当該不良セクタに対応する他の物理ディスク上のセクタの前記データライト情報領域にデータライトありを示すデータライト情報が記録されているかを判定するステップと、
    データライトありを示すデータライト情報が記録されていないと判定されたセクタに関し、前記データ欠損ありを示す欠損情報が記録されるのを抑止するステップと
    を更に具備することを特徴とする請求項9記載のデータ欠損検出時の処理方法。
  11. セクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを前記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置に適用されるデータ欠損検出時の処理方法であって、
    前記複数の物理ディスクのうちのいずれか1つの物理ディスクのデータを復元するために、データの復元に必要な冗長データ、もしくはデータ及び冗長データを前記論理ディスクから読み出すステップと、
    前記データの復元に必要な冗長データ、もしくはデータ及び冗長データの読み出しに失敗した場合、データを復元すべきセクタに対するリードアクセスでメディアエラーとなるように当該セクタの情報を設定するステップと、
    前記論理ディスクを利用するホストからのリード要求に従うリードアクセスで復元不能なデータ読み出し失敗となってデータ欠損が検出された場合、前記リード要求に対する応答としてデータ読み出し失敗を前記ホストに返すステップと
    を具備することを特徴とするデータ欠損検出時の処理方法。
  12. データを格納するためのデータ領域及びデータ欠損の有無を示す欠損情報を格納するための欠損情報領域を含むセクタを最小のアクセス単位としてアクセス可能な複数の物理ディスクから構成され、データのみ、もしくはデータ及び当該データに対応する冗長データを前記複数の物理ディスクに分散して格納可能な論理ディスクへのアクセスを制御するディスクアレイ制御装置に、
    前記論理ディスクへのリードアクセス時に復元不能なデータ欠損のある不良セクタが検出された場合、当該不良セクタに関し、当該不良セクタが割り当てられる代替セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報を記録することにより、前記論理ディスクへのリードアクセスが前記論理ディスクを利用するホストからのリード要求以外で行われた場合に、データ読み出し失敗が前記ホストに通知されるのを抑止するステップと、
    前記ホストからのリード要求に従うリードアクセスによって前記論理ディスクから読み出されるセクタのデータに基づき、当該セクタの前記欠損情報領域にデータ欠損ありを示す欠損情報が記録されているかを判定するステップと、
    データ欠損ありを示す欠損情報が記録されていると判定された場合に、前記リード要求に対する応答としてデータ読み出し失敗を前記ホストに返すステップと
    を実行させるためのプログラム。
JP2004105979A 2004-03-31 2004-03-31 ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム Expired - Fee Related JP4143040B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004105979A JP4143040B2 (ja) 2004-03-31 2004-03-31 ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004105979A JP4143040B2 (ja) 2004-03-31 2004-03-31 ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2005293119A true JP2005293119A (ja) 2005-10-20
JP4143040B2 JP4143040B2 (ja) 2008-09-03

Family

ID=35325993

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004105979A Expired - Fee Related JP4143040B2 (ja) 2004-03-31 2004-03-31 ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4143040B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008126169A1 (ja) * 2007-03-12 2008-10-23 Fujitsu Limited ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置
JPWO2008041267A1 (ja) * 2006-09-29 2010-01-28 富士通株式会社 システム管理プログラム、システム管理装置およびシステム管理方法
US8423709B2 (en) 2009-09-10 2013-04-16 Kabushiki Kaisha Toshiba Controller
US9229863B2 (en) 2009-12-18 2016-01-05 Kabushiki Kaisha Toshiba Semiconductor storage device
KR20170092333A (ko) * 2016-02-03 2017-08-11 삼성전자주식회사 Raid-6 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
JP2017162202A (ja) * 2016-03-09 2017-09-14 富士通株式会社 ストレージ制御装置、ストレージ制御方法、およびストレージ制御プログラム
CN114546272A (zh) * 2022-02-18 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 快速通用的raid降级为raid5的方法、系统、设备和存储介质
US11681612B2 (en) 2020-05-27 2023-06-20 Buffalo Inc. Storage apparatus and method that generates preliminary management information including the same content as main management information for identifying physical address of data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03240123A (ja) * 1990-02-16 1991-10-25 Fujitsu Ltd アレイディスク装置
JPH1195935A (ja) * 1997-09-22 1999-04-09 Nec Eng Ltd ディスクアレイ装置のデータ復元判定回路
JP2000276308A (ja) * 1999-03-29 2000-10-06 Toshiba Corp ディスクサブシステム及びディスクサブシステムにおけるデータ復元方法
JP2003303057A (ja) * 2003-03-26 2003-10-24 Toshiba Corp ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03240123A (ja) * 1990-02-16 1991-10-25 Fujitsu Ltd アレイディスク装置
JPH1195935A (ja) * 1997-09-22 1999-04-09 Nec Eng Ltd ディスクアレイ装置のデータ復元判定回路
JP2000276308A (ja) * 1999-03-29 2000-10-06 Toshiba Corp ディスクサブシステム及びディスクサブシステムにおけるデータ復元方法
JP2003303057A (ja) * 2003-03-26 2003-10-24 Toshiba Corp ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2008041267A1 (ja) * 2006-09-29 2010-01-28 富士通株式会社 システム管理プログラム、システム管理装置およびシステム管理方法
JP4985647B2 (ja) * 2006-09-29 2012-07-25 富士通株式会社 修復プログラム、修復装置および修復方法
US8276017B2 (en) 2006-09-29 2012-09-25 Fujitsu Limited Process, apparatus, and program for system management
WO2008126169A1 (ja) * 2007-03-12 2008-10-23 Fujitsu Limited ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置
US8423709B2 (en) 2009-09-10 2013-04-16 Kabushiki Kaisha Toshiba Controller
US9229863B2 (en) 2009-12-18 2016-01-05 Kabushiki Kaisha Toshiba Semiconductor storage device
KR20170092333A (ko) * 2016-02-03 2017-08-11 삼성전자주식회사 Raid-6 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
JP2017162202A (ja) * 2016-03-09 2017-09-14 富士通株式会社 ストレージ制御装置、ストレージ制御方法、およびストレージ制御プログラム
US11681612B2 (en) 2020-05-27 2023-06-20 Buffalo Inc. Storage apparatus and method that generates preliminary management information including the same content as main management information for identifying physical address of data
CN114546272A (zh) * 2022-02-18 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 快速通用的raid降级为raid5的方法、系统、设备和存储介质
CN114546272B (zh) * 2022-02-18 2024-04-26 山东云海国创云计算装备产业创新中心有限公司 快速通用的raid降级为raid5的方法、系统、设备和存储介质

Also Published As

Publication number Publication date
JP4143040B2 (ja) 2008-09-03

Similar Documents

Publication Publication Date Title
US7565573B2 (en) Data-duplication control apparatus
US9009526B2 (en) Rebuilding drive data
JP5768587B2 (ja) ストレージシステム、ストレージ制御装置およびストレージ制御方法
US7779202B2 (en) Apparatus and method for controlling disk array with redundancy and error counting
US20050229033A1 (en) Disk array controller and information processing apparatus
US9081697B2 (en) Storage control apparatus and storage control method
EP3244315B1 (en) Method and apparatus for performing data recovery in redundant storage system
JP4114877B2 (ja) 不正データを検出するための装置、方法、及びプログラム
JP4491330B2 (ja) ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム
JP2002175158A (ja) ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ
JP2007052509A (ja) ディスクアレイ装置における媒体エラーリカバリ装置、方法、及びプログラム
US7730370B2 (en) Apparatus and method for disk read checking
JP4203034B2 (ja) アレイコントローラ、メディアエラー修復方法及びプログラム
JP4143040B2 (ja) ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム
US20060215456A1 (en) Disk array data protective system and method
US20040128582A1 (en) Method and apparatus for dynamic bad disk sector recovery
TW201329701A (zh) 具有自動重映射功能的磁碟陣列及其自動重映射方法
JP4469822B2 (ja) ディスクアレイ装置およびディスクアレイ装置のデータ管理方法
JP2006285527A (ja) ストレージ装置およびプログラム。
JP2006079219A (ja) ディスクアレイ制御装置およびディスクアレイ制御方法
US20130212428A1 (en) Information storage medium library array apparatus, information recording method and information recording program
US7174476B2 (en) Methods and structure for improved fault tolerance during initialization of a RAID logical unit
US20140380090A1 (en) Storage control device and storage control method
JP2010536112A (ja) 中断された書込みの回復のためのデータ記憶方法、機器およびシステム
JP6175771B2 (ja) ディスクアレイ装置、バッドセクタ修復方法および修復プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080515

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: 20080610

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: 20080613

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

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130620

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

LAPS Cancellation because of no payment of annual fees