跟踪搜索词
Atlas Search tracking
选项允许您追踪搜索查询。当您追踪您的查询时,Atlas 会追踪搜索术语并提供有关查询中搜索术语的分析信息。您可以使用分析信息来提高搜索应用程序的质量,并优化查询以返回相关结果。
注意
您必须有M10
或更高级别的集群才能利用 Atlas Search tracking
选项返回的分析信息。Atlas 不会追踪免费和共享层级集群上的搜索术语或显示分析。
语法
{ $search: { "index": "<index name>", "<operator>": { <operator-specification> }, "tracking": { "searchTerms": "<term-to-search>" } } }
选项
字段 | 类型 | 说明 | 必要性 |
---|---|---|---|
searchTerms | 字符串 | 与要追踪的查询关联的文本或术语。每个查询只能指定一个术语。 | 必需 |
行为
对于您的 Atlas 集群上的每个 Atlas Search 索引,Atlas 收集使用该索引运行的跟踪搜索术语的以下指标:
对跟踪术语的 Atlas Search 搜索查询数量。
Atlas Search 未返回任何针对术语的查询结果的次数。
Atlas 统计每天对跟踪的搜索词的查询次数。Atlas 对于每天从跟踪的 $search
查询中捕获每个集群的搜索字词数量有所限制。一旦 Atlas 达到限制,它就无法捕获新的、唯一的搜索词。但是,如果您在 Atlas 达到限制并停止捕获后的第二天对以前跟踪的术语运行查询,则 Atlas 会继续增加这些术语的计数器,而不管当天的限制如何。
Atlas 会在每天开始时(以 UTC为单位)重置跟踪的术语、跟踪的术语计数以及跟踪的搜索术语的数量限制。
例子
此示例演示了 Atlas 如何对跟踪的术语进行计数。 假设您对术语summer
运行查询:
Atlas 达到该天跟踪搜索术语数量限制之前的第一天。然后在第一天,Atlas 会计算
summer
的查询数量,如果summer
是当天的热门搜索术语之一,则summer
的可用指标。Atlas 达到当日跟踪搜索术语数量限制前后的第二天。然后在第 2 天,如果
summer
是summer
的热门搜索术语之一,则 Atlas 会在达到summer
的跟踪搜索术语和可用指标的数量限制之前和之后计算的查询数量。日。Atlas 达到当日跟踪搜索术语数量限制后的第 3 天。然后在第 3 天,Atlas 不计算对术语
summer
的查询,并且当天没有summer
的指标。
Atlas Search 不会使用您通过tracking
选项指定的术语来处理查询。此外,使用tracking
选项指定的搜索术语不会对 Atlas Search 为查询返回的结果产生任何影响。
输出
您可以在 Atlas Search 索引的 Atlas 用户界面 Query Analytics页面中使用tracking
选项查看跟踪的查询指标。要了解更多信息,请参阅导航到查询分析页面。
Query Analytics页面显示预定义日期范围(例如当天、过去 7 天、过去 30 天或过去 90 天)或您指定的自定义范围(以UTC为单位)的以下指标,粒度为每天:
要了解详情,请参阅查看查询分析。
示例
以下针对sample_mflix.movies
collection 的查询在title
字段中搜索术语summer
。该查询使用tracking
选项(突出显示)以使 Atlas Search 能够捕获术语summer
的分析信息。如果您的集群有样本数据,并且collection中的字段上有名为 的 Atlas Searchdefault
索引,则可以对集群上的title
sample_mflix.movies
collection运行以下查询。要了解有关加载样本数据和创建 Atlas Search 的更多信息,请参阅Atlas Search 入门教程。
db.movies.aggregate([ { "$search": { "text": { "query": "summer", "path": "title" }, "tracking": { "searchTerms": "summer" } } }, { "$limit": 5 }, { "$project": { "_id": 0, "title": 1 } } ])
[ { title: 'Summer' }, { title: 'Summer Stock' }, { title: 'Early Summer' }, { title: 'Summer Interlude' }, { title: 'Violent Summer' } ]
运行此查询时,如果 Atlas 收集了跟踪搜索术语的数据,则可以在索引的Query Analytics页面中查看其指标。要了解详情,请参阅查看查询分析。