比较来自世界各地的卖家的域名和 IT 服务价格

Mongodb 新集合的自动索引创建

我有一个服务器 Node.JS 与数据库 Mondodb. 几个客户使用相同的数据库,每个客户都有自己的收藏。 集合称为客户标识符。

由于每个客户端在新客户端连接到服务器时,每个客户端都使用它的数据,因此它与数据库执行的第一个操作将为它创建一个新的集合。

我需要所有集合来拥有特定的索引。 有没有办法为每个新集合自动创建此索引?
已邀请:

詹大官人

赞同来自:

不,没有这样的命令。

但不要害怕打电话
createIndex

太频繁。
http://docs.mongodb.org/manual ... ndex/
它确保当具有相同设置的索引已经存在时,没有任何反应。 因此,您可以将其附加到新用户执行的一些常见数据库操作。 当他们被称为几次时,没有什么可怕的。

要强调这种行为,用于调用的方法
ensureIndex

, 但这个名字已经过时了。

顺便说一下:每个客户端都有一个不同的集合,这是一个相当不寻常的体系结构。 它具有一些缺点,例如索引的问题以及您已经找到的收集级别的其他配置,但也是其他的,例如无法使用来自多个客户端的数据执行任何请求。 使用默认存储机制时,有一个优点是客户无法通过锁定整个集合来互相阻止,但使用该机制时 WiredTiger 这种优势已经过时了 WiredTiger 仅在文档级别封锁。

更传统的方法是为所有用户提供一个集合,并在每个文档中具有一个字段,这些文档中包含哪些用户拥有文档,并且是用户请求使用的所有索引的一部分。

要回复问题请先登录注册