Tritonn 1.0.9におけるsennaの設定
Tritonn 1.0.9におけるsennaの設定
0.改訂履歴
1.はじめに
このドキュメントでは,MySQLにて日本語全文検索を利用する為にSennaを利用しやすくしたパッケージを作成しているTritonnプロジェクトで提供されているパッケージで,サーバサイドの設定について説明する.
2.ステータスの確認
- その他にもいろいろと拡張が行われているので,最新情報は公式サイトを参照する必要がある.
- Tritonnの拡張の中で,sennaのインデックス情報を確認する機能が拡張されているで,使ってみる.
mysql> show senna status ¥G
*************************** 1. row ***************************
Table: senna_test
Key_name: full_text_index
Column_name: body
Encoding: utf8
Index_type: NGRAM
Sectionalize: OFF
Normalize: ON
Split_alpha: OFF
Split_digit: OFF
Split_symbol: OFF
Initial_n_segments: 512
Senna_keys_size: 4
Senna_keys_file_size: 8462336
Senna_lexicon_size: 45
Senna_lexicon_file_size: 8462336
Senna_inv_seg_size: 2789376
Senna_inv_chunk_size: 135168
*************************** 2. row ***************************
Table: senna_test2
Key_name: body
Column_name: body
Encoding: utf8
Index_type: MECAB
Sectionalize: OFF
Normalize: ON
Split_alpha: OFF
Split_digit: OFF
Split_symbol: OFF
Initial_n_segments: 512
Senna_keys_size: 2
Senna_keys_file_size: 8462336
Senna_lexicon_size: 22
Senna_lexicon_file_size: 12656640
Senna_inv_seg_size: 954368
Senna_inv_chunk_size: 135168
2 rows in set (0.01 sec)
mysql>
|
フィールド名 |
値の意味するところ |
Table |
FULLTEXTインデックスが張られているテーブル名 |
Key_name |
FULLTEXTインデックスの名前 |
Column_name |
インデックスの対象のカラム名 |
Encoding |
インデックスに使用されている文字コード |
Index_type |
使用しているインデックスの種類(mecab/ngram/delimited) |
Normalize |
Unicode正規化機能のOn/Off |
Split_alpha |
現在は特に意味は無し |
Split_digit |
現在は特に意味は無し |
Split_symbol |
現在は特に意味は無し |
Initial_n_segments |
インデックスバッファ領域の初期値 |
Senna_keys_size |
シンボル表 (.SEN) のレコード数の合計 |
Senna_keys_file_size |
シンボル表 (.SEN) のファイルサイズの合計 |
Senna_lexicon_size |
語彙テーブル (.SEN.I) のレコード数の合計 |
Senna_lexicon_file_size |
語彙テーブル (.SEN.I) のファイルサイズの合計 |
Senna_inv_seg_size |
転置テーブルのバッファ (.SEN.i) のファイルサイズ |
Senna_inv_chunk_size |
転置テーブル (.SEN.i.c) のファイルサイズ |
3.デフォルトのインデックスタイプの設定
- デフォルトのインデックスタイプはN-GRAMとなっている.
- これを変更するには,2種類あって,サーバ全体で変更するには,次のようにmy.cnfに記述する.
[mysqld]
senna-index-type=mecab
|
- また,動的に変更する場合には,set globalにて設定する事ができる.
mysql> SET global senna_index_type=mecab;
|
- Globalがついている事からも判る通り,セッションのみ有効では無いので影響範囲について理解しておく.
4.ログの設定
- setコマンドや,my.cnfにて,senna-logおよびsenna-log-levelを指定する事ができる.
- senna-logでは,ログファイルの場所を指定する事ができる.
- また,senna-log-levelでは,以下の表のように出力レベルを設定する事ができる.
ログオプション
設定値 |
意味 |
詳細 |
NONE |
なし |
ログを出さない |
EMERG |
危険 |
Sennaを強制終了する必要がある. |
ALERT |
修復が必要 |
メモリ割当不可やディスク容量不足等のOSの状態等のエラー. |
CRIT |
致命的エラー |
インデックス破損等. |
ERROR |
一般的なエラー |
|
WARNING |
システムからの警告 |
パラメータ間違い等. |
NOTICE |
システムからの通知 |
インデックスのオープン,クローズ等. |
INFO |
システム情報 |
検査クエリや結果等. |
DEBUG |
Sennaの開発者用情報 |
デバッグ情報. |
DUMP |
未使用 |
|