Q
蒙戈:從多收集
0
A
回答
2
目前Mongodb不支持交叉收集請求和AFAIK沒有計劃做這樣的功能。它與基於文檔的數據庫的整個概念不同。
我們在早期使用Nodejs項目時遇到了與Mongodb相同的問題。我們的解決方案是通過Mongodb的_id參數將子文檔放入另一個集合中,並引用父文檔。它的很大一部分是由Mongoose ORM處理的,但其核心仍然會做兩個不同的請求 - 一個用於檢索父文檔,另一個用於檢索所有子文檔,其中父文檔仍然有一個參數數組,其所有子項的列表爲_id
。
這是SQL和NoSQL之間的模式設計模式的區別。在SQL中,模式是固定的,並且改變它有時很痛苦,但是通過執行復雜請求的能力,您可以從這個固定模式中受益。在NoSQL中沒有固定的模式,所有的模式都在你的腦海(也許是文檔),你自己也需要遵循它,但是這爲你提供了一個在數據庫級別上的良好速度。
UPDATE
:畢竟我們最終將兩個集合合併爲一個。從父文檔查詢子文檔仍然存在一些問題,但它非常簡單,對我們來說沒有多大改變。我建議你看看這個,而不是分成兩個獨立的集合。它還主要依賴於你的數據庫的工作流程,你會做更多的讀取查詢或更多的寫入查詢嗎?使用NoSQL模式,您還需要考慮這些要點。如果更多的閱讀 - 單一收集是一種方式。
相關問題
- 1. 上蒙戈DB收集
- 2. 從蒙戈集合
- 3. 的MongoDB:從蒙戈集合
- 4. 不能從蒙戈集合
- 5. 蒙戈聚集慢
- 6. 從蒙戈DB
- 7. 蒙戈Db的多個集合查找
- 8. 從集合填充在蒙戈
- 9. 如何蒙戈集合
- 10. 配置蒙戈副本集
- 11. 在蒙戈DB集合
- 12. 蒙戈兩個集合
- 13. 蒙戈從故障
- 14. 蒙戈從陣列
- 15. 獲取從多個集合的數據在蒙戈
- 16. 多個蒙戈投影
- 17. 蒙戈搜索大量蒙戈IDS
- 18. 的NodeJS +蒙戈 - 得到收集/沒有方法的foreach
- 19. 蒙戈收集文檔的組織和查詢
- 20. 蒙戈:在收集數組元素爲每個條目
- 21. 出口蒙戈收集到JSON如何使用Node.js驅動
- 22. 設置最大的蒙戈加蓋收集
- 23. 找到一個蒙戈::收藏::查看
- 24. 從蒙戈文件用PHP
- 25. 春數據蒙戈 - 從@DbRef
- 26. 蒙戈從卡斯巴
- 27. 蒙戈不是從查詢
- 28. 刪除從蒙戈陣列
- 29. 只選擇從蒙戈
- 30. 從蒙戈Java客戶端