この項では、すべてのインスタンスによる使用頻度の高い(hot)データ・ブロックおよびオブジェクトを識別して、GCSのパフォーマンスを監視する方法を説明します。並行処理回数の多いブロックは、GCSの待機イベントおよび待機数によって特定できます。
gc current block busy
の待機イベントは、リモート・キャッシュまたはローカル・キャッシュがビジーなため、キャッシュ・データ・ブロックへのアクセスが遅延状態であることを示します。この原因として、次のいずれかが考えられます。
ブロックが確保されている
ブロックがセッションによって保留されている
ブロックがリモート・インスタンス側のログ書込みにより遅延されている
同一インスタンス上のセッションが、インスタンス間を移動中のブロックにアクセスしているため、現行のセッションが待機状態(gc current block busy
など)になっている
V$SESSION_WAIT
ビューを使用して、競合するオブジェクトおよびデータ・ブロックを識別します。GCS待機イベントには、p1およびp2のブロック・リクエストのファイルおよびブロック番号がそれぞれ含まれています。
前述のV$SESSION_WAIT
への問合せなしで、ビジー・オブジェクトを迅速に判別するために、セグメント統計gc buffer busy
が追加されています。
AWRインフラストラクチャは、最近の待機イベントおよびその引数のトレースにも使用できるアクティブ・セッション履歴のビューを提供します。そのため、ホット・ブロック分析に有効です。AWRおよびStatspackで使用されるほとんどのレポート機能に、オブジェクト統計およびクラスタ待機クラスのカテゴリが含まれるため、前述のビューのサンプリングが必要になることはほとんどありません。
注意:
ADDMおよびAWRを使用することをお薦めします。ただし、Statspackには下位互換性があります。Statspackには、レポート機能のみが用意されています。ブロック競合およびセグメント・ブロックの待機に関連する統計を収集するには、Statspackをレベル7で実行する必要があります。
AWRインフラストラクチャで収集されたスナップショット・データに対してADDMを実行し、グローバル・キャッシュが与える影響の全体的な評価を取得することをお薦めします。この評価では、ビジー・オブジェクトおよびSQLでの待機時間が最も長いクラスタも特定されます。