(57)【要約】【課題】記憶の広域配置能力を持つ分散記憶システムにおいて、ネットワークのインテリジェント記憶要素（ＩＳＥ）が行ったデータの移動や変更をホストに提示する装置および方法を提供する。【解決手段】アクセス・コマンドを遠隔装置と記憶空間との間で渡すための、ネットワークにより遠隔装置に接続可能な仮想エンジンを備える装置および方法を提供する。データ記憶システムは、アクセス・コマンドを渡すために仮想エンジンがユニークにアドレス指定できる複数のＩＳＥを有する。アクセス・コマンドが同時に仮想エンジンと第１のＩＳＥとの間で渡されていることとは独立に、データを第１のＩＳＥから第２のＩＳＥに移す。【選択図】図１３
2010157257.tif 000002
【特許請求の範囲】
【請求項１】
データ記憶システムであって、
アクセス・コマンドを遠隔装置と記憶空間との間で渡すための、ネットワークを介して前記遠隔装置に接続可能な仮想エンジンと、
複数のインテリジェント記憶要素（ＩＳＥ）であって、各々の該ＩＳＥが、協調して前記記憶空間を定義するデータ記憶装置を有し、各々の前記ＩＳＥが、第１の論理的な記憶位置から異なる第２の論理的な記憶位置へとデータを選択的に移動させるように構成され、選択的な前記移動は、前記遠隔装置や任意のネットワーク装置に基づくものではなく、全て各々の前記ＩＳＥに存在するコントローラによって実行される処理命令に基づくものであり、各々の前記ＩＳＥ内の記憶装置の検出された故障に応答して、予備の記憶容量が存在するか否かを決定し、該決定の結果に基づいて、記憶されたデータを前記第１の論理的な記憶位置から前記第２の論理的な記憶位置へ移動する、前記ＩＳＥと、
を含む、前記データ記憶システム。
【請求項２】
前記第１の論理的な記憶位置は、第１のＩＳＥへマップされ、前記第２の論理的な記憶位置は、前記第１のＩＳＥの内部にマップされる、請求項１記載のデータ記憶システム。
【請求項３】
前記第１の論理的な記憶位置は、第１のＩＳＥへマップされ、前記第２の論理的な記憶位置は、前記第１のＩＳＥの外部にマップされる、請求項１記載のデータデータ記憶システム。
【請求項４】
前記第１の論理的な記憶位置は、第１のＩＳＥへマップされ、前記第２の論理的な記憶位置は、異なる第２のＩＳＥへマップされる、請求項１記載のデータ記憶システム。
【請求項５】
記憶空間に対するアクセス・コマンドを、ネットワークを介して、遠隔装置から複数のインテリジェント記憶要素（ＩＳＥ）へと処理するステップであって、各々の該ＩＳＥが、協調して前記記憶空間を定義するデータ記憶装置を有する、前記処理するステップと、
前記処理するステップの間に、各々の前記ＩＳＥが個々に、前記記憶装置の１つの故障を予測する予防的回復ステップを自発的に開始し、前記予測に応じて、各々の前記ＩＳＥの別の記憶装置に予備の記憶容量が存在するか否かを決定するステップと、
前記決定するステップに応じて、前記ネットワークを介する各々の前記ＩＳＥに対するコマンドであって、移すステップを実行することを決定する前記コマンドがない場合に、各々の前記ＩＳＥが、データを前記記憶空間の第１の論理的な記憶位置から前記記憶空間の異なる第２の論理的な記憶位置へ移すステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に分散データ記憶システムの分野に関するものであって、より詳しくはデータの移動の目的で分散記憶システム内に記憶容量を広域に配置するための機器および方法に関するが、これに限定するものではない。
【背景技術】
【０００２】
産業標準構造のデータ転送速度がインテル（登録商標）社製の８０３８６プロセッサのデータ・アクセス速度に追いつかなくなると、コンピュータ・ネットワーク化が急速に広まった。ネットワーク内のデータ記憶容量を強化することにより、ローカル・エリア・ネットワーク（ＬＡＮ）は記憶エリア・ネットワーク（ＳＡＮ）に発展した。ＳＡＮ内の設備と、この設備が処理する関連するデータとを強化することにより、例えば直接付属する記憶装置より一回り大きな記憶を妥当なコストで処理することができるなどの非常に大きな利益をユーザは実現した。
最近の動向は、データ記憶サブシステムを制御するというネットワーク中心方式に移ってきた。すなわち、記憶を強化したのと同じようにして、記憶の機能を制御するシステムもサーバからネットワーク自身に移されている。例えば、ホスト・ベースのソフトウエアは、保全および管理の仕事をインテリジェント・スイッチにまたは専用のネットワーク記憶サービス・プラットフォームに任せる。機器ベースの方式を用いるのでホスト内で走るソフトウエアは必要でなくなり、またこの方式は企業内のノードとして設けられたコンピュータ内で動作する。いずれにしても、インテリジェント・ネットワーク方式は、記憶割当てルーチン、バックアップ・ルーチン、および耐故障性設計などの仕事をホストから独立して集中化することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願番号１０／８８４，６０５号
【特許文献２】米国特許出願番号１０／８１７，３７８号
【特許文献３】米国特許出願番号１０／８１７，２６４号
【特許文献４】米国特許出願番号１０／８１７，６１７号
【特許文献５】米国特許出願番号１１／０４０，４１０号
【特許文献６】米国特許出願番号１１／１４５，４０４号
【特許文献７】米国特許出願番号１１／１４５，４０３号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
知能をホストからネットワークに移すことにより問題の一部は解決されるが、ホストへの仮想記憶の提示を変更することが一般に困難であるという固有の問題は解決されない。例えば、信頼性を高めるためには記憶されたデータを移す必要があり、また成長するネットワークに適応するためには記憶容量を追加する必要がある。このような場合は、新しいまたは変更された記憶空間が存在することが分かるようにホストまたはネットワークを変更しなければならない。必要なのは、それぞれのデータ記憶容量を自発的に決定して割当て、管理し、保護して、その容量を仮想記憶空間としてネットワークに提示して広域の記憶要求に適応するインテリジェント・データ記憶サブシステムである。この仮想記憶空間は多重記憶ボリュームとして配置することができる。分散計算環境では、かかるインテリジェント記憶装置を広域配置ならびに故障時の広域予備として用いる。本発明の実施の形態はこの方式に関するものである。
【課題を解決するための手段】
【０００５】
本発明の実施の形態は、一般に広域配置能力を持つ分散記憶システムに関するものである。
或る実施の形態では、アクセス・コマンドを遠隔装置と記憶空間との間で渡すための、ネットワークにより遠隔装置に接続可能な仮想エンジンを備えるデータ記憶システムを提供する。またこのデータ記憶システムは、アクセス・コマンドを渡すために仮想エンジンはユニークにアドレス指定できる複数のインテリジェント記憶要素を有する。インテリジェント記憶要素は、アクセス・コマンドが同時に仮想エンジンと第１のインテリジェント記憶要素との間で渡されていることとは独立に、データを第１のインテリジェント記憶要素から第２のインテリジェント記憶要素に移す。
或る実施の形態では、仮想エンジンとインテリジェント記憶要素との間のアクセス・コマンドを処理し、同時にインテリジェント記憶要素から別の記憶空間にデータを移す方法を提供する。
或る実施の形態では、仮想エンジンが個別にアドレス指定できる複数のインテリジェント記憶要素と、インテリジェント記憶要素の間でデータを移す手段とを備えるデータ記憶装置を提供する。
本発明の特徴を示すこれらの機能や利点は以下の詳細な説明を読みまた関連する図面を参照すれば明らかになる。
【図面の簡単な説明】
【０００６】
【図１】図１は、本発明の実施の形態が有用であるコンピュータ・システムの線図である。
【図２】図２は、図１のコンピュータ・システムの簡単な線図である。
【図３】図３は、本発明の実施の形態に従って構築されたインテリジェント記憶要素の組立分解等角図である。
【図４】図４は、図３のインテリジェント記憶要素の多重ディスク・アレイの部分的組立分解等角図である。
【図５】図５は、図４の多重ディスク・アレイに用いられる例示のデータ記憶装置である。
【図６】図６は、図３のインテリジェント記憶要素の機能的ブロック図である。
【図７】図７は、図３のインテリジェント記憶要素のインテリジェント記憶プロセッサ回路板の機能的ブロック図である。
【図８】図８は、図３のインテリジェント記憶要素のインテリジェント記憶プロセッサの機能的ブロック図である。
【図９】図９は、図３のインテリジェント記憶要素が行うコマンド取出しおよび関連するメモリ・マッピング・サービスの機能的ブロック図表現である。
【図１０】図１０は、図３のインテリジェント記憶要素が行う別の例示のデータ・サービスの機能的ブロック図である。
【図１１】図１１は、本発明の実施の形態に係る広域予備化の方法を示す線図である。
【図１２】図１２は、本発明の実施の形態に係る広域予備化の方法を示す線図である。
【図１３】図１３は、本発明の実施の形態に係る広域予備化の方法を示す線図である。
【図１４】図１４は、本発明の実施の形態に係る広域予備化の方法を実行するステップの流れ図である。
【図１５】図１５は、図３と同様であるが、密閉された容器の中にデータ記憶装置および回路板を収めるものを示す図である。
【発明を実施するための形態】
【０００７】
図１は本発明の実施の形態が有用である例示のコンピュータ・システム１００である。１台以上のホスト１０２が、ローカル・エリア・ネットワーク（ＬＡＮ）および／またはワイド・エリア・ネットワーク（ＷＡＮ）１０６を介して１台以上のネットワーク付属のサーバ（ＮＡＳ）１０４にネットワーク接続されている。好ましくは、ＬＡＮ／ＷＡＮ１０６は、ワールド・ワイド・ウェブにより通信するためにインターネット・プロトコル（ＩＰ）ネットワーキング・インフラストラクチャを用いる。ホスト１０２は、サーバ１０４内に常駐して多数のインテリジェント記憶要素（ＩＳＥ）１０８の１台以上に記憶されたデータを日常的に必要とするアプリケーションにアクセスする。このため、記憶されたデータにアクセスできるようにＳＡＮ１１０はサーバ１０４をＩＳＥ１０８に接続する。ＩＳＥ１０８は直列ＡＴＡやファイバ・チャネルなどの種々の選択された通信プロトコルによりデータを記憶するデータ記憶容量１０９のブロックを備え、その中に企業クラスまたはデスクトップ・クラスの記憶媒体を含む。
【０００８】
図２は、図１のコンピュータ・システム１００の簡単な線図である。ホスト１０２は、ネットワークまたは構造１１０を介して相互におよび１対のＩＳＥ１０８（それぞれＡおよびＢで示す）と情報を交換する。各ＩＳＥ１０８は二重冗長コントローラ１１２（Ａ１，Ａ２およびＢ１，Ｂ２で示す）を含む。好ましくはコントローラ１１２は、独立ドライブの冗長アレイ（ＲＡＩＤ）として特徴づけられる一組のデータ記憶装置であるデータ記憶容量１０９に作用する。コントローラ１１２およびデータ記憶容量１０９は好ましくは耐故障性配置を用いるので、種々のコントローラ１１２は並列の冗長なリンクを用い、システム１００内に記憶されるユーザ・データの少なくとも一部はデータ記憶容量１０９の少なくとも一組内に冗長形式で記憶される。
【０００９】
更に、Ａホスト・コンピュータ１０２およびＡ−ＩＳＥ１０８は物理的に第１のサイトにあり、Ｂホスト・コンピュータ１０２およびＢ−ＩＳＥ１０８は物理的に第２のサイトにあり、Ｃホスト・コンピュータ１０２は更に第３のサイトにあってよい。ただしこれは単なる例であって、限定するものではない。分散コンピュータ・システム上の全てのエンティティは或るタイプのコンピュータ・ネットワークにより接続される。
【００１０】
図３は本発明の実施の形態に従って構築されたＩＳＥ１０８を示す。棚１１４は、コントローラ１１２を受けて係合して中央板１１６と電気的に接続するための空洞を定義する。棚１１４はキャビネット（図示しない）内に支持される。棚１１４は１対の多重ディスク組立体（ＭＤＡ）１１８を中央板１１６の同じ側に受けて係合する。中央板１１６の反対側には、緊急電源である二重電池１２２、二重交流電源１２４、および二重インターフェース・モジュール１２６が接続する。好ましくは、二重構成要素ではＭＤＡ１１８の一方または両方が同時に動作するので、１つの構成要素が故障した場合はバックアップ保護を行うことができる。
【００１１】
図４は本発明の或る実施の形態に従って構築されたＭＤＡ１１８の拡大部分組立分解等角図である。ＭＤＡ１１８は上部１３０と下部１３２とを有し、それぞれは５個のデータ記憶装置１２８を支持する。区画１３０，１３２は、中央板１１６（図３）と係合するコネクタ１３６を有する共通回路板１３４と接続できるようにデータ記憶装置１２８を揃える。カバー１３８は電磁妨害を遮蔽する。ＭＤＡ１１８のこの例示の実施の形態は、特許出願１０／８８４，６０５、「多重ディスク・アレイの搬送装置および方法（Ｃａｒｒｉｅｒ  Ｄｅｖｉｃｅ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  ａ  Ｍｕｌｔｉｐｌｅ  Ｄｉｓｃ  Ａｒｒａｙ）」の主題である。これは本発明の被譲渡人に譲渡されたものであって、ここに援用する。ＭＤＡの別の例示の実施の形態は同じタイトルの特許出願１０／８１７，３７８の主題である。これも本発明の被譲渡人に譲渡されたものであって、ここに援用する。後で説明するが、別の同等の実施の形態では、密閉された容器内にＭＤＡ１１８を収めてよい。
【００１２】
図５は、本発明の実施の形態で用いるのに適した、回転する媒体ディスク・ドライブの形の例示のデータ記憶装置１２８の等角図である。以下の説明のために、動くデータ記憶媒体と共に回転するスピンドルを用いるが、別の同等の実施の形態では、固体メモリ装置などの非回転媒体装置を用いる。データ記憶ディスク１４０はモータ１４２により回転して、ディスク１４０のデータ記憶位置を読取り／書込みヘッド（単に「ヘッド」と呼ぶ）１４３に提示する。ヘッド１４３は、ディスク１４０の内側と外側のトラックの間にヘッド１４３を半径方向に動かす回転アクチュエータ１４４の先端に支持される。ヘッド１４３は可撓回路１４６により回路板１４５に電気的に接続する。回路板１４５はデータ記憶装置１２８の機能を制御する制御信号を受けたり送ったりする。コネクタ１４８は回路板１４５に電気的に接続し、データ記憶装置１２８とＭＤＡ１１８の回路板１３４（図４）とを接続する。
【００１３】
図６は本発明の実施の形態に従って構築されたＩＳＥ１０８の線図である。コントローラ１１２はインテリジェント記憶プロセッサ（ＩＳＰ）１５０と共に動作してデータの完全性の信頼性を管理する。ＩＳＰ１５０は、コントローラ１１２内、ＭＤＡ１１８内、またはＩＳＥ１０８内のどこか別のところに常駐してよい。
【００１４】
管理された信頼性の態様はＲＡＩＤ方式などの信頼できるデータ記憶フォーマットを作ることを含む。例えば、複数の異なるＲＡＩＤフォーマットの選択された１つを選択的に用いるシステムを形成することによりデータ記憶のための比較的強いシステムを作り、またＭＤＡ１１８を管理するのに用いるソフトウエアの複雑さを軽減すると共に記憶の故障状態から比較的速く回復できるようにファームウエア・アルゴリズムを最適にすることができる。この多重ＲＡＩＤフォーマット・システムのこれらの態様は、特許出願１０／８１７，２６４、「記憶媒体データ構造および方法（Ｓｔｏｒａｇｅ  Ｍｅｄｉａ  Ｄａｔａ  Ｓｔｒｕｃｔｕｒｅ  ａｎｄ  Ｍｅｔｈｏｄ）」に記述されている。これは本発明の被譲渡人に譲渡されたものであって、ここに援用する。
【００１５】
管理された信頼性は、システムを監視して使用することに基づく診断および訂正ルーチンのスケジューリングも含んでよい。データ回復の方法はデータをコピーしまた再構築することで行う。ＩＳＰ１５０は、データを失わずにデータ記憶容量全体を「自己治癒」しやすくするようにしてＭＤＡ１１８と共に組み込む。ここで考えた管理された信頼性のこれらの態様は、特許出願１０／８１７，６１７、「管理された信頼性の記憶システムおよび方法（Ｍａｎａｇｅｄ  Ｒｅｌｉａｂｉｌｉｔｙ  Ｓｔｏｒａｇｅ  Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ）」に開示されている。これは本発明の被譲渡人に譲渡されたものであって、ここに援用する。管理された信頼性の他の態様は、予め決められた規則に関する予測的故障表示への応答の速さを含む。これは例えば、特許出願１１／０４０，４１０、「分散記憶システムにおける予測された故障からの決定論的な予防的回復（Ｄｅｔｅｒｍｉｎｉｓｔｉｃ  Ｐｒｅｖｅｎｔｉｖｅ  Ｒｅｃｏｖｅｒｙ  Ｆｒｏｍ  ａ  Ｐｒｅｄｉｃｔｅｄ  Ｆａｉｌｕｒｅ  ｉｎ  ａ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｓｔｏｒａｇｅ  Ｓｙｓｔｅｍ）」に開示されている。これは本発明の被譲渡人に譲渡されたものであって、ここに援用する。
【００１６】
図７は１対の冗長なＩＳＰ１５０が常駐するＩＳＰ回路板１５２を示す線図である。ＩＳＰ１５０は、データ記憶容量１０９とＳＡＮ構造１１０とをインターフェースする。各ＩＳＰ１５０は、経路選択、ボリューム管理、およびデータ移動および複製などの種々の記憶サービスを管理してよい。ＩＳＰ１５０はＩＳＰ回路板１５２を、バス１５８により結合される２つのＩＳＰサブシステム１５４，１５６に分割する。ＩＳＰサブシステム１５４は「Ｂ」で示すＩＳＰ１５０を含む。これはリンク１６０によりＳＡＮ構造１１０に、またリンク１６２によりデータ記憶容量１０９に接続する。ＩＳＰサブシステム１５４は実時間オペレーティング・システムを実行するポリシー・プロセッサ１６４も含む。ＩＳＰ１５０とポリシー・プロセッサ１６４とはバス１６６により通信し、また両者はメモリ１６８と通信する。
【００１７】
図８は、本発明の実施の形態に従って構築された例示のＩＳＰサブシステム１５４の線図である。ＩＳＰ１５０は、クロス・ポイント・スイッチ（ＣＰＳ）１８６メッセージ・クロスバーを介してリスト・マネージャ１８２，１８４と通信する多数の機能コントローラ（１７０−１８０）を含む。このように、機能コントローラ（１７０−１８０）は所定の条件に応じてそれぞれＣＰＳメッセージを生成し、ＣＰＳ１８６を通してこのメッセージをリスト・マネージャ１８２，１８４に送り、メモリ・モジュールにアクセスしたりＩＳＰ１５０の活動を起こしたりしてよい。同様に、リスト・マネージャ１８２，１８４からの応答はＣＰＳ１８６を介して機能コントローラ（１７０−１８０）のどれかに送ってよい。図８の配置および関連する説明は例であって、本発明の考えられる実施の形態を制限するものでなない。
【００１８】
ポリシー・プロセッサ１６４は、ＩＳＰ１５０を介して望ましい動作を実行するようプログラムすることができる。例えば、ポリシー・プロセッサ１６４はＣＰＳ１８６を介してリスト・マネージャ１８２，１８４と通信して（すなわち、メッセージを送りまた受けて）よい。ポリシー・プロセッサ１６４への応答は、メモリ１６８レジスタの読取りを知らせる割込みとして働いてよい。
【００１９】
図９は、インテリジェント・コントローラ１１２により、予め選択された複数の通信プロトコル（ＦＣ、ｉＳＣＳＩ、またはＳＡＳなど）のどれかでホスト１０２と通信するＩＳＥ１０８の優れた柔軟性を示す線図である。ＩＳＥ１０８は、ホスト・コマンドの取出しレベルを確認し、これに従ってコマンドに関連する物理的記憶１０９に仮想記憶ボリュームをマップするようプログラムしてよい。
【００２０】
本発明の目的では、「仮想記憶ボリューム」という用語は、物理的記憶の論理的取出しに一般に対応する論理エンティティを意味する。「仮想記憶ボリューム」は、例えば、固定のブロック構造内の連続的にアドレス指定されたアドレス・ブロックまたはカウント・キー・データ（ｃｏｕｎｔ−ｋｅｙ−ｄａｔａ）構造内の記録であるかのように（論理的に）扱われるエンティティを含んでよい。仮想記憶ボリュームは物理的に２台以上の記憶要素上にあってよい。
【００２１】
図１０は、任意のホスト１０２と独立にＩＳＥ１０８が行ってよいデータ管理サービスのタイプを示す線図である。例えば、耐故障性のデータの完全性のためにＲＡＩＤ管理を局所で制御して、データのストライピングを望ましい数のデータ記憶装置１２８1，１２８2，１２８3，．．．，１２８n内で行ってよい。仮想化サービスを局所で制御して、メモリ容量を論理エンティティに割り当てたり割り当てを外したりしてよい。上に説明した管理された信頼性方式や同じＩＳＥ１０８内の論理ボリュームの間のデータの移動などのアプリケーション・ルーチンも同様に局所で制御してよい。この記述およびクレームの目的では、「移動」という用語はデータを原始から宛先に移すことにより、移動完了の一部として原始のデータをなくすことを指す。これはデータを「コピーする」こととは逆で、コピーの場合はデータを原始から宛先に複写する。ただし、宛先では別の名前になる。
【００２２】
図１１は、アクセス・コマンド（Ｉ／Ｏコマンド）をホスト装置１０２と複数のＩＳＥ１０８との間で渡すために仮想エンジン２００がＳＡＮ１０６により遠隔ホスト装置１０２と通信する、というデータ記憶システム１００の実施の形態を示す。各ＩＳＥ１０８は、アクセス・コマンドを渡すために仮想エンジン２００がユニークにアドレス指定できる２つのポート２０２，２０４および２０６，２０８を有する。データ転送ボトルネックを作らずにデータ移動を促進するため、以下にこの実施の形態が、ホスト・アクセス・コマンドの処理とは独立に、同時にＩＳＥ１０８の間でデータを移す方法を説明する。また、データを移すときのデータ転送速度を変えることにより、システム１００のアプリケーション性能への影響を最適にすることができる。
【００２３】
ＩＳＥ１０８−１では、ＩＳＰ１５０はデータ記憶装置１２８の物理的データ・パック２１２に関する論理ボリューム２１０を作成する。説明のために、データ・パック２１２の記憶容量の４０％を論理ボリューム２１０内の論理ディスク２１４に割り当てたと仮定する。やはり説明のために、データ・パック２１２および以下の全ての他のデータ・パックは、データ記憶のための８個のデータ記憶装置１２８と２個の予備データ記憶装置１２８とを含むと仮定する。更に図１１から認識されるように、ＩＳＥ１０８−１では他方のデータ・パック２１６は９３％を論理ディスク２１８に割り当て、ＩＳＥ１０８−２ではデータ・パック２２０，２２２は論理ディスク２２４，２２６にそれぞれ３０％および４０％を割り当てたと仮定する。
【００２４】
仮想エンジン２００は論理ディスク２１４から論理ボリューム２２４を作成し、またホストからの記憶空間の要求に応じて論理ディスク２２６を作成してこれをホスト１０２にマップした。
【００２５】
上に述べたように、各ＩＳＥ１０８内のＩＳＰ１５０は、記憶の故障を検出すると決定論的な予防的回復ステップを自発的に開始する。例えば、ＩＳＥ１０８−１はデータ・パック２１２内の記憶装置１２８の故障を検出すると、故障した記憶装置１２８を直ちにラインから外す。故障した記憶装置１２８からのデータはデータ・パック２１２の予備容量の最初の１０％上にコピーするかまたは再構築して、冗長性が働く状態を回復する。次にＩＳＥ１０８−１は、故障した記憶装置１２８の中に自発的な再較正または再製作により回復できる部分があるかどうか判断する。
【００２６】
最初の故障した記憶装置１２８が全く回復不可能であると仮定して、更にＩＳＥ１０８−１の第２の記憶装置１２８の故障が発生した場合は、これもラインから外してそのデータをデータ・パック２１２の予備容量の最後の１０％上にコピーするかまたは再構築する。
【００２７】
第２の故障した記憶装置１２８が第１と同様に回復不可能であると仮定して、更にＩＳＥ１０８−１の第３の記憶装置１２８の故障が発生した場合は、ＩＳＥ１０８−１が必要とする予備容量の割当ては２０％を超える。この条件でＩＳＥ１０８−１の運転を続けると冗長性が部分的に失われる恐れがある。好ましくは、完全に冗長性を回復するようにＩＳＥ１０８−１の運転を落として、適当なときに取り替えるよう計画する。
【００２８】
一方で、この実施の形態はＩＳＥ１０８−１が内部だけでなく異なる仮想記憶ボリュームにわたって割り当てることを考える。この場合は、好ましくはＩＳＥ１０８−１は割当て可能な空間があるかどうか内部の他方のデータ・パック２１６を調べる。しかしこの場合は、データ・パック２１６はすでに９３％が割り当てられているのでデータ・パック２１２の予備とするのに必要な容量はない。しかしＩＳＥ１０８−２内のデータ・パック２２０，２２２は共にデータ・パック２１２の予備とするのに必要な利用可能な容量を有する。
【００２９】
図１２は、ＩＳＥ１０８−１内のＩＳＰ１５０が外部に論理ディスク２３０を作成して、運転を落とした記憶装置１２８に関連する論理ディスク２１４からここにデータを移したことを示す。認識されるように、データの移動によりホスト１０２とＩＳＥ１０８−１との間のアクセス・コマンドＩ／Ｏは必ずしも中断されない。データ移動が完了すると、論理ディスク２３０のデータ経路を仮想エンジン２００に変更する間ホスト１０２との通信を一時的に凍結し、次に図１３に示すように仮想エンジン２００はＩ／Ｏ経路を切り換えて、ＩＳＥ１０８−２内の新たに移動したデータにＩ／Ｏ経路を導く。こうすれば、Ｉ／Ｏサービスを中断せずにデータ・パック２１２を取り替えることができる。
【００３０】
図１４は、本発明の実施の形態に係る広域予備化の方法２５０のステップの流れ図である。方法２５０はブロック２５２で開始し、ＩＳＥ１０８は通常のＩ／Ｏモードで処理中である。ブロック２５４で、最後のＩ／Ｏコマンドの処理が終わったかどうか判定する。終わった場合はこの方法は終了する。終わらない場合は制御はブロック２５６に進み、ＩＳＥ１０８がデータ・パックの故障を検出したかどうか判定する。ブロック２５６の判定がノーの場合は、ブロック２５２で通常のＩ／Ｏ処理を続ける。以下同じである。
【００３１】
ブロック２５６の判定がイエスの場合は制御はブロック２５８に進み、故障のデータ・パック内に十分な予備容量が存在するかどうか判定する。データ・パック２１２の記憶装置が故障した上の例の場合は、ブロック２５８ではデータ・パック２１２自身を調べる。言い換えると、予備容量があるかどうか「局所で」調べる。ブロック２５８の判定がイエスの場合は、ブロック２６０でＩＳＰ１５０は局所のＬＵＮを割り当て、ブロック２６２で故障のデータ・パックから局所のＬＵＮにデータを移し、制御はブロック２５２に戻る。
【００３２】
ブロック２５８の判定がノーの場合は制御はブロック２６４に進み、同じＩＳＥ１０８内の別のデータ・パック内に予備容量が存在するかどうか、言い換えると、予備容量が「内部に」存在するかどうか、判定する。ブロック２６４の判定がイエスの場合は、ブロック２６６でＩＳＰは内部のＬＵＮを割り当て、ブロック２６８で故障のデータ・パックから内部のＬＵＮにデータを移し、制御はブロック２５２に戻る。
【００３３】
ブロック２６４の判定がノーの場合は制御はブロック２７０に進み、別のＩＳＥ１０８内のデータ・パック内に予備容量が存在するかどうか、言い換えると予備容量が「外部に」存在するかどうか、判定する。ブロック２７０の判定がイエスの場合はブロック２７２でＩＳＰは外部のＬＵＮを割り当て、ブロック２７４で故障のデータ・パックから外部のＬＵＮにデータを移し、制御はブロック２５２に戻る。
【００３４】
しかしブロック２７０の判定がノーの場合は予備容量が存在せず、制御はブロック２７６に進んで、データ・パックの運転を落とし、保全計画をたてる。次に制御はブロック２５２に戻る。
【００３５】
最後に、図１５は図４と同様の図であるが、複数のデータ記憶装置１２８および回路板１３４は、ベース１９０とこれに付属する密閉カバー１９２とで形成される密閉容器内に収められる。ＭＤＡ１１８Ａを形成するデータ記憶装置１２８を密閉して係合すると、データ記憶装置１２８の配置が予め選択された最適配置から変わることがないなどの種々の利点がある。またデータ記憶装置１２８の数、サイズ、タイプを明確に定義できる場合は、かかる配置によりＭＤＡ１１８Ａの製作者は最適性能になるようにシステムを調整することができる。
【００３６】
またＭＤＡ１１８Ａを密閉すると、製作者は内部の記憶媒体のグループの信頼性および耐故障性を最大にすることができると同時に、ＭＤＡ１１８Ａの寿命がある限りほとんどサービスをしなくてよい。これは、多スピンドル配置のドライブを最適化することにより行う。設計の最適化により、コストが下がり、性能が向上し、信頼性が向上し、ＭＤＡ１１８Ａ内のデータの寿命が一般に延びる。更に、ＭＤＡ１１８Ａ自体の設計により回転振動がほとんどなくなり、冷却効率の高い環境が得られる。これは出願中の米国特許出願１１／１４５，４０４、「強化されたＲＶＩを持つ記憶アレイ（Ｓｔｏｒａｇｅ  Ａｒｒａｙ  ｗｉｔｈ  Ｅｎｈａｎｃｅｄ  ＲＶＩ）」の主題である。これは本出願の被譲渡人に譲渡されている。これにより、ＭＤＡ１１８の信頼性、性能、または容量を落とさずに内部の記憶媒体を低コストで製作することができる。このようにＭＤＡ１１８Ａを密閉すると、単点故障がなくなり、回転振動の除去と冷却効率がほとんど完全になる。これにより、ディスク媒体特性が最適になるようにＭＤＡ１１８Ａを設計し、コストを下げ、同時に信頼性および性能を高めることができる。
【００３７】
要約すると、複数の回転可能なスピンドルを含む分散記憶システム用の内蔵のＩＳＥを提供する。各スピンドルはそれぞれ独立に動くアクチュエータに近接して記憶媒体を支持し、アクチュエータは記憶媒体との間でデータを記憶しまた検索する。ＩＳＥは更に、分散記憶システムの遠隔装置が用いるように仮想記憶ボリュームを複数の媒体にマップするＩＳＰを含む。
【００３８】
或る実施の形態では、ＩＳＥは共通の密閉されたハウジング内に収められた複数のスピンドルおよび媒体を有する。好ましくは、ＩＳＰはＲＡＩＤ方式などの故障に耐える方法でデータを記憶するために仮想記憶ボリューム内にメモリを割り当てる。更にＩＳＰはデータ記憶プロセス中に、予測される記憶の故障を検出すると決定論的な予防的回復ステップを自発的に開始するなどの管理された信頼性方式を実行することができる。好ましくは、ＩＳＥは、それぞれが２個以上のディスクのデータ記憶媒体から形成されディスク・スタックを有する複数のデータ記憶装置で形成する。
【００３９】
別の実施の形態では、ＩＳＥは、内蔵の複数の離散的データ記憶装置と、データ記憶装置と通信して遠隔装置から受信したコマンドを取り出してこれに関係するメモリを関連付けるＩＳＰとを備える分散記憶システムに用いる。好ましくは、分散記憶システムの１つ以上の遠隔装置が用いるために、ＩＳＰは仮想記憶ボリュームを複数のデータ記憶装置にマップする。前と同様に、複数のデータ記憶装置および媒体は共通の密閉されたハウジング内に収めてよい。好ましくは、ＲＡＩＤ方式などの故障に耐える方法でデータを記憶するために、ＩＳＰは仮想記憶ボリューム内にメモリを割り当てる。更にＩＳＰは、予測された記憶の故障を検出するとデータ記憶装置内で決定論的な予防的回復ステップを自発的に開始する。
【００４０】
別の実施の形態では、ホストと、ネットワークによりホストと通信する後部記憶サブシステムと、ホストに無関係に内蔵の記憶容量を仮想化する手段とを備える分散記憶システムを提供する。
【００４１】
仮想化する手段は、複数の離散的で個別にアクセス可能なデータ記憶ユニットを特徴としてよい。仮想化する手段は、複数のデータ記憶ユニットに関連する記憶容量の仮想ブロックをマップすることを特徴としてよい。仮想化する手段は、複数のデータ記憶ユニットおよび関連する制御を密閉して収めることを特徴としてよい。仮想化する手段は、限定されないがＲＡＩＤ方式などの故障に耐える方法でデータを記憶することを特徴としてよい。仮想化する手段は、予測される記憶の故障を検出すると決定論的な予防的回復ステップを自発的に開始することを特徴としてよい。仮想化する手段は、多重スピンドル・データ記憶アレイを特徴としてよい。
【００４２】
ここの目的では、「仮想化する手段」という用語は、それぞれのデータ記憶サブシステム以外のどこかにデータ記憶空間をマップするためのシステム知能を含む前に試みた解決策を明白には考えない。例えば、「仮想化する手段」は記憶マネージャを用いてデータ記憶サブシステムの機能を制御することは考えないし、またＳＡＮ構造内またはホスト内にマネージャまたはスイッチを置くことも考えない。
【００４３】
またはこの実施の形態は、アクセス・コマンドを遠隔装置と記憶空間との間で渡すための、ネットワークにより遠隔装置に接続する仮想エンジンを備えるデータ記憶システムを特徴とする。データ記憶システムは更に、アクセス・コマンドを渡すために仮想エンジンがユニークにアドレス指定できる複数のインテリジェント記憶要素（ＩＳＥ）を有する。仮想エンジンと第１のＩＳＥとの間でアクセス・コマンドが渡されていることとは独立に、同時にＩＳＥは第１のＩＳＥから第２のＩＳＥにデータを移す。
【００４４】
或る実施の形態では、各ＩＳＥは複数の回転可能なスピンドルを有し、各スピンドルはそれぞれ独立に動くアクチュエータに近接して記憶媒体を支持し、アクチュエータは記憶媒体との間でデータを記憶しまた検索する。複数のスピンドルおよび媒体は共通の密閉されたハウジング内に収めてよい。
【００４５】
各ＩＳＥは仮想記憶ボリュームを複数の媒体にマップして管理するためのプロセッサを有する。各ＩＳＥプロセッサは、好ましくは複数の異なる独立ドライブの冗長アレイ（ＲＡＩＤ）方式の選択された１つなどの故障に耐える方法でデータを記憶するために仮想記憶容量内にメモリを割り当てる。
【００４６】
各ＩＳＥプロセッサは記憶の故障を検出すると決定論的な予防的回復ステップを自発的に行ってよい。これを行うとき、各ＩＳＥプロセッサは記憶の故障を検出すると第２の仮想記憶容量を割り当ててよい。或る実施の形態では、各ＩＳＥプロセッサは異なるＩＳＥ内に第２の仮想記憶容量を割り当てる。
【００４７】
この実施の形態は更に、仮想エンジンとインテリジェント記憶要素との間のアクセス・コマンドを処理し、同時にインテリジェント記憶要素から別の記憶空間にデータを移すための方法として特徴づけられる。
【００４８】
処理するステップは、インテリジェント記憶要素が仮想記憶ボリュームを内蔵の物理的記憶にマップして管理することを特徴としてよい。好ましくは移すステップは、記憶の故障を検出するとインテリジェント記憶要素が決定論的な予防的回復ステップを自発的に開始することを特徴とする。
【００４９】
移すステップは、記憶の故障を検出するとインテリジェント記憶要素が第２の仮想記憶ボリュームを割り当てることを特徴としてよい。或る実施の形態では、移すステップは、処理するステップで仮想エンジンが異なるアドレスを指定した物理的記憶に関して第２の仮想記憶ボリュームを割り当てることを特徴とする。例えば、移すステップは、第２の仮想記憶ボリュームをインテリジェント記憶要素の内部に割り当てることを特徴としてよい。または、移すステップは、第２の仮想記憶ボリュームをインテリジェント記憶要素の外部に割り当てることを特徴としてよい。すなわち、移すステップは、第２のインテリジェント記憶要素内に第２の仮想記憶ボリュームを割り当てることを特徴としてよい。
【００５０】
処理するステップは、メモリを割り当てて故障に耐える方法でデータを記憶することを特徴としてよい。また処理するステップは、共通の密閉されたハウジング内でデータを転送しながらデータ転送要素および記憶媒体を互いに動かすことを特徴としてよい。
【００５１】
またはこの実施の形態は、仮想エンジンが個別にアドレス指定できる複数のインテリジェント記憶要素と、データをインテリジェント記憶要素の間で移す手段とを備えるデータ記憶システム特徴とする。この記述およびクレームの目的では、ここに説明した構造およびその同等物に関して「移す手段」という用語は、ホストのアクセス・コマンドに関連する通常のＩ／Ｏコマンド処理を中断せずにデータを或る論理ユニットから別の論理ユニットに移すことを意味する。
【００５２】
理解されるように、これまでの記述で本発明の種々の実施の形態の多くの特徴および利点を、本発明の種々の実施の形態の構造および機能の詳細と共に述べたが、この詳細な記述は単なる例示であって、詳細に関しては、特に本発明の原理内の部分の構造および配置に関してクレームを表現する用語の広い一般的な意味で示す範囲で、変更を行ってよい。例えば、本発明の精神と範囲から逸れない限り特定の要素を特定の処理環境に従って変えてよい。
【００５３】
更に、ここに述べた実施の形態はデータ記憶アレイに関するものであるが、当業者が認識するように、クレームされた主題はこれに限定されるものではなく、本発明の精神および範囲から逸れない限り種々の他の処理システムを用いてよい。
【００５４】
本出願は２００５年６月３日に出願されて本出願の被譲渡人に譲渡された米国出願番号１１／１４５，４０３の一部継続出願である。
【符号の説明】
【００５５】
１０２  遠隔装置（ホスト）
１０８  インテリジェント記憶要素（ＩＳＥ）
１０９  記憶空間
２００  仮想エンジン
【図１】
2010157257.tif 000003
【図２】
2010157257.tif 000004
【図３】
2010157257.tif 000005
【図４】
2010157257.tif 000006
【図５】
2010157257.tif 000007
【図６】
2010157257.tif 000008
【図７】
2010157257.tif 000009
【図８】
2010157257.tif 000010
【図９】
2010157257.tif 000011
【図１０】
2010157257.tif 000012
【図１１】
2010157257.tif 000013
【図１２】
2010157257.tif 000014
【図１３】
2010157257.tif 000015
【図１４】
2010157257.tif 000016
【図１５】
2010157257.tif 000017