(57)【要約】  取得部（６０１）は、発注データベースに形成された正区画ごとに、未完了トランザクション数を取得する。決定部（６０２）は、取得された未完了トランザクション数に基づいて、区画整理対象とする正区画を決定する。判断部（６０３）は、区画整理対象として決定された正区画に格納されているトランザクションごとに、未完了トランザクションか否かを判断する。格納部（６０４）は、未完了トランザクションであると判断されたトランザクションを予備区画に格納し、未完了トランザクションではないと判断されたトランザクションを別の記録媒体へ格納する。区画変更部（６０５）は、予備区画を正区画に変更し、区画整理対象として決定された正区画の両方を初期化して、このうちの一方を予備の区画に変更する。更新部（６０６）は、更新データを取得し、取得した前記更新データを用いて、予備の区画に格納された未完了トランザクションを更新する。
2008120359.tif 000002
【特許請求の範囲】
【請求項１】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータに、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得させる取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定させる決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断させる判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納させる格納工程と、
を実行させることを特徴とするデータベース管理プログラム。
【請求項２】
前記格納工程によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更させる区画変更工程を、さらに前記コンピュータに実行させることを特徴とする請求項１に記載のデータベース管理プログラム。
【請求項３】
前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新工程を、さらに前記コンピュータに実行させることを特徴とする請求項１に記載のデータベース管理プログラム。
【請求項４】
前記更新工程は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする請求項３に記載のデータベース管理プログラム。
【請求項５】
請求項１〜４のいずれか一つに記載のデータベース管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータが、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納工程と、
を実行することを特徴とするデータベース管理方法。
【請求項７】
前記格納工程によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更する区画変更工程を、さらに前記コンピュータが実行することを特徴とする請求項６に記載のデータベース管理方法。
【請求項８】
前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新工程を、さらに前記コンピュータに実行させることを特徴とする請求項６に記載のデータベース管理方法。
【請求項９】
前記更新工程は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする請求項８に記載のデータベース管理方法。
【請求項１０】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なデータベース管理装置であって、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得手段と、
前記取得手段によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定手段と、
前記決定手段によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断手段と、
前記判断手段によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断手段によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納手段と、
を備えたことを特徴とするデータベース管理装置。
【請求項１１】
前記格納手段によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更する区画変更手段を、さらに備えたことを特徴とする請求項１０に記載のデータベース管理装置。
【請求項１２】
前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新手段を、さらに備えたことを特徴とする請求項１０に記載のデータベース管理装置。
【請求項１３】
前記更新手段は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする請求項１２に記載のデータベース管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、トランザクションが蓄積されたデータベースを管理するデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置に関する。
【背景技術】
【０００２】
従来から、随時発生するトランザクションが蓄積されるデータベースでは、その容量に限界があるため、定期的に、所定の処理が完了したトランザクション（完了トランザクション）を磁気テープなどの記録媒体に退避させることによって、空き容量を確保する必要があった。【０００３】
しかしながら、単に完了トランザクションだけを退避させた場合、データベース上の空き領域が虫食い状態となる。そして、データベースがこのような状態のときに、データベースへの書き込み処理をおこなった場合、処理効率が低下するといった問題が生じていた。【０００４】
そこで、データベースをブロック単位で管理し、連続するブロック内の空き領域を集約することによって、ブロック単位で空き領域を再利用することが可能な技術が考案されている。このような技術を利用することにより、データベースの書き込み処理をおこなう際の、処理効率の向上を図ることができるものとされている（たとえば、下記特許文献１参照。）。【０００５】
【特許文献１】特開平８−２６３３３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載の従来技術にあっては、空領域を集約することにより、結果的に実データも集約されることになるが、たとえば、実データの中に以降のオンライン処理がおこなわれる可能性が低いデータ（すなわち、不要なデータ）が多数含まれている場合であっても、区別なく集約されてしまうため、空領域を効率的に増やすことができないといった問題が生じていた。また、データベースの整合性を保障するためには、空き領域を集約する際に、オンライン処理を停止する必要があり、２４時間稼動が所望されるＷＥＢショッピングなどのオンラインシステムには適用することができないといった問題が生じていた。【０００７】
この発明は、上述した従来技術による問題点を解消するため、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、この発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、データベースに形成された正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得し、取得された未完了トランザクションの数に基づいて、複数の正区画の中から、区画整理対象とする正区画を決定し、区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが未完了トランザクションか否かを判断し、未完了トランザクションであると判断されたトランザクションをデータベースに形成された予備の区画に格納し、未完了トランザクションではないと判断されたトランザクションをデータベースとは別の記録媒体へ格納することとした。【０００９】
この発明によれば、区画整理対象と決定された正区画上のトランザクションのうち、完了トランザクションをデータベースとは別の記録媒体に集約したうえで、未完了トランザクションのみを予備区画上に集約することができるため、結果的に、区画整理対象と決定された正区画の全領域を空き領域とすることができる。【００１０】
また、上記に記載の発明において、未完了トランザクションが格納された予備の区画を正区画に変更し、区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更することとしてもよい。【００１１】
この発明によれば、未完了トランザクションが格納された予備の区画を、オンラインプログラムによるアクセスが可能な正区画として再利用することができる。また、改めて予備の区画を設けることができるため、繰り返し、当該データベース管理処理をおこなうことができる。【００１２】
また、上記に記載の発明において、未完了トランザクションが予備の区画に格納されている間に当該未完了トランザクションを更新することとしてもよい。【００１３】
この発明によれば、当該データベース管理処理と平行して、オンラインプログラムを稼動させることができ、このオンラインプログラムが、予備の区画に格納される前のトランザクションを更新した場合であっても、予備の区画に格納された後の未完了トランザクションを更新することができる。【００１４】
また、上記に記載の発明において、予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の正区画に格納されたすべてのトランザクションの更新を禁止することとしてもよい。【００１５】
この発明によれば、予備の区画に格納される前の未完了トランザクションだけが更新され、予備の区画に格納された後の未完了トランザクションが更新されないといった事態の発生を回避することができる。
【発明の効果】
【００１６】
本発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置によれば、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができるという効果を奏する。
【図面の簡単な説明】
【００１７】
【図１】図１は、この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成を示す説明図である。
【図２】図２は、発注データベースの構成を示す説明図である。
【図３】図３は、発注データベースに形成された各区画のデータ構成を示す説明図である。
【図４】図４は、発注データベースに格納されたトランザクションのデータ構成を示す説明図である。
【図５】図５は、この発明の実施の形態にかかるサーバのハードウェア構成を示す説明図である。
【図６】図６は、この発明の実施の形態にかかるサーバの機能的構成を示すブロック図である。
【図７】図７は、この発明の実施の形態にかかるサーバによるデータベース管理処理の手順を示すフローチャートである。
【図８】図８は、トランザクションが蓄積された発注データベースの一例を示す説明図である。
【図９】図９は、トランザクションがＭＴへ格納された後の発注データベースの一例を示す説明図である。
【図１０】図１０は、区画が変更された後の発注データベースの一例を示す説明図である。
【図１１】図１１は、オンラインプログラムによるトランザクション更新処理の手順を示すフローチャートである。
【符号の説明】
【００１８】
１００  ＷＥＢショッピングシステム
１１０  サーバ
１１１  発注データベース
１２０  端末装置
１３０  ネットワーク
６０１  取得部
６０２  決定部
６０３  判断部
６０４  格納部
６０５  区画変更部
６０６  更新部
９００  ＭＴ（磁気テープ）
【発明を実施するための最良の形態】
【００１９】
（実施の形態）
以下に添付図面を参照して、この発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置の好適な実施の形態の一例として、ＷＥＢショッピングシステムへの適用例を詳細に説明する。【００２０】
（ＷＥＢショッピングシステムのシステム構成）
まず、この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成について説明する。図１は、この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成を示す説明図である。【００２１】
図１に示す、ＷＥＢショッピングシステム１００は、顧客がインターネット上でショッピングをおこなうことができるシステムである。このＷＥＢショッピングシステム１００は、サーバ１１０と、各顧客が利用する端末装置１２０と、によって構成されており、各端末装置１２０は、ネットワーク１３０によってサーバ１１０と通信可能に接続されている。【００２２】
サーバ１１０は、オンラインプログラムを備える情報処理装置である。たとえば、オンラインプログラムは、各端末装置１２０に対してショッピング情報を提供する、各端末装置１２０からの発注情報を受信する、受信した発注情報（トランザクション）を発注データベース１１１に蓄積するなどの処理をおこなう。また、オンラインプログラムは、更新プログラムとしても機能し、一連の取引処理の処理結果に応じて、発注データベース１１１に蓄積されたトランザクションを更新する。また、サーバ１１０は、データベース管理装置としても機能し、発注データベース１１１に対するデータベース管理処理をおこなう。ここで、上記発注データベース１１１は、サーバ１１０に備えられていてもよく、サーバ１１０からのアクセスが可能な他の情報処理装置に備えられていてもよい。【００２３】
端末装置１２０は、各顧客が備えるパーソナル・コンピュータなどのＷＥＢ端末装置である。たとえば、端末装置１２０は、サーバ１１０からショッピング情報を受信する、受信したショッピング情報を表示する、ユーザによる発注情報の入力を受け付ける、入力された発注情報をサーバ１１０へ送信する、などの処理をおこなう。【００２４】
（発注データベースの構成）
つぎに、発注データベース１１１の構成について説明する。図２は、発注データベース１１１の構成を示す説明図である。また、図３は、発注データベース１１１に形成された各区画のデータ構成を示す説明図である。そして、図４は、発注データベース１１１に格納されたトランザクションのデータ構成を示す説明図である。【００２５】
図２に示すように、発注データベース１１１は、一例として、６つの正区画（正区画１〜６）と、１つの予備区画とが、形成されており、各区画は、５万件のトランザクションを格納することができる。ここで、正区画は、オンラインプログラムからのトランザクションへのアクセスが可能な区画である。本実施の形態においては、６つの正区画の総容量をトランザクション３０万件分としており、これは、１日のトランザクション量を１万件と仮定した場合の、３０日分のトランザクション量に相当する。なお、区画数や各区画の容量は、上記に限らず、過去の分析データなどから求められた１日のトランザクション量や、トランザクションの有効日数（トランザクションを発注データベース１１１に格納しておくべき日数）などに基づいて、調整するようにしてもよい。また、上記各区画は、論理的なものであっても物理的なものであってもよい。【００２６】
また、図示は省略するが、発注データベース１１１には、先頭の区画を特定するためのポインタと、最後の区画を特定するためのポインタと、最後にトランザクションが格納された区画を特定するためのポインタと、が設けられている。これにより、トランザクションの検索開始位置、トランザクションの追加位置、空区画の連結位置などを容易に特定することが可能な構成となっている。【００２７】
発注データベース１１１に形成された各区画は、図３に示すように、制御データが格納される「コントロール部」と実データが格納される「データ部」とによって構成されている。このうち、「コントロール部」は、項目「未完了トランザクション数」と、項目「ＢＬｉｎｋ」と、項目「ＮＬｉｎｋ」と、項目「ＫｅｙＩｎｄｅｘ」とを備える。【００２８】
項目「未完了トランザクション数」には、当該区画に格納されているトランザクションのうち、未完了のトランザクション（すなわち、項目「完了フラグ」に「０」が設定されているトランザクション）の件数が設定される。ここで、「未完了トランザクション」とは、倉庫への配送指示、宅配業者への配送依頼、入金確認、クーリングオフ期間の経過、など、一連の取引処理における所定の処理が完了していないトランザクションを意味し、「完了トランザクション」とは、その反対を意味する。【００２９】
また、項目「Ｂｌｉｎｋ」には、当該区画に先行する区画を特定するためのポインタが設定される。そして、項目「Ｎｌｉｎｋ」には、当該区画に後続する区画を特定するためのポインタが設定される。さらに、必須ではないが、項目「ＫｅｙＩｎｄｅｘ」には、アクセスを高速化するためのインデックスを設定することができる。【００３０】
発注データベース１１１に格納されたトランザクションは、図４に示すように、制御データが格納される「コントロール部」と実データが格納される「データ部」とによって構成されている。このうち、「コントロール部」は、項目「分離フラグ」と、項目「完了フラグ」とを備える。【００３１】
項目「分離フラグ」には、当該トランザクションが予備区画に格納されたか否かの識別情報が設定される。たとえば、予備区画に格納されていない場合は「０」が設定される。【００３２】
また、予備区画に格納されている場合は「１」が設定される。これにより、たとえば、発注データベース１１１に対してトランザクションを登録／参照／更新するオンラインプログラムは、正区画に格納されているトランザクションのうち、項目「分離フラグ」に「１」が設定されたトランザクションを更新した場合、予備区画に格納（コピー）されたトランザクションを更新するための更新データを生成する必要があると判断することができる。【００３３】
そして、予備区画に格納されているうえに当該トランザクションの更新データが存在する場合は「２」が設定される。これにより、たとえば、発注データベース１１１に対してトランザクションを登録／参照／更新するオンラインプログラムは、正区画に格納されているトランザクションのうち、項目「分離フラグ」に「２」が設定されたトランザクションを更新した場合、既に生成済みの更新データを更新する必要があると判断することができる。【００３４】
一方、項目「完了フラグ」には、当該トランザクションが未完了トランザクションか否かの識別情報が設定される。たとえば、本実施の形態においては、「完了トランザクション」の場合は「０」が設定され、「未完了トランザクション」の場合は「１」が設定される。【００３５】
たとえば、新規登録されたトランザクションの場合、項目「分離フラグ」には「０」が設定され、項目「完了フラグ」には「１」が設定される。その後、一連の取引処理より、情報の参照／更新／追加がおこなわれ、一連の取引処理終了後、項目「完了フラグ」に「０」が設定される。【００３６】
（サーバ１１０のハードウェア構成）
つぎに、この発明の実施の形態にかかるサーバ１１０のハードウェア構成について説明する。図５は、この発明の実施の形態にかかるサーバ１１０のハードウェア構成を示す説明図である。【００３７】
図５において、サーバ１１０は、コンピュータ本体５１０と、入力装置５２０と、出力装置５３０と、から構成されており、不図示のルータやモデムを介してＬＡＮ，ＷＡＮやインターネットなどのネットワーク１３０に接続可能である。【００３８】
コンピュータ本体５１０は、ＣＰＵ，メモリ，インターフェースを有する。ＣＰＵは、サーバ１１０の全体の制御を司る。メモリは、ＲＯＭ，ＲＡＭ，ＨＤ，光ディスク５１１，フラッシュメモリ，ＭＴ（磁気テープ）９００から構成される。メモリはＣＰＵのワークエリアとして使用される。【００３９】
また、メモリには各種プログラムが格納されており、ＣＰＵからの命令に応じてロードされる。ＨＤ、光ディスク５１１、およびＭＴ（磁気テープ）９００はディスクドライブなどによりデータのリード／ライトが制御される。また、光ディスク５１１、フラッシュメモリ、およびＭＴ（磁気テープ）９００はコンピュータ本体５１０に対し着脱自在である。インターフェースは、入力装置５２０からの入力、出力装置５３０への出力、ネットワーク１３０に対する送受信の制御をおこなう。【００４０】
また、入力装置５２０としては、キーボード５２１、マウス５２２、スキャナ５２３などがある。キーボード５２１は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式であってもよい。マウス５２２は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。スキャナ５２３は、画像を光学的に読み取る。読み取られた画像は画像データとして取り込まれ、コンピュータ本体５１０内のメモリに格納される。なお、スキャナ５２３にＯＣＲ機能を持たせてもよい。【００４１】
また、出力装置５３０としては、ディスプレイ５３１、スピーカ５３２、プリンタ５３３などがある。ディスプレイ５３１は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。また、スピーカ５３２は、効果音や読み上げ音などの音声を出力する。また、プリンタ５３３は、画像データや文書データを印刷する。【００４２】
（サーバ１１０の機能的構成）
つぎに、この発明の実施の形態にかかるサーバ１１０の機能的構成について説明する。図６は、この発明の実施の形態にかかるサーバ１１０の機能的構成を示すブロック図である。【００４３】
図６において、サーバ１１０は、取得部６０１と、決定部６０２と、判断部６０３と、格納部６０４と、区画変更部６０５と、更新部６０６と、から構成されている。【００４４】
取得部６０１は、発注データベース１１１に形成された正区画ごとに、未完了トランザクション数を取得する。なお、本実施の形態においては、図３に示したように各区画に未完了トランザクション数を持たせ、これを取得する構成としたが、これに限らず、別の方法を用いて区画ごとの未完了トランザクション数を取得する構成としてもよい。【００４５】
決定部６０２は、取得部６０１によって取得された未完了トランザクション数に基づいて、発注データベース１１１に形成された複数の正区画の中から、区画整理対象とする正区画を決定する。具体的には、連続する２つの正区画のトランザクション数の合計が、所定数（本実施の形態においては１つの区画に格納可能なトランザクション数）よりも少ない場合、この連続する２つの正区画を区画整理対象とする。なお、本実施の形態においては、区画整理対象とする正区画を、連続する２つの正区画としたが、これに限らず、連続する３つ以上の正区画としてもよい。【００４６】
判断部６０３は、決定部６０２によって区画整理対象として決定された正区画に格納されているトランザクションごとに、未完了トランザクションか否かを判断する。なお、本実施の形態においては、図４に示したように各トランザクションに完了フラグを持たせ、これによって未完了トランザクションか否かを判断する構成としたが、これに限らず、別の方法を用いて未完了トランザクションか否かを判断する構成としてもよい。【００４７】
格納部６０４は、判断部６０３によって未完了トランザクションであると判断されたトランザクションについては、その複製データを発注データベース１１１に形成された予備区画に格納し、判断部６０３によって未完了トランザクションではないと判断されたトランザクションについては、その複製データを発注データベース１１１とは別の記録媒体へ格納する。なお、本実施の形態においては、上記別の記録媒体の一例としてＭＴ（磁気テープ）を用いたが、これに限らない。【００４８】
区画変更部６０５は、格納部６０４によって未完了トランザクションが格納された予備区画を正区画に変更し、決定部６０２によって区画整理対象として決定された正区画の両方を初期化して、このうちの一方を予備の区画に変更する。このとき、区画変更部６０５は、正区画に変更された予備区画が、複数の正区画の先頭の区画となるように区画を変更する。また、区画変更部６０５は、初期化された正区画のうちの他方（予備の区画に変更されていない正区画）が、複数の正区画の末尾の区画となるように区画を変更する。なお、上述した各区画の変更は、各区画の項目「ＢＬｉｎｋ」および項目「ＮＬｉｎｋ」の設定値を変更することによって実現される。【００４９】
更新部６０６は、予備の区画に格納された未完了トランザクションに対するオンラインプログラムによる更新データを取得し、取得した前記更新データを用いて、予備の区画に格納された未完了トランザクションを更新する。たとえば、オンラインプログラムによる更新データは、メモリなどの作業領域に格納されている。更新部６０６は、この作業領域を参照し、更新データの有無を判断する。そして、更新データが有ると判断した場合は、この更新データを作業領域から取得し、取得した更新データを用いて、予備の区画に格納された未完了トランザクションを更新する。【００５０】
また、更新部６０６は、予備区画に格納された未完了トランザクションを更新する際に、オンラインプログラムからの発注データベース１１１に対するアクセスを禁止させる。そして、更新部６０６は、予備区画に格納された未完了トランザクションの更新後、オンラインプログラムからの発注データベース１１１に対するアクセス禁止を解除させる。【００５１】
なお、上述した各機能構成部は、具体的には、たとえば図５に示したコンピュータ本体５１０が有するメモリに記憶されたプログラムをＣＰＵが実行することによってその機能を実現する。特に、取得部６０１、格納部６０４、区画変更部６０５、および更新部６０６は、たとえば図５に示したコンピュータ本体５１０が有するインターフェースが、上記プログラムに制御されることによってその機能を実現する。【００５２】
（データベース管理処理の手順）
つぎに、この発明の実施の形態にかかるサーバ１１０によるデータベース管理処理の手順について説明する。図７は、この発明の実施の形態にかかるサーバ１１０によるデータベース管理処理の手順を示すフローチャートである。【００５３】
まず、取得部６０１は、発注データベース１１１に形成された正区画ごとに、未完了トランザクション数を取得して（ステップＳ７０１）、決定部６０２によって、ステップＳ７０１で取得された未完了トランザクション数に基づいて、発注データベース１１１に形成された複数の正区画の中から、区画整理対象とする正区画を決定する（ステップＳ７０２）。【００５４】
続いて、判断部６０３によって、ステップＳ７０２で区画整理対象として決定された正区画を一つ選択し（ステップＳ７０３）、さらに、ステップＳ７０３で選択された正区画の中からトランザクションを一つ選択し（ステップＳ７０４）、そのうえ、ステップＳ７０４で選択されたトランザクションが未完了トランザクションか否かを判断する（ステップＳ７０５）。【００５５】
ステップＳ７０５において、未完了トランザクションではないと判断した場合（ステップＳ７０５：Ｎｏ）は、格納部６０４によって、このトランザクションをＭＴ（磁気テープ）に格納し（ステップＳ７０６）、ステップＳ７０８へ進む。一方、ステップＳ７０５において、未完了トランザクションであると判断した場合（ステップＳ７０５：Ｙｅｓ）は、格納部６０４によって、このトランザクションを予備区画に格納し（ステップＳ７０７）、ステップＳ７０８へ進む。このとき、格納部６０４は、予備区画に格納するトランザクションの項目「分離フラグ」に「１」を設定する。また、格納部６０４は、予備区画の項目「未完了トランザクション数」の設定値に「１」を加算した値を、新たに、予備区画の項目「未完了トランザクション数」に設定する。【００５６】
続いて、ステップＳ７０３で選択された正区画の中から全てのトランザクションが選択されたか否かを判断する（ステップＳ７０８）。ステップＳ７０８において、全てのトランザクションが選択されていないと判断した場合（ステップＳ７０８：Ｎｏ）は、ステップＳ７０４へ戻る。一方、ステップＳ７０８において、全てのトランザクションが選択されたと判断した場合（ステップＳ７０８：Ｙｅｓ）は、ステップＳ７０２で区画整理対象として決定された正区画が全て選択されたか否かを判断する（ステップＳ７０９）。【００５７】
ステップＳ７０９において、正区画が全て選択されていないと判断した場合（ステップＳ７０９：Ｎｏ）は、ステップＳ７０３へ戻る。一方、ステップＳ７０９において、正区画が全て選択されたと判断した場合（ステップＳ７０９：Ｙｅｓ）は、更新部６０６によって、作業領域上に更新データがあるか否かを判断する（ステップＳ７１０）。【００５８】
ステップＳ７１０において、作業領域上に更新データがないと判断した場合（ステップＳ７１０：Ｎｏ）は、区画変更部６０５によって各区画を変更して（ステップＳ７１４）、一連の処理を終了する。【００５９】
一方、ステップＳ７１０において、作業領域上に更新データがあると判断した場合（ステップＳ７１０：Ｙｅｓ）は、更新部６０６によって、発注データベース１１１に対してオンラインプログラムからのアクセス禁止を設定する（ステップＳ７１１）。【００６０】
そして、更新部６０６によって、作業領域上にある更新データを用いて、ステップＳ７０７で予備区画に格納されたトランザクションを更新する（ステップＳ７１２）。このとき、更新部６０６は、更新するトランザクションの項目「分離フラグ」に「０」を設定する。これにより、完了トランザクションに更新されたトランザクションが生じた場合、更新部６０６は、予備区画の項目「未完了トランザクション数」の設定値から、完了トランザクションに更新されたトランザクションの件数を減算した値を、新たに、予備区画の項目「未完了トランザクション数」に設定する。【００６１】
さらに、更新部６０６によって、発注データベース１１１に対してオンラインプログラムからのアクセス禁止を解除する（ステップＳ７１３）。そのうえで、区画変更部６０５によって各区画を変更して（ステップＳ７１４）、一連の処理を終了する。【００６２】
（トランザクションが蓄積された発注データベース１１１の一例）
つぎに、トランザクションが蓄積された発注データベース１１１の一例について説明する。図８は、トランザクションが蓄積された発注データベース１１１の一例を示す説明図である。【００６３】
図８に示す発注データベース１１１では、区画１〜４にそれぞれ５万件のトランザクションが格納されている。このうち、完了トランザクションは、区画１に４９０００件あり、区画２に４１０００件ある。この９００００件の完了トランザクションを消去することで、発注データベース１１１の空き容量を増やすことができるが、顧客からのクレームやトラブルに対応するために、単純に消去するわけにはいかない。【００６４】
そこで、この９００００件の完了トランザクションをＭＴ（磁気テープ）に移動させることにより、上記相反する２つの条件を両立させることができる。ここで、単に完了トランザクションをＭＴ（磁気テープ）に移動させた場合、発注データベース１１１の空き領域が虫食い状態となる。このため、完了トランザクションをＭＴ（磁気テープ）に移動した後に、空き領域が連続する領域となるように、発注データベース１１１を再編成する必要がある。【００６５】
（トランザクションがＭＴへ格納された後の発注データベース１１１の一例）
つぎに、トランザクションがＭＴへ格納された後の発注データベース１１１の一例について説明する。図９は、トランザクションがＭＴへ格納された後の発注データベース１１１の一例を示す説明図である。【００６６】
図９では、図８に示した発注データベース１１１の状態から、図７を用いて説明した手順によるデータベース管理処理がおこなわれたことによって、区画整理対象とされた区画１および２に格納されている９００００件の完了トランザクションがＭＴ（磁気テープ）９００に複写されている。同時に、区画１および２に格納されている１００００件の未完了トランザクションが予備区画に複写されている。【００６７】
このとき、区画１および２に格納されているトランザクションに対するオンラインプログラムからのアクセスを可能とするため、区画１および２には、９００００件の完了トランザクションと、１００００件の未完了トランザクションとが、格納されたままである。ここで、オンラインプログラムは、区画１および２に格納されている未完了トランザクションを更新した場合、更新されたトランザクションの複写データを同様に更新するための更新データを、作業領域に格納しておく必要がある。作業領域に格納された更新データは、後続のデータベース管理処理によって、複写データの更新に利用される。これにより、後に消去される複写元データだけが更新され、複写データが更新されないといった事態の発生を回避することができる。【００６８】
（区画が変更された後の発注データベース１１１の一例）
つぎに、区画が変更された後の発注データベース１１１の一例について説明する。図１０は、区画が変更された後の発注データベース１１１の一例を示す説明図である。【００６９】
図１０において、上段は、区画変更前の発注データベース１１１の状態を示し、下段は、区画変更後の発注データベース１１１の状態を示す。図１０に示すように、まず、図９で示したように未完了トランザクションが格納された予備区画が、正区画へと変更され、さらに複数の正区画の先頭位置に置かれている。また、区画整理対象とされた区画１および２は、初期化されたうえ、一方は、複数の正区画の終端に置かれ、他方は、予備区画へ変更されている。【００７０】
このような区画変更に伴い、作業領域にオンラインプログラムからの更新データが格納されている場合は、この更新データを用いて、正区画へと変更された予備区画に格納されている未完了トランザクションが更新される。また、図７を用いて説明した手順によるデータベース管理処理では、この更新処理のときに、事前にオンラインプログラムからの発注データベース１１１へのアクセスを禁止させることにより、更新データが消滅してしまうといった事態の発生を回避することができる。【００７１】
（オンラインプログラムによるトランザクション更新処理の手順）
つぎに、オンラインプログラムによるトランザクション更新処理の手順について説明する。図１１は、オンラインプログラムによるトランザクション更新処理の手順を示すフローチャートである。【００７２】
まず、発注データベース１１１へのアクセスが禁止されているか否かを判断する（ステップＳ１１０１）。ステップＳ１１０１において、発注データベース１１１へのアクセスが禁止されていると判断した場合（ステップＳ１１０１：Ｙｅｓ）は、発注データベース１１１へのアクセス禁止が解除されるまで、ステップＳ１１０１を繰り返しおこなう。【００７３】
一方、ステップＳ１１０１において、発注データベース１１１へのアクセスが禁止されていないと判断した場合（ステップＳ１１０１：Ｎｏ）は、更新対象トランザクションの項目「分離フラグ」の値が「０」であるか否かを判断する（ステップＳ１１０２）。【００７４】
ステップＳ１１０２において、更新対象トランザクションの項目「分離フラグ」の値が「０」であると判断した場合（ステップＳ１１０２：Ｙｅｓ）は、更新対象トランザクションを更新して（ステップＳ１１０３）、一連の処理を終了する。【００７５】
一方、ステップＳ１１０２において、更新対象トランザクションの項目「分離フラグ」の値が「０」ではないと判断した場合（ステップＳ１１０２：Ｎｏ）は、更新対象トランザクションの項目「分離フラグ」の値が「１」であるか否かを判断する（ステップＳ１１０４）。【００７６】
ステップＳ１１０４において、更新対象トランザクションの項目「分離フラグ」の値が「１」であると判断した場合（ステップＳ１１０４：Ｙｅｓ）は、更新対象トランザクションの項目「分離フラグ」に「２」を設定する（ステップＳ１１０５）。そして、更新対象トランザクションを更新する（ステップＳ１１０６）。さらに、更新対象トランザクションを更新する際に用いた更新データをメモリなどの作業領域に格納して（ステップＳ１１０７）、一連の処理を終了する。【００７７】
一方、ステップＳ１１０４において、更新対象トランザクションの項目「分離フラグ」の値が「１」ではないと判断した場合（ステップＳ１１０４：Ｎｏ）は、更新対象トランザクションを更新する（ステップＳ１１０８）。そして、更新対象トランザクションを更新する際に用いた更新データを用いて、既に作業領域に格納されている更新データを更新して（ステップＳ１１０９）、一連の処理を終了する。【００７８】
オンラインプログラムは、上述したような手順により、発注データベース１１１に格納されたトランザクションを更新することによって、発注データベース１１１において、後に消去される正区画上のトランザクションだけが更新され、後に正区画となる予備区画上のトランザクションが更新されないといった事態の発生を回避することができる。【００７９】
以上説明したように、この発明の実施の形態にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、連続する正区画に格納されているトランザクションのうち、完了トランザクションをＭＴ（磁気テープ）に集約し、未完了トランザクションを予備区画に集約することとした。このため、上記連続する正区画の全領域を空き領域とすることができる。【００８０】
また、未完了トランザクションが格納された予備の区画を正区画に変更し、上記連続する区画のうち少なくともいずれか一つの正区画を予備の区画に変更することとした。このため、未完了トランザクションが格納された予備の区画を、オンラインプログラムによるアクセスが可能な正区画として再利用することができる。また、改めて予備の区画を設けることができるため、繰り返し、当該データベース管理処理をおこなうことができる。【００８１】
また、オンラインプログラムによる更新データを作業領域に格納させておき、この更新データを用いて、予備の区画に格納されている未完了トランザクションを更新することとした。このため、当該データベース管理処理と平行して、オンラインプログラムを稼動させることができ、このオンラインプログラムが、予備の区画に格納される前のトランザクションを更新した場合であっても、予備の区画に格納された後の未完了トランザクションを更新することができる。【００８２】
また、予備の区画に格納された未完了トランザクションを更新する際に、オンラインプログラムによる発注データベース１１１のアクセスを禁止することとした。このため、発注データベース１１１において、予備の区画に格納される前の未完了トランザクションだけが更新され、予備の区画に格納された後の未完了トランザクションが更新されないといった事態の発生を回避することができる。【００８３】
以上のことから、この発明の実施の形態にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置によれば、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができる。【００８４】
なお、本実施の形態で説明したデータベース管理方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【００８５】
以上のように、本発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、あらゆる商取引契約に利用可能であり、特に、契約書の条文内容が重要視されていることにより、当事者双方の意見の対立が多く生じる、ソフトウェア開発取引契約への利用に適している。
【図１】
2008120359.tif 000003
【図２】
2008120359.tif 000004
【図３】
2008120359.tif 000005
【図４】
2008120359.tif 000006
【図５】
2008120359.tif 000007
【図６】
2008120359.tif 000008
【図７】
2008120359.tif 000009
【図８】
2008120359.tif 000010
【図９】
2008120359.tif 000011
【図１０】
2008120359.tif 000012
【図１１】
2008120359.tif 000013
【手続補正書】
【提出日】平成21年6月8日(2009.6.8)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、トランザクションが蓄積されたデータベースを管理するデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置に関する。
【背景技術】
【０００２】
従来から、随時発生するトランザクションが蓄積されるデータベースでは、その容量に限界があるため、定期的に、所定の処理が完了したトランザクション（完了トランザクション）を磁気テープなどの記録媒体に退避させることによって、空き容量を確保する必要があった。
【０００３】
しかしながら、単に完了トランザクションだけを退避させた場合、データベース上の空き領域が虫食い状態となる。そして、データベースがこのような状態のときに、データベースへの書き込み処理をおこなった場合、処理効率が低下するといった問題が生じていた。
【０００４】
そこで、データベースをブロック単位で管理し、連続するブロック内の空き領域を集約することによって、ブロック単位で空き領域を再利用することが可能な技術が考案されている。このような技術を利用することにより、データベースの書き込み処理をおこなう際の、処理効率の向上を図ることができるものとされている（たとえば、下記特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−２６３３３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載の従来技術にあっては、空領域を集約することにより、結果的に実データも集約されることになるが、たとえば、実データの中に以降のオンライン処理がおこなわれる可能性が低いデータ（すなわち、不要なデータ）が多数含まれている場合であっても、区別なく集約されてしまうため、空領域を効率的に増やすことができないといった問題が生じていた。また、データベースの整合性を保障するためには、空き領域を集約する際に、オンライン処理を停止する必要があり、２４時間稼動が所望されるＷＥＢショッピングなどのオンラインシステムには適用することができないといった問題が生じていた。
【０００７】
この発明は、上述した従来技術による問題点を解消するため、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、本データベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、データベースに形成された正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得し、取得された未完了トランザクションの数に基づいて、複数の正区画の中から、区画整理対象とする正区画を決定し、区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが未完了トランザクションか否かを判断し、未完了トランザクションであると判断されたトランザクションをデータベースに形成された予備の区画に格納し、未完了トランザクションではないと判断されたトランザクションをデータベースとは別の記録媒体へ格納することとした。
【発明の効果】
【０００９】
本データベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置によれば、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成を示す説明図である。
【図２】発注データベースの構成を示す説明図である。
【図３】発注データベースに形成された各区画のデータ構成を示す説明図である。
【図４】発注データベースに格納されたトランザクションのデータ構成を示す説明図である。
【図５】この発明の実施の形態にかかるサーバのハードウェア構成を示す説明図である。
【図６】この発明の実施の形態にかかるサーバの機能的構成を示すブロック図である。
【図７】この発明の実施の形態にかかるサーバによるデータベース管理処理の手順を示すフローチャートである。
【図８】トランザクションが蓄積された発注データベースの一例を示す説明図である。
【図９】トランザクションがＭＴへ格納された後の発注データベースの一例を示す説明図である。
【図１０】区画が変更された後の発注データベースの一例を示す説明図である。
【図１１】オンラインプログラムによるトランザクション更新処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
（実施の形態）
以下に添付図面を参照して、この発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置の好適な実施の形態の一例として、ＷＥＢショッピングシステムへの適用例を詳細に説明する。
【００１２】
（ＷＥＢショッピングシステムのシステム構成）
まず、この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成について説明する。図１は、この発明の実施の形態にかかるＷＥＢショッピングシステムのシステム構成を示す説明図である。
【００１３】
図１に示す、ＷＥＢショッピングシステム１００は、顧客がインターネット上でショッピングをおこなうことができるシステムである。このＷＥＢショッピングシステム１００は、サーバ１１０と、各顧客が利用する端末装置１２０と、によって構成されており、各端末装置１２０は、ネットワーク１３０によってサーバ１１０と通信可能に接続されている。
【００１４】
サーバ１１０は、オンラインプログラムを備える情報処理装置である。たとえば、オンラインプログラムは、各端末装置１２０に対してショッピング情報を提供する、各端末装置１２０からの発注情報を受信する、受信した発注情報（トランザクション）を発注データベース１１１に蓄積するなどの処理をおこなう。また、オンラインプログラムは、更新プログラムとしても機能し、一連の取引処理の処理結果に応じて、発注データベース１１１に蓄積されたトランザクションを更新する。また、サーバ１１０は、データベース管理装置としても機能し、発注データベース１１１に対するデータベース管理処理をおこなう。ここで、上記発注データベース１１１は、サーバ１１０に備えられていてもよく、サーバ１１０からのアクセスが可能な他の情報処理装置に備えられていてもよい。
【００１５】
端末装置１２０は、各顧客が備えるパーソナル・コンピュータなどのＷＥＢ端末装置である。たとえば、端末装置１２０は、サーバ１１０からショッピング情報を受信する、受信したショッピング情報を表示する、ユーザによる発注情報の入力を受け付ける、入力された発注情報をサーバ１１０へ送信する、などの処理をおこなう。
【００１６】
（発注データベースの構成）
つぎに、発注データベース１１１の構成について説明する。図２は、発注データベース１１１の構成を示す説明図である。また、図３は、発注データベース１１１に形成された各区画のデータ構成を示す説明図である。そして、図４は、発注データベース１１１に格納されたトランザクションのデータ構成を示す説明図である。
【００１７】
図２に示すように、発注データベース１１１は、一例として、６つの正区画（正区画１〜６）と、１つの予備区画とが、形成されており、各区画は、５万件のトランザクションを格納することができる。ここで、正区画は、オンラインプログラムからのトランザクションへのアクセスが可能な区画である。本実施の形態においては、６つの正区画の総容量をトランザクション３０万件分としており、これは、１日のトランザクション量を１万件と仮定した場合の、３０日分のトランザクション量に相当する。なお、区画数や各区画の容量は、上記に限らず、過去の分析データなどから求められた１日のトランザクション量や、トランザクションの有効日数（トランザクションを発注データベース１１１に格納しておくべき日数）などに基づいて、調整するようにしてもよい。また、上記各区画は、論理的なものであっても物理的なものであってもよい。
【００１８】
また、図示は省略するが、発注データベース１１１には、先頭の区画を特定するためのポインタと、最後の区画を特定するためのポインタと、最後にトランザクションが格納された区画を特定するためのポインタと、が設けられている。これにより、トランザクションの検索開始位置、トランザクションの追加位置、空区画の連結位置などを容易に特定することが可能な構成となっている。
【００１９】
発注データベース１１１に形成された各区画は、図３に示すように、制御データが格納される「コントロール部」と実データが格納される「データ部」とによって構成されている。このうち、「コントロール部」は、項目「未完了トランザクション数」と、項目「ＢＬｉｎｋ」と、項目「ＮＬｉｎｋ」と、項目「ＫｅｙＩｎｄｅｘ」とを備える。
【００２０】
項目「未完了トランザクション数」には、当該区画に格納されているトランザクションのうち、未完了のトランザクション（すなわち、項目「完了フラグ」に「０」が設定されているトランザクション）の件数が設定される。ここで、「未完了トランザクション」とは、倉庫への配送指示、宅配業者への配送依頼、入金確認、クーリングオフ期間の経過、など、一連の取引処理における所定の処理が完了していないトランザクションを意味し、「完了トランザクション」とは、その反対を意味する。
【００２１】
また、項目「Ｂｌｉｎｋ」には、当該区画に先行する区画を特定するためのポインタが設定される。そして、項目「Ｎｌｉｎｋ」には、当該区画に後続する区画を特定するためのポインタが設定される。さらに、必須ではないが、項目「ＫｅｙＩｎｄｅｘ」には、アクセスを高速化するためのインデックスを設定することができる。
【００２２】
発注データベース１１１に格納されたトランザクションは、図４に示すように、制御データが格納される「コントロール部」と実データが格納される「データ部」とによって構成されている。このうち、「コントロール部」は、項目「分離フラグ」と、項目「完了フラグ」とを備える。
【００２３】
項目「分離フラグ」には、当該トランザクションが予備区画に格納されたか否かの識別情報が設定される。たとえば、予備区画に格納されていない場合は「０」が設定される。
【００２４】
また、予備区画に格納されている場合は「１」が設定される。これにより、たとえば、発注データベース１１１に対してトランザクションを登録／参照／更新するオンラインプログラムは、正区画に格納されているトランザクションのうち、項目「分離フラグ」に「１」が設定されたトランザクションを更新した場合、予備区画に格納（コピー）されたトランザクションを更新するための更新データを生成する必要があると判断することができる。
【００２５】
そして、予備区画に格納されているうえに当該トランザクションの更新データが存在する場合は「２」が設定される。これにより、たとえば、発注データベース１１１に対してトランザクションを登録／参照／更新するオンラインプログラムは、正区画に格納されているトランザクションのうち、項目「分離フラグ」に「２」が設定されたトランザクションを更新した場合、既に生成済みの更新データを更新する必要があると判断することができる。
【００２６】
一方、項目「完了フラグ」には、当該トランザクションが未完了トランザクションか否かの識別情報が設定される。たとえば、本実施の形態においては、「完了トランザクション」の場合は「０」が設定され、「未完了トランザクション」の場合は「１」が設定される。
【００２７】
たとえば、新規登録されたトランザクションの場合、項目「分離フラグ」には「０」が設定され、項目「完了フラグ」には「１」が設定される。その後、一連の取引処理より、情報の参照／更新／追加がおこなわれ、一連の取引処理終了後、項目「完了フラグ」に「０」が設定される。
【００２８】
（サーバ１１０のハードウェア構成）
つぎに、この発明の実施の形態にかかるサーバ１１０のハードウェア構成について説明する。図５は、この発明の実施の形態にかかるサーバ１１０のハードウェア構成を示す説明図である。
【００２９】
図５において、サーバ１１０は、コンピュータ本体５１０と、入力装置５２０と、出力装置５３０と、から構成されており、不図示のルータやモデムを介してＬＡＮ，ＷＡＮやインターネットなどのネットワーク１３０に接続可能である。
【００３０】
コンピュータ本体５１０は、ＣＰＵ，メモリ，インターフェースを有する。ＣＰＵは、サーバ１１０の全体の制御を司る。メモリは、ＲＯＭ，ＲＡＭ，ＨＤ，光ディスク５１１，フラッシュメモリ，ＭＴ（磁気テープ）９００から構成される。メモリはＣＰＵのワークエリアとして使用される。
【００３１】
また、メモリには各種プログラムが格納されており、ＣＰＵからの命令に応じてロードされる。ＨＤ、光ディスク５１１、およびＭＴ（磁気テープ）９００はディスクドライブなどによりデータのリード／ライトが制御される。また、光ディスク５１１、フラッシュメモリ、およびＭＴ（磁気テープ）９００はコンピュータ本体５１０に対し着脱自在である。インターフェースは、入力装置５２０からの入力、出力装置５３０への出力、ネットワーク１３０に対する送受信の制御をおこなう。
【００３２】
また、入力装置５２０としては、キーボード５２１、マウス５２２、スキャナ５２３などがある。キーボード５２１は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式であってもよい。マウス５２２は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。スキャナ５２３は、画像を光学的に読み取る。読み取られた画像は画像データとして取り込まれ、コンピュータ本体５１０内のメモリに格納される。なお、スキャナ５２３にＯＣＲ機能を持たせてもよい。
【００３３】
また、出力装置５３０としては、ディスプレイ５３１、スピーカ５３２、プリンタ５３３などがある。ディスプレイ５３１は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。また、スピーカ５３２は、効果音や読み上げ音などの音声を出力する。また、プリンタ５３３は、画像データや文書データを印刷する。
【００３４】
（サーバ１１０の機能的構成）
つぎに、この発明の実施の形態にかかるサーバ１１０の機能的構成について説明する。図６は、この発明の実施の形態にかかるサーバ１１０の機能的構成を示すブロック図である。
【００３５】
図６において、サーバ１１０は、取得部６０１と、決定部６０２と、判断部６０３と、格納部６０４と、区画変更部６０５と、更新部６０６と、から構成されている。
【００３６】
取得部６０１は、発注データベース１１１に形成された正区画ごとに、未完了トランザクション数を取得する。なお、本実施の形態においては、図３に示したように各区画に未完了トランザクション数を持たせ、これを取得する構成としたが、これに限らず、別の方法を用いて区画ごとの未完了トランザクション数を取得する構成としてもよい。
【００３７】
決定部６０２は、取得部６０１によって取得された未完了トランザクション数に基づいて、発注データベース１１１に形成された複数の正区画の中から、区画整理対象とする正区画を決定する。具体的には、連続する２つの正区画のトランザクション数の合計が、所定数（本実施の形態においては１つの区画に格納可能なトランザクション数）よりも少ない場合、この連続する２つの正区画を区画整理対象とする。なお、本実施の形態においては、区画整理対象とする正区画を、連続する２つの正区画としたが、これに限らず、連続する３つ以上の正区画としてもよい。
【００３８】
判断部６０３は、決定部６０２によって区画整理対象として決定された正区画に格納されているトランザクションごとに、未完了トランザクションか否かを判断する。なお、本実施の形態においては、図４に示したように各トランザクションに完了フラグを持たせ、これによって未完了トランザクションか否かを判断する構成としたが、これに限らず、別の方法を用いて未完了トランザクションか否かを判断する構成としてもよい。
【００３９】
格納部６０４は、判断部６０３によって未完了トランザクションであると判断されたトランザクションについては、その複製データを発注データベース１１１に形成された予備区画に格納し、判断部６０３によって未完了トランザクションではないと判断されたトランザクションについては、その複製データを発注データベース１１１とは別の記録媒体へ格納する。なお、本実施の形態においては、上記別の記録媒体の一例としてＭＴ（磁気テープ）を用いたが、これに限らない。
【００４０】
区画変更部６０５は、格納部６０４によって未完了トランザクションが格納された予備区画を正区画に変更し、決定部６０２によって区画整理対象として決定された正区画の両方を初期化して、このうちの一方を予備の区画に変更する。このとき、区画変更部６０５は、正区画に変更された予備区画が、複数の正区画の先頭の区画となるように区画を変更する。また、区画変更部６０５は、初期化された正区画のうちの他方（予備の区画に変更されていない正区画）が、複数の正区画の末尾の区画となるように区画を変更する。なお、上述した各区画の変更は、各区画の項目「ＢＬｉｎｋ」および項目「ＮＬｉｎｋ」の設定値を変更することによって実現される。
【００４１】
更新部６０６は、予備の区画に格納された未完了トランザクションに対するオンラインプログラムによる更新データを取得し、取得した前記更新データを用いて、予備の区画に格納された未完了トランザクションを更新する。たとえば、オンラインプログラムによる更新データは、メモリなどの作業領域に格納されている。更新部６０６は、この作業領域を参照し、更新データの有無を判断する。そして、更新データが有ると判断した場合は、この更新データを作業領域から取得し、取得した更新データを用いて、予備の区画に格納された未完了トランザクションを更新する。
【００４２】
また、更新部６０６は、予備区画に格納された未完了トランザクションを更新する際に、オンラインプログラムからの発注データベース１１１に対するアクセスを禁止させる。そして、更新部６０６は、予備区画に格納された未完了トランザクションの更新後、オンラインプログラムからの発注データベース１１１に対するアクセス禁止を解除させる。
【００４３】
なお、上述した各機能構成部は、具体的には、たとえば図５に示したコンピュータ本体５１０が有するメモリに記憶されたプログラムをＣＰＵが実行することによってその機能を実現する。特に、取得部６０１、格納部６０４、区画変更部６０５、および更新部６０６は、たとえば図５に示したコンピュータ本体５１０が有するインターフェースが、上記プログラムに制御されることによってその機能を実現する。
【００４４】
（データベース管理処理の手順）
つぎに、この発明の実施の形態にかかるサーバ１１０によるデータベース管理処理の手順について説明する。図７は、この発明の実施の形態にかかるサーバ１１０によるデータベース管理処理の手順を示すフローチャートである。
【００４５】
まず、取得部６０１は、発注データベース１１１に形成された正区画ごとに、未完了トランザクション数を取得して（ステップＳ７０１）、決定部６０２によって、ステップＳ７０１で取得された未完了トランザクション数に基づいて、発注データベース１１１に形成された複数の正区画の中から、区画整理対象とする正区画を決定する（ステップＳ７０２）。
【００４６】
続いて、判断部６０３によって、ステップＳ７０２で区画整理対象として決定された正区画を一つ選択し（ステップＳ７０３）、さらに、ステップＳ７０３で選択された正区画の中からトランザクションを一つ選択し（ステップＳ７０４）、そのうえ、ステップＳ７０４で選択されたトランザクションが未完了トランザクションか否かを判断する（ステップＳ７０５）。
【００４７】
ステップＳ７０５において、未完了トランザクションではないと判断した場合（ステップＳ７０５：Ｎｏ）は、格納部６０４によって、このトランザクションをＭＴ（磁気テープ）に格納し（ステップＳ７０６）、ステップＳ７０８へ進む。一方、ステップＳ７０５において、未完了トランザクションであると判断した場合（ステップＳ７０５：Ｙｅｓ）は、格納部６０４によって、このトランザクションを予備区画に格納し（ステップＳ７０７）、ステップＳ７０８へ進む。このとき、格納部６０４は、予備区画に格納するトランザクションの項目「分離フラグ」に「１」を設定する。また、格納部６０４は、予備区画の項目「未完了トランザクション数」の設定値に「１」を加算した値を、新たに、予備区画の項目「未完了トランザクション数」に設定する。
【００４８】
続いて、ステップＳ７０３で選択された正区画の中から全てのトランザクションが選択されたか否かを判断する（ステップＳ７０８）。ステップＳ７０８において、全てのトランザクションが選択されていないと判断した場合（ステップＳ７０８：Ｎｏ）は、ステップＳ７０４へ戻る。一方、ステップＳ７０８において、全てのトランザクションが選択されたと判断した場合（ステップＳ７０８：Ｙｅｓ）は、ステップＳ７０２で区画整理対象として決定された正区画が全て選択されたか否かを判断する（ステップＳ７０９）。
【００４９】
ステップＳ７０９において、正区画が全て選択されていないと判断した場合（ステップＳ７０９：Ｎｏ）は、ステップＳ７０３へ戻る。一方、ステップＳ７０９において、正区画が全て選択されたと判断した場合（ステップＳ７０９：Ｙｅｓ）は、更新部６０６によって、作業領域上に更新データがあるか否かを判断する（ステップＳ７１０）。
【００５０】
ステップＳ７１０において、作業領域上に更新データがないと判断した場合（ステップＳ７１０：Ｎｏ）は、区画変更部６０５によって各区画を変更して（ステップＳ７１４）、一連の処理を終了する。
【００５１】
一方、ステップＳ７１０において、作業領域上に更新データがあると判断した場合（ステップＳ７１０：Ｙｅｓ）は、更新部６０６によって、発注データベース１１１に対してオンラインプログラムからのアクセス禁止を設定する（ステップＳ７１１）。
【００５２】
そして、更新部６０６によって、作業領域上にある更新データを用いて、ステップＳ７０７で予備区画に格納されたトランザクションを更新する（ステップＳ７１２）。このとき、更新部６０６は、更新するトランザクションの項目「分離フラグ」に「０」を設定する。これにより、完了トランザクションに更新されたトランザクションが生じた場合、更新部６０６は、予備区画の項目「未完了トランザクション数」の設定値から、完了トランザクションに更新されたトランザクションの件数を減算した値を、新たに、予備区画の項目「未完了トランザクション数」に設定する。
【００５３】
さらに、更新部６０６によって、発注データベース１１１に対してオンラインプログラムからのアクセス禁止を解除する（ステップＳ７１３）。そのうえで、区画変更部６０５によって各区画を変更して（ステップＳ７１４）、一連の処理を終了する。
【００５４】
（トランザクションが蓄積された発注データベース１１１の一例）
つぎに、トランザクションが蓄積された発注データベース１１１の一例について説明する。図８は、トランザクションが蓄積された発注データベース１１１の一例を示す説明図である。
【００５５】
図８に示す発注データベース１１１では、区画１〜４にそれぞれ５万件のトランザクションが格納されている。このうち、完了トランザクションは、区画１に４９０００件あり、区画２に４１０００件ある。この９００００件の完了トランザクションを消去することで、発注データベース１１１の空き容量を増やすことができるが、顧客からのクレームやトラブルに対応するために、単純に消去するわけにはいかない。
【００５６】
そこで、この９００００件の完了トランザクションをＭＴ（磁気テープ）に移動させることにより、上記相反する２つの条件を両立させることができる。ここで、単に完了トランザクションをＭＴ（磁気テープ）に移動させた場合、発注データベース１１１の空き領域が虫食い状態となる。このため、完了トランザクションをＭＴ（磁気テープ）に移動した後に、空き領域が連続する領域となるように、発注データベース１１１を再編成する必要がある。
【００５７】
（トランザクションがＭＴへ格納された後の発注データベース１１１の一例）
つぎに、トランザクションがＭＴへ格納された後の発注データベース１１１の一例について説明する。図９は、トランザクションがＭＴへ格納された後の発注データベース１１１の一例を示す説明図である。
【００５８】
図９では、図８に示した発注データベース１１１の状態から、図７を用いて説明した手順によるデータベース管理処理がおこなわれたことによって、区画整理対象とされた区画１および２に格納されている９００００件の完了トランザクションがＭＴ（磁気テープ）９００に複写されている。同時に、区画１および２に格納されている１００００件の未完了トランザクションが予備区画に複写されている。
【００５９】
このとき、区画１および２に格納されているトランザクションに対するオンラインプログラムからのアクセスを可能とするため、区画１および２には、９００００件の完了トランザクションと、１００００件の未完了トランザクションとが、格納されたままである。ここで、オンラインプログラムは、区画１および２に格納されている未完了トランザクションを更新した場合、更新されたトランザクションの複写データを同様に更新するための更新データを、作業領域に格納しておく必要がある。作業領域に格納された更新データは、後続のデータベース管理処理によって、複写データの更新に利用される。これにより、後に消去される複写元データだけが更新され、複写データが更新されないといった事態の発生を回避することができる。
【００６０】
（区画が変更された後の発注データベース１１１の一例）
つぎに、区画が変更された後の発注データベース１１１の一例について説明する。図１０は、区画が変更された後の発注データベース１１１の一例を示す説明図である。
【００６１】
図１０において、上段は、区画変更前の発注データベース１１１の状態を示し、下段は、区画変更後の発注データベース１１１の状態を示す。図１０に示すように、まず、図９で示したように未完了トランザクションが格納された予備区画が、正区画へと変更され、さらに複数の正区画の先頭位置に置かれている。また、区画整理対象とされた区画１および２は、初期化されたうえ、一方は、複数の正区画の終端に置かれ、他方は、予備区画へ変更されている。
【００６２】
このような区画変更に伴い、作業領域にオンラインプログラムからの更新データが格納されている場合は、この更新データを用いて、正区画へと変更された予備区画に格納されている未完了トランザクションが更新される。また、図７を用いて説明した手順によるデータベース管理処理では、この更新処理のときに、事前にオンラインプログラムからの発注データベース１１１へのアクセスを禁止させることにより、更新データが消滅してしまうといった事態の発生を回避することができる。
【００６３】
（オンラインプログラムによるトランザクション更新処理の手順）
つぎに、オンラインプログラムによるトランザクション更新処理の手順について説明する。図１１は、オンラインプログラムによるトランザクション更新処理の手順を示すフローチャートである。
【００６４】
まず、発注データベース１１１へのアクセスが禁止されているか否かを判断する（ステップＳ１１０１）。ステップＳ１１０１において、発注データベース１１１へのアクセスが禁止されていると判断した場合（ステップＳ１１０１：Ｙｅｓ）は、発注データベース１１１へのアクセス禁止が解除されるまで、ステップＳ１１０１を繰り返しおこなう。
【００６５】
一方、ステップＳ１１０１において、発注データベース１１１へのアクセスが禁止されていないと判断した場合（ステップＳ１１０１：Ｎｏ）は、更新対象トランザクションの項目「分離フラグ」の値が「０」であるか否かを判断する（ステップＳ１１０２）。
【００６６】
ステップＳ１１０２において、更新対象トランザクションの項目「分離フラグ」の値が「０」であると判断した場合（ステップＳ１１０２：Ｙｅｓ）は、更新対象トランザクションを更新して（ステップＳ１１０３）、一連の処理を終了する。
【００６７】
一方、ステップＳ１１０２において、更新対象トランザクションの項目「分離フラグ」の値が「０」ではないと判断した場合（ステップＳ１１０２：Ｎｏ）は、更新対象トランザクションの項目「分離フラグ」の値が「１」であるか否かを判断する（ステップＳ１１０４）。
【００６８】
ステップＳ１１０４において、更新対象トランザクションの項目「分離フラグ」の値が「１」であると判断した場合（ステップＳ１１０４：Ｙｅｓ）は、更新対象トランザクションの項目「分離フラグ」に「２」を設定する（ステップＳ１１０５）。そして、更新対象トランザクションを更新する（ステップＳ１１０６）。さらに、更新対象トランザクションを更新する際に用いた更新データをメモリなどの作業領域に格納して（ステップＳ１１０７）、一連の処理を終了する。
【００６９】
一方、ステップＳ１１０４において、更新対象トランザクションの項目「分離フラグ」の値が「１」ではないと判断した場合（ステップＳ１１０４：Ｎｏ）は、更新対象トランザクションを更新する（ステップＳ１１０８）。そして、更新対象トランザクションを更新する際に用いた更新データを用いて、既に作業領域に格納されている更新データを更新して（ステップＳ１１０９）、一連の処理を終了する。
【００７０】
オンラインプログラムは、上述したような手順により、発注データベース１１１に格納されたトランザクションを更新することによって、発注データベース１１１において、後に消去される正区画上のトランザクションだけが更新され、後に正区画となる予備区画上のトランザクションが更新されないといった事態の発生を回避することができる。
【００７１】
以上説明したように、この発明の実施の形態にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、連続する正区画に格納されているトランザクションのうち、完了トランザクションをＭＴ（磁気テープ）に集約し、未完了トランザクションを予備区画に集約することとした。このため、上記連続する正区画の全領域を空き領域とすることができる。
【００７２】
また、未完了トランザクションが格納された予備の区画を正区画に変更し、上記連続する区画のうち少なくともいずれか一つの正区画を予備の区画に変更することとした。このため、未完了トランザクションが格納された予備の区画を、オンラインプログラムによるアクセスが可能な正区画として再利用することができる。また、改めて予備の区画を設けることができるため、繰り返し、当該データベース管理処理をおこなうことができる。
【００７３】
また、オンラインプログラムによる更新データを作業領域に格納させておき、この更新データを用いて、予備の区画に格納されている未完了トランザクションを更新することとした。このため、当該データベース管理処理と平行して、オンラインプログラムを稼動させることができ、このオンラインプログラムが、予備の区画に格納される前のトランザクションを更新した場合であっても、予備の区画に格納された後の未完了トランザクションを更新することができる。
【００７４】
また、予備の区画に格納された未完了トランザクションを更新する際に、オンラインプログラムによる発注データベース１１１のアクセスを禁止することとした。このため、発注データベース１１１において、予備の区画に格納される前の未完了トランザクションだけが更新され、予備の区画に格納された後の未完了トランザクションが更新されないといった事態の発生を回避することができる。
【００７５】
以上のことから、この発明の実施の形態にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置によれば、区画整理対象と決定された正区画上のトランザクションのうち、完了トランザクションをデータベースとは別の記録媒体に集約したうえで、未完了トランザクションのみを予備区画上に集約することができるため、結果的に、区画整理対象と決定された正区画の全領域を空き領域とすることができる。したがって、オンライン処理を長時間停止させることなく、データベースの空領域を効果的に集約することができる。
【００７６】
また、未完了トランザクションが格納された予備の区画を正区画に変更し、区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更することとしてもよい。
【００７７】
これにより、未完了トランザクションが格納された予備の区画を、オンラインプログラムによるアクセスが可能な正区画として再利用することができる。また、改めて予備の区画を設けることができるため、繰り返し、当該データベース管理処理をおこなうことができる。
【００７８】
また、未完了トランザクションが予備の区画に格納されている間に当該未完了トランザクションを更新することとしてもよい。
【００７９】
これにより、当該データベース管理処理と平行して、オンラインプログラムを稼動させることができ、このオンラインプログラムが、予備の区画に格納される前のトランザクションを更新した場合であっても、予備の区画に格納された後の未完了トランザクションを更新することができる。
【００８０】
また、予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の正区画に格納されたすべてのトランザクションの更新を禁止することとしてもよい。
【００８１】
これにより、予備の区画に格納される前の未完了トランザクションだけが更新され、予備の区画に格納された後の未完了トランザクションが更新されないといった事態の発生を回避することができる。
【００８２】
なお、本実施の形態で説明したデータベース管理方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【００８３】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００８４】
（付記１）複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータに、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得させる取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定させる決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断させる判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納させる格納工程と、
を実行させることを特徴とするデータベース管理プログラム。
【００８５】
（付記２）前記格納工程によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更させる区画変更工程を、さらに前記コンピュータに実行させることを特徴とする付記１に記載のデータベース管理プログラム。
【００８６】
（付記３）前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新工程を、さらに前記コンピュータに実行させることを特徴とする付記１に記載のデータベース管理プログラム。
【００８７】
（付記４）前記更新工程は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする付記３に記載のデータベース管理プログラム。
【００８８】
（付記５）付記１〜４のいずれか一つに記載のデータベース管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【００８９】
（付記６）複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータが、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納工程と、
を実行することを特徴とするデータベース管理方法。
【００９０】
（付記７）前記格納工程によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更する区画変更工程を、さらに前記コンピュータが実行することを特徴とする付記６に記載のデータベース管理方法。
【００９１】
（付記８）前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新工程を、さらに前記コンピュータに実行させることを特徴とする付記６に記載のデータベース管理方法。
【００９２】
（付記９）前記更新工程は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする付記８に記載のデータベース管理方法。
【００９３】
（付記１０）複数の正区画および予備の区画が形成されたデータベースにアクセス可能なデータベース管理装置であって、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得手段と、
前記取得手段によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定手段と、
前記決定手段によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断手段と、
前記判断手段によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断手段によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納手段と、
を備えたことを特徴とするデータベース管理装置。
【００９４】
（付記１１）前記格納手段によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更する区画変更手段を、さらに備えたことを特徴とする付記１０に記載のデータベース管理装置。
【００９５】
（付記１２）  前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新手段を、さらに備えたことを特徴とする付記１０に記載のデータベース管理装置。
【００９６】
（付記１３）前記更新手段は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする付記１２に記載のデータベース管理装置。
【産業上の利用可能性】
【００９７】
以上のように、本発明にかかるデータベース管理プログラム、該プログラムを記録した記録媒体、データベース管理方法、およびデータベース管理装置は、あらゆる商取引契約に利用可能であり、特に、契約書の条文内容が重要視されていることにより、当事者双方の意見の対立が多く生じる、ソフトウェア開発取引契約への利用に適している。
【符号の説明】
【００９８】
１００  ＷＥＢショッピングシステム
１１０  サーバ
１１１  発注データベース
１２０  端末装置
１３０  ネットワーク
６０１  取得部
６０２  決定部
６０３  判断部
６０４  格納部
６０５  区画変更部
６０６  更新部
９００  ＭＴ（磁気テープ）
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータに、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得させる取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定させる決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断させる判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納させる格納工程と、
を実行させることを特徴とするデータベース管理プログラム。
【請求項２】
前記格納工程によって前記未完了トランザクションが格納された前記予備の区画を正区画に変更し、前記区画整理対象として決定された正区画のうち少なくともいずれか一つの正区画を予備の区画に変更させる区画変更工程を、さらに前記コンピュータに実行させることを特徴とする請求項１に記載のデータベース管理プログラム。
【請求項３】
前記未完了トランザクションが前記予備の区画に格納されている間に当該未完了トランザクションを更新させる更新工程を、さらに前記コンピュータに実行させることを特徴とする請求項１に記載のデータベース管理プログラム。
【請求項４】
前記更新工程は、
前記予備の区画に格納された未完了トランザクションを更新する際に、当該未完了トランザクション以外の前記正区画に格納されたすべてのトランザクションの更新を禁止させることを特徴とする請求項３に記載のデータベース管理プログラム。
【請求項５】
請求項１〜４のいずれか一つに記載のデータベース管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なコンピュータが、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得工程と、
前記取得工程によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定工程と、
前記決定工程によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断工程と、
前記判断工程によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断工程によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納工程と、
を実行することを特徴とするデータベース管理方法。
【請求項７】
複数の正区画および予備の区画が形成されたデータベースにアクセス可能なデータベース管理装置であって、
前記正区画ごとに、所定の処理が完了していない未完了トランザクションの数を取得する取得手段と、
前記取得手段によって取得された未完了トランザクションの数に基づいて、前記複数の正区画の中から、区画整理対象とする正区画を決定する決定手段と、
前記決定手段によって区画整理対象として決定された正区画に格納されているトランザクションごとに、当該トランザクションが前記未完了トランザクションか否かを判断する判断手段と、
前記判断手段によって前記未完了トランザクションであると判断されたトランザクションを前記予備の区画に格納し、前記判断手段によって前記未完了トランザクションではないと判断されたトランザクションを前記データベースとは別の記録媒体へ格納する格納手段と、
を備えたことを特徴とするデータベース管理装置。
【国際調査報告】
2008120359.tif 000014
2008120359.tif 000015
2008120359.tif 000016
2008120359.tif 000017