学習書●[情報処理]

演習
動かさないファイル
ヒント

http://www.infonet.co.apt/March/syllabus
/Literacies/file/hint/staticfile.html




Q  データベースのファイルは、誰だったら開いて読んだり書き直してもいいか、なんかの設定を記録しておかないといけないですよね。その設定が狂わないように、動かさないようになってるのでは?
(99-12、匿名希望)


A  いい所に気がついたけど、残念ながら外れ。
 許可/禁止の記録はデータベースのファイルにはつきものだ。この情報は、それぞれのレコードの中に [このレコードは誰々になら見せても/書き変えさせてもいい] という情報として記録されている。だから、ファイルがディスクの上を移動しても、それに合わせてついて行くので、対応が狂うようなことはないんだ。
 でも、目のつけ所は悪くない。もし、レコードの中じゃなくて外に記録しておかないと意味がないような情報があって、しかもそれが大量にある場合だったら?データベースファイルにはまさにそういう情報があるはずだけど。


Q  保存のたびにファイルが移動するのは危険だからじゃないですか?。
(99-12、匿名希望)


A  ファイルがディスクの中を動き回ってても、そのせいで危険なことなんてそんなにはないんだよね。それどころか、動かさないようにした方が、かえって作業が増えて危険なんだ。
 きみがとっても大事にしてるビデオカセットがあって(たぶんiMacっぽいトランスルーセントのだとか、そんな理由で)、そこに何かやっぱり好きな番組が録画してあったとする。で、ある日、思い立って、番組の途中のCMを編集して抜いてしまおうと思ったとする。ほかのカセットに移しちゃってもいいんだったら簡単だ。CMをよけながらダビングすればいいんだから。でも、これまでのカセットからよそには動かしたくないとしたら?たぶん、ほかのテープにダビングしてから、もう一度、またもとのカセットにダビングし直さないといけないだろ?
 コンピュータのファイルだって同んなじだ。書き直しによって大きさが変化するのに、なるべくもとの場所から動かないようにファイルを保存するって、たいへんなんだぜ。
 データベースの場合は、ファイルをあらかじめいくつかの紙切れに分割しといて、それぞれの紙切れには余裕が残ってるようにしておいて、伸縮があったら、その余裕の部分で吸収するようにしてるんだ。
 それでも、その余裕がとうとう足りなくなることがある。そんな時は、しかたないから、そこだけは全く別の場所に新しく紙切れを作って、そこにはみ出た部分を書くようになっている。ちょうど、原稿用紙にレポートを書いてて、紙のちょうど真ん中で長い書き足しをしなくちゃならなくなって、別の紙を下に貼り足して、脚注参照って書いとくようなものだ。この技法はバケツ(bucket)と呼ばれている。



情報処理
[ファイル]


Copyleft(C) 2000, by Studio-ID(ISIHARA WATARU). All rights reserved.


最新更新
00-12-20