7:Re:データベースエンジン tahrayan 06/03 00:48 昨日返信を書いたときも、もしかしてDB−Eのことかなとは思って いたのですが、やはりそうでしたか。 すでにEXCHANGEさんが書いていますので、付け加えることは あまりないのですが、まとめておきます。 DB−Eの使い方は、600シリーズの「データ管理説明書」に詳しく書いてあります。 これを見れば、誰でもできると思います。 blueelionさんのところは、S7200もあるとのことですので、 S7200シリーズ用の説明書を見ているのではないでしょうか。 S7200と600シリーズでは、DB−Eの方式が違うため、 S7200の方の説明書を見ても書いてありません。 (600シリーズのDB−Eは標準機能なので、標準の説明書に方法が 書いてあるが、S7200の方はオプションなので、装置側の説明書 に書いてあるはず。) おそらく皆さんご存知のことかと思いますが、DB−Eの仕組みは、 (以下の説明は説明書の内容から予想した部分もあります。) 高速化したいファイルをメモリ上に貼り付けて、ディスクからデータを 読み込んだり書き込んだりするのではなく、メモリから読み書きする というもの。 つまり、ディスクキャッシュや、10年ぐらい昔にパソコンがフロッピー ディスクベースだった頃はやったRAMディスクのようなもので、今と なってはごく普通の技術です。 (パソコンの驚速とかいうソフトで、CD-ROMの読み書きを高速化する のと同じ仕組み?) S7200の頃は、専用の装置(メモリがいっぱい載っている)を 使って実現していました。 600シリーズ(700シリーズも?)は、専用の装置の代わりに、 本体のメモリをそのまま使っています。 ここからは予想なのですが、EXCHANGEさんが書いている 「ただ、これを使うとCPU負荷がかかるらしく、」という話は 以下の理由によるものだと思います。 ・600シリーズのDB−Eは、本体のメモリを使用している。 ・DB−Eが、64Mバイトなり128MBなりのメモリを使用すれば、 当然Windowsが使用できるメモリは減る。 ・Windowsは、仮想メモリと物理メモリを使って、メモリの使用 を制御している。メモリが足りないと、仮想メモリ?物理メモリのSWAP が多発する。 ・SWAPが多発すると、その処理のためにCPU負荷とディスクIO が増える。 普通Windowsサーバのメモリ量が少ないと、やたらとSWAPが 発生して、遅くなりますよね。 つまり、搭載しているメモリが少ないと、DB−Eでせっかくファイル のアクセススピードが速くなっても、メモリサイズを圧迫してしまい、 WindowsのSWAPが増えて逆に悪影響になってしまう。 ということだと思います。 (あくまでも予想ですが、だいたい合っているのでは?) それから、「メモリ上のデータ」は、「ディスク上のデータ」の コピーでしかないので、もし「メモリ上のデータ」を書き換えたら 処理の終了時に「ディスク上のデータ」に書き戻してあげる必要が あるということです。 |