direct path read: 待機: バッファキャッシュを経由せず、セッションがブロックを直接 PGA に読み取っている
Oracle意味
セッションが、データベースバッファキャッシュを経由せずにブロックを直接 PGA メモリに読み取る間、この待機イベントで時間を費やしている。通常は大規模な全表スキャンやパラレルクエリに関連する。
原因
大きなテーブルの全スキャンによりディスクから多数のブロックを読み取る、パラレルクエリ、一時表領域に溢れるソート/ハッシュ操作、シリアル全スキャンでのシリアルダイレクトパス読み取りの判断、インデックスを使えないクエリ。
対処方法
AWR/ASH で重い全スキャンを行う SQL を特定し、適切なインデックスを追加する。クエリのチューニングで大きなテーブルの不要なスキャンを減らす。ストレージの遅延 (I/O) を調査し、必要ならより高速なディスクに移す。並列度を見直す。TEMP に溢れる操作については PGA_AGGREGATE_TARGET のサイズを評価する。
同じデータベースの他の項目
- ORA-01843not a valid month(月が無効)
- ORA-14400inserted partition key does not map to any partition(パーティションキーがどのパーティションにも対応しない)
- ORA-01536space quota exceeded for tablespace(表領域の領域割り当て制限を超過)
- latch: cache buffers chains待機: cache buffers chains ラッチの競合
- ORA-00955name is already used by an existing object(名前は既存のオブジェクトが使用している)
- ORA-02449unique/primary keys in table referenced by foreign keys(表の一意/主キーが外部キーにより参照されている)
- ORA-01950no privileges on tablespace 'name'(表領域に対する権限がない)