概要
SQL文を実行した際のメモリ上の動作を説明
SQL実行時のメモリ上の動作
SQL文を発行した後、メモリ上では大きく以下のような流れとなる
1. SQLリクエストを受信
↓
2. カーソルのオープン
↓
3. 実行計画の生成/再利用
↓
4. SQL文の実行
↓
5. カーソルのクローズ
カーソル:特定のプライベートSQL領域
- SQL文は、共有SQL領域とプライベートSQL領域(カーソル)に格納される
- 共有SQL領域は共有プールのライブラリキャッシュ内にあり、SQL文の解析ツリーと実行計画が格納される
- プライベートSQL領域(カーソル)には以下の情報が格納される
・持続領域: バインド変数値が格納される
・ランタイム領域- 問合せ実行状況の情報: たとえば、全表スキャンの場合、この領域にはスキャンの進行情報が格納される - SQL作業領域:ソートやハッシュ結合など、メモリー集中型の操作に必要な場合に割り当てられる
実行計画生成