まつもと ゆきひろです
In message "[ruby-list:5455] Re: Mail to HTML"
on 97/11/27, Shin-ichiro HARA <sinara / blade.nagaokaut.ac.jp> writes:
|ところで DBM っていったいどういう仕組みなんですか?良くでき
|てるなあ。件の viewer (scat.rb) は起動される度にスレッドに関
|するデータを記録した DBM を読んでボタンを配置しているんだけ
|ど .dir, .pag 共に 25M バイトぐらいなんですが、アクセスする
|のに 0.1 秒ぐらいしかかからないんですよ。多分、管理領域があっ
|てディスク上の必要な位置だけを読むんだと思うんですが。
実装によると思いますが,基本的には
* 最初に強制seekである一定の大きさのファイルを作り出し,
* keyからhash値をもとに計算した位置にseekし,dataを格納する
* サイズが足りなくなったらファイルの大きさを大きくしてrehash
というようなことをしているようです.