MongoDB con controladores
Esta página documenta una mongosh . Para ver el método equivalente en un driver de MongoDB, se debe consultar la página correspondiente al lenguaje de programación:
Definición
db.collection.estimatedDocumentCount(options)Devuelve el recuento de todos los documentos en una colección o vista.
db.collection.estimatedDocumentCount( <options> ) ParameterTipoDescripciónopciones
Documento
Opcional. Opciones adicionales que afectan el comportamiento del conteo.
El documento
optionspuede contener lo siguiente:CampoTipoDescripciónmaxTimeMSentero
Opcional. El tiempo máximo permitido para que el conteo se ejecute.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Comportamiento
Mecanismo
db.collection.estimatedDocumentCount() no toma un filtro de consulta y en su lugar utiliza metadatos para devolver el recuento de una colección.
Para una vista:
No hay metadatos.
El recuento de documentos se calcula ejecutando el pipeline de agregación en la definición de la vista.
No existe un conteo estimado rápido de documentos.
Clústeres fragmentados
En un clúster, el recuento resultante no filtrará correctamente los documentos huérfanos.
Apagado impuro
Esta sección sólo se aplica a colecciones.
Después de un apagado incorrecto, el recuento puede ser incorrecto.
Después de un cierre no limpio de un mongod que utiliza el motor de almacenamiento WiredTiger, las estadísticas de conteo informadas por db.collection.estimatedDocumentCount() pueden ser inexactas.
La cantidad de deriva depende del número de operaciones de inserción, actualización o eliminación realizadas entre el último punto de control y el apagado no limpio. Los puntos de control suelen ocurrir cada 60 segundos. Sin embargo, las instancias mongod que se ejecutan con configuraciones --syncdelay no por defecto pueden tener puntos de control más o menos frecuentes.
Ejecuta validate en cada colección en el mongod para restaurar las estadísticas después de un apagado no limpio.
Después de un apagado no limpio:
Desconexión del cliente
Si el cliente que emitió db.collection.estimatedDocumentCount() se desconecta antes de que la operación se complete, MongoDB marca db.collection.estimatedDocumentCount() para su terminación usando killOp.
Conteo y transacciones
Cuando se usa db.collection.estimatedDocumentCount() en una transacción, el recuento resultante no filtrará ninguna transacción multi-documento no comprometida.
Ejemplo
El siguiente ejemplo utiliza para recuperar el recuento de todos los documentos en db.collection.estimatedDocumentCount() la orders colección:
db.orders.estimatedDocumentCount({})