我分頁通過一個非常大的文件集合。我想知道這是否是一種有效的在mongoDB中使用_id的分頁方法。我擔心的是,每次查詢時,在返回結果之前,需要對整個id集合進行排序。我看到這個文檔關於索引優化查詢,但這會適用於我,因爲我查詢_id,我會認爲已經索引?有沒有什麼辦法來優化這個MongoDB查詢在Node.js分頁
分頁功能:
function paginateDocs(currId, docsPerPage) {
const query = currId ? { _id: { $gt: currId } } : {};
const queryOptions = { limit: usersPerPage, sort: '_id' };
return mongo.find(query, queryOptions).toArray();
}
它應該選取默認索引「{_id:1}」,然後在btree的'> currId'範圍內查找文檔。你可以粘貼輸出'mongo.explain(1).find(查詢,選項)' – hyades
我不能在生產環境中執行此操作,所以我認爲這不會有用嗎? –