Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 随時、インデックスの作成をしたい。
寺西です。
Mikio Nakamura wrote:
>
> >なぜ、そんなことをしたいのでしょう。
>
> >ファイルが追加されたり、更新された度に mknmz を実行していたのでは
> >パフォーマンスが非常に悪くなると思いますが。
> >
> ファイルの追加や更新は間隔にものすごくバラ付きがあるんです。
> そのわりに、(namazuからの)参照にはその時点での最新情報が
> 要求されているのでこう考えてみました。
そういう要求には Namazu は向きません。
インデックスの更新にかかる負荷は比較的高いので、インデックスの更新
にはある程度の処理時間が必要なシステムです。
その処理時間のために、
あるファイルを更新したタイミングで mknmz を実行し、その mknmz
が実行中に別のファイルを更新した場合に、次の mknmz を実行しても
希望通り動作しません。(インデックス更新中に更にインデックスの更新
はできない)
このため、先の mknmz が終わるのを待って、次の mknmz を実行するか、
先の mknmz を強制終了させて、次の mknmz を実行するかといった
処理が必要になります。(待ち行列とかの処理ですね)
これについては何の用意もありませんので、まじめにやるには、
そういう仕組みを自作する必要があります。
# そもそも、ファイルが追加されたり、更新されたという情報をどうやって
# 取得するかという方法も問題ではありますが。
更新対象のファイルがない場合の mknmz の負荷はまだ比較的低いので、
(find でチェックするのと同程度でしょう。たぶん)
単純に cron で mknmz を実行する周期を短くするといった程度で、
十分なのではないかと思います。(総ファイル数が比較的少ない場合)
まぁ、1時間ぐらいなら、実用的なんではないかと思いますが。
# それでも、ファイルサーバの負荷は高くなってしまいますけど。
--
=====================================================================
寺西 忠勝(TADAMASA TERANISHI) yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E