全文検索、より早く、簡単に。

Rails全文検索と言えば有名なのがacts_as_searchable。加えて、acts_as_ludiaも登場。この二つを軽く見比べてみる。

acts_as_searchable

メリット
  • RDBMSに依存しない
  • DBサーバと検索サーバの分離が可能。DBで手一杯の場合検索サーバを外に追い出せる。
デメリット
  • Rails側と別にestmasterを常駐させる必要がある
  • DBと全文検索インデックスを別々に管理しなければいけない

acts_as_ludia

メリット
デメリット
  • RDBMSPostgreSQLしか使えない*1
  • 検索サーバとDBサーバは同一になる。DBと検索が1台のリソースを取り合う恐れ。


こんな感じかな。検索エンジン自体の性能は考慮してない。どちらも一長一短で、迷ったらもう気分で決めちゃうのが手っ取り早そう*2。導入事例のネームバリューで決めるなら、SennaGREEはてなHyper Estraiermixiが使ってるそう。どちらも優劣付けがたいか。

*1:他のSennaバインディングを使えばMySQLとかも使えるけど、acts_as_ludiaじゃない別のプラグインが必要なはず。

*2:なんていい加減な。