(57)【特許請求の範囲】
【請求項１】
データベースに対してレコードの挿入、変更及び削除を行う情報処理装置であって、
前記データベースにレコードを挿入するためのレコードの挿入ページとページ内の論理的な挿入位置とページ内に挿入可能なレコードの件数とが設定された間隔情報保持手段と、
前記データベースにレコードを挿入、変更及び削除する指示をレコード名で発行する手段と、
前記データベースへのレコード挿入指示が発行された場合、前記間隔情報保持手段に設定されている初めのレコードと同じレコードについて、前記データベース上の初めのレコードのページにおける挿入済みのレコードの次の位置にレコードを挿入する一方、前記間隔情報保持手段に設定されている初めのレコードに対する次のレコードについては、前記データベース上の初めのレコードに設定されている件数分の間隔をおいた次のレコードの最初の位置にレコードを挿入する手段と
を具備したことを特徴とする情報処理装置。
【請求項２】
請求項１記載の情報処理装置において、
前記間隔情報保持手段に対してレコードの挿入ページとページ内の論理的な挿入位置とページ内に挿入可能なレコードの件数とを設定する間隔情報設定手段をさらに具備したことを特徴とする情報処理装置。
【請求項３】
データベースに対してレコードの挿入するデータベースへのレコード挿入方法であって、
前記データベースにレコードを挿入する指示がレコード名で発行された場合、間隔情報保持手段に設定されている初めのレコードと同じレコードについて、前記データベース上の初めのレコードのページにおける挿入済みのレコードの次の位置にレコードを挿入する一方、前記間隔情報保持手段に設定されている初めのレコードに対する次のレコードについては、前記データベース上の初めのレコードに設定されている件数分の間隔をおいた次のレコードの最初の位置にレコードを挿入することを特徴とするデータベースへのレコード挿入方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばコンピュータなどの情報処理装置及びデータベースへのレコード挿入方法に関する。
【０００２】
【従来の技術】
従来から、データベース（ＤＢ）、例えばリレーショナルデータベース（ＲＤＢ）等は、蓄積（登録）したデータをキーワード検索するといった用途で利用されているが、ＲＤＢに登録されているデータ量が多くなると、データベースそのものの検索処理に時間がかかるためアクセス性能を向上することが望まれている。
【０００３】
従来、ＲＤＢはデータベース管理システム（Database Management System，ＤＢＭＳ）により管理されている。ＤＢＭＳには、ＲＤＢのアクセス性能を向上させることを目的としてクラスタリング機能が備えられている。このクラスタリング機能はデータを所定単位毎に区分して格納する機能である。
【０００４】
通常、ＤＢＭＳでは、ユーザ側、つまりアプリケーション側からインデックスは定義できるものの、それはあくまでも論理的な定義であって、データベース内のどの位置にレコードを挿入するかといったＤＢ内の物理的なレコードの挿入位置の指定はできない。
【０００５】
ＤＢにレコードを格納する形態としては追加型と挿入型があり、追加型とは、新規レコードを現格納レコードの後に格納する形態である。また挿入型とは、新規レコードをクラスターキーの順序に従って格納する形態である。
【０００６】
【発明が解決しようとする課題】
ところで、従来のＤＢＭＳでは、レコードを挿入する場合にクラスタリング機能によって、新たなレコードは関係するレコードの近傍に格納されるため、導入初期には、論理的に別ページとすべきレコードが同じページに混在してしまい、競合が発生しやすい状況になるという問題があった。
【０００７】
そこで、この状況を回避するために、従来はデータベースの監視を行い、データベースの再編成を随時行って、記憶間隔を広めるような運用を行っている。
【０００８】
しかし、データベースに蓄積されるデータ量が多くなってくると、データベースの監視及び運用を行って競合を回避するだけでは、データベースの検索速度が遅くなる一方であり、今後のさらなるデータの増加に対応できないという問題がある。
【０００９】
本発明はこのような課題を解決するためになされたもので、データベースアクセス時の競合をなくし検索性能を向上すると共に、データベース運用時の作業を軽減することのできる情報処理装置及びデータベースへのレコード挿入方法を提供することを目的としている。
【００１０】
【課題を解決するための手段】
上記した目的を達成するために、請求項１記載の発明は、データベースに対してレコードの挿入、変更及び削除を行う情報処理装置であって、前記データベースにレコードを挿入するためのレコードの挿入ページとページ内の論理的な挿入位置とページ内に挿入可能なレコードの件数とが設定された間隔情報保持手段と、前記データベースにレコードを挿入、変更及び削除する指示をレコード名で発行する手段と、前記データベースへのレコード挿入指示が発行された場合、前記間隔情報保持手段に設定されている初めのレコードと異なるレコードについて、前記データベース上の挿入対象の該当レコードのページの最初の位置に、挿入指示されたレコードを挿入する手段とを具備したことを特徴としている。
【００１１】
請求項２記載の発明は、請求項１記載の情報処理装置において、前記間隔情報保持手段に対してレコードの挿入ページとページ内の論理的な挿入位置とページ内に挿入可能なレコードの件数とを設定する間隔情報設定手段をさらに具備したことを特徴としている。
【００１３】
請求項３記載の発明は、データベースに対してレコードの挿入するデータベースへのレコード挿入方法であって、前記データベースにレコードを挿入する指示がレコード名で発行された場合、間隔情報保持手段に設定されている初めのレコードと同じレコードについて、前記データベース上の初めのレコードのページの挿入済みのレコードの次の位置にレコードを挿入する一方、前記間隔情報保持手段に設定されている初めのレコードに対する次のレコードについては、前記データベース上の初めのレコードに設定されている件数分の間隔をおいた次のレコードの最初の位置にレコードを挿入することを特徴としている。
【００１４】
請求項１，３記載の発明では、データベースにレコードを挿入する指示が発行されると、間隔情報保持手段に保持されている初めのレコードと同じレコードについて、データベース上の初めのレコードのページにおける挿入済みのレコードの次の位置にレコードを挿入する一方、前記間隔情報保持手段に設定されている初めのレコードに対する次のレコードについては、前記データベース上の初めのレコードに設定されている件数分の間隔をおいた次のレコードの最初の位置にレコードを挿入するので、データベース内が論理的にも物理的にも区分されるようになり、データベースの検索性能を向上することができる。また、従来行っていたデータベースの監視や記憶間隔を広めるようなデータベースの再編成作業が不要になり、データベース運用時の作業を軽減することができる。
【００１５】
請求項２記載の発明では、間隔情報保持手段に対してレコードの挿入ページとページ内の挿入位置とページ内に挿入可能なレコードの件数とを設定する間隔情報設定手段を持つことで、よりフレキシブルに間隔設定を行うことができる。
【００１６】
また、レコード名とこのレコード名のページ数で間隔情報を設定することで、予めページ数が決められた業務などに適したデータベースをを構築できる。また、レコード名とこのレコード名のページに挿入可能な件数とで間隔情報を設定することで、インデックスを持つ辞書を検索するようにデータベースを検索できるようになり、データベースの検索性能を向上することができる。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
図１は本発明の情報処理装置及びデータベースへのレコード挿入方法に係る第１実施形態のデータベース検索システムの構成を示す図である。
【００１９】
同図に示すように、このデータベース検索システムは、ＳＱＬ発行処理部１ａを有する業務処理部１とデータベース管理システム（Database Management System：ＤＢＭＳ）２とから構成されている。
【００２０】
ＤＢＭＳ２は、ロード処理部３、ＳＱＬ判定処理部４、挿入処理部５、更新処理部６、削除処理部７、インターバル設定処理部８、インターバルテーブル９、インターバル判定処理部１０、レコード挿入処理部１１及びデータベース１２などから構成されている。
【００２１】
ロード処理部３は格納対象のデータをロードするときに動作する処理部である。ＳＱＬ判定処理部４はＳＱＬを判断し、挿入処理であるか、更新処理であるか、あるいは削除処理であるかを判定する。インターバルテーブル９はインターバルが設定されるテーブルである。インターバル設定処理部８は業務内容に応じたインターバルデータをインターバルテーブル９に設定する。業務処理部１は一つの業務プログラムであり、コンピュータのハードディスク装置などにインストールされている。ＳＱＬ発行処理部１ａは業務処理部１の一つのモジュールであり、ＳＱＬを発行する処理を行う。挿入処理部５はレコードの挿入処理を行う。更新処理部６はレコードの更新処理を行う。削除処理部７はレコードの削除処理を行う。インターバル判定処理部１０は挿入処理で必要とするインターバルを判断する。データベース１２はデータを物理的に関連づけて格納する部分である。レコード挿入処理部１１はインターバル判定処理部１０によって起動され、起動すると、データベース１２に対してレコードの挿入処理を実行する。レコード挿入処理部１１はレコードインターバル機能、ページインターバル機能、簡易インターバル機能などを有している。これら各機能については後述する。
【００２２】
図２のフローチャートを参照して、このデータベース検索システムの動作を説明する。図２はこのデータベース検索システムの動作を示すフローチャートである。
【００２３】
同図に示すように、インターバル設定処理部８は予め業務内容に応じたインターバルデータを生成し、それをインターバルテーブル９へ設定する。インターバルデータとはレコード挿入時にその基本となる情報である。
【００２４】
業務処理部１にてＳＱＬ発行処理部１ａが起動されてＳＱＬ発行処理が行われ、ＳＱＬが発行されると（図２のＳ１０１）、そのＳＱＬを受け取ったＳＱＬ判定処理部４によりレコードの挿入処理かそれ以外の処理かがまず判定される（Ｓ１０２）。
【００２５】
この判定結果、レコードの更新処理、あるいは削除処理であれば（Ｓ１０２のＮｏ）、更新処理部６あるいは削除処理部７がデータベース格納部１２に対してレコードの更新処理あるいは削除処理を行う（Ｓ１０３）。
【００２６】
一方、上記判定結果、挿入処理と判定された場合は（Ｓ１０２のＹｅｓ）、ＳＱＬ判定処理部４によって挿入処理部５が起動されてレコードの挿入処理に移り、インターバル判定処理部１０がインターバル判定処理を行う。
【００２７】
インターバル判定処理部１０では、既に設定されているインターバルテーブル９からレコード挿入時の情報、つまりインターバルデータを取得し、レコード挿入処理部１１を起動する。
【００２８】
起動したレコード挿入処理部１１は、インターバルテーブルを検索し（Ｓ１０４）、インターバルデータを発見（存在）すると（Ｓ１０５）、レコードインターバル機能、ページインターバル機能、簡易インターバル機能などで、データベース１２へのレコードの挿入位置を決定し（Ｓ１０６）、データベース１２に対して物理的なレコードの挿入処理を実行し（Ｓ１０７）、データベース１２にレコードを挿入した後、処理を終了する。
【００２９】
以下に、上記レコード挿入処理部１１におけるレコード挿入動作の具体例を説明する。
【００３０】
まず、図３を参照してレコードインターバル機能によるレコード挿入動作について説明する。
このレコードインターバル機能では、レコードの挿入ページとページ内の挿入位置とページ内に挿入可能なレコードの件数とがインターバルテーブル９に設定される。
【００３１】
図３に示すように、例えばデータベース１２にこれから挿入する初めのレコードをレコードＡ、次に挿入するレコードをＢとすると、インターバルテーブル９には、レコード名としてＡ−＊、件数としてｍを設定し、レコード名としてＢ−＊、件数としてｎを設定する。
【００３２】
このようにインターバルテーブル９に、データベース１２へ挿入するレコードについてそれぞれｍ件、ｎ件と設定し、例えばレコードＡ−１の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、データベース１２のレコードＡのページの最初の位置にレコードＡ−１を挿入する。
【００３３】
次に、レコードＡ−２の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、レコードＡのページのレコードＡ−１の次の位置にレコードＡ−２を挿入する。
【００３４】
さらに、レコードＢ−１の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、レコードＢのページの最初の位置にレコードＢ−１を挿入する。
【００３５】
このようにインターバルテーブル９に、ページ毎にレコードを挿入する件数までの情報を事前に設定しておくことで、論理的に別ページにすべきレコードがデータベース１２の同一ページ内に物理的に混在することがなくなる。つまり、論理的にも物理的にもレコードが区分されてデータベース１２にデータを登録できるようになる。
【００３６】
例えばデータベース１２に数万件のデータを記録するような場合、事前に１ページ内に登録可能な件数を設定しておき、その範囲でページ単位に論理的に同じレコードを整理して挿入し、データを登録してゆくことで、各レコードに登録したデータが何万件であってもデータベース１２をページ単位で検索することでデータベース１２の検索及びアクセス速度を向上することができる。
【００３７】
より具体的には、例えばレコードＡのページを東京都のページ、レコードＡ−１を品川区、レコードＡ−２を足立区、レコードＢのページを大阪府のページ、レコードＢ−１を大阪市などとすると、東京都のページＡには、２３区、２７市分の件数（領域）を確保しておけばよく、このような間隔でレコードがデータベース１２に挿入される。したがって、データベース１２に、新たに豊島区などのレコードを挿入する場合は、空いている東京都のページＡ内に豊島区としてのレコードが挿入されることになる。
【００３８】
このようにレコードが挿入されたデータベース１２を検索する場合、東京都のデータを検索する処理と大阪府のデータを検索する処理との競合がなくなり、データベース検索性能の向上を図ることができる。
【００３９】
続いて、図４を参照してページインターバル機能によるレコード挿入動作について説明する。
【００４０】
このページインターバル機能では、挿入するレコードの名称とこのレコードを挿入するページ数がインターバルデータとしてインターバルテーブル９に設定される。
【００４１】
図４に示すように、例えばこれから挿入する初めのレコードをレコードＡ、次に挿入するレコードをＢとすると、インターバルテーブル９には、レコード名としてＡ−＊、ページとして“１”を設定し、レコード名としてＢ−＊、ページとして“２”を設定する。
【００４２】
この場合、データベース１２にはｍ件のレコードが収容可能であり、ｎページ分のレコードが挿入されるものとする。
【００４３】
このようにインターバルテーブル９に、データベース１２へ挿入するレコードについてそれぞれの挿入ページを設定しておくことで、例えばレコードＡ−１の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、レコードＡのページ、つまり１ページ目にレコードＡ−１を挿入する。
【００４４】
次に、レコードＡ−２の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、レコードＡのページ（１ページ目のレコードＡ−１の後）にレコードＡ−２を挿入する。
【００４５】
さらに、レコードＢ−１の挿入を指示すると、レコード挿入処理部１１はインターバルテーブル９を参照し、レコードＢのページ、つまり２ページ目にレコードＢ−１を挿入する。
【００４６】
このようにインターバルテーブル９に、レコードを挿入するページを事前に設定しておくことで、データベースの同一ページに論理的に別ページとすべきレコードが混在することがなくなる。
【００４７】
このページインターバル機能は、ページ数が予め決まっている業務、例えば１年分１２枚のページに月報を作るといったときに有効である。
【００４８】
さらに、図５を参照して簡易インターバル機能によるレコード挿入動作について説明する。
【００４９】
この簡易インターバル機能では、レコードの挿入間隔情報として一定のインターバル（ページ単位という情報）がインターバルテーブル９に設定される。
【００５０】
したがって、すべてのレコードを挿入する場合、レコード挿入処理部１１はインターバルテーブル９を参照するが、ページ指定はあるものの、ページ内における挿入位置の指定がないので、ページ内の空いている領域にレコードを挿入する。つまり、１つのページ内であれば、その中のどの位置にでもレコードが挿入される。
【００５１】
この簡易インターバル機能は、１ページに挿入されるレコードの件数が固定で決まっているような業務、例えば１年のデータであれば１２件と決まっているような場合に有効である。
【００５２】
このようにこの第１実施形態のデータベース検索システムでは、データベース１２へのレコード挿入時に、物理的なレコードの挿入間隔情報であるインターバルをインターバルテーブルにて指定することにより、論理的に別ページにすべきレコードが同一ページ内に混在する状態がなくなり、データ検索時の競合をなくすことができる。
【００５３】
また、論理的に別ページにすべきレコードが同一ページ内に混在する状態を回避するために従来行われていたＤＢ監視および再編成の作業が不要となり、作業性も向上することができる。
【００５４】
すなわち、業務内容を分析し、データベース１２に挿入するレコードのインターバルデータをＤＢＭＳ２に設定しておくことによって、データベース１２の検索性能を向上すると共に、このデータベース検索システムの運用における作業性を大幅に向上することができる。
【００５５】
次に、図６を参照して本発明のデータベース検索システムに係る第２実施形態について説明する。図６は第２実施形態のデータベース検索システムの構成を示す図である。
【００５６】
このデータベース検索システムは、上記第１実施形態の変形例であり業務処理部３０とデータベース管理システム（Database Management System：ＤＢＭＳ）４０とから構成されている。
【００５７】
業務処理部３０はＳＱＬ発行処理部１ａ、ＳＱＬ判定処理部４、インターバル設定処理部８などの各モジュールを有するアプリケーションである。
【００５８】
ＤＢＭＳ４０は、ロード処理部３、挿入処理部５、更新処理部６、削除処理部７、インターバルテーブル９、インターバル判定処理部１０、レコード挿入処理部１１及びデータベース１２などから構成されている。
【００５９】
すなわち、この第２実施形態は、業務処理部（アプリケーション）３０側にＳＱＬ発行処理部１ａ、ＳＱＬ判定処理部４、インターバル設定処理部８などを設け、アプリケーション側でレコードの挿入位置を決定可能にしたものである。
【００６０】
この場合、ＳＱＬ発行処理部１ａによりＳＱＬ発行処理が行われた段階で、挿入処理を行うか否かが判定される。
【００６１】
ここで、挿入処理を行う場合は、ＳＱＬ発行処理部１ａがインターバル設定処理部８に指示し、この指示により、インターバル設定処理部８がインターバルテーブル９にインターバルデータを設定する。
【００６２】
そして、インターバルテーブル９にインターバルデータが設定された時点で、業務処理部３０からＤＢＭＳ４０に挿入指示が行われて、ＤＢＭＳ４０の挿入処理部５が起動される。
【００６３】
すると、起動した挿入処理部５が挿入処理を行うと、インターバル判定処理部１０がインターバルテーブル９を検索し、インターバル判定処理を行い、この判定結果に基づいてデータベース１２へレコードの挿入を行う。
【００６４】
なお、ＳＱＬ発行処理部４によって変更されたインターバルテーブル９は、挿入処理が完全に終了した段階で初期設定値へ戻される。
【００６５】
このようにこの第２実施形態のデータベース検索システムによれば、上記第１実施形態と同様な効果がえられると共に、アプリケーション（業務処理部３０）側にＳＱＬ発行、ＳＱＬ判定及びインターバル設定の各処理部を持たせたことで、アプリケーション単位（プログラム単位）で、インターバルを適時設定が可能になり、あるレコードを特定のページのみに挿入するといったような特殊な業務処理にも対応でき、よりカスタム化した細かなレコードの挿入処理を行うことができる。
【００６６】
上記実施形態に記載のアプリケーション（プログラム）は、フロッピーディスクなどのコンピュータが読み出し可能な記憶媒体に記憶されていても良く、この場合、記憶媒体に記憶されたプログラムをコンピュータが読み出すことにより、各実施形態における処理が可能になる。
【００６７】
なお、記憶媒体としては、磁気ディスク、フロッピーディスク、ハードディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤなど）、光磁気ディスク（ＭＯなど）、半導体メモリなど、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式はいずれの形態であっても良い。
【００６８】
また、記憶媒体からコンピュータにインストールされたアプリケーション（プログラム）の指示に基づきＤＢＭＳや、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）、ネットワークソフトなどのＭＷ（ミドルウェア）が本実施形態を実現するための各処理の一部を実行しても良い。
【００６９】
さらに、記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネットなどにより伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【００７０】
また、記憶媒体は一つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記録媒体に含まれ、媒体構成はいずれの構成であっても良い。
【００７１】
なお、コンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコンなどの一つからなる装置、複数の装置がネットワーク接続されたシステムなどのいずれの構成であっても良い。
【００７２】
また、コンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコンなども含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【００７３】
【発明の効果】
以上説明したように本発明によれば、データベースにレコードを挿入する指示が発行されると、間隔情報保持手段に保持されている間隔情報に基づいて、前記データベースにレコードを挿入するので、データベース内が論理的にも物理的にも区分されるようになり、データベースの検索性能を向上することができる。
【００７４】
また、従来行っていたＤＢの監視や記憶間隔を広めるようなデータベースの再編成作業が不要になり、データベース運用時の作業を軽減することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態のデータベース検索システムの構成を示す図。
【図２】このデータベース検索システムの動作を示すフローチャート。
【図３】このデータベース検索システムのレコードインターバル機能を説明するための図。
【図４】このデータベース検索システムのページインターバル機能を説明するための図。
【図５】このデータベース検索システムの簡易インターバル機能を説明するための図。
【図６】本発明の第２実施形態のデータベース検索システムの構成を示す図。
【符号の説明】
１…業務処理部、２…Database Management System（ＤＢＭＳ）、３…ロード処理部、４…ＳＱＬ判定処理部、５…挿入処理部、６…更新処理部、７…削除処理部、８…インターバル設定処理部、９…インターバルテーブル、１０…インターバル判定処理部、１１…レコード挿入処理部、１２…データベース。
【図１】
0003844914.tif 000002
【図２】
0003844914.tif 000003
【図３】
0003844914.tif 000004
【図４】
0003844914.tif 000005
【図５】
0003844914.tif 000006
【図６】
0003844914.tif 000007