Uma abordagem para este problema, se você tiver grandes quantidades de documentos e estiver exibindo-os em classificados ordem (não tenho certeza de quão útil
skip
é se você não estiver) seria usar a chave que você está classificando para selecionar a próxima página de resultados. Então, se você começar com
db.myCollection.find().limit(100).sort({created_date:true});
e, em seguida, extraia a data de criação do último documento retornado pelo cursor em uma variável
max_created_date_from_last_result
, você pode obter a próxima página com o muito mais eficiente (presumindo que você tenha um índice em created_date
) inquerir db.myCollection.find({created_date : { $gt : max_created_date_from_last_result } }).limit(100).sort({created_date:true});