JP4076316B2 - 不揮発性キャッシュメモリを用いたデータ書き込みシステム - Google Patents
不揮発性キャッシュメモリを用いたデータ書き込みシステム Download PDFInfo
- Publication number
- JP4076316B2 JP4076316B2 JP2000273336A JP2000273336A JP4076316B2 JP 4076316 B2 JP4076316 B2 JP 4076316B2 JP 2000273336 A JP2000273336 A JP 2000273336A JP 2000273336 A JP2000273336 A JP 2000273336A JP 4076316 B2 JP4076316 B2 JP 4076316B2
- Authority
- JP
- Japan
- Prior art keywords
- storage
- data
- host processor
- control device
- cache memory
- 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
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の属する技術分野】
本発明は、ホストプロセッサ、複数の大規模記憶装置、前記ホストプロセッサと前記記憶装置とを結合するプロセッサ及び不揮発性キャッシュメモリを有する記憶制御装置、を備えたデータ書き込みシステムにおける高速なキャッシュメモリの利用方式に関する。
【0002】
【従来の技術】
ホストプロセッサ上のデータベースシステム等は、システムダウン等の回復処理の為に、トランザクション毎にロギングデータが採取されるが、ロギングデータが不揮発性の記憶装置に格納されるまで、次のトランザクションが処理されない。ディスクの書き込み動作は、ディスクの回転数に限界がある為にホストプロセッサの動作よりも遅いため、米国特許5,297,258号明細書や米国特許5,586,291号明細書に記載の様にディスクに書き込む前にディスク制御装置内の高速書き込み可能な不揮発性キャッシュメモリに書き込んでから、データベースシステムは、次のトランザクション処理に進む。
【0003】
しかし、ディスクの動作が遅い為に、当該不揮発性キャッシュメモリ領域からディスクに書き込む時間がかかるために、当該領域がオーバフローすることになり、ディスクに書き込まれるまでホストプロセッサが待ち状態になり、次のトランザクションを処理できなくなる。また、オーバフローさせないためには、不揮発性キャッシュメモリのサイズよりも少ないデータ量だけディスクに書き込む様に調節する必要があるが、他のディスク書き込み量によって不揮発性キャッシュメモリの空きがなくなる可能性があり、調整が困難であり、必要以上に不揮発性キャッシュメモリを用意する必要があった。
【0004】
また、ロギングデータ等は不揮発性キャッシュメモリから一度ディスク記憶装置に書かれた後に再度ホストプロセッサによってデータ圧縮されて別の保管用ディスク記憶装置あるいはテープ記憶装置に格納される為、前記ディスク記憶装置が再度利用可能になるために時間がかかり、多くのディスク記憶装置が必要であった。
【0005】
一方、特開平06−083781号公報に記載の様にデータベースのレコードを一つの大規模な不揮発性メモリ領域に格納する方法があるが、ディスク制御装置とは別に不揮発性メモリが別個必要になり、メモリ領域が一つのためにディスクに書き込む時点で、ディスク制御装置のキャッシュメモリの使用率やサイズによって、書き込み待ちが発生する問題があった。また、ディスクに格納する場合に当該ディスクのディスク制御装置のキャッシュしか使用できず、他のディスク制御装置内のキャッシュ領域に未使用領域がある場合でもこれを使用できなかった。
【0006】
また、米国特許5,848,241号明細書は、ディスク記憶装置とホストプロセッサの間にリソース共有機構をもつ方法を記載しているが、ディスク制御装置の不揮発性キャッシュメモリが不足するとディスクへの書き込みが遅くなり、リソース共有機構が書き込み完了待ちで待たされることになる。
【0007】
【発明が解決しようとする課題】
データベースシステム等の動作するホストプロセッサの高速化に比べ、ディスクのアクセスタイムは、ディスクが回転体であることから相対的に遅くなってきている。また、一般的に大規模データ記憶装置は高すぎないコストで記録密度を高くするため、アクセスタイムは遅くなる。
【0008】
また、ホストプロセッサ上のデータベースシステム等はトランザクション毎にシステムダウン等の回復処理のためにロギングデータを採取しているが、回復処理の複雑化を回避するため、ロギングデータの採取が終わる迄、次のトランザクションを処理できない。またロギングデータだけでなく、大量のデータベースレコードを処理する場合にも同様な問題が発生する。
【0009】
そこで、常により高速な不揮発性記憶装置にデータを格納して、データの格納処理時間を短縮し、複数ある記憶制御装置内にある高速不揮発性キャッシュメモリを有効利用して、ホストプロセッサが高速にトランザクションを処理できるようにすることが本発明の課題である。具体的には、ディスク制御装置に複数の不揮発性キャッシュメモリを備えさせて連続したトランザクション処理を実行することを可能とし、また、複数個のディスク制御装置のそれぞれの不揮発性キャッシュメモリを各ディスク制御装置の管理の元で利用可能とすることで、ホストプロセッサがデータ処理を待ち時間無く迅速に実行できることが本発明の目的である。
【0010】
【課題を解決するための手段】
前記課題を解決するために、本発明は主として次のような構成を採用する。
【0011】
ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記ホストプロセッサは、書き込み先である記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合に、他の記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリを一時的に利用するデータ書き込みシステム。
【0012】
また、ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置の内の一つの記憶制御装置は、二つ以上の不揮発性キャッシュメモリを有し、
前記ホストプロセッサが記憶装置書き込み不要フラグの付いた書き込み要求を前記一つの記憶制御装置に送ると、前記一つの記憶制御装置は前記不揮発性キャッシュメモリの内の一つのメモリにデータを書き込み、前記不揮発性キャッシュメモリの一つのメモリが満杯となると前記ホストプロセッサにデータの退避要求を送り、
前記ホストプロセッサによる記憶装置書き込み不要フラグの付いた次の書き込み要求に対して前記不揮発性キャッシュメモリの他のメモリにデータ書き込みを行うデータ書き込みシステム。
【0013】
また、ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
データの書き込み先である記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリに、書き込みデータ量に足りる空き領域がない場合に、他の記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリを一時的に利用するとともに、
前記複数の記憶制御装置の不揮発性キャッシュメモリの共同利用の各種制御を記憶制御装置同士で制御するデータ書き込みシステム。
【0014】
また、ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置の内の特定の記憶制御装置は、二つ以上の不揮発性キャッシュメモリの特定領域を有し、
記憶装置への書き込み不要フラグの付いた前記特定領域への書き込み要求がホストプロセッサから前記特定の記憶制御装置に送られる場合、前記特定の記憶制御装置は、前記一つの特定領域にホストプロセッサからのデータを書き込みし、
前記一つの特定領域全体が使用されると前記特定の記憶制御装置は、前記ホストプロセッサにデータの退避要求を送り、前記ホストプロセッサが前記一つの特定領域のデータを読み込んで他の記憶装置に格納要求を出し、前記他の記憶装置への格納終了後に前記一つの特定領域を再度書き込み可能となし、
一方、前記ホストプロセッサは新たに記憶装置への書き込み不要フラグの付いた書き込み要求を前記一つの特定領域とは異なる他の不揮発性キャッシュメモリの特定領域に送り、前記特定の記憶制御装置が前記ホストプロセッサからのデータを前記他の特定領域に書き込みするデータ書き込みシステム。
【0015】
また、ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置のそれぞれに接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置同士を接続ケーブルで結合し、
前記ホストプロセッサの処理結果を前記記憶装置に更新する際に格納先の記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合、当該記憶制御装置とは別の記憶制御装置の不揮発性キャッシュメモリの空き領域を前記接続ケーブルを経由して入手して別の記憶制御装置に書き込み要求をして不揮発性キャッシュメモリへ書き込み前記別の記憶制御装置に結合した記憶装置に一時的に格納し、
前記当該記憶制御装置は変更した格納先を前記当該記憶制御装置内の不揮発性キャッシュメモリに記憶し、
前記ホストプロセッサが前記当該記憶制御装置にデータ読み込み要求すると、前記当該記憶制御装置は前記不揮発性キャッシュメモリ内の現在の格納先を確認し、前記別の記憶制御装置の不揮発性キャッシュメモリから変更データを読み込み、
前記書き込みデータ量に足りる空き領域のなかった不揮発性キャッシュメモリ領域に空き領域ができると前記別の記憶制御装置は、前記別の記憶制御装置に結合した記憶装置に一時的に格納されていたデータを読み込んで更新元の記憶制御装置に書き込み要求し、前記更新元の記憶制御装置への書き込み完了後に一時的に格納されていたデータを消去し、
前記当該記憶制御装置は前記変更した格納先を消去するデータ書き込みシステム。
【0016】
【発明の実施の形態】
本発明の種々の実施形態に係る高速データ書き込みシステムについて、図面を用いて以下説明する。まず、本発明の概要を説明すると、ホストプロセッサ上のデータベースシステム等では、トランザクションの結果やロギングデータが出力されるが、システムダウン等の回復処理の為に不揮発性記憶装置に格納される迄、次のトランザクションが処理されない。このような高速レスポンスが要求されるロギングデータの様な書き込み目的のデータについて、記憶制御装置内の高速な不揮発性メモリ領域に一時的にデータを蓄積させ、ディスク等の低速な記憶装置に書き込まず、当該メモリ領域全体が使用された時に他の記憶装置に退避させ、再度当該メモリ領域を使用可能にする。ここで、退避させるまで時間がかかるので、二つ以上の不揮発性キャッシュメモリ領域を用意しておき、ホストプロセッサがディスク等の記憶装置への書き込みの必要性を記憶制御装置に書き込み時に指示することで、他のデータの読み書きと区別し、高速に書き込み可能にしようとするものである。
【0017】
また、データベース内の読み書きされるレコードデータについては、書き込み時間の短縮のために複数ある記憶制御装置内の高速な不揮発性キャッシュメモリで空いている領域を探して一時的に格納し、後に本来の低速な記憶装置に書き込むことでプロセッサの書き込み待ち時間を低減させようとするものである。
【0018】
以下、本発明の種々の実施形態について具体的に説明する。
【0019】
「実施形態1」
図1において、高速データ書き込みシステムは、ホストプロセッサ101と、ディスク記憶装置128,130,132と、ホストプロセッサとディスク制御装置を結合するプロセッサ113,117,121を持ったディスク制御装置112,116,120と、を備えており、ホストプロセッサ101上にデータベースサブシステム102があり、制御プロセッサ103とデータを格納するバッファ領域106〜108を使用してデータの書き込みを行う。
【0020】
ディスク制御装置120内に二つ以上の不揮発性キャッシュメモリの特定領域122及び123を持ち、ホストプロセッサ101がディスク書き込み不要フラグ(ディスクに即時に書き込まなくても良い旨のフラグ)の付いた書き込み要求をディスク制御装置120に送ると、当該ディスク制御装置120は不揮発性キャッシュメモリの特定領域122に、ディスク132には書き込まずにホストプロセッサ101からのデータを前からあるデータに追加書き込みし、一つの当該特定領域122全体が使用されると、ディスク制御装置120は、ホストプロセッサ101にデータの退避要求を送る。そうすると、ホストプロセッサ101が前記特定領域122とは異なる特定領域123にディスク書き込み不要フラグのついた書き込み要求をディスク制御装置120に送り、前記特定領域122とは異なる不揮発性キャッシュメモリの特定領域123にホストプロセッサ101からのデータを追加書き込みする。
【0021】
ホストプロセッサ101が前記の使用済みの不揮発性キャッシュメモリの特定領域122のデータを退避用データバッファ104あるいは105に書き込み、その後、退避用データバッファ104あるいは105内のデータを必要があれば圧縮して別のディスク制御装置112あるいは116に書き込み要求する。書き込み要求を受けたディスク制御装置112あるいはディスク制御装置116は、制御プロセッサ113及び117によって、不揮発性キャッシュメモリ114あるいは118にデータを一旦書き込み、ホストプロセッサ101に書き込み終了を伝達し、ホストプロセッサ101は不揮発性キャッシュメモリ領域122を再度使用可能にする。書き込まれた退避データはディスク記憶装置128あるいは130に保管データ129あるいは131として記憶される。
【0022】
ホストプロセッサ101の処理速度に比べディスク記憶装置128及び130への記憶速度は遅いために、不揮発性キャッシュメモリ領域122、123及び退避用データバッファ104及び105は2個以上用意しておく。即ち、図1の例で、二つの不揮発性キャッシュメモリに対応する二つの退避用バッファの内のバッファ104のデータを必要時にディスク記憶装置128に格納している間に、バッファ105とこれに対応する不揮発性キャッシュメモリの特定領域123は書き込み可能となっていて、ホストプロセッサ101はトランザクション処理ができる態勢となっている。
【0023】
ここで、一例として挙げたディスク書き込み不要フラグのついた書き込み要求の対象となるデータは、一例としてロギングデータ等が挙げられる。データベースの読み書きと同時に発生するログは定常的に大量に書き込みが必要となり、これが性能のボルトネックとなる。
【0024】
本発明の実施形態は、これらのデータを一時的にキャッシュに置いておき、時間をかけてディスクに書き込むことで、書き込み待ち時間を削減可能とすることを特徴とするものである。また、今後フラッシュメモリが普及してきても、恐らく高速メモリと低速メモリの価格に差があって階層的なメモリ構成のため、本発明は、書き込み待ち時間を回避する有効な構成となり得る。
【0025】
「実施形態2」
図2において、高速データ書き込みシステムは、ホストプロセッサ201と、テープ記憶装置227と、ディスク記憶装置229と、これらの記憶装置とホストプロセッサを結合するプロセッサ213及び217を有したテープ制御装置212及びディスク制御装置216と、ホストプロセッサ201に結合する不揮発性メモリ制御装置220と、を備えており、ホストプロセッサ201上にデータベースサブシステム202があり、制御プロセッサ203とデータを格納するバッファ領域206〜208を使用してデータの書き込みを行う。
【0026】
不揮発性メモリ制御装置220内に二つ以上の不揮発性キャッシュメモリの特定領域222,223を持ち、ホストプロセッサ201がバッファ206〜208にあるデータを不揮発性メモリ制御装置220に送ると、当該不揮発性メモリ制御装置220は不揮発性キャッシュメモリの特定領域222にデータを書き込み、一つの当該特定領域222全体が使用されると、不揮発性メモリ制御装置220は、ホストプロセッサ201にデータの退避要求を送る。そうすると、ホストプロセッサ201が前記特定領域222とは異なる特定領域223への書き込み要求を不揮発性メモリ制御装置220に送り、前記特定領域222とは異なる不揮発性キャッシュメモリの特定領域223にホストプロセッサ201からのデータを書き込み、ホストプロセッサ201が前記の使用済みの不揮発性キャッシュメモリの特定領域222のデータを複数の退避用データバッファ204あるいは205に読み込む。
【0027】
その後、退避用データバッファ204あるいは205内のデータを必要があれば圧縮して別の記憶制御装置212あるいは216に書き込み要求する。書き込み要求を受けたテープ制御装置212あるいはディスク制御装置216は制御プロセッサ213及び217によって、不揮発性キャッシュメモリ214あるいは218にデータを一旦書き込み、ホストプロセッサ201に書き込み終了を伝達し、ホストプロセッサ201は、不揮発性キャッシュメモリ領域222を再度使用可能にする。
【0028】
書き込まれた退避データ214あるいは218はテープ記憶装置227あるいはディスク記憶装置229に保管データ228あるいは230として記憶される。ホストプロセッサ201の処理速度に比べ記憶装置227及び229への記憶速度は遅いために、不揮発性キャッシュメモリ特定領域222,223及び退避用データバッファ204〜205は2個以上用意する。また、テープ記憶装置はディスク記憶装置よりも低速なため、別途退避用データバッファ204あるいは205から直接書き込むのでなく、一度ディスク記憶装置に格納した後にテープ記憶装置に複写することもできる。
【0029】
本実施形態2では、本発明の実施形態1との対比で、不揮発性メモリ制御装置220がそれに付属するディスク記憶装置を設置せずに、二つ以上の不揮発性キャッシュメモリを設置して常にメモリを使用可能状態としておき、トランザクション処理を待ち時間無く実行できるものである。
【0030】
「実施形態3」
データ読み込みでは、通常、不揮発性領域は使用されずに、揮発性領域が使われる。データ書き込み時のみ、データが消えない様に不揮発性が使用される。通常、多くても書き込みは全体(ディスクへの入出力処理)の20%以下である。どこにもキャッシュの空きがないと、書き込みを待たされることとなる。更に、一般的には、不揮発性領域の使用率が100%にならない様に、読み書きの比率を考慮してユーザがサイズを設定する。また、キャッシュの使用量と容量は常にモニタ可能であり、書き込もうとしているデータが不揮発性キャッシュに入るかどうか、チェックできる。ここでチェックした結果を以下の説明では使用率として表現する。
【0031】
図3に示す本発明の実施形態3において、高速データ書き込みシステムは、ホストプロセッサ301,332と、ディスク記憶装置327,329と、ホストプロセッサと記憶装置を結合するプロセッサ313,317を有したディスク制御装置312,316と、複数のホストプロセッサ301,332を結合する不揮発性メモリ制御装置320と、を備えており、ホストプロセッサ301あるいは332上にデータベースサブシステム302あるいは333があり、制御プロセッサ303あるいは334とデータを格納するバッファ領域306〜308あるいは339〜341を使用してデータの読み書きを行う。
【0032】
ディスク327にあるデータをホストプロセッサ301が読み込み、データを更新して書き込む時、ホストプロセッサは不揮発性キャッシュメモリ314の使用率をディスク制御装置312から入手し使用率が低ければそのままディスク制御装置312に書き込み要求をする。メモリ314の使用率が高ければ、他の不揮発性キャッシュメモリ318の使用率をディスク制御装置316から入手し、不揮発性キャッシュメモリ318の使用率の方が高ければディスク制御装置312に書き込み要求し、メモリ318の使用率の方が低ければ必要であれば書き込み不要フラグ(ディスク記憶装置329への書き込み不要フラグ)をつけてディスク制御装置316に書き込み要求する。
【0033】
この時、ホストプロセッサ301が、バッファ306〜308にあるデータをディスク制御装置316に送ると、当該ディスク制御装置316は、不揮発性キャッシュメモリの特定領域318にデータを書き込み、ホストプロセッサ301に書き込み終了を伝達し、ホストプロセッサ301は不揮発性メモリ制御装置320に書き込み先変更を通知し(読み込んだディスク327から書き込んだディスク329への書き込み先変更通知)、これを不揮発性キャッシュメモリ322に記憶する。
【0034】
他のホストプロセッサ332が、データをディスク制御装置312あるいは316から読み込んだ後には、不揮発性キャッシュメモリ322にデータの格納先が変更されているか確認し、もし先にホストプロセッサ301が同じデータを変更し、別の不揮発性キャッシュメモリ318に格納していたならば、再度変更先のディスク制御装置316から読み込み直す。ホストプロセッサ301は不揮発性キャッシュメモリ314に格納領域が確保できた時に、一時的に格納されていた不揮発性キャッシュメモリ318内のデータを読み込んでディスク制御装置312にディスク書き込み必要フラグ(ディスク記憶装置327への書き込み必要フラグ)を付けて書き込み要求をし、不揮発性キャッシュメモリ314に書き込み完了後にホストプロセッサ301は不揮発性メモリ制御装置320へ格納先変更を通知する。不揮発性キャッシュメモリ314に書き込まれたデータはディスク記憶装置327に保管データ328として記憶される。
【0035】
本発明の実施形態3では、ホストプロセッサが複数個存在し、その複数個のホストプロセッサがディスク制御装置並びにディスク記憶装置を共有して使用する場合、いわゆるSAN(Strage Area Network)又はNAS(Network Attached Storage)の環境下でディスク制御装置の不揮発性キャッシュメモリを共有して有効且つ効率的に活用することを特徴とするものである。ここにおいて、ホストプロセッサは必ずしも複数存在することが前提ではなく、要は不揮発性キャッシュメモリをディスク制御装置同士で共有していることが前提となるのである。読み書きされるデータの書き込みの際に、読み込まれたディスクに対応するディスク制御装置のキャッシュメモリに空き領域がなければ、他のディスク制御装置の不揮発性キャッシュメモリの空き領域に書き込むべく、他のディスク制御装置に対しディスクへの書き込み不要を指示して書き込み、書き込み先の変更を通知する。元の不揮発性キャッシュメモリ領域に空き領域ができてからホストプロセッサがディスク書き込みを指示して本来のディスクに格納し、再度書き込み先の変更を通知するものである。
【0036】
「実施形態4」
図4に示す本発明の実施形態4において、高速データ書き込みシステムは、ホストプロセッサ401,435と、ディスク記憶装置431,432と、ホストプロセッサとディスク記憶装置を制御するプロセッサ417,421を有したディスク制御装置416,420と、ホストプロセッサ401内に前記ディスク制御装置と複数のホストプロセッサ401,435を結合する不揮発性メモリ制御装置424の入出力を制御する入出力プロセッサ443と、を備えており、ホストプロセッサ401及び435上にデータベースサブシステム402,409及び436があり、制御プロセッサ403,410あるいは437とデータを格納するバッファ領域406,407,413,414あるいは440〜442を使用してデータの読み書きを行う。
【0037】
ディスク431にあるデータを制御プロセッサ403が読み込み、データを更新して書き込む時、プロセッサ403は入出力プロセッサ443に書き込みを要求し、入出力プロセッサ443が不揮発性キャッシュメモリ418の使用率をディスク制御装置416から入手し使用率が低ければそのままディスク制御装置416に書き込み要求をし、使用率が高ければ、他の不揮発性キャッシュメモリ422あるいは427の使用率をディスク制御装置420あるいは不揮発性メモリ制御装置424から入手し、不揮発性キャッシュメモリ418の使用率の方が低ければディスク制御装置416に書き込みを要求する。不揮発性キャッシュメモリ422の使用率の方が低ければ書き込み不要フラグ(ディスク記憶装置432への書き込み不要フラグ)をつけてディスク制御装置420に書き込み要求をし、不揮発性キャッシュメモリ427の使用率の方が低ければ不揮発性メモリ制御装置424に書き込み要求をする。
【0038】
例えば、制御プロセッサ403がバッファ406,407にあるデータ(ディスク431の読み込みデータ)を入出力プロセッサ443に要求してディスク制御装置420に送ると、当該ディスク制御装置420は不揮発性キャッシュメモリの特定領域422にデータを書き込み、制御プロセッサ403に書き込み終了を伝達し、制御プロセッサ403は不揮発性メモリ制御装置424に書き込み先変更を通知し、書き込み先管理用不揮発性キャッシュメモリ426に記憶する。他の制御プロセッサ410あるいは437がデータを入出力プロセッサ443に要求してディスク制御装置416から読み込んだ後には、書き込み先管理用不揮発性キャッシュメモリ426にデータの格納先が変更されているか確認し、もし先に制御プロセッサ403が同じデータを変更し、別の不揮発性キャッシュメモリ422に格納していたならば、再度変更先のディスク制御装置420から読み込み直す。
【0039】
入出力プロセッサ443は、不揮発性キャッシュメモリ418に格納可能領域が確保できた時に、一時的に格納されていた不揮発性キャッシュメモリ422内のデータを読み込んでディスク制御装置416にディスク書き込み必要フラグを付けて書き込み要求をし、不揮発性キャッシュメモリに書き込み完了後に入出力プロセッサ443は、不揮発性メモリ制御装置424へ再度格納先変更を通知する。不揮発性キャッシュメモリ418に書き込まれたデータはディスク記憶装置431に保管データ433として記憶される。
【0040】
「実施形態5」
図5に示す本発明の実施形態5において、高速データ書き込みシステムは、ホストプロセッサ501と、ディスク記憶装置530,532,534と、ホストプロセッサとディスク記憶装置を結合するプロセッサ513,518,523を有するディスク制御装置512,517,522と、を備えており、前記複数のディスク制御装置同士が接続ケーブル516,521で接続されているとともに、ホストプロセッサ501上にデータベースサブシステム502があり、制御プロセッサ503とデータを格納するバッファ領域506〜508を使用してデータの読み書きを行う。
【0041】
ディスク記憶装置530にあるデータをホストプロセッサ501が読み込み、データを更新して書き込む時、不揮発性キャッシュメモリ514に格納領域が不足している場合、ディスク制御装置512以外の不揮発性キャッシュメモリ519の空き領域をディスク制御装置517から接続ケーブル516を経由して入手し、不揮発性キャッシュメモリ519の空き領域の方が少なればディスク記憶装置530に書き込み、大きければディスク制御装置517に接続ケーブル516を経由して書き込み要求する。この時、当該ディスク制御装置517は不揮発性キャッシュメモリ領域519にデータを書き込み、記憶装置532に一時的に格納し、記憶制御装置512に書き込み終了を伝達し、記憶制御装置512は、不揮発性キャッシュメモリ領域514に書き込み先変更を記憶する。
【0042】
ホストプロセッサ501が、当該データをディスク制御装置512から読み込み要求すると、記憶制御装置512は、不揮発性キャッシュメモリ514にデータの格納先が変更されているか確認し、もし、別の記憶制御装置517に格納してあるならば、変更先のディスク制御装置517から読み込み、その結果をホストプロセッサ501に伝達する。
【0043】
記憶制御装置517は、不揮発性キャッシュメモリ514に格納可能領域が確保できた時に、一時的に記憶装置532に格納されていたデータ533を読み込んでディスク制御装置512に書き込み要求をし、不揮発性キャッシュメモリ514に書き込み完了後に一時格納されていたデータを消去し、ディスク制御装置512は、前記不揮発性キャッシュメモリ514内にある変更格納先を消去する。不揮発性キャッシュメモリ514に書き込まれたデータは、本来のディスク記憶装置530に保管データ531として記憶される。
【0044】
本実施形態は、複数のディスク制御装置同士が各ディスク制御装置に装着されている不揮発性キャッシュメモリを相互利用できるようになっているとともに、更に、ディスク制御装置同士を結ぶ接続ケーブルによってそれぞれの不揮発性キャッシュメモリの管理制御をディスク制御装置が実行しているものである。
【0045】
「実施形態6」
図6に示す本発明の実施形態6は、複数のディスク制御装置612,616,620が、2つの不揮発性記憶制御装置637,642に接続され、不揮発性キャッシュメモリ639,644及び645が共有されている単一のホストプロセッサシステムの構成である。単一のプロセッサシステムは、1つのホストプロセッサ601と、2つの不揮発性記憶制御装置637,642と、ディスク制御装置に接続された複数のディスク記憶装置628,630,632と、を備えている。
【0046】
記憶制御装置612、616,620は、プロセッサ613,617,621と、不揮発性キャシュメモリ614,618,622,623と、揮発性キャシュメモリ615,619,624と、から成っている。ホストプロセッサ601では、データベースサブシステム602は、ディスク記憶装置628,630,632内のデータ629,631,633を更新するために、プロセッサ603及び一時的に格納されるバッファ606,607,608を使用する。
【0047】
例えば、ホストプロセッサ601がデータをディスク記憶装置628に書く時、もし不揮発性キャシュメモリ614に十分な格納領域があれば、ディスク制御装置612は不揮発性キャシュメモリ614に書き込む。もしも、不揮発性キャシュメモリ614に十分な格納領域が確保できないならば、ディスク制御装置612が、書き込み要求を不揮発性記憶制御装置637と642に送り、他の不揮発性キャシュメモリ618,622,623,639,または644に十分な格納領域があれば、不揮発性記憶制御装置637または642が使用可能な不揮発性キャシュメモリの中の一つ、例えば618にデータを書き込む。もし必要であれば、ディスク装置に書くことはしない。
【0048】
その後、不揮発性記憶制御装置637または642は書き込み完了をディスク制御装置612に送り、ホストプロセッサ601は書き込み完了をディスク制御装置612から受け取る。不揮発性記憶制御装置637または642は、不揮発性キャシュメモリ614に十分な格納領域があったり、あるいは、ホストプロセッサ601の処理量が小さくなった時にディスク制御装置616から、更新されたデータを、元々格納されていたディスク記憶装置628に移動させる。それから、ディスク制御装置616は、不揮発性記憶制御装置637または642から書き込み完了を受け取った後に、一時的に書き込まれたキャッシュエリアを再使用可能にする。
【0049】
別の構成例は、ホストプロセッサ601が、データを、バックアップのための同一のデータを持っているディスク記憶装置628または630に書く時で、ホストプロセッサ601は、不揮発性キャシュメモリ614と618に書き込み可能な領域をもっている。もし両方の不揮発性キャシュメモリ614と618に十分な格納領域があるならば、ホストプロセッサ601は612と616に書き込む要求を出す。もし、例えば不揮発性キャシュメモリ614に十分な格納領域がなければ、プロセッサ601は、ディスク制御装置616に書き込み要求をだし、ディスク制御装置616はデータを不揮発キャシュメモリ618に書く。ホストプロセッサ601はディスク制御装置616から書き込み完了を受け取る。ホストプロセッサ601は、不揮発性キャシュメモリ614に十分な格納領域ができたり、ホストプロセッサ601の処理量が低くなった時、ディスク装置628に、ディスク制御装置616からデータをコピーする。その後、ホストプロセッサ601は、不揮発性キャシュメモリ614または618内のより小さい空きしかなかった不揮発性使用済み領域を開放する。
【0050】
「実施形態7」
図7に示す実施形態7は、図6に示す単一のホストプロセッサを複数のホストプロセッサとする場合である。2つの高速結合装置737,742が、図6の不揮発性メモリ制御装置637,642として使われる。
【0051】
「実施形態8」
図8は図7の高速結合装置において、一時的にデータを格納するだけでなく、冗長にデータを保持するためにディスク装置849,850を持たせたものである。
【0052】
前述した本発明の全ての実施形態の内容において、各ホストプロセッサが使用可能な不揮発性キャッシュメモリ領域は、事前にユーザが登録しておくことが必要であり、その登録数を増やすことで共有可能な領域を増やすことが可能となり、本発明の機能乃至作用が実現可能となる。
【0053】
また、前記本発明の実施形態は、ストレージエリアネットワークの環境下でも実現可能でありその効果は大きい。上記実施形態で述べたホストプロセッサとは、大型計算機をはじめ、ワークステーション、サーバー、PC他ストレージを接続できる全てのプロセッサ装置を対象とすることが可能である。
【0054】
以上説明したように、本発明の実施形態は次のような構成、機能乃至作用を奏するものを含むものである。
【0055】
ホストプロセッサ上のデータベースシステム等では、トランザクションの結果やロギングデータを記憶装置に格納するが、システムダウン等の回復処理のために不揮発性記憶装置に格納される迄、次のトランザクションが処理されない。こういった高速なレスポンスが要求され、消失させてはならないデータについて、ディスク制御装置内の複数の高速な不揮発性メモリ領域に一時的にデータを常駐させ、ディスク等の低速記憶装置に書き込まず、当該不揮発性メモリ領域全体が使用された時にホストプロセッサへディスク制御装置が格納先の変更を伝達し、ホストプロセッサが不揮発性メモリ内の纏まったデータを別のディスク記憶装置に記録させ、再度当該不揮発性メモリ領域を使用可能にする。
【0056】
ディスクに記録させるまで時間がかかるので、二つ以上の高速な不揮発性メモリ領域を前記ディスク制御装置に用意しておき、ホストプロセッサに前もって使用可能な不揮発性キャッシュメモリ領域を複数登録しておき、順にこれらを利用し、常に不揮発性キャッシュメモリが使用可能な状態にしておく。
【0057】
データベース内のレコードデータについては当該ディスク制御装置の不揮発性キャッシュメモリに空きがなければ、ホストプロセッサが複数あるディスク制御装置の不揮発性キャッシュメモリの空いている領域に一時的に格納し、後に当該ディスク制御装置に書き込む。一時的に格納する領域はバックアップバッテリーなどにより不揮発性メモリであればディスク記憶装置は必要なく、ホストプロセッサが不揮発性メモリ領域にあるデータを読み込み、圧縮した後、ディスク、テープ等の補助記憶装置に格納し、これが終了すると、前記不揮発性メモリ領域を再度使用可能にする。
【0058】
書き込み目的のデータについては、ディスク制御装置内の二つ以上の不揮発性キャッシュメモリ領域に一時的にデータを蓄積させ、ディスクに書き込まず、当該領域全体が使用された時にホストプロセッサが当該データを必要があれば圧縮し、他のディスク制御装置あるいはテープ制御装置等の補助記憶制御装置内の不揮発性キャッシュメモリに書き込み要求を出し、書き込みさせる迄に時間がかかるので、二つ以上の不揮発性メモリ領域を用意しておき、書き込みが完了すると再度前記領域を使用可能にする。
【0059】
読み書きされるデータの書き込みについてはディスク制御装置内のキャッシュメモリでは全データを格納できず、ディスクに書き込む必要があるので、ホストプロセッサが当該ディスク制御装置から不揮発性キャッシュメモリ領域の空き領域の大きさを入手し、空き領域があればディスク書き込みを指示し、空き領域がなければ他のディスク制御装置で不揮発性キャッシュメモリの空き領域のあるディスク制御装置に対しディスクへの書き込み不要を指示して書き込む。この際他のホストプロセッサに対し、書き込み先の変更を伝達し、元の不揮発性キャッシュメモリ領域に空き領域ができてからホストプロセッサがディスク書き込みを指示して本来のディスクに格納し、他のプロセッサに再度書き込み先の変更を伝達する。また、一時的に格納する領域にはバックアップバッテリーがあればディスクは必要ない。
【0060】
【発明の効果】
複数ある高速かつ高価な不揮発性キャッシュメモリを有効利用し、キャッシュメモリに比べて時間のかかる大規模記憶装置への書き込みをホストプロセッサが待たない様にすることで、高速化するホストプロセッサを有効利用できる。
【図面の簡単な説明】
【図1】本発明の実施形態1に係る高速データ書き込みシステムであって、ホストプロセッサ、ディスク制御装置及びディスク記憶装置についての構成並びに接続を示す図である。
【図2】本発明の実施形態2に係る高速データ書き込みシステムであって、ホストプロセッサ、テープ制御装置、磁気テープ、ディスク制御装置及びディスク記憶装置についての構成並びに接続を示す図である。
【図3】本発明の実施形態3に係る高速データ書き込みシステムであって、複数のホストプロセッサ、ディスク制御装置、ディスク記憶装置及び不揮発性メモリ制御装置についての構成並びに接続を示す図である。
【図4】本発明の実施形態4に係る高速データ書き込みシステムであって、複数のホストプロセッサ、ディスク制御装置、ディスク記憶装置及び入出力プロセッサについての構成並びに接続を示す図である。
【図5】本発明の実施形態5に係る高速データ書き込みシステムであって、ホストプロセッサ、ディスク制御装置及びディスク記憶装置についての構成並びに接続を示す図である。
【図6】本発明の実施形態6に係る高速データ書き込みシステムであって、ホストプロセッサ、ディスク制御装置、ディスク記憶装置及び不揮発性記憶制御装置についての構成並びに接続を示す図である。
【図7】本発明の実施形態7に係る高速データ書き込みシステムであって、図6の実施形態6におけるホストプロセッサが複数個の場合の図である。
【図8】本発明の実施形態8に係る高速データ書き込みシステムであって、図7の高速結合装置において、一時的にデータを格納するだけでなく、冗長にデータを保持するのディスク装置を備えた構成並びに接続を示す図である。
【符号の説明】
101…ホストプロセッサ、102…データベースサブシステム、103,113,117,121…制御プロセッサ、104…退避用データバッファ1、105…退避用データバッファ2、106…データバッファ1、107…データバッファ2、108…データバッファ3、109,110,111,125,126,127…接続ケーブル、112,116,120…ディスク制御装置、114,118…不揮発性キャッシュメモリ、115,119,124…揮発性キャッシュメモリ、122…不揮発性キャッシュメモリ領域1、123…不揮発性キャッシュメモリ領域2、128,130,132…ディスク記憶装置、129,131,133…保管データ、
201…ホストプロセッサ、202…データベースサブシステム、203,213,217,221…制御プロセッサ、204…退避用データバッファ1、205…退避用データバッファ2、206…データバッファ1、207…データバッファ2、208…データバッファ3、209,210,211…接続ケーブル、212,216…ディスク制御装置、214,218,224…不揮発性キャッシュメモリ、215,219…揮発性キャッシュメモリ、220…不揮発性メモリ制御装置、222…不揮発性キャッシュメモリ特定領域1、223…不揮発性キャッシュメモリ特定領域2、225,226…接続ケーブル、227…磁気テープ等の補助記憶装置、228,230…保管データ、229…ディスク記憶装置、
301…ホストプロセッサ1、302…データベースサブシステム1、303,313,317,321,334…制御プロセッサ、304…退避用データバッファ1、305…退避用データバッファ2、306…データバッファ1、307…データバッファ2、308…データバッファ3、309,310,311,325,326,331,335,338…接続ケーブル、312,316…ディスク制御装置、314,318…不揮発性キャッシュメモリ、315,319,324…揮発性キャッシュメモリ、320…不揮発性メモリ制御装置、322…不揮発性キャッシュメモリ領域1、323…不揮発性キャッシュメモリ領域2、327,329…ディスク記憶装置、328,330…記憶データ、332…ホストプロセッサ2、333…データベースサブシステム2、336…退避用データバッファ1、337…退避用データバッファ2、339…データバッファ1、340…データバッファ2、341…データバッファ3、
401…ホストプロセッサ1、402…データベースサブシステム1、403…制御プロセッサ、404…退避用データバッファ1、405…退避用データバッファ2、406…データバッファ1、407…データバッファ2、408…データバス、409…データベースサブシステム2、410…制御プロセッサ2、411…退避用データバッファ3、412…退避用データバッファ4、413…データバッファ3、414…データバッファ4、415,429,430…接続ケーブル、416…ディスク制御装置、417…ディスク制御プロセッサ1、418,422…不揮発性キャッシュメモリ、419,423,428…揮発性キャッシュメモリ、420…ディスク制御装置1、421…ディスク制御プロセッサ、424…不揮発性メモリ制御装置、425…制御プロセッサ、426…書き込み先管理用不揮発性キャッシュメモリ領域、427…不揮発性キャッシュメモリ領域1、431…ディスク記憶装置1、432…ディスク記憶装置2、433,434…記憶データ、435…ホストプロセッサ2、436…データベースサブシステム3、437,518,523…制御プロセッサ、438…退避用データバッファ1、439…退避用データバッファ2、440…データバッファ1、441…データバッファ2、442…データバッファ3、443…入出力プロセッサ、
501…ホストプロセッサ1、502…データベースサブシステム1、503,513…制御プロセッサ、504…退避用データバッファ1、505…退避用データバッファ2、506…データバッファ1、507…データバッファ2、508…データバッファ3、509,510,511,516,521,527,528,529…接続ケーブル、512,517,522…ディスク制御装置、514,519,524,525…不揮発性キャッシュメモリ、515,520,526…揮発性キャッシュメモリ、530,532,534…ディスク記憶装置、531,533,535…記憶データ、
601…ホストプロセッサ1、602…データベースサブシステム1、603,613,617,621,638,643…制御プロセッサ、604…退避用データバッファ1、605…退避用データバッファ2、606…データバッファ1、607…データバッファ2、608…データバッファ3、609,610,611,625,626,627,634,635,636…接続ケーブル、612,616,620…ディスク制御装置、615,619,624,641,646…揮発性キャッシュメモリ、614,618,622,623,639,640,644,645…不揮発性キャッシュメモリ、628,630,632,637,642…ディスク記憶装置、629,631,633…記憶データ、
701…ホストプロセッサ1、702…データベースサブシステム1、703,713,717,721,738,743,751…制御プロセッサ、704…退避用データバッファ1、705…退避用データバッファ2、706…データバッファ1、707…データバッファ2、708…データバッファ3、709,710,711,725,726,727,734,735,736,747,748…接続ケーブル、712,716,720,737,742…ディスク制御装置、714,718,722,723,739,740,744,745…不揮発性キャッシュメモリ、715,719,724,741,746…揮発性キャッシュメモリ、728,730,732…ディスク記憶装置、729,731,733…記憶データ、749…ホストプロセッサ1、750…データベースサブシステム1、752…退避用データバッファ1、753,859…退避用データバッファ2、754,860…データバッファ1、755,861…データバッファ2、756,862…データバッファ3、
801…ホストプロセッサ1、802…データベースサブシステム1、803,813,817,821,838,843,857…制御プロセッサ、804…退避用データバッファ1、805…退避用データバッファ2、806…データバッファ1、807…データバッファ2、808…データバッファ3、809,810,811…接続ケーブル、812,816,820,847…ディスク制御装置、814,818,822,823,839,840,844,845…不揮発性キャッシュメモリ、815,819,824,841,846…揮発性キャッシュメモリ、827,834,835,836,851,852,853,854…接続ケーブル、825,826,828,830,832,848,849,850…ディスク記憶装置、829,831,833…記憶データ、837,842…高速結合装置、855…ホストプロセッサ1、856…データベースサブシステム1、858…退避用データバッファ1、859…退避用データバッファ2
Claims (11)
- ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記ホストプロセッサは、書き込み先である記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合に、他の記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリを一時的に利用する
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置の内の一つの記憶制御装置は、二つ以上の不揮発性キャッシュメモリを有し、
前記ホストプロセッサが記憶装置書き込み不要フラグの付いた書き込み要求を前記一つの記憶制御装置に送ると、前記一つの記憶制御装置は前記不揮発性キャッシュメモリの内の一つのメモリにデータを書き込み、前記不揮発性キャッシュメモリの一つのメモリが満杯となると前記ホストプロセッサにデータの退避要求を送り、
前記ホストプロセッサによる記憶装置書き込み不要フラグの付いた次の書き込み要求に対して前記不揮発性キャッシュメモリの他のメモリにデータ書き込みを行う
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
データの書き込み先である記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリに、書き込みデータ量に足りる空き領域がない場合に、他の記憶装置に結合された記憶制御装置の不揮発性キャッシュメモリを一時的に利用するとともに、
前記複数の記憶制御装置の不揮発性キャッシュメモリの共同利用の各種制御を記憶制御装置同士で制御する
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置に接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置の内の特定の記憶制御装置は、二つ以上の不揮発性キャッシュメモリの特定領域を有し、
記憶装置への書き込み不要フラグの付いた前記特定領域への書き込み要求がホストプロセッサから前記特定の記憶制御装置に送られる場合、前記特定の記憶制御装置は、前記一つの特定領域にホストプロセッサからのデータを書き込みし、
前記一つの特定領域全体が使用されると前記特定の記憶制御装置は、前記ホストプロセッサにデータの退避要求を送り、前記ホストプロセッサが前記一つの特定領域のデータを読み込んで他の記憶装置に格納要求を出し、前記他の記憶装置への格納終了後に前記一つの特定領域を再度書き込み可能となし、
一方、前記ホストプロセッサは新たに記憶装置への書き込み不要フラグの付いた書き込み要求を前記一つの特定領域とは異なる他の不揮発性キャッシュメモリの特定領域に送り、前記特定の記憶制御装置が前記ホストプロセッサからのデータを前記他の特定領域に書き込みする
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置のそれぞれに接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記ホストプロセッサに結合する不揮発性メモリ付きのプロセッサを有し、記憶装置を接続しない不揮発性メモリ制御装置をさらに備え、
前記不揮発性メモリ制御装置は、二つ以上の不揮発性キャッシュメモリの特定領域を有し、
記憶装置への書き込み不要フラグの付いた前記特定領域への書き込み要求がホストプロセッサから前記不揮発性メモリ制御装置に送られる場合、前記不揮発性メモリ制御装置は、前記一つの特定領域に前記ホストプロセッサからのデータを書き込みし、
前記一つの特定領域全体が使用されると前記不揮発性メモリ制御装置は、ホストプロセッサにデータの退避要求を送り、ホストプロセッサが前記一つの特定領域のデータを読み込んで記憶装置に格納要求を出し、前記記憶装置への格納終了後に前記一つの特定領域を再度書き込み可能となし、
一方、前記ホストプロセッサは新たに記憶装置への書き込み不要フラグの付いた書き込み要求を前記一つの特定領域とは異なる他の不揮発性キャッシュメモリの特定領域に送り、前記不揮発性メモリ制御装置が前記ホストプロセッサからのデータを前記他の特定領域に書き込みする
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置のそれぞれに接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記ホストプロセッサに結合する不揮発性メモリ付きのプロセッサを有し、記憶装置を接続しない不揮発性メモリ制御装置をさらに備え、
前記ホストプロセッサの処理結果を前記記憶装置に更新する際に格納先の記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合、当該記憶制御装置とは別の記憶制御装置の不揮発性キャッシュメモリの空き領域を探して共有書き込み領域を定義し、記憶装置への書き込み不要フラグを付けて別の記憶制御装置に書き込み要求をして不揮発性キャッシュメモリへ一時的に格納し、
変更した格納先を前記不揮発性メモリ制御装置に伝達し、他のホストプロセッサがデータを記憶制御装置から読み込んだ時に前記不揮発性メモリ制御装置内の現在の格納先を確認し、前記別の記憶制御装置の不揮発性キャッシュメモリから変更データを読み込み、
前記書き込みデータ量に足りる空き領域のなかった不揮発性キャッシュメモリ領域に空き領域ができるとホストプロセッサに空きを通知し、一時的に別の不揮発性キャッシュメモリに格納してあったデータを前記ホストプロセッサが読み込んで更新元の記憶制御装置に記憶装置への書き込み必要フラグを付けて再度書き込み要求し、
全データを更新元の記憶装置に書き込み完了後に一時的に使用した前記別の記憶制御装置の不揮発性キャッシュメモリ領域を開放するとともに前記不揮発性メモリ制御装置に格納先の変更を通知する
ことを特徴とするデータ書き込みシステム。 - データベースサブシステムを内蔵した一つのホストプロセッサ内に、複数の記憶装置と、前記データベースサブシステムと結合する入出力プロセッサと、前記入出力プロセッサと前記記憶装置を結合するプロセッサ及び不揮発性キャッシュメモリを有した複数の記憶制御装置と、前記データベースサブシステムに結合する不揮発性メモリ付きのプロセッサを有した不揮発性メモリ制御装置と、を含み、更に、前記一つのホストプロセッサは他のホストプロセッサとリンクしているデータ書き込みシステムであって、
前記一つのホストプロセッサの処理結果を前記記憶装置に更新する際に、前記データベースサブシステムが前記入出力プロセッサに書き込み要求し、前記入出力プロセッサが格納先の記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域があるかないかを入手して、書き込みデータ量に足りる空き領域がない場合、当該記憶制御装置とは別の記憶制御装置の不揮発性キャッシュメモリの空き領域を探して共有書き込み領域を定義し、記憶装置への書き込み不要フラグを付けて別の記憶制御装置に書き込み要求をして不揮発性キャッシュメモリへ一時的に格納し、
変更した格納先を前記不揮発性メモリ制御装置に伝達し、他のホストプロセッサがデータを入出力プロセッサに要求して記憶制御装置から読み込んだ時に前記不揮発性メモリ制御装置内の現在の格納先を確認し、前記別の記憶制御装置の不揮発性キャッシュメモリから変更データを読み込み、
前記書き込みデータ量に足りる空き領域のなかった不揮発性キャッシュメモリ領域に空き領域ができると入出力プロセッサは、一時的に別の不揮発性キャッシュメモリに格納してあったデータを読み込んで更新元の記憶制御装置に記憶装置への書き込み必要フラグを付けて再度書き込み要求し、
全データを更新元の記憶装置に書き込み完了後に前記入出力プロセッサは前記不揮発性メモリ制御装置に格納先の変更を通知する
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置のそれぞれに接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
前記複数の記憶制御装置同士を接続ケーブルで結合し、
前記ホストプロセッサの処理結果を前記記憶装置に更新する際に格納先の記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合、当該記憶制御装置とは別の記憶制御装置の不揮発性キャッシュメモリの空き領域を前記接続ケーブルを経由して入手して別の記憶制御装置に書き込み要求をして不揮発性キャッシュメモリへ書き込み前記別の記憶制御装置に結合した記憶装置に一時的に格納し、
前記当該記憶制御装置は変更した格納先を前記当該記憶制御装置内の不揮発性キャッシュメモリに記憶し、
前記ホストプロセッサが前記当該記憶制御装置にデータ読み込み要求すると、前記当該記憶制御装置は前記不揮発性キャッシュメモリ内の現在の格納先を確認し、前記別の記憶制御装置の不揮発性キャッシュメモリから変更データを読み込み、
前記書き込みデータ量に足りる空き領域のなかった不揮発性キャッシュメモリ領域に空き領域ができると前記別の記憶制御装置は、前記別の記憶制御装置に結合した記憶装置に一時的に格納されていたデータを読み込んで更新元の記憶制御装置に書き込み要求し、前記更新元の記憶制御装置への書き込み完了後に一時的に格納されていたデータを消去し、
前記当該記憶制御装置は前記変更した格納先を消去する
ことを特徴とするデータ書き込みシステム。 - ホストプロセッサと、前記ホストプロセッサに接続される複数の記憶制御装置と、前記複数の記憶制御装置のそれぞれに接続される記憶装置と、を有するデータ書き込みシステムであって、
前記記憶制御装置は、前記ホストプロセッサから受領したデータの前記記憶装置に対する書き込みを制御するプロセッサと、前記ホストプロセッサから受領したデータを一時的に保持する不揮発性のキャッシュメモリとを有し、
不揮発性メモリ付きのプロセッサを有した不揮発性メモリ制御装置が、前記複数の記憶制御装置にそれぞれ結合されて前記不揮発性メモリ制御装置の前記不揮発性メモリが共有されており、
前記ホストプロセッサの処理結果を前記記憶装置に更新する際に格納先の記憶制御装置の不揮発性キャッシュメモリに書き込みデータ量に足りる空き領域がない場合、当該記憶制御装置は前記不揮発性メモリ制御装置に書き込み要求をして、前記不揮発性メモリ制御装置が前記記憶制御装置と前記不揮発性メモリ制御装置の内で使用可能な不揮発性キャッシュメモリ又は不揮発性メモリを選定してデータを一時的に書き込み、
前記不揮発性メモリ制御装置は前記一時的書き込み完了を前記当該記憶制御装置に送り、
前記書き込みデータ量に足りる空き領域のなかった不揮発性キャッシュメモリ領域に空き領域ができると前記不揮発性メモリ制御装置は、前記データの書き込み先からデータを読み込んで更新元の記憶制御装置に書き込み、
前記不揮発性メモリ制御装置からの前記書き込み完了を受け取った後に一時的に書き込まれた不揮発性キャッシュメモリ又は不揮発性メモリのエリアを再使用可能とする
ことを特徴とするデータ書き込みシステム。 - 請求項9に記載のデータ書き込みシステムにおいて、
前記不揮発性メモリ制御装置は複数のホストプロセッサと結合していることを特徴とするデータ書き込みシステム。 - 請求項9又は10に記載のデータ書き込みシステムにおいて、
前記不揮発性メモリ制御装置は、前記不揮発性メモリの外に、前記記憶装置とは別にデータを保持するディスク装置を備えていることを特徴とするデータ書き込みシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000273336A JP4076316B2 (ja) | 2000-09-08 | 2000-09-08 | 不揮発性キャッシュメモリを用いたデータ書き込みシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000273336A JP4076316B2 (ja) | 2000-09-08 | 2000-09-08 | 不揮発性キャッシュメモリを用いたデータ書き込みシステム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002082833A JP2002082833A (ja) | 2002-03-22 |
JP2002082833A5 JP2002082833A5 (ja) | 2005-05-26 |
JP4076316B2 true JP4076316B2 (ja) | 2008-04-16 |
Family
ID=18759299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000273336A Expired - Fee Related JP4076316B2 (ja) | 2000-09-08 | 2000-09-08 | 不揮発性キャッシュメモリを用いたデータ書き込みシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4076316B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003090089A1 (fr) * | 2002-04-22 | 2003-10-30 | Fujitsu Limited | Dispositif de memoire cache |
JP4471947B2 (ja) * | 2005-04-28 | 2010-06-02 | Necエレクトロニクス株式会社 | データ処理装置及びデータ処理方法 |
JP5621496B2 (ja) * | 2010-10-15 | 2014-11-12 | セイコーエプソン株式会社 | 記憶装置、回路基板、液体容器及びシステム |
KR102275706B1 (ko) | 2014-06-30 | 2021-07-09 | 삼성전자주식회사 | 데이터 저장 장치의 작동 방법과 이를 포함하는 데이터 처리 시스템의 작동 방법 |
US10785301B2 (en) * | 2017-08-03 | 2020-09-22 | Toshiba Memory Corporation | NVM express over fabrics |
-
2000
- 2000-09-08 JP JP2000273336A patent/JP4076316B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002082833A (ja) | 2002-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI394164B (zh) | 在快閃記憶體系統中可中斷的快取清空 | |
US5920893A (en) | Storage control and computer system using the same | |
US5418929A (en) | Controller for storage unit and method of controlling storage unit | |
US8924659B2 (en) | Performance improvement in flash memory accesses | |
US9092426B1 (en) | Zero-copy direct memory access (DMA) network-attached storage (NAS) file system block writing | |
US20190324859A1 (en) | Method and Apparatus for Restoring Data after Power Failure for An Open-Channel Solid State Drive | |
US8650339B2 (en) | Control of data transfer | |
JPS60147855A (ja) | 記憶管理装置 | |
JPS5873085A (ja) | 記憶階層制御方法 | |
US7251716B2 (en) | Method and system for data processing with recovery capability | |
TWI514142B (zh) | 儲存系統及其控制方法 | |
US20160357672A1 (en) | Methods and apparatus for atomic write processing | |
US7487298B2 (en) | Disk array device, method for controlling the disk array device and storage system | |
US20110238915A1 (en) | Storage system | |
US20090237828A1 (en) | Tape device data transferring method and tape management system | |
US20140331007A1 (en) | Virtual library controller and control method | |
JP4076316B2 (ja) | 不揮発性キャッシュメモリを用いたデータ書き込みシステム | |
US6532513B1 (en) | Information recording and reproduction apparatus | |
JP2006099802A (ja) | 記憶制御装置およびキャッシュメモリの制御方法 | |
US20050038958A1 (en) | Disk-array controller with host-controlled NVRAM | |
US8214597B2 (en) | Cache tentative read buffer | |
JP2000057013A (ja) | トレース情報採取装置及びプログラムを記録した機械読み取り可能な記録媒体 | |
JP3940701B2 (ja) | ディスクアレイ装置及び同装置に適用されるキャッシュ一致化制御方法 | |
US9304918B2 (en) | Computer system and cache control method | |
JPH10111762A (ja) | 記憶装置サブシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040721 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040721 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071030 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080108 |
|
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: 20080122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080129 |
|
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: 20110208 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110208 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120208 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120208 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130208 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130208 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |