MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Devo usare l'opzione allowDiskUse in un ambiente di prodotto?

allowDiskUse non è correlato al limite delle dimensioni dei risultati di 16 MB. Tale impostazione controlla se i passaggi della pipeline come $sort o $group possono utilizzare spazio su disco temporaneo se necessitano di più di 100 MB di memoria. In teoria, per una pipeline arbitraria questa potrebbe essere una quantità molto grande di spazio su disco. Personalmente non è mai stato un problema, ma dipenderà dai tuoi dati.

Se il risultato sarà superiore a 16 MB, è necessario utilizzare la fase della pipeline $out per inviare i dati a una raccolta o utilizzare un'API della pipeline che restituisca un cursore sui risultati invece di restituire tutti i dati inline (per alcuni driver questo è un metodo separato, per altri è un flag passato allo stesso metodo).