From: Toshiro Kuwabara Date: 2000-05-25T15:25:23+09:00 Subject: [ruby-list:22910] Re: [Q] blade internal design Toshです。 In message "[ruby-list:22908] Re: [Q] blade internal design" on 00/05/25, Hideto ISHIBASHI writes: >> >blade clone では、わかち書きのために KAKASI か Chasen を使います。 >> >しかし、必ずしも Namazu を使う必要は無いように感じてきました。 >> >Hash を使えば Ruby 内部で完結するので、それなりに高速かなと。 >> >> そのような用途にHashなどのオブジェクトを使う場合、大量のオブジェクトが >> 生成されることになりGCだけで相当のコストになるんではないでしょうか? >> あとメモリも大量消費しそうです。Namazuのインデクスをまるごとメモリに >> 置いておくのに近いですよね? > >Hash そのものではなく、永続化オブジェクトにするつもりです。 >ちまちま必要なものだけをファイルからロードします。 >だからメモリを占有することはないと思います。 > >いずれにしてもオブジェクトの数だけ GC が働くので、 >GC が活躍するってことには変わりないですね (^^; > >あれ、PStore はまるごとファイルを読み込むから、 >メモリの節約にはならないですね。Dbm もだめかな? >RDBMS を使わないといけないんですね。 >勘違いしていました。Hash 案はボツです (^^; PStoreはそうだと思いますが、標準のDBMもそうなんですか? UNIXのDBMって、単にファイルをデータベースっぽく扱うだけのライブラリ ってことですしょうか? トランザクションとかはできてなくてファイルロックなど無しには複数プロ セスから同時にはアクセスできないけど、変更したらファイルに書き戻されて syncされるものとばかり思ってました。 >RDBMS まで使って、Namazu より遅いんではちょっと悲しい (^^; >でも、たぶん Namazu よりは速くなるし、メモリの消費量も >少なくなると思います。思うことにしよう (^^; > >やっぱ違います? いえ、ちゃんとしたデータベース使えばもちろん大丈夫だとは思いますよ。 僕はデータベースとかオブジェクト永続化とかにはまったくの無知ですが。 --- Tosh Toshiro Kuwabara