Skip to content
Susumu Yata edited this page Jul 31, 2014 · 2 revisions

概要

Grnxx は Groonga の後継として開発が始められたプロジェクトです. 主な開発目的は以下の 2 つであり,さらなる効率化を目指しています.

  • より大きなデータを扱えるようにしたい.
  • より速くデータを検索・更新できるようにしたい.

大規模化について

Groonga には規模に関するいくつかの制限があるものの,一般的な用途で問題になるほどではありませんでした.

しかし,外部記憶装置の高速化,メモリ容量の増大,ビッグデータの人気などに影響を受けて,大規模なデータに対する分析の需要が増しています. 結果として, Groonga の制限に引っかかる事例も出てきました. そして,制限に引っかかるときは,古いデータを削除したり,テーブルを分割したりするなど,ユーザ側で対処する必要がありました.

これらの事情により, Grnxx では特殊な工夫を凝らさなくても大規模なデータを扱えるようにすることを目指しています.

高速化について

Groonga は全文検索エンジンであると同時に,独自のカラムストアを持つデータベースとしての側面も持っています. そのため,全文検索結果に対するメタ情報による絞り込みや集計なども単独で実現することができます.

しかし, Groonga は長年の最適化や拡張により高速・高精度な全文検索を実現できている一方で,カラムストアとしては大規模なデータに対する絞り込みがボトルネックになるなど,改良の余地が残っている状態です.

そこで, Grnxx では特にカラムストアの高速化を目指しています.