我有以下問題連接到MongoDB數據庫設計。這裏是我的情況:MongoDB:什麼是更快:單個find()查詢或許多find_one()?
- 我有大約50K的文檔集合(15KB每)
- 每一個文件都有一本字典存儲的數據樣本,
- 我的查詢總是會從文檔中的所有數據,
- 每個查詢使用一個索引,
- 集合只有一個索引(基於單個日期時間字段),
- 在大多數情況下,我需要從許多文件(通常爲25 <ñ數據100),
- 很容易,我在一個單一的一個執行許多SELECT查詢,
- 我有很多我的數據庫更新,比SELECT的人少得多的,
- 我使用WiredTiger引擎(最新版本的MongoDB),
- 服務器實例和web應用程序在同一臺機器上。
我有兩個可能性,使一個SELECT查詢:
- 執行一個查詢檢索我感興趣的所有文件,
- 進行N次查詢,每個人都有一個單一的文件,其中一般爲25 <ñ< 100(怎麼樣不同的場景時,100 <ñ< 1K或1K <ñ< 10K?)
所以問題是當我在單個執行很多小的查詢時是否還有額外的開銷?在關係數據庫中進行許多查詢是非常糟糕的做法 - 但在NoSQL中?我在詢問一個普遍的做法 - 我應該避免這麼多疑問嗎?
在文檔中,我讀到查詢的數量並不重要,但對文檔的搜索次數是真的嗎?
感謝您的幫助;)