namazu-dev(ring)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: NMZ.field.*
masao@xxxxxxxxxx (Masao Takaku) wrote:
>> と間に s, n を挟んで、ファイル名で識別するようにしたいと思い
>> ます。(ころころと仕様を変えてすみません)
>
>ファイル名で識別すると、
>Index作成・検索双方でファイル名の確定が面倒ではないですか?
たしかにちと面倒です。
>(手法1) Indexing時に NMZ.sortinfo をつくって、
> それに、以下のように記入しておく。
> size NUMBER
> subject STRING
> from STRING
これはもっと面倒です。:-)
>(手法2) 基本的に全て文字列としてソートし、
> 先頭の文字が数字だった項目のみ、数値型としてソートする。
これはいいですね。まず最初に (ソートにおいて) 比較する2つの
文字列の両方が数値であるか確認して、そうであれば数値型として
ソートする、そうでなければ文字列としてソートする、というルー
ルでいいでしょう。
「比較する2つの文字列の両方が数値であるか確認」の処理はほと
んどの場合、最初の1文字で決定できるので、この処理に要するコ
ストはごく小さいものでしょう。
また、結果出力時には、文字列が数値であるか確認して、そうであ
ればカンマを入れる、そうでなければそのまま出力する、というルー
ルでいいでしょう。
「文字列が数値であるか確認」の処理はほとんどの場合、最初の1
文字で決定できるので、この処理に要するコストはごく小さいもの
でしょう。
というわけで、ほかにいいアイディアがなければ手法2を採用した
いと思います。Thanks > たかくさん
>(手法3) そもそも、NMZ.field.* をIndex作成時にソートしておく。
これは私も考えましたが、
> # 多分Indexingが遅くなるからだめかな?
ので検討をやめました。
-- Satoru Takabayashi