-
Notifications
You must be signed in to change notification settings - Fork 0
開発目的
Susumu Yata edited this page Jul 31, 2014
·
2 revisions
Grnxx は Groonga の後継として開発が始められたプロジェクトです. 主な開発目的は以下の 2 つであり,さらなる効率化を目指しています.
- より大きなデータを扱えるようにしたい.
- より速くデータを検索・更新できるようにしたい.
Groonga には規模に関するいくつかの制限があるものの,一般的な用途で問題になるほどではありませんでした.
-
- 制限事項 — Groonga v4.0.4ドキュメント
- http://groonga.org/ja/docs/limitations.html
しかし,外部記憶装置の高速化,メモリ容量の増大,ビッグデータの人気などに影響を受けて,大規模なデータに対する分析の需要が増しています. 結果として, Groonga の制限に引っかかる事例も出てきました. そして,制限に引っかかるときは,古いデータを削除したり,テーブルを分割したりするなど,ユーザ側で対処する必要がありました.
これらの事情により, Grnxx では特殊な工夫を凝らさなくても大規模なデータを扱えるようにすることを目指しています.
Groonga は全文検索エンジンであると同時に,独自のカラムストアを持つデータベースとしての側面も持っています. そのため,全文検索結果に対するメタ情報による絞り込みや集計なども単独で実現することができます.
しかし, Groonga は長年の最適化や拡張により高速・高精度な全文検索を実現できている一方で,カラムストアとしては大規模なデータに対する絞り込みがボトルネックになるなど,改良の余地が残っている状態です.
そこで, Grnxx では特にカラムストアの高速化を目指しています.