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
Média de sessões ativas
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 métrica DB Load
é diferente das outras métricas da série temporal, pois você pode fragmentá-la em subcomponentes chamados de dimensões. Você pode 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á esperando 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. |
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? |
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
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.