

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 績效詳情的 SQL 統計數字
<a name="sql-statistics"></a>

*SQL 統計數字*是績效詳情所收集有關 SQL 查詢的效能相關指標。績效詳情會收集查詢執行的每一秒和每個 SQL 呼叫的統計資料。SQL 統計資料是所選時間範圍的平均值。

SQL 摘要是具有給定模式但不一定具有相同字面值的所有查詢的複合。摘要會以問號來取代字面值。例如 `SELECT * FROM emp WHERE lname= ?`。此摘要可能包含下列子查詢：

```
SELECT * FROM emp WHERE lname = 'Sanchez'
SELECT * FROM emp WHERE lname = 'Olagappan'
SELECT * FROM emp WHERE lname = 'Wu'
```

所有引擎都支援摘要查詢的 SQL 統計資料。

如需此功能的區域、資料庫引擎和執行個體類別支援的資訊，請參閱 [Performance Insights 功能的 Amazon Aurora 資料庫引擎、區域和執行個體類別支援](USER_PerfInsights.Overview.Engines.md#USER_PerfInsights.Overview.PIfeatureEngnRegSupport)

**Topics**
+ [Aurora MySQL 的 SQL 統計資料](USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.md)
+ [Aurora PostgreSQL 的 SQL 統計資料](USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.md)

# Aurora MySQL 的 SQL 統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL"></a>

Aurora MySQL 只收集摘要層級的 SQL 統計數字。不會顯示陳述式層級的統計數字。

**Topics**
+ [Aurora MySQL 的摘要統計資料](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation)
+ [Aurora MySQL 的每秒統計數字](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.per-second)
+ [Aurora MySQL 的每次呼叫統計數字](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation.per-call)
+ [Aurora MySQL 的主要統計資料](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.primary)

## Aurora MySQL 的摘要統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation"></a>

績效詳情會從 `events_statements_summary_by_digest` 資料表收集 SQL 摘要統計數字。`events_statements_summary_by_digest` 資料表由資料庫管理。

摘要資料表沒有移出政策。當資料表已滿時， AWS 管理主控台 會顯示下列訊息：

```
Performance Insights is unable to collect SQL Digest statistics on new queries because the table events_statements_summary_by_digest is full. 
Please truncate events_statements_summary_by_digest table to clear the issue. Check the User Guide for more details.
```

在這種情況下，Aurora MySQL 不會追蹤 SQL 查詢。如要解決此問題，績效詳情會在滿足下列兩個條件時自動截斷摘要資料表：
+ 表格已滿。
+ 績效詳情會自動管理效能結構描述。

  若要進行自動管理，`performance_schema` 參數必須設定為 `0`，而 **Source** (來源) 不可設定為 `user`。如果績效詳情未自動管理效能結構描述，請參閱 [Aurora MySQL 上 Performance Insights 的效能結構描述概觀](USER_PerfInsights.EnableMySQL.md)。

在 中 AWS CLI，執行 [describe-db-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) 命令來檢查參數值的來源。

## Aurora MySQL 的每秒統計數字
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.per-second"></a>

以下 SQL 統計資料適用於 Aurora MySQL 資料庫 叢集。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.count\$1star\$1per\$1sec | 每秒呼叫數 | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait\$1per\$1sec | 每秒平均延遲 (毫秒) | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join\$1per\$1sec | 選取每秒完整聯結 | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check\$1per\$1sec | 選取每秒範圍檢查 | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan\$1per\$1sec | 選取每秒掃瞄 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes\$1per\$1sec | 排序每秒合併路徑 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan\$1per\$1sec | 排序每秒掃描 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range\$1per\$1sec | 排序每秒範圍 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows\$1per\$1sec | 排序每秒列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected\$1per\$1sec | 每秒影響的列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined\$1per\$1sec | 每秒檢查的列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent\$1per\$1sec | 每秒傳送的列數 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables\$1per\$1sec | 每秒建立的暫存磁碟資料表 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables\$1per\$1sec | 每秒建立的暫存資料表 | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time\$1per\$1sec | 每秒鎖定時間 (毫秒) | 

## Aurora MySQL 的每次呼叫統計數字
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation.per-call"></a>

下列指標提供 SQL 陳述式的每次呼叫統計數字。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait\$1per\$1call | 每次呼叫平均延遲 (毫秒)  | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join\$1per\$1call | 選取每個呼叫的完整聯結 | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check\$1per\$1call | 選取每個呼叫的範圍檢查 | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan\$1per\$1call | 選取每個呼叫的掃描 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes\$1per\$1call | 排序每個呼叫的合併路徑 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan\$1per\$1call | 排序每個呼叫的掃描 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range\$1per\$1call | 排序每個呼叫的範圍 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows\$1per\$1call | 排序每個呼叫的列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected\$1per\$1call | 每個呼叫受影響的列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined\$1per\$1call | 每個呼叫所檢查的列數 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent\$1per\$1call | 每個呼叫傳送的列數 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables\$1per\$1call | 每個呼叫建立的暫存磁碟資料表 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables\$1per\$1call | 每個呼叫建立的暫存資料表 | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time\$1per\$1call | 每個呼叫鎖定時間 (毫秒) | 

## Aurora MySQL 的主要統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.primary"></a>

以下 SQL 統計資料適用於 Aurora MySQL 資料庫 叢集。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.count\$1star | 呼叫 | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait | 等待時間 (毫秒) | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join | 選取完整聯結 | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check | 選取範圍檢查 | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan | 選取掃描 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes | 排序合併傳遞 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan | 排序掃描 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range | 排序範圍 | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows | 排序資料列 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected | 受影響的資料列 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined | 已檢查的資料列 | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent | 已傳送的資料列 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables | 已建立暫存磁碟資料表 | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables | 已建立暫存資料表。 | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time | 鎖定時間 (毫秒) | 

# Aurora PostgreSQL 的 SQL 統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL"></a>

Performance Insights 會針對每一次 SQL 呼叫和執行查詢的每一秒收集 SQL 統計資料。所有 Aurora 引擎只收集摘要層級的統計資料。

您可以在下文中了解 Aurora PostgreSQL、 摘要層級統計資料的相關資訊。

**Topics**
+ [Aurora PostgreSQL 的摘要統計數字](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.digest)
+ [Aurora PostgreSQL 的每秒摘要統計資料](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-second)
+ [Aurora PostgreSQL 的每次呼叫摘要統計資料](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-call)
+ [Aurora PostgreSQL 的主要統計資料](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.primary)

## Aurora PostgreSQL 的摘要統計數字
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.digest"></a>

若要檢視 SQL 摘要統計資料，必須載入 `pg_stat_statements` 程式庫。針對與 PostgreSQL 10 相容的 Aurora PostgreSQL 資料庫叢集，依預設會載入此程式庫。針對與 PostgreSQL 9.6 相容的 Aurora PostgreSQL 資料庫叢集，您可以手動啟用此程式庫。若要手動啟用，請在與資料庫執行個體相關聯的資料庫參數群組中，將 `pg_stat_statements` 新增至 `shared_preload_libraries`。然後，重新啟動您的資料庫執行個體。如需更多詳細資訊，請參閱 [Amazon Aurora 的參數群組](USER_WorkingWithParamGroups.md)。

**注意**  
績效詳情只能在 `pg_stat_activity` 中收集未截斷的查詢的統計資料。根據預設，PostgreSQL 資料庫會截斷超過 1,024 位元組的查詢。若要增加查詢大小，請變更與資料庫執行個體相關聯的資料庫參數群組中的 `track_activity_query_size` 參數。當您變更此參數時，需要重新啟動資料庫執行個體。

## Aurora PostgreSQL 的每秒摘要統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-second"></a>

Aurora PostgreSQL 資料庫執行個體有下列 SQL 摘要統計資料。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.calls\$1per\$1sec | 每秒呼叫數 | 
| db.sql\$1tokenized.stats.rows\$1per\$1sec | 每秒列數 | 
| db.sql\$1tokenized.stats.total\$1time\$1per\$1sec | 每秒平均作用中執行數 (AAE) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit\$1per\$1sec | 每秒區塊命中數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read\$1per\$1sec | 每秒區塊讀取數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied\$1per\$1sec | 每秒區塊變動數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written\$1per\$1sec | 每秒區塊寫入數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit\$1per\$1sec | 每秒本機區塊命中數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1read\$1per\$1sec | 每秒本機區塊讀取數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied\$1per\$1sec | 每秒本機區塊變動數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1written\$1per\$1sec | 每秒本機區塊寫入數 | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written\$1per\$1sec | 每秒暫時寫入數 | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read\$1per\$1sec | 每秒暫時讀取數 | 
| db.sql\$1tokenized.stats.blk\$1read\$1time\$1per\$1sec | 每秒平均並行讀取數 | 
| db.sql\$1tokenized.stats.blk\$1write\$1time\$1per\$1sec | 每秒平均並行寫入數 | 

## Aurora PostgreSQL 的每次呼叫摘要統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-call"></a>

下列指標提供 SQL 陳述式的每次呼叫統計數字。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.rows\$1per\$1call | 每次呼叫列數 | 
| db.sql\$1tokenized.stats.avg\$1latency\$1per\$1call | 每次呼叫平均延遲 (毫秒) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit\$1per\$1call | 每次呼叫區塊命中數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read\$1per\$1call | 每次呼叫區塊讀取數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written\$1per\$1call | 每次呼叫區塊寫入數 | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied\$1per\$1call | 每次呼叫區塊變動數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit\$1per\$1call | 每次呼叫本機區塊命中數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1read\$1per\$1call | 每次呼叫本機區塊讀取數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied\$1per\$1call | 每次呼叫本機區塊變動數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1written\$1per\$1call | 每次呼叫本機區塊寫入數 | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written\$1per\$1call | 每次呼叫暫時區塊寫入數 | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read\$1per\$1call | 每次呼叫暫時區塊讀取數 | 
| db.sql\$1tokenized.stats.blk\$1read\$1time\$1per\$1call | 每次呼叫讀取時間 (毫秒) | 
| db.sql\$1tokenized.stats.blk\$1write\$1time\$1per\$1call | 每次呼叫寫入時間 (毫秒) | 

## Aurora PostgreSQL 的主要統計資料
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.primary"></a>

下列 SQL 統計資料適用於 Aurora PostgreSQL 資料庫執行個體。


| 指標 | 單位 | 
| --- | --- | 
| db.sql\$1tokenized.stats.calls | 呼叫  | 
| db.sql\$1tokenized.stats.rows | 資料列  | 
| db.sql\$1tokenized.stats.total\$1time | 時間總計 (毫秒) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit | 區塊命中  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read | 區塊讀取  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied | 區塊變動數  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written | 區塊寫入  | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit | 本機區塊命中  | 
| db.sql\$1tokenized.stats.local\$1blks\$1read | 本機區塊讀取  | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied | 本機區塊變動數 | 
| db.sql\$1tokenized.stats.local\$1blks\$1written | 本機區塊寫入  | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written | 暫時寫入  | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read | 暫時讀取  | 
| db.sql\$1tokenized.stats.blk\$1read\$1time | 平均並行讀取 (毫秒) | 
| db.sql\$1tokenized.stats.blk\$1write\$1time | 平均並行寫入 (毫秒) | 

如需這些指標的詳細資訊，請參閱 PostgreSQL 文件中的 [pg\$1stat\$1statements](https://www.postgresql.org/docs/current/pgstatstatements.html)。