Docs 菜单
Docs 主页
/
MongoDB Atlas
/ / /

查看删除索引建议

在此页面上

  • 未使用的索引
  • 冗余索引
  • Hidden Indexes
  • 删除或隐藏索引

Performance Advisor 建议删除未使用的索引、冗余索引和隐藏索引,以提高写入性能并增加存储空间。

提示

另请参阅:

要详细学习;了解不必要索引的影响,请参阅删除不必要的索引。

如果索引不支持任何查询,则该索引未被使用。

如果索引在创建或服务器重新启动后 7 天或更长时间不支持查询,则Performance Advisor会将索引标记为未使用。

注意

Performance Advisor仅检查20个最活跃的collection是否有未使用的索引。

如果另一个索引可以支持它可以支持的任何查询,则该索引是冗余的。

如果索引与同一collection中另一个索引的前缀匹配,则Performance Advisor会将其标记为冗余。

例子

如果集合包含索引:

  • { a: 1 }

  • { b: -1 }

  • { a: 1, b: -1 }

{ a: 1 } 是多余的,因为它与前缀{ a: 1, b: -1 }匹配。

{ b: -1 } 不是冗余的,因为它不匹配任何前缀。

在Performance Advisor中,冗余索引标有红色Redundant标记。在每个冗余索引下方,Performance Advisor会显示覆盖该冗余索引的相关索引。

注意

系统会显示相关索引,以验证是否可以安全删除冗余索引。 不建议删除相关索引。

Atlas 不使用隐藏索引来支持查询。 它们仍然会影响写入性能并消耗存储空间。 要了解更多信息,请参阅隐藏索引。

您可以隐藏索引,以便在删除索引之前评估删除索引的影响。 与重建已删除的索引相比,取消隐藏索引所需的时间也更少。 要使用 Atlas 用户界面隐藏和取消隐藏索引,请参阅创建、查看、删除和隐藏索引。

Performance Advisor始终建议删除隐藏索引。如果您确定不需要隐藏索引,请将其删除。

注意

Atlas Performance Advisor页面显示加载页面时来自最活跃的前20命名空间的隐藏索引。 如果您的命名空间超过20 ,“Performance Advisor”页面可能不会显示所有带有隐藏索引的命名空间。

注意

在删除索引之前,请考虑将其隐藏。 Atlas支持MongoDB 5.0及更高版本的隐藏索引。

要使用性能优化顾问删除或隐藏索引,请执行以下操作:

1
  1. 如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 如果尚未出现,请单击侧边栏中的 Clusters(集群)。

    会显示集群页面。

2

如果副本集是分分片集群的一部分,请先单击包含副本集的分分片集群。

3
4

Performance Advisor标签页中,单击Explore Recommendations Drop Indexes卡片上的 。

5

默认,结果对应于一个主节点 (primary node in the replica set)主机。但是,您可以从下拉列表中选择其他托管。

6

Performance Advisor会显示一个对话框,其中包含指向Atlas用户界面的链接以及用于删除该索引的可复制的MongoDB Shell命令。

该对话框还提供了一个可复制的MongoDB Shell命令来隐藏该索引。

7

要使用 Atlas 用户界面删除或隐藏索引,请单击Indexes标签页,然后单击索引旁边的Drop IndexHide Index图标。 Atlas 会显示一个对话框以确认您的选择。 有关详细信息,请参阅创建、查看、删除和隐藏索引。

要使用 MongoDB Shell 删除或隐藏索引,请粘贴并运行 Performance Advisor 提供的命令。

后退

索引排名