SharePoint 2013 の検索スキーマについて
こんにちは。SharePoint サポートの銭 国康 (セン クニヤス) です。
今回は SharePoint 2013 の検索スキーマについて紹介します。
目次
1 SharePoint のプロパティ検索について
2 検索スキーマとは
3 検索スキーマの処理の流れについて
4 検索スキーマの設定レベルについて
5 検索スキーマの管理について
6 検索スキーマの使用例
1 SharePoint のプロパティ検索について
SharePoint 2013 では、ドキュメントやリスト アイテムの名前や、作者などのプロパティに対し、プロパティ検索ができます。
図 1-1 アイテム名のプロパティ検索の図
図 1-2 作者のプロパティ検索の図
このようにプロパティ検索を利用することで、ほしい結果を素早く検索することができ、SharePoint の大変便利な機能の一つだと言えます。さて、ドキュメント ライブラリやリストの自作した列 (固有列) に対し、どのように検索すれば良いのか、思われたことはありませんか?例えば、以下のように [部署名] という固有列があった場合、部署名でプロパティ検索を実施するには、どうすればよいでしょう。
図 1-3 ドキュメント ライブラリの固有列の図
結論から申し上げますと、後述の検索スキーマという機能を利用することで、プロパティ検索を実現することが出来ます。
以下に 「部署名」 を利用し、プロパティ検索を実施した場合の動作イメージを紹介します。
「部署名」 が 「営業部」 のアイテムがヒットしていることがご確認いただけます。
図 1-4 プロパティ検索結果
以下に、検索スキーマの概念と、使用方法について順次紹介していきます。
また、とりあえず試してみたい方は、2-5 を飛ばし、直接 [6 検索スキーマの使用例について] をご確認いただければ幸いです。
2 検索スキーマとは
検索スキーマとは、SharePoint 検索機能の一つであり、何が検索できるのか / どのように検索するのか / どのように結果が表示されるかを制御する機能です。
3 検索スキーマの処理の流れについて
検索スキーマの最も重要なコンセプトは、「クロールされたプロパティ」と「管理プロパティ」という 2 つのキーワードになります。
「クロールされたプロパティ」とは、ドキュメント、URL など、クロール中にアイテムから抽出されたコンテンツおよびメタデータです。クロールされたプロパティとして、作成者、タイトル、件名などがあります。
一方で、「管理プロパティ」には、多数の設定 (プロパティ) が含まれています。この属性によって、コンテンツが検索結果内でどのように表示されるかが決まります。
クロールされたプロパティのコンテンツおよびメタデータを検索インデックスに含めるには、クロールされたプロパティを管理プロパティにマップさせる必要があります。
検索スキーマでは、クロールされたプロパティと管理プロパティ間のマッピングや、クロールされたプロパティと管理プロパティのそれぞれを設定することができます。
<参考情報>
タイトル : クロールされたプロパティと管理プロパティの概要 (SharePoint Server 2013)
アドレス : https://technet.microsoft.com/ja-jp/library/jj219630.aspx
クロールされたプロパティと管理プロパティのマッピングや、インデックスが作成されるまでの流れは以下のようになります。
図 3-1 データ処理フロー
クロール コンポーネント (Crawl Component) が、アイテムをコンテンツ データベース (またはコンテンツ ソース) から読み込んで、ドキュメントとメタデータをコンテンツ処理コンポーネント (Content Processing Component) に送信します。
コンテンツ処理コンポーネントでは、アイテムのテキストの解析や、言語の検出、スペル チェックなどの処理が行われています。このコンポーネントで、クロールされたプロパティが管理プロパティにマッピングされ、[名前 - 値] ペアで管理プロパティとして出力されます。
マッピング方法は、検索スキーマで定義されています。
また、検索スキーマの更新内容は、1 分間隔で検索システムに反映されます。
※ データ処理フローの内容は、以下のブログを引用しています
タイトル : Introducing Search Schema for SharePoint 2013
4 検索スキーマの設定レベルについて
前世代の製品 FAST Search for SharePoint 2010 と SharePoint 2010 では、ファーム管理者でしか検索スキーマを変更することができませんでした。しかしながら、SharePoint 2013 からは、サイト コレクション管理者でのスキーマ変更も可能になりました。
図 4-1 SSA レベルとサイト コレクション レベルの検索スキーマ
SharePoint 2013 では、検索サービス アプリケーション レベル (SSA レベル) とサイト コレクションで、それぞれ検索スキーマを変更することができます。
SSA レベルの変更は、ファーム管理者の権限が必要になります。また、本変更は、ファーム全体に反映されます (すべてのサイト コレクションにおいて、本設定が継承されます)。
一方で、サイト コレクション レベルの変更は、サイト コレクションの管理者の権限が必要になります。また、本変更は、SSA レベルで継承された検索スキーマを上書きすることができます。SharePoint 2013 より前の製品に比べ、サイト コレクション レベルで制御できる点については、使い勝手が良くなったと考えて良いでしょう。
※ 補足
SharePoint Online (SPO) の場合の検索スキーマ制御
図 4-2 SPO の場合の検索スキーマの設定レベル
SPO の場合、SSA レベルとサイト コレクション レベルのほか、テナント レベルでの変更も可能です。
本変更は、テナント管理者の権限が必要になります。また、本変更は、継承された SSA レベルの変更を上書きすることができます。なお、テナント レベルの検索スキーマ設定は、サイト コレクション レベルで上書きすることもできます。
※ 検索スキーマ レベルの内容は、以下のブログを引用しています
タイトル : Introducing Search Schema for SharePoint 2013
5 検索スキーマの管理について
SharePoint 2013 の検索スキーマでは、以下のような設定が可能です。
・クロールされたプロパティと管理プロパティの表示
・管理プロパティの追加・編集・削除
・クロールされたプロパティと管理プロパティのマッピング
・クロールされたプロパティのカテゴリの編集
詳細に関しては、以下の公開情報をご参考いただければ幸いです。
タイトル : SharePoint Server 2013 で検索スキーマを管理する
アドレス : https://technet.microsoft.com/ja-jp/library/jj219667.aspx
6 検索スキーマの使用例
検索スキーマの使用例として、冒頭で話したドキュメント ライブラリなどの固有列を使用して、プロパティ検索できるようにする手順を以下に記載します。
※ 以下はドキュメント ライブラリを例に記載します。カスタム リストにおいても、同様にご参考いただけます。
ドキュメント ライブラリの固有の列を
Search サービス アプリケーション レベルで
管理プロパティを作成し、プロパティ検索を実施する手順
=========================================================================
1) ドキュメント ライブラリに列を追加します。
例 : 部署名 (一行テキスト)
2) ドキュメント ライブラリにアイテムを追加し、設定した列に値を入力します。
例 : 営業部
3) 手動でフル クロールを実施します。
3-1) サーバーの全体管理サイトにアクセスします。
3-2) [アプリケーション構成の管理] セクションにて [サービス アプリケーションの管理] をクリックします。
3-3) [Search Service Application] セクションに表示された上部の [Search Service Application] リンクをクリックします。
3-4) 左側 [クロール] セクションの [コンテンツ ソース] をクリックします。
3-5) 対象のコンテンツに対し、[フル クロールの開始] をクリックし、フル クロールを開始します。
4) 管理プロパティを追加します。
4-1) サーバーの全体管理サイトにアクセスします。
4-2) [アプリケーション構成の管理] セクションにて [サービス アプリケーションの管理] をクリックします。
4-3) [Search Service Application] セクションに表示された上部の [Search Service Application] リンクをクリックします。
4-4) 左側 [クエリと結果] セクションの [検索スキーマ] をクリックします。
4-5) [新しい管理プロパティ] をクリックします。
4-6) プロパティ名、種類を設定します。
例 : プロパティ名 : 部署名
プロパティ種類 : テキスト
4-7) [検索可能]、[クエリ可能] のチェックをオンにします。
4-8) [クロールされたプロパティへのマッピング] にて、[マッピングの追加] をクリックします。
4-9) [クロールされたプロパティ名の検索] セクションにて、手順 1) で作成した列名を検索します。
例 : 「ows_部署名」 という値がヒットします。
4-10) ヒットしたプロパティを選択します。
4-11) [OK] をクリックします。
4-11) 新しい管理プロパティ ページにて [OK] をクリックします。
5) 手動で再度フル クロールを実施します。
6) サイトコレクションのトップページにて、"プロパティ列名:キーワード" などで検索を実施してください。
例 : 部署名:”営業部”
いかがでしたでしょうか。
検索スキーマでプロパティのマッピングを設定することにより、思いどおりのプロパティ検索が出来、SharePoint 2013 の検索の利便性を感じていただけましたでしょうか。
参考文献
タイトル : SharePoint Server 2013 の検索スキーマの概要
アドレス : https://technet.microsoft.com/ja-jp/library/jj219669.aspx
タイトル : SharePoint Server 2013 で検索スキーマを管理する
アドレス : https://technet.microsoft.com/ja-jp/library/jj219667.aspx
タイトル : クロールされたプロパティと管理プロパティの概要 (SharePoint Server 2013)
アドレス : https://technet.microsoft.com/ja-jp/library/jj219630.aspx
タイトル : Introducing Search Schema for SharePoint 2013
今回の投稿は以上です。