KDOC 661: AAS は標本の平均、AAE は実行時間の平均で、標本が多いとほぼ一致する
この文書のステータス
- 作成
- 2026-10-14 貴島
- レビュー
- 2026-10-14 貴島
概要
AAS(平均アクティブセッション)と AAE(平均アクティブ実行)は、どちらも平均して、同時にいくつのクエリが動いていたかを表す。AAS は1秒ごとにアクティブなセッションを数えた標本から求め、AAE は実行時間の合計から求める。
Database Insights は、特定期間の総セッション数を総サンプル数で割って AAS を計算します。
(略)
AAE を計算するために、Database Insights では、クエリの合計実行時間を時間間隔で割ります。
4秒の間に、3秒かかるクエリ X が1回、0.2秒かかるクエリ Y が別のセッションで2回動き、1秒ごとに4回標本を取る例で、両方を手で計算する。
時刻(秒) 0 1 2 3 4
+---------+---------+---------+---------+
X (3秒) [=============================]
Y (0.2秒) [=] [=]
標本 ^ ^ ^ ^
AAS は、1秒ごとの標本で動いているセッションを数え、その平均を取る。
| 標本 | 時刻 | 動いているクエリ | セッション数 |
|---|---|---|---|
| 1 | 1 秒 | X | 1 |
| 2 | 2 秒 | X、Y | 2 |
| 3 | 3 秒 | X | 1 |
| 4 | 4 秒 | なし | 0 |
この4秒の AAS は、(1 + 2 + 1 + 0) セッション / 4 標本 = 1 である。
AAE は、クエリが動いていた時間の合計を、経過時間で割る。
| クエリ | 動いていた時間 | 実行時間 |
|---|---|---|
| X | 0.2〜3.2 秒 | 3.0 秒 |
| Y | 1.9〜2.1 秒、2.4〜2.6 秒 | 0.4 秒 |
この4秒の AAE は、(3.0 + 0.4) 実行秒 / 4 経過秒 = 0.85 である。
データベース負荷の表は、同じ計算を標本や経過時間を1つずつ足しながら行い、途中の値も並べている。最後の行が、その期間全体の AAS と AAE になる。
クエリごとに分けると、次のようになる。
| クエリ | 標本に出た回数 | AAS | 実行時間の合計 | AAE |
|---|---|---|---|---|
| X | 3 | 0.75 | 3.0 秒 | 0.75 |
| Y | 1 | 0.25 | 0.4 秒 | 0.1 |
- 長いクエリ X は、AAS と AAE が一致した。動いている間の標本には必ず写る
- 短いクエリ Y は、AAS が AAE より大きくなった。1.9〜2.1秒の Y がたまたま2秒の標本に当たり、2.4〜2.6秒の Y は標本と標本の間で写らなかった
- 標本が少ないと、短いクエリの AAS はたまたま当たったかどうかで大きくぶれる。標本を増やすと、当たる割合が動いている時間の割合に近づき、AAS は AAE に近づく
ほとんどの場合、クエリの AAS と AAE はほぼ同じです。ただし、計算への入力は異なるデータソースであるため、計算はわずかに異なります。