[Namazu-devel-ja 1565] Re: hash の負荷軽減

Yukio USUDA m6694ha392t @ asahi-net.or.jp
2007年 4月 15日 (日) 18:17:52 JST


臼田です

古めの環境で問題がないのであれば、修正しても大丈夫そうですね。

Tadamasa Teranishi wrote:
> model name      : Pentium III (Coppermine)
> stepping        : 1
> cpu MHz         : 601.371
> cache size      : 256 KB
>   
メモリはどの程度ありますか。
私はこれより低い環境のパソコンもときどき使っています。


> 4) 修正内容
>
>  修正(SD) は前回のもの
>
>  修正(SE) はインデックスの書き出し回数が増えると、
>  mknmz::get_last_docid に時間がかかるため、修正(D)に加えて
>  %PhraseHashLast, %KeyIndexLast をインデックスの書き出しの度に
>  クリアしないように修正したもの
>   
SDからSEの変更によって
mknmz::get_last_docid
mknmz::adjust_first_docid
が上位に現れなくなっていますね。

%PhraseHashLast, %KeyIndexLast をクリアしないと
これらの処理が減るのですね
できあがるインデックスには違いがでないのでしょうか。


> 5) 結果
>
> $ON_MEMORY_MAX|インデックス|   SA     SD     SE
>               |書き出し回数|
> --------------+------------+---------------------
>      50000000 |          1 | 0.825  0.678  0.700
>       5000000 |          7 | 1.000  0.815  0.761
>        500000 |         65 | 1.971  1.840  1.388
>         50000 |        613 | 9.357  9.355  7.500
>   
[SA4] [SD4] で違いがなくなってしまうのは残念ですが、
SE の修正の効き目が大きいですね。

>  ※HTML,PDF,Word,Excel,PowerPoint,一太郎 等はテキスト抽出のため
>    の処理が必要です。この処理は非常に重いので今回のテスト結果
>    ほどの性能はでないものと思います。
>   
HTML,PDF,Word,Excel,PowerPoint,一太郎はテキスト量のわりにファイルサイズが
大きいので $ON_MEMORY_MAX が本来の必要以上に働いてむだに書き出し回数
が増えている可能性があります。SDからSEへの修正が効くでしょう。

$processed_files_size ではなく、$processed_text_size という変数を設けて
$ON_MEMORY_MAX と比較するようにするほうがファイル種別が多様な
際に合っているのかもしれません。

臼田幸生




Namazu-devel-ja メーリングリストの案内