ROMA ブログ
新しいストレージシステム"Groonga"の追加。
January 16, 2015ROMAは新しいストレージシステムを採用しました。groongaです。
Groonga はオープンソースのフルテキスト検索園児でカラムを保持します。
フルテキストの検索を必要とする項パフォーマンスのアプリケーションを書くことができます。
このストレージの結果として、Groongaに基づいたストレージバックエンドを基にしたプラグインとして"フルテキスト検索機能"を実装することができました。This pull request was sent by kouhei.sutou-san. Thanks for your contribution sutou-san!!
ベンチマーク
Groonga と TokyoCabinet のベンチマークテストです。
(ファイルベースの) Groonga はメモリベースのTokyo Cabinetよりも遅いですが、ファイルベースのTokyo Cabinetよりも速いことを示しています。
どうやってGroongaを使うか
1. ROMAの最新バージョンをダウンロードする
ROMA は v1.1.0 以降にgroongaを採用する予定です。
今のところv1.1.0を3月末にリリースする予定です。ですが、開発バージョンとしてv1.1.0をダウンロードすることができます。
View on Github(version1.1.0-dev)
2. 関係するライブラリのダウンロード
例) CentOS
$ sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
$ sudo yum makecache
$ sudo yum install groonga-libs groonga-devel
$ gem install rroonga
$ sudo yum makecache
$ sudo yum install groonga-libs groonga-devel
$ gem install rroonga
詳細は Groonga 公式ドキュメント を参照してください。
3. 設定
config.rbのストレージ設定を変更してください。
$ diff config.rb config.rb(groonga)
1c1
< require "roma/storage/tc_storage"
---
> require "roma/storage/groonga_storage"
61c61
< STORAGE_CLASS = Roma::Storage::TCStorage
---
> STORAGE_CLASS = Roma::Storage::GroongaStorage
1c1
< require "roma/storage/tc_storage"
---
> require "roma/storage/groonga_storage"
61c61
< STORAGE_CLASS = Roma::Storage::TCStorage
---
> STORAGE_CLASS = Roma::Storage::GroongaStorage