acts_as_searchable を試す(1)
RubricksではCMSの上に乗っかるサービスをRailsコンポーネントの形で提供する。そこで各コンポーネントを一元的に検索する窓口として検索機能を提供するべく試行錯誤中なのだが、気になっていたのがacts_as_searchableだ。これは全文検索エンジンであるHyperEstraierとActiveRecordが連携してDBに格納したデータを全文検索できるようにしちゃおうというプラグインのようだ。
まずは全文検索エンジンであるHyperEstraierをインストールする必要がある。Namazuと違ってレンタルサーバ等に導入済の可能性は極めて低いので、また敷居が上がってしまいそうだ。個人的にはHyperEstraierはOSSの全文検索エンジンにおいてNamazuに代わるデファクトになると思っているので、今からオプションとしてサポートしておくのも良いことだと無理やり納得して先に進む。
HyperEstraierの動作には libiconv・qdbm・mecabが必要で、Rubricksが想定しているCentOS4系ではどれもRPMが提供されていないため、我流のRPMを作成してみた。例によって無保証・非推奨で配布してみる。
vi /etc/yum.repos.d/rubricks.repo ======================================================================= [rubricks] name=CentOS-$releasever - rubricks baseurl=http://repos.rubricks.org/rpm/ enabled=1 gpgcheck=0 ======================================================================= yum install libiconv mecab mecab-ipadic qdbm hyperestraier chkconfig --level 2345 estmaster on service estmaster start
これでインストールとEstmasterの起動が完了するはず。基本的にはほぼデフォルトでインストールしているだけだけど、気になる人はsrpmも同じ場所で配布しているので、specファイルを見てください。
動作確認は、HyperEstraierのP2Pガイドのチュートリアルを見て下さい。