Do documento , dizia
"Para um melhor desempenho, a maioria do seu conjunto ativo deve caber na RAM."
Então, por exemplo, meu db.stats()
me dê
{
"db" : "mydb",
"collections" : 16,
"objects" : 21452,
"avgObjSize" : 768.0516501957859,
"dataSize" : 16476244,
"storageSize" : 25385984,
"numExtents" : 43,
"indexes" : 70,
"indexSize" : 15450112,
"fileSize" : 469762048,
"ok" : 1
}
Qual é o valor working set size
?
Respostas:
A pergunta / resposta do SO vinculada por quanta nos comentários está correta, o "Conjunto de trabalho" é basicamente a quantidade de dados E índices que estarão ativos / em uso pelo seu sistema.
Você não pode dizer com o
db.stats()
que isso será, a menos que você pense que precisará ter todo o conjunto de dados e todo o índice na RAM. Ou seja, é possível calcular o conjunto de trabalho máximo para esse banco de dados, mas não o conjunto de trabalho ativo real. O máximo é a soma de:No seu caso, esse máximo seria de aproximadamente 30,45 MiB, considerando a saída que você colou.
Para rastrear o uso de memória real Eu recomendaria uma combinação das figuras de
db.stats()
e os gráficos de memória (memória residente em particular) disponíveis na ferramenta de monitoramento livre - MMS .Atualização (04/08/2013):
A versão 2.4 adicionou um Estimador de tamanho do conjunto de trabalho ao comando serverStatus - é apenas uma estimativa, mas pode ser usado como um guia e para verificar se as outras figuras e estimativas acima fazem sentido para a instância do MongoDB.
Atualização (setembro de 2016):
Três anos depois da minha resposta original e as coisas são muito mais complicadas - geralmente obter o tamanho dos seus dados e seus índices ainda é um bom ponto de partida. Mas, descobrir as coisas no MongoDB agora dependerá do mecanismo de armazenamento que você está usando. Além disso, a Versão 3.0 removeu o estimador do Conjunto de Trabalho vinculado acima para o MMAP como parte do trabalho de bloqueio no nível da coleção (consulte SERVER-13783 ). Agora existem (por exemplo) as estatísticas de cache do
WiredTiger
mecanismo como uma substituição, supondo que você tenha saltado para o novo mecanismo. Por issoMMAP
, a recomendação geral é considerar a métrica de falhas de página como um proxy para determinar se seus dados estão se encaixando na memória ou não.fonte
MMS
já estou usando , mas não tenho certeza de qual figura olhar.