[Senna-dev 308] Re: N-gramインデックスによるsennaのインストールについて

Zurück zum Archiv-Index

Tasuku SUENAGA a****@razil*****
2006年 9月 12日 (火) 17:55:43 JST


末永です。

> 次に、Mysqlのインストール作業なのですが、senna の HP のインストール方法
> に従って、以下の作業を行っていると、
> # libtoolize -c -f
> # aclocal-1.9
> # autoheader
> # automake-1.9 -c -a -i
> # autoconf
> [Senna-dev 289] にて、山下様が報告なさっているlibtoolize及びautoconfの実
> 行時のエラーが発生し、その後も作業を続けるとmake中にエラーが発生しまいま
> す。

touch sql/sql_yacc.yy
は実行されましたか?
(Senna付属のドキュメントには上記touchコマンドが抜けておりました)

> << (内 350行目付近?)以下のように書き換える >>
>     share->keyinfo[i].senna = sen_index_open(buf);
>                 ↓↓↓
>     share->keyinfo[i].senna = sen_index_create(buf, sizeof(my_off_t), 
>         SEN_INDEX_NORMALIZE|SEN_INDEX_SPLIT_ALPHA|SEN_INDEX_SPLIT_DIGIT|
>         SEN_INDEX_SPLIT_SYMBOL|SEN_INDEX_NGRAM, 0, sen_enc_default);
この書き換えは、現在はオススメいたしません。
その代わり、MySQLのconfigure時に
--with-sennaとともに、--without-mecabを指定ください。

> -------------------------------------------------------------------------------------
> 【blob のカラム subject と body を text のカラムに変更する】
> 
> 一時的にsubject,bodyのデータを保存するtext フィールドの一時カラム 
> subject_temp,body_temp を作成
> mysql > alter table hogehoge add subject_temp text, add body_temp text;
> 
> データを一時的に保存
> mysql > update hogehoge set subject_temp=subject, body_temp=body;
> 
> subject,body カラムをdrop
> mysql > alter table hogehoge drop subject, drop body;
> 
> subject,body カラムをtextフィールドとして再作成
> mysql > alter table hogehoge add subject text, add body text, add fulltext index using ngram (subject,body);
> 
> subject,body カラムにデータを注入
> mysql > update hogehoge set subject=subject_temp, body=body_temp;
> -------------------------------------------------------------------------------------
> 
> 上記操作を終了後、正常に全文検索ができるのを確認したのですが、必要のなく
> なった一時カラム subject_temp, body_temp を以下のようにドロップすると
> 検索結果が何をやっても 0 になってしまいます。
この現象についてですが、
実際に試してみますね。

-- 
末永 匡 <a****@razil*****>
(有)未来検索ブラジル http://razil.jp/




Senna-dev メーリングリストの案内
Zurück zum Archiv-Index