共用バッファの使用状況は、以下のスクリプトを使用して把握します。
List Worksインストールディレクトリ/dbsetup/symfo/conserv/dbbuf_checkLWDB.sh
共用バッファの使用状況を把握する手順の流れを以下に示します。
手順 | 内容 |
---|---|
1 | スクリプトの複写(注1) |
2 | スクリプトの修正 |
3 | スクリプトの実行 |
4 | 使用状況の確認 |
注1) 保管データベースがList Worksサーバとは異なるサーバにある場合だけ実施します。
なお、共用バッファの監視は、List Worksサービスの起動中に実行できます。
以下に手順の詳細を示します。
スクリプトの複写(保管データベースがList Worksサーバとは異なるサーバにある場合)
スクリプト(dbbuf_checkLWDB.sh)をデータベースサーバへ複写します。
スクリプトの修正
保管データベースのRDBシステム名をLWDB以外に変更している場合は、スクリプト(dbbuf_checkLWDB.sh)の以下の箇所(太字下線)を、環境に合わせて修正します。
# /*-----------------------------------------------------------------------*/
# /* 保管データベースのRDBシステム名を指定します。 */
# /* RDBシステム名をLWDB以外にしている場合は、環境に合わせて変更して */
# /* ください。 */
# /*-----------------------------------------------------------------------*/
RDBNAME=LWDB
また、共用バッファの監視は、初期状態で監視時間間隔が10秒、取得回数が360回(1時間分)で取得します。
監視時間間隔や取得回数を変更する場合は、以下の箇所(太字下線)の値を変更してください。
# /*--------------------------------------------------------------------------*/ # /* DBアクセス性能の監視時間間隔(INTERVAL)と取得回数(SURV_NUM)を指定します。 */ # /* 初期値は10秒間隔で360回(1時間分)情報採取を行います。 */ # /* 1時間以上情報を取得する場合、取得する情報量を考え、監視時間間隔と */ # /* 取得回数を設定してください。 */ # /* (例) 監視時間間隔60秒、取得回数600回(10時間取得) */ # /*--------------------------------------------------------------------------*/ INTERVAL=10 SURV_NUM=360
スクリプトの実行
修正したスクリプトを実行します。
スクリプトの実行中にエラーが発生した場合は、以下のログファイルを参照し、エラーメッセージを確認します。
スクリプトを実行したカレントフォルダ/chkdbbuflog_LWDB.txt
エラーメッセージの詳細は、Symfowareのマニュアルを参照してください。 |
使用状況の確認
スクリプトの実行結果は、上記ログファイルを参照して確認します。
出力形式は、以下の2つがあります。
1つ目の出力形式では、PgSizeが8192の各値を参照します。
2つ目の出力形式では、DBspaceNameがLWDB.DBSPACE1の各値を参照します。
番号 | 出力項目名 | 説明 |
---|---|---|
(1) | BufNum | 総バッファ枚数 |
(2) | UseNum | 使用中バッファ枚数 |
(3) | WbPage | 書き戻しを行ったページ枚数 |
(4) | TbPage | 追い出しを行ったページ枚数 |
(5) | Alarm | 危険率に到達した回数 |
(6) | HitRate | オンバッファヒット率(%) |
(7) | DryUp | バッファ枯渇回数 |
(8) | MinFree | 未使用バッファ最低枚数 |
(9) | RTimes | ページの読み込みを行った回数 |
(10) | WTimes | ページへ書き戻しを行った回数 |
(11) | RPage | ページの読み込みを行った枚数 |
(12) | WPage | ページへ書き戻しを行った枚数 |
(13) | Read(System) | 読み込み処理のシステム時間(読み込み処理待ちを含む読み込み時間)(ミリ秒) |
(14) | Read(Service) | 読み込み処理のサービス時間(実際の読み込み時間)(ミリ秒) |
(15) | Write(System) | 書き込み処理のシステム時間(書き込み処理待ちを含む書き込み時間)(ミリ秒) |
(16) | Write(Service) | 書き込み処理のサービス時間(実際の書き込み時間)(ミリ秒) |
以下の情報を確認してください。
バッファ枯渇回数[DryUp]
値が0になっていることを確認してください。1以上の場合、共用バッファ不足です。
オンバッファヒット率[HitRate]
値が80%以上になっているかを確認してください。80%未満の場合、共用バッファが不足している可能性があります。
書き戻しを行ったページ枚数[WbPage]、追い出しを行ったページ枚数[TbPage]
各々の値が30秒間で3000ページ以下になっていることを確認してください。3000ページを超えている場合、共用バッファが不足している可能性があります。
読み込み処理待ち時間[RTimes]、[Read(System / Service)]
以下の式で読み込み処理待ち時間を算出し、15ミリ秒以下になっているかを確認してください。15ミリ秒を超える場合、共用バッファが不足している可能性があります。
総読み込み処理時間=[Read(System)]÷[RTimes]
実際の読み込み時間=[Read(Service)]÷[RTimes]
読み込み処理待ち時間=総読み込み処理時間-実際の読み込み時間