(57)【特許請求の範囲】
【請求項１】
情報をディレクトリ単位で格納する情報格納システムであって、
予め所定数備えられた予備ディレクトリから新たにディレクトリを取得する新規ディレクトリ取得手段と、不要となった使用中の前記ディレクトリを前記予備ディレクトリへと復帰させる予備ディレクトリ復帰手段とを有し、
前記新規ディレクトリ取得手段は、
予め所定数を予備ディレクトリとして格納する格納手段と、
前記格納手段にて格納された前記予備ディレクトリを検索する検索手段と、
前記検索手段にて検索された前記予備ディレクトリを使用する際に、当該予備ディレクトリの名称を変更し、新規ディレクトリとして作成する新規ディレクトリ作成手段と、
前記新規ディレクトリ作成手段にて前記新規ディレクトリを生成する場合に、前記予備ディレクトリの前記名称を当該新規ディレクトリに記録する属性ファイル作成手段とを有し、
前記予備ディレクトリ復帰手段は、
前記予備ディレクトリの名称を生成する予備ディレクトリ名生成手段と、
使用中の前記ディレクトリのうち、不要となったディレクトリの名称を前記予備ディレクトリ名生成手段にて生成された前記名称に変更する予備ディレクトリ作成手段とを有することを特徴とする情報格納システム。
【請求項２】
前記予備ディレクトリ復帰手段は、
前記属性ファイル作成手段にて前記新規ディレクトリに記録された前記名称を取得する予備ディレクトリ名取得手段を有することを特徴とする請求項１記載の情報格納システム。
【請求項３】
不要となった前記予備ディレクトリに存在するファイルを削除するファイル削除手段をさらに有し、
前記予備ディレクトリ作成手段にて不要となった前記ディレクトリの前記名称を変更する場合に、前記予備ディレクトリ名取得手段にて取得した前記名称を用いて前記予備ディレクトリを作成し、前記ファイル削除手段にて当該予備ディレクトリ内の前記ファイルを削除することを特徴とする請求項１または２記載の情報格納システム。
【請求項４】
情報をディレクトリ単位で格納する情報格納方法であって、
予め所定数を予備ディレクトリとして格納する格納工程と、
格納された前記予備ディレクトリを検索する検索工程と、
前記検索工程にて検索された前記予備ディレクトリを使用する際に、当該予備ディレクトリの名称を変更し、新規ディレクトリとして作成する新規ディレクトリ作成工程と、
前記新規ディレクトリ作成工程にて前記新規ディレクトリを生成する場合に、前記予備ディレクトリの前記名称を当該新規ディレクトリに記録する属性ファイル作成工程とを有し、
使用中の前記ディレクトリが不要となった場合に、
前記予備ディレクトリの名称を生成する予備ディレクトリ名生成工程と、
不要となった前記ディレクトリの名称を前記予備ディレクトリ名生成工程にて生成された前記名称に変更する予備ディレクトリ作成工程とを有することを特徴とする情報格納方法。
【請求項５】
前記属性ファイル作成工程にて前記新規ディレクトリに記録された前記名称を取得する予備ディレクトリ名取得工程を有することを特徴とする請求項４記載の情報格納方法。
【請求項６】
不要となった前記予備ディレクトリに存在するファイルを削除するファイル削除工程をさらに有し、
前記予備ディレクトリ作成手段にて不要となった前記ディレクトリの前記名称を変更する場合に、前記予備ディレクトリ名取得工程にて取得した前記名称を用いて前記予備ディレクトリを作成し、前記ファイル削除工程にて当該予備ディレクトリ内の前記ファイルを削除することを特徴とする請求項４または５項記載の情報格納方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メールシステム等として用いられる情報格納システム及び情報格納方法に関する。
【０００２】
【従来の技術】
従来、大量の情報を管理するためにリレーショナルデータベース（以降、ＲＤＢ）を利用すると、情報はＲＤＢに定義された表の書式に従い、論理的な情報は、１つのデータファイルにまとめて、あるいは、複数のデータファイルに分割されて格納される。このように、情報は表という単位でどのデータファイルに格納されるかが決定される。このようなシステムにおいて、情報の追加／更新／削除を行うと、その情報を格納するための表が収められているデータファイルの更新が行われる。論理的な情報の単位とは、例えば、メールシステムにおけるメールボックスとメールボックスに存在するメールの集まり（集合）となる。
【０００３】
例えば、メールシステムにおいて、ＲＤＢでメールボックスとメールを管理するために、データベースにメールボックス表とメール表を定義する。メールボックス表には、メールボックスに存在するメールを示すキーのリストが存在し、このキーによってメールボックスとメールが関連付けられる。
【０００４】
メールを１つ追加する場合を例に示すと、データベースにメールを追加するために、メールボックス表にあるメールを入れるためのメールボックスの情報を変更し、メール表にメールを追加する操作が行われ、メールボックス表とメール表が収まっている１つあるいは複数のデータファイルが更新される。
【０００５】
また、ディレクトリを作成する場合には、通常、システムコールを利用してディレクトリというファイルを新たに作成する。
【０００６】
【発明が解決しようとする課題】
上述するような従来の情報格納システムにおいては、データファイルが更新される場合、ディスクへの書き込みが発生する。ディスクへの書き込みの単位は、通常、レコードとは関係のないＲＤＢの内部的なＩ／Ｏ（入出力）の単位であるブロック毎に行われる。
【０００７】
このディスクへの書き込み中に何らかの障害が発生すると、アクセス中のファイルにＮＵＬＬクリアされた書き込み情報が書き込まれ、データファイル内に矛盾が発生し、データファイルを破壊する可能性があった。データファイル内で破壊されるデータは、操作対象である情報を含むブロック単位であるため、操作対象以外のデータも破壊される可能性があるという問題があった。
【０００８】
上述したメールシステムでは、障害により操作対象であるメールボックスあるいはメール、及び、操作対象のレコードの前後に存在する他のメールボックスやメールが破壊される可能性があるという問題があった。
【０００９】
このように、データファイルが破壊された場合、操作対象以外の情報に被害は広がってしまう。操作対象の情報の前後に格納される情報は、操作対象とは全く関連の無い情報であるため、データファイルが破壊されると被害箇所の特定が難しいという問題があった。
【００１０】
また、データファイルが更新されるときにデータファイルのサイズが変化すると、データファイルのｉノード情報が更新される。このときもディスクへの書き込みは発生しており、この書き込みデータがＮＵＬＬクリアされるとデータファイル自体が壊れ、データファイル内の一部、あるいは、全部の情報を失う可能性があり、この被害範囲は大きく、被害箇所の特定も難しいという問題があった。
【００１１】
また、被害箇所を復旧する場合、データベースを一旦停止しなければならないため、破壊されていない情報に対する操作も破壊された情報を復旧するまで行えないという問題があった。
【００１２】
ディレクトリを作成するシステムコール内では、ディスク上の未利用ｉノードが１つ予約され、ファイルシステムの持つ未利用ｉノードの管理情報が更新された後、予約したｉノードの初期化が行われ、上位ディレクトリに新しいディレクトリの情報が登録される。次に、データブロックが１つ予約され、ファイルシステムの持つ未利用データブロックの管理情報が更新されて、ｉノードに登録され、最後にｉノード内のサイズ情報が変更される。この一連の操作が全て完了してディレクトリが作成される。
【００１３】
また、ディレクトリを作成すると、上位ディレクトリに新しく作成したディレクトリの情報が追加される。このとき、上位ディレクトリのファイル容量を増やす必要が出てくると、システム内部では、データブロックが１つ予約され、ファイルシステムの持つ未利用データブロックの管理情報が更新されて、ｉノードに登録され、最後にｉノード内のサイズ情報が変更される、という処理が行われる。
【００１４】
これらの処理の内のいくつかは非同期にディスクに反映されるため、一連の処理の完了直後、メモリ上の情報とディスク上の情報は一致しない瞬間がある。
【００１５】
ディレクトリを新規に作成する場合、多くのディスクへの書き込みが発生することとなり、何らかの障害時に書き込みデータが破壊されたり、また、メモリとディスクの情報が一時的に一致しない瞬間があるため、途中で処理が中断されるとファイルシステムに不整合が生じ易く、データが失われる可能性が高くなるという問題があった。
【００１６】
本発明の第１の目的は、論理的な単位でまとめた情報をディレクトリ階層の末端ディレクトリに格納する情報格納システムにおいて、末端ディレクトリの作成をディレクトリ名の変更のみで実現する情報格納システム及び情報格納方法を提供することにある。
【００１７】
本発明の第２の目的は、他の情報の変更による影響を受けることのない論理的な単位でまとめた情報をディレクトリ階層の末端ディレクトリに格納する情報格納システムにおいて、末端ディレクトリの作成をディレクトリ名の変更のみで実現する情報格納システム及び情報格納方法を提供することにある。
【００１８】
【課題を解決するための手段】
かかる目的を達成するために、請求項１記載の発明は、情報をディレクトリ単位で格納する情報格納システムであって、予め所定数備えられた予備ディレクトリから新たにディレクトリを取得する新規ディレクトリ取得手段と、不要となった使用中のディレクトリを予備ディレクトリへと復帰させる予備ディレクトリ復帰手段とを有し、新規ディレクトリ取得手段は、予め所定数を予備ディレクトリとして格納する格納手段と、格納手段にて格納された予備ディレクトリを検索する検索手段と、検索手段にて検索された予備ディレクトリを使用する際に、予備ディレクトリの名称を変更し、新規ディレクトリとして作成する新規ディレクトリ作成手段と、新規ディレクトリ作成手段にて新規ディレクトリを生成する場合に、予備ディレクトリの名称を新規ディレクトリに記録する属性ファイル作成手段とを有し、予備ディレクトリ復帰手段は、予備ディレクトリの名称を生成する予備ディレクトリ名生成手段と、使用中のディレクトリのうち、不要となったディレクトリの名称を予備ディレクトリ名生成手段にて生成された名称に変更する予備ディレクトリ作成手段とを有することを特徴とする。
【００１９】
請求項２記載の発明は、請求項１記載の発明において、予備ディレクトリ復帰手段は、属性ファイル作成手段にて新規ディレクトリに記録された名称を取得する予備ディレクトリ名取得手段を有することを特徴とする。
【００２０】
請求項３記載の発明は、請求項１または２記載の発明において、不要となった予備ディレクトリに存在するファイルを削除するファイル削除手段をさらに有し、予備ディレクトリ作成手段にて不要となったディレクトリの名称を変更する場合に、予備ディレクトリ名取得手段にて取得した名称を用いて予備ディレクトリを作成し、ファイル削除手段にて予備ディレクトリ内のファイルを削除することを特徴とする。
【００２１】
請求項４記載の発明は、情報をディレクトリ単位で格納する情報格納方法であって、予め所定数を予備ディレクトリとして格納する格納工程と、格納された予備ディレクトリを検索する検索工程と、検索工程にて検索された予備ディレクトリを使用する際に、予備ディレクトリの名称を変更し、新規ディレクトリとして作成する新規ディレクトリ作成工程と、新規ディレクトリ作成工程にて新規ディレクトリを生成する場合に、予備ディレクトリの名称を新規ディレクトリに記録する属性ファイル作成工程とを有し、使用中のディレクトリが不要となった場合に、予備ディレクトリの名称を生成する予備ディレクトリ名生成工程と、不要となったディレクトリの名称を予備ディレクトリ名生成工程にて生成された名称に変更する予備ディレクトリ作成工程とを有することを特徴とする。
【００２２】
請求項５記載の発明は、請求項４記載の発明において、属性ファイル作成工程にて新規ディレクトリに記録された名称を取得する予備ディレクトリ名取得工程を有することを特徴とする。
【００２３】
請求項６記載の発明は、請求項４または５記載の発明において、不要となった予備ディレクトリに存在するファイルを削除するファイル削除工程をさらに有し、予備ディレクトリ作成手段にて不要となったディレクトリの名称を変更する場合に、予備ディレクトリ名取得工程にて取得した名称を用いて予備ディレクトリを作成し、ファイル削除工程にて予備ディレクトリ内の前記ファイルを削除することを特徴とする。
【００２６】
【発明の実施の形態】
次に、添付図面を参照しながら本発明の実施形態である情報格納システム及び情報格納方法を、メールシステムにおけるメールボックスやメールを格納するシステムを用いて詳細に説明する。図１から図１１に、本発明に係る情報格納システム及び情報格納方法の実施の形態を示す。
【００２７】
〈第１の実施形態〉
図１は、本発明の第１の実施形態である情報格納システムの概略構成を示すブロック図である。図１において、本発明の第１の実施形態である情報格納システムは、予備ディレクトリ検索手段１１と、新規ディレクトリ作成手段１２と、を備える新規ディレクトリ取得手段１と、ディレクトリ環境２と、を有して構成される。
【００２８】
予備ディレクトリ検索手段１１は、基底ディレクトリに存在する予備ディレクトリのうちの１つを取得する機能を備える。
【００２９】
新規ディレクトリ作成手段１２は、与えられた予備ディレクトリを新しいディレクトリの名前に変更する機能を備える。
【００３０】
図２と図３において、基底ディレクトリ３１は、各種ディレクトリを格納するためのディレクトリである。予備ディレクトリ３２〜３ｎは、予め作成されているディレクトリであり、必要数が用意されている。利用ディレクトリ４１は、予備ディレクトリのディレクトリ名を新規ディレクトリ作成手段１２により変更したディレクトリである。
【００３１】
図４は、本発明の第１の実施形態である情報格納システムの動作例を示すフローチャートである。図４において、新しいディレクトリが要求されると、予備ディレクトリ検索手段１１は、基底ディレクトリの予備ディレクトリを検索する（ステップＳ１）。予備ディレクトリ検索手段１１は、基底ディレクトリ３１に予備ディレクトリが１つ以上あれば予備ディレクトリのうちの１つを選択し、当該選択した予備ディレクトリの名前を取得する。もし、基底ディレクトリ３１に予備ディレクトリが１つも存在しなければ（ステップＳ２／ＮＯ）、新規ディレクトリ取得手段１は、処理を終了する。
【００３２】
新規ディレクトリ作成手段１２は、選択された予備ディレクトリの名前を新しいディレクトリ名に変更する（ステップＳ３）。
【００３３】
図５は、本発明の第１の実施形態である情報格納システムの具体例を示す図である。図５に示すように、システム運用前、例えば、基底ディレクトリ"/var/spool/ap＿root" に、予備ディレクトリ "＿dummy51"を予め作成しておく。
【００３４】
次に、新しいディレクトリ"used52"が必要になると、予備ディレクトリ検索手段１１により、基底ディレクトリ"/var/spool/ap＿root" にある予備ディレクトリ" ＿dummy51"を得る（ステップＳ１）。
【００３５】
新規ディレクトリ作成手段１２は、予備ディレクトリ"dummy51" を新しいディレクトリ"used52"に変更する（ステップＳ３）。
【００３６】
〈第２の実施形態〉
図６は、本発明の第２の実施形態である情報格納システムの概略構成を示すブロック図である。図６において、本発明の第２の実施形態である情報格納システムは、予備ディレクトリ復帰手段５を有する点で、本発明の第１の実施形態と異なるものである。
【００３７】
予備ディレクトリ復帰手段５は、予備ディレクトリ名生成手段５１と、予備ディレクトリ作成手段５２と、不要ファイル削除手段５３と、を備える。
【００３８】
予備ディレクトリ名生成手段５１は、予備ディレクトリの命名規則に従ったディレクトリファイルの名前を生成する。
【００３９】
予備ディレクトリ作成手段５２は、不要になったディレクトリを予備ディレクトリのファイル名に変更する。
【００４０】
不要ファイル削除手段５３は、予備ディレクトリに存在する全てのファイルを削除する。
【００４１】
図７は、本発明の第２の実施形態における予備ディレクトリ復帰手段の動作例を示すフローチャートである。新規ディレクトリ取得手段による動作は、上述した本発明の第１の実施形態と同様であるため、説明を省略する。
【００４２】
図１に示した本発明の第１の実施形態では、予備ディレクトリを利用ディレクトリに変更するのみで、不要となった利用ディレクトリを再び予備ディレクトリに復帰する手段は存在しなかった。本発明の第２の実施形態では、予備ディレクトリ復帰手段５により、不要となった利用ディレクトリを再び予備ディレクトリとして利用可能にする。
【００４３】
まず、利用しているディレクトリが不要になると、予備ディレクトリ名生成手段５１により、予備ディレクトリの名前を生成する（ステップＳ１１）。
【００４４】
次に、不要になったディレクトリの名前と取得した予備ディレクトリの名前を予備ディレクトリ作成手段５２へ与え、利用中ディレクトリの名前を変更する（ステップＳ１２）。名前の変更に失敗した場合、予備ディレクトリ復帰手段５は、処理を終了する。
【００４５】
名前の変更が成功したら、不要ファイル削除手段５３により、ステップＳ１２で変更した予備ディレクトリに存在する不要なファイルを削除する（ステップＳ１３）。
【００４６】
本発明の第２の実施形態では、不要となったディレクトリを再び予備ディレクトリに復帰することにより、有限個である予備ディレクトリを有効に利用できる。
【００４７】
図８は、本発明の第２の実施形態である情報格納システムの具体例を示す図である。図８に示すように、例えば、基底ディレクトリ"/var/spool/ap＿root" に、利用されているディレクトリ"used52"が存在しており、ディレクトリ"used52"にはいくつかのファイル"file71"〜"file7n"が存在する。
【００４８】
ディレクトリ"used52"が不要になると、予備ディレクトリ名生成手段５１により、任意の予備ディレクトリの名前" ＿dummy53"を生成する（ステップＳ１１）。
【００４９】
不要となったディレクトリの名前をステップＳ１１で生成した予備ディレクトリの名前に変更し（ステップＳ１２）、作成した予備ディレクトリ" ＿dummy53"に残っている全てのファイル"file71"〜"file7n"を削除する（ステップＳ１３）。
【００５０】
図６に示した本発明の第２の実施形態では、予備ディレクトリ作成手段５２でディレクトリファイルの名前の変更に失敗した場合、予備ディレクトリ復帰手段５は処理を終了しているが、ディレクトリファイルの名前の変更に失敗した場合には予備ディレクトリ名生成手段５１から繰り返し行うようにしてもよい。この場合、繰り返しの回数に上限を設け、無限に繰り返しが行われないようにする。
【００５１】
〈第３の実施形態〉
図９は、本発明の第３の実施形態である情報格納システムの概略構成を示すブロック図である。図９を参照すると、新規ディレクトリ取得手段１は、本発明の第１及び第２の実施形態の新規ディレクトリ取得手段の構成に加え、属性ファイル作成手段１３を有する点、予備ディレクトリ復帰手段５の予備ディレクトリ名生成手段５１が、予備ディレクトリ名取得手段５４である点において異なるものである。
【００５２】
属性ファイル作成手段１３は、元の予備ディレクトリの名前を新規ディレクトリに作成したファイルに記録する。
【００５３】
予備ディレクトリ名取得手段５４は、不要となったディレクトリを予備ディレクトリに戻す時に利用する予備ディレクトリの名前に、属性ファイル作成手段１３で記録された予備ディレクトリの名前を利用する。
【００５４】
図１０は、本発明の第３の実施形態における新規ディレクトリ作成手段の動作例を示すフローチャートである。まず、新しいディレクトリが要求されると、予備ディレクトリ検索手段１１は、基底ディレクトリの予備ディレクトリを検索する（ステップＳ２１）。予備ディレクトリ検索手段１１は、基底ディレクトリ３１に予備ディレクトリが１つ以上あれば予備ディレクトリのうちの１つを選択し、当該選択した予備ディレクトリの名前を取得する。もし、基底ディレクトリ３１に予備ディレクトリが１つも存在しなければ（ステップＳ２２／ＮＯ）、新規ディレクトリ取得手段１は、処理を終了する。
【００５５】
新規ディレクトリ作成手段１２は、選択された予備ディレクトリの名前を新しいディレクトリ名に変更する（ステップＳ２３）。
【００５６】
ステップＳ２３において、選択された予備ディレクトリの名前を新しいディレクトリ名に変更後、属性ファイル作成手段１３で元の予備ディレクトリの名前を新規ディレクトリに作成した属性ファイルに記録する（ステップＳ２４）。
【００５７】
図１１は、本発明の第３の実施形態における予備ディレクトリ復帰手段の動作例を示すフローチャートである。まず、不要となったディレクトリを予備ディレクトリに戻す時、予備ディレクトリ名取得手段５４は、属性ファイルを参照して元の予備ディレクトリの名前を取得する（ステップＳ３１）。
【００５８】
次に、不要になったディレクトリの名前と取得した元の予備ディレクトリの名前を予備ディレクトリ作成手段５２へ与え、利用中ディレクトリの名前を変更する（ステップＳ３２）。名前の変更に失敗した場合、予備ディレクトリ復帰手段５は、処理を終了する。
【００５９】
名前の変更が成功したら、不要ファイル削除手段５３により、ステップＳ３２で変更した予備ディレクトリに存在する不要なファイルを削除する（ステップＳ３３）。
【００６０】
図１２は、本発明の第３の実施形態である情報格納システムの具体例を示す図である。図８に示すように、例えば、基底ディレクトリ"/var/spool/ap＿root" に、予備ディレクトリ" ＿dummy51"を予め作成しておく。
【００６１】
新しいディレクトリ"used52"が必要になると、予備ディレクトリ検索手段１１により、基底ディレクトリ"/var/spool/ap＿root" にある予備ディレクトリ" ＿dummy51"を得る（ステップＳ２１）。
【００６２】
新規ディレクトリ作成手段１２は、予備ディレクトリ" ＿dummy51"を新しいディレクトリ"used52"に変更し（ステップＳ２３）、ディレクトリ"used52"に属性ファイル"attr54"を作成する（ステップＳ２４）。
【００６３】
プログラムはディレクトリ"used52"が不要になると、予備ディレクトリ名取得手段５４により、元の予備ディレクトリの名前" ＿dummy51"を取得する（ステップＳ３１）。
【００６４】
不要となったディレクトリの名前を取得した予備ディレクトリの名前に変更し（ステップＳ３２）、戻した予備ディレクトリ" ＿dummy51"に残っている全てのファイル"attr54"、"file71"〜"file7n"を削除する（ステップＳ３３）。
【００６５】
本発明の第３の実施形態によれば、不要となったディレクトリを再び予備ディレクトリに戻す時に確実にディレクトリに存在しない予備ディレクトリの名前を決定することができる。
【００６６】
なお、上述する実施形態は本発明の好適な実施形態であり、本発明の主旨を逸脱しない範囲内において種々変形して実施することができる。例えば、上述する本発明の第３の実施形態では、新規ディレクトリに属性ファイルを作成したが、利用された予備ディレクトリの情報は、アクセス可能なファイルシステム上の任意の場所、あるいは、メモリ上に格納してよい。
【００６７】
また、上述する各実施形態では、予備ディレクトリと新規ディレクトリの名前の長さは任意であったが、予備ディレクトリと新規ディレクトリの名前の長さを同じとすることにより、基底ディレクトリのファイルサイズが拡張することを防止することができるので、より破壊されにくいプログラムとすることができる。
【００６８】
また、上述する実施形態において、基底ディレクトリは１つであるが、基底ディレクトリの数に制限はなく、図１３に示すように、複数の基底ディレクトリを利用してもよい。さらに、図１４に示すように、基底ディレクトリと予備ディレクトリ、あるいは、利用ディレクトリの間に１つ以上の中間ディレクトリを設ける構成としてもよい。
【００６９】
このように、複数の基底ディレクトリや複数の中間ディレクトリを設けることで、予備ディレクトリを大量に必要とするシステムにける、基底ディレクトリへのアクセス性能の悪化を防止することができる。
【００７０】
【発明の効果】
以上の説明より明らかなように、本発明によれば、情報を論理的な単位でディレクトリを分けて格納することで以下の効果を得ることができる。
【００７１】
第１に、ディスクへの書き込み時に破壊される情報は、アクセスしている末端ディレクトリ自身、あるいは、末端ディレクトリ内の情報となり、被害をディレクトリ内にとどめるため、被害を小さく抑えることができる。
【００７２】
第２に、障害により失った情報は、破壊された末端ディレクトリに存在した情報のみであるため、被害の範囲や箇所を容易に特定することができる。
【００７３】
第３に、論理的な情報の単位で障害復旧の行えるようなバックアップの採り方を行っていれば、復旧作業は被害を受けた箇所に対してのみ復旧作業を行うだけでよく、復旧作業のためにシステム全体を停止する必要がない。従って、被害を受けていない末端ディレクトリの情報は被害を受けた情報に影響されないため、破壊された情報の復旧を待たず、被害を受けていない情報に関する操作を行うことができる。
【００７４】
第４に、ディレクトリ名の変更が上位ディレクトリの変更のみであることに着目し、新しいディレクトリを、予め用意しておいたディレクトリの名前を変更して調達することにより、末端ディレクトリを新規に作成する方法と比較して、ディスクへの書き込み頻度を少なくし、何らかの障害発生時に情報が破壊されにくくすることができる。
【００７５】
第５に、ディレクトリ名の変更時、変更前と変更後の名前の長さを変えないことで、上位ディレクトリのサイズ更新を発生しないようにすることにより、ディスクへの書き込み頻度を少なくし、何らかの障害発生時に情報が破壊されにくくすることができる。
【００７６】
第６に、末端ディレクトリ以外のディレクトリ階層を成すディレクトリの更新は、末端ディレクトリの名前を変更する以外に何も行わないので、一度に多くの情報が破壊されるのを防止することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態である情報格納システムの概略構成を示すブロック図である。
【図２】基底ディレクトリの第１の実施例を示す図である。
【図３】基底ディレクトリの第２の実施例を示す図である。
【図４】新規ディレクトリ作成手段の動作例を示すフローチャートである。
【図５】本発明の第１の実施形態である情報格納システムの具体例を示す図である。
【図６】本発明の第２の実施形態である情報格納システムの概略構成を示すブロック図である。
【図７】予備ディレクトリ復帰手段の動作例を示すフローチャートである。
【図８】本発明の第２の実施形態でる情報格納システムの具体例を示す図である。
【図９】本発明の第３の実施形態である情報格納システムの概略構成を示すブロック図である。
【図１０】本発明の第３の実施形態における新規ディレクトリ作成手段の動作例を示すフローチャートである。
【図１１】本発明の第３の実施形態における予備ディレクトリ復帰手段の動作例を示すフローチャートである。
【図１２】本発明の第３の実施形態である情報格納システムの具体例を示す図である。
【図１３】基底ディレクトリの第３の実施例を示す図である。
【図１４】基底ディレクトリの第４の実施例を示す図である。
【符号の説明】
１  新規ディレクトリ取得手段
２  ディレクトリ環境
５  予備ディレクトリ復帰手段
１１  予備ディレクトリ検索手段
１２  新規ディレクトリ作成手段
１３  属性ファイル作成手段
５１  予備ディレクトリ名生成手段
５２  予備ディレクトリ作成手段
５３  不要ファイル削除手段
５４  予備ディレクトリ取得手段
【図１】
0003890212.tif 000002
【図２】
0003890212.tif 000003
【図３】
0003890212.tif 000004
【図４】
0003890212.tif 000005
【図５】
0003890212.tif 000006
【図６】
0003890212.tif 000007
【図７】
0003890212.tif 000008
【図８】
0003890212.tif 000009
【図９】
0003890212.tif 000010
【図１０】
0003890212.tif 000011
【図１１】
0003890212.tif 000012
【図１２】
0003890212.tif 000013
【図１３】
0003890212.tif 000014
【図１４】
0003890212.tif 000015