JP2004288078A - 固定長ディスクを利用したディスクアレイシステム - Google Patents
固定長ディスクを利用したディスクアレイシステム Download PDFInfo
- Publication number
- JP2004288078A JP2004288078A JP2003081717A JP2003081717A JP2004288078A JP 2004288078 A JP2004288078 A JP 2004288078A JP 2003081717 A JP2003081717 A JP 2003081717A JP 2003081717 A JP2003081717 A JP 2003081717A JP 2004288078 A JP2004288078 A JP 2004288078A
- Authority
- JP
- Japan
- Prior art keywords
- disk
- data
- array system
- guarantee code
- disk array
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1009—Cache, i.e. caches used in RAID system with parity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】複数の保証コードをまとめてセクタ長で管理し、データとの対応付け、デバイスへのリード・ライト制御をすべてハードウェアで行うことにより、従来同等の信頼性を実現する。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、コンピュータシステムの記憶システムとして用いられるディスクアレイシステムの制御方法に係わり、特に記憶媒体としてセクタ長固定のデバイスを用いた場合の、ディスクアレイシステムの高信頼化に関する。
【0002】
【従来の技術】
ディスクアレイシステムは、RAID(Redundant Arrays of Inexpensive Disks)とも呼ばれ、複数のディスク装置をアレイ状に配置した構成を有する。ディスクアレイシステムでは、ホストからのリード要求(データの読み出し要求)およびライト要求(データの書き込み要求)を、複数のディスクに対して並列に実行することにより、入出力要求を高速に処理するとともに、データに冗長データを付加することによって信頼性を向上させている。ディスクアレイシステムは、冗長データの種類とディスクアレイシステムの構成により5つのレベルに分類されている(非特許文献1)。
【0003】
ディスクアレイシステムを実現するためには、ホストから受信したリード/ライト要求を、各ディスク装置へのリード/ライト要求に変換し、ライト時にはデータを各ディスク装置へ分散させて書き込み、リード時には各ディスク装置からデータを読み出して集合させる、データ分散・集合制御を行う必要がある。このような制御をディスクアレイ制御と呼ぶこととする。
【0004】
ディスクアレイシステムにおいては、ディスク装置の障害時にもデータを復元できるように冗長データを作成し、ディスク装置に保存しているが、さらに、ディスクアレイ全体の信頼性を高める目的で、各論理データブロックごとに保証コードを付加する方式が知られている。保証コードを付加する方法としては、例えば、特許文献1や特許文献2に記載されているように、データをディスク装置へ書き込む際には、各論理データブロックごとに論理的なアドレス値LA(Logical Address)と水平方向の排他的論理和LRC(Longitudinal Redundancy Check)とからなる保証コードをデータに付加してディスク装置へ書き込み、データをディスク装置から読み出す際には、各論理データブロックに付加されたLA及びLRC値をチェックすることによりディスク装置内でのアドレス化け、データ化けを確認する方法が知られている。
【0005】
【特許文献1】
特開2001−202295号広報
【特許文献2】
特開2000−347815号広報
【非特許文献1】
デビット・エー・パターソン(David A.Patterson)外2名著、「レイド装置の一考察(A Case for Redundant Arrays of Inexpensive Disks (RAID))」、1998年ACM SIGMOD国際会議予稿集(Proceedings of the 1988 ACM SIGMOD International Conference on Management of Data)、ACMプレス(ACM Press)、1988年、p.109−p.116
【0006】
【発明が解決しようとする課題】
通常ディスクドライブのセクタサイズは512byteであり、ディスク装置はセクタサイズを最小単位としてアクセスされる。
【0007】
従来の方法においては、ディスク装置として、SCSI(Small Computer System Interface)ディスクやFC(FibreChannel)ディスクといったセクタ長可変のディスクドライブが用いられていた。そのため、論理データブロック長を通常のディスクドライブのセクタ長である512byteとした場合に、論理データブロックに更にLA4byte、LRC4byteの計8byteの保証コードが付加されて、アクセスすべきデータ量が合計520byte長となっても、520byteをセクタサイズとしてディスク装置をアクセスすることは可能であった。
【0008】
しかし、セクタ長が512byteの固定長に設定されているディスクをディスク装置として用いようとすると、520byteをセクタサイズとしてディスク装置にアクセスすることはできないため、従来と同じ保証コードの付与方法を用いることはできない。
【0009】
本発明の目的は、ディスクアレイシステムにおいて、ディスク装置にアクセス単位長が固定のデバイスを用いた場合にも、保証コードを付加することができる技術を提供することにある。
【0010】
本発明の他の目的は、アクセス単位長が固定長のデバイスをディスク装置として用いた、従来と同等の信頼性を確保したディスクアレイシステムを提供することにある。
【0011】
【課題を解決するための手段】
上記目的を達成するために、ディスクアレイシステムは、アクセス単位長が固定長の複数のディスク装置を有し、計算機から受信したデータに対してアクセス単位長毎に保証コードを付与し、データと保証コードをディスク装置内の異なる記憶領域に格納する。
【0012】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。尚、この実施形態によって本発明が限定されるものではない。
【0013】
まず、本実施形態のシステム構成を、図1を用いて説明する。
【0014】
図1において、ホスト計算機(以下、単にホストという。)A100、ホストB110、ホストC120は、ディスクアレイシステム200に対してリード/ライト要求を出し、データの入出力を行う装置である。本実施形態における計算機システムにおいては、一又は複数のホストとディスクアレイシステム200とは、バススイッチ130を介して接続される。
【0015】
ディスクアレイシステム200は、ホスト入出力インタフェース210、211と、ディスクキャッシュ230と、ディスク入出力インタフェース250、251と、ディスク装置群270、271と、ディスクアレイ全体の制御を行うプロセッサ(MPU)280と、バスブリッジ285と、メモリ290と、キャッシュコントローラ300とを有している。ディスク装置群270、271は、各々が少なくとも1台以上のディスク装置を有している。本実施形態では、一例として、ディスク装置群270はディスク装置277〜279を有するものとする。ホスト入出力インタフェース210、211は、少なくとも1つ以上存在すればよい。ディスク入出力インタフェース250、251は、少なくとも1つ以上存在すればよい。ディスク装置群270、271は、少なくとも1つ以上存在すればよい。
【0016】
尚、ホスト入出力インタフェース、キャッシュコントローラ、MPU、バスブリッジ、メモリ、ディスクキャッシュ、及びディスク入出力インタフェースを、本実施形態においてはディスクコントローラと呼ぶ。
【0017】
ホストA100、ホストB110、ホストC120は、バススイッチ130を介して、ホストバス(ホスト通信路)A140、ホストバス(ホスト通信路)B141によりディスクアレイ200のホスト入出力インタフェース210、211に接続される。図1には3台のホストがディスクアレイシステム200に接続されている例を示したが、少なくとも1つ以上のホストがディスクアレイシステム200に接続されればよい。
【0018】
ホストA100、ホストB110、ホストC120からの入出力要求を受け付け、これらホストとキャッシュコントローラ300との間のデータの転送を実行するホスト入出力インタフェース210、211は、ホスト側内部バス(ホスト側内部通信路)220を介してキャッシュコントローラ300と接続される。
【0019】
ディスク装置群270、271とキャッシュコントローラ300との間のデータ転送を実行するディスク入出力インタフェース250、251は、各々ディスクバス(ディスク通信路)A260、ディスクバス(ディスク通信路)B261によりディスク装置群270、271と接続され、ディスク側内部バス(ディスク側内部通信路)240によりキャッシュコントローラ300と接続される。ディスク入出力インタフェース250は、キャッシュコントローラ300とディスク装置群270との間を転送される論理データブロックに対して、LA及びLRCを分離又は結合するLA/LRC分離/結合部255を有する。LA/LRC分離/結合部255の詳細については後述する。ディスク入出力インタフェース251もディスク入出力インタフェース250と同様の構成又は機能を有する。
【0020】
本実施形態においては、ディスク装置277〜279は、ATA(AT Attachment)ディスクやSATA(Serial ATA)ディスクといったセクタ長が512byte固定のディスク装置である。これらのディスク装置は、セクタ長が可変であるSCSIやFCディスクに比べて価格が3分の1程度で安価であるという特徴がある。従って、これらのディスク装置を用いれば安価なディスクアレイシステムを構築することができる。ATAディスクの場合は同一バス上にディスク装置を2つまで、またSATAの場合は同一バス上にディスク装置を1つまでしか接続できないという制限がある。従ってディスク入出力インタフェース250、251は、必要な台数分ディスク装置を接続できるよう、必要なディスク台数に対応する数のディスクバスA260、ディスクバスB261を接続するためのポートを、一又は複数持つ。
【0021】
尚、本実施形態においては、ディスクアレイシステム200のディスク装置群はセクタ長が512byteと固定のディスク装置で構成される例を示したが、ディスク装置の種類はこれに限られることはなく、セクタ長が固定のディスク装置であれば、例えば2048byte等、セクタ長の値はいくつであっても構わない。
【0022】
ディスクキャッシュ230は、キャッシュバス(キャッシュ通信路)231によりキャッシュコントローラ300に接続される。
【0023】
キャッシュコントローラ300は、ホスト入出力インタフェース210、211とディスクキャッシュ230との間のデータ転送をバッファリングするホスト側内部バスバッファ310と、ディスクキャッシュ230とキャッシュコントローラ300との間のデータ転送を制御するキャッシュ制御部320と、ディスク入出力インタフェース250、251とディスクキャッシュ230との間のデータ転送をバッファリングするディスク側内部バスバッファ330とを有する。また、キャッシュコントローラ300は、ホスト入出力インタフェース210、211からディスクキャッシュ230に転送されるデータに後述するLA及びLRCを付加し、ディスクキャッシュ230からホスト入出力インタフェース210、211に転送されるデータに付加されているLA及びLRCを検査し又削除し、ディスクキャッシュ230とディスク入出力インタフェース250、251間を転送されるデータに付加されているLA及びLRCを検査する、LA/LRC付加/検査/削除部340を有する。
【0024】
MPU280は、バスブリッジ285を介してメモリ290およびキャッシュコントローラ300に接続される。
【0025】
メモリ290は、MPU280がディスクアレイ制御処理を実行するために使用するディスクアレイ制御プログラム291と、キャッシュコントローラ300に対してLAの設定を指示したり、ホスト入出力インタフェース210、211、ディスク入出力インタフェース250、251に対して、データ転送指示を発行したりするための、内部データ転送制御プログラム292を備えている。
【0026】
次に、LA及びLRCについて説明すると共に、LA/LRC付加/検査/削除部340によって転送データに対して行われるLA又はLRCの付加、検査、削除処理について説明する。
【0027】
本実施形態におけるディスクアレイ200は、ホストコンピュータから受信するデータを論理的なブロックに分割して管理・処理するが、その分割最低単位を論理データブロックと呼ぶことにする。尚、本実施形態においては、論理データブロックのサイズはディスク装置への最小リード/ライト単位(即ちセクタサイズ)である512byteとする。
【0028】
キャッシュコントローラのLA/LRC付加/検査/削除部340は、各論理データブロックに、転送元アドレスの一部を含む4byteのLAと呼ばれる保証コードを付加して、分割されたデータ(論理データブロック)の異常アドレスに対する読み出し/書き込みを検出できるようにする。このLAの値は、連続する論理データブロック間では連続する値をとる。MPU280は、メモリ290内に格納されている内部データ転送制御プログラム292を実行することによって、LA/LRC付加/検査/削除部340に適当な値を指定する。LA/LRC付加/検査/削除部340は、キャッシュコントローラで分割されたホストからの受信データ(論理データブロック)のうち、最初の論理データブロックにはMPU280によって指定された値をLAとして付加し、それに続く論理データブロックには、MPUから指定された値に1ずつ加算した値をLAとして付加する。
【0029】
論理データブロック512byteにLA4byteを加えた516byte長のデータの1byte目から516byte目までを、4byte単位で排他的論理和をとった値がLRCの値である。LA/LRC付加/検査/削除部340は、各論理データブロックと付加されているLAについてLRCの値を計算し、論理データブロックにLAが付加されたものに、更にLRCを付加する。LA/LRC付加/検査/削除部340は、LRCの値を検査することにより、データ転送中およびディスク装置内部で生じたデータビットエラーを検出できる。
【0030】
尚、LA/LRCの付加、検査、削除の具体的な方法については、特許文献1や特許文献2に記載されている。
【0031】
図2に、LA/LRC付加/検査/削除部340がデータにLA及びLRCを付加する具体的な例を示す。論理データブロック401、411、421は、ホストA100からディスクアレイシステム200に転送されたホストデータが、キャッシュコントローラ300によって分割されたものであり、もともとは、論理データブロック401、論理データブロック411、論理データブロック421の順に連続したホストデータであったものである。LA402は、論理データブロック401に対応するLAであり、4byteの大きさを持つ。LA402は、論理データブロック401の最後尾に付加されるものとする。また更に、論理データブロック401にLA402を加えた516byte長のデータを、4バイト単位で横方向(1byte目から516byte目への方向)に排他的論理和をとった値が、LRC403としてLA402の後ろに付加される。LRC403の大きさは4byteである。LA412とLRC413、LA422とLRC423はそれぞれ論理データブロック411、421に対するLA及びLRCであり、LA402、LRC403と同様に各論理データブロックに付加される。論理データブロック401、LA402、LRC403をあわせた520byteのデータを拡張データ400と呼ぶ。データ410、420も同様に拡張データである。
【0032】
LA及びLRCの付加処理は、ホスト入出力インタフェース210又は211からディスクキャッシュ230へのデータ転送時に、LA/LRC付加/検査/削除部340によって実行される。また、ディスクキャッシュ230からホスト入出力インタフェース210又は211へのデータ転送時に、LA/LRC付加/検査/削除部340が、ディスクキャッシュ230から読み出された拡張データ中のLA及びLRCを検査することにより拡張データに誤りがないことを調べ、誤りがなければLA/LRC付加/検査/削除部340はLA及びLRCの合計8byte分を拡張データから削除する。そしてキャッシュコントローラ200は、論理データブロック512byteのみをホスト入出力インタフェース210又は211へ転送する。従って、ホスト側内部バス220上を流れるデータは、論理データブロックであり、キャッシュバス231、ディスク側内部バス240上を流れるデータは、拡張データとなる。
【0033】
ディスクキャッシュ230とディスク入出力インタフェース250又は251間で転送されるのは拡張データである。ディスクキャッシュ230とディスク入出力インタフェース250、251間で拡張データが転送される場合には、LA/LRC付加/検査/削除部340は、LA及びLRCの検査のみを行い、誤りがなければ拡張データの転送が続行される。LA/LRC付加/検査/削除部340がLA及びLRCを検査した時にLAあるいはLRCの誤りが検出された場合は、LA/LRC付加/検査/削除部340により誤りの内容がMPU280へ報告され、MPU280がエラー処理ルーチンにより誤りを適切に処理する。
【0034】
次に、ディスク入出力インタフェース250及び251が有する、LA/LRC分離/結合部255について説明し、又、セクタ長512byte固定のディスク装置に対して論理データブロック、LA及びLRCを格納する方法を説明する。
【0035】
本実施形態において使用されるディスク装置は、セクタ長が512byteと固定であるため、ディスク装置に対するリード/ライト処理は、最小単位で512byte単位でしか実行できない。前述のように拡張データは520byteであり、ディスク入出力I/F250は、拡張データをこのままディスク装置へ書き込むことはできない。また保証コード部分(保証コード部分とは、LA及びLRCを合わせた部分のことを言う。)の合計サイズは8byteであるから、ディスク入出力I/F250が保証コード部分のみをこのままディスク装置へ書き込むと、セクタ512byte中8byteを除いた504byteが無意味なデータになってしまい、ディスク容量の多くを無駄にすることとなる。
【0036】
そこで、本実施の形態では、図3に示すように複数の論理データブロックに付加されている保証コード部分を集めて制御することにより、この問題を解決する。具体的には、保証コード部分8byteを64個分集めると512byteになるので、図3に示すように、LA/LRC分離/結合部255は、論理データブロック64個分の保証コード部分を集めて一つのLA/LRC群を形成する。
【0037】
より具体的な制御方法としては、図4に示すように、1Mbyteを一つの単位として、先頭から2016個の論理データブロックが配置され、その後ろに論理データブロックの配置と同じ順番でLA/LRC群が配置されるよう、ディスク入出力インタフェース250、251はディスク装置群にデータを格納する。ここでLA/LRC群1は、論理データブロックであるDATA1からDATA64までに対応する64個の保証コード部分を集めたものであり、同様にLA/LRC群2は、DATA65からDATA128に対応する保証コード部分の集合である。ディスク入出力インタフェース250、251が、1Mbyteを単位として論理データブロック及びLA/LRC群をディスク装置内に配置するよう制御するため、1Mbyteの範囲に収めるために最後のLA/LRC群32だけは256byteの大きさとなっており、1Mbyteの範囲中、最後の256byteは空き領域となる。
【0038】
論理データブロックと保証コード部分とをディスク装置内に図4の様に配置、格納すると、任意の論理データブロックであるDATAXに対応する保証コード部分が格納されているディスク装置内の位置は、次の計算式から求めることができる。即ち、計算式(X/64)+1の整数部分をYとすると、論理データブロックDATAXの保証コード部分は、LA/LRC群Y内の(X mod 64)−1に8byteを乗じた位置から8byte分を占めていることになる。この計算結果がマイナスの場合(Xが64で割り切れる場合)は、対応する保証コード部分はそのままマイナスの位置、すなわちLA/LRC群(Y−1)の最後尾8byteになる。
【0039】
例えばDATA127の保証コード部分は、(127/64)+1=2.98・・・からLA/LRC群2内に存在し、(127mod64)−1=62、62×8=496、よってLA/LRC群2の先頭から496byte目からの8byte分を占めている。このように、1Mbyte範囲ごとに、論理データブロックと保証コード部分のディスク装置内での格納位置は、機械的に計算可能である。
【0040】
LA/LRC分離/結合部255は、内部にLA/LRC群1つ分を蓄える512byte容量のバッファを持つ。上述の様に、一つのLA/LRC群は、論理データブロック64個分に対応する保証コード部分を有する。そこで、LA/LRC分離/結合部255は、同じLA/LRC群に対応する64個の論理データブロックを一組の論理データブロックグループとして管理すると共に、論理データブロックグループとこれに対応するLA/LRC群との組合せに対してグループナンバーをつけて、グループナンバーを用いて論理データブロックグループ及びLA/LRC群を管理する。
【0041】
このグループナンバーは、LA/LRC分離/結合部255が実際に論理データブロックグループとこれに対応するLA/LRC群との組合せに対して適当な番号Zをナンバリングすることにより定めても良い。
【0042】
グループナンバーは論理アドレスを含むLAから算出することもできる。LAは連続する論理データブロック間では連続した値となるから、同じグループに属する論理データブロックのLAの値は連続した値であると考えられる。従って、(LAの値/64)の商の整数部分をZ’とすると、Z’の値が同じ値となる論理データブロックは、同じLA/LRC群と対応付けられている、即ち同じ論理データブロックグループに属する論理データブロックであると考えられる。そこで、このZ’の値を論理データブロックグループとこれに対応するLA/LRC群とに対して付与されているグループナンバーとしても良い。
【0043】
更に、論理データブロックの転送時には、転送対象の論理データブロックを特定するためのアドレスが指定されるので、そのアドレスからグループナンバーを算出することも可能である。同じ組に属する論理データブロックは、ディスク装置群内では、512byteが64個分、すなわち32Kbyte範囲内に格納されているはずである。従って少なくとも32Kbyte以上離れたアドレスへのデータ転送は、別の論理データブロックグループに属する論理データブロックの転送ということになる。そこで、ある論理データブロックグループの先頭論理データブロックのディスク装置内での位置を基準位置として、転送対象の論理データブロックのアドレスが示すディスク装置内の格納位置と、基準位置との間に存在する記憶領域のサイズを、32Kbyteで割った際の商の整数部分(この商の整数部分の値をZ’’とする。)をグループナンバーとしても良い。
【0044】
図5に示すフローチャートを用いて、ディスク入出力インタフェース250によって実行される、ディスクキャッシュ230からディスク装置群270へのデータ転送処理の流れを説明する。
【0045】
ディスク入出力インタフェースは、内部に拡張データ520byteを格納するバッファを有する。MPU280が発行した、ディスクキャッシュ230からディスク装置群270へのデータ転送指示を、ディスク入出力インタフェース250が受信すると、ディスク入出力インタフェース250は、ディスクキャッシュ230からディスク入出力インタフェース内部のバッファに、論理データブロックに保証コード部分(LA及びLRC)が付加されている拡張データ520byteを読込む(ステップ1000)。そして、LA/LRC分離/結合部255が、読み込まれた拡張データを論理データブロック512byteとLA/LRC(保証コード部分)8byteに分離して、ディスク装置群270へ論理データブロックのみを書き込む(ステップ1010)。
【0046】
LA/LRC分離/結合部255は上述の様に、内部にLA/LRC郡一つ分を蓄えるバッファを持つので、ステップ1020において、LA/LRC分離/結合部255は、そのバッファに前回の拡張データブロックの転送時に格納されたLA/LRC群に対応付けられたグループナンバーと、ステップ1010でディスク装置群へ書き込まれた論理データブロックに対応付けられたグループナンバーとが一致するか否かを比較する。一致しなかった場合はバッファ内のLA/LRC群は直前に行われたデータ転送に対応するLA/LRC群で、現在転送している拡張データブロックに対応するLA/LRC群とは異なるので、ディスク入出力インタフェース250はバッファ内のLA/LRC群をディスク装置群270へ書き出し、バッファをクリアする(ステップ1030)。その後、LA/LRC分離/結合部255はステップ1040において、ステップ1010でディスク装置群270へ書き出された論理データブロックに対応する保証コード部分を、ディスク入出力インタフェース内部のバッファからLA/LRC分離/結合部255内のバッファへ書き込み、ステップ1000に戻りデータ転送処理を続ける。
【0047】
ステップ1020において、グループナンバーが一致した場合は、ステップ1010でディスク装置群270に書き出した論理データブロックが属する論理データブロックグループに対応するLA/LRC群がすでにバッファ内にあるので、ステップ1010でディスク装置群270に書き出された論理データブロックに対応する保証コード部分を、ディスク入出力インタフェース内部のバッファからLA/LRC分離/結合部255が有するバッファへ書き込み、ステップ1000に戻りデータ転送処理を続ける。転送初めのためバッファが空である場合も同様にステップ1010でディスク装置群270に書き出された論理データブロックに対応する保証コード部分を、ディスク入出力インタフェース内部のバッファからLA/LRC分離/結合部255が有するバッファへ書き込み、ステップ1000に戻りデータ転送処理を続ける。
【0048】
この処理はMPU280が用意し発行したデータ転送指示がなくなるまで繰り返し行われる。データ転送指示がなくなったら、バッファの内容をディスク装置群270へ書き出し、バッファはクリアされる。
【0049】
同一グループナンバー内のデータがすでにディスク装置群270に書き込まれている時に新たなデータ転送におけるLA/LRC群で上書きしてしまうと、以前のデータ(LA/LRC)を壊してしまうので、同一グループナンバー内のデータがすでにディスク装置群270に書き込まれている場合には、対応するLA/LRC群を先にバッファ内に読み出しておき、新たなデータ転送におけるLA/LRCとマージする処理を行う必要がある。
【0050】
あるいは、ディスクキャッシュ上でデータを扱う単位を32Kbyteなり64Kbyteなりとし、ホストからその単位以下、たとえば512byteの書き込みがあった場合には、その512byteを含む32Kbyteデータをディスク装置群から読み出しキャッシュ上で処理するという方法がある。このような処理の場合、ディスク装置群への書き込みは、常にキャッシュ上のデータを扱う単位での書き込みとなる。このためキャッシュ上でデータを扱う単位が32Kbyteであれば、ディスク装置群への書き込みは常にグループナンバー単位での書き込みとなるために、上記のようなマージ処理は不要となる。
【0051】
図6に示すフローチャートを用いて、ディスク入出力インタフェース250が実行する、ディスク装置群270からディスクキャッシュ230へのデータ転送処理の流れを説明する。
【0052】
MPU280が用意したディスク装置群270からディスクキャッシュ230へのデータ転送指示を、ディスク入出力インタフェース250が受信すると、ディスク入出力インタフェース250は、ディスク装置群270からディスク入出力インタフェース内部のバッファへ、論理データブロック512byteを読み出す(ステップ1100)。ステップ1110において、ディスク入出力インタフェース250は、読み出した論理データブロックと対応付けられているグループナンバーと、LA/LRC分離/結合部255内のバッファに格納されているLA/LRC群と対応付けられているグループナンバーとが一致するかを比較する。
【0053】
一致しなかった場合および転送初めのためLA/LRC分離/結合部255内のバッファが空の場合は、ディスク入出力インタフェース250は、ステップ1100でディスク入出力インタフェース内部のバッファへ転送した論理データブロックに対応するLA/LRC群512byteをディスク装置からLA/LRC分離/結合部255内のバッファへ読み込む(ステップ1120)。
【0054】
一致する場合は、すでに対応するLA/LRC群がバッファ内に読み込まれていることになる。ステップ1130において、LA/LRC分離/結合部255は、ステップ1100で読み出した論理データブロックと、それに対応するLA/LRC(バッファ内にある)とを結合して520byteの拡張データとして、ディスクキャッシュ230へ書き込む。そしてまたステップ1100へ戻る。
【0055】
このデータ転送処理は、MPU280が用意したデータ転送指示がなくなるまで繰り返し行われる。
【0056】
以上の構成、動作により本実施形態によれば、ディスクアレイシステム200の記録媒体として、セクタ長512byte固定のディスク装置を用いた場合にも、論理データブロック512byteに対して従来同等の保証コードLA/LRC8byteを付加することが可能となる。複数の保証コードをまとめて一つのセクタに格納するため従来と違い、ディスク装置内では論理データブロックとLA/LRCの位置が離れて記憶されることとなるが、論理データブロックと保証コードの対応付け、保証コードの格納位置の計算、論理データブロックとLA/LRCとの分離/結合および、ディスク装置へのLA/LRC群の書き込み/読み出しはすべてディスク入出力インタフェース内のハードウェア(LA/LRC分離/結合部)によって行われるため、ソフトウェアによる誤りが介在することはなく、ディスク装置内でのアドレス化け、データ化けを従来と同等のレベルで検査することが可能である。
【0057】
尚、本実施形態においては、LA/LRC分離/結合部はハードウェアで実現されるものとして説明したが、ディスク入出力インタフェースが内部にマイクロプロセッサとメモリを有し、メモリ内に格納されているLA/LRC分離/結合プログラムをマイクロプロセッサが実行することにより、LA/LRC分離/結合部が実現される構成であっても良い。
【0058】
なお、ホストA100、ホストB110、ホストC120とホスト入出力インタフェース210、211の間のインタフェースとしては、たとえばファイバチャネル、SCSIなどが考えられるが、他のインタフェースであってもよい。また、ホスト側内部バス220、および、ディスク側内部バス240は、たとえば64ビット幅のPCIバスなどが考えられるが、32ビット幅のPCIバスや他のバスであっても実現できる。
【0059】
更に、ディスクアレイシステム200の記憶媒体のセクタ長はや論理データブロックのサイズは512byteに限定されることはなく、保証コードのサイズも8byteに限られることはない。
【0060】
また、ディスク入出力インタフェースが、転送される拡張データのLA/LRCを検査することにより、ディスク装置内部やディスクバスあるいはディスク側内部バス等でのビット化けやアドレス誤りを検出することが可能である。
【0061】
【発明の効果】
本発明によれば、ディスクアレイシステムにアクセス単位長固定のディスク装置を採用した場合にも、データに保証コードを付加してディスク装置に格納することができる。この結果、アクセス単位固定長のデバイスを用いた、信頼性の高いディスクアレイシステムを提供することができる。
【図面の簡単な説明】
【図1】第1の実施形態における計算機システムの構成例を示す図である。
【図2】拡張データブロックの一例を示す図である。
【図3】LA/LRC群の一例を示す図である。
【図4】ディスク装置群内での、論理データブロックとLA/LRC群の配置の一例を示す図である。
【図5】ディスクキャッシュからディスク装置群へのデータ転送処理の一例を示すフローチャートである。
【図6】ディスク装置群からディスクキャッシュへのデータ転送処理の一例を示すフローチャートである。
【符号の説明】
100…ホストA
200…ディスクアレイ
210…ホスト入出力インタフェース
220…ホスト側内部バス
230…ディスクキャッシュ
231…キャッシュバス
240…ディスク側内部バス
250…ディスク入出力インタフェース
255…LA/LRC分離/結合部
260…ディスクバス260
270…ディスク装置群
280…MPU
300…キャッシュコントローラ
340…LA/LRC付加/検査/削除部
Claims (19)
- 計算機と接続されるディスクアレイシステムであって、
前記計算機と接続するための、一又は複数のホスト入出力インタフェースと、
アクセス単位長が固定長である複数のディスク装置と、
前記複数のディスク装置と接続するための、一又は複数のディスク入出力インタフェースと、
前記計算機及び前記複数のディスク装置間で送受信されるデータを一旦格納するキャッシュメモリと、
前記キャッシュメモリへのデータの入出力を制御するキャッシュコントローラとを有し、
前記キャッシュコントローラは、前記計算機からホスト入出力インタフェースが受信した第一のデータを、前記アクセス単位長ごとに分割して複数の第二のデータとし、複数の第二のデータ各々に保証コードを付与して前記キャッシュメモリに格納し、
前記ディスク入出力インタフェースは、第二のデータと該第二のデータに付与された保証コードとを前記複数のディスク装置のいずれかに格納することを特徴とするディスクアレイシステム。 - 請求項1記載のディスクアレイシステムにおいて、
前記ディスク入出力インタフェースは、前記キャッシュメモリに格納されている第二のデータと該第二のデータに付与された保証コードとを分離し、分離された第二のデータと保証コードを、ディスク装置内の、各々アクセス単位長の容量を有する、異なる記憶領域に格納することを特徴とするディスクアレイシステム。 - 請求項1記載のディスクアレイシステムにおいて、
前記アクセス単位長とは、セクタ長であることを特徴とするディスクアレイシステム。 - 請求項3記載のディスクアレイシステムにおいて、
前記ディスク入出力インタフェースは、前記キャッシュメモリに格納されている、第二のデータと該第二のデータに付与された保証コードとを、ディスク装置内の異なるセクタに格納することを特徴とするディスクアレイシステム。 - 請求項4記載のディスクアレイシステムにおいて、
前記ディスク入出力インタフェースは、各々異なる第二のデータに付与された複数の保証コードを、一つのセクタにまとめて格納することを特徴とするディスクアレイシステム。 - 請求項5記載のディスクアレイシステムにおいて、
前記アクセス単位長は512バイトであることを特徴とするディスクアレイシステム。 - 請求項5記載のディスクアレイシステムにおいて、
前記複数のディスク装置は各々、ATAディスク若しくはSATAディスクであることを特徴とするディスクアレイシステム。 - 請求項5記載のディスクアレイシステムにおいて、
前記ディスク入出力インタフェースは、各々異なるセクタに格納された第二のデータと該第二のデータに付与された保証コードとを、前記複数のディスク装置のいずれかから読み出し、読み出した第二のデータと保証コードとを組にして前記キャッシュメモリに転送することを特徴とするディスクアレイシステム。 - 請求項8記載のディスクアレイシステムにおいて、
前記キャッシュコントローラは更に、前記キャッシュメモリに格納された第二のデータと保証コードを読み出し、該保証コードをチェックして該保証コードにエラーがなければ、該保証コードと対応付けられている第二のデータを前記計算機に送信するよう、該第二のデータを前記一又は複数のホスト入出力インタフェースのいずれかに転送することを特徴とするディスクアレイシステム。 - 計算機と接続され、該計算機がアクセスするデータを格納するディスクアレイシステムであって、
計算機がアクセスするデータを格納する、アクセス単位長が固定長である複数のディスク装置と、
計算機からのアクセス要求を受け付けて、該アクセス要求に従って前記複数のディスク装置に対するデータの入出力を制御するディスクコントローラとを有し、
前記ディスクコントローラは、計算機から受信したデータを、前記アクセス単位長ごとにデータブロックに分割し、データブロックごとに保証コードを付与し、保証コードとデータブロックを、前記複数のディスク装置のいずれかに格納するよう制御することを特徴とするディスクアレイシステム。 - 請求項10記載のディスクアレイシステムにおいて、
前記複数のディスク装置は、各々セクタ単位でアクセスされ、
前記ディスクコントローラは、セクタ長ごとに分割されたデータブロックと、該データブロックに付与された保証コードとを、前記複数のディスク装置の異なるセクタに格納するよう制御することを特徴とするディスクアレイシステム。 - 請求項11記載のディスクアレイシステムにおいて、
前記ディスクコントローラは、連続する複数のデータブロックに対応する複数の保証コードを、一つのセクタに格納することを特徴とするディスクアレイシステム。 - 請求項12記載のディスクアレイシステムにおいて、
前記複数のディスク装置は、各々ATAディスク装置若しくはSATAディスク装置であることを特徴とするディスクアレイシステム。 - 複数のディスク装置を有するディスクアレイシステムが、計算機から受信したデータに保証コードを付与して、保証コードの付与されたデータをディスク装置に格納する方法であって、
計算機からデータを受信するステップと、
計算機から受信したデータを、ディスク装置のアクセス単位長ごとのデータブロックに分割する分割ステップと、
データブロックごとに保証コードを付与して拡張データブロックを作成する拡張データブロック作成ステップと、
拡張データブロックを、アクセス単位長がデータブロック長に固定されているディスク装置に格納するデータ格納ステップとを有することを特徴とする、データ格納方法。 - 請求項14記載のデータ格納方法であって、
前記アクセス単位長は、ディスク装置のセクタ長であることを特徴とするデータ格納方法。 - 請求項14記載のデータ格納方法であって、
前記データ格納ステップは更に、前記拡張データブロックをデータブロックと保証コードとに分離するステップと、
前記データブロックと前記保証コードとをディスク装置内の異なるセクタに格納するステップとを有することを特徴とするデータ格納方法。 - 請求項16記載のデータ格納方法であって、
前記データ格納ステップは更に、複数の拡張データブロックが有する複数の保証コードを一つのセクタに格納するステップを有することを特徴とするデータ格納方法。 - 請求項17記載のデータ格納方法であって、
前記複数のディスク装置は各々、ATAディスク若しくはSATAディスクであることを特徴とする、データ格納方法。 - 請求項17記載のデータ格納方法であって、
更に、前記データブロックと前記保証コードを前記ディスク装置に格納する際に、保証コードを検査するステップを有することを特徴とするデータ格納方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003081717A JP2004288078A (ja) | 2003-03-25 | 2003-03-25 | 固定長ディスクを利用したディスクアレイシステム |
EP03010927A EP1477898B1 (en) | 2003-03-25 | 2003-05-15 | A disk array system based on disks with a fixed-length unit of access |
DE60310530T DE60310530T2 (de) | 2003-03-25 | 2003-05-15 | Eine Speicherplattenanordnung basierend auf Festplatten mit Zugriffseinheiten fester Länge |
US10/443,886 US7039758B2 (en) | 2003-03-25 | 2003-05-23 | Disk array system based on disks with a fixed-length unit of access |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003081717A JP2004288078A (ja) | 2003-03-25 | 2003-03-25 | 固定長ディスクを利用したディスクアレイシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004288078A true JP2004288078A (ja) | 2004-10-14 |
Family
ID=33028102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003081717A Pending JP2004288078A (ja) | 2003-03-25 | 2003-03-25 | 固定長ディスクを利用したディスクアレイシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US7039758B2 (ja) |
EP (1) | EP1477898B1 (ja) |
JP (1) | JP2004288078A (ja) |
DE (1) | DE60310530T2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7346732B2 (en) | 2005-01-17 | 2008-03-18 | Hitachi, Ltd. | Storage system |
JP2010128519A (ja) * | 2008-11-25 | 2010-06-10 | Hitachi Ltd | 記憶制御装置及び記憶制御装置の制御方法 |
US7783922B2 (en) | 2007-10-23 | 2010-08-24 | Hitachi, Ltd. | Storage controller, and storage device failure detection method |
JP2012519317A (ja) * | 2009-04-06 | 2012-08-23 | 株式会社日立製作所 | ストレージ装置及びデータ転送方法 |
JP2013532853A (ja) * | 2010-10-26 | 2013-08-19 | 株式会社日立製作所 | ストレージ装置及びデータ制御方法 |
US10990535B2 (en) | 2017-04-20 | 2021-04-27 | Fujitsu Limited | Storage control apparatus and storage control method for deduplication |
WO2023162465A1 (ja) * | 2022-02-24 | 2023-08-31 | ソニーセミコンダクタソリューションズ株式会社 | ライトバッファ制御回路 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7197617B2 (en) * | 2003-05-29 | 2007-03-27 | International Business Machines Corporation | Process, apparatus, and system for storing data check information using standard sector data field sizes |
US7441229B2 (en) * | 2004-02-10 | 2008-10-21 | International Business Machines Corporations | Model driven portlet development method, system and program product |
US20050240584A1 (en) * | 2004-04-21 | 2005-10-27 | Hewlett-Packard Development Company, L.P. | Data protection using data distributed into snapshots |
JP2006107311A (ja) * | 2004-10-08 | 2006-04-20 | Hitachi Ltd | ディスクアレイ装置およびその制御方法 |
JP2008269363A (ja) | 2007-04-20 | 2008-11-06 | Hitachi Ltd | 記憶制御装置および記憶制御方法 |
US8041919B2 (en) * | 2007-10-26 | 2011-10-18 | International Business Machines Corporation | Storing data blocks to maximize the amount of storage space used in a storage device |
US8041850B2 (en) * | 2009-02-19 | 2011-10-18 | Hitachi, Ltd. | Storage apparatus and data integrity assurance method |
WO2010141742A1 (en) * | 2009-06-03 | 2010-12-09 | Sensortech Corporation | Contact sensors and methods for making same |
JP5962140B2 (ja) * | 2012-03-30 | 2016-08-03 | 富士通株式会社 | プログラム、制御方法、制御装置およびシステム |
CA2996886A1 (en) | 2015-09-15 | 2017-03-23 | Sencorables Llc | Floor contact sensor system and methods for using same |
US10142195B1 (en) * | 2015-09-30 | 2018-11-27 | EMC IP Holding Company LLC | Partitioned performance tracking core resource consumption independently |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2855019B2 (ja) * | 1992-02-10 | 1999-02-10 | 富士通株式会社 | 外部記憶装置のデータ保証方法及び外部記憶装置 |
US5708668A (en) * | 1992-05-06 | 1998-01-13 | International Business Machines Corporation | Method and apparatus for operating an array of storage devices |
US5418925A (en) * | 1992-10-23 | 1995-05-23 | At&T Global Information Solutions Company | Fast write I/O handling in a disk array using spare drive for buffering |
US6269464B1 (en) * | 1997-06-18 | 2001-07-31 | Sutmyn Storage Corporation | Error checking technique for use in mass storage systems |
US6324604B1 (en) * | 1998-07-07 | 2001-11-27 | Emc Corporation | Magnetic disk storage for storing data in disk block size from fixed length of host block in non-integer multiple of the disk block size |
JP2000347815A (ja) | 1999-06-07 | 2000-12-15 | Hitachi Ltd | ディスクアレイシステム |
JP2001202295A (ja) | 2000-01-17 | 2001-07-27 | Hitachi Ltd | サブシステム |
US6745286B2 (en) * | 2001-01-29 | 2004-06-01 | Snap Appliance, Inc. | Interface architecture |
US20020124137A1 (en) * | 2001-01-29 | 2002-09-05 | Ulrich Thomas R. | Enhancing disk array performance via variable parity based load balancing |
US6742081B2 (en) * | 2001-04-30 | 2004-05-25 | Sun Microsystems, Inc. | Data storage array employing block checksums and dynamic striping |
US7047358B2 (en) * | 2001-12-26 | 2006-05-16 | Boon Storage Technologies, Inc. | High-performance log-structured RAID |
-
2003
- 2003-03-25 JP JP2003081717A patent/JP2004288078A/ja active Pending
- 2003-05-15 EP EP03010927A patent/EP1477898B1/en not_active Expired - Lifetime
- 2003-05-15 DE DE60310530T patent/DE60310530T2/de not_active Expired - Lifetime
- 2003-05-23 US US10/443,886 patent/US7039758B2/en not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7346732B2 (en) | 2005-01-17 | 2008-03-18 | Hitachi, Ltd. | Storage system |
US7797486B2 (en) | 2005-01-17 | 2010-09-14 | Hitachi, Ltd. | Storage system |
US7941600B2 (en) | 2005-01-17 | 2011-05-10 | Hitachi, Ltd. | Storage system |
US8131922B2 (en) | 2005-01-17 | 2012-03-06 | Hitachi, Ltd. | Storage system |
US8417886B2 (en) | 2005-01-17 | 2013-04-09 | Hitachi, Ltd. | Storage system |
US7783922B2 (en) | 2007-10-23 | 2010-08-24 | Hitachi, Ltd. | Storage controller, and storage device failure detection method |
JP2010128519A (ja) * | 2008-11-25 | 2010-06-10 | Hitachi Ltd | 記憶制御装置及び記憶制御装置の制御方法 |
JP4693893B2 (ja) * | 2008-11-25 | 2011-06-01 | 株式会社日立製作所 | 記憶制御装置及び記憶制御装置の制御方法 |
JP2012519317A (ja) * | 2009-04-06 | 2012-08-23 | 株式会社日立製作所 | ストレージ装置及びデータ転送方法 |
JP2013532853A (ja) * | 2010-10-26 | 2013-08-19 | 株式会社日立製作所 | ストレージ装置及びデータ制御方法 |
US10990535B2 (en) | 2017-04-20 | 2021-04-27 | Fujitsu Limited | Storage control apparatus and storage control method for deduplication |
WO2023162465A1 (ja) * | 2022-02-24 | 2023-08-31 | ソニーセミコンダクタソリューションズ株式会社 | ライトバッファ制御回路 |
Also Published As
Publication number | Publication date |
---|---|
US7039758B2 (en) | 2006-05-02 |
EP1477898B1 (en) | 2006-12-20 |
DE60310530T2 (de) | 2007-11-22 |
US20050071553A1 (en) | 2005-03-31 |
EP1477898A1 (en) | 2004-11-17 |
DE60310530D1 (de) | 2007-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4634157B2 (ja) | ストレージシステム | |
US7472250B2 (en) | Storage control device, and control method for storage control device | |
JP2004288078A (ja) | 固定長ディスクを利用したディスクアレイシステム | |
US8051367B2 (en) | Storage sub-system and method for controlling the same | |
US9263102B2 (en) | Apparatus, system, and method for data transformations within a data storage device | |
US8402210B2 (en) | Disk array system | |
KR101732030B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US8799745B2 (en) | Storage control apparatus and error correction method | |
US7219169B2 (en) | Composite DMA disk controller for efficient hardware-assisted data transfer operations | |
US7725805B2 (en) | Method and information apparatus for improving data reliability | |
KR20120115012A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
JP3561002B2 (ja) | ディスク装置 | |
US7743308B2 (en) | Method and system for wire-speed parity generation and data rebuild in RAID systems | |
JP2007122476A (ja) | データストレージシステム、データストレージ制御装置及びそのディスクのライト抜け診断方法 | |
US7454686B2 (en) | Apparatus and method to check data integrity when handling data | |
US10802958B2 (en) | Storage device, its controlling method, and storage system having the storage device | |
US9213486B2 (en) | Writing new data of a first block size to a second block size using a write-write mode | |
US7398448B2 (en) | Storage system has the function of preventing drive write error | |
JP4394533B2 (ja) | ディスクアレイシステム | |
US9146803B2 (en) | Storage apparatus, control apparatus, and storage apparatus control method | |
JP4476021B2 (ja) | ディスクアレイシステム | |
US8380926B1 (en) | Handling sector edges | |
CN115686366A (zh) | 一种基于raid的写数据缓存加速方法 | |
JPH10269695A (ja) | コンピュータシステムにおける記憶装置の制御方式 | |
GB2298308A (en) | A disk storage array with a spiralling distribution of redundancy data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060104 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060420 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081022 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081028 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081210 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20081210 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090109 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090310 |