

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Conceitos de Performance Insights
<a name="performance-insights-concepts"></a>

**Topics**
+ [Média de sessões ativas](#performance-insights-concepts-sessions)
+ [Dimensões](#performance-insights-concepts-dimensions)
+ [Máx. vCPU](#performance-insights-concepts-maxvcpu)

## Média de sessões ativas
<a name="performance-insights-concepts-sessions"></a>

Database load (DB load) (Carga do banco de dados) mede o nível de atividade no seu banco de dados. A métrica chave do Performance Insights é `DB Load`, que é coletada a cada segundo. A unidade para a métrica `DBLoad` é a *Average Active Sessions (AAS)* para uma instância do Amazon DocumentDB.

Uma sessão *ativa* é uma conexão que enviou trabalho para a instância do Amazon DocumentDB e está aguardando uma resposta. Por exemplo, se você enviar uma consulta a uma instância do Amazon DocumentDB, a sessão do banco de dados estará ativa enquanto a instância estiver processando a consulta.

Para obter a média de sessões ativas, o Performance Insights faz uma amostra do número de sessões executando simultaneamente uma consulta. O AAS é o número total de sessões divididas pelo número total de amostras. A tabela a seguir mostra 5 amostras consecutivas de uma consulta em execução.


| Amostra | Número de sessões que executam a consulta | AAS | Cálculo | 
| --- | --- | --- | --- | 
|  1  |  2  |  2  |  2 sessões/1 amostra  | 
|  2  |  0  |  1  |  2 sessões/2 amostras  | 
|  3  |  4  |  2  |  6 sessões/3 amostras  | 
|  4  |  0  |  1.5  |  6 sessões/4 amostras  | 
|  5  |  4  |  2  |  10 sessões/5 amostras  | 

No exemplo anterior, a carga do banco de dados para o intervalo de tempo 1-5 é 2 AAS. Um aumento na carga do banco de dados significa que, em média, mais sessões estão sendo executadas no banco de dados.

## Dimensões
<a name="performance-insights-concepts-dimensions"></a>

A métrica `DB Load` é diferente das outras métricas da série temporal, pois você pode fragmentá-la em subcomponentes chamados de dimensões. É possível pensar em dimensões como categorias para as diferentes características da métrica `DB Load`. Quando você está diagnosticando problemas de performance, as dimensões mais úteis são **estados de espera** e **consulta principal**.

**estados de espera**  
Um *evento de espera* faz com que uma instrução de consulta aguarde que um evento específico aconteça antes que possa continuar a execução. Por exemplo, a execução da instrução de consulta pode aguardar até que um recurso bloqueado seja desbloqueado. Ao combinar `DB Load` com estados de espera, é possível obter uma imagem completa do estado da sessão. Aqui estão vários estados de espera do Amazon DocumentDB:


| Estado de espera do Amazon DocumentDB | Descrição do estado de espera | 
| --- | --- | 
|  Latch  |  O estado de espera Latch ocorre quando a sessão está aguardando para paginar o buffer pool. A entrada e saída frequentes do buffer pool podem ocorrer com mais frequência quando há consultas grandes e frequentes sendo processadas pelo sistema, varreduras de coleção ou quando o buffer pool é muito pequeno para lidar com o conjunto de trabalho.  | 
| CPU |  O estado de espera da CPU ocorre quando a sessão está aguardando a CPU.  | 
|  CollectionLock  |  O estado de CollectionLock espera ocorre quando a sessão está aguardando para adquirir um bloqueio na coleção. Esses eventos ocorrem quando há operações de DDL na coleção.  | 
| DocumentLock |  O estado de DocumentLock espera ocorre quando a sessão está aguardando para obter um bloqueio em um documento. Um alto número de gravações simultâneas no mesmo documento contribuirá para mais estados de DocumentLock espera nesse documento.   | 
|  SystemLock  |  O estado de SystemLock espera ocorre quando a sessão está aguardando no sistema. Isso pode ocorrer quando há consultas frequentes de longa duração, transações de longa duração ou alta simultaneidade no sistema.  | 
|  IO  |  O estado de espera IO ocorre quando a sessão está aguardando pela conclusão de IO.  | 
|  BufferLock  |  O estado de BufferLock espera ocorre quando a sessão está aguardando para adquirir um bloqueio em uma página compartilhada no buffer. BufferLockos estados de espera podem ser prolongados se outros processos mantiverem cursores abertos nas páginas solicitadas.   | 
|  LowMemThrottle  |  O estado de LowMemThrottle espera ocorre quando a sessão está esperando devido à forte pressão de memória na instância do Amazon DocumentDB. Se esse estado persistir por muito tempo, considere escalar a instância para fornecer memória adicional. Para obter mais informações, consulte [Regulador de recursos](https://docs.aws.amazon.com/documentdb/latest/developerguide/how-it-works.html).  | 
|  BackgroundActivity  |  O estado de BackgroundActivity espera ocorre quando a sessão está aguardando processos internos do sistema.  | 
|  Outros  |  O estado de espera Outros é um estado de espera interno. Se esse estado persistir por muito tempo, considere encerrar essa consulta. Para mais informações, consulte [Como faço para localizar e encerrar consultas bloqueadas ou de longa execução?](https://docs.aws.amazon.com/documentdb/latest/developerguide/user_diagnostics.html#user_diagnostics-query_terminating.html)  | 

**Principais consultas**  
Enquanto os eventos de espera mostram gargalos, as principais consultas mostram quais consultas estão contribuindo mais para a carga do banco de dados. Por exemplo, muitas consultas podem estar atualmente em execução no banco de dados, mas uma única consulta pode consumir 99% da carga do banco de dados. Nesse caso, a carga alta pode indicar um problema com a consulta.

## Máx. vCPU
<a name="performance-insights-concepts-maxvcpu"></a>

No painel, o gráfico **Carga de banco de dados** coleta, agrega e exibe informações da sessão. Para ver se as sessões ativas estão excedendo o máximo de CPU, observe sua relação com a linha **Máx. vCPU**. O valor de **Máx. vCPU** é determinado pelo número de núcleos de vCPU (CPUs virtuais) da instância do Amazon DocumentDB.

Se a carga de banco de dados estiver com frequência acima da linha **Máx. vCPU** e o estado de espera primário for CPU, isso indicará que a CPU está sobrecarregada. Nesse caso, convém controlar a utilização as conexões com a instância, ajustar todas as consultas com uma alta carga de CPU ou considerar uma classe de instância maior. As instâncias altas e consistentes de qualquer estado de espera indicam que pode haver problemas de gargalos ou de contenção de recursos que você deve resolver. Isso pode ser válido mesmo quando a carga do banco de dados não ultrapassa a linha de **Máx. vCPU**.