JPH06508708A - ディスク記憶システム - Google Patents

ディスク記憶システム

Info

Publication number
JPH06508708A
JPH06508708A JP5519368A JP51936893A JPH06508708A JP H06508708 A JPH06508708 A JP H06508708A JP 5519368 A JP5519368 A JP 5519368A JP 51936893 A JP51936893 A JP 51936893A JP H06508708 A JPH06508708 A JP H06508708A
Authority
JP
Japan
Prior art keywords
controller
physical address
address
entry
disk
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
Application number
JP5519368A
Other languages
English (en)
Inventor
チャオ,チア・チャング
イングリッシュ,ロバート・エム
ジャコブソン,ディビッド・エム
ウィルクス,アンドリュー・ジョン
Original Assignee
ヒューレット・パッカード・カンパニー
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 ヒューレット・パッカード・カンパニー filed Critical ヒューレット・パッカード・カンパニー
Publication of JPH06508708A publication Critical patent/JPH06508708A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1252Formatting, e.g. arrangement of data block or words on the record carriers on discs for discontinuous data, e.g. digital information signals, computer programme data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1281Servo information
    • G11B2020/1282Servo information in embedded servo fields

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 デ スフ9 システム 〔発明の背景〕 本発明は広義には電子計算機に関し、より詳細には磁気媒体等の不揮発性記憶装 置にデータを記憶するシステムに関する。
回転式の磁気ディスク等の記憶媒体上におけるデータの組織化は従来ホストコン ピュータのファイルシステムによって行われてきた。オペレーティングシステム 、データベースあるいはその他のアプリケーションの一部とすることもできるか かるファイルシステムは大域システム状態についてローカルディスクコントロー ラより多くの情報を有する。かかる入城情報を用いることができることによって 、理論的な利点があり、そのため一般にホストプロセッサはローカルディスクコ ントローラよりディスク上のデータの組織化をより良好に行いうるちのと考えら れてきた。
実際に、ディスクの性能特性、ディスクの形状等に関する詳細な知識はディスク コントローラレベルで容易に利用可能であるが、従来ホストプロセッサには利用 されていなかった。この種の詳細な知識を利用することのできるシステムはディ スクの性能を大きく向上させる可能性がある。かかるシステムが単一スピンドル ディスクドライブシステム用のものとして提案されている。このシステムはホス トプロセッサではなくディスクコントローラを用いてディスク上のデータの組織 化を行うが、ディスクに関する詳細な知識を使用する能力があり、性能が大きく 改善されている。
このシステムでは、ディスク上の少数のセグメント(通常約5%以下)が空セグ メントとして留保される。かかる空セグメントはディスクの表面上に分散されて いる。あるデータブロックをディスクに書き込むとき、ローカルディスクコント ローラが現在のヘッド位置に最も近い空セグメントを選択してそこにデータを書 き込む。その結果、非常に高速なデータ書き込みを行うことができる。これはデ ィスクが1回転の何分の1か回転しただけで空セグメントが現われるためである 。
書き込みは性能を犠牲にすることなく受信される順序で行うことができる。また 、更新は古いデータの上から行われることはない。
各データブロックがディスク上のどこに書かれているかを追跡するための“イン ディレクションテーブル2がメモリに維持される。“空マツプ”は空セグメント を効率的に探すのに用いられる。たとえば停電等によるメモリの損失の際にイン ディレクションテーブルの復元を可能にするために、ディスク上のセグメントに は逆索引が書かれている。かかる逆索引によってメモリ中のインディレクション テーブルが失われたときこれを再構築することができるが、これには時間がかか る。なぜなら、すべての情報を復元するためにはディスク全体を読まなければな らないためである。このシステムはディスク記憶システムの性能を大幅に向上さ せる。
上述のシステムによって性能が向上するにもかかわらず、複数のスピンドルを有 するディスクシステムの性能をさらに向上させ、インディレクションテーブル等 のシステム情報が揮発性メモリから失われた場合の復元に要する時間を低減する 方法が必要とされている。
〔発明の概要〕
本発明は多スピンドルディスクドライブシステムにおいてデータの書き込みに要 する時間が大幅に低減され、他のディスクドライブシステムに比べて復元速度が 大幅に上がる電子的データ記憶システムを提供する。本発明は所定の“ロールハ ックグループ”の外では見えない暫定的な記憶動作を容易にする。
つまり、ホストコンピュータが論理アドレスとその論理アドレスに記憶されるデ ータブロックを有するディスク記憶システムを提供する。
ディスクコントローラがどのセグメントを最も速くアクセスできるかといったア ルゴリズムにしたがってディスク装置とそのデータのためのセグメントを選択し 、そこにそのデータを書き込む。コントローラは(RAM等の)メモリに論理ア ドレスと物理アドレスを関係付ける索引を保持する。
好適には、この索引は一部は大域索引として、また一部は1つあるいはそれ以上 の動的に作成されたロールバックグループ索引として保持される。ディスクシス テムコントローラはこれらの索引をどのセグメントがデータの記憶に利用可能で あるかを示す空リストとどの記憶セグメントが陳腐化したデータを有するかを示 す陳腐化リストとともに保持する。かかる索引やリストは揮発性メモリに保持さ れるが、メモリの故障があった場合簡単に復元することができる。かかるリスト および索引の復元はディスク全部を読むことなく行うことができる。
ディスク上の少数のセグメントだけが“チェックポイントセグメントとして留保 される。かかるセグメントはディスク全体を読むことなく索引を再構築するのに 必要な情報を有する。
本発明の他の特徴および利点は本発明の原理を例示する添付図面を参照しながら 以下の詳細な説明を読むことにより明らかとなるであろう。
〔図面の簡単な説明〕 図1は本発明のディスク記憶システムの実施例のブロック図である。
図2は図1の1ブロツクとして示される種類のディスク装置のブロック図である 。
図3は図2に示すディスク装置の一部の拡大図である。
〔好ましい実施例の説明〕
図1に示すように、本発明の電子データ記憶システム13の一実施例は中央コン トローラI5、メモ1月7および複数の記憶装置21および23を有する。コン トローラ15は通信チャンネル19を介してメモリ17と、また通信チャンネル 25を介して記憶装置21.23と通信する。コントローラ15は通信チャンネ ル27を介してホストプロセッサ11からのコマンドを受け取り、データがコン トローラ15とホストプロセッサ11の間で通信チャンネル29を介して交換さ れる。
記憶装置121を図2により詳細に示す。装置コントローラ31は通信チャンネ ル25を介して中央コントローラ15と通信する。装置メモリ33は通信チャン ネル35を介してコントローラ31と通信する。コントローラ3】は制御チャン ネル39とデータチャンネル41を介してディスクサーボ制御回路37と通信す る。サーボ制御回路37は、複数の磁気ディスク1゜4と、アクチュエータアー ム106に取り付けられてさまざまなディスク104上の記憶領域123の上に 随時位置決めされる複数の読み出し/書き込みヘッドの電気機械的動作を制御す る。1つのディスク104の領域47の拡大図を図3に示す。同図にはディスク 104上の複数の他の近接する記憶領域105も示されている。
複数の制御信号および情報が中央コントローラ15によって管理され、中央メモ 1月7に記憶される。入城索引にはエントリが備えられ、各エントリはディスク に記憶されるデータブロックに関する論理アドレスおよび対応する物理アドレス (装置およびセグメント識別子)を与える。
データブロックの中にはロールハックグループに割り当てられるものがある。そ れぞれの指定されたロールパックグループにはグループ索引が動的に作成される 。各索引にはエントリが備えられ、各エントリは、ディスクに記憶され、その索 引に対応する特定のロールパックグループに割り当てられたデータブロックに関 する論理アドレスおよび対応する物理アドレスを与える。1つのグループに属す るデータブロックがそのブロックの属するグループに対応する索引中のエントリ だけでなく、大域索引中のエントリあるいは1つあるいはそれ以上の他のグルー プ索引中のエントリによって参照されることがある。あるグループ索引中の各エ ントリはその状態が“書き込み”、“非書き込み”あるいは“削除′のいずれで あるかを指定する状態標識を有する。
“参照リストがコントローラによってメモリ中に保持される。この参照リストは 任意の索引に現われる各物理アドレスの参照カウント値を示す。ある物理アドレ スの参照カウント値はその物理アドレスがすべての索引中にリストされる回数を 示す。
“陳腐化リスト”もまたコントローラによって保持される。このリストは、陳腐 化したデータを有するが新しいデータのエントリのために解放されていないセグ メントの物理アドレスを含む。
“動作ログがメモリに保持され、最後の同期コマンドとチェックポイント動作に 続いて発せられたグループ作成コマンド、複写コマンド、削除コマンド、コミッ トコマンド、中止コマンドおよびバリヤコマンドの記録を含む。“チェックポイ ントログには最後の同期コマンドとチェックポイント動作に続くすべての索引へ のすべてのエントリと削除がリストされている。
メモリの入城索引とグループ索引を含む部分はに個の“チェックポイントセクシ ョン”に分割されている。kは整数である。さまざまなディスク記憶装置21. 23の中で合計でに+1個の“チェックポイントセグメント”が留保されている 。これらはすべて装置21等の1つの記憶装置にあってもよく、あるいはまた従 来のように複数の装置に分散していてもよい。これらのメモリ中のチェックポイ ントセクション、ディスク上のチェックポイントセグメントおよび動作ログはこ こに説明するようにメモリ損失がある場合には復元に用いられる。
各記憶装置の装置メモリはその装置中の利用可能な記憶セグメントのリストを示 す空マツプを含む。
別個の要素として説明および図示されるこれらの物理的要素およびメモリ要素は 実際の物理的実施例においては結合することができる。
たとえば、すべてのメモリをRAMメモリの単一のバンク中に実施することがで きる。かかる空マツプはすべての記憶装置のすべての空セグメントをリストする 1つの空マツプに統合することができる。各種のコントローラ機能のいくつかあ るいはそのすべてを1つのマイクロプロセッサあるいは他の制御装置で実行する ことができる。あるいはコントローラ機能は図示するように中央コントローラと 複数のディスク装置コントローラに分散することができる。
ホストプロセッサ11からさまざまなコマンドが発せられる。ホストプロセッサ は汎用コンピュータ、ネットワークサーバ、あるいはデータ記憶システムを必要 とするその他の装置とすることができる。
本発明で考察する記憶装置はここに説明・図示したような磁気ディスク記憶装置 である。しかし、本発明の原理は光学的媒体、バブルメモリ等の他の種類の記憶 装置にも同様にあてはまる。
ホス ブロモ・ か゛ せ゛ コマン゛記憶システムはホストプロセッサから各 種のコマンドを受け取り、次に説明するようにかかるコマンドに応えて各種の動 作を行う。
“ ′ ”コマン゛ このコマンドは論理アドレス、単独で書き込まれるべき1つのデータブロックあ るいは多ブロック書き込みとして書き込まれるべき複数のブロックを含み、また グループ識別子を含む場合がある。
このコマンドに応じて、中央ディスクコントローラ15が書き込まれるべき各ブ ロックに対する一連のタスクを実行する。まず、コントローラはどの装置が最も 多(の空スペースを有するかといった基準にしたがってディスク装置21やディ スク装置23等の記憶装置を選択する。
通常は、書き込みをすべての記憶装置に均等に分散するアルゴリズムがより適切 な基準と考えられる。
次に、コントローラは選択された記憶装置の空リストからあるセグメントを選択 する。この選択を行う方法の1つとして、最小限の時間で到達することのできる セグメントを選択するという方法がある。ディスクドライブ装置の場合、この時 間には探索時間(アクチュエータアーム106に取り付けられた磁気記録ヘッド をその位置に移動させるのに要する時間)、回転遅延時間(所望のセグメント1 23がその位置まで回転するのに要する時間)、および実際にデータ転送に要す る時間が含まれる。ヘッドの位置とディスクの角位置をモニターすることによっ て、利用可能なセグメントの中から最も短い時間でアクセスすることのできるセ グメントを選択することができる。この選択過程はヘッドとディスクが連続運動 あるいはほとんど連続的な運動をしているため動的であり、中央ディスクコント ローラ15によって行うか、あるいは必要に応じてディスク装置コントローラ3 1に行わせることができる。
次に、コントローラはこのブロックにタグを付ける。このタグは論理アドレスと 連続番号中の次の連番を含む。このタグはまたそのブロックが多ブロック書き込 みの始めのブロックあるいは中間のブロックでなければ終了フラグを含む。この ブロックがロールパックグループに属する場合、グループ識別子もまたこのタグ に含まれる。
次に、このコントローラは選択された物理アドレス(セグメントおよび記憶装置 )ブロックとそのタグを記録し、このセグメントを空マツプから削除し、論理ア ドレスと物理アドレスを書き込み状態標識とともにグループ索引に入れ、グルー プ識別子がない場合、入城索引に入れ、その物理アドレスの参照カウント値をイ ンクリメントする。
同じ論理アドレスが前のエントリ中の前の物理アドレスとともに現われる場合、 コントローラは前のエントリを削除し、この前の物理アドレスの参照カウント値 をデクリメントする。さらに、この前のエントリが入城索引にあった場合、コン トローラはこの前のエントリをそのアドレスを“非書き込み”エントリとして含 んでいない任意のグループ索引に入れ、前のエントリが入れられるそれぞれの索 引について、この前の物理アドレスの参照カウント値を一度インクリメントする 。
カウント値がゼロまでデクリメントする場合、これはその物理アドレスがどの索 引にもなく、陳腐化リストに移動されていることを示す。
最後に、コントローラはチェックポイントログにすべての挿入と削除を入力する 。
“ロールバ・・ ルーブコマン′ “ロールパックグループ作成″は次のロールパックグループのグループ識別子を 含む。このコマンドに応じて、中央ディスクコントローラ15は次のロールパッ クグループのグループ索引を作成し、次の連続番号を割り当て、このコマンドを 動作ログに入れる。
″′コマン′ “読み出し”コマンドは論理アドレスと場合によってはグループ識別子を含む。
ごのコマンドに応じて、中央コントローラ15はグループ索引を探索して読み出 すべきデータブロックの物理アドレスを発見する。発見されない場合、あるいは グループ識別子がない場合、コントローラは大域索引を探索して物理アドレスを 発見する。この物理アドレスはディスクからこのデータブロックを検索するのに 用いられ、このデータブロックはホストプロセッサに送られる。
こ血除ニュヱノ上 “削除″コマンドは論理アドレスと場合によってはグループ識別子を含む。この コマンドに応じて、中央コントローラ15は次の動作を行う。
グループ識別子があり、ブロックがグループ索引にリストされている場合、コン トローラはこのエントリを削除エントリに変更し、物理アドレスの参照カウント 値をデクリメントする。グループ識別子があり、ブロックがグループ索引にリス トされていない場合、コントローラはこのブロックの論理アドレスをグループ索 引に削除エントリとして入れる。
グループ識別子がない場合、コントローラはこのエントリを大域索引から削除し 、この物理アドレスの参照カウント値をデクリメントする。さらに、同じ論理ア ドレスが大域索引の前のエントリの前の物理アドレスとともに現われる場合、コ ントローラはこの前のエントリを削除し、この前の物理アドレスの参照カウント 値をデクリメントし、この前のエントリをそのアドレスを“非書き込み”エント リとして含まない他のすべてのグループ索引に入れ、前のエントリが入れられる それぞれの索引について、この前の物理アドレスの参照カウント値を一度インク リメントする。ある物理アドレスの参照カウント値がゼロになると、そのアドレ スは陳腐化リストに入れられる。
次に、コントローラは次の連続番号を割り当て、このコマンドを動作ログに入れ 、すべての挿入と削除をチェックポイントログに入れる。
“バぜヤ”コマン゛ “バリヤ”コマンドはホストが各種のデータ項目のある状態をそれが復帰するこ とのできる有効な状態として保存したい場合に随時発せられる。これはその効果 を1つのグループに制限すべき場合には1つのロールパックグループを同定する ことができる。このコマンドに応じて、コントローラは次の連続番号を割り当て 、このコマンドを動作ログに入れる。
″′コマンド “中止”コマンドは中止すべきロールパックグループを同定する。
これに応じて、コントローラはグループ索引中のそれぞれの書き込みエントリと それぞれの非書き込みエントリの物理アドレスの参照カウント値をデクリメント し、このグループ索引を削除し、次の連続番号を割り当て、このコマンドを動作 ログに入れ、それぞれの削除をチェックポイントログに入れる。
“コミ・・ ”コマンド “コミット”コマンドはコミットすべきロールパックグループを同定する。この コマンドに応じて、コントローラは以下の動作を行う。
そのエントリが“書き込み”エントリである場合、コントローラはこのエントリ をグループ索引から大域索引に移し、同じ論理アドレスが大域索引中の前のエン トリの前の物理アドレスとともに現われる場合、この前のエントリを削除し、こ の前の物理アドレスの参照カウント値をデクリメントし、この前のエントリをそ のアドレスを“非書き込み”エントリとして含まない他のすべてのグループ索引 に入れ、前のエントリが入れられるそれぞれの索引について、この前の物理アド レスの参照カウント値を一度インクリメントする。
このエントリが非書き込みエントリである場合、コントローラはこの物理アドレ スの参照カウント値を゛デクリメントする。
そのエントリが削除エントリである場合、コントローラは大域索引から同じ論理 アドレスを有するエントリを削除し、削除されたエントリの物理アドレスの参照 カウント値をデクリメントし、この前のエントリをそのアドレスを“非書き込み ゛エントリとして含まない他のすべてのグループ索引に入れ、前のエントリが入 れられるそれぞれの索引について、この前の物理アドレスの参照カウント値を一 度インクリメントする。
次に、コントローラはグループ索引を削除し、次の連続番号を割り当て、このコ マンドを動作ログに入れ、すべての挿入と削除をチェックポイントログに入れる 。
他のコマンドと同様に、ある物理アドレスの参照カウント値がゼロになると、そ のアドレスは陳腐化リストに入れられる。
“コマン゛ このコマンドは複写すべきブロックの論理アドレスとそのブロックを複写すべき 新しい論理アドレスを含む。これらのアドレスの1つあるいは両方に対してグル ープ識別子を設けることもできる。
このコマンドに応じて、コントローラは複写すべきブロックの物理アドレスを検 索する。次に、この新しい論理アドレスを同定されたグループ索引中の書き込み エントリとして入力する。なければ、大域索引に複写されるブロックの物理アド レスとともに入力してその物理アドレスの参照カウント値をインクリメントする 。
同じ論理アドレスが前のエントリ中の前の物理アドレスとともに現われる場合、 コントローラはこの前のエントリを削除してその参照カウント値をデクリメント し、この前のエントリが大域索引にある場合、この前のエントリをそのアドレス を“非書き込み゛エントリとして含まない他のすべてのグループ索引に入れ、前 のエントリが入れられるそれぞれの索引について、この前の物理アドレスの参照 カウント値を一度インクリメントする。
次に、コントローラはグループ索引を削除し、次の連続番号を割り当て、このコ マンドを動作ログに入れ、すべての挿入と削除をチェックポイントログに入れる 。
“0 ”コマン゛ このコマンドはホストプロセッサが前にコントローラに送られたコマンドの完了 を確実にしたい場合に随時発せられる。このコマンドは、その範囲を同定された グループに限定するグループ識別子を含んでいてもよい。このコマンドに応じて 、グループ識別子がある場合にはコントローラは最後にこのグループに送られた バリヤの前に発せられた未処理の書き込みコマンドを終了する。未処理の大域書 き込みコマンドが“コミット”コマンドの前に発せられたものも含めて終了され る。
動作ログと次の連続番号が、利用可能なセグメントに書き込まれ、このログが書 き込まれた物理アドレスが陳腐化リストに追加される。
動作ログは最後のチェックポイント動作に続く任意の動作の記録の復元のために のみ必要である。したがって、その物理アドレスは直ちに陳腐化リストに入れる ことができる。
六リス とチェツ ボイン ある種の動作はホストプロセッサからのコマンドを用いずに中央コントローラに よって実行される。次にかかる動作について説明する。
“ 工・・ ・・ ン ゛ チェックポイントログとメモリの順次のチェックポイントセクションの像が、次 の連続番号とともにディスクの順次のチェックポイントセクションに書き込まれ る。次に、陳腐化リスト中の任意の物理アドレスが空マツプに転送される。
二蔓照左交2上蓋− ある物理アドレスの参照カウント値がゼロになると、その物理アドレスは陳腐化 リストに入れられる。これについては特定のコマンドとともに上に説明した。一 般に、陳腐化リストへの物理アドレスの入力は、カウント値がゼロになるコマン ドの最後においてのみ発生する。
これによってカウント値がゼロになり、lコマンドの間にふたたび正の値にイン クリメントされるときに陳腐化リストへの入力が防止される。
どlは自り外1 動作ログが所定のエントリ数に達したとき、あるいは同期コマンドあるいはチェ ックポイントコマンドが発生したとき、コントローラは動作ログを次の連続番号 とともに利用可能なセグメントに書き込み、そのログが書き込まれた物理アドレ スを陳腐化リストに追加し、メモリ中の動作ログをクリアする。
こ復兄二 停電その他のメモリを消したり、進行中の書き込みを中断させるような事象が発 生した場合、コントローラはに+1のチェックポイントセグメントを読み、最も 新しく有効であるkのチェックポイントセグメントを得る。これらのセグメント から復元された情報を最も古いものから順に用いて最後のチェックポイント動作 までの大域索引とグループ索引が再構築される。
次に、コントローラは再構築された索引にリストされていないすべてのセグメン トを読み、空マツプ中の最後のチェックポイントセグメントより古い連続番号を 有するすべてのセグメントをリストする。次に、残りのセグメントを連続番号の 小さい順に配列し、最も古いものから終了フラグを有する最後のものまでのすべ てのデータブロックと動作ログを連続番号の空白が出るまで復元し、これらを用 いて索引の再構築を完了する。最後に、連続番号が最も大きい番号をセグメント のものより大きい数までインクリメントされる。
索引およびリスト中の情報、またディスク上の情報を記憶し符号化するにはさま ざまな方法があることは明らかである。たとえば、あるグループ索引中のあるエ ントリの“削除”状態はフラグによって、あるいは物理アドレスの不在または特 殊な不在物理アドレスコードによって示すことができる。同様に、あるブロック の終了はフラグあるいは他の形態の符号化で示すことができる。状況によっては 、連続番号があれば、ブロックの終了を表示してそのブロックが故障なく完全に 書き込まれたことを確認するのに十分である。
以上、本発明の詳細な説明および図示したが、本発明はここに説明および図示し た具体的構成や部品の配列には限定されず、本発明の範囲と精神から逸脱するこ となくさまざまな改造や変更を加えることができる。したがって、本発明は特許 請求の範囲内でここに説明および図示したちの以外の態様で実施することができ る。
国際調審輻牛 国際調査報告 フロントページの続き (72)発明者 ジャコブソン、ディピッド・エムアメリカ合衆国カリフォルニ ア州すンタクララ ドナー・ブレイス 2368 (72)発明者 ウィルクス、アンドリュー・ジョンアメリカ合衆国カリフォル ニア州パロアルト パーク・ブールバード 3788

Claims (1)

    【特許請求の範囲】
  1. 1.メモリ(17)、物理アドレスによって同定される、データのブロックを記 憶するための複数のセグメント(123、105)を有する複数の記憶装置(2 1、23)、およびメモリ(17)および記憶装置(21、23)と通信するコ ントローラ(15)を備えて成る電子データ記憶システム(13)であって、前 記コントローラは、前記メモリ中にそれぞれが論理アドレスおよび対応する物理 アドレスを有するエントリを含む索引、陳腐化したデータを含むセグメントの物 理アドレスを含む陳腐化リスト、および記憶すべきデータを受けるのに利用可能 なセグメントの物理アドレスを含む空リストを保持し、あらかじめ選択された論 理アドレスおよび記憶すべき関連するデータブロックを提供する書き込みコマン ドに応じて、(a)所定の基準にしたがって前記空リストから物理アドレスを選 択し、(b)1組の連続番号から次の連続番号を得、(c)前記ブロックに前記 連続番号、前記あらかじめ選択された論理アドレス、および終了フラグを含むタ グを付け、(d)前記ブロックとタグを前記選択された物理アドレスのセグメン トに記憶し、(e)前記選択された物理アドレスを前記空リストから削除し、( f)前記あらかじめ選択された論理アドレスおよび前記選択された物理アドレス を前記索引に入れ、(g)前記あらかじめ選択された論理アドレスと同じ論理ア ドレスを含む任意の先の索引エントリを削除し、(h)かかる削除されたエント リからの前記物理アドレスを前記陳腐化リストにリストする電子データ記憶シス テム。
JP5519368A 1992-04-24 1993-04-22 ディスク記憶システム Pending JPH06508708A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/873,928 US5481694A (en) 1991-09-26 1992-04-24 High performance multiple-unit electronic data storage system with checkpoint logs for rapid failure recovery
US07/873,928 1992-04-24
PCT/US1993/003779 WO1993022719A1 (en) 1992-04-24 1993-04-22 Disk storage system

Publications (1)

Publication Number Publication Date
JPH06508708A true JPH06508708A (ja) 1994-09-29

Family

ID=25362624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5519368A Pending JPH06508708A (ja) 1992-04-24 1993-04-22 ディスク記憶システム

Country Status (4)

Country Link
US (1) US5481694A (ja)
EP (1) EP0591520A1 (ja)
JP (1) JPH06508708A (ja)
WO (1) WO1993022719A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09198195A (ja) * 1996-01-19 1997-07-31 Nec Corp データ再配置可能なディスク装置
JP2007529833A (ja) * 2004-07-15 2007-10-25 株式会社ソニー・コンピュータエンタテインメント アウト・オブ・オーダーのdmaコマンドキューにおけるコマンド順序の設定に関する技術

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5680574A (en) * 1990-02-26 1997-10-21 Hitachi, Ltd. Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units
US6728832B2 (en) 1990-02-26 2004-04-27 Hitachi, Ltd. Distribution of I/O requests across multiple disk units
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
GB2272549B (en) * 1992-11-03 1997-01-29 Tolsys Ltd Memory checkpointing
JPH06332623A (ja) * 1993-05-24 1994-12-02 Mitsubishi Electric Corp アレイ型記録装置及び記録装置
US5590318A (en) * 1993-11-18 1996-12-31 Microsoft Corporation Method and system for tracking files pending processing
JP3564732B2 (ja) * 1994-06-30 2004-09-15 ソニー株式会社 ディスク制御方法および装置
US5666551A (en) * 1994-06-30 1997-09-09 Digital Equipment Corporation Distributed data bus sequencing for a system bus with separate address and data bus protocols
US5708793A (en) * 1995-03-31 1998-01-13 International Business Machines Corporation Method and apparatus using address and read head location information to provide optimal operation of a disk system
JP3085899B2 (ja) * 1995-06-19 2000-09-11 株式会社東芝 マルチプロセッサシステム
US5630047A (en) * 1995-09-12 1997-05-13 Lucent Technologies Inc. Method for software error recovery using consistent global checkpoints
WO1997018661A1 (en) * 1995-11-13 1997-05-22 Answersoft, Inc. Intelligent information routing system and method
SE510050C2 (sv) * 1997-07-21 1999-04-12 Ericsson Telefon Ab L M Metod för insamlande av logginformation vid förändring av databas
US6055604A (en) * 1997-08-26 2000-04-25 Hewlett-Packard Company Forced transaction log posting using a least busy storage media without maintaining redundancy of the transaction log
US6170063B1 (en) * 1998-03-07 2001-01-02 Hewlett-Packard Company Method for performing atomic, concurrent read and write operations on multiple storage devices
CA2244626A1 (en) * 1998-07-31 2000-01-31 Kom Inc. A hardware and software system
US6378038B1 (en) 1999-03-31 2002-04-23 International Business Machines Corporation Method and system for caching data using raid level selection
US6529995B1 (en) * 1999-06-18 2003-03-04 Storage Technology Corporation Method and apparatus for maintaining and restoring mapping table entries and data in a raid system
MXPA02004748A (es) 1999-11-10 2004-01-19 Thomson Licensing Sa Un metodo para la recuperacion de desastre para un medio de disco de re-escritrua.
US6668304B1 (en) 2000-01-18 2003-12-23 International Business Machines Corporation Transaction support on logical disks
US6636941B1 (en) 2000-01-18 2003-10-21 International Business Machines Corporation Enhanced stable disk storage
TW526415B (en) 2000-02-15 2003-04-01 Ibm System and method for persistent and robust storage allocation
US6643754B1 (en) 2000-02-15 2003-11-04 International Business Machines Corporation System and method for dynamically allocating computer memory
US6601137B1 (en) * 2000-04-19 2003-07-29 Western Digital Technologies, Inc. Range-based cache control system and method
SG99941A1 (en) * 2000-08-30 2003-11-27 Ibm Transaction support on logical disks
US6594744B1 (en) * 2000-12-11 2003-07-15 Lsi Logic Corporation Managing a snapshot volume or one or more checkpoint volumes with multiple point-in-time images in a single repository
US6751715B2 (en) * 2001-12-13 2004-06-15 Lsi Logic Corporation System and method for disabling and recreating a snapshot volume
US7085784B2 (en) * 2002-01-10 2006-08-01 International Business Machines Corporation System and method for eliminating duplicate copies of activity history logs in bridging two or more backend database systems
US7103729B2 (en) * 2002-12-26 2006-09-05 Intel Corporation Method and apparatus of memory management
US7231544B2 (en) * 2003-02-27 2007-06-12 Hewlett-Packard Development Company, L.P. Restoring data from point-in-time representations of the data
US7805632B1 (en) * 2007-09-24 2010-09-28 Net App, Inc. Storage system and method for rapidly recovering from a system failure
US7752175B2 (en) * 2007-10-29 2010-07-06 Objectivity, Inc. Method, system and computer-readable media for repairing corruption of data record references
US7958393B2 (en) * 2007-12-28 2011-06-07 International Business Machines Corporation Conditional actions based on runtime conditions of a computer system environment
US8346931B2 (en) * 2007-12-28 2013-01-01 International Business Machines Corporation Conditional computer runtime control of an information technology environment based on pairing constructs
US8428983B2 (en) * 2007-12-28 2013-04-23 International Business Machines Corporation Facilitating availability of information technology resources based on pattern system environments
US20090171708A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Using templates in a computing environment
US8677174B2 (en) * 2007-12-28 2014-03-18 International Business Machines Corporation Management of runtime events in a computer environment using a containment region
US20090171731A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Use of graphs in managing computing environments
US8447859B2 (en) * 2007-12-28 2013-05-21 International Business Machines Corporation Adaptive business resiliency computer system for information technology environments
US20090171730A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Non-disruptively changing scope of computer business applications based on detected changes in topology
US8375244B2 (en) * 2007-12-28 2013-02-12 International Business Machines Corporation Managing processing of a computing environment during failures of the environment
US8682705B2 (en) * 2007-12-28 2014-03-25 International Business Machines Corporation Information technology management based on computer dynamically adjusted discrete phases of event correlation
US8365185B2 (en) * 2007-12-28 2013-01-29 International Business Machines Corporation Preventing execution of processes responsive to changes in the environment
US8326910B2 (en) * 2007-12-28 2012-12-04 International Business Machines Corporation Programmatic validation in an information technology environment
US20090171703A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Use of multi-level state assessment in computer business environments
US8826077B2 (en) * 2007-12-28 2014-09-02 International Business Machines Corporation Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations
US8868441B2 (en) * 2007-12-28 2014-10-21 International Business Machines Corporation Non-disruptively changing a computing environment
US8990810B2 (en) * 2007-12-28 2015-03-24 International Business Machines Corporation Projecting an effect, using a pairing construct, of execution of a proposed action on a computing environment
US8763006B2 (en) 2007-12-28 2014-06-24 International Business Machines Corporation Dynamic generation of processes in computing environments
US8341014B2 (en) * 2007-12-28 2012-12-25 International Business Machines Corporation Recovery segments for computer business applications
US8782662B2 (en) * 2007-12-28 2014-07-15 International Business Machines Corporation Adaptive computer sequencing of actions
US9558459B2 (en) * 2007-12-28 2017-01-31 International Business Machines Corporation Dynamic selection of actions in an information technology environment
US20090172149A1 (en) * 2007-12-28 2009-07-02 International Business Machines Corporation Real-time information technology environments
US8751283B2 (en) * 2007-12-28 2014-06-10 International Business Machines Corporation Defining and using templates in configuring information technology environments
US20100274772A1 (en) * 2009-04-23 2010-10-28 Allen Samuels Compressed data objects referenced via address references and compression references
DE102009031923A1 (de) * 2009-07-07 2011-01-13 Sones Gmbh Verfahren zum Verwalten von Datenobjekten
JP5463780B2 (ja) * 2009-07-31 2014-04-09 ブラザー工業株式会社 情報処理装置
US11449394B2 (en) * 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
WO2013128789A1 (ja) * 2012-03-02 2013-09-06 日本電気株式会社 キャパシティ管理支援装置、キャパシティ管理方法およびプログラム
US9015429B2 (en) * 2013-04-18 2015-04-21 Xerox Corporation Method and apparatus for an efficient hardware implementation of dictionary based lossless compression
US10198321B1 (en) * 2014-04-01 2019-02-05 Storone Ltd. System and method for continuous data protection
US9563518B2 (en) 2014-04-02 2017-02-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
CA2969210C (en) * 2014-12-01 2024-02-20 Informatica Llc Method, apparatus, and comuter-readable medium for processing a message by a message broker system
US9880755B2 (en) * 2015-02-25 2018-01-30 Western Digital Technologies, Inc. System and method for copy on write on an SSD
KR20170051563A (ko) * 2015-10-29 2017-05-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10180886B2 (en) 2015-11-16 2019-01-15 Red Hat, Inc. Recreating a computing environment using tags and snapshots
US10031689B2 (en) * 2016-09-15 2018-07-24 Western Digital Technologies, Inc. Stream management for storage devices
US10417102B2 (en) 2016-09-30 2019-09-17 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including virtual machine distribution logic
US20190102262A1 (en) * 2017-09-29 2019-04-04 Intel Corporation Automated continuous checkpointing
US11003555B2 (en) * 2017-12-16 2021-05-11 Vmware, Inc. Tracking and recovering a disk allocation state
US10754785B2 (en) 2018-06-28 2020-08-25 Intel Corporation Checkpointing for DRAM-less SSD
US10977137B2 (en) * 2018-07-23 2021-04-13 EMC IP Holding Company LLC Intelligent log gap detection to ensure necessary backup promotion
US10776339B2 (en) 2018-07-23 2020-09-15 EMC IP Holding Company LLC Intelligent log gap detection to prevent unnecessary backup promotion
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
CN111752913B (zh) * 2019-03-28 2024-03-01 阿里云计算有限公司 分布式系统的数据恢复方法、介质、计算机设备、装置
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
CN111697689B (zh) * 2020-05-13 2021-09-24 北京四方继保工程技术有限公司 一种供电设备隐性故障监测方法和系统
US11645175B2 (en) 2021-02-12 2023-05-09 Commvault Systems, Inc. Automatic failover of a storage manager

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367652A (en) * 1990-02-02 1994-11-22 Golden Jeffrey A Disc drive translation and defect management apparatus and method
US5124987A (en) * 1990-04-16 1992-06-23 Storage Technology Corporation Logical track write scheduling system for a parallel disk drive array data storage subsystem
US5193184A (en) * 1990-06-18 1993-03-09 Storage Technology Corporation Deleted data file space release system for a dynamically mapped virtual data storage subsystem

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09198195A (ja) * 1996-01-19 1997-07-31 Nec Corp データ再配置可能なディスク装置
JP2007529833A (ja) * 2004-07-15 2007-10-25 株式会社ソニー・コンピュータエンタテインメント アウト・オブ・オーダーのdmaコマンドキューにおけるコマンド順序の設定に関する技術

Also Published As

Publication number Publication date
US5481694A (en) 1996-01-02
WO1993022719A1 (en) 1993-11-11
EP0591520A1 (en) 1994-04-13

Similar Documents

Publication Publication Date Title
JPH06508708A (ja) ディスク記憶システム
US5535381A (en) Apparatus and method for copying and restoring disk files
US6311193B1 (en) Computer system
US5499367A (en) System for database integrity with multiple logs assigned to client subsets
US5764880A (en) Method and system for rebuilding log-structured arrays
US5269019A (en) Non-volatile memory storage and bilevel index structure for fast retrieval of modified records of a disk track
US5794242A (en) Temporally and spatially organized database
Gait The optical file cabinet: a random-access file system for write-once optical disks
US8271504B2 (en) Systems for performing an external (disk-based) sort of a large data file which take advantage of “presorted” data already present in the input
EP0871120A2 (en) Method of storing data in a redundant group of disks and redundant array of disks
JPS60250449A (ja) デ−タ記録方法
BG63096B1 (bg) Метод и компютърна система за достъп до информация
US6636941B1 (en) Enhanced stable disk storage
JP2691087B2 (ja) データ・ファイルについてのディレクトリ・システム、装置および方法
US6629203B1 (en) Alternating shadow directories in pairs of storage spaces for data storage
US6678787B2 (en) DASD-free non-volatile updates
JPH039494B2 (ja)
US6360296B1 (en) Disk control apparatus
JP2005165485A (ja) ファイル管理装置、ストレージ管理システム、システム管理方法、プログラム及び記録媒体
KR970004255B1 (ko) 병렬 디스크 상에서의 고속 데이타 갱신 방법
JPH04246746A (ja) 記憶装置システム
WO1993021579A1 (en) Method for managing data records in a cached data subsystem with non-volatile memory
JPH03166634A (ja) 情報記録再生方式
JP2784650B2 (ja) 光ディスクの記憶管理方法
JPH073661B2 (ja) 情報処理システム及びその制御方法