summaryrefslogtreecommitdiff
path: root/fml/doc/ja/tutorial/internals/db_modules.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'fml/doc/ja/tutorial/internals/db_modules.sgml')
-rw-r--r--fml/doc/ja/tutorial/internals/db_modules.sgml56
1 files changed, 31 insertions, 25 deletions
diff --git a/fml/doc/ja/tutorial/internals/db_modules.sgml b/fml/doc/ja/tutorial/internals/db_modules.sgml
index 200e7eb2..de4aec68 100644
--- a/fml/doc/ja/tutorial/internals/db_modules.sgml
+++ b/fml/doc/ja/tutorial/internals/db_modules.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: db_modules.sgml,v 1.3 2005/06/25 15:11:33 fukachan Exp $
+ $FML: db_modules.sgml,v 1.4 2008/08/18 13:21:42 fukachan Exp $
-->
<!--
@@ -20,8 +20,8 @@
<para>
MLドライバはメールのさまざまな要素をデータとして保存する必要がありま
-す。しかしながら、同じ要素でも、永続的に持つべき場合と、一定時間経過後
-に捨てて良い扱いの場合とがあります。
+す。しかしながら、永続的に持つべきデータと、一定時間経過後に捨てて良い
+データがあります。
</para>
<para>
@@ -44,18 +44,19 @@ message-id のデータを持っていますし、記事の分については重複しています。
<link linkend="threadtrack.db">
Mail::Message::DB
</link>
-のようなものとし、各種アダプタ層が頑張って欲しい。
-また、キャッシュの方ですが、現在では Tie::JournaledDir もしくは
+のようなものとし、アダプタ層が差異を吸収して欲しい。
+キャッシュについては、現在のところ Tie::JournaledDir もしくは
FML::Cache::Ring のいづれかが使われることとなっています。
</para>
<para>
-なお、メンバーリストなどの永続性の必要なデータに対するデータベースはき
-ちんと DBMS (データベース管理システム)を使うべきです。
+なお、
+メンバーリストなどの永続性の必要なデータに対してデータベースを使う場合は、
+本来、きちんとした DBMS (データベース管理システム)を使うべきです。
</para>
<para>
-本章で述べるデータベースは
+本章で述べるデータベースはそれとは異なり、
&fml8; が動作する上で内部的に使っているデータベースのことです。
</para>
@@ -86,13 +87,16 @@ DBMS
</para>
<para>
-ここでは &fml8; 内部で使っているモジュールの話をします。
+ここでは &fml8; 内部で使っているモジュールの解説をします。
</para>
<para>
&fml8; では、データの expire の仕方に応じて2つのデータ保持クラスを用
-意しています。それは「サイズを気にせず、時間を区切って expire するのか?」
-もしくは「使用する領域のサイズをある程度気にするか?」の2種類です。
+意しています。
+それは
+「サイズを気にせず、時間を区切って expire するのか?」
+「使用する領域のサイズをある程度気にするか?」
+の2種類です。
</para>
</sect1>
@@ -123,14 +127,14 @@ DBMS
<para>
参照する際は最後に追加したデータが取り出されます。
つまり、値は追加された値を last match で取り出しています。
-</para>
-
-
+<footnote>
<para>
-逆に、それ以上の情報が必要な場合には、過去のログを追跡していくことがで
-きます。
+原理上 last match 以上の情報抽出も可能です。
+過去のログを追跡していくことで、全データ一覧の生成ができます。
+また、 last match を first match に切替えることも出来ます。
+</para>
+</footnote>
</para>
-
<para>
このクラスは、サイズを度外視して一定期間のあいだ記録しておきたいデータ
@@ -180,23 +184,25 @@ get_all_values_as_hash_ref()
FML::Cache::Ring
</ulink>
クラスは、主にサイズに上限を設けたいタイプのデータを蓄える場合に用
-います。expire の時間については気にしません。
-サイズで有無を言わさず切ってしまいます。
+います。時間(expire)については気にしません。
+時間ではなくデータのサイズで有無を言わさずデータを廃棄します。
</para>
<para>
-デバッグ等に用いるデータはこれで十分と考えます。
-普段は使わないデバッグのために、サイズを食われるのも嫌ですから。
+デバッグ等に用いるデータであれば、こういった扱いで十分と考えます。
+普段は使わないデバッグのために、
+ハードディスクを使われてしまうのは嫌ですから。
</para>
<para>
-このクラスは、あるディレクトリ(例: db/)の有限の複数のファイル群の中に
-データを蓄えます。
-例えば db/ ディレクトリに 1 〜 100 の名前のファイルがつくられ、
+このクラスは、あるディレクトリ(例: db/)中に作られた有限個のファイル群
+の中にデータを蓄えています。
+たとえば db/ ディレクトリに 1 〜 100 の名前のファイルがつくられ、
順番に使われてきます。
-これらのファイルはぐるぐる回って使われ、上書きされます。
+これらのファイルはぐるぐる回って(1 2 3 4 ...)使われ、
+一周してしまう(100 を超えると)と、元に戻って上書き(1 2 3 4 ...)されます。
</para>