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