Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
原谅 SQL 语法,因为我是 mongo 的新手,但如果我做了相当于
SELECT count(*) FROM table WHERE indexed_field=val
在 MongoDB 中,它会在 O(1) 时间还是 O(N) 时间内运行,其中 N 是匹配数?基于此提交,答案似乎是 O(N)并且这表明它仅将性能提高了 20 倍(而保持计数会大得多),但我不确定。
只是想知道我是否应该缓存大量计数。似乎答案是肯定的。
MongoDBs 索引目前不存储每个索引(或集合)的计数。它们是唯一索引还是非唯一索引也没有区别。为了让 MongoDB 找出有多少文档,它需要进行一次索引遍历,操作时间为 O(N)