hadbm resourceinfo コマンドは、HADB ランタイムリソース情報を表示します。この情報を使用して、リソースの競合を識別し、パフォーマンス上のボトルネックを削減するのに役立てることができます。詳細については、『Sun Java System Application Server 9.1 Performance Tuning Guide』の「Tuning HADB」を参照してください。
コマンド構文は次のとおりです。
hadbm resourceinfo [--databuf] [--locks] [--logbuf] [--nilogbuf] [--adminpassword=password | --adminpasswordfile=file] [--agent=maurl] [dbname]
dbname オペランドにはデータベース名を指定します。デフォルトは hadb です。
次の表で、hadbm resourceinfo の特別なコマンドオプションについて説明します。その他のコマンドオプションの説明は、「一般的なオプション」を参照してください。
詳細については、hadbm-resourceinfo(1)を参照してください。
表 3–15 hadbm resourceinfo コマンドオプション
オプション |
説明 |
---|---|
-d |
データバッファープール情報を表示します。 詳細については、下記 「データバッファープール情報」を参照してください。 |
-l |
ロック情報を表示します。 詳細については、下記 「ロック情報」を参照してください。 |
-b |
ログバッファー情報を表示します。 詳細については、下記 「ログバッファー情報」を参照してください。 |
-n |
ノードの内部ログバッファー情報を表示します。 詳細については、下記 「ノード内部ログバッファー情報」を参照してください。 |
データバッファープール情報には、次の内容が含まれます。
NodeNo: ノード番号。
Avail: プール内の使用可能容量の合計。単位は M バイト。
Free: 使用可能な空き容量。単位は M バイト。
Access: 起動時から現在までにデータベースがデータバッファーにアクセスした累積回数。
Misses: データベース起動時から現在までに発生したページフォルトの累積回数。
Copy-on-Write: チェックポイントのためにデータバッファーに内部的にコピーされたページの累積数。
ユーザートランザクションがレコードに対して操作を実行するときには、そのレコードを含むページはデータバッファープール内になければなりません。そのようになっていないと、miss、つまりページフォルトが発生します。すると、ディスク上のデータデバイスフィルからページが取り出されるまで、トランザクションは待機する必要があります。
ミスの比率が高い場合は、データバッファープールを増やしてください。ミスのカウントは累積回数なので、定期的に hadbm resourceinfo を実行し、二回分のカウントの差を調べて、ミスの比率の傾向を確認します。空き容量が非常に少ないとしても、チェックポイントメカニズムによって新たに使用可能なブロックが作成されるので、心配する必要はありません。
次に例を示します。
NodeNO Avail Free Access Misses Copy-on-Write 0 256 128 100000 50000 10001 256 128 110000 45000 950 |
ロック情報には、次の内容が含まれます。
NodeNo: ノード番号。
Avail: ノード上で使用可能なロックの合計数。
Free: 使用されていないロックの数。
Waits: ロックの獲得を待機しているトランザクションの数。これは累積数です。
1 つのトランザクションが、ノード上で利用可能なロックの 25% を超えて使用することはできません。そのため、規模の大きい操作を実行するトランザクションは、この制限を認識している必要があります。そのようなトランザクションはバッチ処理で実行するのが最善です。その場合、それぞれのバッチは別個のトランザクションとして扱われ、バッチごとにコミット操作を行うことになります。このようにする必要があるのは、繰り返し可能な読み取り遮断レベルで実行する読み取り操作、および削除、挿入、更新操作が、トランザクション終了後にのみ解放されるロックを使用するからです。
NumberOfLocks を変更するには、「履歴ファイルの消去と保存」を参照してください。
次に例を示します。
NodeNO Avail Free Waits 0 50000 20000 101 50000 20000 0 |
ログバッファー情報には、次の内容が含まれます。
NodeNo: ノード番号。
Available: ログバッファー用に割り当てられたメモリーの容量。単位は M バイト。
Free: 空きメモリーの容量。単位は M バイト。
空き容量が非常に少ないとしても、HADB がログバッファーの圧縮を開始するので、心配する必要はありません。HADB は、リングバッファーの先頭から圧縮を開始し、連続するログレコードに対して圧縮を実行します。ノードが実行していないのにミラーノードが受信しているログレコードを HADB が検出すると、圧縮は続行できなくなります
次に例を示します。
NodeNO Avail Free 0 16 21 16 3 |
ノード内部ログバッファー情報には、次の内容が含まれます。
ノード番号。
利用可能: ログデバイス用に割り当てられたメモリーの容量。単位は Mバイト。
Free: 空きメモリーの容量。単位は M バイト。
次に例を示します。
NodeNO Avail Free
0 16 21 16 3