mroonga - MySQLで高速に全文検索するためのオープンソースのストレージエンジン

3. ユーザガイド

インストール方法についてはこちらを参照して下さい: インストールガイド

3.1. インストール確認

MySQLサーバの起動停止方法は通常のMySQLと同じです。

MySQLサーバを起動した上でmysqlコマンドで接続します。パスワードを設定済みの場合は -p オプションでパスワードを指定して下さい。

shell> mysql -uroot test

SHOW ENGINESコマンドでmroongaがインストールされているかどうかを確認します。:

mysql> SHOW ENGINES;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                    | Transactions | XA   | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| mroonga    | YES     | Fulltext search, column base                               | NO           | NO   | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                      | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     | NO           | NO   | NO         |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys | YES          | YES  | YES        |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  | NO           | NO   | NO         |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
6 rows in set (0.00 sec)

上記のように"mroonga"ストレージエンジンが見えていればインストールは無事完了しています。

インストールされていなければ以下のようにINSTALL PLUGINコマンドを実行して下さい。

mysql> INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so';

3.2. 動作モード

mroongaは以下の2つの動作モードのどちらかで動作します。

  • ストレージモード
  • ラッパーモード

ストレージモードでは、全文検索機能だけではなくデータストアも含めてgroongaの機能を利用します。ストレージエンジンのすべての機能をgroongaストレージエンジンで実現するため、groongaが得意としている集計操作が高速である、 groonga コマンドで直接データベースを操作できるという特長があります。

ストレージモードの構成を図で表すと以下のようになります。MyISAMやInnoDBなど既存のストレージエンジンの代わりに利用します。

storage mode

ラッパーモードでは全文検索機能のみgroongaの機能を利用し、データストアはInnoDBなど既存のストレージエンジンを利用します。ラッパーモードを利用することにより、ストレージエンジンとして多くの利用実績のあるInnoDBに全文検索エンジンとして実績のあるmroongaを組み合わせて、高速な全文検索機能付きの信頼性のあるデータベースとして利用できるという特長があります。

ラッパーモードの構成を図で表すと以下のようになります。全文検索関連の処理はgroongaストレージエンジンで処理し、それ以外の処理はMyISAMやInnoDBなど既存のストレージエンジンを利用します。SQLを処理するSQL Handlerと既存のストレージエンジンの間に位置するため、すべてのデータが一度mroongaを通ることになります。これを利用して、全文検索用のインデックス作成などを透過的に行います。

wrapper mode

目次

前のトピックへ

2. インストールガイド

次のトピックへ

3.3.1. ストレージモード

このページ