db.collection.estimatedDocumentCount()
Nesta página
MongoDB com drivers
Esta página documenta um método mongosh
. Para ver o método equivalente em um driver do MongoDB, consulte a página correspondente da sua linguagem de programação:
Definição
db.collection.estimatedDocumentCount(options)
Returns the count of all documents in a collection or view.
db.collection.estimatedDocumentCount( <options> ) ParâmetroTipoDescriçãoopções
documento
Optional. Extra options that affect the count behavior.
O documento
options
pode conter o seguinte:CampoTipoDescriçãomaxTimeMS
inteiro
Opcional. A quantidade máxima de tempo para permitir a execução da contagem.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Comportamento
Mecânica
db.collection.estimatedDocumentCount()
does not take a query
filter and instead uses metadata to return the count for a collection.
For a view:
There is no metadata.
The document count is calculated by executing the aggregation pipeline in the view definition.
There is no fast estimated document count.
Clusters fragmentados
On a sharded cluster, the resulting count will not correctly filter out orphaned documents.
Unclean Shutdown
This section only applies to collections.
After an unclean shutdown, the count may be incorrect.
Após um desligamento impuro de um mongod
usando o mecanismo de armazenamento Wired Tiger, as estatísticas de contagem relatadas por db.collection.estimatedDocumentCount()
podem ser imprecisas.
A quantidade de desvio depende do número de operações de inserção, atualização ou exclusão executadas entre o último ponto de verificação e o desligamento não limpo. Os pontos de verificação geralmente ocorrem a cada 60 segundos. No entanto, mongod
instâncias executadas com configurações de --syncdelay
não padrão podem ter pontos de verificação mais ou menos frequentes.
Execute validate
em cada collection no mongod
para restaurar as estatísticas depois de um desligamento impróprio.
Após um desligamento impróprio:
Desconexão do cliente
A partir do MongoDB 4.2, se o cliente que emitiu db.collection.estimatedDocumentCount()
se desconectar antes da conclusão da operação, o MongoDB marcará db.collection.estimatedDocumentCount()
para encerramento usando killOp
.
Contagem e Transações
Quando você usa db.collection.estimatedDocumentCount()
em uma transação, a contagem resultante não filtrará transações multidocumentos não confirmada.
Exemplo
The following example uses
db.collection.estimatedDocumentCount()
to retrieve the count of
all documents in the orders
collection:
db.orders.estimatedDocumentCount({})
Veja também: