Office365 の訴訟ホールド対象のメール検索時に指定した単語でうまくメールが検出されない事象がありました。これはワードブレーカーという仕組みによるもののようで、日本語の場合だと単語の区切りが明確にならずにうまいこと検索した単語に引っかからないという事のようです。そのため、メールアイテムを検出する際は、検索対象の単語の区切り方などを検索時に気をつけて指定する必要があるようです。
メール検索クエリの仕組み
Exchange Onlineの検索動作は、英語指定による検索だと Word 単位での区切りとなるが日本語に関しては英語と比較すると単語の区切りが明確にならず、想定した検索結果が得られない場合があるとの事。
Exchange Online で動作する Exchange Search サービスは、SQL サーバーで使用されるフルテキスト検索 サービス (Microsoft Search Service) を利用しており、インデックス生成時および検索実行時に、日本語ワードブレーカにより検索のための単語の切り出し、および正規化などの処理を行い、当該の切り出された (ワードブレークされた) 単語に対して検索を行われる。
このため、意図した検索結果と異なる結果が表示されることがある。
検索に引っかからない場合の回避策
本事象に関する回避策としては、ダブルクォーテーション ( ” ) で検索対象の単語を囲んで検索を行う方法や、検索対象の単語が 2 文字以上の場合は、文字数を減らしたキーワードを “AND” や “OR” でつなげ、検索を行うことで意図した結果に近似した結果が得られる可能性がある。
※ ダブルクォーテーション ( ” ) で囲んだ場合でも、ワードブレーカーによる区切りによりましては、正しい検索結果が得られない場合がある。
メール検索方法
“請求書” を含むアイテムの検索を行う際、”請求” AND “書” とキーワード指定し検索を行うことで、”請求書” と検索を行った場合よりも、意図した結果に近似した結果が得られるとの事。
また、キーワードの指定は、[キーワード] 欄にて KQL 形式にて指定することが可能なのでキーワードが長くなる場合などは、KQL 形式を利用します。
■例1 : “請求書” を含むアイテムを検索
“請求” AND “書”
■例2 : 件名に “請求書” を含むアイテムを検索
(subject:”請求”) AND (subject:”書”)
また、上記検索例でも検索結果を得られない場合は、検索対象の単語が 2 文字以上の場合、文字数を減らしたキーワードにて、検索を実施することで意図した結果に近似した結果が得られる可能性がある。
■例3 : 件名に “請求書” を含むアイテムを検索
subject:”請求”
参考情報
Technetで 参考にしたページになります。