(57)【要約】【課題】データベースの世代管理を効率化して運用性を向上させる。【解決手段】表の定義を変更する日時を示す定義変更日時を取得し、現在の日時が前記定義変更日時に達している場合に当該定義変更日時に対応する表の再定義を指示するステップと、再定義の行われる表の分割定義内容を示す分割定義情報を取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定するステップと、再定義の行われる表の最大境界値を取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を前記分割単位で新規分割範囲内のデータ格納領域とする表定義を生成するステップと、次回の定義変更日時及び再定義後の最大境界値を算出して定義変更日時及び最大境界値を変更するステップとを有するものである。【選択図】        図１
2004220393.tif 000002
【特許請求の範囲】
【請求項１】
データベースの運用を管理するデータベース管理方法において、
表の定義を変更する日時を示す定義変更日時を運用に必要な情報を格納しているディクショナリから取得し、現在の日時が前記定義変更日時に達している場合に当該定義変更日時に対応する表の再定義を指示するステップと、
再定義の行われる表の分割定義内容を示す分割定義情報を前記ディクショナリから取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定するステップと、
再定義の行われる表の最大境界値を前記ディクショナリから取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を前記分割単位で新規分割範囲内のデータ格納領域とする表定義を生成するステップと、
次回の定義変更日時及び再定義後の最大境界値を算出して前記ディクショナリ内の定義変更日時及び最大境界値を変更するステップとを有することを特徴とするデータベース管理方法。
【請求項２】
前記特定された格納領域内のデータの保存が必要であることを示す情報が前記ディクショナリに格納されている場合に、前記分割単位の全データまたは一部の絞り込み単位のデータをそのデータの記憶装置とは異なる他の記憶装置内へ保存することを特徴とする請求項１に記載されたデータベース管理方法。
【請求項３】
再定義後の新規分割範囲内へデータを格納する際に、１レコード毎に上書きする形でデータを追加し、再定義前に格納されていた旧レコードと再定義後に格納された新レコードを混在させることを特徴とする請求項１または請求項２のいずれかに記載されたデータベース管理方法。
【請求項４】
データベースの運用を管理するデータベース管理装置において、
表の定義を変更する日時を示す定義変更日時を運用に必要な情報を格納しているディクショナリから取得し、現在の日時が前記定義変更日時に達している場合に当該定義変更日時に対応する表の再定義を指示するデータベース管理処理部と、
再定義の行われる表の分割定義内容を示す分割定義情報を前記ディクショナリから取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定する格納領域特定部と、
再定義の行われる表の最大境界値を前記ディクショナリから取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を前記分割単位で新規分割範囲内のデータ格納領域とする表定義を生成する表定義生成部と、
次回の定義変更日時及び再定義後の最大境界値を算出して前記ディクショナリ内の定義変更日時及び最大境界値を変更する表定義変更部とを備えることを特徴とするデータベース管理装置。
【請求項５】
データベースの運用を管理するデータベース管理装置としてコンピュータを機能させる為のプログラムにおいて、
表の定義を変更する日時を示す定義変更日時を運用に必要な情報を格納しているディクショナリから取得し、現在の日時が前記定義変更日時に達している場合に当該定義変更日時に対応する表の再定義を指示するデータベース管理処理部と、
再定義の行われる表の分割定義内容を示す分割定義情報を前記ディクショナリから取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定する格納領域特定部と、
再定義の行われる表の最大境界値を前記ディクショナリから取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を前記分割単位で新規分割範囲内のデータ格納領域とする表定義を生成する表定義生成部と、
次回の定義変更日時及び再定義後の最大境界値を算出して前記ディクショナリ内の定義変更日時及び最大境界値を変更する表定義変更部としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータベースの運用を管理するデータベース管理装置に関し、特に多次元に分割して格納されたリレーショナルデータベースに対して運用を行うデータベース管理装置に適用して有効な技術に関するものである。
【０００２】
【従来の技術】
データベース管理システムの表のデータ格納方法として、表の分割格納がある。この表分割格納の手法としては、キーレンジ分割、ハッシュ分割等が知られているが、その分割条件に使用するキーは、表を構成する列の中から１列又は複数列を連結した唯１つのキーである。また、表を構成する列の中から複数のキーを用いてそれぞれに分割条件を指定し、キーレンジ分割やハッシュ分割等を組み合わせて多次元的に分割して格納する多次元分割が知られている（例えば特許文献１参照）。
また、キーレンジ分割のキーが日時情報を格納する列であった場合のキーレンジ範囲の再定義を行うことを目的としたデータベースシステムが知られている（例えば特許文献２参照）。
【０００３】
【特許文献１】
特開２００１−３３１５０９号公報（第４−５頁、第２図）
【特許文献２】
特開２０００−０６７０７７号公報（第７−８頁、第９図）
【０００４】
【発明が解決しようとする課題】
従来技術で１つの表を１つのプロセッサ内で複数の格納領域に分割する場合、その分割条件に使用するキーは唯１つで、日時や時間間隔等時間に関するキー（以下、時間に関するキーと呼ぶ）で分割されていない表を定義したリレーショナルデータベースにおいては、格納されてから所定の期間が経過したデータがどのデータであるかを判定するのが困難である為、データを経過期間毎に他の記憶装置に保存する等の世代管理を行うことが容易ではないという問題がある。
【０００５】
前述の特許文献２に記載された技術では、表を分割するキーは唯１つであり、その分割キーは必ず日時情報を格納した列でなければならない為、１つの表定義において運用の実行単位となるキー以外の情報をキーとした分割を新たに適用することができず、保存されるデータの範囲を絞り込むことができないという問題がある。また、システムの使用者に対して提供されるのは、日時情報に対する相対的な指定方法であり、表の分割単位を意識したシステムの自動化とは異なっている。
【０００６】
また、前述の特許文献１では、分割格納技術に関して、検索時の絞込みや格納時の特定化といった観点に限定して記載しており、そこで示された多次元の分割方法を活用した運用方法については記載されていない。
【０００７】
本発明の目的は上記問題を解決し、データベースの世代管理を効率化して運用性を向上させることが可能な技術を提供することにある。
【０００８】
【課題を解決するための手段】
本発明は、データベースの運用を管理するデータベース管理装置において、表の再定義やデータの保存を登録時の時間情報で分割された表の分割単位で行うものである。
【０００９】
本発明では、多次元の分割方法を用いて登録時の時間情報で分割されたデータ格納領域を、表の再定義及び保存の実行単位とし、この実行単位で表の再定義や保存を行う。ここで、多次元に分割するキーの１つを、キーレンジ分割で分割定義した時間に関するキーとし、これを運用の基準となる分割キーとするが、他の分割キーにおける分割方法としてキーレンジ分割やハッシュ分割等を組み合わせても良い。キーレンジで分割した時間に関するキーが２つ以上存在する場合には、表の再定義及び保存を行う時に、運用の基準となる分割キーを他の分割キーに切り替えることで、運用の実行単位を選択することも可能である。
【００１０】
前記実行単位で表の再定義や保存を行う際には、まず、表の定義を変更する日時を示す定義変更日時を、運用に必要な情報を格納しているディクショナリから取得し、現在の日時が前記定義変更日時に達しているかどうかを調べた後、前記定義変更日時に達している場合には、その定義変更日時に対応する表の再定義を指示する。
【００１１】
次に、再定義の行われる表の分割定義内容を示す分割定義情報を前記ディクショナリから取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定する。
【００１２】
ここで、前記特定された格納領域内のデータの保存が必要であることを示す情報が前記ディクショナリに格納されている場合には、前記分割単位の全データまたは一部の絞り込み単位のデータをそのデータの記憶装置とは異なる他の記憶装置内へ保存する処理を行う。この際、対象となるデータ格納領域の内容をまとめて保存の単位としたり、絞り込みを行ってデータ格納領域の一部だけを保存データとして取得したり、データ格納領域について分割単位毎に分けて取得することとしても良い。
【００１３】
そして、再定義の行われる表の最大境界値を前記ディクショナリから取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を前記分割単位で新規分割範囲内のデータ格納領域とする表定義を生成した後、次回の定義変更日時及び再定義後の最大境界値を算出して前記ディクショナリ内の定義変更日時及び最大境界値を変更しておく。
【００１４】
前記の様に本発明では、時間に関するキーで分割された実行単位毎に情報管理することによって、所定の期間が経過した場合に自動的に表の再定義やデータの保存を行ったり、データベース全体の搬出及び搬入をすること無く必要なデータ格納領域だけを初期化して再利用したりすることが可能となり、運用性を向上させることができる。
【００１５】
以上の様に本発明のデータベース管理装置によれば、表の再定義やデータの保存を登録時の時間情報で分割された表の分割単位で行うので、データベースの世代管理を効率化して運用性を向上させることが可能である。
【００１６】
【発明の実施の形態】
以下にデータベースの運用を管理する一実施形態のデータベース管理装置について説明する。
【００１７】
図１は本実施形態のデータベース管理システムの概略構成を示す図である。図１の様に本実施形態のデータベース管理システムは、１個のプロセッサ１０６、又はネットワークやプロセッサ間結合装置１０１により接続されたユーザ端末１０２及び複数のプロセッサ１０６から構成され、それぞれのプロセッサ１０６における複数の外部記憶装置１０３も構成要素となる。
【００１８】
論理的なデータベース格納領域１０４は、各外部記憶装置１０３上に割り当てられ、複数の外部記憶装置１０３にまたがって割り当てられる場合もある。表や格納領域の定義情報を格納するディクショナリ１０５は外部記憶装置１０３上の格納領域に存在し、専用のプロセッサで管理される場合と、複数のプロセッサで共有して管理される場合とがある。
【００１９】
図２は本実施形態のデータベース管理処理を行うプロセッサ１０６の概略構成を示す図である。図２に示す様に本実施形態のプロセッサ１０６は、データベース管理処理部２０２と、コマンド解析部２０３と、ディクショナリ管理部２０４と、データ保存実行部２０５と、表定義生成部２０６と、表定義変更部２０７と、格納領域特定部２０８と、データベース入出力部２０９と、通信制御部２１０とを有している。
【００２０】
データベース管理処理部２０２は、表の定義を変更する日時を示す定義変更日時を運用に必要な情報を格納しているディクショナリ１０５から取得し、現在の日時が前記定義変更日時に達している場合に当該定義変更日時に対応する表の再定義を指示する処理部である。
【００２１】
コマンド解析部２０３は、ユーザ端末からＳＱＬや定義情報等を受け付ける処理部である。ディクショナリ管理部２０４は、ディクショナリ１０５を管理する処理部である。データ保存実行部２０５は、格納領域特定部２０８によって特定された格納領域内のデータの保存が必要であることを示す情報がディクショナリ１０５に格納されている場合に、その分割単位の全データまたは一部の絞り込み単位のデータをそのデータの記憶装置とは異なる他の記憶装置内へ保存する処理部である。
【００２２】
表定義生成部２０６は、再定義の行われる表の最大境界値をディクショナリ１０５から取得し、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を分割キーによる分割単位で新規分割範囲内のデータ格納領域とする表定義を生成する処理部である。
【００２３】
表定義変更部２０７は、次回の定義変更日時及び再定義後の最大境界値を算出してディクショナリ１０５内の定義変更日時及び最大境界値を変更する処理部である。格納領域特定部２０８は、再定義の行われる表の分割定義内容を示す分割定義情報をディクショナリ１０５から取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定する処理部である。
【００２４】
データベース入出力部２０９は、データの入出力を司る処理部である。通信制御部２１０は、他プロセッサとの通信を制御する処理部である。
【００２５】
プロセッサ１０６をデータベース管理処理部２０２、コマンド解析部２０３、ディクショナリ管理部２０４、データ保存実行部２０５、表定義生成部２０６、表定義変更部２０７、格納領域特定部２０８、データベース入出力部２０９及び通信制御部２１０として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２６】
本実施形態ではデータベース管理処理部２０２の前記機能コンポーネントが全てのプロセッサに装備される場合と、各プロセッサの役割に応じて装備される機能コンポーネントがプロセッサ毎に異なる場合とがあり、通信制御部２１０は、複数のプロセッサ構成の場合に限り、全てのプロセッサに備えられているものとする。
【００２７】
図３は本実施形態のディクショナリ表の内容例を示す図である。図３の様に本実施形態では、多次元に分割した表のディクショナリ情報以外に必要な情報を、ディクショナリ表に格納する。
【００２８】
次回変更時表定義ＳＱＬ情報管理表３１０は、次の表再定義時の表定義ＳＱＬに関する情報を管理する表であり、表名列３１１、表の再定義を行う日時を格納する定義変更日時列３１２、表の再定義ＳＱＬに設定する最大境界値３１３、表の再定義ＳＱＬを格納する表定義ＳＱＬ列３１４等から構成されている。
【００２９】
データ保存情報管理表３２０は、データを保存する際の情報を管理する表であり、データの保存が必要であるかどうかを示す情報を格納するデータ保存要否列３２２、保存の単位を分割単位数で示すデータ保存単位列３２３、保存データの絞込み単位を示す絞込み単位列３２４等から構成されている。
【００３０】
表定義変更情報管理表３３０は、表定義変更時の情報を管理する表であり、格納領域を再利用するか予備領域を使用するかの情報を格納する格納領域指定列３３２、新レコードのみを格納するか新旧レコードを混在させるかの情報を格納する格納種別列３３３、格納領域の初期化の要否を示す情報を格納する格納領域初期化列３３４、表定義変更後に運用時間の現在日時と比較する情報を格納する列名を格納する運用列名列３３５等から構成されている。これらの情報が表の再定義に関する情報である。
【００３１】
これら以外にも、ディクショナリ１０５には表を多次元に分割する為の情報も格納しており、多次元分割表に関する定義情報や境界値に関する情報等も存在しているものとする。
【００３２】
図４は本実施形態のシステムのデータ格納領域を多次元に分割するＳＱＬの表定義文の一例とその分割イメージを示す図である。このＳＱＬはサポートするデータベースシステムによって文法が異なるものであるが、本実施形態では図に示された文法に従うものとする。
【００３３】
図４の様に本実施形態では２つの列（登録日時、地域コード）をそれぞれ独立した分割キーとしており、各キーとも３つのキーレンジで分割されているので、データ格納領域は１６個に分割されることになる。しかし、本実施形態で利用する多次元分割による表の分割方法においては分割キーの数、及び１つの分割キーによる分割には特に上限が無い為、実際には膨大な数の格納領域に分割した表を使用でき、３次元以上に分割したシステムに対しても適用が可能である。
【００３４】
各格納領域は多次元分割による表の分割方法に従って割り当てられることになる。本実施形態の分割イメージは登録日時列の軸と地域コードの軸で表した２次元イメージだが、第１分割キーの１番目の範囲かつ第２分割キーの１番目から４番目の範囲を満たすデータをそれぞれ格納する格納領域（Ａ１１、Ａ１２、Ａ１３、Ａ１４）、第１分割キーの２番目の範囲かつ第２分割キーの１番目から４番目の範囲を満たすデータをそれぞれ格納する格納領域（Ａ２１、Ａ２２、Ａ２３、Ａ２４）、第１分割キーの３番目、４番目についても同じ様に、順番で全ての組み合わせを満足する格納領域を割り当てる。本実施形態における運用の基準となる分割キーは、第１分割キーである登録日時列である。
【００３５】
図５から図９までは、図４の例に示した表で定義したデータベースにおいて本実施形態の運用を行った場合の分割イメージを表している。
図５は本実施形態のデータ格納領域を再利用する典型的な運用の一例を示す図である。図５の典型的な運用では、図４の例に示した表で定義したデータベースの運用において、表の定義変更日時が‘２００４−０３−３１’である場合には、現在日時がこの定義変更日時に到達した時に、ディクショナリ１０５に格納されている表の再定義に関する情報を基に表の再定義をデータベース管理処理部２０２が行う。この時、登録日時列の境界値を‘２００３−０３−３１’、‘２００４−０３−３１’、‘２００５−０３−３１’として再定義し、格納領域Ａ１１、Ａ１２、Ａ１３、Ａ１４を、第１分割キーの４番目の範囲を満たすデータを格納する領域として再利用する。
【００３６】
図６は本実施形態のデータ格納領域に予備領域を使用する運用の一例を示す図である。図６の予備領域を使用する運用では、図４の例に示した表と比較して、登録日時列を‘２００２−０３−３１’、‘２００３−０３−３１’の２つの境界値で分割しており、格納領域Ａ４１、Ａ４２、Ａ４３、Ａ４４を予備領域としている。
【００３７】
図６のデータベースの運用において、表の定義変更日時が‘２００３−０３−３１’である場合には、現在日時がこの定義変更日時に到達した時に、ディクショナリ１０５に格納されている表の再定義に関する情報を基に表の再定義をデータベース管理処理部２０２が行い、この時、登録日時列の境界値は‘２００３−０３−３１’、‘２００４−０３−３１’として再定義し、予備領域Ａ４１、Ａ４２、Ａ４３、Ａ４４を、第１分割キーの３番目の範囲を満たすデータを格納する領域として使用する。格納領域Ａ１１、Ａ１２、Ａ１３、Ａ１４はデータ保存実行後に初期化される。この運用は、例えばデータ格納領域を従来より増加する場合等に有効である。
【００３８】
図７は本実施形態の表の再定義及び保存単位を２分割分とする運用の一例を示す図である。図７の２分割分単位の運用では、図４の例に示した表で定義したデータベースの運用において、表の定義変更日時が‘２００４−０３−３１’である場合には、現在日時がこの定義変更日時に到達した時に、ディクショナリ１０５に格納されている表の再定義に関する情報を基に表の再定義をデータベース管理処理部２０２が行い、この時、登録日時列の境界値を‘２００４−０３−３１’、‘２００５−０３−３１’、‘２００６−０３−３１’として再定義し、格納領域Ａ１１、Ａ１２、Ａ１３、Ａ１４を、第１分割キーの３番目の範囲を満たすデータを格納する領域、格納領域Ａ２１、Ａ２２、Ａ２３、Ａ２４を、第１分割キーの４番目の範囲を満たすデータを格納する領域として再利用する。
【００３９】
図８は本実施形態の表の再定義時にデータ格納領域を変更する運用の一例を示す図である。図８のデータ格納領域を変更する運用では、図４の例に示した表で定義したデータベースの運用において、第１分割キーの１番目の範囲を満たすデータを格納する領域を全てＡ１１とし、第１分割キーの２番目の範囲を満たすデータを格納する領域を全てＡ２２としている。表の定義変更日時が‘２００４−０３−３１’である場合には、現在日時がこの定義変更日時に到達した時に、ディクショナリ１０５に格納されている表の再定義に関する情報を基に表の再定義をデータベース管理処理部２０２が行い、この時、登録日時列の境界値を‘２００３−０３−３１’、‘２００４−０３−３１’、‘２００５−０３−３１’として再定義し、格納領域Ａ１１、Ａ１２、Ａ１３、Ａ１４を第１分割キーの４番目の範囲を満たすデータを格納する領域として再利用する。この運用は、初期後又は予備領域使用時に有効である。
【００４０】
図９は本実施形態の運用のキーとなる分割キーを変更する運用の一例を示す図である。図９の分割キーを変更する運用では、図４の例に示した表で定義したデータベースの運用において、第１分割キーを登録月日列としている。表の定義変更日時が‘２００４−０３−３１’である場合には、現在日時がこの定義変更日時に到達した時に、ディクショナリ１０５に格納されている表の再定義に関する情報を基に表の再定義をデータベース管理処理部２０２が行い、この時、運用時の現在日時と比較する対象となる分割キーを、運用列名３３５で指定された登録月日列に切り替え、定義変更日時を登録月日列の境界値、例えば‘０９−３０’に変更する。ここで特にデータの保存を行う必要は無い。この運用は、データ保存間隔を変更する場合等に有効である。
【００４１】
本実施形態では、前記各運用方法で記載したデータの保存に関して、再利用する格納領域に格納されているデータついて、ディクショナリ１０５のデータ保存要否列３２２の内容がデータ保存の必要なことを示している場合にはデータ保存を行う。また予備領域使用に使用されなくなった格納領域に格納されているデータについて、データ保存要否列３２２の内容がデータ保存の必要なことを示している場合にはデータ保存を行う。更に、ディクショナリ１０５の絞込み単位列の内容に応じて必要な格納領域の情報のみを取得して保存することも可能である。
【００４２】
また、データを格納領域に格納する場合の格納方法について、表の再定義時に格納領域を再利用かつ初期化を行わない場合にディクショナリ１０５の格納種別列３３３から情報を取得し、新旧レコードを混在させる方法が選択されていた場合には、使用者には新規のデータ格納領域として示しながら、１レコード毎に上書きする形でデータを追加し、格納してあるデータには新旧の違いを示す情報をレコード単位で保持させることにより、データベース管理処理部２０２が管理するものとする。
【００４３】
この様に新旧レコードを混在させる様にすることにより、新レコードを格納する前の初期化処理を省略して再利用時の処理負荷を低減したり、旧レコードを読み出す必要が生じた場合に上書きされずに残っている旧レコードを読み出すことにより読み出し効率を向上させたり、旧レコードを再びデータベースで利用する必要が生じた場合に上書きされたレコード部分のみを保存データから復元することにより復元時の処理負荷を低減することができる。
【００４４】
図１０は本実施形態の運用の処理手順を示すフローチャートである。本実施形態では、まず運用開始時に使用者が表の再定義及びデータ保存に関する情報の初期設定を行っておく。
【００４５】
ステップ１００１でプロセッサ１０６のデータベース管理処理部２０２は、表の定義を変更する日時を示す定義変更日時を、運用に必要な情報を格納しているディクショナリ１０５から取得した後、現在日時を監視して定義変更日時に到達しているかを判定し、現在の日時が前記定義変更日時に達している場合にはステップ１００２へ進み、当該定義変更日時に対応する表の再定義を指示して表の再定義を開始する。
【００４６】
ステップ１００２で格納領域特定部２０８は、再定義の行われる表の分割定義内容を示す分割定義情報をディクショナリ１０５から取得し、表の再定義により再利用または予備領域との入れ替えの対象となる格納領域をその分割単位で特定する。
【００４７】
ステップ１００３では、ディクショナリ管理部２０４を通して取得したデータ保存要否列３２２から情報を取得してデータ保存の実行要否を判定し（１００３）、データ保存を実行する場合にはステップ１００４へ進み、データ保存実行部２０５によりデータの保存を行う。
【００４８】
ステップ１００５では、ディクショナリ管理部２０４を通して取得した格納領域指定列から情報を取得して格納領域を再利用するか予備領域を使用するかを判定し、予備領域を使用する場合には、ステップ１００６でディクショナリ管理部２０４を通して予備領域情報を取得した後、ステップ１００９で表定義変更部２０７に制御を渡して表定義変更を行う。
【００４９】
また前記ステップ１００５において格納領域を再利用する場合には、ステップ１００７でディクショナリ管理部２０４を通して格納領域初期化列から情報を取得して初期化を行うかどうかを判定した後、初期化を行う場合にはステップ１００８に進んで、再利用する対象となる格納領域を初期化した後、ステップ１００９で表定義変更部２０７に制御を渡して表定義変更を行う。
【００５０】
図１１は本実施形態の表定義変更の処理手順を示すフローチャートである。ステップ１１０１で表定義変更部２０７は、ディクショナリ管理部２０４を通して表定義ＳＱＬ列の情報を取得した後、表定義ＳＱＬが格納されているかどうかを判定し、表定義ＳＱＬが格納されていない場合にはステップ１１０２へ進み、表定義生成部２０６に制御を渡す。
【００５１】
ステップ１１０２で表定義生成部２０６は、ディクショナリ管理部２０４を通してディクショナリ表から最大境界値、格納領域指定、運用列名の各情報と、表の分割定義情報を受け取り、その最大境界値を分割範囲内部の分割キーとし、再利用される格納領域または予備領域を、前記分割キーの分割単位で新規分割範囲内のデータ格納領域とする表定義ＳＱＬを生成し、その生成した表定義ＳＱＬをディクショナリ１０５に登録して、表定義変更部２０７に制御を渡す。
【００５２】
ここで前記表定義ＳＱＬ生成では、運用の基準となる分割キーによる分割を、表定義変更前の分割に対して、格納領域のｎ番目（ｎ＞１）の範囲が（ｎ−１）番目の範囲となる様に行い、表定義生成部２０６が取得した最大境界値を格納領域の新しい境界値に設定することで新規分割範囲を決めるものとする。
【００５３】
ステップ１１０３で表定義変更部２０７は、ディクショナリ管理部２０４を通して表定義ＳＱＬを取得し、そのＳＱＬにより表定義の変更を行う。次にステップ１１０４で表定義変更部２０７は、次回の定義変更日時及び再定義後の最大境界値を算出し、ディクショナリ管理部２０４を通してディクショナリ１０５に次回表定義情報として登録する。
【００５４】
ここで前記次回の定義変更日時の算出において、運用の基準となる分割キーが日時（時刻）を表している情報の場合には、変更前の分割における最大境界値を次回の定義変更日時とし、運用の基準となる分割キーが時間間隔を表している情報の場合には、定義変更時の日時から変更前の分割における最大境界値の時間間隔を足した日時を次回の定義変更時の日時とする。
【００５５】
また前記再定義後の最大境界値の算出方法において、変更前の分割における格納領域の１番目の範囲（時間間隔）を求め、その値をＩ（Ｉ＞０）として、変更前の分割における最大境界値にＩを足した値を、再定義後の最大境界値とする。
表定義変更後、ステップ１１０５で表定義変更部２０７は、ディクショナリ管理部２０４を通してディクショナリ１０５から表定義ＳＱＬを削除する。
【００５６】
図１２は本実施形態のデータ保存の処理手順を示すフローチャートである。データ保存実行部２０５に渡された制御は格納領域特定部２０８に渡され、ステップ１２０１で格納領域特定部２０８は、ディクショナリ管理部２０４を通して絞込み単位列３２４から情報を取得し、データ保存対象となる格納領域を特定する。例えば表の再定義により再利用または予備領域との入れ替えの対象となる格納領域の全てをデータ保存対象としたり、またはその内のＡ１１やＡ２１等の一部の絞り込み単位のデータをデータ保存対象とする。
【００５７】
続けてステップ１２０２でデータ保存実行部２０５は、ディクショナリ管理部２０４を通してデータ保存単位列３２３から情報を取得し、そのデータ保存単位でデータを分割して、そのデータが格納されている記憶装置とは異なる他の記憶装置内に格納し、データ保存を実行する。
【００５８】
図１３は本実施形態の使用者によるデータ保存内容変更の処理手順を示すフローチャートである。ステップ１３０１でコマンド解析部２０３は、ユーザ端末２０１より定義指定変更の指示が入力されているかどうかを調べ、定義指定変更の指示が入力されている場合にはその指示を受け取ってステップ１３０２へ進む。
【００５９】
ステップ１３０２では、前記指示により入力された格納領域指定、格納種別、格納領域初期化、運用列名の各指定内容をディクショナリ管理部２０４に渡し、ディクショナリ１０５に登録する。
【００６０】
続けてステップ１３０３でコマンド解析部２０３は、ユーザ端末２０１より表定義ＳＱＬ変更の指示が入力されているかどうかを調べ、表定義ＳＱＬ変更の指示が入力されている場合にはその指示を受け取ってステップ１３０４へ進む。ステップ１３０４では、前記指示により入力された表定義ＳＱＬをディクショナリ管理部２０４に渡し、ディクショナリ１０５に登録する（１３０４）。
【００６１】
前記の様に本実施形態によれば、所定の期間が経過した場合にデータベース管理システムにより自動的に表の再定義及びデータ保存を行うことが可能になり、また、データ保存対象となるデータを表の分割単位で絞り込んで必要な情報だけ保存することや、表の分割単位で分けて保存することが可能となる為、容易にデータベースの世代管理を行うことができ、運用性が向上するという効果がある。
【００６２】
以上説明した様に本実施形態のデータベース管理装置によれば、表の再定義やデータの保存を登録時の時間情報で分割された表の分割単位で行うので、データベースの世代管理を効率化して運用性を向上させることが可能である。
【００６３】
【発明の効果】
本発明によれば表の再定義やデータの保存を登録時の時間情報で分割された表の分割単位で行うので、データベースの世代管理を効率化して運用性を向上させることが可能である。
【図面の簡単な説明】
【図１】本実施形態のデータベース管理システムの概略構成を示す図である。
【図２】本実施形態のデータベース管理処理を行うプロセッサ１０６の概略構成を示す図である。
【図３】本実施形態のディクショナリ表の内容例を示す図である。
【図４】本実施形態のシステムのデータ格納領域を多次元に分割するＳＱＬの表定義文の一例とその分割イメージを示す図である。
【図５】本実施形態のデータ格納領域を再利用する典型的な運用の一例を示す図である。
【図６】本実施形態のデータ格納領域に予備領域を使用する運用の一例を示す図である。
【図７】本実施形態の表の再定義及び保存単位を２分割分とする運用の一例を示す図である。
【図８】本実施形態の表の再定義時にデータ格納領域を変更する運用の一例を示す図である。
【図９】本実施形態の運用のキーとなる分割キーを変更する運用の一例を示す図である。
【図１０】本実施形態の運用の処理手順を示すフローチャートである。
【図１１】本実施形態の表定義変更の処理手順を示すフローチャートである。
【図１２】本実施形態のデータ保存の処理手順を示すフローチャートである。
【図１３】本実施形態の使用者によるデータ保存内容変更の処理手順を示すフローチャートである。
【符号の説明】
１０１…プロセッサ間結合装置、１０２…ユーザ端末、１０３…外部記憶装置、１０４…データベース格納領域、１０５…ディクショナリ、１０６…プロセッサ、２０１…ユーザ端末、２０２…データベース管理処理部、２０３…コマンド解析部、２０４…ディクショナリ管理部、２０５…データ保存実行部、２０６…表定義生成部、２０７…表定義変更部、２０８…格納領域特定部、２０９…データベース入出力部、２１０…通信制御部、３１０…次回変更時表定義ＳＱＬ情報管理表、３１１…表名列、３１２…定義変更日時列、３１３…最大境界値、３１４…表定義ＳＱＬ列、３２０…データ保存情報管理表、３２１…表名列、３２２…データ保存要否列、３２３…データ保存単位列、３２４…絞込み単位列、３３０…表定義変更情報管理表、３３１…表名列、３３２…格納領域指定列、３３３…格納種別列、３３４…格納領域初期化列、３３５…運用列名列。
【図１】
2004220393.tif 000003
【図２】
2004220393.tif 000004
【図３】
2004220393.tif 000005
【図４】
2004220393.tif 000006
【図５】
2004220393.tif 000007
【図６】
2004220393.tif 000008
【図７】
2004220393.tif 000009
【図８】
2004220393.tif 000010
【図９】
2004220393.tif 000011
【図１０】
2004220393.tif 000012
【図１１】
2004220393.tif 000013
【図１２】
2004220393.tif 000014
【図１３】
2004220393.tif 000015