横山です。

お知らせが遅れましたが、10月7日にRroonga 6.0.9をリリースしました!

○ Rroonga(るるんが)とは

Groonga(ぐるんが)という全文検索エンジンのRubyバインディング
です。Rubyらしい書き方で、Groongaの高速な全文検索機能やカラム
指向のデータストア機能を使うことができます。

ライブラリーなのでサーバーをインストールする必要もありません。
全文検索が得意で日本語も扱えるSQLiteのようなイメージです。

RroongaのWebサイト: http://ranguba.org/ja/#about-rroonga
GroongaのWebサイト: http://groonga.org/ja/

インストールも簡単で、gem installだけでインストールできます。

(ちなみに、Rroongaの作者はRubyKaigi 2016でバインディングの話
をした須藤さんです。どんなやり方で作られているか興味がある人は
コードを読んでみてください。 https://github.com/ranguba/rroonga )

○ 今回のリリースについて

先月末の肉の日にリリースされたGroonga 6.0.9に対応しました。
Groonga 6.0.8以前はサポートしなくなったのでご注意ください。

Rroongaに影響しそうなGroonga 6.0.9の変更点は以下の通りです。

* 改良
  * デフォルトのロックタイムアウトの値を2.7時間から15分へと短縮しました。
* 修正
  * インデックスの削除チェック漏れを修正しました。ヒットすべきものが検索
結果から漏れてしまっていました。Groonga 6.0.3以降がこの問題の影響を受け
ます。 [groonga-dev, 04107] [かずひこさんが報告]

変更点の詳細はお知らせをご覧ください。

  Rroonga 6.0.9: http://ranguba.org/rroonga/ja/file.news.html#6-0-9
  Groonga 6.0.9: http://groonga.org/ja/docs/news.html#release-6-0-9

○ インストール

gemコマンドでインストールできます。

    % gem install rroonga

詳細: http://ranguba.org/rroonga/ja/file.install.html

インストールに時間がかかる場合、事前にGroonga 6.0.9をインストール
しておくと早くなります。手順は上記リンク先を参照してください。
以下の記事も参考になると思います。

Rroongaを最速でインストールするには
http://qiita.com/groonga/items/2bc6d3499abc5ed47a49

○ チュートリアル

irbを使ったRroongaのチュートリアルがあります。
  http://ranguba.org/rroonga/ja/file.tutorial.html

はじめての方はまずこちらを試してみてください。

○ 関連ソフトウェア

〇〇 るりまサーチ

るりまプロジェクトのドキュメントを検索するるりまサーチは
Rroongaを使っています。

  http://docs.ruby-lang.org/ja/search/

Rroongaの使い方は↓が参考になるはずです。
https://github.com/clear-code/rurema-search/tree/master/lib/rurema_search

○○ Milkode

行指向のソースコード検索エンジンであるMilkodeはRroongaを使っ
たシステムです。

  http://milkode.ongaeshi.me/

Rroongaの使い方は↓が参考になるはずです。
https://github.com/ongaeshi/milkode/tree/master/lib/milkode/database

るびまの記事もあります。

  Rubyist Magazine - Ruby でソースコード検索エンジンの作り方 〜Milkode
の内部実装解説〜
  http://magazine.rubyist.net/?0046-Milkode

○ Ruby on Railsとの連携について

Railsに全文検索機能を追加する場合、RroongaではなくMroonga(むるんが)や
PGroonga(ぴーじーるんが)を使うやり方もあります。MroongaはMySQLに日本語
全文検索機能を追加するストレージエンジンで、PGroongaはPostgreSQLに日本語
全文検索機能を追加する拡張機能です。どちらも全文検索エンジンとして
Groongaが使われています。これらはSQLで使えるので、Active Recordと相性が
よいのです。

以下の記事でRedmineに高速な全文検索機能を導入する方法の例が書かれている
ので、興味がある方はご覧ください。

MySQLとPostgreSQLと日本語全文検索3:MroongaとPGroongaの導入方法例
#mypgft - ククログ(2016-09-29)
http://www.clear-code.com/blog/2016/9/29.html

それでは、Rubyで楽しい全文検索を!

-- 
横山 昌史 <Masafumi Yokoyama>
E-mail: yokoyama / clear-code.com
株式会社クリアコード
〒170-0005 東京都豊島区南大塚3-29-9
Tel: 03-5927-9440
Web: http://www.clear-code.com/