Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检查Mongodb中的索引使用情况_Mongodb - Fatal编程技术网

如何检查Mongodb中的索引使用情况

如何检查Mongodb中的索引使用情况,mongodb,Mongodb,假设我在给定集合上创建4到5个索引。是否有方法查看这些索引是否用于任何更新/删除/选择 我知道一个方法是使用cursor.explain/cursor.explain(“executionStats”)。这在我们开发代码时可能很有用。但是一旦部署了它,就有任何方法来验证是否正在使用任何现有索引 我试图将我的这种经验与Oracle环境进行比较。随着索引的不断增加,以及代码的变化,人们喜欢创建新的索引,而离开现有的索引,这可能会在一段时间内影响应用程序 Bhaskar.您可以使用$indexStat

假设我在给定集合上创建4到5个索引。是否有方法查看这些索引是否用于任何更新/删除/选择

我知道一个方法是使用cursor.explain/cursor.explain(“executionStats”)。这在我们开发代码时可能很有用。但是一旦部署了它,就有任何方法来验证是否正在使用任何现有索引

我试图将我的这种经验与Oracle环境进行比较。随着索引的不断增加,以及代码的变化,人们喜欢创建新的索引,而离开现有的索引,这可能会在一段时间内影响应用程序


Bhaskar.

您可以使用
$indexStats
,它将提供有关特定集合中索引使用情况的一些信息。你可以试试这个

db.collection.aggregate( [ { $indexStats: { } } ] )
在输出中,您将看到由不同索引处理的操作数

第一个结果似乎是一个手册页面。因此,如果你知道如何键入搜索短语,这是一个简单的答案。