

# Estatísticas SQL para Performance Insights
<a name="sql-statistics"></a>

*Estatísticas SQL* são métricas de performance sobre consultas SQL coletadas pelo Performance Insights. O Performance Insights reúne estatísticas para cada segundo em que uma consulta está sendo executada e para cada chamada SQL. As estatísticas do SQL são uma média para o intervalo de tempo selecionado.

Um resumo SQL é um composto de todas as consultas com determinado padrão, mas não necessariamente com os mesmos valores literais. O resumo substitui valores literais por um ponto de interrogação. Por exemplo, `SELECT * FROM emp WHERE lname= ?`. Esse resumo pode consistir nas seguintes consultas subordinadas:

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

Todos os mecanismos são compatíveis com estatísticas de consultas de resumo.

Para receber informações sobre a compatibilidade da região, do mecanismo de banco de dados e da classe de instância com esse atributo, consulte [Mecanismo de banco de dados do Amazon Aurora, região e classe de instância compatíveis com recursos do Insights de Performance](USER_PerfInsights.Overview.Engines.md#USER_PerfInsights.Overview.PIfeatureEngnRegSupport).

**Topics**
+ [Estatísticas SQL para o Aurora MySQL](USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.md)
+ [Estatísticas SQL do Aurora PostgreSQL](USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.md)

# Estatísticas SQL para o Aurora MySQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL"></a>

O Aurora MySQL coleta estatísticas SQL somente em nível de resumo. Nenhuma estatística é mostrada em nível de instrução.

**Topics**
+ [Estatísticas de resumo para Aurora MySQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation)
+ [Estatísticas por segundo para o Aurora MySQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.per-second)
+ [Estatísticas por chamada para o Aurora MySQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation.per-call)
+ [Principais estatísticas para Aurora MySQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.primary)

## Estatísticas de resumo para Aurora MySQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation"></a>

O Performance Insights coleta estatísticas de resumo do SQL da tabela `events_statements_summary_by_digest`. A tabela `events_statements_summary_by_digest` é gerenciada pelo seu banco de dados. 

Ela não tem uma política de evicção. Quando a tabela estiver cheia, o Console de gerenciamento da AWS mostrará a seguinte mensagem:

```
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.
```

Nessa situação, o Aurora MySQL não rastreia consultas SQL. Para resolver esse problema, o Performance Insights trunca automaticamente a tabela de resumo quando ambas as condições são satisfeitas:
+ A tabela está cheia.
+ O Performance Insights gerencia o Performance Schema automaticamente.

  Para gerenciamento automático, o parâmetro `performance_schema` deve ser definido como `0` e **Source** (Origem) não deve ser definido como `user`. Se o Performance Insights não estiver gerenciando o Performance Schema automaticamente, consulte [Visão geral do Performance Schema para o Insights de Performance no Aurora MySQL](USER_PerfInsights.EnableMySQL.md).

Na AWS CLI, verifique a origem de um valor de parâmetro executando o comando [describe-db-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html).

## Estatísticas por segundo para o Aurora MySQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.per-second"></a>

As seguintes estatísticas do SQL estão disponíveis para clusters de banco de dados do Aurora MySQL


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.count\$1star\$1per\$1sec | Chamadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait\$1per\$1sec | Latência média por segundo (em ms) | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join\$1per\$1sec | Selecionar junção completa por segundo | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check\$1per\$1sec | Selecionar verificação de intervalo por segundo | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan\$1per\$1sec | Selecionar verificação por segundo | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes\$1per\$1sec | Classificar passagens de mesclagem por segundo | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan\$1per\$1sec | Classificar verificações por segundo | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range\$1per\$1sec | Classificar intervalos por segundo | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows\$1per\$1sec | Classificar linhas por segundo | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected\$1per\$1sec | Linhas afetadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined\$1per\$1sec | Linhas examinadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent\$1per\$1sec | Linhas enviadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables\$1per\$1sec | Tabelas de disco temporárias criadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables\$1per\$1sec | Tabelas temporárias criadas por segundo | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time\$1per\$1sec | Tempo de bloqueio por segundo (em ms) | 

## Estatísticas por chamada para o Aurora MySQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.truncation.per-call"></a>

As métricas a seguir fornecem estatísticas por chamada para uma instrução SQL.


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait\$1per\$1call | Latência média por chamada (em ms)  | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join\$1per\$1call | Selecionar junções completas por chamada | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check\$1per\$1call | Selecionar verificação de intervalo por chamada | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan\$1per\$1call | Selecionar verificações por chamada | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes\$1per\$1call | Classificar passagens de mesclagem por chamada | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan\$1per\$1call | Classificar verificações por chamada | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range\$1per\$1call | Classificar intervalos por chamada | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows\$1per\$1call | Classificar linhas por chamada | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected\$1per\$1call | Linhas afetadas por chamada | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined\$1per\$1call | Linhas examinadas por chamada | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent\$1per\$1call | Linhas enviadas por chamada | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables\$1per\$1call | Tabelas de disco temporárias criadas por chamada | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables\$1per\$1call | Tabelas temporárias criadas por chamada | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time\$1per\$1call | Tempo de leitura por chamada (em ms) | 

## Principais estatísticas para Aurora MySQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.MySQL.primary"></a>

As seguintes estatísticas do SQL estão disponíveis para clusters de banco de dados do Aurora MySQL


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.count\$1star | Calls | 
| db.sql\$1tokenized.stats.sum\$1timer\$1wait | Tempo de espera (em ms) | 
| db.sql\$1tokenized.stats.sum\$1select\$1full\$1join | Selecionar junção completa | 
| db.sql\$1tokenized.stats.sum\$1select\$1range\$1check | Selecionar verificações de intervalo | 
| db.sql\$1tokenized.stats.sum\$1select\$1scan | Selecionar verificações | 
| db.sql\$1tokenized.stats.sum\$1sort\$1merge\$1passes | Classificar passagens de mesclagem | 
| db.sql\$1tokenized.stats.sum\$1sort\$1scan | Classificar verificações | 
| db.sql\$1tokenized.stats.sum\$1sort\$1range | Classificar intervalos | 
| db.sql\$1tokenized.stats.sum\$1sort\$1rows | Classificar linhas | 
| db.sql\$1tokenized.stats.sum\$1rows\$1affected | Linhas afetadas | 
| db.sql\$1tokenized.stats.sum\$1rows\$1examined | Linhas examinadas | 
| db.sql\$1tokenized.stats.sum\$1rows\$1sent | Linhas enviadas | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1disk\$1tables | Tabelas de disco temporárias criadas | 
| db.sql\$1tokenized.stats.sum\$1created\$1tmp\$1tables | Tabelas temporárias criadas | 
| db.sql\$1tokenized.stats.sum\$1lock\$1time | Tempo de bloqueio (em ms) | 

# Estatísticas SQL do Aurora PostgreSQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL"></a>

Para cada chamada SQL e para cada segundo em que uma consulta é executada, o Performance Insights coleta estatísticas SQL. Todos os mecanismos do Aurora coletam estatísticas somente em nível de resumo.

A seguir, você pode encontrar informações sobre estatísticas no nível do resumo para Aurora PostgreSQL. 

**Topics**
+ [Estatísticas de resumo do AuroraPostgreSQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.digest)
+ [Estatísticas de resumo por segundo para o Aurora PostgreSQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-second)
+ [Estatísticas de resumo por chamada para o Aurora PostgreSQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-call)
+ [Principais estatísticas do Aurora PostgreSQL](#USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.primary)

## Estatísticas de resumo do AuroraPostgreSQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.digest"></a>

Para visualizar estatísticas do SQL Digest, a biblioteca `pg_stat_statements` deve estar carregada. Essa biblioteca é carregada por padrão para clusters de banco de dados Aurora PostgreSQL que são compatíveis com PostgreSQL 10. Você deve habilitar essa biblioteca manualmente para clusters de banco de dados Aurora PostgreSQL compatíveis com o PostgreSQL 9.6. Para ativá-la manualmente, adicione `pg_stat_statements` a `shared_preload_libraries` no grupo de parâmetros de banco de dados associado à instância de banco de dados. Em seguida, reinicialize sua instância de banco de dados. Para obter mais informações, consulte [Grupos de parâmetros para Amazon Aurora](USER_WorkingWithParamGroups.md).

**nota**  
O Performance Insights só pode coletar estatísticas em relação a consultas não truncadas em `pg_stat_activity`. Por padrão, os bancos de dados PostgreSQL truncam consultas com mais de 1.024 bytes. Para aumentar o tamanho das consultas, altere o parâmetro `track_activity_query_size` no grupo de parâmetros de banco de dados associado à sua instância de banco de dados. Ao alterar esse parâmetro, uma reinicialização da instância de banco de dados é necessária.

## Estatísticas de resumo por segundo para o Aurora PostgreSQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-second"></a>

As seguintes estatísticas de resumo SQL estão disponíveis para instância de banco de dados Aurora PostgreSQL.


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.calls\$1per\$1sec | Chamadas por segundo | 
| db.sql\$1tokenized.stats.rows\$1per\$1sec | Linhas por segundo | 
| db.sql\$1tokenized.stats.total\$1time\$1per\$1sec | Média de execuções ativas por segundo (AAE) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit\$1per\$1sec | Acertos de bloco por segundo | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read\$1per\$1sec | Leituras de bloco por segundo | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied\$1per\$1sec | Blocos sujos por segundo | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written\$1per\$1sec | Gravações de bloco por segundo | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit\$1per\$1sec | Acertos de bloco local por segundo | 
| db.sql\$1tokenized.stats.local\$1blks\$1read\$1per\$1sec | Leituras de bloco local por segundo | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied\$1per\$1sec | Bloco local sujo por segundo | 
| db.sql\$1tokenized.stats.local\$1blks\$1written\$1per\$1sec | Gravações de bloco local por segundo | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written\$1per\$1sec | Gravações temporárias por segundo | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read\$1per\$1sec | Leituras temporárias por segundo | 
| db.sql\$1tokenized.stats.blk\$1read\$1time\$1per\$1sec | Leituras simultâneas médias por segundo | 
| db.sql\$1tokenized.stats.blk\$1write\$1time\$1per\$1sec | Gravações simultâneas médias por segundo | 

## Estatísticas de resumo por chamada para o Aurora PostgreSQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.per-call"></a>

As métricas a seguir fornecem estatísticas por chamada para uma instrução SQL.


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.rows\$1per\$1call | Linhas por chamada | 
| db.sql\$1tokenized.stats.avg\$1latency\$1per\$1call | Latência média por chamada (em ms) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit\$1per\$1call | Acertos de bloco por chamada | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read\$1per\$1call | Leituras de bloco por chamada | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written\$1per\$1call | Gravações de bloco por chamada | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied\$1per\$1call | Blocos sujos por chamada | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit\$1per\$1call | Acertos de bloco local por chamada | 
| db.sql\$1tokenized.stats.local\$1blks\$1read\$1per\$1call | Leituras de bloco local por chamada | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied\$1per\$1call | Bloco local sujo por chamada | 
| db.sql\$1tokenized.stats.local\$1blks\$1written\$1per\$1call | Gravações de bloco local por chamada | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written\$1per\$1call | Gravações temporárias de bloco por chamada | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read\$1per\$1call | Leituras temporárias de bloco por chamada | 
| db.sql\$1tokenized.stats.blk\$1read\$1time\$1per\$1call | Tempo de leitura por chamada (em ms) | 
| db.sql\$1tokenized.stats.blk\$1write\$1time\$1per\$1call | Tempo de gravação por chamada (em ms) | 

## Principais estatísticas do Aurora PostgreSQL
<a name="USER_PerfInsights.UsingDashboard.AnalyzeDBLoad.AdditionalMetrics.PostgreSQL.primary"></a>

As estatísticas de SQL a seguir estão disponíveis para instâncias de banco de dados do Aurora PostgreSQL.


| Métrica | Unidade | 
| --- | --- | 
| db.sql\$1tokenized.stats.calls | Calls  | 
| db.sql\$1tokenized.stats.rows | Linhas  | 
| db.sql\$1tokenized.stats.total\$1time | Tempo total (em ms) | 
| db.sql\$1tokenized.stats.shared\$1blks\$1hit | Acertos de bloco  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1read | Leituras de bloco  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1dirtied | Blocos sujos  | 
| db.sql\$1tokenized.stats.shared\$1blks\$1written | Gravações de bloco  | 
| db.sql\$1tokenized.stats.local\$1blks\$1hit | Acertos de bloco local  | 
| db.sql\$1tokenized.stats.local\$1blks\$1read | Leituras de bloco local  | 
| db.sql\$1tokenized.stats.local\$1blks\$1dirtied | Blocos locais sujos | 
| db.sql\$1tokenized.stats.local\$1blks\$1written | Gravações de bloco local  | 
| db.sql\$1tokenized.stats.temp\$1blks\$1written | Gravações temporárias  | 
| db.sql\$1tokenized.stats.temp\$1blks\$1read | Leituras temporárias  | 
| db.sql\$1tokenized.stats.blk\$1read\$1time | Média de leituras simultâneas (em ms) | 
| db.sql\$1tokenized.stats.blk\$1write\$1time | Média de gravações simultâneas (em ms) | 

Para obter mais informações sobre essas métricas, consulte [pg\$1stat\$1statements](https://www.postgresql.org/docs/current/pgstatstatements.html) na documentação do PostgreSQL.