我希望能够在我的数据库中的system.namespaces上进行快速前缀搜索,这将有大量的集合。索引system.namespaces可以吗? Mongo文档似乎模糊地建议不要搞乱system.namespaces。
更新:我正在直接进行搜索,如
之类的调用db.system.namespaces.find({"name":/^some_prefix/})
答案 0 :(得分:0)
首先,如果您计划投放大量收藏品,请确保扩大了namespaces file的尺寸。
是否可以索引system.namespaces?
默认情况下,此集合实际上是隐藏的。它存在,但在使用show collections
或等效项时不会出现。听起来你想要优化集合以查询集合名称,但我并不是100%确定这实际上是使用的机制。
.ns
文件中的数据包含有关每个集合的数据,我希望这些数据基本上保存在内存中。所以我不确定优化system.namespaces
会做什么,除非你能确认它实际上是用于你的特定查询。
这个问题的确切答案可能是大约5个人所知,他们都在10gen工作:)对于精确答案,最好的选择是检查Google网上论坛或代码本身。 10gen的工作人员监控小组,您可以让实际的作者回答您的问题。