Railsで全文検索エンジン
acts_as_versioned extension より、樂水さん(つーか inoue さん)に色々教えてもらった。
Ruby で利用できる全文検索エンジンは、ザッと調べた限りで 4つ。
- Senna + MySQL
- Rast + 独自?というか何でも
- Estraier + QDBM
- Hyper Estraier + QDBM
ごにょごにょ検討:
- ActiveRecord の恩恵を受けられるのは、今のところ Senna + MySQL の組み合わせのみ。しかし、MySQL の方にパッチを当てないといけないのがネック。
- Rast の MySQL バインディングは作れるんだろうか? Senna みたいに、MySQL にパッチ加えないでいいならアリだな。
- ActiveRecord の QDBM 対応は、一応話題にはでるようだ。自分でやっちゃうという手もある?
- Model の追加・更新メソッドををオーバーライドして格納先を2つに分ければ(<-試してない)、どれでもいいんだろうけど、あんまりやりたくないよね。
うーむ、色々あるな。いづれにしても保守が容易な方法にしたい。理想は apt-get upgrade 一発。