(57)【要約】      （修正有）【課題】データの更新や削除処理は殆ど発生しないような条件下において、高速かつ膨大なトランザクション処理能力とデータ保全性を実現する。【解決手段】複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納し、第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納する。第１の論理ディスクに格納するデータに対応するインデックス情報のエントリを格納する第２の論理ディスクを識別するための識別情報と識別情報に対応する論理ディスク内におけるエントリの格納位置を示す格納位置情報を含むキー情報を、エントリを検索するためのデータベースキーとして設定する。各論理ディスクが第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する。データベースキーおよび展開されたヘッダ情報に基づいて、第１の論理ディスクに格納されるデータに関する所定の処理を行う。【選択図】図１
2007094938.tif 000002
【特許請求の範囲】
【請求項１】
物理ディスクに格納されるデータのデータベースによる管理をコンピュータに実行させるデータ管理プログラムであって、
論理的に複数の領域に分割された物理ディスクにおける各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる管理ステップと、
前記第１の論理ディスクに格納されるデータに対応する前記インデックス情報のエントリを格納する前記第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する設定ステップと、
前記複数の論理ディスクにおける各論理ディスクが、前記第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する展開ステップと、
前記設定ステップにて設定されたデータベースキーおよび前記展開ステップにて展開された前記ヘッダ情報に基づいて、前記第１の論理ディスクに格納されるデータに関する所定の処理を行う処理ステップと
をコンピュータに実行させることを特徴とするデータ管理プログラム。
【請求項２】
請求項１に記載のデータ管理プログラムにおいて、
前記第２の論理ディスク内の正位置に対してエントリを書き込む前に、該エントリの複製データを該第２の論理ディスク内における所定の専用領域に書き込む書込みステップと、
前記正位置に書き込まれたエントリと前記書込みステップにて前記所定の専用領域に書き込まれた前記複製データの内容を検査する検査ステップと、
前記検査ステップにて前記正位置に書き込まれたエントリにエントリ破壊が生じていることが検出された場合に、前記複製データに基づいて前記正位置に書き込まれたエントリを復元する復元ステップと
を有することを特徴とするデータ管理プログラム。
【請求項３】
請求項１または請求項２に記載のデータ管理プログラムにおいて、
前記管理ステップは、前記第１の論理ディスクまたは第２の論理ディスクに対して格納すべきデータの容量が、該データを格納しようとする論理ディスクの空き容量を超えている場合に、前記複数の論理ディスクの内の前記第１および第２の論理ディスク以外の論理ディスクを該データの格納に割り当てることを特徴とするデータ管理プログラム。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載のデータ管理プログラムにおいて、
前記所定の処理は、データ登録処理およびデータ参照処理のうち少なくとも一方を含むことを特徴とするデータ管理プログラム。
【請求項５】
請求項１乃至請求項４のいずれか１項に記載のデータ管理プログラムにおいて、
前記メモリ領域は、共有メモリ領域であることを特徴とするデータ管理プログラム。
【請求項６】
物理ディスクに格納されるデータのデータベースによる管理を行うデータ管理方法であって、
論理的に複数の領域に分割された物理ディスクにおける各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる管理ステップと、
前記第１の論理ディスクに格納されるデータに対応する前記インデックス情報のエントリを格納する前記第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する設定ステップと、
前記複数の論理ディスクにおける各論理ディスクが、前記第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する展開ステップと、
前記設定ステップにて設定されたデータベースキーおよび前記展開ステップにて展開された前記ヘッダ情報に基づいて、前記第１の論理ディスクに格納されるデータに関する所定の処理を行う処理ステップと
を有することを特徴とするデータ管理方法。
【請求項７】
請求項６に記載のデータ管理方法において、
前記第２の論理ディスク内の正位置に対してエントリを書き込む前に、該エントリの複製データを該第２の論理ディスク内における所定の専用領域に書き込む書込みステップと、
前記正位置に書き込まれたエントリと前記書込みステップにて前記所定の専用領域に書き込まれた前記複製データの内容を検査する検査ステップと、
前記検査ステップにて前記正位置に書き込まれたエントリにエントリ破壊が生じていることが検出された場合に、前記複製データに基づいて前記正位置に書き込まれたエントリを復元する復元ステップと
を有することを特徴とするデータ管理方法。
【請求項８】
請求項６または請求項７に記載のデータ管理方法において、
前記管理ステップは、前記第１の論理ディスクまたは第２の論理ディスクに対して格納すべきデータの容量が、該データを格納しようとする論理ディスクの空き容量を超えている場合に、前記複数の論理ディスクの内の前記第１および第２の論理ディスク以外の論理ディスクを該データの格納に割り当てることを特徴とするデータ管理方法。
【請求項９】
請求項６乃至請求項８のいずれか１項に記載のデータ管理方法において、
前記所定の処理は、データ登録処理およびデータ参照処理のうち少なくとも一方を含むことを特徴とするデータ管理方法。
【請求項１０】
請求項６乃至請求項９のいずれか１項に記載のデータ管理方法において、
前記メモリ領域は、共有メモリ領域であることを特徴とするデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの登録、参照トランザクションが多量、かつ頻繁に発生するような業務アプリケーション、例えば文書管理システム、メール等メッセージハンドリングシステムのデータ格納処理に関し、高性能なデータの登録・参照及びデータの保全性を確保する技術に関するものである。
【背景技術】
【０００２】
一般的に、データの登録、参照トランザクションが多量、かつ頻繁に発生するような業務アプリケーションのデータ格納システムには、トランザクションの原始性を保証するために市販のＲＤＢ（relational database）システムを導入するケースが多い。
【０００３】
これら専用製品は機能が豊富であり、データベースとしてのデータの一貫性および保全性は確保される。また、面倒なデータ格納処理に関して、業務アプリケーションから隠蔽出来るという利点もある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、これらＲＤＢ製品は、非常に高速なレスポンスや膨大なトランザクション要件があるシステム構築においては、性能要件を満たすことが難しい場合がある。
【０００５】
また、製品の使用には、別途ライセンスフィーがかかることもあり、データ格納システムとして必要なインタフェース仕様は簡易なもので事足りるが、高い処理性能が求められるようなケースにおいては、ＲＤＢ製品の利用は必ずしも最適な解ではない場合もある。
【０００６】
本発明は上述した問題点を解決するためになされたものであり、データの更新や削除処理は殆ど発生しないような条件下において、高速かつ膨大なトランザクション処理能力とデータ保全性を実現することのできるデータ管理プログラムおよびデータ管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するため、本発明に係るデータ管理プログラムは、物理ディスクに格納されるデータのデータベースによる管理をコンピュータに実行させるデータ管理プログラムであって、論理的に複数の領域に分割された物理ディスクにおける各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる管理ステップと、前記第１の論理ディスクに格納されるデータに対応する前記インデックス情報のエントリを格納する前記第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する設定ステップと、前記複数の論理ディスクにおける各論理ディスクが、前記第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する展開ステップと、前記設定ステップにて設定されたデータベースキーおよび前記展開ステップにて展開された前記ヘッダ情報に基づいて、前記第１の論理ディスクに格納されるデータに関する所定の処理を行う処理ステップとをコンピュータに実行させることを特徴とするものである。
【０００８】
また、本発明に係るデータ管理方法は、  物理ディスクに格納されるデータのデータベースによる管理を行うデータ管理方法であって、論理的に複数の領域に分割された物理ディスクにおける各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる管理ステップと、前記第１の論理ディスクに格納されるデータに対応する前記インデックス情報のエントリを格納する前記第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する設定ステップと、前記複数の論理ディスクにおける各論理ディスクが、前記第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する展開ステップと、前記設定ステップにて設定されたデータベースキーおよび前記展開ステップにて展開された前記ヘッダ情報に基づいて、前記第１の論理ディスクに格納されるデータに関する所定の処理を行う処理ステップとを有することを特徴とするものである。
【発明の効果】
【０００９】
以上に詳述したように本発明によれば、データの更新や削除処理は殆ど発生しないような条件下において、高速かつ膨大なトランザクション処理能力とデータ保全性を実現することのできるデータ管理プログラムおよびデータ管理方法を提供することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について図面を参照しつつ説明する。
図１は、本実施の形態によるデータ管理装置について説明するための機能ブロック図である。本実施の形態によるデータ管理装置１は、ＨＤＤ等から構成されるデータ格納領域である物理ディスク２と電気通信回線（インターネット、ＬＡＮおよびＷＡＮ等）を介して通信可能に接続されており、物理ディスク２に格納されるデータに関する所定の処理を行うようになっている。
【００１１】
具体的に、本実施の形態によるデータ管理装置１は、管理部１０１、設定部１０２、展開部１０３、処理部１０４、書込み部１０５、検査部１０６、復元部１０７、ＣＰＵ１０８およびＭＥＭＯＲＹ１０９を備えてなる構成となっている。
【００１２】
管理部１０１は、論理的に複数の領域に分割された物理ディスク２における各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる役割を有している（後述の図２参照）。
【００１３】
また管理部１０１は、第１の論理ディスク（データ領域用論理ディスク）または第２の論理ディスク（インデックス用論理ディスク）に対して格納すべきデータの容量が、該データを格納しようとする論理ディスクの空き容量を超えている場合に、複数の論理ディスクの内の第１および第２の論理ディスク以外の論理ディスクを該データの格納に割り当てる役割を有している。
【００１４】
設定部１０２は、第１の論理ディスクに格納されるデータに対応するインデックス情報のエントリを格納する第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する役割を有している。
【００１５】
展開部１０３は、複数の論理ディスクにおける各論理ディスクが、第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域（共有メモリ領域）上に展開する役割を有している。
【００１６】
処理部１０４は、設定部にて設定されたデータベースキーおよび展開部１０３にて展開されたヘッダ情報に基づいて、第１の論理ディスクに格納されるデータに関するデータ登録処理およびデータ参照処理（所定の処理）を行う役割を有している。
【００１７】
書込み部１０５は、第２の論理ディスク内の正位置に対してエントリを書き込む前に、該エントリの複製データを該第２の論理ディスク内における所定の専用領域に書き込む役割を有している。
【００１８】
検査部１０６は、正位置（論理ディスク内におけるエントリを書き込むべき正規の書込み位置）に書き込まれたエントリと書込み部１０５にて所定の専用領域に書き込まれた複製データの内容を検査する役割を有している。
【００１９】
復元部１０７は、検査部１０６にて正位置に書き込まれたエントリにエントリ破壊が生じていることが検出された場合に、複製データに基づいて正位置に書き込まれたエントリを復元する役割を有している。
【００２０】
ＣＰＵ１０８は、データ管理装置１における各種処理を行う役割を有しており、またＭＥＭＯＲＹ１０９に格納されているプログラムを実行することにより種々の機能を実現する役割も有している。ＭＥＭＯＲＹ１０９は、例えばＲＯＭやＲＡＭ等から構成されており、データ管理装置１において利用される種々の情報やプログラムを格納する役割を有している。
【００２１】
本実施の形態によるデータ管理装置１は、上述のような構成により、物理ディスク２に格納されるデータのデータベースによる管理を行う。図２および図３はデータベースのディスク構成について説明するための図であり、図４はディスクの管理方法について説明するための図の前半であり、図５はディスクの管理方法について説明するための図４に続く後半である。
【００２２】
上述のように、物理ディスク２は、管理部１０１により、論理的に分割した複数の領域（以降、論理ディスクと呼ぶ）として管理されている。管理部１０１は、各論理ディスクを用途により「インデックス用」、「データ領域用」に分けて管理している。この複数の論理ディスクの内、「インデックス用」または「データ領域用」に使用されていない論理ディスクは、管理部１０１にて「空き論理ディスク」として管理される（空き論理ディスクの取り扱いについては後述）。
【００２３】
展開部１０３は、論理ディスクのヘッダ情報を共有メモリ２０１上に展開し（図４参照）、用途別にリストを作成することでグループ管理する。ここで、論理ディスクのヘッダ情報には、現在の使用用途や論理ディスクの使用状態を示す情報が含まれている。
【００２４】
本実施の形態によるデータ管理装置１において、物理ディスク２に格納されるデータ管理を行うデータベースは、一定期間のデータを保存する機能を有している。ここでは、説明の便宜上、その単位を「日」単位としている。論理ディスクはこの単位（日単位）で管理され、データベースはこの管理単位をローテーションすることで常に一定期間分のデータを物理ディスク２に保存するようになっている。
【００２５】
データベースのインデックス検索には、データベースキー（キー情報）と格納時間を使用する。ここで、データベースキーはインデックス情報のエントリ格納位置を示す情報であり、エントリを格納しているインデックス用の論理ディスク（第２の論理ディスクに相当）番号と論理ディスク中のエントリの格納位置を示す。格納時間は新規のデータを登録した時刻で、日単位にローテーションする管理単位の識別に使用する。データベースキーと格納時間は新規データ登録時にデータベースから払い出す。
【００２６】
第２の論理ディスクに格納されるインデックス情報の各エントリは、複数のデータを管理することができる。なお、当該エントリ内のデータは、データ管理番号によって識別される。
【００２７】
図６は、本実施の形態によるデータ管理方法における新規データ登録処理について説明するための概念図である。
（１）は、処理部１０４によるデータベースへの新規データの登録要求である。新規データ登録要求は完了後に登録したデータのインデックスを検索するためのデータベースキーと格納時間を払い出す。（２）は、システムの現在時刻を取得し、ローテート日数で分かれる管理情報から当日の管理情報を選択する処理を示している。
【００２８】
（３）は、インデックス用論理ディスク（第２の論理ディスク）のリストから最新の論理ディスクを処理部１０４によって検索する処理を示している。（３）’は、（３）の処理で検索した論理ディスクの残容量がインデックスを格納するのに満たない場合の動作である。この場合は、空き論理ディスクリストから論理ディスクを取り出しインデックス用論理ディスクリストに追加する。
【００２９】
（４）は、データ用論理ディスク（第１の論理ディスク）リストから最新の論理ディスクを検索する処理を示している。（４）’は、（４）で検索した論理ディスクの残容量がデータを格納するのに満たない場合の動作である。この場合、管理部１０１は空き論理ディスクリストから論理ディスクを取り出しデータ用論理ディスクリストに追加する。
【００３０】
（５）は、論理ディスクの書き込み位置を１エントリ分加算することでエントリの書き込み領域を確保する処理を示している。（６）は、論理ディスクの書き込み位置をデータサイズ分加算し、データ書き込み領域を確保した後、論理ディスクにデータを書き込む処理を示している。ここでは、データをログのように追記方式でシーケンシャルにディスクに書き込むためＩ／Ｏ効率が良い。
【００３１】
（７）は、書き込んだデータのメタ情報（データを格納している論理ディスクの情報、論理ディスク内の格納位置、データサイズなど）を反映してエントリをインデックス用論理ディスクに書き込む処理を示している。
【００３２】
図７は、本実施の形態によるデータ管理方法における追加データ登録処理について説明するための概念図である。
（１）は、処理部１０４によるデータベースへの追加データの登録要求である。追加データ登録要求は新規データ登録要求が払い出したデータベースキーと格納時間の指定により、同一エントリ上に関連するデータを登録する処理を示している。
【００３３】
（２）は、システムの現在時刻を取得し、ローテート日数で分かれる管理情報から当日の管理情報を選択する処理を示している。（３）は、インデックス用論理ディスクリストの最新からデータベースキーの論理ディスク番号の論理ディスクを検索する処理を示している。
【００３４】
（４）は、データ領域用論理ディスクリストから最新の論理ディスクを検索する処理を示している。（４）’は、（４）で検索した論理ディスクの残容量がデータを格納するのに満たない場合の動作である。この場合は管理部１０１は、空き論理ディスクリストから論理ディスクを取り出し、データ領域用論理ディスクリストに追加する。
【００３５】
（５）は、インデックス用論理ディスクから元エントリを読み取る処理を示している。（６）は、論理ディスクヘッダのデータ書き込み位置にデータサイズ分加算し、データを書き込む領域を確保した後、当該論理ディスクにデータを書き込む処理を示している。ここでは、データをログのように追記方式でシーケンシャルにディスクに書き込むためＩ／Ｏ効率が良い。
【００３６】
（７）は、論理ディスクに書き込んだデータのメタ情報（データを格納している論理ディスクの情報、論理ディスク内の格納位置、データサイズなど）を（５）で読み取ったエントリに反映させてインデックス用論理ディスクに書き戻す処理を示している。
【００３７】
図８は、本実施の形態によるデータ管理方法におけるデータ検索処理について説明するための概念図である。
【００３８】
（１）は、処理部１０４によるデータベースへのデータ検索の要求である。データ検索に必要な情報は、新規データ登録要求が払い出したデータベースキー、格納時間とデータ管理番号である。
（２）は、格納時間からローテート日数で分かれる管理情報から当日の管理情報を選択する処理を示している。
【００３９】
（３）は、インデックス用論理ディスクリストから最新からデータベースキーの論理ディスク番号の論理ディスクを検索する処理を示している。（４）は、データベースキーのインデックス番号から論理ディスク（第２の論理ディスク）内のインデックス格納位置を決定する処理を示している。
【００４０】
（５）は、インデックス情報を対象となる論理ディスクから読み取り、指定したデータ管理番号のデータのメタ情報を取得する処理を示している。（６）は、インデックスと同じ日のデータ領域用論理ディスクリストからデータを格納している論理ディスクを検索する処理を示している。
【００４１】
（７）は、メタ情報のデータ格納位置とデータサイズからディスクのデータを読み取る処理を示している。データは、登録時にシーケンシャルに書き込まれているため、読み取りもシーケンシャルとなりＩ／Ｏ効率が良い。
【００４２】
図９は、本実施の形態によるデータ管理方法におけるデータ削除処理について説明するための概念図である。同図では、削除対象日を選択する処理を示している。データベースのデータ削除は、処理部１０４により行われ、「日」単位で処理する。削除対象日の管理下にあるすべてのインデックス用とデータ領域用の論理ディスクを空き論理ディスクリストに繋ぎ替えることで一括で削除を行う。
【００４３】
このように、管理単位および削除単位が「日」で統一されているため、削除時に個々のデータの検索、削除判定および削除の処理が不要であり、この削除処理は非常に高速に動作する。
【００４４】
削除処理は、リスト繋ぎ替えのため論理ディスクのヘッダ情報を更新する処理のみで完了する。よって、処理時間は削除対象のデータ量ではなく、削除対象の論理ディスク数に比例する。
【００４５】
図１０は、本実施の形態におけるデータ保全の処理イメージを示す図である。
（１）と（２）は、書込み部１０５がデータベースにおけるインデックス用論理ディスクにエントリを書き込む場合の通常時の処理を示している。書込み部１０５は、まずエントリの複製を作成し、その後、論理ディスク内における正位置にエントリを書き込む二度書きを行う。
【００４６】
（３）と（４）は、エントリの複製の書き込みは完了し、突発的な障害により正位置のエントリが途中までしか書き込めていない例（エントリ破損が発生した場合）を示している。
【００４７】
（５）、（６）および（７）は、上述の障害発生後にデータベースを再起動した場合（物理ディスク２を有するコンピュータを再起動させた場合）の処理を示している。同図に示すように、正位置のエントリは途中までしか書き込まれていないため、データのメタ情報などが欠落している可能性がある。このため本実施の形態では復元部１０７により、エントリの複製を論理ディスク内における正位置に書き込むことで、エントリの情報を正常な状態に復元する構成となっている。データベースのエントリは、自身を検索するためのデータベースキーと格納時間を保有しているため、エントリの複製データから正しい格納位置を取得することができる。
【００４８】
また、障害のタイミングによっては、エントリの複製データが破損することもある。この場合は、当該複製データを破棄することでデータベースを障害発生の直前の状態に戻すことができる。
【００４９】
なお、図１０では、インデックスのエントリ書き込みを例としているが、これに限られるものではなく、論理ディスクのヘッダ部についても同様に二度書きを行うようにすることが望ましい。
【００５０】
また、エントリが管理するデータは、二度書きが不要である。書込み部１０５は、常にデータ書き込み完了後にエントリを書き込む。このため、書込み部１０５によるデータの書き込み途中で障害が発生しても、エントリには、データのメタ情報が残らないため、データに対してアクセスできない。
【００５１】
図１１は、本実施の形態によるデータ管理方法における大まかな処理の流れについて説明するためのフローチャートである。
【００５２】
まず、管理部１０１は、論理的に複数の領域に分割された物理ディスクにおける各領域を論理ディスクとして管理するとともに、該複数の論理ディスクの内の第１の論理ディスクに管理対象となるデータを格納させ、該複数の論理ディスクの内の第２の論理ディスクに該データのインデックス検索を行うためのインデックス情報を格納させる（管理ステップ）（Ｓ１０１）。また、管理ステップは、第１の論理ディスクまたは第２の論理ディスクに対して格納すべきデータの容量が、該データを格納しようとする論理ディスクの空き容量を超えている場合に、複数の論理ディスクの内の第１および第２の論理ディスク以外の論理ディスクを該データの格納に割り当てる。
【００５３】
設定部１０２は、第１の論理ディスクに格納されるデータに対応するインデックス情報のエントリを格納する第２の論理ディスクを識別するための識別情報と該識別情報に対応する論理ディスク内における該エントリの格納位置を示す格納位置情報を含むキー情報を、該エントリを検索するためのデータベースキーとして設定する（設定ステップ）（Ｓ１０２）。
【００５４】
展開部１０３は、複数の論理ディスクにおける各論理ディスクが、第１および第２の論理ディスクの内のいずれであるかを示すヘッダ情報をメモリ領域上に展開する（展開ステップ）（Ｓ１０３）。
【００５５】
処理部１０４は、設定ステップにて設定されたデータベースキーおよび展開ステップにて展開されたヘッダ情報に基づいて、第１の論理ディスクに格納されるデータに関する所定の処理を行う（処理ステップ）（Ｓ１０４）。ここで、所定の処理とは、データ参照処理、データ登録処理およびデータ削除処理のうち少なくとも１つを含む。
【００５６】
書込み部１０５は、第２の論理ディスク内の正位置に対してエントリを書き込む前に、該エントリの複製データを該第２の論理ディスク内における所定の専用領域に書き込む（書込みステップ）（Ｓ１０５）。
【００５７】
検査部１０６は、正位置に書き込まれたエントリと書込みステップにて所定の専用領域に書き込まれた複製データの内容を検査する（検査ステップ）（Ｓ１０６）。なお、当該検査ステップによる検査は、例えば物理ディスクを備えるコンピュータの起動時等のタイミングで行うようにすることが好ましい。
【００５８】
復元部１０７は、検査ステップにて正位置に書き込まれたエントリにエントリ破壊が生じていることが検出された場合に、複製データに基づいて正位置に書き込まれたエントリを復元する（復元ステップ）（Ｓ１０７）。このようにすることにより、インデックス用の論理ディスクにエントリを書き込む際に、突発的な障害によりエントリが正常に書き込めない事態の発生を考慮し、データ保全を保証することができる。
【００５９】
上述のデータ管理方法での処理における各ステップは、ＭＥＭＯＲＹ１０９に格納されているデータ管理プログラムをＣＰＵ１０８に実行させることにより実現されるものである。
【００６０】
なお、本実施の形態では装置内部に発明を実施する機能が予め記録されている場合で説明をしたが、これに限らず同様の機能をネットワークから装置にダウンロードしても良いし、同様の機能を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、ＣＤ−ＲＯＭ等プログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能は装置内部のＯＳ（オペレーティング・システム）等と共働してその機能を実現させるものであってもよい。
【００６１】
一定期間で破棄する文書データ管理や、メール等メッセージハンドリングシステムの期限付き添付データの管理といった用途では、性能、データ保全性が重視される。このような限定された条件下では、一般的なデータベースが持つ複雑な機能などは有用性があまり無く、本実施の形態によるデータ管理方法でも充分効率的に作用し、従来のＲＤＢ製品の導入がシステム構築における最適解とならないようなケースにおいて、その代替の手段として有効な場合がある。また、本実施の形態によれば、データベースにおける管理対象であるデータの高速な登録処理および参照処理が可能となる。
【００６２】
本発明を特定の態様により詳細に説明したが、本発明の精神および範囲を逸脱しないかぎり、様々な変更および改質がなされ得ることは、当業者には自明であろう。
【図面の簡単な説明】
【００６３】
【図１】本実施の形態によるデータ管理装置について説明するための機能ブロック図である。
【図２】データベースのディスク構成について説明するための図である。
【図３】データベースのディスク構成について説明するための図である。
【図４】ディスクの管理方法について説明するための図である。
【図５】ディスクの管理方法について説明するための図である。
【図６】本実施の形態によるデータ管理方法における新規データ登録処理について説明するための概念図である。
【図７】本実施の形態によるデータ管理方法における追加データ登録処理について説明するための概念図である。
【図８】本実施の形態によるデータ管理方法におけるデータ検索処理について説明するための概念図である。
【図９】本実施の形態によるデータ管理方法におけるデータ削除処理について説明するための概念図である。
【図１０】本実施の形態におけるデータ保全の処理イメージを示す図である。
【図１１】本実施の形態によるデータ管理方法における処理の流れについて説明するためのフローチャートである。
【符号の説明】
【００６４】
１０１  管理部、１０２  設定部、１０３  展開部、１０４  処理部、１０５  書込み部、１０６  検査部、１０７  復元部、１０８  ＣＰＵ、１０９  ＭＥＭＯＲＹ。
【図１】
2007094938.tif 000003
【図２】
2007094938.tif 000004
【図３】
2007094938.tif 000005
【図４】
2007094938.tif 000006
【図５】
2007094938.tif 000007
【図６】
2007094938.tif 000008
【図７】
2007094938.tif 000009
【図８】
2007094938.tif 000010
【図９】
2007094938.tif 000011
【図１０】
2007094938.tif 000012
【図１１】
2007094938.tif 000013