(57)【要約】【課題】  急速に拡大するデータ量のため、たいていの企業では自社の情報技術システムにより慎重にデータを管理することが必要になっている。このため、低頻度にアクセスされるデータを、性能の低いすなわちより低価格なストレージシステムに移行する費用効率の高い方法で、データを管理する技術を求められている。【解決手段】  本発明の技術を実施したシステムにおいて、アクセスを制御する状態でデータ検証記録を保存することがまた有効である。そのようなものとして、検証記録を様々な公知の技術を使用して暗号化、あるいは保護することができる。このようなアプローチは、システム監査においてアーカイブされたデータの完全性を実証することを保証するのに有用である。【選択図】図１
2006004408.tif 000002
【特許請求の範囲】
【請求項１】
各々データを保存する複数のディスクドライブを有するストレージシステムにおいて、
前記複数のディスクドライブと関連付けられ、該ディスクドライブに保存されたデータが検証済であるかどうかを示すデータエントリーを有する管理情報のストレージ
を備えたことを特徴とする、保存データの完全性を検証するシステム。
【請求項２】
前記管理情報のストレージに接続し、前記複数のディスクドライブのいくつかに選択的に接続可能で、該ディスクドライブに保存されたデータの検証処理を実行し、結果を該管理情報のストレージに保存するプロセッサをさらに備えたことを特徴とする請求項１に記載の保存データの完全性を検証するシステム。
【請求項３】
前記プロセッサと接続し、前記検証プロセスの変更を可能にするコントローラをさらに備えていることを特徴とする請求項２に記載の保存データの完全性を検証するシステム。
【請求項４】
前記管理情報のストレージが前記ディスクドライブの動作モードに関連するエントリーを内部に有するテーブルを備えていることを特徴とする請求項２に記載の保存データの完全性を検証するシステム。
【請求項５】
前記動作モードが前記ディスクドライブの電源オン、オフ、あるいはデータ検証処理中を示す表示を備えていることを特徴とする請求項４に記載の保存データの完全性を検証するシステム。
【請求項６】
前記モードが、前記ディスクドライブが最後に動作してからの時間を示す表示をさらに備えていることを特徴とする請求項５に記載の保存データの完全性を検証するシステム。
【請求項７】
前記モードが前記ディスクドライブのデータがチェックされた程度を示す表示を備えていることを特徴とする請求項５に記載の保存データの完全性を検証するシステム。
【請求項８】
前記管理情報のストレージが各ディスクドライブに対して実行された全てのデータ検証の記録を保持することを特徴とする請求項１に記載の保存データの完全性を検証するシステム。
【請求項９】
前記管理情報のストレージがデータエントリーの改竄の危険性を減少するための保護手段をさらに有していることを特徴とする請求項８に記載の保存データの完全性を検証するシステム。
【請求項１０】
各々データを保存する複数のディスクドライブを有するストレージシステムにおいて、
前記複数のディスクドライブと関連付けられ、該ディスクドライブに保存されたデータが検証済であるかどうかを示すデータエントリーを有する管理情報のストレージと、
前記管理情報のストレージと接続し、前記複数のディスクドライブのいくつかと選択的に接続可能で、該ディスクドライブに保存されたデータの検証処理を実行し、結果を該管理情報のストレージに保存するプロセッサと、
前記プロセッサに接続し、検証処理の変更を可能にするコントローラと、
を備えたことを特徴とする、保存データの完全性を保証するシステム。
【請求項１１】
各々データを保存する複数のディスクドライブを有するストレージシステムにおいて、
選択した時刻に前記保存されたデータの検証を実行するステップと、
前記複数のディスクドライブと関連付けられ、該ディスクドライブに保存されたデータが検証されているかを示すデータエントリーを有する管理情報のストレージに、前記保存データの検証結果を保存するステップと、
を備えることを特徴とする、保存されたデータの完全性を検証する方法。
【請求項１２】
検証処理を変更するステップをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記検証結果を保存するステップが、ディスクドライブの動作モードに関するエントリーを有する表に前記結果を保存するステップをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１４】
前記モードが、前記ディスクドライブの電源オン、オフ、あるいはデータ検証処理中を示す表示を備えていることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記モードが、前記ディスクドライブが最後に動作してからの時間を示す表示をさらに備えていることを特徴とする請求項１3に記載の方法。
【請求項１６】
前記モードが前記ディスクドライブのデータがチェックされた程度を示す表示を備えていることを特徴とする請求項１３に記載の方法。
【請求項１７】
前記保存するステップが、各ディスクドライブに対して実行される全てのデータ検証の記録を保存するステップをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１８】
各々データを保存する複数のディスクドライブを有するストレージシステムにおいて、
前記保存されたデータの検証処理を実行するステップと、
前記複数のディスクドライブに関連付けられ、該ディスクドライブに保存されたデータが検証されているかを示すデータエントリーを、管理情報のストレージに保存するステップと、
を備えることを特徴とする、保存されたデータの完全性を検証する方法。
【請求項１９】
各々がデータを保存する複数のディスクドライブを備え、ホストコンピュータに接続するのに適合するストレージシステムにおいて、
前記ディスクドライブの電源がオフされている通常動作モードと、
ホストからアクセスされたディスクドライブは電源オンされ、ホストからアクセスされないディスクドライブはオフのままとされる入出力動作モードと、
保存されたデータへの高速アクセスが可能となるように全ディスクドライブがオンとされる監査動作モードと、
を備えることを特徴とする、ストレージシステムを動作させる方法。
【発明の詳細な説明】
【技術分野】
【０００１】
0001  本発明はストレージシステム全般に関わり、具体的にはストレージシステムの検証可能データを高信頼度に長期保存することに関する。
【背景技術】
【０００２】
0002  世界中の大規模な組織は現在、大量の文書、映像、イメージ、音声情報を伴う数百万の処理に関わり、これらの情報は日々に分類され、保存され、アクセスされ、転送されている。これらの情報の量は急速な増大を続けている。これらの膨大な量のデータを管理する１つの技術は、ストレージシステムを使うことである。従来のストレージシステムは、これらの膨大な量のデータの記録、バックアップ、および再生を可能とする様々な制御方式の下で動作する多数のディスクドライブを含むことができる。この急速に拡大するデータ量のため、たいていの企業では自社の情報技術システムにより慎重にデータを管理することが必要になっている。
【０００３】
0003  最近、各種の政府機関から新しい規格が公表され、企業やその他の組織は所定の期間データを高信頼度に保存することが必要になった。例えば、Ｓａｒｂａｎｅｓ−Ｏｘｌｅｙ法、ＳＥＣ規制などの規制により民間企業は数百テラバイトにも達しうるある種のビジネス情報を保存することが求められている。この結果、これらの組織体は、低頻度にアクセスされるデータを、性能の低いすなわちより低価格なストレージシステムに移行する費用効率の高い方法で、データを管理する技術を求めている。ハードディスクドライブの製造コストの継続的な低下とこの要因とが結びついて、アーカイバルストレージを提供する多くの磁気テープ、光ディスクライブラリ機能をディスクドライブが置き換える結果となった。ハードディスクドライブに記憶されるデータのビットあたりコストが低下し続けるため、これらのシステムがますますアーカイバルストレージに使用されるであろう。
【０００４】
0004  企業情報技術向けの伝統的な高性能ディスクベースのストレージシステムは通常高性能で高信頼度のハードディスクドライブを備えている。これらのシステムは、ともに公知の情報転送の標準プロトコルであるファイバチャネルあるいはＳＣＳＩなどの高速インタフェースを用いて、サーバあるいは他のコンピュータと接続されている。一方、パーソナルコンピュータあるいは低価格のサーバはしばしば低性能で信頼度の低いディスクドライブを、ＡＴＡあるいはＩＤＥなどの従来型の低速インタフェースを使って使用している。これらのハードディスクドライブはその信頼度と性能の低さゆえに、低価格で大量生産が可能となっている。これらの低価格のディスクドライブをアーカイバルストレージ用のストレージシステム製品にしばしば使用することが可能である。その例として、ＥＭＣ社のＣｌａｒｉｏｎ及びＣｅｎｔｒａ製品、Ｎｅｔｗｏｒｋ  Ａｐｐｌｉａｎｃｅ社のＮｅａｒＳｔｏｒｅ、ＳｔｏｒａｇｅＴｅｋ社のＢｌａｄｅＳｔｏｒｅがあげられる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
0005  アーカイバルストレージでは、アーカイブされたデータは極めてまれにしかアクセスされず、例えば年に数回程度の頻度である。結果として通常では性能は問題ではないが、信頼度は依然として最大の懸案事項である。通常の、情報を高信頼度に保持するという内部的な要求に加えて、これらのストレージシステムのデータは、失なわれたり、修正されてはならないという政府の規制がしばしば及んでいる。さらに、データへのアクセスが低頻度であるので、システム設計者は、ディスクドライブがアクセスされないときは電源を落として電力消費を削減するようにシステムを設計することが可能である。ところが、長期間にわたって、ハードディスクドライブの電源を落としておくと記録媒体と読み書きデバイスの腐食を起こす可能性がある。多くのこれらアーカイバルシステムでは、例えばオペレータの人手操作介入あるいはソフトウェアにより誤って引き起こされるデータの意図的な、あるいは偶然な変更は、確実な認証方式により阻止されている。最高のデータ信頼度を維持するために、ハードディスクドライブの１台に起こるデータ劣化あるいはセクター障害はいかなるものでも回復されなければならない。あるいは、少なくとも検出され報告されなければならない。
【０００６】
0006  従って、低信頼度のハードディスクドライブを高信頼度な方法で使用でき、その上データの改竄あるいは喪失が防止できるディスクアレイを使用するストレージシステムが求められている。
【課題を解決するための手段】
【０００７】
0007  典型的な本発明の実施例では、コントローラと一群の通常は低信頼度のハードディスクが備えられている。これらのディスクドライブに保存されたデータは信頼度を保証するため定期的に取り出され検証される。ストレージシステムに接続されたホストコンピュータからアクセスがない時、選択的にハードディスクドライブの電源を落とす機構が備えられえている。コントローラは、必要なとき及びデータ検証プロセスを実行するときに、何台かのディスクドライブの電源を定期的にオンにする。検証プロセスの結果は、アーカイブされたデータの完全性に対して保証を求める人は誰でも情報にアクセスできるように不揮発性で安全な場所に保存される。
【０００８】
0008  アーカイブされたデータは数多くの異なった技術を用いて検証することができる。１つの技術では、個々のディスクドライブの全てのデータが順番に読み出される。欠陥セクターが検出されるとセクター番号がコントローラに報告され、次にコントローラはデータ回復プロセスを実行する。データ回復プロセスとしては典型的なＲＡＩＤミラーリング、バックアップ、エラー訂正技術を使用することが出来る。これらの技術により、バックアップコピー、パリティビット、エラー訂正コードを読み出して、不良データを訂正することができる。これによりシステムコントローラは、ハードディスクドライブを読んでも通常は発見できない偶発的なあるいは自然発生的なビット単位の欠陥を発見することができる。
【０００９】
0009  あるいは、データ検証に長時間にわたる多数の読み出しシーケンスを採用することもできる。例えば、指定された検証期間の間、ハードディスクドライブのデータの所定の部分のみが読み出され検証される。この種の検証処理がその後ディスクドライブのすべての部分に繰り返され、これによりディスクドライブの全内容が検証される。新しい、しばしば数百ギガバイトの記憶容量を持つ大容量のハードディスクドライブの全データをパリティグループと結びつけてチェックするには長い時間（例１０時間）を要するので、このプロセスはこの種のディスクドライブに対して特に有用である。また、機構上の理由から、すなわち、ＡＴＡ型のディスクドライブは頻繁に電源投入することが好ましいので、データ検証プロセスを分割するのが望ましい。
【００１０】
0010  本発明の技術は様々なアプローチにより実施することができる。１つの実施例では各ディスクドライブの内容に関する情報を維持する管理表が用意されている。管理表にはハードディスクドライブがオンであるかオフであるか、データ検証モードにあるかなどの情報を含むことができる。また、表にはドライブが最後にオンになった時期、オフを続けている期間を保存することも可能である。管理表はまた、データ検証プロセスが個々に行われたかを示し、分割して実施された場合には最後のセクターあるいはチェック済のディスクドライブの他のアドレスを示すデータを備えることができる。パリティグループと論理ユニット、ディスクドライブがオンになった時刻、あるいはデータ検証が始まってからの時間などの記録を保持しても良い。
【００１１】
0011  本発明を実施したシステムはデータ検証機能を備えることが望ましい。１つの実施例ではディスクアレイに接続するストレージコントローラにマイクロプロセッサが備えられている。マイクロプロセッサは、例えばミラーペアの各ドライブを比較処理することによりデータ検証を実行する。比較の成功、失敗はそのままマークされる。要望があればパリティチェックあるいはエラー訂正コード用の専用ハードウェアを備えても良い。データ検証処理用に、例えばこれら処理の設定あるいは手順を変更するなどの制御機能を持つこともまた望ましい。これらの設定変更はサービスプロセッサのコマンド、あるいは保守員が端末あるいはキーボードを用いて発行するコマンドにより実施することができる。言うまでもなく、ストレージシステムに接続するネットワークを通してコマンドを発行することも可能である。
【００１２】
0012  本発明の技術を実施したシステムにおいて、アクセスを制御する状態でデータ検証記録を保存することがまた有効である。そのようなものとして、検証記録を様々な公知の技術を使用して暗号化、あるいは保護することができる。このようなアプローチは、システム監査においてアーカイブされたデータの完全性を実証することを保証するのに有用である。
【００１３】
0013  本発明の他の実施例では、ストレージシステムが、全ディスクドライブが電源オンに保持される特殊な動作モードを有することが望ましい。アーカイブされたデータの監査が実施されるとき、検索をより迅速に実施することができる。
【００１４】
0014  各々が保存データを有する複数のディスクドライブを備えたストレージシステムの好適なる実施例において、保存データの完全性を検証するシステムは、ディスクドライブと関連付けられたデータエントリーを有し、ディスクドライブに保存されたデータが検証されたかを示す管理情報のストレージを有している。通常、検証処理自体は、ディスクアレイの動作を管理するストレージコントローラに配置されたプロセッサ、普通はマイクロプロセッサ、で実行される。
【発明の効果】
【００１５】
本発明の技術を実施したシステムにおいて、アクセスを制御する状態でデータ検証記録を保存することがまた有効である。そのようなものとして、検証記録を様々な公知の技術を使用して暗号化、あるいは保護することができる。このようなアプローチは、システム監査においてアーカイブされたデータの完全性を実証することを保証するのに有用である。
【発明を実施するための最良の形態】
【００１６】
0025  図１は本発明の第一の実施例の典型的なシステム構成のブロック図である。図１は、ストレージコントローラ２を通してディスクユニット３と接続するホストコンピュータ１を含む、典型的なシステムの基本コンポーネントを示す。インタフェース１１０、１１７はホストコンピュータをストレージコントローラに接続し、他のインタフェース１３０、１３１、１４０、１４１はストレージコントローラをディスクユニットに接続する。ディスクユニットは図１に円筒形で示されるように多数のディスクドライブを有していることが望ましい。
【００１７】
0026  ストレージコントローラ２は共有メモリ４、サービスプロセッサ５、プロセッサ１０乃至１７を有している。プロセッサ１０乃至１７はマイクロプロセッサであることが望ましく、マイクロプロセッサ１０乃至１７が使用するプログラム及び／あるいはデータを保存するローカルメモリ２０乃至２７と接続している。いくつかの実施例では、ローカルメモリはマイクロプロセッサ回路と同じチップのＲＯＭとして実現できる。共有メモリ４は信号線１２０を介して全てのマイクロプロセッサに共有されている。（図をシンプルにするために図１ではコンポーネント間の接続は１本の線で表されている。しかし、実際には通常これらの１本の線はアドレス、データ、制御、その他の信号線に対する複数の信号線を有するバスとして実現されている。）
0027  共有メモリ４は以下に説明する管理表５０を含んでいる。マイクロプロセッサ１０乃至１７はまた、好ましくはローカルエリアネットワーク１２１を用いて、システムの保守のための様々な動作を処理するサービスプロセッサ５と接続している。このサービスプロセッサは通常相互接続線１２３を介して、サービスプロセッサ５の動作を制御する管理ソフトウェア３０を含む管理サーバ７と接続している。さらにコンソール６が回線１２２を介してプロセッサ５と接続しサービスプロセッサ（ＳＶＰ）５上でマニュアル操作を可能にしている。
【００１８】
0028  ディスクユニット３は情報保存用の多くのユニットを含んでいる。これらはハードディスクドライブあるいは他の公知のストレージ装置であることが望ましい。ハードディスクドライブの場合、ドライブ６０乃至６７、７０乃至７７、８０乃至８７、９０乃至９７が全てバス１３０、１３１、１４０、１４１を介してマイクロプロセッサ１０乃至１７に相互接続されている。典型的な実施例ではディスクドライブはＲＡＩＤ１機能を提供するためペアを構成している。例えば、ドライブ８０と９０はミラーペアとなった２台のディスクドライブを提供する。図１に示すストレージシステムの異なる実施例では、ディスクドライブ、マイクロプロセッサ、特定のＲＡＩＤの数あるいは選択された他の冗長化技術を変えることができる。
【００１９】
0029  図１に示すシステムは２つの主な動作モードを有している。すなわち、“通常”モードと“フル稼働”モードである。個々の動作モードは管理表５０（図２に示す如く）の欄で指定される。個々の実施例に応じて、選択されるモードはミラー化されたペアあるいは他の物理的／論理的構成、例えばＲＡＩＤ５パリティグループなど、に基づいている。通常動作モードでは、ミラーペアのハードディスクドライブはオフにされ、データ検証あるいは入出力（Ｉ／Ｏ）動作のときにオンにされる。この動作の形式の詳細については以下に説明する。フル稼働モードではミラーペアは常時動作しておりオフにされることはない。この動作モードの詳細についても以下に説明する。
【００２０】
0030  動作モードの設定と変更は異なった方法で実行することができる。１つの実行方法では、オペレータがコンソール６を使用してディスクドライブペアのＩＤと所望のモードを指定することにより、モード設定を設定あるいは変更する。他の実行方法では、管理ソフトウェア３０がＳＶＰ５によってアプリケーションプログラムインタフェース（ＡＰＩ）を使用して、モード設定を変更あるいは設定する。どちらの場合も、指定されたモード設定は、ＳＶＰ５で処理され、その時に通常はマイクロプロセッサ１０乃至１７により更新される管理表５０を有する適切なマイクロプロセッサ１０乃至１７に通知される。
【００２１】
0031  図２は図１に示す管理表５０の典型的な実施例を示す図である。上記のように図１のディスクドライブの各ミラーペアは表にエントリーを有し、これらのエントリーは共通フォーマットを有している。例えば、ペア１００のＮ番目のエントリー５２は、通常は点線５２の中に示す情報を有している。現在のモード欄５３は対応するペアの現在の動作モードを特定する。“現在のモード”レジスターあるいは表のエントリーの好適なる実施例の典型的な内容が図２の下部に示されている。例えば、欄５３の“０”は、このペアが通常動作モードにあり、省電力機能を実行していることを示す。同様に、同欄の“１”はミラーペアが通常動作モードにあるが、電源オフになっていることを示す。“２”は通常動作モードであるが、データチェックすなわち検証処理中であることを示し、“３”はフル稼働モードで省電力機能は実施されていないことを示す。“４”はエラー処理モードを示す。要求により、追加のデータを用いて、追加モードを指定することができることは言うまでもない。
【００２２】
0032  図２の管理表５０の欄５４はデータ検証すなわちチェックが起動される時刻を特定する。“現状休眠時間”欄５５は対応するペアが電源オフされてからの経過時間を有している。（この欄は現在のモード欄５３が“１”の時のみ有効である。）“データ検証オプション”欄５６はデータ検証処理が実行されるかどうかを明らかにする。好ましくは、欄５６の“０”はデータ検証が実行されないことを意味し、“１”は対応するディスクペアに対して間歇的なシーケンスでデータ検証が実行されることを意味する。“分割シーケンス”は所与の動作中にデータが検証されるディスクドライブの部分、例えばシリンダ、を示す。特定の検証単位は欄５７に符号化されている。欄５７で“０”は一つの論理シリンダを指定するときに使われ、“１”は８シリンダを指定するのに使われる。特定の単位は選択された個々の実施例によって決まる。
【００２３】
0033  “最終チェックアドレス”欄５８は最後に実行された検証処理でチェックされたディスクペアの部分のアドレスを特定するために使われる。データ検証処理が実行されるたびにこの欄は更新される。“休止状態”欄５９ａはペアが休止中にその状態を特定する。言い換えれば、ペアが通常モードであるがＩ／Ｏ要求を処理中でないかどうかを示す。上記のように、この欄の個々の使用法は個々の実施例によって決まる。好適なる実施例の管理表５０の最後の“電源オフの条件”欄５９ｂは対応するペアの電源をオフにすると決定する条件を示す。この欄の使用法は個々の実施例によるが、通常は電源をオフにするまでの休止時間の最大長さである基準である。
【００２４】
0034  図３は図１に示したシステムの好適なる動作の方法を示すフローチャートである。本フローチャートはミラーペア１００の通常モードでの動作を示す。電源オン後システムは初期設定され４０１、その時または少し後に現在のモード欄５３はマイクロプロセッサ１７によりステップ４０２で“０”に設定される。“休止状態”欄５９もステップ４０３で示すようにリセットされる。システムは次にステップ４０４に移動し、そこでホストのＩ／Ｏ要求を待つ。その種の要求を受信すると、マイクロプロセッサ１７がステップ４０７に示すようにディスクドライブペア１００にて要求を処理する。処理が完了すると、システムの状態はステップ４０３へ戻る。
【００２５】
0035  Ｉ／Ｏ要求が来なければ、プロセッサ１７はステップ４０５に示すように休止状態５９ａを更新し、ステップ４０６で現在の状態５９ａが条件５９ｂに合致するかどうかをチェックする。もし電源オフ条件に合致しなければ、休止プロセスのステップ４０４、４０５、４０６が引き続き繰り返される。電源オフ条件５９ｂに合致すれば、現在のモード欄５３は“１”に設定され、現状休眠時間はリセットされる。次にステップ４０８に示すようにペアは電源オフされる。
【００２６】
0036  電源オフのディスクドライブペアへのＩ／Ｏ要求を発生するイベントを図３の下部に示す。このときホストコンピュータ１からペア１００へのＩ／Ｏ要求はステップ４０９で受信され検出される。プロセッサ１７は検出すると現在のモード欄を“０”に設定し、ペアの電源をオンにし、休止状態をリセットする。動作はステップ４０７に移行しＩ／Ｏ処理を完了させる。
【００２７】
0037  通常の場合、ホストからのＩ／Ｏ要求は受信されず、動作はステップ４１０へ移行する。このステップで、プロセッサ１７は休眠時間が予め設定されたデータ検証期間に到達しているかをステップ４１０でチェックする。結果がノーであれば、プロセッサは休眠時間５５を更新しステップ４０９、４１０のルーチンを繰り返す。一方、答えがイエスであれば、次にプロセッサは現在のモードを“２”に設定しデータ検証プロセス４１２を開始する。検証プロセスの詳細を以下に説明する。
【００２８】
0038  図４は図３のステップ４１２で実行される処理の詳細を示したフローチャートである。ステップ５０１に示すように、現在のモード欄５３を“２”に設定した後、ペアは電源オンにされ、データ検証オプション欄５６がステップ５０２で検出される。欄５６が“０”であれば、なんの動作も起こされず、プロセスはステップ４０２から繰り返される（ステップ５０３に示すように）。ステップ５０２で検出したデータ検証オプション欄が“０”でなければ、欄５７がフェッチされる。ステップ５０４、５０５に示すように、欄が“１”であれば、“検証単位”が読み出される。欄が“２”であれば、“最終チェックアドレス”欄がステップ５０５に示すようにリセットされる。制御は次にステップ５０６へ移動する。これらの各々の場合において、プロセッサ１７は、ステップ５０６に示すように、プロセスが完了するまで、ドライブのペア１００の各々からデータを読み出すことを繰り返し、互いに比較する。プロセスの完了は“検証単位”欄５７及び“最終チェックアドレス”欄５８によって決まる。ステップ５０７でエラーが検出されたら、プロセッサは“現在のモード”欄５３を“４”に設定し、ステップ５０８でエラールーチンを開始する。
【００２９】
一方、エラーが検出されなければ、ステップ５０９でプロセッサは最終チェックアドレス欄５８を更新し、結果をチェック記録５１（図１参照）に保存する。検証記録を図５に示し、以下に説明する。ステップ５１０で全ユニットがチェック済であるかを判定する。済みであれば、最終チェックアドレス欄５８がステップ５１１に示すようにリセットされ、プロセスは図３のステップ４０２へ戻る。全ユニットのチェックが終わっていなければ、プロセスの流れはステップ５１２へ進み、他のユニットのチェックが必要であるかが判定される。この判定にあたりデータ検証オプション欄がチェックされ、“１”が検出されれば、プロセスはステップ５０６から繰り返される。欄が“２”であれば、プロセスは図３のステップ４０２から始めて繰り返される。
【００３０】
0039  ブロック４１２に示すデータ検証プロセスの実行中に新しいＩ／Ｏ要求をホストコンピュータから受信した場合、このＩ／Ｏ要求の処理に優先度が与えられる。次いで、データ検証処理がプロセッサ１７及び／またはミラーペア１００がホストＩ／Ｏ処理に関わっていないときに実行される。
【００３１】
0040  図５は通常モードのミラーペアの典型的な動作の時間シーケンスを示す図である。図の中で動作が左から右に進んでいくことで時間が示されている。データ検証処理３００が完了すると休止期間３２１を設けることができる。一定の時間の後に電源オフ条件が満足されると、休眠期間３１０が終了するまでミラーペアの電源はオフにされる。この期間が過ぎるとミラーペアは電源オンされ、次のユニットのデータ検証３０１が開始する。前と同様に、このプロセスが完了すると休止期間３２２を設けることができ、休眠３１１がそれに続く。
【００３２】
0041  例えば３０２で示すように、データ検証期間が終了する前にホストコンピュータからミラーペアへのＩ／Ｏ要求を受信すると、遅延を避けるためにミラーペアが電源オンされ、Ｉ／Ｏ要求が処理される。これが完了すると、次の休止期間３２２が開始し、不活動期間３１２が続く。前と同様に、不活動期間３１２中にＩ／Ｏ要求がなければ次のユニット３０３の処理が実行され、再び休止期間３２４と休眠期間３１３が続く。図の右側に示すように、データ検証処理中にＩ／Ｏ要求を受信すると、データ検証処理はバックグラウンドで実行される。この処理は、３００、３０１、３０３の処理のようにデータ検証処理が前面で実行されるときに比べて長時間を要する。
【００３３】
0042  図６は最初に図１に示した記録５１を説明する図である。通常、記録はサービスプロセッサ５に保存され、データ検証処理の結果が保存されている。ここに示した実施例では、記録５１は対応するミラーペアの各々の検証結果に対応するエントリーを有している。個々のフォーマットは、言うまでもなく個々の実施例によって決まり、図６に示したものとは別のフォーマットを容易に採用することが可能である。図６に示す実施例は簡単な記録フォーマットで、全てのペアの結果が個々のペアのＩＤと関係なく時系列順にタイムスタンプとともに保存されている。このフォーマットではペアのＩＤと検証結果を関連付けておく必要がある。
【００３４】
0043  エントリー２００などの典型的な例には、“タイムスタンプ”と“チェック状態”のデータペアが図示のように保存されている。記録が一杯になると、例えばレジスターにある一番古い記録エントリーを削除するなどの、任意の使用したいアルゴリズムを用いて、新しい情報を保存するためにエントリーを置き換えることができる。シリンダ、セクター、あるいはその他をベースの分割検証の実施例において、“チェック状態”欄は通常は結果に加えて“最終チェックアドレス”５８を含むことになる。
【００３５】
0044  図７は図５と同様のタイミングダイアグラムである。図７ではフル稼働モードのシーケンスを説明している。前述のように、フル稼働モードは大量のアーカイブデータの高速検索が必要なときに最も役に立つ。フル稼働モードでは、かなりの時間を必要とし、ディスクの性能とアクセスタイムにかなりのインパクトがある電源オン／オフ動作を行わない。システムが規制に準拠して情報をアーカイブするために導入されたものである場合、フル稼働モードが役に立つ典型的な状況は保存された記録の監査時である。図７に示すように休眠期間がなくなっている。加えるに、図は典型的な大量のＩ／Ｏ処理を示している。図示された状況では、Ｉ／Ｏ処理３３０、３３２、３３４、３３６が休止期間３３１、３３３、３３５を間に挟んで処理されている。このモードではディスク検証処理は実行されていないことに注意を要する。
【００３６】
0045  図８はディスクアレイのデータ保護システムの他の実施例のブロック図である。本構成と図１に示した構成との基本的な違いは、ストレージコントローラ２ａが回線１１８を介して他のストレージコントローラ２ｂに接続していることにある。（図１の実施例では、ストレージコントローラはストレージコントローラを介在させることなく直接ディスクユニットに接続している。）図１に比べて図８に示す構成の利点は、実現するのが困難であるか費用がかさむシステム機能をコントローラ２ａに搭載し、コントローラ２ｂは機能の大半を有しないが実現するのに低価格である点にある。図８に示す実施例では、プロセッサ１７ａはプロセッサ１７ｂに接続する物理デバイスから変換された論理デバイスを制御する。デバイス２８は好ましくは他のマイクロプロセッサで、この構成から生ずる違いを解消するものである。図示の実施例では、ストレージコントローラ２ｂはディスクドライブの電源オンオフの機能を有し、管理表５０ｂとＳＶＰ５ｂはその機能をサポートするのに必要なものとして備えられている。
【００３７】
0046  図８の構成に関してストレージコントローラ２ｂ内のマイクロプロセッサ１７ｂがディスクユニット３を直接制御する問題が発生する可能性がある。ストレージコントローラ２ａからのＩ／Ｏ要求をコントローラ２ｂが受信すると、対応する論理デバイスがマッピングされたディスクドライブは電源オフ中であっても、電源オンされる。このように、ストレージコントローラ２ａと２ｂの組み合わせは上記と同様に動作する。
【００３８】
0047  図９は図８に示した実施例の動作ステップを説明するフローチャートである。ストレージコントローラ２ｂの存在はストレージコントローラ２ａがディスクドライブの電源オンオフの機能を持たなくて良いことを意味する。ストレージ３のこの種の管理はストレージコントローラ２ｂにより処理される。図９に示すようにシステムが６０１で初期化され、モードが“１”に設定された後、Ｉ／Ｏ要求を受信しているか判定するためにテストが行なわれる。受信していた場合、ステップ６０７に示すようにＩ／Ｏ要求が実行される。受信していなければ、休眠時間がデータ検証するのに十分な長さがあるか判定される。データ検証を実行するべきであると判定された場合、ステップ６０５が実行される。そうでなければ、ステップ６０６が実行される。制御は、ステップ６０５とステップ６０６に続いてフローチャートの前の部分に戻る。
【００３９】
0048  図１０は図４に示したものと同様のフローチャートである。図１０のフローチャートは図８に示す実施例のディスクユニット３で実行されるプロセスを説明するフローチャートである。図１０に示すように、ステップ７０１の初期化に続いて、現在のモードがステップ７０２で“０”に設定される。次にステップ７０３で休止状態がリセットされ、ステップ７０４でＩ／Ｏ要求を受信しているか判定する。受信していたら、ステップ７１０でＩ／Ｏ要求を実行し完了する。受信していなければ、ステップ７０５で休止状態が更新され、当該ディスクドライブの電源をオフするかどうかをステップ７０６で決定する。電源オフしない場合、システムはステップ７０４へ戻り、ステップを繰り返す。一方、当該ディスクドライブの電源をオフにすると決定した場合は、ステップ７０７に示すように当該ドライブとそのミラーペアは電源オフされ、ステップ７０８でＩ／Ｏ要求を受信しているかが更にテストされる。Ｉ／Ｏ要求を受信していたら、ステップ７０９に示すように、ミラーペアの電源がオンにされ、休止状態がリセットされる。
【００４０】
0049  上記は本発明の好適なる実施例を説明したものである。発明の実施例に対して、以下の請求項で明らかにされる発明の範囲を外れることなく様々な変更を加えることができることは容易に理解されるところである。
【図面の簡単な説明】
【００４１】
【図１】図１は本発明の１つの実施例を実現した典型例を示すストレージシステムのブロック図である。
【図２】図２は図１と共に使用される管理表を示す。
【図３】図３は図１に示すシステムの動作の第一の部分を示すフローチャートである。
【図４】図４は図１に示すシステムの付随動作を示すフローチャートである。
【図５】図５はディスクドライブのペアの典型的動作の時間シーケンスを示す。
【図６】図６は典型的な検証記録を示す。
【図７】図７は他の動作モードの典型的な時間シーケンスを示す。
【図８】図８は本発明の他の実施例のシステム構成を示すブロック図である。
【図９】図９はストレージコントローラ内部の動作を示すフローチャートである。
【図１０】図１０はストレージコントローラ内部の付随動作を示す。
【符号の説明】
【００４２】
１    ホストコンピュータ
２    ストレージコントローラ
３    ディスクユニット
４    共有メモリ
５    チェック記録
６    コンソール
７    管理サーバ
１０    マイクロプロセッサ
１７    マイクロプロセッサ
３０    管理ソフトウェア
５０    管理表
【図１】
2006004408.tif 000003
【図２】
2006004408.tif 000004
【図３】
2006004408.tif 000005
【図４】
2006004408.tif 000006
【図５】
2006004408.tif 000007
【図６】
2006004408.tif 000008
【図７】
2006004408.tif 000009
【図８】
2006004408.tif 000010
【図９】
2006004408.tif 000011
【図１０】
2006004408.tif 000012
【外国語明細書】
2006004408.tif 000013
2006004408.tif 000014
2006004408.tif 000015
2006004408.tif 000016
2006004408.tif 000017
2006004408.tif 000018
2006004408.tif 000019
2006004408.tif 000020
2006004408.tif 000021
2006004408.tif 000022
2006004408.tif 000023
2006004408.tif 000024
2006004408.tif 000025
2006004408.tif 000026
2006004408.tif 000027
【図１】
2006004408.tif 000028
【図２】
2006004408.tif 000029
【図３】
2006004408.tif 000030
【図４】
2006004408.tif 000031
【図５】
2006004408.tif 000032
【図６】
2006004408.tif 000033
【図７】
2006004408.tif 000034
【図８】
2006004408.tif 000035
【図９】
2006004408.tif 000036
【図１０】
2006004408.tif 000037