社畜の心臓を捧げよ!

Office365のSharePointOnlineやExchangeOnlineについて解説していきたいと思います。

【Sharepoint】SharePointOnlineの検索のしくみについて

  1. SharePoint Online での検索の仕組みについて

SharePoint Online では、サイト内に追加されたコンテンツに対して自動的にクロール処理が実行されるようになっており、クロール処理されたテキスト情報については、コンテンツを検索する際のインデックス (= 見出し) が自動的に作成されます。 

この "検索インデックス" が作成されることにより SharePoint Online 上のコンテンツの検索が可能となり、検索結果は検索ボックスに入力した文字列 (検索キーワード) と "検索インデックス" がマッチングした場合に表示される仕組みとなっています。 

さらに詳細な動作について以下に記載いたします。 

* 自動的に情報を収集する処理を [クロール] または [クロール処理] と称します。 

  

  

  1. ワード ブレーカーについて

SharePoint Online の検索システムにおいては、クロールされたテキスト情報が [ワード ブレーカー] と呼ばれるモジュールにより、文字列が単語単位に分割されるワードブレイク処理が行われます。 

ワード ブレーカーは言語毎に存在し、日本語と認識された文字列は、日本語用のワード ブレーカーによって文字列がトークンに分割されてインデックス化されます。 

例えば、SharePoint Online 上のコンテンツに "本店営業部" という文字列が含まれる場合、"本店営業部" という文字列でインデックス化するのではなく、"本店" / "営業" / "部" というトークンに分割し、インデックス化します。 

上記のワード ブレイク処理が実行されるのは 個人用 サイトに追加されたコンテンツに対してのみではなく、ユーザーが入力した "検索キーワード" も、検索実行時にクエリ サーバーにより単語に分割 (ワード ブレイク) されます。 

そして、単語単位で "検索インデックス" と "検索キーワード" の照合が行われ、両者が完全に一致した場合に検索結果として表示されます。 

  

なお、単語の区切り位置は、システム側での解析処理により決定されます。 

  

ワード ブレーカーで用いられている形態素解析の技術は、機械翻訳や文字列抽出、校正支援などさまざまな自然言語処理を応用したアプリケーションで利用されている一般的な言語解析アルゴリズムとなりますが、複雑な言語、特に日本語では、通常、文章内の句読点や文字の並び、および漢字などの影響により、抽出される (分割される) 文字列が使用者の期待どおりにならないことがあります。 

上記ワード ブレーカーにより、"検索インデックス" に分割され格納されている単語と "検索キーワード" 入力時にクエリ サーバーにより分割された単語が一致すると、検索結果に表示される動作となります。 

  

  

  1. クロール時に使用されるワード ブレーカーについて

SharePoint Online では、コンテンツの内容やサイトの言語設定等含め様々な情報を参照して、適切な言語のワードブレーカーが自動で判別されます。 

日本語環境で意図した検索結果が得られない等の場合は、日本語以外のワード ブレーカーによりアイテムのインデックス化が行われている可能性があります。 

  

  

  1. 検索時に使用されるワード ブレーカーについて

検索時のワード ブレーカーはクライアントのブラウザーの言語設定に依存します。 

検索実行時のブラウザーの言語設定で日本語を設定している場合は、日本語のワード ブレーカーが使用されます。 

  

なお、現在のところ、上述の SharePoint Online における検索ワードブレーカーの動作をユーザー側で変更することができません。 

そのため、意図している検索結果により近い結果を得るため、ワイルドカード [* (アスタリスク)]を用いた検索やダブル クォーテーション ( "" ) でキーワードを囲んでの検索方法があります。 

  

  

  1. 全文検索 (ファイル内の文字列) の可否について

SharePoint Online の検索機能では、ファイルのタイトルや本文、アイテムの列に入力した情報が検索対象となります。 

  

* 全文検索ですべてのコンテンツを検索対象とするためには、ファイル サイズの観点では少なくとも以下のサイズを超えないように運用してください: 

  

- Excel ファイル: 3 MB 

- それ以外のアイテム: 64 MB 

  

* また、上記サイズを下回るアイテムであったとしても、以下の制限により全文検索ですべてのコンテンツが検索対象とならない場合もあります。 

  

- 解析対象コンテンツのサイズ: 200 万文字 

- ワード ブレーカーによって処理された文字: 1,000,000 

- トークンのサイズ: 可変 – サイズはワード ブレーカーによって決まります。ワード ブレーカーは言語に依存します。 

  

* さらに、上記制約すべてに抵触しないコンテンツであったとしても、以下の制約によりすべてのコンテンツが全文検索の対象とならない場合もあります。 

  

検索では、単一のアイテムとその添付ファイルの解析に最大 30 秒という制限があります。 

検索によるアイテムの解析が途中で停止すると、アイテムは部分的に処理されたものとしてマークされます。 

解析されていないコンテンツは処理されず、インデックスも付加されません。