Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3616985B2 - Storage device management method and storage device management system - Google Patents
[go: Go Back, main page]

JP3616985B2 - Storage device management method and storage device management system - Google Patents

Storage device management method and storage device management system Download PDF

Info

Publication number
JP3616985B2
JP3616985B2 JP29027598A JP29027598A JP3616985B2 JP 3616985 B2 JP3616985 B2 JP 3616985B2 JP 29027598 A JP29027598 A JP 29027598A JP 29027598 A JP29027598 A JP 29027598A JP 3616985 B2 JP3616985 B2 JP 3616985B2
Authority
JP
Japan
Prior art keywords
data
storage device
device management
dvd
management system
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 - Fee Related
Application number
JP29027598A
Other languages
Japanese (ja)
Other versions
JP2000122811A (en
Inventor
泰典 兼田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP29027598A priority Critical patent/JP3616985B2/en
Publication of JP2000122811A publication Critical patent/JP2000122811A/en
Application granted granted Critical
Publication of JP3616985B2 publication Critical patent/JP3616985B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、記憶装置管理方法および記憶装置管理システムに関し、さらに詳しくは、冗長データ生成単位より小さい書き込みデータを情報処理装置から受け取り、冗長データ生成単位に不足するデータを記憶装置から読み出し、冗長データ生成単位にデータを揃えてから冗長データを生成し、前記記憶装置に前記データと冗長データとを書き込む時に、障害が発生しても、前記冗長データ生成単位に揃えたデータを全て消失しないよう保証できる記憶装置管理方法および記憶装置管理システムに関する。
【0002】
【従来の技術】
情報処理装置(ホストコンピュータ)に接続する記憶装置として、最近注目を浴びているのが、DVD−RAM(Digital Versatile Disc − Random Access Memeory)装置である。DVD−RAM装置の詳細については、東芝レビュー2,1998,VOL.53 NO.2,「特集I:広がるDVDの世界」や、National Technical Report, 1997 JUNE,「特集DVD」等に紹介されている。
【0003】
図19に、DVD−RAMドライブ30でのデータ管理方式を示す。
DVD−RAMドライブ30では、データの管理は、2KBのブロックを単位としている。一方、ECC(Error Check Code)の管理は、データの再生成能力を高めるため、16ブロックを単位としている(これを、ECCブロックと呼ぶ)。
【0004】
図20に示すように、ホストコンピュータは、DVD−RAM装置31に対して、2KBのブロック単位でデータを読み書きする。
DVD−RAM装置31では、DVD−RAMドライブ30からの読み出しはブロック単位で行うが、DVD−RAMドライブ30への書き込みはECCブロック単位で行う。
例えば、図20に示すように、ホストコンピュータがブロック4のデータAの書き込みを要求すると、DVD−RAM装置31はデータAを受け取り、バッファ29004に保持する(20001)。次に、DVD−RAM装置31は、ブロック4を含むECCブロック0(ブロック0からブロック15まで)のデータをDVD−RAMドライブ30からバッファ29500に読み出し(20005)、バッファ29500内でブロック4にデータAを結合(マージ)し、次いでECCを生成した後(20010)、バッファ29500内のECCブロック0のデータおよび生成したECCをDVD−RAMドライブ30に渡し、DVD−RAM媒体に書き込む(20020)。
【0005】
【発明が解決しようとする課題】
図20に示すECCブロック0の書き込み中に障害(停電、瞬電、レーザーの発光停止、DVD−RAM媒体の障害、DVD−RAMドライブ30の故障など)が発生すると、ECCブロック0のデータすなわちブロック0からブロック15までのデータとECCとが不一致になるため、ブロック0からブロック15までの全てのデータの書き込みに失敗したことになる。
すなわち、従来のDVD−RAM装置31では、1つのブロックのデータの書き込みに失敗すると、当該ブロックを含むECCブロックのデータが全て失われてしまう問題点があった。そして、ホストコンピュータ10は、書き込みを要求したブロックのデータの書き込み失敗は失敗報告により認識できるが、そのデータ以外のどのデータが失われてしまったかは全く認識できないので、より大きな障害を引き起こしかねない問題点があった。
【0006】
そこで、本発明の目的は、冗長データ生成単位より小さい書き込みデータを情報処理装置から受け取り、冗長データ生成単位に不足するデータを記憶装置から読み出し、冗長データ生成単位にデータを揃えてから冗長データを生成し、前記記憶装置に前記データと冗長データとを書き込む時に、障害が発生しても、前記冗長データ生成単位に揃えたデータを全て消失しないよう保証できる記憶装置管理方法および記憶装置管理システムを提供することにある。
【0007】
【課題を解決するための手段】
第1の観点では、本発明は、冗長データ生成単位より小さい単位の書き込みデータを情報処理装置から受け取り、冗長データ生成単位に不足するデータを記憶装置から読み出し、前記冗長データ生成単位にデータを揃えてから冗長データを生成し前記記憶装置に前記データと冗長データとを書き込むと共に、その書き込みが失敗した場合、前記冗長データ生成単位に揃えたデータを不揮発性の記憶媒体に保持し、前記情報処理装置から前記冗長データ生成単位に揃えたデータに属するデータの読み出し要求を受けた場合は、前記不揮発性の記憶媒体に保持したデータを前記情報処理装置へ送ることを特徴とする記憶装置管理方法を提供する。
上記構成において、前記冗長データは、例えばECCや,RAID(Redundant Arrays of Inexpensive Disks)におけるパリティである。
上記第1の観点の記憶装置管理方法では、書き込みが失敗した場合には、冗長データ生成単位に揃えたデータを不揮発性の記憶手段に保持し、情報処理装置から読み出し要求があったときは不揮発性の記憶手段に保持したデータを優先的に使用する。このため、冗長データ生成単位に揃えたデータを全て消失しないよう保証できる。
【0008】
第2の観点では、本発明は、冗長データ生成単位より小さい書き込みデータを情報処理装置から受け取る書き込みデータ受取手段と、前記受信した冗長データ生成単位に不足するデータを前記記憶装置から読み出すデータ読出手段と、冗長データ生成単位にデータを揃えてから冗長データを生成し前記記憶装置に前記データと冗長データとを書き込むデータ書込手段と、その書き込みが失敗した場合に前記情報処理装置から受け取ったデータを不揮発性の記憶媒体に保持する記憶手段と、前記不揮発性の記憶媒体に保持されているデータに対応するデータの読み出し要求を前記情報処理装置から受けた場合に前記保持されているデータを前記情報処理装置へ送る送信手段とを有することを特徴とする記憶装置管理システムを提供する。
上記第2の観点の記憶装置管理システムでは、前記第1の観点の記憶装置管理方法を好適に実施できる。よって、冗長データ生成単位に揃えたデータを全て消失しないよう保証できる。
【0009】
第3の観点では、本発明は、上記構成の記憶装置管理システムにおいて、前記記憶手段は、前記データ読出手段による前記不足するデータの読み出しが失敗した場合、前記書き込みデータを前記不揮発性の記憶媒体に保持し、前記送信手段は、前記書き込みデータの読み出し要求を受けた場合、前記不揮発性の記憶媒体に保持したデータを前記情報処理装置へ送ることを特徴とする記憶装置管理システムを提供する。
【0010】
第4の観点では、本発明は、上記構成の記憶装置管理システムにおいて、前記記憶装置管理システムは、複数の記憶装置と接続しており、前記記憶手段は、複数の記憶装置全てで前記読み出しまたは書き込みが失敗した場合に、前記不揮発性の記憶媒体へのデータの保持を行うことを特徴とする記憶装置管理システムを提供する。
第5の観点では、本発明は、上記構成の記憶装置管理システムにおいて、前記データ書込手段は、前記保持されているデータが冗長データ生成単位より小さい単位のデータである場合、前記冗長データ生成単位に揃えてから記憶装置への書き込みを行うことを特徴とする記憶装置管理システムを提供する。
【0011】
本発明の記憶装置管理システムは、複数の記憶装置と組み合せて、RAIDを構成してもよい。
また、本発明の記憶装置管理システムは、情報処理装置と記憶装置の間に介設してもよいし、情報処理装置または記憶装置のいずれかの内部に設置してもよい。
【0012】
【発明の実施の形態】
以下、図を用いて本発明の実施形態を説明する。なお、これにより本発明が限定されるものではない。
【0013】
《第1の実施形態》
図1に、本発明の第1の実施形態にかかる記憶装置管理システムを示す。
この記憶装置管理システム20は、ホストコンピュータ10とDVD−RAMドライブ30の間に介設される。記憶装置管理システム20とホストコンピュータ10の接続はファイバチャネル15で行われ、記憶装置管理システム20とDVD−RAMドライブ30の接続はSCSI(Small Computer System Interface)25で行われている。
【0014】
図2に、記憶装置管理システム20のシステム構成を示す。
記憶装置管理システム20は、拡張ボードとしてファイバチャネルインタフェース210とSCSIインタフェース220とを備え、これらはPCI(Peripheral Component Interconnect)バス290に接続されている。
前記PCIバス290には、プログラムおよびデータの流れを制御するチップセット286を介して、CPU280と主記憶284とが接続され、そのCPU280には2次キャッシュ282が接続されている。
さらに、PCIバス290には、PCMCIA(Personal Computer Memory Card International Association)コントローラ259およびPCMCIAコネクタ255を介して、フラッシュメモリ250が接続されている。
【0015】
前記主記憶284は、制御プログラムを記憶すると共に、ファイバチャネルインタフェース210を介してホストコンピュータ10から受け取った要求やデータを一時的に保持すると共にSCSIインタフェース220を介してDVD−RAMドライブ30から受け取ったデータを一時的に保持するバッファとして利用する。
【0016】
図3を用いて、正常時のデータの流れを説明する。
ホストコンピュータ10が一つのブロックに対してデータの書き込みを要求すると、そのブロックのデータを記憶装置管理システム20が受け取り、主記憶284内のセグメント3904に保持する(3002)。
CPU280は、DVD−RAMドライブ30から前記ブロックを含むECCブロックを読み出し、主記憶284に保持する(3005)。次に、読み出したECCブロックのデータにセグメント3904のデータを結合し(3007)、ECCを生成する。そして、ECCブロックのデータとECCをDVD−RAMドライブ30に書き込む(3009)。
【0017】
図4を用いて、DVD−RAMドライブ30へのデータ書き込み時に障害が発生した場合のデータの流れを説明する。
ホストコンピュータ10が一つのブロックに対してデータの書き込みを要求すると、そのブロックのデータを記憶装置管理システム20が受け取り、主記憶284内のセグメント4904に保持する(4002)。
CPU280は、DVD−RAMドライブ30から前記ブロックを含むECCブロックを主記憶284に読み出し、主記憶284に保持する(4005)。次に、読み出したECCブロックのデータにセグメント4904のデータを結合し(4007)、ECCを生成する。そして、ECCブロックのデータとECCをDVD−RAMドライブ30に書き込もうとする(4009)。この時に、DVD−RAMドライブ30で障害が発生し(4020)、書き込むことができなかった場合には、主記憶284内のECCブロックのデータを、フラッシュメモリ250に書き込む(4010)。
以後、ホストコンピュータ10からのデータの書き込み要求が発行されても、記憶装置管理システム20は、データの受け取りを拒否する。また、ホストコンピュータ10から前記ECCブロックに属するブロックのデータの読み出しが要求されたときは、対応するデータが主記憶284内に存在する場合はそのデータを転送し、主記憶284内に対応するデータが存在しない場合は、フラッシュメモリ250に保持したデータを転送し、DVD−RAMドライブ30からのデータの読み出しは行わない。
【0018】
図5を用いて、DVD−RAMドライブ30からのデータ読み出し時に障害が発生した場合のデータの流れを説明する。
ホストコンピュータ10が一つのブロックに対してデータの書き込みを要求すると、そのブロックのデータを記憶装置管理システム20が受け取り、主記憶284内のセグメント5904に保持する(5002)。
CPU280は、DVD−RAMドライブ30から前記ブロックを含むECCブロックを主記憶284に読み出そうとする(5005)。この時に、DVD−RAMドライブ30で障害が発生し(5006)、前記ECCブロックのデータを読み出すことができないと、主記憶284内のセグメント5904のデータをフラッシュメモリ250に書き込む(5010)。
以後、ホストコンピュータ10からのデータの書き込み要求が発行されても、記憶装置管理システム20は、データの受け取りを拒否する。また、ホストコンピュータ10から前記ブロックのデータの読み出しを要求されたときは、対応するデータが主記憶284内に存在する場合はそのデータを転送し、主記憶284内に対応するデータが存在しない場合は、フラッシュメモリ250に保持したデータを転送し、DVD−RAMドライブ30からのデータの読み出しは行わない。
【0019】
DVD−RAMドライブ30で発生した障害が、DVD−RAM媒体以外の障害であり、DVD−RAM媒体には障害がない場合、障害の発生したDVD−RAMドライブ30内のDVD−RAM媒体を取り出し、別の記憶装置管理システム(20)に接続されたDVD−RAMドライブ(30)に挿入する。さらに、障害の発生したDVD−RAMドライブ30を接続していた記憶装置管理システム20からフラッシュメモリ250を外し、前記DVD−RAM媒体を挿入した記憶装置管理システム(20)にフラッシュメモリ250を接続する。この状態で記憶装置管理システム(20)を起動すると、CPU(280)はフラッシュメモリ250内にデータが保持されているか判定し、データが保持されている場合には、そのデータを前記DVD−RAM媒体に書き込む。すなわち、そのデータのブロックを含むECCブロックのデータをDVD−RAMドライブ(30)から読み出し、フラッシュメモリ250内のデータを結合し、ECCを生成し、前記ECCブロックのデータとECCをDVD−RAMドライブ(30)に書き込む。
このように、フラッシュメモリ250とDVD−RAM媒体とを他の記憶装置管理システム(20)とDVD−RAMドライブ(30)に移せば、データを元のDVD−RAM媒体上に回復できる。
【0020】
上記第1の実施形態では、主記憶284内にECCグループ2面分(ホストコンピュータ10からのデータ受け取り用とDVD−RAMドライブ30からのデータ読み出し及び結合用)のバッファを用いたが、主記憶284内に複数の領域を設けて、LRU(Least Recently Used)等のキャッシュアルゴリズムを併用してデータを管理することで、DVD−RAMドライブ30に対する読み出しおよび書き込み回数を削減し、ホストコンピュータ10からの処理要求に対してより高速に対応できるようにしてもよい。なお、複数の領域を設けた場合、DVD−RAMドライブ30に未書き込みの多くのデータが主記憶284に存在するため、これを退避できるだけの十分な容量のフラッシュメモリ250を用いることが望ましい。
【0021】
フラッシュメモリ250を使用した場合、記憶装置管理システム20を含むシステム全体が停電などの障害に遭ったとき、フラッシュメモリ250へのデータの退避を実施できず、データが失われることがある。
そこで、図21に示すように、電池付SRAM(Static Random Access Memory)251を、図2のフラッシュメモリ250に代えて使用してもよい。この場合、主記憶284内ではなく、電池付SRAM251内に前記バッファを設ける。これによって、システム全体が停電などの障害に遭ったときでも、データを保持しつづけることができる。障害等からの復旧後、記憶装置管理システム20が起動すると、CPU280は、電池付SRAM251内にデータが保持されているか判定し、保持されていた場合には、そのデータを前記DVD−RAM媒体に書き込む。
【0022】
また、図22に示すように、無停止電源装置299から記憶装置管理システム20に電源を供給してもよい。これによって、システム全体が停電などの障害に遭ったときでも、主記憶284内のデータをフラッシュメモリ250に退避することができる。
【0023】
以上の第1の実施形態によれば、DVD−RAMドライブ30へのデータの書き込みが失敗した場合でも、ECCブロックの全データが、フラッシュメモリ250または電池付SRAM251に保持されているので、DVD−RAMドライブ30での障害に伴うECCブロックの全データの消失を防ぐことができる。
【0024】
《第2の実施形態》
図6に、本発明の第2の実施形態にかかる記憶装置管理システムを示す。
この記憶装置管理システム21は、ホストコンピュータ10に接続されたチェンジャ装置40内に組み込まれている。
チェンジャ装置40は、記憶装置管理システム21と、複数のDVD−RAMドライブ30と、DVD−RAM媒体を保持する複数の格納庫420と、それら格納庫420とDVD−RAMドライブ30の間でDVD−RAM媒体を搬送するメディア搬送ユニット450と、そのメディア搬送ユニット450を制御するロボット制御回路410とを具備している。
【0025】
ホストコンピュータ10と記憶装置管理システム21はファイバチャネル15で接続され、記憶装置管理システム21とDVD−RAMドライブ30はSCSI25で接続され、記憶装置管理システム21とロボット制御回路410はRS232Cインタフェース411で接続されている。
【0026】
記憶装置管理システム21がロボット制御回路410にDVD−RAM媒体の搬送を指示すると、ロボット制御回路410は、格納庫420からDVD−RAM媒体をDVD−RAMドライブ30に搬送したり、DVD−RAMドライブ30内のDVD−RAM媒体を格納庫420に戻すように、メディア搬送ユニット450を制御する。
【0027】
図7に、記憶装置管理システム21のシステム構成を示す。
この記憶装置管理システム21は、第1の実施形態で示した記憶装置管理システム20と基本的に同じ構成であり、データの書き込みや障害時のデータの保持の動作は第1の実施形態で説明したとおりである。それに加えて、CPU280は、ホストコンピュータ10からのDVD−RAM媒体の搬送要求を受け取り、ロボット制御インタフェース240を介してロボット制御回路410に指示し、DVD−RAM媒体の搬送を実行する。
【0028】
上記第2の実施形態においても、第1の実施形態と同様に、キャッシュアルゴリズムを併用したり、電池付SRAMを用いたり、無停止電源装置を使用してもよい。
【0029】
以上の第2の実施形態によれば、第1の実施形態の効果に加えて、記憶装置管理システム21をチェンジャ装置40の一部として実現することで、記憶装置管理システム21の実施コストを低減することができる。
【0030】
《第3の実施形態》
図8に、本発明の第3の実施形態にかかる記憶装置管理システムを示す。
この記憶装置管理システム22は、ホストコンピュータ10と4台のチェンジャ装置80の間に接続されている。ホストコンピュータ10と記憶装置管理システム22はファイバチャネル15で接続し、記憶装置管理システム22とチェンジャ装置80はSCSI25で接続している。
【0031】
図9に、チェンジャ装置80の構成を示す。
このチェンジャ装置80は、DVD−RAM媒体を保持する複数の格納庫420と、それら格納庫420とDVD−RAMドライブ30の間でDVD−RAM媒体を搬送するメディア搬送ユニット450と、そのメディア搬送ユニット450を制御するロボット制御回路410と、記憶装置管理システム22からのDVD−RAM媒体の搬送要求を受け取ってロボット制御回路410への命令に変換するチェンジャSCSIインタフェース405とを具備している。
チェンジャ装置80内のDVD−RAMドライブ30は、SCSI25で、記憶装置管理システム22に接続している。
【0032】
図10に、記憶装置管理システム22のシステム構成を示す。
この記憶装置管理システム22は、第1の実施形態で示した記憶装置管理システム20と基本的に同じ構成であるが、それに加えて、4台のチェンジャ装置80にそれぞれ接続するためのSCSIインタフェース220を4つ具備している。これにより、4台のチェンジャ装置80内の各DVD−RAMドライブ30を組み合わせて、RAID構成を実現する。すなわち、4台のDVD−RAMドライブ30のうち3台をデータ格納ドライブとし、1台をRAIDにおけるパリティ格納ドライブとする。また、CPU280は、RAID処理を実現するため、データを3台のデータ格納ドライブに分散するデータ分散モジュールと、3台のデータ格納ドライブに分散したデータからパリティを生成するパリティ生成モジュールと、ホストコンピュータ10から読み出し要求があったときに3台のデータ格納ドライブから読み出したデータを集めてホストコンピュータ10に転送するデータ集合モジュールと、1台のデータ格納ドライブが故障したときに残りの2台のデータ格納ドライブのデータとパリティ格納ドライブのパリティから故障したデータ格納ドライブのデータを復元するデータ復元モジュールとを実装している。
【0033】
図11を用いて、正常時のデータの流れを説明する。
ホストコンピュータ10が一つの論理ブロックに対するデータの書き込みを記憶装置管理システム22に要求すると、CPU280のデータ分散モジュールが、前記データに対応するDVD−RAMドライブと当該DVD−RAMドライブにおける物理ブロックを算出し、ホストコンピュータ10からデータを受け取り、主記憶284内のセグメント11936に保持する(11002)。次に、CPU280は、前記物理ブロックを含むECCブロックのデータを前記データに対応するDVD−RAMドライブ30から読み出す(11023)と共に、そのECCブロックを含むRAIDグループのデータ(一つのパリティを生成するのに使用する一群のECCブロックのデータ)を他のDVD−RAMドライブ30から主記憶284に読み出す(11021,11022)。次に、セグメント11936のデータを、対応するDVD−RAMドライブ30から読み出したデータに結合する(11070)。そして、ECCを生成し、新たなECCブロックとする。次に、CPU280のパリティ生成モジュールが、新たなECCブロックと他のデータを用いてパリティを生成する。次に、新たなECCブロックのデータを、対応するデータ格納ドライブに書き込む(11083)と共に、パリティをパリティ格納ドライブに書き込む(11084)。
【0034】
図12〜図13を用いて、1台のDVD−RAMドライブ30へのデータの書き込み時に障害が発生した場合のデータの流れを説明する。
図12において、ホストコンピュータ10が一つの論理ブロックに対するデータの書き込みを記憶装置管理システム22に要求すると、CPU280のデータ分散モジュールが、前記データに対応するDVD−RAMドライブと当該DVD−RAMドライブにおける物理ブロックを算出し、ホストコンピュータ10からデータを受け取り、主記憶284内のセグメント12936に保持する(12002)。次に、CPU280は、前記物理ブロックを含むECCブロックのデータを前記データに対応するDVD−RAMドライブ30から読み出す(12023)と共に、そのECCブロックを含むRAIDグループのデータを他のDVD−RAMドライブ30から主記憶284に読み出す(12021,12022)。次に、セグメント12936のデータを、対応するDVD−RAMドライブ30から読み出したデータに結合する(12070)。そして、ECCを生成し、新たなECCブロックとする。次に、CPU280のパリティ生成モジュールが、新たなECCブロックと他のデータを用いてパリティを生成する。次に、新たなECCブロックのデータを、対応するデータ格納ドライブに書き込もうとする(12083)と共に、パリティをパリティ格納ドライブに書き込もうとする(12084)。この時、データを書き込もうとしたデータ格納ドライブで障害が発生し(12006)、書き込むことができなかったとする。
【0035】
すると、図13に示すように、書き込むことができなかった新たなECCブロックのデータを、他のすべてのDVD−RAMドライブ30の障害データ保持領域に書き込む(13011,13012,13014)。これらの障害データ保持領域は、通常のデータもしくはパリティを書き込む領域とは別に設けた特別な領域である。
以後、ホストコンピュータ10からデータの書き込みが要求されても、記憶装置管理システム22は、データの受け取りを拒否する。また、ホストコンピュータ10から書き込むことができなかった新たなECCブロックのデータの読み出しを要求された場合には、そのデータが主記憶284内に存在すればそれを転送し、主記憶284内に対応するデータが存在しないなら障害データ保持領域に保持しておいた当該データを読み出して転送し、障害を発生したデータ格納ドライブからのデータの読み出しは行わない。
【0036】
図14を用いて、全てのDVD−RAMドライブ30が使用できなくなった場合のデータの流れを説明する。
全てのDVD−RAMドライブ30が使用できなくなった場合、書き込むことができなかった新たなECCブロックのデータの障害データ保持領域への書き込みも失敗する(14011,14012,14014)。そこで、CPU280は、書き込むことができなかった新たなECCブロックのデータを、フラッシュメモリ250に退避する(14050)。
以後、ホストコンピュータ10からデータの書き込みが要求されても、記憶装置管理システム22は、データの受け取りを拒否する。また、ホストコンピュータ10から、書き込むことができなかった新たなECCブロックのデータの読みしを要求された場合には、そのデータが主記憶284内に存在すればそれを転送し、主記憶284内に対応するデータが存在しないならフラッシュメモリ250に退避しておいた当該データを読み出して転送し、障害を発生したデータ格納ドライブからのデータの読み出しは行わない。
【0037】
上記第3の実施形態においても、第1の実施形態と同様に、キャッシュアルゴリズムを併用したり、電池付SRAMを用いたり、無停止電源装置を使用してもよい。
【0038】
以上の第3の実施形態によれば、RAID構成をとる場合においても、第1の実施形態の効果を得ることができる。
【0039】
《第4の実施形態》
図15に、本発明の第4の実施形態にかかる記憶装置管理システムを示す。
この記憶装置管理システムは、DVD−RAMドライブ30をSCSI25で接続したホストコンピュータ10内の記憶装置管理デバイスドライバ90として実現されている。
この記憶装置管理デバイスドライバ90の制御下に、DVD−RAMドライブ30と、PCMCIAコネクタ255およびフラッシュメモリ250を置く。
【0040】
図16に、記憶装置管理デバイスドライバ90の内部構成を示す。
記憶装置管理デバイスドライバ90は、ホストコンピュータ10のファイルシステムソフトウエア(図17の11)とのインタフェースを実現するファイルシステムインタフェースソフトウエアモジュール910と、ホストコンピュータ10内の主記憶に設けた2面のバッファ951と952を管理するバッファ制御ソフトウエアモジュール920と、DVD−RAMドライブ30を制御するDVD−RAMドライブ制御ソフトウエアモジュール960と、SCSIインタフェースを制御するSCSIインタフェース制御ソフトウエアモジュール970と、フラッシュメモリ250を制御するフラッシュメモリ制御ソフトウエアモジュール980とを具備している。
【0041】
図17を用いて、正常時のデータの流れを説明する。
ホストコンピュータ10のファイルシステムソフトウエア11が一つのブロックのデータの書き込みを要求すると、ファイルシステムインタフェースソフトウエアモジュール910がそのデータを受け取り(17002)、バッファ951内のセグメント17904に保持する(17005)。バッファ制御ソフトウエアモジュール920は、DVD−RAMドライブ制御ソフトウエアモジュール960とSCSIインタフェース制御ソフトウエアモジュール970を介して、DVD−RAMドライブ30から前記ブロックを含むECCブロックをバッファ952に読み出す(17006)。次に、読み出したECCブロックのデータにセグメント17904のデータを結合する(17007)。次いで、ECCブロックのデータとECCをDVD−RAMドライブ30に書き込む(17010)。
【0042】
図18を用いて、DVD−RAMドライブ30への書き込み時に障害が発生した場合を説明する。
上記DVD−RAMドライブ30への書き込み(17010)時に障害が発生し、データを書き込むことができなかった場合、バッファ制御ソフトウエアモジュール920は、フラッシュメモリ制御ソフトウエアモジュール980を介して、バッファ952内のECCブロックのデータをフラッシュメモリ250に書き込む(18030)。
以後、ホストコンピュータ10のファイルシステムソフトウエア11からデータの書き込み要求が発行されても、バッファ制御ソフトウエアモジュール920は、データの受け取りを拒否する。また、ホストコンピュータ10のファイルシステムソフトウエア11から前記ECCブロック内のブロックのデータの読み出しを要求されたときには、そのデータがバッファ952内に存在する場合はそのデータを転送し、バッファ952内に存在しない場合はフラッシュメモリ250に保持したデータを転送し、DVD−RAMドライブ30からのデータの読み出しは行わない。
【0043】
上記第4の実施形態においても、第1の実施形態と同様に、キャッシュアルゴリズムを併用したり、電池付SRAMを用いたり、無停止電源装置を使用してもよい。
【0044】
以上の第4の実施形態によれば、ホストコンピュータ10内に記憶装置管理デバイスドライバ90を設けるので、簡単な構成で、第1の実施形態の効果を得ることができる。
【0045】
【発明の効果】
本発明の記憶装置管理方法および記憶装置管理システムによれば、冗長データ生成単位より小さい書き込みデータを情報処理装置から受け取り、冗長データ生成単位に不足するデータを記憶装置から読み出し、冗長データ生成単位にデータを揃えてから冗長データを生成し、前記記憶装置に前記データと冗長データとを書き込む時に、障害が発生しても、前記冗長データ生成単位に揃えたデータを全て消失しないよう保証できる。
【図面の簡単な説明】
【図1】第1の実施形態における記憶装置管理システムの接続を示す図である。
【図2】第1の実施形態における記憶装置管理システムの内部構成を示す図である。
【図3】第1の実施形態における正常時のデータの流れを示す図である。
【図4】第1の実施形態におけるDVD−RAMドライブでの書き込み障害による書き込み失敗時のデータの流れを示す図である。
【図5】第1の実施形態におけるDVD−RAMドライブでの読み出し障害による書き込み失敗時のデータの流れを示す図である。
【図6】第2の実施形態における記憶装置管理システムの接続を示す図である。
【図7】第2の実施形態における記憶装置管理システムの内部構成を示す図である。
【図8】第3の実施形態における記憶装置管理システムの接続を示す図である。
【図9】第3の実施形態におけるチェンジャ装置の内部構成を示す図である。
【図10】第3の実施形態における記憶装置管理システムの内部構成を示す図である。
【図11】第3の実施形態における正常時のデータの流れを示す図である。
【図12】第3の実施形態における1台のDVD−RAMドライブへの書き込み障害による書き込み失敗時のデータの流れの前半を示す図である。
【図13】第3の実施形態における1台のDVD−RAMドライブへの書き込み障害による書き込み失敗時のデータの流れの後半を示す図である。
【図14】第3の実施形態における全てのDVD−RAMドライブへの書き込み障害による書き込み失敗時のデータの流れを示す図である。
【図15】第4の実施形態における記憶装置管理システム(デバイスドライバ)の接続を示す図である。
【図16】第4の実施形態における記憶装置管理システム(デバイスドライバ)の内部構成を示す図である。
【図17】第4の実施形態における正常時のデータの流れを示す図である。
【図18】第4の実施形態におけるDVD−RAMドライブへの書き込み障害による書き込み失敗時のデータの流れを示す図である。
【図19】DVD−RAMドライブにおけるデータの管理単位(ブロック)とECCの生成単位(ECCブロック)を示す図である。
【図20】従来のDVD−RAM装置におけるデータの流れを示す図である。
【図21】第1の実施形態の記憶装置管理システムの第1の変形例の内部構成を示す図である。
【図22】第1の実施形態の記憶装置管理システムの第2の変形例の構成を示す図である。
【符号の説明】
10…ホストコンピュータ,11…ファイルシステムソフトウエア,15…ファイバチャネル,20…記憶装置管理システム,21…記憶装置管理システム,22…記憶装置管理システム,25…SCSI,30…DVD−RAMドライブ,31…DVD−RAM装置,40…チェンジャ装置,80…チェンジャ装置,90…記憶装置管理デバイスドライバ,210…ファイバチャネルインタフェース,220…SCSIインタフェース,240…ロボット制御インタフェース,250…フラッシュメモリ,251…電池付SRAM,255…PCMCIAコネクタ,259…PCMCIAコントローラ,280…CPU,282…2次キャッシュ,284…主記憶,286…チップセット,299…無停止電源装置,405…チェンジャSCSIインタフェース,410…ロボット制御回路,420…格納庫,450…メディア搬送ユニット,910…ファイルシステムインタフェースコントローラ,920…バッファ制御ソフトウエアモジュール,951…バッファ,952…バッファ,960…DVD−RAMドライブ制御ソフトウエアモジュール,970…SCSIインタフェース制御ソフトウエアモジュール,980…フラッシュメモリ制御ソフトウエアモジュール。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a storage device management method and a storage device management system, and more particularly, receives write data smaller than a redundant data generation unit from an information processing device, reads data deficient in a redundant data generation unit from the storage device, and When generating redundant data after aligning the data in the generation unit and writing the data and redundant data to the storage device, it is guaranteed that all data aligned in the redundant data generation unit will not be lost even if a failure occurs The present invention relates to a storage device management method and a storage device management system.
[0002]
[Prior art]
As a storage device connected to an information processing device (host computer), a DVD-RAM (Digital Versatile Disc-Random Access Memory) device has recently attracted attention. For details of the DVD-RAM device, see Toshiba Review 2, 1998, VOL. 53 NO. 2, “Special Feature I: The Expanding DVD World”, National Technical Report, 1997 JUNE, “Special Feature DVD” and the like.
[0003]
FIG. 19 shows a data management method in the DVD-RAM drive 30.
In the DVD-RAM drive 30, data management is performed in units of 2 KB blocks. On the other hand, ECC (Error Check Code) management is performed in units of 16 blocks in order to increase data re-generation capability (this is called an ECC block).
[0004]
As shown in FIG. 20, the host computer reads / writes data from / to the DVD-RAM device 31 in units of 2 KB blocks.
In the DVD-RAM device 31, reading from the DVD-RAM drive 30 is performed in units of blocks, but writing to the DVD-RAM drive 30 is performed in units of ECC blocks.
For example, as shown in FIG. 20, when the host computer requests writing of data A of block 4, the DVD-RAM device 31 receives the data A and holds it in the buffer 29004 (20001). Next, the DVD-RAM device 31 reads the data of ECC block 0 (block 0 to block 15) including the block 4 from the DVD-RAM drive 30 to the buffer 29500 (20005), and the block 29500 stores the data to the block 4 After combining (merging) A and then generating ECC (20010), the data of ECC block 0 in the buffer 29500 and the generated ECC are passed to the DVD-RAM drive 30 and written to the DVD-RAM medium (20020).
[0005]
[Problems to be solved by the invention]
If a failure (power failure, momentary power, laser emission stop, DVD-RAM medium failure, DVD-RAM drive 30 failure, etc.) occurs during the writing of ECC block 0 shown in FIG. Since the data from 0 to block 15 and the ECC do not match, writing of all the data from block 0 to block 15 has failed.
That is, the conventional DVD-RAM device 31 has a problem that if data writing of one block fails, all data of the ECC block including the block is lost. The host computer 10 can recognize the failure to write the data of the block requested to be written by the failure report, but cannot recognize which data other than the data has been lost, which may cause a larger failure. There was a problem.
[0006]
Therefore, an object of the present invention is to receive write data smaller than the redundant data generation unit from the information processing device, read out data that is insufficient for the redundant data generation unit from the storage device, align the data in the redundant data generation unit, and then delete the redundant data. A storage device management method and a storage device management system capable of guaranteeing that all data arranged in the redundant data generation unit will not be lost even if a failure occurs when the data and the redundant data are written to the storage device It is to provide.
[0007]
[Means for Solving the Problems]
In a first aspect, the present invention receives write data in units smaller than the redundant data generation unit from the information processing device, reads out data deficient in the redundant data generation unit from the storage device, and aligns the data in the redundant data generation unit. Redundant data is generated and the data and redundant data are written to the storage device, and if the writing fails, the data aligned in the redundant data generation unit is nonvolatile.Storage mediumAnd when receiving a data read request belonging to the data arranged in the redundant data generation unit from the information processing device,Sending data held in the non-volatile storage medium to the information processing apparatusA storage device management method is provided.
In the above configuration, the redundant data is, for example, parity in ECC or RAID (Redundant Arrays of Inexpensive Disks).
In the storage device management method according to the first aspect, when writing fails, the data arranged in the redundant data generation unit is held in the nonvolatile storage means, and when there is a read request from the information processing device, the storage device management method Data stored in the sex storage means is preferentially used. For this reason, it can be ensured that all data arranged in the redundant data generation unit is not lost.
[0008]
In a second aspect, the present invention provides write data receiving means for receiving write data smaller than a redundant data generation unit from an information processing device;ReceivedData reading means for reading out data deficient in the redundant data generation unit from the storage device, and data writing means for generating redundant data after aligning the data in the redundant data generation unit and writing the data and redundant data in the storage device And if that write failsStorage means for holding data received from the information processing apparatus in a non-volatile storage medium, and a data read request corresponding to data held in the non-volatile storage medium when received from the information processing apparatus Transmission means for sending the held data to the information processing apparatus.A storage device management system is provided.
In the storage device management system according to the second aspect, the storage device management method according to the first aspect can be suitably implemented. Therefore, it can be ensured that all data arranged in the redundant data generation unit is not lost.
[0009]
In a third aspect, the present invention provides:In the storage device management system configured as described above, the storage unit holds the write data in the nonvolatile storage medium when the data reading unit fails to read the insufficient data, and the transmission unit When a read request for write data is received, the storage device management system is characterized in that the data held in the nonvolatile storage medium is sent to the information processing device.
[0010]
In a fourth aspect, the present invention provides:In the storage device management system configured as described above, the storage device management system is connected to a plurality of storage devices, and the storage means is configured to be non-volatile when the reading or writing fails in all of the plurality of storage devices. A storage device management system is provided that retains data in a storage medium.
In a fifth aspect, the present invention provides the storage device management system configured as described above, wherein the data writing means generates the redundant data when the held data is smaller than a redundant data generation unit. Provided is a storage device management system in which writing to a storage device is performed after the units are aligned.
[0011]
The storage device management system of the present invention may be configured in combination with a plurality of storage devices.
The storage device management system of the present invention may be interposed between the information processing device and the storage device, or may be installed inside either the information processing device or the storage device.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that the present invention is not limited thereby.
[0013]
<< First Embodiment >>
FIG. 1 shows a storage device management system according to the first embodiment of the present invention.
This storage device management system 20 is interposed between the host computer 10 and the DVD-RAM drive 30. The storage device management system 20 and the host computer 10 are connected by the fiber channel 15, and the storage device management system 20 and the DVD-RAM drive 30 are connected by a SCSI (Small Computer System Interface) 25.
[0014]
FIG. 2 shows a system configuration of the storage device management system 20.
The storage device management system 20 includes a fiber channel interface 210 and a SCSI interface 220 as expansion boards, which are connected to a PCI (Peripheral Component Interconnect) bus 290.
A CPU 280 and a main memory 284 are connected to the PCI bus 290 via a chip set 286 that controls the flow of programs and data, and a secondary cache 282 is connected to the CPU 280.
Further, a flash memory 250 is connected to the PCI bus 290 via a PCMCIA (Personal Computer Memory Card International Association) controller 259 and a PCMCIA connector 255.
[0015]
The main memory 284 stores a control program, temporarily holds requests and data received from the host computer 10 via the fiber channel interface 210, and received from the DVD-RAM drive 30 via the SCSI interface 220. It is used as a buffer that temporarily holds data.
[0016]
With reference to FIG. 3, the data flow in the normal state will be described.
When the host computer 10 requests data writing to one block, the storage device management system 20 receives the data of that block and holds it in the segment 3904 in the main memory 284 (3002).
The CPU 280 reads the ECC block including the block from the DVD-RAM drive 30 and holds it in the main memory 284 (3005). Next, the data of the segment 3904 is combined with the data of the read ECC block (3007), and an ECC is generated. Then, the ECC block data and ECC are written to the DVD-RAM drive 30 (3009).
[0017]
With reference to FIG. 4, the flow of data when a failure occurs during writing of data to the DVD-RAM drive 30 will be described.
When the host computer 10 requests data writing to one block, the storage device management system 20 receives the data of that block and holds it in the segment 4904 in the main memory 284 (4002).
The CPU 280 reads the ECC block including the block from the DVD-RAM drive 30 to the main memory 284, and holds it in the main memory 284 (4005). Next, the data of the segment 4904 is combined with the data of the read ECC block (4007) to generate an ECC. Then, it tries to write the ECC block data and ECC into the DVD-RAM drive 30 (4009). At this time, if a failure occurs in the DVD-RAM drive 30 (4020) and writing cannot be performed, the data of the ECC block in the main memory 284 is written into the flash memory 250 (4010).
Thereafter, even if a data write request from the host computer 10 is issued, the storage device management system 20 refuses to receive the data. When the host computer 10 requests reading of the data of the block belonging to the ECC block, if the corresponding data exists in the main memory 284, the data is transferred and the corresponding data in the main memory 284 is transferred. Is not present, the data held in the flash memory 250 is transferred, and the data is not read from the DVD-RAM drive 30.
[0018]
With reference to FIG. 5, the flow of data when a failure occurs when data is read from the DVD-RAM drive 30 will be described.
When the host computer 10 requests data writing to one block, the storage device management system 20 receives the data of that block and holds it in the segment 5904 in the main memory 284 (5002).
The CPU 280 attempts to read the ECC block including the block from the DVD-RAM drive 30 to the main memory 284 (5005). At this time, if a failure occurs in the DVD-RAM drive 30 (5006) and the ECC block data cannot be read, the data of the segment 5904 in the main memory 284 is written into the flash memory 250 (5010).
Thereafter, even if a data write request from the host computer 10 is issued, the storage device management system 20 refuses to receive the data. When the host computer 10 requests reading of the block data, if the corresponding data exists in the main memory 284, the data is transferred, and the corresponding data does not exist in the main memory 284. Transfers the data held in the flash memory 250 and does not read the data from the DVD-RAM drive 30.
[0019]
If the failure occurred in the DVD-RAM drive 30 is a failure other than the DVD-RAM medium, and there is no failure in the DVD-RAM medium, the DVD-RAM medium in the failed DVD-RAM drive 30 is removed, It is inserted into a DVD-RAM drive (30) connected to another storage device management system (20). Further, the flash memory 250 is removed from the storage device management system 20 to which the failed DVD-RAM drive 30 was connected, and the flash memory 250 is connected to the storage device management system (20) in which the DVD-RAM medium is inserted. . When the storage device management system (20) is started in this state, the CPU (280) determines whether data is held in the flash memory 250. If data is held, the data is stored in the DVD-RAM. Write to media. That is, the ECC block data including the block of data is read from the DVD-RAM drive (30), the data in the flash memory 250 is combined to generate an ECC, and the ECC block data and ECC are read from the DVD-RAM drive. Write to (30).
In this way, if the flash memory 250 and the DVD-RAM medium are transferred to another storage device management system (20) and a DVD-RAM drive (30), the data can be recovered on the original DVD-RAM medium.
[0020]
In the first embodiment, buffers for two ECC groups (for receiving data from the host computer 10 and reading and combining data from the DVD-RAM drive 30) are used in the main memory 284. By providing a plurality of areas in the H. 284 and managing data together with a cache algorithm such as LRU (Least Recently Used), the number of reads and writes to the DVD-RAM drive 30 can be reduced. You may enable it to respond to a process request at higher speed. When a plurality of areas are provided, a large amount of data that has not been written to the DVD-RAM drive 30 exists in the main memory 284, and thus it is desirable to use the flash memory 250 having a sufficient capacity to save the data.
[0021]
When the flash memory 250 is used, when the entire system including the storage device management system 20 encounters a failure such as a power failure, data cannot be saved to the flash memory 250, and data may be lost.
Therefore, as shown in FIG. 21, an SRAM (Static Random Access Memory) 251 with a battery may be used in place of the flash memory 250 of FIG. In this case, the buffer is provided not in the main memory 284 but in the SRAM with battery 251. As a result, even when the entire system encounters a failure such as a power failure, data can be retained. When the storage device management system 20 starts after recovery from a failure or the like, the CPU 280 determines whether data is stored in the battery-equipped SRAM 251 and, if so, stores the data in the DVD-RAM medium. Write.
[0022]
Further, as shown in FIG. 22, power may be supplied from the non-stop power supply device 299 to the storage device management system 20. As a result, even when the entire system encounters a failure such as a power failure, the data in the main memory 284 can be saved in the flash memory 250.
[0023]
According to the first embodiment described above, even when data writing to the DVD-RAM drive 30 fails, all data in the ECC block is held in the flash memory 250 or the battery-equipped SRAM 251. The loss of all data in the ECC block due to the failure in the RAM drive 30 can be prevented.
[0024]
<< Second Embodiment >>
FIG. 6 shows a storage device management system according to the second embodiment of the present invention.
This storage device management system 21 is incorporated in a changer device 40 connected to the host computer 10.
The changer device 40 includes a storage device management system 21, a plurality of DVD-RAM drives 30, a plurality of storages 420 for holding DVD-RAM media, and a DVD-RAM medium between the storages 420 and the DVD-RAM drive 30. A media transport unit 450 for transporting the media, and a robot control circuit 410 for controlling the media transport unit 450.
[0025]
The host computer 10 and the storage device management system 21 are connected by the fiber channel 15, the storage device management system 21 and the DVD-RAM drive 30 are connected by the SCSI 25, and the storage device management system 21 and the robot control circuit 410 are connected by the RS232C interface 411. Has been.
[0026]
When the storage device management system 21 instructs the robot control circuit 410 to transport the DVD-RAM medium, the robot control circuit 410 transports the DVD-RAM medium from the storage 420 to the DVD-RAM drive 30 or the DVD-RAM drive 30. The media transport unit 450 is controlled so that the DVD-RAM medium inside is returned to the storage 420.
[0027]
FIG. 7 shows the system configuration of the storage device management system 21.
This storage device management system 21 has basically the same configuration as the storage device management system 20 shown in the first embodiment, and the operation of writing data and holding data in the event of a failure will be described in the first embodiment. Just as you did. In addition, the CPU 280 receives a DVD-RAM medium transport request from the host computer 10 and instructs the robot control circuit 410 via the robot control interface 240 to execute the DVD-RAM medium transport.
[0028]
Also in the second embodiment, similarly to the first embodiment, a cache algorithm may be used together, a battery-equipped SRAM may be used, or a non-stop power supply device may be used.
[0029]
According to the second embodiment described above, in addition to the effects of the first embodiment, the storage device management system 21 is realized as a part of the changer device 40, thereby reducing the implementation cost of the storage device management system 21. can do.
[0030]
<< Third Embodiment >>
FIG. 8 shows a storage device management system according to the third embodiment of the present invention.
The storage device management system 22 is connected between the host computer 10 and the four changer devices 80. The host computer 10 and the storage device management system 22 are connected by a fiber channel 15, and the storage device management system 22 and the changer device 80 are connected by a SCSI 25.
[0031]
FIG. 9 shows the configuration of the changer device 80.
The changer device 80 includes a plurality of storages 420 that hold DVD-RAM media, a media transport unit 450 that transports DVD-RAM media between the storages 420 and the DVD-RAM drive 30, and the media transport unit 450. A robot control circuit 410 for controlling, and a changer SCSI interface 405 for receiving a DVD-RAM medium transport request from the storage device management system 22 and converting it into a command to the robot control circuit 410 are provided.
The DVD-RAM drive 30 in the changer device 80 is connected to the storage device management system 22 by the SCSI 25.
[0032]
FIG. 10 shows a system configuration of the storage device management system 22.
The storage device management system 22 has basically the same configuration as the storage device management system 20 shown in the first embodiment, but in addition to this, a SCSI interface 220 for connecting to each of the four changer devices 80. 4 are provided. Thus, a RAID configuration is realized by combining the DVD-RAM drives 30 in the four changer devices 80. That is, three of the four DVD-RAM drives 30 are data storage drives, and one is a parity storage drive in RAID. The CPU 280 also implements RAID processing, a data distribution module that distributes data to three data storage drives, a parity generation module that generates parity from data distributed to the three data storage drives, and a host computer A data collection module that collects data read from three data storage drives when there is a read request from the data 10 and transfers it to the host computer 10, and the remaining two data when one data storage drive fails A data restoration module for restoring data of a failed data storage drive from the data of the storage drive and the parity of the parity storage drive is implemented.
[0033]
The data flow at normal time will be described with reference to FIG.
When the host computer 10 requests the storage device management system 22 to write data to one logical block, the data distribution module of the CPU 280 calculates the DVD-RAM drive corresponding to the data and the physical block in the DVD-RAM drive. The data is received from the host computer 10 and held in the segment 11936 in the main memory 284 (11002). Next, the CPU 280 reads out the data of the ECC block including the physical block from the DVD-RAM drive 30 corresponding to the data (11023), and generates data (one parity for the RAID group including the ECC block). Data of a group of ECC blocks to be used in the above-described operation are read from the other DVD-RAM drive 30 to the main memory 284 (11021, 11022). Next, the data of the segment 11936 is combined with the data read from the corresponding DVD-RAM drive 30 (11070). Then, an ECC is generated and set as a new ECC block. Next, the parity generation module of the CPU 280 generates parity using the new ECC block and other data. Next, the data of the new ECC block is written to the corresponding data storage drive (11083), and the parity is written to the parity storage drive (11084).
[0034]
The flow of data when a failure occurs when data is written to one DVD-RAM drive 30 will be described with reference to FIGS.
In FIG. 12, when the host computer 10 requests the storage device management system 22 to write data to one logical block, the data distribution module of the CPU 280 performs the physical processing in the DVD-RAM drive corresponding to the data and the DVD-RAM drive. A block is calculated, data is received from the host computer 10, and held in the segment 12936 in the main memory 284 (12002). Next, the CPU 280 reads the data of the ECC block including the physical block from the DVD-RAM drive 30 corresponding to the data (12023), and also reads the data of the RAID group including the ECC block to another DVD-RAM drive 30. To main memory 284 (12021, 12022). Next, the data of the segment 12936 is combined with the data read from the corresponding DVD-RAM drive 30 (12070). Then, an ECC is generated and set as a new ECC block. Next, the parity generation module of the CPU 280 generates parity using the new ECC block and other data. Next, the new ECC block data is written to the corresponding data storage drive (12083), and the parity is written to the parity storage drive (12084). At this time, it is assumed that a failure occurred in the data storage drive to which data was to be written (12006) and the data could not be written.
[0035]
Then, as shown in FIG. 13, the data of the new ECC block that could not be written is written in the failure data holding area of all the other DVD-RAM drives 30 (13011, 13012, 13014). These failure data holding areas are special areas provided separately from areas for writing normal data or parity.
Thereafter, even if the host computer 10 requests data writing, the storage device management system 22 refuses to receive the data. Further, when the host computer 10 requests to read data of a new ECC block that could not be written, if the data exists in the main memory 284, the data is transferred to the main memory 284. If there is no data to be read, the data held in the failed data holding area is read and transferred, and the data is not read from the failed data storage drive.
[0036]
The data flow when all the DVD-RAM drives 30 cannot be used will be described with reference to FIG.
When all the DVD-RAM drives 30 become unusable, the writing of new ECC block data that could not be written to the fault data holding area also fails (14011, 14012, 14014). Therefore, the CPU 280 saves the data of the new ECC block that could not be written to the flash memory 250 (14050).
Thereafter, even if the host computer 10 requests data writing, the storage device management system 22 refuses to receive the data. Further, when the host computer 10 requests to read data of a new ECC block that could not be written, if the data exists in the main memory 284, the data is transferred and stored in the main memory 284. If there is no data corresponding to the data, the data saved in the flash memory 250 is read and transferred, and the data is not read from the failed data storage drive.
[0037]
Also in the third embodiment, similarly to the first embodiment, a cache algorithm may be used together, a battery-equipped SRAM may be used, or a non-stop power supply device may be used.
[0038]
According to the third embodiment described above, the effects of the first embodiment can be obtained even when the RAID configuration is adopted.
[0039]
<< Fourth Embodiment >>
FIG. 15 shows a storage device management system according to the fourth embodiment of the present invention.
This storage device management system is realized as a storage device management device driver 90 in the host computer 10 to which the DVD-RAM drive 30 is connected by the SCSI 25.
Under the control of the storage device management device driver 90, the DVD-RAM drive 30, the PCMCIA connector 255, and the flash memory 250 are placed.
[0040]
FIG. 16 shows the internal configuration of the storage device management device driver 90.
The storage device management device driver 90 includes a file system interface software module 910 that implements an interface with the file system software (11 in FIG. 17) of the host computer 10 and two surfaces provided in the main memory in the host computer 10. Buffer control software module 920 that manages buffers 951 and 952, DVD-RAM drive control software module 960 that controls DVD-RAM drive 30, SCSI interface control software module 970 that controls the SCSI interface, and flash memory And a flash memory control software module 980 for controlling 250.
[0041]
A normal data flow will be described with reference to FIG.
When the file system software 11 of the host computer 10 requests writing of data of one block, the file system interface software module 910 receives the data (17002) and holds it in the segment 17904 in the buffer 951 (17005). The buffer control software module 920 reads the ECC block including the block from the DVD-RAM drive 30 to the buffer 952 via the DVD-RAM drive control software module 960 and the SCSI interface control software module 970 (17006). Next, the data of the segment 17904 is combined with the data of the read ECC block (17007). Next, the ECC block data and ECC are written to the DVD-RAM drive 30 (17010).
[0042]
A case where a failure occurs during writing to the DVD-RAM drive 30 will be described with reference to FIG.
If a failure occurs during writing (17010) to the DVD-RAM drive 30 and data cannot be written, the buffer control software module 920 passes through the flash memory control software module 980 and stores it in the buffer 952. The ECC block data is written into the flash memory 250 (18030).
Thereafter, even if a data write request is issued from the file system software 11 of the host computer 10, the buffer control software module 920 refuses to receive the data. When the file system software 11 of the host computer 10 requests reading of the data in the block in the ECC block, if the data exists in the buffer 952, the data is transferred and exists in the buffer 952. If not, the data held in the flash memory 250 is transferred and the data is not read from the DVD-RAM drive 30.
[0043]
Also in the fourth embodiment, similarly to the first embodiment, a cache algorithm may be used together, a battery-equipped SRAM may be used, or a non-stop power supply device may be used.
[0044]
According to the fourth embodiment described above, since the storage device management device driver 90 is provided in the host computer 10, the effects of the first embodiment can be obtained with a simple configuration.
[0045]
【The invention's effect】
According to the storage device management method and the storage device management system of the present invention, write data smaller than the redundant data generation unit is received from the information processing device, data that is insufficient for the redundant data generation unit is read from the storage device, and the redundant data generation unit is used. When redundant data is generated after data is aligned and the data and redundant data are written to the storage device, even if a failure occurs, it can be ensured that all data aligned in the redundant data generation unit is not lost.
[Brief description of the drawings]
FIG. 1 is a diagram showing connections of a storage device management system in a first embodiment.
FIG. 2 is a diagram showing an internal configuration of a storage device management system according to the first embodiment.
FIG. 3 is a diagram showing a normal data flow in the first embodiment.
FIG. 4 is a diagram illustrating a data flow when writing fails due to a writing failure in the DVD-RAM drive according to the first embodiment.
FIG. 5 is a diagram showing a data flow when writing fails due to a reading failure in the DVD-RAM drive according to the first embodiment.
FIG. 6 is a diagram showing the connection of the storage device management system in the second embodiment.
FIG. 7 is a diagram illustrating an internal configuration of a storage device management system according to a second embodiment.
FIG. 8 is a diagram showing connections of a storage device management system in a third embodiment.
FIG. 9 is a diagram illustrating an internal configuration of a changer device according to a third embodiment.
FIG. 10 is a diagram illustrating an internal configuration of a storage device management system according to a third embodiment.
FIG. 11 is a diagram showing a normal data flow in the third embodiment.
FIG. 12 is a diagram showing the first half of a data flow when writing fails due to a writing failure to one DVD-RAM drive in the third embodiment.
FIG. 13 is a diagram illustrating the latter half of the data flow when writing fails due to a writing failure to one DVD-RAM drive in the third embodiment.
FIG. 14 is a diagram showing a data flow when writing fails due to a writing failure to all DVD-RAM drives in the third embodiment.
FIG. 15 is a diagram showing connections of a storage device management system (device driver) in the fourth embodiment.
FIG. 16 is a diagram showing an internal configuration of a storage device management system (device driver) in the fourth embodiment.
FIG. 17 is a diagram illustrating a normal data flow in the fourth embodiment.
FIG. 18 is a diagram showing a data flow when writing fails due to a writing failure to a DVD-RAM drive in the fourth embodiment.
FIG. 19 is a diagram showing a data management unit (block) and an ECC generation unit (ECC block) in a DVD-RAM drive.
FIG. 20 is a diagram showing a data flow in a conventional DVD-RAM device.
FIG. 21 is a diagram illustrating an internal configuration of a first modification of the storage device management system according to the first embodiment;
FIG. 22 is a diagram illustrating a configuration of a second modification of the storage device management system according to the first embodiment;
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 ... Host computer, 11 ... File system software, 15 ... Fiber channel, 20 ... Storage device management system, 21 ... Storage device management system, 22 ... Storage device management system, 25 ... SCSI, 30 ... DVD-RAM drive, 31 ... DVD-RAM device, 40 ... changer device, 80 ... changer device, 90 ... storage device management device driver, 210 ... fiber channel interface, 220 ... SCSI interface, 240 ... robot control interface, 250 ... flash memory, 251 ... with battery SRAM, 255 ... PCMCIA connector, 259 ... PCMCIA controller, 280 ... CPU, 282 ... Secondary cache, 284 ... Main memory, 286 ... Chipset, 299 ... Non-stop power supply, 405 ... Changer S SI interface, 410 ... robot control circuit, 420 ... storage, 450 ... media transport unit, 910 ... file system interface controller, 920 ... buffer control software module, 951 ... buffer, 952 ... buffer, 960 ... DVD-RAM drive control software Wear module, 970... SCSI interface control software module, 980... Flash memory control software module.

Claims (8)

冗長データ生成単位より小さい単位の書き込みデータを情報処理装置から受け取り、
冗長データ生成単位に不足するデータを記憶装置から読み出し、前記冗長データ生成単位にデータを揃えてから冗長データを生成し前記記憶装置に前記データと冗長データとを書き込むと共に、その書き込みが失敗した場合、前記冗長データ生成単位に揃えたデータを不揮発性の記憶媒体に保持し、前記情報処理装置から前記冗長データ生成単位に揃えたデータに属するデータの読み出し要求を受けた場合は、前記不揮発性の記憶媒体に保持したデータを前記情報処理装置へ送ることを特徴とする記憶装置管理方法。
Receives write data in units smaller than the redundant data generation unit from the information processing device,
When data that is insufficient for the redundant data generation unit is read from the storage device, the redundant data is generated after aligning the data in the redundant data generation unit, the data and the redundant data are written to the storage device, and the writing fails When the data aligned with the redundant data generation unit is held in a nonvolatile storage medium and a read request for data belonging to the data aligned with the redundant data generation unit is received from the information processing device, the nonvolatile data A storage device management method , comprising: transmitting data held in a storage medium to the information processing device .
前記不足するデータの読み出しが失敗した場合、前記書き込みデータを前記不揮発性の記憶媒体に保持し、前記書き込みデータの読み出し要求を受けた場合は、前記不揮発性の記憶媒体に保持したデータを前記情報処理装置へ送ることを特徴とする請求項1に記載の記憶装置管理方法。 When the reading of the insufficient data fails, the write data is held in the nonvolatile storage medium, and when the read request for the write data is received, the data held in the nonvolatile storage medium is stored in the information The storage device management method according to claim 1, wherein the storage device management method is sent to a processing device . 前記不揮発性の記憶媒体へのデータの保持は、複数の記憶装置で前記読み出し又は書き込みが失敗した場合に行うことを特徴とする請求項1または請求項2のいずれかに記載の記憶装置管理方法 3. The storage device management method according to claim 1, wherein the storage of data in the nonvolatile storage medium is performed when the reading or writing fails in a plurality of storage devices. . 前記保持されているデータが冗長データ生成単位より小さい単位のデータである場合、前記冗長データ生成単位にデータを揃えてから前記記憶装置に書き込むことを特徴とする請求項3に記載の記憶装置管理方法 4. The storage device management according to claim 3, wherein when the held data is data in a unit smaller than a redundant data generation unit, the data is aligned in the redundant data generation unit and then written to the storage device. Way . 冗長データ生成単位より小さい書き込みデータを情報処理装置から受け取る書き込みデータ受取手段と、前記受信した冗長データ生成単位に不足するデータを前記記憶装置から読み出すデータ読出手段と、冗長データ生成単位にデータを揃えてから冗長データを生成し前記記憶装置に前記データと冗長データとを書き込むデータ書込手段と、その書き込みが失敗した場合に前記情報処理装置から受け取ったデータを不揮発性の記憶媒体に保持する記憶手段と、前記不揮発性の記憶媒体に保持されているデータに対応するデータの読み出し要求を前記情報処理装置から受けた場合に前記保持されているデータを前記情報処理装置へ送る送信手段とを有することを特徴とする記憶装置管理システム。 Write data receiving means for receiving write data smaller than the redundant data generation unit from the information processing device, data reading means for reading out data received from the received redundant data generation unit from the storage device, and data in the redundant data generation unit Data writing means for generating redundant data after that and writing the data and redundant data to the storage device, and storage for holding the data received from the information processing device in a nonvolatile storage medium when the writing fails And a transmission means for transmitting the held data to the information processing apparatus when a data read request corresponding to the data held in the nonvolatile storage medium is received from the information processing apparatus. A storage device management system. 前記記憶手段は、前記データ読出手段による前記不足するデータの読み出しが失敗した場合、前記書き込みデータを前記不揮発性の記憶媒体に保持し、前記送信手段は、前記書き込みデータの読み出し要求を受けた場合、前記不揮発性の記憶媒体に保持したデータを前記情報処理装置へ送ることを特徴とする請求項5に記載の記憶装置管理システム。 The storage means holds the write data in the nonvolatile storage medium when reading of the insufficient data by the data reading means fails, and the transmission means receives a read request for the write data 6. The storage device management system according to claim 5 , wherein data held in the nonvolatile storage medium is sent to the information processing device . 前記記憶装置管理システムは、複数の記憶装置と接続しており、
前記記憶手段は、複数の記憶装置全てで前記読み出しまたは書き込みが失敗した場合に、前記不揮発性の記憶媒体へのデータの保持を行うことを特徴とする請求項5または請求項6のいずれかに記載の記憶装置管理システム。
The storage device management system is connected to a plurality of storage devices,
7. The storage device according to claim 5, wherein the storage unit holds data in the nonvolatile storage medium when the reading or writing fails in all of the plurality of storage devices. The storage device management system described.
前記データ書込手段は、前記保持されているデータが冗長データ生成単位より小さい単位のデータである場合、前記冗長データ生成単位に揃えてから記憶装置への書き込みを行うことを特徴とする請求項7に記載の記憶装置管理システム。 The data writing means, when the held data is data in a unit smaller than a redundant data generation unit, writes to the storage device after aligning with the redundant data generation unit. 8. The storage device management system according to 7 .
JP29027598A 1998-10-13 1998-10-13 Storage device management method and storage device management system Expired - Fee Related JP3616985B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29027598A JP3616985B2 (en) 1998-10-13 1998-10-13 Storage device management method and storage device management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29027598A JP3616985B2 (en) 1998-10-13 1998-10-13 Storage device management method and storage device management system

Publications (2)

Publication Number Publication Date
JP2000122811A JP2000122811A (en) 2000-04-28
JP3616985B2 true JP3616985B2 (en) 2005-02-02

Family

ID=17754042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29027598A Expired - Fee Related JP3616985B2 (en) 1998-10-13 1998-10-13 Storage device management method and storage device management system

Country Status (1)

Country Link
JP (1) JP3616985B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004105023A1 (en) * 2003-05-20 2004-12-02 Fujitsu Limited Information recording method, information record medium, information recording/reproducing apparatus, and information recording/reproducing system
WO2005050453A1 (en) * 2003-11-18 2005-06-02 Matsushita Electric Industrial Co., Ltd. File recording device
US8175717B2 (en) 2005-09-06 2012-05-08 Boston Scientific Neuromodulation Corporation Ultracapacitor powered implantable pulse generator with dedicated power supply
US8533559B2 (en) 2008-05-12 2013-09-10 Panasonic Corporation Semiconductor recording device with error recovery
US9694192B2 (en) 2013-10-04 2017-07-04 Boston Scientific Neuromodulation Corporation Implantable medical device with a primary and rechargeable battery
US9345883B2 (en) 2014-02-14 2016-05-24 Boston Scientific Neuromodulation Corporation Rechargeable-battery implantable medical device having a primary battery active during a rechargeable-battery undervoltage condition

Also Published As

Publication number Publication date
JP2000122811A (en) 2000-04-28

Similar Documents

Publication Publication Date Title
US7809979B2 (en) Storage control apparatus and method
US7975168B2 (en) Storage system executing parallel correction write
KR100265146B1 (en) Method and apparatus for treatment of deferred write data for a dead raid device
US6766491B2 (en) Parity mirroring between controllers in an active-active controller pair
TWI291103B (en) Method, storage controller, system, and computer-readable recording medium for autonomic power loss recovery for a multi-cluster storage sub-system
US7260695B2 (en) Scanning modified data during power loss
US7600152B2 (en) Configuring cache memory from a storage controller
JP3742494B2 (en) Mass storage device
US8356292B2 (en) Method for updating control program of physical storage device in storage virtualization system and storage virtualization controller and system thereof
EP1191442A2 (en) Data storage array apparatus and operating method for storing error information without delay in data access
US20120233398A1 (en) Storage system and data management method
JP2005301419A (en) Disk array device and data processing method thereof
CN103092765B (en) Solid-state memory system, device and method for writing data
JP4930556B2 (en) Evacuation processing apparatus, evacuation processing method, and storage system
WO2024113685A1 (en) Data recovery method for raid array and related apparatus
JPH10254631A (en) Computer system
JP3616985B2 (en) Storage device management method and storage device management system
CN1197009C (en) File system and file management method
KR100881803B1 (en) Storage, data placement methods and programs
JP2000357059A (en) Disk array device
JPH1195933A (en) Disk array device
KR101103900B1 (en) Data copy system apparatus and method
JPH08286844A (en) Parity generation control method and disk control device
JP4398596B2 (en) Disk array device
US11334508B2 (en) Storage system, data management method, and data management program

Legal Events

Date Code Title Description
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: 20041026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041028

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees