[Senna-dev 784] Re: index full. set bigger value toinitial_n_segments

アーカイブの一覧に戻る

Tasuku SUENAGA a****@razil*****
2008年 2月 20日 (水) 02:13:49 JST


末永です。

過去のMLから情報をまとめてくださってありがとうございます!!
もう少し具体的な情報を含んだ返信メールを出せばよかったと
反省しているところです…

> 今まで、INITIAL_N_SEGMENTSは、使用メモリサイズとスピードに関連する
> パラメータと思っていて、あまり気にしていませんでしたが、(後略)

使用メモリサイズ・スピード・最大インデックスサイズの3つの要素に影響します。

正確に言うと、
メモリにマップされた更新用バッファファイルのサイズを指定するパラメータです。

今回の篠原さんのように大きなデータ量のテキスト集合を扱う場合には
INITIAL_N_SEGMENTSをデフォルトの512から上げる必要があります。

まあ、更新が多いシステムの場合にも、
INITIAL_N_SEGMENTSを増やすと更新性能が上がる場合があると推測できます。

> 形態素解析では、8G
> N-gramでは、5.3G
> のへんが境界線という事でしょうか。

大まかな目安にはなると思います。

Akihiko Shinohara さんは書きました:
> こんにちは、篠原です。
> 返事がとても遅くなってしまいました。すいません。
> 
>> 個人的な興味としては、
>> 検索対象の
>> ・件数
>> ・データ量
>> ・テキストの種別
>> の3点が気になります。
> 
> まず、この件ですが、2つの環境として
> (1) 新規登録環境
>     (a). 件数 約300万件
>     (b). データ量 約20GB
>     (c). テキストの種類 MEDIUMTEXT ,SJISコード
> (2) 0.8系で使用していたテーブルからのインデックス再作成
>    (a). 件数 約300万件
>    (b). データ量 約13GB
>    (c). テキストの種類 MEDIUMTEXT ,SJISコード
>         但し、変換元のテーブルの型は、TEXTなので、最大でもTEXTのサイズを
>         超えることはありません。
> という環境です。
> 
> 今まで、INITIAL_N_SEGMENTSは、使用メモリサイズとスピードに関連する
> パラメータと思っていて、あまり気にしていませんでしたが、
> 実は、以下の説明にもあるように、
> http://lists.sourceforge.jp/mailman/archives/senna-dev/2006-February/000197.html
> 初期値の512の設定だと、最大8G程度のインデックスしか作成できないという制限な
> のです
> ね、言い換えれば、形態素解析では、ほぼテーブルサイズのインデックスとなり
> N-gramのインデックスでは、テーブルサイズの1.5倍程度のインデックスとなるので
> 
> 形態素解析では、8G
> N-gramでは、5.3G
> 
> のへんが境界線という事でしょうか。
> 
> という事で最初に示した環境は無謀もいいところですね。(^^;
> INITIAL_N_SEGMENTSを調整することで無事にインデックスが
> 作成できました。
> 
> ありがとうございました。
> ----
> sino

---
Tasuku SUENAGA <a****@razil*****>




Senna-dev メーリングリストの案内
アーカイブの一覧に戻る