ページの先頭行へ戻る
Symfoware Server V10.0.0 チューニングガイド

4.6 処理が待ち状態となっていた場合のチューニング

サンプリングした実行状態の内訳に、待ち状態(WAITING)が表示されていた場合、資源の占有待ち、入出力待ちなどにより、一時的に処理が中断していたことを示します。このような場合には、事象に応じて、以下の対処を実施します。

事象

対処

備考

トランザクションの占有待ち
(LOCK)

排他の単位を行に変更

アクセスプラン情報の“R_LOCK”で確認できます。

トランザクションの独立性水準を変更

アクセスプラン情報の“transaction isolation level”で確認できます。
処理の論理上問題ないかを確認して、独立性水準を“READ UNCOMMITTED”に変更するなどの対処を実施します。

トランザクションの一時占有待ち
(LOCK_TEMPORARY)

ページ長の変更

ページ長を小さくすると、1つのページに格納されるレコードの件数が少なくなり、1つのページへのアクセスの競合が少なくなります。ただし、ページ長を小さくすると必要となるデータベーススペースの容量が多くなります。ページ長の変更は、十分なデータベーススペースの容量を確保した上で行ってください。

格納構造の変更

RANDOM構造に変更した場合、データは割り付けを行った領域全体に分散されて格納されます。そのため、1つのページに格納されるレコード数は少なくなるため、1つのページへのアクセスの競合が少なくなります。

共用バッファの空き待ち
(DB_BUFFER)

バッファプールのページ数の増量

メモリに余裕のある範囲でバッファプールのページ数を増やしてください。

ページ読込み待ち
(DB_READ)

データベースバッファの再設計

頻繁にアクセスされる資源に対するバッファの割当てを増やしてください。

ディスク配置の変更

データベースのディスク配置を見直し、入出力の負荷を複数のディスクに分散させてください。

ページ書込み待ち
(DB_WRITE)

テンポラリログファイルのリカバリログ量の変更

一般的にリカバリログ量が多いほど、データベーススペースへのページの書き込み頻度は少なくなる反面、ダウンリカバリ時間が長くなります。このためダウンリカバリ時間に問題がない程度までリカバリログ量を多くとるようにしてください。

トランザクション終了時のページ書込み待ち
(DB_WRITE_TRNEND)

トランザクション当たりの変更データ量の削減(ロールバックで多く発生している場合)

トランザクション当たりの変更データ量が多いほど、ロールバックに時間がかかります。

DSIのリカバリなしの利用規定の解除(コミットで多く発生している場合)

DSIのリカバリなしの利用規定を設定している場合、当該DSIのデータ変更はトランザクションのコミットと同期してデータベーススペースへ反映します。これに対してリカバリなしの利用規定を設定していない場合は、データベーススペースへの反映はバックグラウンドで行います。

BIログバッファの空き待ち(LOG_BI_BUFFER)

ディスク配置の変更

テンポラリログファイルのBIログ域について、ディスク配置の見直しを行い、I/O効率の向上を図ります。テンポラリログファイルのBIログ域と同じ物理ディスク上に、頻繁にアクセスが行われる他のファイルを配置している場合は、それらのファイルを別の物理ディスクへ配置します。

BIログバッファ数の変更

ディスク配置に問題がないと判断した場合、メモリに余裕のある範囲でBIログバッファ数を増やしてください。

AIログバッファの空き待ち(LOG_AI_BUFFER)

ディスク配置の変更

テンポラリログファイルのAIログ域およびアーカイブログファイルについて、ディスク配置の見直しを行い、I/O効率の向上を図ります。テンポラリログファイルのAIログ域およびアーカイブログファイルと同じ物理ディスク上に、頻繁にアクセスが行われる他のファイルを配置している場合は、それらのファイルを別の物理ディスクへ配置します。

AIログバッファ数の変更

ディスク配置に問題がないと判断した場合、メモリに余裕のある範囲でAIログバッファ数を増やしてください。

リカバリログ量の減少待ち(LOG_RCP)

テンポラリログファイルのリカバリログ量の変更

ダウンリカバリ時間に影響を与えないように、RDBシステムは常時、AIログ量がリカバリログ量を超えないように制御しています。一般的にリカバリログ量が多いほど、この制御は働かない反面、ダウンリカバリ時間が長くなります。このためダウンリカバリ時間に問題がない程度までリカバリログ量を多くとるようにしてください。

BIログ読込み待ち
(LOG_BI_READ)
BIログ書込み待ち
(LOG_BI_WRITE)

ディスク配置の変更

テンポラリログファイルのBIログ域について、ディスク配置の見直しを行い、I/O効率の向上を図ります。テンポラリログファイルのBIログ域と同じ物理ディスク上に、頻繁にアクセスが行われる他のファイルを配置している場合は、それらのファイルを別の物理ディスクへ配置します。

AIログ書込み待ち(LOG_AI_WRITE)

ディスク配置の変更

テンポラリログファイルのAIログ域について、ディスク配置の見直しを行い、I/O効率の向上を図ります。テンポラリログファイルのAIログ域と同じ物理ディスク上に、頻繁にアクセスが行われる他のファイルを配置している場合は、それらのファイルを別の物理ディスクへ配置します。

アーカイブログファイルの満杯状態の解消待ち(LOG_ARC_FULL)

アーカイブログファイルの容量、アーカイブログファイルのバックアップ、およびアーカイブログファイルの破棄の契機について、見直しを実施

アーカイブログファイルが満杯になったことで、バックアップまたは破棄が行われるまで、待ち状態となります。