应该在应用程序设置中调用ensureIndex吗?

时间:2012-10-14 08:46:19

标签: node.js mongodb indexing

每当应用程序发生变化时调用ensureIndex是否合适,例如在app.configure

与仅为新的mongo实例设置相比,除了稍微慢一点的启动时间之外,它是否有任何缺点?

2 个答案:

答案 0 :(得分:3)

当确保在现有索引上调用索引时,它将注册为no op。这意味着如果从app.configure调用它,它根本不应该减慢您的应用程序。

我看不到任何其他缺点,因为该函数只会运行而不会创建索引(如果它已经存在)。

答案 1 :(得分:0)

我通常从应用程序init调用ensureIndex(),包含在对预期的现有集合的检查中。如果该集合已存在,则假设数据库已正确编入索引并跳过ensureIndex()调用。

更多信息: Mongodb: when to call ensureIndex?