**この記事の内容は若干古くなっています。まとめページもご覧下さい**
前回のブログでHueからSolrを使用するサンプルを紹介しました。
今回は、検索結果の表示をカスタマイズしてみます。
Solr Searchのカスタマイズ
HueのSolr SearchにはTemplate Editorがあり、テンプレートのSnippetを変更することでカスタマイズが可能です。
参考ブログはこちらです。
まず注意事項として、今回の仮想マシンに標準で搭載されているFirefox 10.0を使用した場合、テンプレートエディタに問題が生じます。以下に進む前に最新のFirefoxにしておきましょう。
本件、迅速な対応をしてくれた @daisukebe_ さんと Hueの開発チームに感謝です!
$ sudo yum update firefox
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirror.fairway.ne.jp
* extras: mirror.fairway.ne.jp
* updates: mirror.fairway.ne.jp
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.x86_64 0:10.0.5-1.el6.centos will be updated
---> Package firefox.x86_64 0:17.0.6-1.el6.centos will be an update
--> Processing Dependency: xulrunner >= 17.0.6 for package: firefox-17.0.6-1.el6.centos.x86_64
--> Running transaction check
---> Package xulrunner.x86_64 0:10.0.5-1.el6.centos will be updated
---> Package xulrunner.x86_64 0:17.0.6-2.el6.centos will be an update
--> Processing Dependency: nss >= 3.14.0 for package: xulrunner-17.0.6-2.el6.centos.x86_64
(略)
手元の環境ではFirefox 17.0になりました。それでは変更して行きましょう。
Collection Manager
上部のメニューから虫眼鏡のアイコンをクリックし、collection managerを開きます。
nrt_tweetsをクリックし、Template Editorを開きましょう。
Template Editor
デフォルトではこのようになっています。これは冒頭のスクリーンショットにあるように、ツイートの情報を単に表示しているだけです。
Snippet
ここでは検索結果をどのように表示するかのカスタマイズを行います。
Visual Editorでも変更ができるのですが、今回はSourceタブから直接HTMLを編集します。編集した内容は Cloudera のブログをご覧下さい。
Advancedタブで、CSSも変更します。
Facets
検索結果を瞬時にフィルタリングするための設定が可能です。例えば、Field Facetsではツイートの地域毎にフィルタを行うとか、Range Facetsは件数、Date Facetsは、Facets Orderはは左側に表示されるファセットの順番の変更を行えます。
demoビデオに従い、
- Field FacetsはFiledにuser_location、ラベルはlocation
- Range FacetsはFieldにuser_statuses_count、ラベルはtweets
- Date FacetsはFieldにcreated_at、ラベルはwhen
- Facets Orderは、location,tweets,whenの順序
に設定します。
Sorting
表示順序です。今回は指定していません。
Highlighting
クエリしたキーワードをハイライトさせる機能です。今回はtextにチェックしました。
検索結果
検索結果を見てみましょう。右上のSearch Pageを押して検索結果に戻ります。
見事にツイートっぽいイメージなどが表示されるようになりました!
左側のメニューにもLOCATIONやTWEETS、WHENなどが表示されており、クイックフィルタリングすることができます(*1)
皆さんも自由にカスタマイズしてみて下さい!
*1: 現在日本語でのフィルタ、検索がうまく通らないようですが、CDH4.4で対応予定です。Thanks>@daisukebe_さん