Conceitos de Performance Insights - Amazon DocumentDB

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

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.