前回の地価マップでの事例紹介では,
今回は,
自分のアプリケーションで利用するプロダクトを検討するときに,
mroongaとは
mroongaはすべてのMySQLユーザに高速な全文検索機能を提供するオープンソースソフトウェアです。MySQLで全文検索をしたいなら一番最初に検討するべきプロダクトです。実際に多くのサービスでmroongaが動いています。例えば,
MySQLには標準で全文検索機能が搭載されていますが,
どうしてmroongaは日本語対応の高速な全文検索機能を追加できるのかというと,
- ※1
- 昨年
(2012年) で事例が紹介されました。groonga勉強会は毎年いい肉の日開催されたgroonga勉強会 (11月29日) に 「全文検索エンジンgroongaを囲む夕べ」 というタイトルで開催されています。昨年で3回目になりました。今年も開催する予定です。
mroongaの読み方
大事なこととは
groongaを使ったミドルウェアやライブラリは
mroongaの歴史
groongaの前身がSennaだったということは第1回で紹介しました。実は,
Tritonnもmroongaと同じくMySQLに日本語対応の高速な全文検索機能を追加するプロダクトでした。では,
Tritonnでの壁
第1回で紹介した通り,
MyISAMとはMySQL 5.
TritonnはMyISAMを変更してSennaを組み込んでいたため,
- ※2
- concurrent_
insertsという仕組みを使えば, 条件付きで同時に実行することができます (参考: MySQL :: MySQL 5. 1 リファレンスマニュアル :: 6. )。3.3 同時挿入
mroongaのアプローチ
Tritonnでぶつかった壁を超えるべく,
Tritonnでの経験から,
mroongaはSennaではなくgroongaを使うようにしました。groongaにはカラム指向のデータストアがあるため,
mroongaに改名した理由
mroongaもgroongaと同じくプロダクト名を変えています。改名の理由はgroongaと同じで互換性がなくなるからです。
後述しますが,
また,
このように,
ただ,
これがmroongaの歴史です。どんな歴史をたどってきたか,
- ※3
- MySQL 5.
6が安定版としてリリースされたため, 2世代前のMySQL 5. 1は今年いっぱいでサポートをやめるかもしれません。MySQLは安定版のことをGenerally Available, 略してGAと呼んでいます。MySQL界隈でGAという字面をみたら安定版のことだなと思うとよいでしょう。 - ※4
- 当時,
著者はmroongaの開発には参加しておらず, 横で眺めているだけでした。今では著者も開発者の1人です。