(57)【要約】【課題】複数のデータタイプをほかのデータタイプに左右されずに、キャッシュメモリのヒット率を上げてアクセス時間を短くする。【解決手段】キャッシュメモリを複数のパーティションに分割し、分割された各キャッシュメモリに対して格納するデータタイプを指定するとともに、分割キャッシュ数と各分割キャッシュサイズを手動もしくは自動で設定させることを可能とし、これらの設定をホスト計算機のオペレーティングシステムからインターフェースを介すことによって設定可能にし、キャッシュメモリの分割値は運用中にフレキシブルに変動可能でより良い性能が得られた場合はその値で分割値を変更すると共に、これをキャッシュ管理データベースサーバに通知し多数のホスト計算機で情報を共有させ、また、定期的にキャッシュ管理データベースサーバの情報を参照して、同一使用形態である他ホスト計算機から得られた最適な分割キャッシュ数と分割キャッシュサイズの方が自ホスト計算機の最適値よりアクセス性能が良ければ、これを自ホスト計算機のディスクアレイ装置のキャッシュメモリ分割方法とする。【選択図】　図１
2004030090.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュメモリを有するディスクアレイ装置において、前記キャッシュメモリを複数のパーティションに分割し、分割した各パーティションごとにデータタイプの異なるデータを格納することを特徴とするキャッシュメモリ管理方法。
【請求項２】
請求項１において、前記キャッシュメモリ上の各パーティションで格納するデータのデータタイプは、オペレーティングシステムから指定することを特徴とするキャッシュメモリ管理方法。
【請求項３】
請求項１において、前記キャッシュメモリ上の各分割パーティションサイズと分割キャッシュ数は、オペレーティングシステムから指定することを特徴とするキャッシュメモリ管理方法。
【請求項４】
請求項１または請求項２または請求項３において、前記キャッシュメモリ上の各パーティション上に保持するデータのデータタイプは、単一のデータタイプのみで分類するのではなく、複数のデータタイプのほかサイズなど使用形態にあわせて１つのキャッシュメモリ分割パーティションに分類することを特徴とするキャッシュメモリ管理方法。
【請求項５】
請求項１において、前記キャッシュメモリの各分割数と各分割キャッシュサイズは自動もしくは手動で設定可能で、自動で設定する場合はネットワーク上のキャッシュメモリデータベースセンタ上からキャッシュ自動制御情報の使用形態とキャッシュサイズと、さらに、分割数が手動の場合は分割数も含んだデータを元にして、平均レスポンスタイムや平均処理トランザクション数の好適なデータを取得し、分割キャッシュサイズを設定することを特徴とするキャッシュメモリ管理方法。
【請求項６】
請求項５において、各分割キャッシュは適当な調整マージンを持ち、運用中はフレキシブルに変動させるようにし、性能向上があった場合はそのときの分割キャッシュ情報と性能データなどをキャッシュ自動制御情報管理テーブルに書き込むとともに、キャッシュメモリデータベースサーバ上に情報を登録することを特徴とするキャッシュメモリ管理方法。
【請求項７】
請求項５におけるキャッシュメモリデータベースセンタは、複数のホスト計算機の情報を共有し、前記ホスト計算機は定期的にこのキャッシュメモリデータベースセンタの情報を参照し、使用形態が同じホスト計算機や同一処理を複数のホスト計算機で分散して処理している他のホスト計算機情報を参照し、他ホスト計算機のほうが性能が良い場合は他ホスト計算機の情報で自ホスト計算機のキャッシュ自動制御情報管理テーブルにそのデータを書き込み、自ホスト計算機のキャッシュメモリを再調整することを特徴とするキャッシュメモリ管理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、キャッシュメモリのヒット率を高めるディスクアレイ装置におけるキャッシュメモリ管理方法に関する。
【０００２】
【従来の技術】
従来、キャッシュメモリを管理し、アクセス時間を向上する方法として、例えば、特開平１０−２６９０２８号公報および特開平８−２６３３８０号公報に記載のものが知られている。
【０００３】
特開平１０−２６９０２８号公報に記載のものは、キャッシュメモリからデータを廃棄する方法である。これは、蓄積データごとに使用頻度とＬＲＵ（Ｌｅａｓｔ　Ｒｅｃｅｎｔｌｙ　Ｕｓｅｄ）情報を有し、ある蓄積データがアクセスされるとそのアクセスされた蓄積データのＬＲＵ情報を０としその他の蓄積データのＬＲＵ情報を１つインクリメントし、新しい使用頻度を前回の使用頻度と、連続してアクセスされなかった回数である前回のＬＲＵ情報との平均値とし、データ廃棄のさいは使用頻度の低い蓄積データから廃棄するものである。
【０００４】
また、特開平８−２６３３８０号公報に記載のものは、キャッシュメモリ上に保持しないデータを指定するものである。これは、キャッシュメモリ上に保持しないデータのタイプを記録しておくことにより、その他のデータをキャッシュ上に長くとどめておく方法である。
【０００５】
【発明が解決しようとする課題】
しかし、特開平１０−２６９０２８号公報に記載の技術は、キャッシュメモリの使用効率を向上しているものの、キャッシュメモリ上に存在するデータタイプが特定のものに偏り、キャッシュメモリ上に保持されていないデータタイプに関してはヒット率が劣り、アクセス速度が向上しないという問題がある。
【０００６】
また、特開平８−２６３３８０号公報に記載の技術も同様に、特定のデータタイプを指定して、それ以外のデータタイプに対してはヒット率が向上するものの、キャッシュメモリ上に保持されるデータタイプは単一に偏り、キャッシュメモリ上に保持されていないデータタイプに関してはヒット率が劣るという問題がある。
【０００７】
本発明の目的は、データタイプによらずデータをキャッシュメモリに保持しておくことにより、どのデータタイプのデータに対してもキャッシュメモリのヒット率を向上させ、さらに、ホスト計算機からの使用法に応じデータタイプの指定と分割キャッシュ数と分割キャッシュメモリのサイズを指定することにより最適なキャッシュを行うキャッシュメモリ管理方法を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明は、ディスクアレイ装置が有する複数のパーティションに分割されたキャッシュメモリと、その分割数と分割サイズを変更し管理するキャッシュメモリ管理手段と、分割されたキャッシュメモリ上の各パーティションごとに保持するデータのデータタイプを指定し管理するキャッシュメモリ管理手段とを備える。
【０００９】
さらに、本発明は、キャッシュメモリの分割数と分割サイズと分割された各パーティションごとの指定データタイプをオペレーティングシステムからも指定し管理する。
【００１０】
また、本発明は、キャッシュメモリ管理データをネットワーク上のキャッシュ管理データベースサーバ上にも保持し、複数のホスト計算機で情報を共有し利用する。
【００１１】
【発明の実施の形態】
以下、本発明の一実施の形態を、図面を参照して詳細に説明する。
【００１２】
図１は、本発明のシステム構成のブロック図である。
【００１３】
キャッシュメモリ管理システムは、図１において、ホスト計算機１と、そのホスト計算機１に備えられたキャッシュメモリ容量内容調整機能２と、キャッシュメモリの管理情報を表示する利用者端末画面３と、キャッシュメモリの内容をネットワークに送信、受信するキャッシュ自動制御情報送受信機能４と、ホスト計算機１に接続されているディスクアレイ管理装置５と、そのキャッシュメモリ６と、キャッシュメモリの分割パーティションを管理するキャッシュ自動制御情報管理テーブル７と、データを格納する記録媒体８と、複数のキャッシュ情報をネットワーク上で管理するキャッシュ管理データベースサーバ９および他ホスト計算機１０、１１で構成されている。
【００１４】
図２は、キャッシュ自動制御情報管理テーブル７の詳細を示す図である。
【００１５】
キャッシュ自動制御情報管理テーブル７には、使用形態、キャッシュサイズ、分割数を示すキーデータと、キャッシュタイプ別の分割サイズを示す設定データと、キャッシュタイプ別のヒット率、平均発生トランザクション数／秒、平均データ量／トランザクション、平均レスポンス／トランザクション、平均処理トランザクション数／秒等を示す性能データが格納されている。
【００１６】
図３は、キャッシュメモリ６の分割例を示すとともに、それぞれの分割されたキャッシュメモリの分割領域の変動性を示した図である。
【００１７】
図４は、キャッシュメモリ容量内容指定の処理を示すフローチャートである。
【００１８】
図４においては、ホスト計算機１に備えられたキャッシュメモリ容量内容調整機能２が、ディスクアレイ管理装置５のキャッシュ自動制御情報管理テーブル７に登録する内容と、キャッシュメモリ６の分割を指定する一連の流れを示している。
【００１９】
最初に、キャッシュメモリ容量内容調整機能２が起動されると、ディスクアレイ装置のキャッシュメモリ総サイズと、キャッシュ自動制御情報管理テーブル７から使用形態と分割数と各分割キャッシュメモリのサイズと各分割パーティションのキャッシュタイプを取得し、利用者端末画面３に表示する（ステップ４０１）。このとき、キャッシュ自動制御情報管理テーブル７に記載されているデータが実際のキャッシュ分割内容と不一致がないかを確認し、差異がある場合は、実際のキャッシュ分割内容でキャッシュ自動制御情報管理テーブル７の内容を書替えるとともに、実際のキャッシュ分割内容を利用者端末画面３に表示する。
【００２０】
次に、ホスト計算機１をどのような形態で使用するのかを指定する（ステップ４０２）。
【００２１】
そして、キャッシュメモリをいくつのパーティションに分けて管理するのかを自動もしくは手動で指定する（ステップ４０３）。自動で分割数を設定する場合は、ステップ４０２で指定した使用形態とキャッシュメモリサイズを元に、キャッシュ自動制御情報送受信機能４からキャッシュ管理データベースサーバ９にアクセスして最適なデータを取得し、キャッシュメモリ分割数とその各分割キャッシュメモリの格納タイプとサイズを設定する（ステップ４０５）。分割数を手動で設定する場合は、さらにキャッシュメモリ分割サイズを自動もしくは手動で設定し（ステップ４０６）、手動で設定する場合（ステップ４０７）は、分割するキャッシュメモリに格納するタイプをステップ４０２で指定した使用形態に対応したタイプで設定する（ステップ４０８）。このときの分類タイプは利用者の使用方法に応じ、複数の分類タイプを１つの分割パーティションで管理するよう指定することも可能である。キャッシュメモリ分割サイズを自動で設定した場合は、キャッシュ自動制御情報送受信機能４からキャッシュ管理データベースサーバ９にアクセスし、ステップ４０２、４０３で設定した内容を元に最適なデータを取得し、キャッシュメモリの格納タイプとサイズを設定する（ステップ４０９）。
【００２２】
終了要求であれば次ステップにすすみ、分割キャッシュメモリすべての設定が終わっていなければ、キャッシュメモリ分割サイズ指定処理と、分割キャッシュメモリ格納タイプ設定処理を全分割キャッシュメモリに対して行う（ステップ４１０）。
【００２３】
次にキャッシュ容量内容設定処理について説明する。
【００２４】
図５は、キャッシュ容量内容設定処理を示すフローチャートである。
【００２５】
各分割キャッシュメモリサイズと各データタイプを現在使用されているディスクアレイ管理装置５のキャッシュ自動制御情報管理テーブル７に格納されている各分割キャッシュメモリサイズと各データタイプとの比較を行う。まず、各分割キャッシュメモリのデータタイプを比較し（ステップ５０１）、異なっている、もしくは現時点と新規設定値とでキャッシュメモリ分割数に差があり、どちらかが設定されないような場合は、キャッシュメモリをフラッシュしてキャッシュメモリの初期化を行う（ステップ５０２）。
【００２６】
次に、データタイプが同じである場合、新規キャッシュメモリ設定サイズと現時点での設定サイズとを比較し、新規キャッシュメモリ設定サイズの方が小さい場合（ステップ５０３）は、分割パーティションのキャッシュメモリ空き容量を計算し（ステップ５０４）、指定容量に余裕がない場合（ステップ５０５）は、キャッシュメモリがないので、アクセス頻度の低いデータをフラッシュして指定サイズまで容量小さくしても問題が発生しないようにする（ステップ５０６）。指定容量に余裕がある場合は、そのまま分割キャッシュサイズを指定サイズまで容量を小さくすることが可能である。逆に、新規キャッシュメモリ設定サイズの方が現時点でのキャッシュメモリ設定サイズより大きい場合は、拡張するキャッシュメモリに残っているキャッシュデータをフラッシュして破棄する（ステップ５０７）。
【００２７】
次に、設定領域のキャッシュメモリが確保できたので、分割キャッシュメモリサイズの変更処理を行う（ステップ５０８）。
【００２８】
次に、指定した分割キャッシュメモリサイズ、データタイプをディスクアレイ管理装置５のキャッシュ自動制御情報１２の設定データに書込みする（ステップ５０９）。
【００２９】
これらステップ５０１からステップ５０９までの処理を新規分割キャッシュ数についてすべて行う。まだすべての分割キャッシュメモリに対して処理が行われていない場合は、再度これらの処理を行う（ステップ５１０）。
【００３０】
キャッシュメモリに対して分割処理とキャッシュ自動制御情報１２の設定データに書込みがすべて終わった場合、キャッシュ自動制御情報１２のキーデータを書込み、キャッシュメモリ内容を取得して利用者端末画面３に新規分割キャッシュ情報を表示する（ステップ５１１）。
【００３１】
次に、ホスト計算機１からデータの書込み処理を行う処理について説明する。
【００３２】
ホスト計算機１からデータの書込み処理が発生した場合は、キャッシュメモリ６と記録媒体８の両方に書込みを行う。
【００３３】
キャッシュメモリに書込みを行う場合、どのキャッシュメモリ分割パーティションにデータを書込むのかを判定するため、キャッシュ自動制御情報１２の設定データ領域を利用し、この情報から該当の分割パーティションにデータの書込みを行う。キャッシュメモリに十分な空き容量がない場合は、ＬＲＵ方式、もしくはＦＩＦＯ（Ｆｉｒｓｔ　Ｉｎ　Ｆｉｒｓｔ　Ｏｕｔ）方式によってデータの廃棄を行う。
【００３４】
次に、ホスト計算機１からデータの読取り処理を行う処理について説明する。
【００３５】
ホスト計算機１からデータの読取り要求があった場合は、まずキャッシュ自動制御情報１２を参照し、該当データタイプがキャッシュメモリのどのパーティションにデータがキャッシュされているのかを判断し、該当キャッシュアドレスから対応したデータの検索を行う。該当データがキャッシュメモリにない場合は、記録媒体８へ参照しに行く。
【００３６】
次に、キャッシュ自動制御情報１２の管理とキャッシュ分割変動機能について説明する。
【００３７】
キャッシュ自動制御情報１２のキーデータと設定データは、前述のように利用者管理端末画面３で設定したデータが記録されており、現在のキャッシュメモリの分割内容を示している。そして、現時点の分割内容での性能データを計算し、それぞれの分割パーティションごとのヒット率や平均発生トランザクション数／秒や平均データ量／トランザクションや平均レスポンス／トランザクションや平均処理トランザクション数／秒などをキャッシュ自動制御情報１２に登録し、現在の設定情報と共にデータをキャッシュ自動制御情報送受信機能４からネットワーク上のキャッシュ管理データベースサーバ９に登録する。この動作を定期的に行うことによって、現在の利用者のアクセス性能をキャッシュ管理データベースサーバ９から取得できるようにしておくことが可能となる。
【００３８】
なお、図３で示したように、各分割キャッシュメモリに適当なサイズの調整マージンを設け、運用中の性能データをもとにフレキシブルに変動させる。そして、変動したことによってより良いアクセス性能が得られた場合は、このときの設定データと性能データをキャッシュ自動制御情報１２の設定データ領域と性能データ領域にそれぞれ書込むと同時に、キャッシュ管理データベースサーバ９にその内容を登録する。
【００３９】
さらに、定期的にキャッシュ管理データベースサーバ９の情報にアクセスし、使用形態が同じ他ホスト計算機１０、１１や同一処理を複数のホスト計算機で分散して処理している他ホスト計算機情報を参照し、他ホスト計算機のほうが性能が良い場合は他ホスト計算機の情報で自ホスト計算機のキャッシュ自動制御情報１２にそのデータを書込み、自ホスト計算機のキャッシュメモリを再調整する。
【００４０】
本実施の形態によれば、キャッシュメモリを分割して各分割パーティションごとに異なるデータタイプを保持することにより、ほかのデータタイプに影響されて破棄されることなくキャッシュメモリ上に格納しておくので、データタイプに左右されずに、キャッシュメモリのヒット率を上げてアクセス時間を短くすることができる。
【００４１】
また、分割するキャッシュメモリサイズと分割数を手動もしくは自動で設定することが可能で、それぞれ独自の利用環境に応じてキャッシュメモリの分割を行い管理することが可能となり、その分割状態でのアクセスデータがネットワーク上のキャッシュ管理データベースサーバ上に保持され、複数のホスト計算機で情報を共有し、同一使用形態の場合や複数のホスト計算機で分散して処理を行っている場合に、他ホスト計算機のほうがより良い性能データの場合は、このデータで自ホスト計算機のキャッシュメモリを分割することでさらにアクセス性能を向上するさせることができる。
【００４２】
また、分割するキャッシュメモリサイズとキャッシュメモリの分割数と各分割キャッシュメモリに格納するデータタイプはオペレーティングシステムからインターフェースを介すことで操作可能となり、ホスト計算機上でディスクアレイコントローラ上のキャッシュメモリの分割操作をすることができる。
【００４３】
さらに、各分割キャッシュメモリに格納するデータタイプは、利用者が分類したい項目で分類することができる。
【００４４】
【発明の効果】
以上、説明したように、本発明によれば、キャッシュメモリを分割して各分割パーティションごとに異なるデータタイプを保持することにより、ほかのデータタイプに影響されて破棄されることなくキャッシュメモリ上に格納しておくので、データタイプに左右されずに、キャッシュメモリのヒット率を上げてアクセス時間を短くすることが可能となるという効果がある。
【００４５】
また、分割するキャッシュメモリサイズと分割数を手動もしくは自動で設定することが可能で、それぞれ独自の利用環境に応じてキャッシュメモリの分割を行い管理することが可能となり、その分割状態でのアクセスデータがネットワーク上のキャッシュ管理データベースサーバ上に保持され、複数のホスト計算機で情報を共有し、同一使用形態の場合や複数のホスト計算機で分散して処理を行っている場合に、他ホスト計算機のほうがより良い性能データの場合は、このデータで自ホスト計算機のキャッシュメモリを分割することでさらにアクセス性能を向上することが可能となるという効果がある。
【図面の簡単な説明】
【図１】本発明のシステム構成のブロック図
【図２】キャッシュ自動制御情報の内容を示す図
【図３】キャッシュメモリの分割例と、それぞれの分割されたキャッシュメモリの分割領域の稼動性を示す図
【図４】キャッシュメモリ容量内容指定の処理を示すフローチャート
【図５】キャッシュ容量内容設定処理のフローチャート
【符号の説明】
１　ホスト計算機、
２　キャッシュメモリ容量内容調整機能、
３　利用者端末画面、
４　キャッシュ自動制御情報送受信機能、
５　ディスクアレイ管理装置、
６　キャッシュメモリ、
７　キャッシュ自動制御情報管理テーブル、
８　記録媒体、
９　キャッシュ管理データベースサーバ、
１０、１１　他ホスト計算機。
【図１】
2004030090.tif 000003
【図２】
2004030090.tif 000004
【図３】
2004030090.tif 000005
【図４】
2004030090.tif 000006
【図５】
2004030090.tif 000007