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
JP3597766B2 - ディスクアレイ装置の制御方法 - Google Patents
[go: Go Back, main page]

JP3597766B2 - ディスクアレイ装置の制御方法 - Google Patents

ディスクアレイ装置の制御方法 Download PDF

Info

Publication number
JP3597766B2
JP3597766B2 JP2000266365A JP2000266365A JP3597766B2 JP 3597766 B2 JP3597766 B2 JP 3597766B2 JP 2000266365 A JP2000266365 A JP 2000266365A JP 2000266365 A JP2000266365 A JP 2000266365A JP 3597766 B2 JP3597766 B2 JP 3597766B2
Authority
JP
Japan
Prior art keywords
data
writing
area
disk
storage data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000266365A
Other languages
English (en)
Other versions
JP2001100926A (ja
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 JP2000266365A priority Critical patent/JP3597766B2/ja
Publication of JP2001100926A publication Critical patent/JP2001100926A/ja
Application granted granted Critical
Publication of JP3597766B2 publication Critical patent/JP3597766B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、いわゆるRAID(Redundant Array of Inexpensive Disks)と呼ばれるディスクアレイ装置に係わり、ディスク装置のアクセス処理性能、特に、データ書き込み処理の高速化に関する。
【0002】
【従来の技術】
コンピュータを構成する要素のうち、駆動機構を有するハードディスク装置(ディスク装置またはドライブとも呼ばれる)は、他の電子部品に比べ故障率が高く、また、データを書き込む手段として用いられるため、その故障が与える影響は、大きい。そのため、信頼性の向上が要望されていた。そのような要望に応えるものとして、特開平2−236714号公報に記載されているものがある。これは、複数のディスク装置を有し、書き込むべき格納データの書き込み時には、格納データの書き込みに加えて、冗長データを生成し、書き込む。
【0003】
冗長データは、1台のディスク装置が故障して、そのディスク装置上の格納データが読めなくなったときに、他の故障していないディスク装置上の格納データと冗長データとから読めなくなったデータが再現できるように生成される。生成された冗長データは、当該冗長データを生成するのに使われた格納データを格納しているディスク装置とは異なる、別のディスク装置へ書き込まれる。
【0004】
このように構成された、複数のディスク装置からなるものは、ディスクアレイ装置、もしくは、RAIDと呼ばれる。これによれば、アレイを構成する任意のディスク装置が故障しても、他のディスク装置の格納データと前記冗長データから該障害ディスク装置上の格納データを修復でき、ハードディスク装置のデータ保全性の向上が図れる。
【0005】
【発明が解決しようとする課題】
RAIDは、データ保全性が向上する半面、格納データの書き込みには、常に上記冗長データの生成と書き込みとを伴い、そのために書き込み処理時間が増大し、書き込み完了の報告を外部にするのが遅れて、性能が低下してしまうという問題点が指摘されていた。
【0006】
そのため、ディスク装置への書き込みが少ない(読み込み処理が多くの割合を占める)システムにおいてしか、事実上向かないものであった。
【0007】
この対策として、ディスク制御装置内にキャッシュメモリを用意し、キャッシュメモリへの書き込みが完了すると、ただちにホストコンピュータに書き込み完了を報告し、その後、冗長データを生成し、格納データと冗長データをディスク装置に書き込むシステムもある。
【0008】
しかし、このシステムは、高価なキャッシュメモリを用いるために、システムが高価になるという問題がある。
【0009】
本発明の目的は、コストを上昇させることなく、上記書き込み処理時の性能低下(ライトペナルティ)を防いだディスクアレイ装置を提供することにある。
【0010】
本発明の他の目的は、上記の目的に加えて、RAIDの特徴であるデータの保全性も維持できるディスクアレイ装置を提供することにある。
【0011】
【課題を解決するための手段】
上記目的を達成するために、複数のディスク装置を備え、当該複数のディスク装置のうち少なくとも1つは、他のディスク装置に書き込まれた格納データを読み出すことができないときに、読み出すことができない当該データを再現するための冗長データを書き込む冗長データ領域を有するディスクアレイ装置において、上記ディスク装置のうちの少なくとも1つは、上記格納すべき格納データを書き込む領域が、当該格納データを一時的に書き込むためのテンポラリ領域と、当該テンポラリ領域に書き込まれた当該格納データを最終的に書き込むための格納データ領域とに分割されており、外部から受付けた、上記ディスク装置に書き込むべき格納データは、冗長データを作成することなく、一旦、上記テンポラリ領域に書き込み、当該テンポラリ領域への書き込みが完了した時点で、外部へ書き込み完了を報告するテンポラリ領域書き込み手段と、上記書き込み完了の報告後、テンポラリ領域上の上記格納データに基づいて、冗長データを生成する生成手段と、当該冗長データを上記冗長データ領域に格納し、当該格納データを上記格納データ領域に書き込むデータ領域書き込み手段とを有することとしたものである。
【0012】
また、外部から格納すべき格納データを受付けたときに、複数の上記ディスク装置を選択し、当該格納データを書き込むテンポラリ領域を、当該ディスク装置にあるテンポラリ領域とし、複数のテンポラリ領域の各々に同一の格納データを多重に書き込む手段と、上記テンポラリ領域から上記格納データを読み出す際に、一方のディスク装置から上記格納データを読み出すことができないときは、他方のディスク装置から読み出す手段とを有することとしたものである。
【0013】
また、外部から格納すべき格納データを受付けたときに、当該格納データを書き込むテンポラリ領域を、最終的に当該格納データを書き込むべき格納データ領域を有するディスク装置とは異なるディスク装置にあるテンポラリ領域から選択する手段を有することとしたものである。
【0014】
【作用】
外部からの格納すべき格納データは、冗長データを作成することなく一旦テンポラリ領域に書き込み、この書き込みが完了した時点で外部(例えば、ホストコンピュータ)へ書き込み完了を報告し、テンポラリ領域上の格納データを、その後読み出して、冗長データを生成し、格納データと、冗長データとをそれぞれのデータ領域に書き込む。これにより、キャッシュメモリを用いずに、外部へのレスポンスが高速化される。
【0015】
また、複数のディスク装置上のテンポラリ領域に2重書きをし、その後、同一格納データへの読み込み要求を受けた場合、テンポラリ領域から該当格納データを読み込むこととすると、格納データの保全性が高まる。
【0016】
このときに、テンポラリ領域からの読み出しにおいて、2重書きしているディスク装置のうちで、現在読み出し/書き込み動作を行っていないディスク装置(このディスク装置はドライブビジーになっていないと呼ばれる)を選択することにより、ドライブビジーによる遅延を回避し、高速に書き込み動作を行うことができる。
【0017】
また、テンポラリ領域から格納データ領域に格納データを書き込む際に、古い格納データとテンポラリ領域にある新しい格納データと冗長データとを読みだして、新たに冗長データを生成する必要がある。当該格納データを書き込むテンポラリ領域を、最終的に当該格納データを書き込むべき格納データ領域を有するディスク装置とは異なるディスク装置にあるテンポラリ領域から選択すると、各ドライブを多重動作できることにより、テンポラリ領域から格納データ領域への書き込みが高速化する。
【0018】
このときに、選択するテンポラリ領域として、現在読み出し/書き込み動作を行っていないディスク装置にあるものから選択することにより、ドライブビジーによる遅延を回避し、高速に書き込み動作を行える。
【0019】
【実施例】
以下、本発明に係わるディスクアレイ装置の一実施例について説明する。
【0020】
図1は、本実施例に係わるディスクアレイ装置の全体構成を示した図である。図中ディスクアレイ装置101は、制御回路102、上位インタフェース回路103、小型ディスクインタフェース回路104、磁気ディスク装置111より構成される。また制御回路102は、マイクロプロセッサ105、プログラム用メモリ106、データバッファ107、冗長情報生成回路108、不揮発性メモリ109から構成されている。また、不揮発性メモリ109は、テンポラリ領域管理テーブル110を有する。
【0021】
図2は、ディスクアレイ装置内の磁気ディスク装置の構成を示した図である。ディスクアレイ装置101内の全ての磁気ディスク装置111は、ユーザデータを最終的に格納するデータ領域201と、ユーザデータを一時的に書き込むテンポラリ領域202より構成される。データ領域201とテンポラリ領域202のサイズは任意である。
【0022】
図3は、本実施例に係わるソフトウエア構成図である。これは、図1に示す、マイクロプロセッサ105と、マイクロプロセッサ105が実行するマイクロプログラムが格納されているプログラム用メモリ106とにより実行される。ただし、バックグラウンドデータ書き込み処理304のうち冗長データの生成は、冗長情報生成回路108が行う。スケジュラー301によりディスクアレイ装置101全体が制御される。スケジュラー301によりホストI/F制御部302、ホストコマンド実行部303、バックグランドデータ書き込み処理部304は制御される。また、ホストコマンド実行部303は、コマンド判定部305を通して、リードコマンド処理306、ライトコマンド処理307、制御系コマンド処理308を利用することによりホストコマンドを実行する。
【0023】
図4は、本実施例に係わるテンポラリ領域管理テーブル110の構成を示した図である。図中、本管理テーブルは、上位装置指定情報401、制御部管理情報402、テンポラリ領域管理情報403、およびテンポラリ領域のうち使われているものと空いているものを確認するためのネクストポインタ404から構成されている。ネクストポインタ404には、2種類のチェインがあり、1つは、テンポラリ領域のうち使われているものを結んだチェインであり、もう1つは、空いているものを結んだチェインである。
【0024】
上位装置指定情報401は、論理LBA(LBA:Logical Block Address)405、論理LEN(LEN:LENgth)406から構成される。制御部管理情報402は、物理ドライブNo.407、物理LBA408、物理LEN409から構成される。テンポラリ領域管理情報403は、テンポラリ領域として使用される物理ドライブNo.410、その磁気ディスク装置内の物理LBA411、および物理LEN412から構成される。ネクストポインタ404を確認することによりテンポラリ領域の空きを確認することが可能である。
【0025】
次に上位装置からライトコマンドを受取り、テンポラリ領域に対して2重書きを行う各処理について図5,図7を用いて説明する。
【0026】
上位装置501からライトデータ502を受け取ると、制御部503は、まずライトデータ502のブロック長を確認し(図7、701)、しきい値よりブロック長が大きかった場合は、テンポラリ領域に格納せずに、通常のライト処理(702)を実施する。つまり上位装置501からのライトデータ502は、通常のライト領域508へ格納し、また、作成されたパリティデータは、通常のパリティライト領域509へ書き込む。ライトデータ502のサイズが大きいときは、ライトペナルティは小さいから直接、最終的な格納場所に格納することとしたものである。
【0027】
しきい値よりブロック長が小さい場合は、テンポラリ領域をネクストポインタ404(図4)を使用して確保する(703)。確保する際には、実際にデータを書く物理的な磁気ディスク装置と重ならないように管理している。異なるディスク装置とすることにより、バックグラウンドで処理するときに、テンポラリ領域にある新データと実際にデータを書く位置にある旧データとが異なるディスク装置であるために、並列に読みだすことができ、冗長データを生成する処理が高速化する。さらに、テンポラリ領域を確保する際は、格納データを書き込むテンポラリ領域を、現に読み出しもしくは書き込み動作を行っていないディスク装置にあるテンポラリ領域から選択するようにする。こうすることにより、ドライブビジーによる遅延を回避し、高速に書き込み動作を行うことができる。
【0028】
もし、テンポラリ領域に空きが無く確保できなかった場合(704)には、通常のライト処理(702)を実施する。空きテンポラリ領域が確保できた場合、テンポラリ領域511のうちの領域506/507に対して2重書きを実施する。
【0029】
次にテンポラリ領域に対して2重書きしているユーザデータを読み込み、パリティデータを生成し、データ領域に書き込む処理について図6,図8を用いて説明する。
【0030】
制御部603は、バックグランド処理で、まずテンポラリ領域管理テーブル611よりすでに2重書きされているユーザデータが格納されている領域605/606のアドレスを確保し(図8、801)、今現在リードおよびライト処理を行っていない方のテンポラリ領域から、データをリードする(802)。つまり、2重書きされているユーザデータが格納されている領域605/606のうち、例えばデータが格納されている領域606が格納されている磁気ディスク装置がリード処理で使用されている場合、別のデータが格納されている領域605をリードすることになる。こうすることにより、ドライブビジーによる遅延を回避し、高速に読み出し動作を行うことができる。
【0031】
磁気ディスク装置の障害により1つのテンポラリ領域からデータがリードできなかった場合(803)には、2重書きしている別のテンポラリ領域からデータをリードする(804)。このように、2重書きしていることにより、ディスク装置が故障してもデータを保持することができ、データの保全性が高まる。
【0032】
テンポラリ領域から読み出されたデータと、変更する必要のあるパリティデータ608により、冗長情報生成回路604で新しいパリティデータを生成し(805)、データは、607へ、パリティデータは、608へ書き込まれる(806)。データ領域へ格納データを書き込む場合に、上記格納データ領域を有するディスク装置で書き込みエラーが発生したときは、当該ディスク装置を自動的に切り離し、このディスク装置への書き込みは以後行わないこととする。
【0033】
尚、以上の実施例においては、記憶媒体として磁気ディスク装置を用いたディスクアレイ装置の例を示したが、他の記録媒体、たとえば、光ディスクを用いた場合でも同様に実現できる。
【0034】
【発明の効果】
本発明によれば、いわゆるRAID4,5におけるライトペナルティによる書き込み処理性能の低下を防ぐことができるようになり、ディスク装置への書き込みが少ない(読み込み処理が多くの割合を占める)システムであるかどうかによらず、RAID利用によるシステムの性能向上を図ることが可能となる。
【0035】
また、従来のOS(Unix等)と同じインタフェースをとることができ、アプリケーションに対して、テンポラリ領域を意識させないので、既存のアプリケーションを活用することが可能であると言う効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例に係わるディスクアレイ装置のブロック図。
【図2】本発明の一実施例に係わる磁気ディスク装置内の格納領域の説明図。
【図3】本発明の一実施例に係わるソフトウエア構成図。
【図4】本発明の一実施例に係わるテンポラリ領域管理テーブルの説明図。
【図5】本発明の一実施例に係わる書き込み動作の説明図。
【図6】本発明の一実施例に係わるバックグランド時の書き込み動作の説明図。
【図7】本発明の一実施例に係わるテンポラリ領域へのデータ書き込み処理のフロー図。
【図8】本発明の一実施例に係わるテンポラリ領域からデータ領域へのデータ書き込み処理のフロー図。
【符号の説明】
101 ディスクアレイ装置
102 制御回路
103 上位インタフェース回路
104 小型ディスクインタフェース回路
105 マイクロプロセッサ
106 プログラム用メモリ
107 データバッファ
108 冗長情報生成回路
109 不揮発性メモリ
110 テンポラリ領域管理テーブル
111 磁気ディスク装置
201 データ領域
202 テンポラリ領域
301 スケジュラー
302 ホストI/F制御部
303 上位装置コマンド実行部
304 バックグランドデータ書き込み処理
305 コマンド判定部
306 リードコマンド処理
307 ライトコマンド処理
308 制御系コマンド処理

Claims (4)

  1. 複数のディスク装置を備え、当該複数のディスク装置のうち少なくとも1つは、他のディスク装置に書き込まれた格納データを読み出すことができないときに、読み出すことができない当該データを再現するための冗長データを書き込む冗長データ領域を有するディスク装置であるように構成されたディスクアレイ装置の制御方法であって、
    少なくとも2つのディスク装置の各々において、格納すべき格納データを書き込む領域を、当該格納データを一時的に書き込むためのテンポラリ領域と、当該テンポラリ領域に書き込まれた当該格納データを最終的に書き込むための格納データ領域とに分割するステップと、
    外部から受付けた、ディスク装置に格納すべき格納データを、冗長データを作成する前に、一旦、上記複数のテンポラリ領域の各々に、同一の格納データを多重に書き込み、当該テンポラリ領域への書き込みが完了した時点で、外部へ書き込み完了を報告するテンポラリ領域書き込みステップと、
    上記書き込み完了の報告後、テンポラリ領域上の上記格納データに基づいて、冗長データを生成する生成ステップと、
    当該冗長データを上記冗長データ領域に格納し、当該格納データを、上記テンポラリ領域書き込みステップにより書き込んだテンポラリ領域を有するディスク装置とは異なるディスク装置にある格納データ領域に書き込むデータ領域書き込みステップと
    を有することを特徴とするディスクアレイ装置の制御方法。
  2. 請求項1記載のディスクアレイ装置の制御方法において、更に、
    外部から受付けた、ディスク装置に格納すべき格納データが、あらかじめ定められたデータ長よりも大きいか否か判定するステップを有するディスクアレイ装置の制御方法。
  3. 請求項1記載のディスクアレイ装置の制御方法において、
    外部から格納すべき格納データを受付けたときに、当該格納データを書き込むテンポラリ領域を、最終的に当該格納データを書き込む格納データ領域を有するディスク装置とは異なるディスク装置にあるテンポラリ領域から選択するステップを有するディスクアレイ装置の制御方法。
  4. 請求項1記載のディスクアレイ装置の制御方法において、
    外部から格納すべき格納データを受付けたときに、当該格納データを書き込むテンポラリ領域を、読み出しもしくは書き込み動作を行っていないディスク装置にあるテンポラリ領域から選択するステップを有するディスクアレイ装置の制御方法。
JP2000266365A 2000-09-04 2000-09-04 ディスクアレイ装置の制御方法 Expired - Fee Related JP3597766B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000266365A JP3597766B2 (ja) 2000-09-04 2000-09-04 ディスクアレイ装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000266365A JP3597766B2 (ja) 2000-09-04 2000-09-04 ディスクアレイ装置の制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP31061293A Division JP3597550B2 (ja) 1993-12-10 1993-12-10 ディスクアレイ装置

Publications (2)

Publication Number Publication Date
JP2001100926A JP2001100926A (ja) 2001-04-13
JP3597766B2 true JP3597766B2 (ja) 2004-12-08

Family

ID=18753462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000266365A Expired - Fee Related JP3597766B2 (ja) 2000-09-04 2000-09-04 ディスクアレイ装置の制御方法

Country Status (1)

Country Link
JP (1) JP3597766B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3898968B2 (ja) 2002-03-15 2007-03-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報記録方法および情報記録システム

Also Published As

Publication number Publication date
JP2001100926A (ja) 2001-04-13

Similar Documents

Publication Publication Date Title
US7809979B2 (en) Storage control apparatus and method
US7698604B2 (en) Storage controller and a method for recording diagnostic information
JP2501752B2 (ja) コンピユ―タ・システムのストレ―ジ装置及びデ―タのストア方法
US6523087B2 (en) Utilizing parity caching and parity logging while closing the RAID5 write hole
US8402210B2 (en) Disk array system
US7975168B2 (en) Storage system executing parallel correction write
US5457791A (en) Storage system and method of control
US20050229033A1 (en) Disk array controller and information processing apparatus
JPH05505264A (ja) データ記憶装置における書込みオペレーション識別子の不揮発性メモリ記憶
US20070061514A1 (en) Disk array with spare logic drive created from spare physical drives
US20070002482A1 (en) Storage system, storage control device, and storage control method
JP4491330B2 (ja) ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム
US20060236161A1 (en) Apparatus and method for controlling disk array with redundancy
EP0662660A1 (en) An improved data storage device and method of operation
JP2000020248A (ja) ディスクの障害回復方法、ディスクドライバおよび記録媒体
JP3597766B2 (ja) ディスクアレイ装置の制御方法
JP3597550B2 (ja) ディスクアレイ装置
JP5505329B2 (ja) ディスクアレイ装置及びその制御方法
JP2004185477A (ja) 光記憶媒体アレイ装置およびデータ転送方法
JP3573599B2 (ja) ディスクアレイにおけるデータ回復方法
JP2868003B1 (ja) 磁気ディスク装置
JP2000172570A5 (ja) 情報記録装置並びにこの装置におけるデータの入出力方法及び再構築方法
JP2001109586A (ja) ディスクアレイ装置
JP2002123372A (ja) キャッシュメモリ付きディスクアレイ装置及びそのエラー制御方法並びにその制御プログラムを記録した記録媒体
KR100205289B1 (ko) 기록데이타 손실 방지방법

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040603

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040909

LAPS Cancellation because of no payment of annual fees