Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 運用と操作


4.6.10 DAMファイルのキャッシュブロック数の設定

DAMサービスでは,一度読み込んだDAMファイルのブロックデータをDAMサービス専用の共用メモリにためておき,同じブロックに参照要求があったときにメモリ上のデータを利用することでファイルに対するI/O回数を削減します。共用メモリ内では各DAMファイルごとにブロックデータをチェイン管理しています。このブロックデータを格納する領域をキャッシュブロックといいます。

damchdefコマンドを使用すると,一つのDAMファイルで管理するキャッシュブロック数の上限(しきい値)を設定できます。しきい値を設定すると,未使用状態のキャッシュブロックが再利用されるためメモリ資源を有効に使用できます。

キャッシュブロック数のしきい値を決定するときの運用例を次に示します。

  1. damchinfコマンドを実行して,キャッシュブロック情報を取得します。damchinfコマンドの実行結果の例を,次に示します。

    [図データ]

  2. UAPのアクセス形態によるしきい値に指定する値を考察します。

    • 以降,damfile1にほとんどアクセスしない業務の場合

      damfile0,damfile2に割り当てられるキャッシュブロック領域は約20%しかありません。damfile1には,以降ほとんどアクセスしないことから,damfile1のキャッシュブロックチェインにつながっている7,900個分のキャッシュブロック用領域は確保されたままになります。そこで,damfile1のしきい値に小さい値を指定することで,確保されたままのキャッシュブロック用領域を小さくし,damfile0,damfile2に割り当てるキャッシュブロック領域を大きくできます。また,damfile1のキャッシュブロックチェインにキャッシュブロックが多数つながっているため,キャッシュブロック用領域が不足するとクリーンアップ処理が実行されます。この場合,クリーンアップ対象が"1"となっていることから,damfile1のキャッシュブロックチェインがクリーンアップ対象となります。そのため,7,900個のキャッシュブロック解放処理が実行されることから,急激な性能劣化が予想されます。この現象を抑止するためにも,damfile1にしきい値を指定することが有効です。

    • damfile1に頻繁にアクセスする業務の場合

      damfile1に頻繁にアクセスするということは,damfile1のキャッシュブロックチェインの検索処理が頻繁に実行されることになります。この場合,しきい値を指定することで,キャッシュブロックチェインを短くでき,その結果チェイン検索時間が短縮します。ただし,しきい値が小さ過ぎる場合,キャッシュ効率が悪化するため,かえって性能劣化となります。しきい値を変更しながら最適な値を決定してください。

    • すべてのDAMファイルにまんべんなくアクセスする業務の場合

      すべてのDAMファイルにまんべんなくアクセスするため,各DAMファイルに割り当てられるキャッシュブロック用領域は平均化していることが望まれます。各DAMファイルのしきい値に同等な値を設定すると各DAMファイルが使用するキャッシュブロック用領域が平均化されます。