Edited at

Rroongaを最速でインストールするには

More than 3 years have passed since last update.

いよいよ、gihyo.jpさんでGroongaの隔週更新連載が始まりました!!

第6回の記事も公開されたので、一読をおすすめします。


はじめに

Rubyでサーバ要らずの高速全文検索を実現するためのオープンソースソフトウェアとしてRroonga(るるんが)を公開しています。

この記事を書いた時の最新のバージョンは2013年5月29日にリリースした3.0.2です。

今回は、そのRroongaを最速でインストールする方法について紹介します。


Rroongaのインストールについて

Rubyで全文検索をするのにRroongaを使いたい、となったときにまずすることはインストールです。

Rroongaは隔週連載Groongaの第5回の記事にもあるようにインストールしやすいことをとても大事にしています。

というのも、Rroongaはオープンソースのカラムストア機能付き全文検索エンジンであるGroongaをライブラリとして使っています。

RroongaはRubyで書かれた部分だけでなく、Cで書かれた部分もあります。Groongaがインストールされた状態でコンパイルが必要です。

Rroongaを使いたいだけなのに、事前にあれこれインストールすることを気にしないといけない、というのでは大変です。

そこで、Groongaがインストールされていることを意識しなくても済むようになっています。

インストールするときの手順はこれだけです。

% gem install rroonga

単にRroongaのgemをインストールするだけです。

これは、もしGroongaがインストールされていない場合でもソースコードをダウンロード、ビルドしてからRroongaのインストールを再開する仕組みになっているからです。


Rroongaのインストールにかかる時間について

Rroongaを手順通りにインストールすると、時間がかかることに気づきます。

実際に時間を測ってみましょう。

% time gem install rroonga

Building native extensions. This could take a while...
Successfully installed rroonga-3.0.2
1 gem installed
464.65s user 21.78s system 89% cpu 9:04.08 total

9分程度かかっていることがわかります。

Groongaをまったくインストールしていない、 Core(TM) i7-2640M (2.80GHz)のCPUと8GBのメモリを積んだノートPCでこの状態です。

もうすこし速くならないものでしょうか。


Rroongaのインストールを短縮するには

Groongaをビルドするのに時間がかかる理由についてはGroongaの最適化によるビルド時間への影響という記事を書きました。

時間がかかるのはビルドするせいなので、事前にバイナリパッケージをインストールしておけば時間を節約できます。

もし、Ubuntu 14.04をお使いなら、以下のようにしてlibgroonga-devをインストールしてからRroongaをインストールします。

% sudo add-apt-repository -y ppa:groonga/ppa

% sudo apt-get update
% sudo apt-get install libgroonga-dev
% gem install rroonga

では、実際にlibgroonga-devをあらかじめインストールした状態でRroongaをインストールするのにどれくらいかかるか確認してみましょう。

% time gem install rroonga

Fetching: rroonga-3.0.2.gem (100%)
Building native extensions. This could take a while...
Successfully installed rroonga-3.0.2
1 gem installed
6.98s user 0.94s system 22% cpu 34.482 total

34秒、と大幅にインストール時間を短縮できていることがわかります。

Groongaのインストールの有無
時間

未インストール
9分4秒

インストール済み
34秒


まとめ

今回は、Rroongaを最速でインストールする方法を紹介しました。

Rroongaに興味を持ったなら、まずはインストールして試してみてください。

Rroongaの基本的な動作を知るためのチュートリアルもあります。インストールしたら試してみてください。