Docs Menu
Docs Home
/
MongoDB Atlas
/ / / /

検索タームの追跡

項目一覧

  • 構文
  • オプション
  • 動作
  • 出力

Atlas Search trackingオプションを使用すると、検索クエリを追跡できます。 クエリを追跡すると、Atlas は検索タームを追跡し、クエリ内の検索タームに関する分析情報を提供します。 分析情報を使用して、検索アプリケーションの品質を向上させ、関連する結果を返すようにクエリを調整できます。

注意

Atlas Search trackingオプションによって返される分析情報を利用するには、 M10以上のクラスターが必要です。 Atlas は、無料および共有階層クラスターでは、検索タームを追跡したり、クエリの分析情報を表示したりしません。

{
$search: {
"index": "<index name>",
"<operator>": {
<operator-specification>
},
"tracking": {
"searchTerms": "<term-to-search>"
}
}
}
フィールド
タイプ
説明
必要性
searchTerms
string
追跡するクエリに関連付けられたテキストまたはターム。 クエリごとに指定できるタームは 1 つだけです。
必須

Atlas は、Atlas クラスター上の各 Atlas Search インデックスごとに、そのインデックスを使用して実行された追跡検索タームについて次のメトリクスを収集します。

  • 追跡されたタームに対する Atlas Search クエリの数。

  • Atlas Search が追跡対象のタームのクエリで結果を返さなかった回数。

Atlas は、追跡された検索タームの 1 日あたりのクエリ数をカウントします。 Atlas では、追跡された $searchクエリから毎日クラスターごとに取得される検索タームの数に制限があります。 Atlas が 制限に達すると、新しい一意の検索タームは取得されなくなります。 ただし、Atlas が 制限に達して取得を停止した後の 1 日間、過去に追跡されたタームのクエリを実行すると、その日の制限に関係なく、Atlas はそれらのタームのカウンターを増加させ続けます。

Atlas は、追跡されるタームの数、追跡されるタームのカウント、および追跡される検索タームの数の制限を UTCの毎日の先頭にリセットします。

この例では、Atlas が追跡されているタームをカウントする方法を示しています。 次のように、 summerというタームのクエリを実行するとします。

  • Atlas がその日に追跡される検索タームの数の制限に達する 日前。 次に、1 日目に、Atlas はsummerのクエリ数をカウントし、 summerがその日の検索タームの上位に含まれている場合は、 summerで使用可能なメトリクスをカウントします。

  • Atlas がその日の追跡検索ターム数の制限に達した前後の 2 日目。 次に、2 日目に、Atlas は追跡検索タームの数の制限に達する前後でsummerのクエリ数をカウントし、 summerが上位検索タームの 1 つである場合、 summerで使用可能なメトリクスは指定します。

  • Atlas がその日に追跡される検索タームの数の制限に達した後 3 日目。 その後 3 日目に、Atlas はタームsummerのクエリをカウントせず、その日のsummerではメトリクスは使用できません。

Atlas Search では、クエリの処理にtrackingオプションで指定した用語は使用されません。 また、 trackingオプションで指定した検索タームは、Atlas Search がクエリに対して返す結果には影響しません。

Atlas Search インデックスの Atlas UI Query Analyticsページでtrackingオプションを使用して追跡されたクエリのメトリクスを表示できます。 詳しくは、「クエリ分析ページに移動する 」を参照してください。

Query Analyticsページには、現在日、過去 7 日間、過去 30 日間、過去 90 日間などの事前定義された日付範囲、または指定したカスタム範囲( UTC )に関する 1 日ごとの粒度が表示されます:

詳しくは、「クエリ分析の表示 」を参照してください。

sample_mflix.moviesコレクションに対する次のクエリは、 titleフィールドでsummerというタームを検索します。 クエリはtrackingオプション(強調表示)を使用して、Atlas Search がクエリ用語summerの分析情報を取得できるようにします。 クラスターにサンプル データがあり、コレクションのtitleフィールドにdefaultという名前の Atlas Search インデックスがある場合は、クラスターのsample_mflix.moviesコレクションに対して次のクエリを実行できます。 サンプル データのロードと 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ページでそのクエリに関するメトリクスを表示できます。 詳しくは、「クエリ分析の表示 」を参照してください。