Instance Activity と IO Stats セクションは、データベースが「どれだけ働いたか」の詳細な証跡です。Wait Events で「何で待っているか」が分かれば、次は「どこで I/O が発生しているか」「どれほどの規模か」をここで確認します。

1. Instance Activity Stats— インスタンスアクティビティ統計

何を表すか: V$SYSSTAT 由来の全カウンタを Total / per Second / per Trans で表示。データベース全体の動作量の詳細な証跡。

  • 読み方: 主要指標は Load Profile で既に把握できる。ここでは「細部の裏付け」に使う。physical reads direct / consistent gets / db block changes 等でワークロードの詳細を確認。
  • 閾値・注意点: カウンタ数が多く全部読む必要はない。問題の裏付けを探す際に特定カウンタをピンポイントで参照する。
  • 関連セクション: Load Profile / Foreground Wait Events
  • 使うシーン: 特定の挙動(REDO量・パース回数・スキャン種類)の詳細確認
項目の意味と着目点 — Instance Activity Stats(主要カウンタ)
項目名意味影響箇所・着目点
session logical reads論理読込ブロック数(Buffer Cache アクセス合計)Load Profile の Logical reads/sec と照合。一致すれば正確
physical readsディスクからの物理読込ブロック数physical reads direct との差=Buffer Cache 経由の物理読込
physical reads directBuffer Cache をバイパスした直接読込数大きい場合はパラレルスキャンや DBMS_STATS 等のダイレクトパス読込
physical writes物理書込ブロック数(DBWR が担当)DBWR の書込量。physical reads direct writes と合わせて確認
redo size生成した REDO バイト数Load Profile の Redo size/sec と照合。大量 UPDATE/INSERT の指標
redo writesLGWR のディスク書込回数redo size / redo writes で 1 回あたりの書込量を算出
parse count (total)パース呼び出し合計回数Load Profile の Parses/sec と照合
parse count (hard)ハードパース(SQL 新規解析)回数Load Profile の Hard parses/sec と照合。高いと Shared Pool 消費増
execute countSQL 実行回数合計Load Profile の Executes/sec と照合
table scans (long tables)大きなテーブルのフルスキャン回数0 以外はフルスキャンが発生している証拠。SQL Statistics と照合
table scans (direct read)ダイレクトパス経由のテーブルスキャン数パラレルスキャンや DBMS_STATS 由来が多い
sorts (memory)PGA 内で完結したソート件数sorts (disk) と比較。memory が 100% なら PGA サイズ十分
sorts (disk)Temp 領域にスピルしたソート件数0 以外は PGA 不足の可能性。PGA Advisory と照合
user commitsコミット回数Load Profile の Transactions/sec と照合
user rollbacksロールバック回数多い場合はエラーや競合が発生している可能性

2. OS Statistics / OS Statistics - Detail— OS統計

何を表すか: OSレベルの CPU 使用時間(centiseconds)・VM ページング量・物理メモリ・CPU 構成等。OS Statistics - Detail はスナップごとの時系列データ。

  • 読み方: BUSY_TIME / (BUSY_TIME + IDLE_TIME) でCPU使用率を算出。IOWAIT_TIME が高いとI/O起因のCPU消費あり。
  • 閾値・注意点: 値は centiseconds 単位。VM_OUT_BYTES が VM_IN_BYTES より大幅に大きい場合はページアウトが多く、物理メモリ不足の兆候となる。Virtual Memory Paging セクションと照合する。
  • 関連セクション: Host CPU / Virtual Memory Paging
  • 使うシーン: OS全体のCPU・メモリ状況の詳細確認
項目の意味と着目点 — OS Statistics
項目名意味影響箇所・着目点
BUSY_TIMECPU がビジー状態だった時間(centiseconds)Report Header の Host CPU % Busy と照合。÷100 で秒換算
IDLE_TIMECPU がアイドルだった時間(cs)BUSY / (BUSY + IDLE) でホスト CPU 使用率を算出
IOWAIT_TIMEI/O 待機中に CPU がアイドルだった時間(cs)高い場合はストレージ I/O がボトルネック。WIO % と照合
SYS_TIMEカーネルモードで消費した CPU 時間(cs)極端に高い場合はシステムコール・割込が多い
USER_TIMEユーザモードで消費した CPU 時間(cs)Oracle プロセスの CPU 消費の主体。DB CPU と対応
VM_IN_BYTESスワップイン(ページイン)したバイト数ページイン量。小さいほど物理メモリが十分
VM_OUT_BYTESスワップアウト(ページアウト)したバイト数大きい場合は物理メモリ不足。Virtual Memory Paging と照合
PHYSICAL_MEMORY_BYTESサーバ搭載物理メモリ総量(バイト)SGA + PGA の合計との比較でメモリ余裕を確認
NUM_CPUS論理 CPU 数AAS(平均アクティブセッション)と比較してCPU飽和を判断

3. IO Stat by Function— 機能別I/O統計

何を表すか: I/O を Oracle の内部機能(Direct Reads / Buffer Cache Reads / LGWR / Others)に分類し、Data Volume・Requests・Avg Tm を表示。AWRの「IOStat by Function」に相当。

  • 読み方: Data Volume(Read+Write)が最大の機能が I/O の主体。Wait Count と Avg Tm(ms) でその機能の待機状況を確認。
  • 閾値・注意点: STATSPACK の IO Stat by Function は Summary と Detail の2段構成。Summary で全体像を、Detail で Small/Large Read/Write の内訳を確認。
  • 関連セクション: Tablespace IO Stats / Foreground Wait Events (direct path read)
  • 使うシーン: I/O 負荷の機能別分類。パラレルスキャンや DBMS_STATS 実行中のダイレクトパス読込量確認
項目の意味と着目点 — IO Stat by Function
項目名意味影響箇所・着目点
Function NameI/O を行った Oracle 内部機能名Direct Reads / Buffer Cache Reads / LGWR / DBWR / Others 等
Read Volume (MB)読込データ量(MB)最大の Function が I/O の主体。SQL Statistics のランキングと照合
Read Requests/s読込リクエスト数/秒スループット。Tablespace IO Stats の Reads/s と合計が一致
Write Volume (MB)書込データ量(MB)LGWR は REDO 書込量。DBWR はデータファイル書込量
Write Requests/s書込リクエスト数/秒LGWR の書込頻度は redo writes/s と対応
Wait CountI/O 完了待機発生回数多い Function がI/O待機の主体
Avg Tm (ms)I/O リクエストの平均応答時間10ms 超でストレージ遅延を疑う。File Read Histogram と照合

4. Tablespace IO Stats— テーブルスペース別I/O統計

何を表すか: テーブルスペース単位の Reads・Avg Reads/s・Avg Read(ms)・Avg Blks/Rd・Writes・Buffer Waits を集計。I/O の偏在を検出する。

  • 読み方: Reads が最大のテーブルスペースが I/O のホットスポット。Avg Rd(ms) が 10ms 超えはストレージ遅延の可能性。Blks/Rd が大きければマルチブロック読込(フルスキャン)多め。
  • 閾値・注意点: Buffer Waits が 0 なら Buffer Busy Waits はここから発生していない。Reads/s と Writes/s で Read 主体 / Write 主体のワークロード性質を判断。
  • 関連セクション: File IO Stats / Segments by Physical Reads
  • 使うシーン: I/O ホットスポットのテーブルスペース特定
項目の意味と着目点 — Tablespace IO Stats
項目名意味影響箇所・着目点
Tablespace表領域名業務データ・UNDO・TEMP・SYSTEM 等に分類して確認
Reads物理読込ブロック数最大の表領域が I/O のホットスポット。Segment 統計と照合
Av Reads/s平均読込リクエスト数/秒スループットの観点。IOPS の確認に使用
Av Rd(ms)平均単一ブロック読込時間(ミリ秒)10ms 超はストレージ遅延の可能性。正常は 1〜5ms 以内
Av Blks/Rd1リクエストあたり平均読込ブロック数大きいほどマルチブロック読込(フルスキャン)が多い
Writes物理書込ブロック数DBWR の書込量。更新量の多い表領域を特定
Writes/s平均書込リクエスト数/秒
Buffer Waitsバッファ待機(Buffer Busy Waits)発生回数0 超えはホットブロック競合の可能性。Segment by BBW と照合

5. File IO Stats— ファイル別I/O統計

何を表すか: データファイル単位の Reads・Avg Rd(ms)・Mx Rd Bkt・Blks/Rd・Writes・Buffer Waits。テーブルスペース内のファイル偏在を検出する。

  • 読み方: 同一テーブルスペース内でファイルごとの Reads が大きく偏っていれば特定ファイルへの集中アクセスがある。Mx Rd Bkt(最大単一ブロック読込時間バケツ)で最悪応答時間を確認。
  • 閾値・注意点: 複数データファイルで I/O が均等分散しているほど良好な構成。特定ファイルへの集中は拡張時のファイル追加や ASM への移行を検討する契機となる。
  • 関連セクション: Tablespace IO Stats / File Read Histogram Stats
  • 使うシーン: ファイル単位のI/O偏在・ストレージ負荷分散確認
項目の意味と着目点 — File IO Stats
項目名意味影響箇所・着目点
Tablespace / File表領域名とデータファイルパス同一表領域内でのファイル間 I/O 分散を確認
Reads物理読込ブロック数特定ファイルへの集中がないか確認
Av Reads/s平均読込リクエスト数/秒I/Oスループット
Av Rd(ms)平均単一ブロック読込時間10ms超でストレージ遅延。ファイル間で差がある場合は特定ディスクの問題
Mx Rd Bkt最大単一ブロック読込のバケツ番号最悪ケースのレイテンシ。File Read Histogram Stats で詳細確認
Av Blks/Rd1リクエストあたり平均読込ブロック数大きいほどマルチブロック読込多め
Writes物理書込ブロック数DBWR書込量。ファイル間で均等かどうかを確認
Buffer Waitsバッファ待機発生回数0超えはBuffer Busyの可能性。特定ファイルに集中していれば要調査

6. File Read Histogram Stats— ファイル読込ヒストグラム

何を表すか: 単一ブロック読込の時間分布を、ファイル単位で 0-2ms / 2-4ms / 4-8ms / 8-16ms / 16-32ms / 32ms+ のバケツで集計。

  • 読み方: 全ファイルの単一ブロック読込が 0-2ms バケツに集中していれば I/O 応答性は良好。32ms+ に値があるファイルは要調査。
  • 閾値・注意点: Tempfile は除外される。I/O 問題のある環境では 16ms+ / 32ms+ に値が集中する。すべて 0 のファイルは単一ブロック読込が発生していない(マルチブロック読込のみ)。
  • 関連セクション: File IO Stats / Wait Event Histogram (db file sequential read)
  • 使うシーン: ストレージの物理I/O応答性確認・SLA 検証
項目の意味と着目点 — File Read Histogram Stats
項目名意味影響箇所・着目点
Tablespace / File表領域名とデータファイルパス特定ファイルだけレイテンシが高い場合はそのディスク/LUN に問題
0-2ms バケツ0〜2ms 以内に完了した単一ブロック読込の件数ほぼここに集中するのが正常。SSDやHigh-IOPS環境では全量ここに収まる
2-4ms バケツ2〜4ms で完了した件数一部の値はHDD環境では正常範囲
4-8ms バケツ4〜8ms で完了した件数割合が高い場合はストレージ負荷が高め
8-16ms バケツ8〜16ms で完了した件数頻繁に出現する場合はI/O性能問題の兆候
16-32ms バケツ16〜32ms で完了した件数ストレージ遅延が深刻化しているサイン
32ms+ バケツ32ms 超で完了した件数重大な I/O 遅延。db file sequential read 待機時間との照合が必要