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

  • 27
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

いよいよ、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の基本的な動作を知るためのチュートリアルもあります。インストールしたら試してみてください。