[英]How Mongodb queries works in node.js?
我在 Node.js Express.js MongoDB 和 Mongoose 中有一個非常簡單的搜索查詢:
await Model.find({}).limit(10);
我的問題是建築師如何工作? 是先獲取所有模型數據然后限制為 10 還是在獲取所有數據之前從數據庫中獲取 select 10 項? 我的意思是步驟:
從 Model 中查找所有數據並返回為 List(Array) --> 2. 限制 10 個第一項並從 List(Array) 中刪除其他項。
查找前 10 個項目並以 List(Array) 形式返回
性能差異很大,第一步是如果我們獲得一百萬個數據,它將以巨大的 10 20 秒返回 1 個研磨項目,然后限制其中的 10 個,我們失去 10 20 秒的時間,當用戶更多時服務器將完成,但第二種方式即使有 1 億個項目,也總是需要相同的時間。
function 設置的limit
指定了cursor
將返回的最大元素數。 在您的示例中,cursor 將僅返回與查詢匹配的前 10 個項目(選項 2)。 您可以通過以下鏈接找到有關cursor.limit()
如何工作的更多信息:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.