Azure portal を使用して、Azure AI Search サービスのインデックスを作成する予定です。この検索サービスは Azure SQL Database に接続します。
Azure SQL Database には UserMessages という名前のテーブルがあります。UserMessages の各行には、ユーザーが送信したソーシャルメディアメッセージのテキストを含む MessageCopy という名前のフィールドがあります。
ユーザーはこの MessageCopy フィールドに対して全文検索(Full Text Search)を実行し、検索結果としてそのフィールドの値がユーザーに表示されるようにする必要があります。
このソリューションをサポートするために、MessageCopy フィールドに対してどの属性を有効にすべきですか?
正解:D
Azure AI Search のインデックスを作成する際、各フィールドが「何に使えるか」を属性で定義します。今回の要件を満たすには、以下の 2 つの属性が必要です。
1. Searchable (検索可能)
問題文にある「全文検索(Full Text Search)を実行する」ために必要です。 この属性を有効にすると、インデクサーがテキストを分析(トークン化)し、キーワード検索ができるようになります。
2. Retrievable (取得可能)
問題文にある「フィールドの値がユーザーに表示される」ために必要です。 この属性が有効でないと、検索にはヒットしても、検索結果のリストにそのメッセージ内容を表示させることができません。
他の選択肢が不適切な理由
-
Sortable (ソート可能): A-Z順や日付順などで並び替えるための属性です。全文検索そのものには不要です。
-
Filterable (フィルタリング可能):
$filterクエリ(例:特定のユーザーIDのみ抽出するなど)で使用するための属性です。完全一致や範囲指定には使いますが、全文検索とは異なります。 -
Facetable (ファセット可能): 検索結果をカテゴリごとにカウントして表示する(例:カテゴリ別の件数など)ための属性です。

コメント