v$sqlビューのカラム説明
-
v$sql.elapsed_time- 説明: SQLの実行が開始されてからの総経過時間をマイクロ秒単位で示す。実行時間の累積値である。
- 意味: SQLが実行中にかかった全体の時間を表し、SQLが複数回実行された場合は、その総時間を含む。
-
v$sql.executions- 説明: SQLが実行された回数を示す。SQLが実行されたトータルの回数である。
-
意味: SQLの実行頻度を示し、例えば、SQLが10回実行された場合、
executionsの値は10になる。
-
v$sql.last_active_time- 説明: SQLが最後にアクティブだった時刻を示す。SQLが最後に実行された時刻や、最後にパフォーマンス関連のアクションが行われた時刻である。該当SQLが実行中の場合、現在時刻に比較的近い時刻となる。
- 意味: SQLが最近アクティブだったタイミングを示し、SQLの実行や関連操作が行われた最後の時刻を表す。
-
v$sql.last_load_time- 説明: SQLが最後にライブラリキャッシュに読み込まれた時刻(つまり、ハードパースにより実行計画が作成された時刻)を示す。
- 意味: SQLがライブラリキャッシュにロードされた最新のタイムスタンプを示す。パースや再利用などの際に更新される。
-
v$sql.first_load_time- 説明: SQLが初めてライブラリキャッシュに読み込まれた時刻を示す。
- 意味: SQLが最初にライブラリキャッシュにロードされた時点を示し、SQLがキャッシュに存在してからの経過時間の参考になる。
v$sessionビューのカラム説明
-
v$session.sql_exec_start- 説明: セッションがSQLの実行を開始した時刻を示す。
- 意味: SQLの実行が開始された具体的な時刻で、実行の開始時刻を把握するために使用される。
違いのまとめ
-
v$sql.last_active_timevsv$sql.last_load_time-
last_active_timeはSQLが最後にアクティブだった時刻(最後に実行や関連操作が行われた時刻)を示す。last_load_timeはSQLが最後にライブラリキャッシュに読み込まれた時刻を示し、SQLがパースされた最新のタイムスタンプである。
-
-
v$session.sql_exec_startvsv$sql.last_active_time-
sql_exec_startはセッションでSQLの実行が開始された時刻を示すが、last_active_timeはSQLが最後にアクティブだった時刻を示す。前者は実行開始時刻、後者は最近のアクティブなタイミングである。
-
※ ChatGPTにうかがった上で、実験してファクトチェックし、加筆修正しました。