分析慢速查询
Atlas 提供多种工具来帮助分析对集群执行的慢速查询。有关每个工具的说明,请参阅以下部分。要优化查询性能,请查看查询性能最佳实践。
性能顾问
性能优化顾问会监控 MongoDB 认为其速度较慢的查询,并建议使用新的索引来提高查询性能。
您可以使用性能优化顾问查看以下信息:
命名空间见解
使用 Namespace Insights 监控集合级 查询延迟 。您可以查看某些主机和操作类型的查询延迟指标和统计信息。管理固定的命名空间,并选择最多五个命名空间以显示在相应的查询延迟图表中。
Query Profiler
查询分析器显示运行缓慢的操作及其关键性能统计信息。您可以探索过去 24 小时内的历史查询示例,而无需额外的费用或性能开销。在启用查询分析器之前,请参阅注意事项。
实时性能面板 (RTPP)
实时性能面板可识别相关的数据库操作,计算查询执行时间,并显示查询执行期间已扫描文档数与返回文档数之比。默认情况下,RTPP 处于启用状态。
重要
所需权限
要启用或禁用项目的 Real-Time Performance Panel,您必须拥有该项目的 Project Owner
角色。
优化查询性能的最佳实践
要优化查询性能,请查看以下最佳实践:
创建当前索引支持的查询,以减少搜索结果所需的时间。
避免创建包含大型数组字段的文档,因为此类字段需完成大量处理才能进行搜索和索引。
优化索引并删除未使用或效率低下的索引。索引过多会对写入性能产生负面影响。
考虑性能优化顾问具有最高 Impact 和最低 Average Query Targeting 分数的建议索引。
创建性能优化顾问建议的与索引策略一致的索引。
性能优化顾问无法为配置为使用ctime 时间戳格式的 MongoDB 数据库提供索引建议。作为一种变通方法,可将此类数据库的时间戳格式设置为iso 8601 -utc或iso 8601 -local。
执行滚动索引构建,以减少构建索引对副本集和分片集群的性能影响。
删除未使用、多余和隐藏的索引,从而提高写入性能并释放存储空间。