SharePoint 2013 によるバーティカル検索の実現


インターネット検索の世界では、少し前から「バーティカル検索 (Vertical Search, 垂直検索とも言います)」と呼ばれる、ユーザーの利便性やコストを考えて何らかの特定領域に特化した状態で検索機能を提供することが当たり前になっています。
Bing では「地図」「ニュース」「ショッピング」「ソーシャル」や「その他 (画像、動画、翻訳)」などを選択するタブが画面上部に表示されており、これによって実現されているユーザーが検索対象を最初から特定の分野に絞り込むことができる機能のことです。

image_thumb1

例えば、好きな俳優に関する画像情報を検索したい場合に、検索キーワードに「俳優名 画像」と入力するのではなく、最初から画像のみに絞り込んで「俳優名」で検索できた方が便利です。

エンタープライズサーチにおいては、インターネット検索以上にバーティカル検索は重要です。企業内には、インターネット検索で考えるような分野よりも多くの検索対象のリポジトリ (検索対象データの格納先)、ファイルの種別に加えて、同じリポジトリであっても検索対象のシステム毎にバーティカル検索を行いたいという要求が存在するためです。例えば、例えば、同一のファイル サーバー (の違うフォルダ) にお客様との契約書と社内文書がある場合、それぞれバーティカル検索を行いたいですし、SQL Server にお客様マスターや従業員マスターなど様々なマスター表があり、お客様登録システムと従業員登録システムといったシステム毎に別のマスター表を利用している場合には、検索は登録に利用しているシステム毎に実施したいと思うはずです。

SharePoint 2013 では、「検索ナビゲーション (Search Navigation)」および「検索先 (Result Source)」と呼ばれる機能によって、このバーティカル検索のための簡単に扱える機能を、柔軟な管理性と共に提供します

検索ナビゲーション

ユーザーが複数のバーティカル検索の間を素早く移動するための機能が、検索ナビゲーションです。

「エンタープライズ検索センター」と呼ばれる標準で用意されたサイト テンプレートで作成した検索サイトで確認してみると、検索結果画面の検索ボックスの下に「すべて」「ひと」「会話」「ビデオ」とタブが 4 つ用意されていますが、これが検索ナビゲーションです。
それぞれ、「全ての検索結果」「ひとの検索結果」「会話 (フィードや掲示板) の検索結果」「動画の検索結果」のバーティカル検索を実施するためのページへのリンクとなっています。

image_thumb4

検索ナビゲーションは、SharePoint ページ上に検索ナビゲーション Web パーツを配置することで実現しています。

検索ナビゲーション Web パーツの構成について
http://office.microsoft.com/ja-jp/sharepoint-server-help/about-configuring-the-search-navigation-web-part-HA102848708.aspx

検索ナビゲーションの管理

検索ナビゲーションの設定は、サイトの管理者が [サイトの設定] ページの [検索] – [検索の設定] から行うことが可能です。標準で用意されている「すべて」「ひと」「会話」「ビデオ」のタブは、それぞれ「results.aspx」「peopleresults.aspx」「conversationresults.aspx」「videoresults.aspx」という別の SharePoint ページへのリンクとなっています。

image

Configure properties of the Search Navigation Web Part in SharePoint Server 2013
http://technet.microsoft.com/en-us/library/gg576964.aspx

検索先

検索の実行を特定のコンテンツの種類に限定したり、特定の検索結果の一部に限定したり、インターネットの検索エンジンなど外部の検索システムへ検索を実行したり、といったことを行うための機能が、検索先です。

SharePoint 2010 では、フェデレーションと呼ばれる外部の検索対象の設定機能と検索範囲と呼ばれる検索結果を限定する機能に分かれていましたが、それを一つの機能にまとめたものです。

検索先の管理

検索先の設定は、Search Service アプリケーション管理者、サイト コレクション管理者、サイト所有者によって可能です。[プロトコル] の設定によって、「ローカルの SharePoint (自分の SharePoint ファーム)」「リモートの SharePoint (信頼関係のある別 SharePoint ファーム)」「OpenSearch 1.0/1.1」「Exchange (Exchange Server 2013。但し、eDiscovery 機能でのみ利用可能)」の検索対象が指定可能です。

image

また、[クエリ ビルダー] によって、ユーザーが指定した検索クエリーに追加する検索条件式、並び替えに加えて静的および動的なランク付け、指定した条件による検索結果の確認を Web 画面で指定することが可能です。

image

主要な検索結果 Web パーツによる検索先の指定

主要な検索結果 Web パーツの [検索条件] – [クエリの変更] から [クエリの作成] ウィンドウを開き、[クエリの選択] で検索先を指定することでバーティカル検索を実現します。検索結果 Web パーツを利用する

image

Configure properties of the Search Results Web Part in SharePoint Server 2013
http://technet.microsoft.com/en-us/library/gg549987(v=office.15).aspx

検索アプリケーション構築時の利用方法

検索ナビゲーションは、エンタープライズ検索センター用の設定ですので、REST API を利用した検索アプリケーション作成時には使用せず、パラメータ「sourceid」を利用して、検索先を指定してバーティカル検索を実現します。例えば、以下のような GET リクエストで実行します。

http://xxx/sites/search/_api/search/query?querytext=’*’&sourceid=’32a2df27%2D99f1%2D4538%2D9377%2Db6803d711384′

sourceid パラメータの値は、Search Service Application、サイト コレクションまたはサイト管理者が [検索先] の設定画面で、対象としたい検索先の編集画面を Web ブラウザで開いた際の URL の sourceid パラメータを利用すると簡単です。

http://xxx/sites/search/_layouts/15/EditResultSource.aspx?level=site&sourceid=32a2df27%2D99f1%2D4538%2D9377%2Db6803d711384

SharePoint Search REST API overview
http://msdn.microsoft.com/en-us/library/jj163876.aspx

広告