sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Debo usar la opción allowDiskUse en un entorno de producto?

allowDiskUse no está relacionado con el límite de tamaño de resultado de 16 MB. Esa configuración controla si los pasos de la canalización, como $ordenar o $agrupar, pueden usar algo de espacio temporal en el disco si necesitan más de 100 MB de memoria. En teoría, para una tubería arbitraria, esto podría ser una gran cantidad de espacio en disco. Personalmente, nunca ha sido un problema, pero eso dependerá de sus datos.

Si su resultado va a ser más de 16 MB, entonces necesita usar la etapa de canalización $out para enviar los datos a una colección o usar una API de canalización que devuelve un cursor a los resultados en lugar de devolver todos los datos en línea (para algunos controladores esto es un método separado, para otros es un indicador pasado al mismo método).