JP2006031631A - データベース処理システム及び方法並びにデータベース処理用プログラム - Google Patents
データベース処理システム及び方法並びにデータベース処理用プログラム Download PDFInfo
- Publication number
- JP2006031631A JP2006031631A JP2004213407A JP2004213407A JP2006031631A JP 2006031631 A JP2006031631 A JP 2006031631A JP 2004213407 A JP2004213407 A JP 2004213407A JP 2004213407 A JP2004213407 A JP 2004213407A JP 2006031631 A JP2006031631 A JP 2006031631A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- database
- transaction data
- data
- grouping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000008569 process Effects 0.000 claims abstract description 31
- 238000000605 extraction Methods 0.000 claims abstract description 16
- 238000003672 processing method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 20
- 238000004458 analytical method Methods 0.000 description 17
- 238000013500 data storage Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 230000000875 corresponding effect Effects 0.000 description 7
- 230000002596 correlated effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 あらゆるデータベース処理システムに対して、全体での処理の高速化を図ることができるデータベース検索システムを提供すること。
【解決手段】 マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段11と、グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段13と、サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段14と、を備えた。
【選択図】図1
【解決手段】 マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段11と、グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段13と、サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段14と、を備えた。
【選択図】図1
Description
本発明は、データベース処理システムにかかり、特に、大量のトランザクションデータに対してデータベース照合等の検索処理を行って出力結果を得るバッチシステムやオンラインシステムなどのデータベース処理システムに関する。また、データベース処理方法及びデータベース処理用プログラムに関する。
従来より、データベース処理において、その処理を高速化する技術開発が進められ、例えば以下の2つの技術が存在した。
まず、「キャッシュ技術」という技術は、一度アクセスされたデータベース上のデータをメモリ上に一定期間蓄え、次に同じデータがアクセスされたときにディスクアクセスを行わずメモリ上のデータにアクセスして処理を高速化するという技術である。しかし、かかるキャッシュ技術においては、一般的にコピーされるアクセス対象は物理ブロックであり、トランザクションデータのキー分布が広範囲に分布し、キャッシュ容量と比して分布が大きい場合には、キャッシュヒット率が低下する、という問題が生じる。
また、「事前ソート技術」という技術は、データベースアクセスを行うキー順にあらかじめトランザクションデータの並び替えを行い、トランザクションデータのキー値がブレイクするタイミングでのみDBアクセスを行うように業務ロジックを搭載し、処理を高速化するという技術である。しかし、かかる事前ソート技術においては、トランザクションデータの処理順序に意味があり、ソートが適さない処理には適用できないという問題が生じ、また、トランザクションデータ中のキー分布が広範でキー値の連続率が低い場合、ソートを行うことでシステム全体として結果的に処理時間が増大し逆効果となる場合があるという問題が生じる。さらに、事前にソートが可能なバッチ処理のみの適用となり汎用性に欠けるという問題や、業務ロジックにてブレイク処理の対応が必要となる、という問題も生じる。
また、下記の特許文献1には、利用者の指示情報に基づいて当該利用者が必要とする業務的な目的をもった特定のデータベースを作成し、かかるデータベースに対する処理を行うシステムが開示されている。しかし、かかる構成では、利用者が変われば目的とするデータベースも変わるため、新たに作成するデータベースに対する効果的な処理は期待できない、と言う問題が生じる。
以上より、上述した従来のデータベース検索システムでは、検索対象データの母体件数が多い場合には1件あたりの処理に時間がかかり、大量のトランザクションともなれば全体の処理時間がかかっていたため、キャッシュ技術などを用いて物理的に高速な装置を効果的に用いるなどの手法で対応を行ってきたが、かかる手法ではシステムに一律汎用的に作用するため、効果のある適用領域には条件と限界があった。すなわち、全てのデータベース処理に対して処理の高速化を図ることができない。
また、業務特性を考慮することで、ある特定の環境下では著しく効率化することが可能となる場合があるが、このような特性は一般的に業務固有のアプローチが必要であり、特性に応じた分析を行った後に効果度合いを判断するというように個別対応が多く、やはり全てのデータベース処理に対する高速化を図ることができない。
このため、本発明では、上記従来例の有する不都合を改善し、特に、あらゆるデータベース処理システムに対して、全体での処理の高速化を図ることができるデータベース処理システムを提供することをその目的とする。
そこで、本発明であるデータベース処理システムの一形態としては、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、
を備えたことを特徴としている。
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、
を備えたことを特徴としている。
そして、上記グループ化手段が、トランザクションデータの処理対象となるマスタデータベースに対する処理特性に応じてグループ化を行う、という構成にしてもよい。具体的には、上記グループ化手段が、トランザクションデータ内に存在するマスタデータベースに対する検索キーに関連するデータに基づいてグループ化を行う、という構成にしてもよい。
さらに、上記構成に加えて、
グループ化手段が、グループ化に用いる予め定められたルールを複数設定すると共に、これら複数のルールのうちの全部又は一部を利用することによってグループ数が予め定められた数値範囲になるようグループ化を行う、という構成にしてもよい。
グループ化手段が、グループ化に用いる予め定められたルールを複数設定すると共に、これら複数のルールのうちの全部又は一部を利用することによってグループ数が予め定められた数値範囲になるようグループ化を行う、という構成にしてもよい。
上記構成にすることにより、まず、マスタ引き当てのキー値や処理の時間帯など、トランザクションデータの特徴値に応じてグループ化するためのルールが予め設定されており、これに基づいて複数のグループにグループ化される。このとき、所定の数のグループに分けられるよう、複数のルールを用いてグループ化を行う。続いて、それぞれのグループ内におけるトランザクションデータに共通する特性に基づいて、マスタデータベースから一時的なサブデータベースを抽出して生成する。特に、サブデータベースは、所定のグループにおけるトランザクションデータを処理可能なデータを含むよう抽出される。例えば、グループ化の際に用いられた上記検索キーを含むサブデータベースが生成される。その後、各グループに対応するサブデータベースに対して、当該グループのトランザクションデータの処理が実行される。
従って、サブデータベースにはトランザクションデータの処理を実行可能なデータが含まれている可能性が高いため、その処理の精度を維持しつつ、また、その母体数も少数であるため、処理時間の短縮化を図ることができ、かつ、トランザクション処理を行うコンピュータの負荷を軽減できる。
また、本発明の別の形態として、データベース処理用プログラムを提供しており、当該プログラムは、
所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うコンピュータに、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、を実現するためのプログラムである。
所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うコンピュータに、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、を実現するためのプログラムである。
さらに、本発明の別の形態として、データベース処理方法を提供しており、
コンピュータを用いて、所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うデータベース処理方法であって、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化工程と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出工程と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理工程と、を有することを特徴としている。
コンピュータを用いて、所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うデータベース処理方法であって、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化工程と、
グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出工程と、
サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理工程と、を有することを特徴としている。
上記構成のデータベース処理プログラム、及び、データベース処理方法であっても、上述したデータベース処理システム同様に作用するため、上記目的を達成することができる。
本発明は、以上のように構成され機能するので、これによると、あらゆるトランザクション処理を行うシステムに対して、データベース処理の精度を維持しつつ、また、処理対象の母体数も少数となることから処理時間の短縮化を図ることができ、かつ、トランザクション処理を行うコンピュータの付加を軽減できる、という従来にない優れた効果を有する。
本発明であるデータベース処理システムは、例えば、データベース照合等の検索処理を行って出力結果を得るバッチシステムまたはオンラインシステムである。そして、トランザクションデータをある指標値でグループ分けし、グループ毎にトランザクションデータの分布特性に応じたある規則性から本来のデータベース(マスタデータベース)から別の単一または複数の一時データベース(サブデータベース)を自動的に生成し、生成された一時データベース群を用いて本来の処理と同一または同様の結果を得る、ことを特徴としている。これにより、システム全体として少ない処理時間で処理結果を得ることができ、システムへの負担を抑制しつつ、データベース処理の高速化を図ることができる。
そして、上述したようにすることにより、コアとなる業務プログラムに手を入れることなく、従来の汎用的手法による限界を超えた処理の高速化という効果を得ることができる。特に、本発明はバッチ処理とオンライン問合せ処理の双方に適用が可能であり、スループットの向上を図ることができる。これは一定の負荷がかかっている環境下において、オンライン処理においてはレスポンス平均値の向上、バッチ処理においてはエラップスの向上に繋がる。なお、バッチ処理の方がオンライン処理よりも業務特性の分析精度を上げやすいため、効果の期待度は大きい。以下、システムの構成について、実施例を参照して詳述する。
本発明の第1の実施例を、図1乃至図7を参照して説明する。図1は、データベース処理システムとなるコンピュータの構成を示す機能ブロック図である。図2は、データベース処理の様子を示す説明図である。図3は、データベースの構成を示す説明図である。図4は、システムの動作を示す説明図である。図5は、動作の一部を示す説明図である。図6乃至図7は、本発明の効果を示すための説明図である。
本実施例で説明するデータベース処理システムは、上述したように、例えば、データベース照合等の検索処理を行って出力結果を得るバッチシステム、あるいは、オンラインシステムである。但し、かかるシステムに限定されることなく、データベースに対して予め定められた複数のトランザクションデータの処理を行うシステムであれば、いかなるシステムでもよい。
ここで、トランザクションデータに基づく検索処理とは、例えば、図2に示すように「処理A」にて示し、データベースをマスタ表のような単純な構成(商品マスタ)とし、入力されたコード値(商品コード)をキーとして名称(商品名称)をマスタから引き当てる処理を想定する。そして、この「処理A」に想定する処理が、本実施例では後述するようにサブデータベースに対して実行される。なお、トランザクションデータの項目には「商品コード」以外に、その他の関連情報も存在している。
<構成>
本発明であるデータベース処理システムは、図1に示すように、コンピュータ1にて構築される。そして、このコンピュータ1は、一般的なコンピュータにて構成されており、演算処理装置であるCPU10、記憶装置であるハードディスク20やRAMなどのメモリ30を備えている。そして、CPU10には、本発明の特徴となるデータベース処理を実現するためのデータベース処理用プログラムが組み込まれることで、以下に説明する各処理部11〜15が構築されることとなる。また、ハードディスク20には、予め設定されているデータを記憶する各記憶部21〜23が形成され、メモリ30には、上記各処理部11〜15の作用により生成されたデータを記憶する各記憶部31〜33が形成されている。上記構成について、以下に詳述する。
本発明であるデータベース処理システムは、図1に示すように、コンピュータ1にて構築される。そして、このコンピュータ1は、一般的なコンピュータにて構成されており、演算処理装置であるCPU10、記憶装置であるハードディスク20やRAMなどのメモリ30を備えている。そして、CPU10には、本発明の特徴となるデータベース処理を実現するためのデータベース処理用プログラムが組み込まれることで、以下に説明する各処理部11〜15が構築されることとなる。また、ハードディスク20には、予め設定されているデータを記憶する各記憶部21〜23が形成され、メモリ30には、上記各処理部11〜15の作用により生成されたデータを記憶する各記憶部31〜33が形成されている。上記構成について、以下に詳述する。
まず、ハードディスク20には、処理対象となるデータベースであるマスタデータベースを記憶するマスタデータベース記憶部23が形成されている。また、このマスタデータベースに対する一連の処理の集合から成るトランザクションデータを記憶するトランザクションデータ記憶部21が形成されている。さらには、このトランザクションデータ記憶部21に記憶されているトランザクションデータを、グループ化するための区分け基準を表すグループ化ルールデータを記憶するグループ化ルールデータ記憶部22が形成されている。このグループ化ルールデータは、後述するディスパッチ処理部11にてグループ化する際に用いられるデータであるため、当該ディスパッチ処理部11の説明時に詳述する。なお、ハードディスク20に記憶されている上記各データは、コンピュータ1に接続された他のコンピュータの記憶装置に記憶されていてもよい。
次に、CPU10には、上述したように、所定のプログラムが組み込まれることで、マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うディスパッチ処理部11(グループ化手段)と、このグループ化したトランザクションデータを分析するトランザクション分析処理部12と、グループ化された特定のグループにおけるトランザクションデータに基づいてマスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出処理部13(マスタ抽出手段)と、サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理部14(トランザクション処理手段)と、この処理結果を出力する出力処理部15と、が構築されている。
上記ディスパッチ処理部11は、トランザクションデータに対してある指標値(以下、グループ化関数と呼ぶ)でグループ化を行う。このとき、グループ化関数の引数の1つとして、トランザクションデータのマスタデータベースに対する処理特性に応じたデータが選択される。特に、トランザクションデータ内にデータベース検索キーの分布特性と相関関係を持ったものがあれば、その相関関係を持ったデータが関数の引数の1つとして選択される。すなわち、このようなグループ化関数を選択する指令が、上記グループ化ルールデータ記憶部22に記憶されているか、あるいは、ディスパッチ処理部11に予め組み込まれていて、上記グループ化関数に基づいて、ディスパッチ処理部11にてグループ化処理が行われる。
そして、具体的に、グループ化関数の性質としては、マスタ引き当てのキー値の分布特性を反映するものが望ましいため、例えば、トランザクションデータ中から「支社コード」などのように、適度に集約され、かつ「商品コード」の分布と相関関係のある変数が引数として複数選択される。そして、バッチ処理においては、データの処理順にこれら変数ができるだけ適度に連続して現れる性質を持っているものが望ましい。
なお、上述したような検索キーと相関関係を持った変数が全く何もない場合であっても、例えば以下に示すトランザクションデータのマスタデータベースに対する処理特性に応じたデータが、グループ化関数の引数の1つとして選択される。例えば、オンラインシステムでは、トランザクションデータ中の処理時間帯別や、アクセス端末番号の上2桁による分類、受付番号順に1万件ずつなど、また、バッチ処理システムでは、接続元やレコード番号等、入力データ種別毎、データ順に1万件ずつなどの指標が変数(引数)の候補となる。また「商品コードの頭2桁」などを変数に採用したり、前日の処理結果の統計情報を用いるなど日々変動型の条件を変数に採用することも応用例として検討対象となりうる。これらの変数を選択することは、ランダムな関数を選択することに比べて、一般的にはキー値分布と相関関係があると見込まれるためである。
そして、いかなるグループ化関数を用いるかは、システムの利用者がデータベースの特性やトランザクション処理の特性に応じて特定し、コンピュータ1に入力することにより設定される。
なお、バッチ処理においては、データの処理順に変数P=(P1,P2,…)が適度に連続している場合には、当初のグループ化関数Goのかわりに、Go(P)の値が変化する(Pがブレイクすると呼ぶ)毎にカウントアップするような関数Gを新たなグループ化関数として構成する。これは、バッチ処理においてはグループ毎の単位で処理がスケジュールされる傾向があるため、データの順序性が必要であったり、グループ分けの処理が高負荷となることによる弊害を回避するために用いる。
なお、以下では、トランザクションデータ全体の集合をT、マスタデータベース全体の集合をM、マスタ引き当て関数(TからM内のデータを引き当てる関数)をΦ、グループ化関数をG、Gの値域を{1,2,…,N}として表すこととする。
そして、上記ディスパッチ処理部11は、グループ化したトランザクションデータを、メモリ31に形成されたグループ化トランザクションデータ記憶部31に記憶する。このとき、ディスパッチ処理部11は、グループ化の分割数などが適度な分布となるように、分割数が多すぎる場合は引数または返値の適度な集約や関数の不採用、分割数が少なすぎる時は引数の追加や別の関数を追加して、分割数を調整する。すなわち、グループ化を行う際に使用するルールを増減することによって、自動的にグループ数が予め定められた数値範囲になるようグループ化を行う機能を有する。これは、後述するように、サブデータベースがシステムのキャッシュを効果的に利用できるレベルの大きさまで小さくなるようにするためである。
続いて、上記トランザクション分析処理部12について説明する。このトランザクション分析処理部12は、グループ化した各トランザクションデータ(符号31内のデータ)に対して、走査分析を行い、データベース引き当て時のキー値として使用されているものを洗い出す。そして、このキー値として使用されているデータを、各グループ毎に、グループ分析データとしてメモリ30内のグループ分析データ記憶部32に記憶する。
続いて、上記マスタ抽出処理部13について説明する。このマスタ抽出処理部13は、グループ分けされたトランザクションデータのまとまり毎に、まとまり内のトランザクションデータの分布特性に応じた一時的なデータベース(以下、サブデータベースと呼ぶ)を、元の検索対象データベースであるマスタデータベースから自動的に生成する。このとき、上記トランザクション分析処理部12にて分析したグループ分析データ記憶部32に記憶されたキー値に基づいて、これに対応するデータをマスタデータベースから抽出することによって構成することができる。なお、サブデータベースはマスタデータベースの部分集合であり、グループ内のトランザクションデータを処理することが可能なデータを含んだものである。
具体的には、例えば、グループnに属するトランザクションの集合をTn、Tnのキーが参照するマスタデータベースの部分集合(サブデータベースと呼ぶ)をMnとする。バッチ処理においては、スケジュール単位としてのグループの処理開始前に全数調査を行ってMnを確定する。また、オンライン処理においては、初期予想と都度追加の2段階で構成する。このため、今処理しようとするトランザクションデータによる検索対象データが、サブデータベースに存在することを保証する、という構成を採る。その簡易的な手法として、トランザクションデータ1件毎にサブデータベース照会処理を実施する方法があるが、結果としてサブデータベース検索処理が2回発生することになるため本発明の効果が弱くなる。これを抑えるため、通常はトランザクションデータ中の別の条件ですでに存在することが保障されている別の指標値を選択し、その指標から外れたデータのみをサブデータベース検索処理で照会を行うように構成する。
そして、上記で構成したMnの集合は、検索処理においてミスヒットしないように最低限必要なものとして構成したものであるから、これ以外に余分なデータが少量含まれていることは構わない。特にオンライン処理においては、TnのΦによる写像としてのΦ(Tn)を事前に生成することは困難であるから、ある程度の予想としてのM’nを事前に構成しておき、Mnを、Φ(Tn)とM’nの和集合として構成を行うこととなる。すると、一般的には図3に示すように、各サブデータベースの各々の集合は、属する要素に重なりを持っており、全サブデータベースを合わせても元のマスタデータベースになるとは限らない。
なお、サブデータベースの生成タイミングにおいては、バッチ処理においてはグループ毎にトランザクションデータの全数調査を事前に行って一括処理を行うことが最も効率的である。オンライン処理においては、上述したようにグループ分けのある程度の想定条件で事前に予想して作成しておき(この事前作成処理は必ずしも実施しなくてもよい)、足りないものを都度追加する方法で行う。この場合、足りているか足りていないかを常に判断する処理が別途必要となる。
このようにして作成したサブデータベースをメモリ31内のサブマスタデータベース記憶部33に記憶しておき、上記トランザクション処理部14にて、各々グループ分けしたトランザクションにマスタデータベースの替わりに適用することで、データベース引き当て処理を変更することなく、本来の目的と同等の処理結果を得ることが可能となる。
<動作>
次に、上記構成のシステムの動作を、図4乃至図5を参照して説明する。図4は、CPU10内の処理の様子を示す説明図である。図5は、グループが複数あった場合の処理を説明する説明図である。
次に、上記構成のシステムの動作を、図4乃至図5を参照して説明する。図4は、CPU10内の処理の様子を示す説明図である。図5は、グループが複数あった場合の処理を説明する説明図である。
まず、ディスパッチ処理部11にて、グループ化関数を用いてトランザクションデータをグループ化する。すなわち、トランザクションデータT(21)を、T1〜TNに分解する処理を行う。そして、グループn(31)が生成される。なお、このディスパッチ処理により、図5に示すように、複数のグループ(グループ1(31a)、グループ2(31b))が生成されてもよく、生成されるグループの数は限定されない。
次に、グループ化されたトランザクションデータの分析がトランザクション分析処理部12で行われ、その分析データ32が記憶保持される。すなわち、TnからMnを作成するための情報を分析する処理を行う。そして、この分析データ32を用いて、マスタデータベース23からマスタ抽出処理部13にてマスタ抽出処理を行い、サブデータベース33を生成する。すなわち、MからM1〜MNを作成する処理を行う。このとき、複数のグループが生成される場合には、それに対応して複数のサブデータベース(サブDB1(33a),サブDB2(33b))が生成される(図5参照)。
その後、各グループのトランザクションデータの処理を、トランザクション処理部14にて当該グループに対応したサブデータベース33(33a,33b)に対して行う。これにより、トランザクションに対する出力結果を表す出力データ40が生成される。
このようにすることにより、サブデータベースにはトランザクションデータの処理を実行可能なデータが含まれている可能性が高いため、その処理の精度を維持しつつ、また、その母体数も少数であるため、処理時間の短縮化を図ることができ、かつ、トランザクション処理を行うコンピュータの付加を軽減できる。
上記効果を、さらに図6乃至図7を参照して説明する。図6には、トランザクションデータとキー値分布の関係を表したものである。トランザクションデータ1件を処理する時間として、検索処理の処理時間は、検索対象マスタの母体の大きさと相関関係がある。この相関関係のスケールオーダを縦軸に表現したとするならば、トランザクション全体の処理Aに相当する処理時間は、図6のグラフの面積に比例することとなる。これらを比較すると、面積は下記のようになる。
グループ化分割を行わない場合:面積=T×M
グループ化分割を行った場合 :面積=Σn=1〜N(Tn×Mn)
グループ化分割を行わない場合:面積=T×M
グループ化分割を行った場合 :面積=Σn=1〜N(Tn×Mn)
上記からも明らかなように、グループ化分割を行った場合の方が明らかに小さい。なお、本発明においては、「トランザクション分析」処理や「マスタ抽出」処理が必要となるため、多少のオーバーヘッドが発生するものの、通常これらのオーバーヘッド処理は、トランザクションデータの母体の大きさには比例するが、マスタ母体の大きさとは相関関係が低い傾向にあるため、マスタ母体が大きくなれば本発明の適用の優位性が増すこととなる。この様子を、図7に示す。この図の(A)には、本願発明を適用しない場合のトランザクション処理の処理時間を表したグラフを示し、(B)には、本願発明を適用した場合のトランザクション処理を含む全処理時間を表したグラフを示す。なお、(B)は、本願発明を適用したときのトランザクション処理のみの処理時間(B1)と、本願発明を適用したときのオーバーヘッド処理時間(B2)と、を併せた処理時間となる((B)=(B1)+(B2))。この図を参照すると、検索対象のデータベースのデータ数がa値を超えたときに、処理の高速化を図ることができる。
ここで、上記構成に加え、上述した従来技術であるキャッシュ技術を併用することで、さらなる処理の高速化を図ることができる。なお、キャッシュへの取り込みにおいて元データベースのランダムアクセスが発生するが、本発明では通常、バッチ処理の適用において、この部分をキャッシュ技術の場合よりも少ない負荷で抑えることが可能な場合がある。これは、データベース処理システムの実装にも依存するが、一括処理において突合せ処理などのシーケンシャルアクセスが可能となるためである。
本発明は、大量のトランザクションデータを処理するデータベース処理システムに組み込むことで、当該トランザクションデータの処理の高速化を図ることができるため、産業上の利用可能性を有する。
1 コンピュータ(データベース処理システム)
10 CPU
11 ディスパッチ処理部(グループ化手段)
12 トランザクション分析処理部
13 マスタ抽出処理部(マスタ抽出手段)
14 トランザクション処理部(トランザクション処理手段)
15 出力処理部
20 ハードディスク
21 トランザクションデータ記憶部(トランザクションデータ)
22 グループ化ルールデータ記憶部
23 マスタデータベース記憶部(マスタデータベース)
30 メモリ
31 グループ化トランザクションデータ記憶部
32 グループ分析データ記憶部
33 サブデータベース記憶部(サブデータベース)
10 CPU
11 ディスパッチ処理部(グループ化手段)
12 トランザクション分析処理部
13 マスタ抽出処理部(マスタ抽出手段)
14 トランザクション処理部(トランザクション処理手段)
15 出力処理部
20 ハードディスク
21 トランザクションデータ記憶部(トランザクションデータ)
22 グループ化ルールデータ記憶部
23 マスタデータベース記憶部(マスタデータベース)
30 メモリ
31 グループ化トランザクションデータ記憶部
32 グループ分析データ記憶部
33 サブデータベース記憶部(サブデータベース)
Claims (6)
- マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいて前記マスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
前記サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、
を備えたことを特徴とするデータベース処理システム。 - 前記グループ化手段が、前記トランザクションデータの処理対象となる前記マスタデータベースに対する処理特性に応じてグループ化を行う、ことを特徴とする請求項1記載のデータベース処理システム。
- 前記グループ化手段が、前記トランザクションデータ内に存在する前記マスタデータベースに対する検索キーに関連するデータに基づいてグループ化を行う、ことを特徴とする請求項1記載のデータベース処理システム。
- 前記グループ化手段が、グループ化に用いる予め定められたルールを複数設定すると共に、これら複数のルールのうちの全部又は一部を利用することによってグループ数が予め定められた数値範囲になるようグループ化を行う、ことを特徴とする請求項1,2又は3記載のデータベース処理システム。
- 所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うコンピュータに、
前記マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化手段と、
グループ化された特定のグループにおけるトランザクションデータに基づいて前記マスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出手段と、
前記サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理手段と、
を実現するためのデータベース処理用プログラム。 - コンピュータを用いて、所定の記憶装置に記憶された処理対象となるデータ群であるマスタデータベースに対して、所定の記憶装置に記憶されたトランザクションデータの処理を行うデータベース処理方法であって、
マスタデータベースに対する一連の処理の集合から成るトランザクションデータを予め定められたルールにてグループ化を行うグループ化工程と、
グループ化された特定のグループにおけるトランザクションデータに基づいて前記マスタデータベースから当該トランザクションデータを処理することが可能なデータを含むサブデータベースを抽出するマスタ抽出工程と、
前記サブデータベースに対してグループ化されたトランザクションデータの処理を行うトランザクション処理工程と、
を有することを特徴とするデータベース処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004213407A JP2006031631A (ja) | 2004-07-21 | 2004-07-21 | データベース処理システム及び方法並びにデータベース処理用プログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004213407A JP2006031631A (ja) | 2004-07-21 | 2004-07-21 | データベース処理システム及び方法並びにデータベース処理用プログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2006031631A true JP2006031631A (ja) | 2006-02-02 |
Family
ID=35897858
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004213407A Pending JP2006031631A (ja) | 2004-07-21 | 2004-07-21 | データベース処理システム及び方法並びにデータベース処理用プログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2006031631A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010537338A (ja) * | 2007-08-30 | 2010-12-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | トランザクション処理スループットを高めるためのトランザクション集約 |
| JP2012008725A (ja) * | 2010-06-23 | 2012-01-12 | Internatl Business Mach Corp <Ibm> | データをソートする装置及び方法 |
| CN114238476A (zh) * | 2021-12-15 | 2022-03-25 | 深圳市科漫达智能管理科技有限公司 | 数据处理方法、装置、终端设备及存储介质 |
-
2004
- 2004-07-21 JP JP2004213407A patent/JP2006031631A/ja active Pending
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010537338A (ja) * | 2007-08-30 | 2010-12-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | トランザクション処理スループットを高めるためのトランザクション集約 |
| US8904393B2 (en) | 2007-08-30 | 2014-12-02 | International Business Machines Corporation | Transaction aggregation to increase transaction processing throughput |
| JP2012008725A (ja) * | 2010-06-23 | 2012-01-12 | Internatl Business Mach Corp <Ibm> | データをソートする装置及び方法 |
| US8725734B2 (en) | 2010-06-23 | 2014-05-13 | International Business Machines Corporation | Sorting multiple records of data using ranges of key values |
| US9213782B2 (en) | 2010-06-23 | 2015-12-15 | International Business Machines Corporation | Sorting multiple records of data using ranges of key values |
| US9658826B2 (en) | 2010-06-23 | 2017-05-23 | International Business Machines Corporation | Sorting multiple records of data using ranges of key values |
| US9727308B2 (en) | 2010-06-23 | 2017-08-08 | International Business Machines Corporation | Sorting multiple records of data using ranges of key values |
| CN114238476A (zh) * | 2021-12-15 | 2022-03-25 | 深圳市科漫达智能管理科技有限公司 | 数据处理方法、装置、终端设备及存储介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9892187B2 (en) | Data analysis method, data analysis device, and storage medium storing processing program for same | |
| US11442694B1 (en) | Merging database tables by classifying comparison signatures | |
| US9195693B2 (en) | Transaction prediction modeling method | |
| JP5460486B2 (ja) | データをソートする装置及び方法 | |
| CN113672375B (zh) | 资源分配预测方法、装置、设备及存储介质 | |
| CN102129425B (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
| CN112052138A (zh) | 业务数据质量检测方法、装置、计算机设备及存储介质 | |
| RU2556425C1 (ru) | Способ автоматической итеративной кластеризации электронных документов по семантической близости, способ поиска в совокупности кластеризованных по семантической близости документов и машиночитаемые носители | |
| US12242514B2 (en) | Multi-level conflict-free entity clusters | |
| US20140325405A1 (en) | Auto-completion of partial line pattern | |
| US10824694B1 (en) | Distributable feature analysis in model training system | |
| Castro et al. | Review and comparison of Apriori algorithm implementations on Hadoop-MapReduce and Spark | |
| JP6242540B1 (ja) | データ変換システム及びデータ変換方法 | |
| US10127192B1 (en) | Analytic system for fast quantile computation | |
| US10929441B1 (en) | System and techniques for data record merging | |
| JPWO2017203672A1 (ja) | アイテム推奨方法、アイテム推奨プログラムおよびアイテム推奨装置 | |
| US20070239663A1 (en) | Parallel processing of count distinct values | |
| JP2006031631A (ja) | データベース処理システム及び方法並びにデータベース処理用プログラム | |
| CN104217032A (zh) | 数据库维度的处理方法及装置 | |
| CN113742116A (zh) | 一种异常定位方法及装置、设备、存储介质 | |
| CN112860850A (zh) | 人机交互方法、装置、设备及存储介质 | |
| CN112364007A (zh) | 基于数据库的海量数据交换方法、装置、设备和存储介质 | |
| US10671644B1 (en) | Adaptive column set composition | |
| JP7710939B2 (ja) | 因果探索装置 | |
| JPWO2016170600A1 (ja) | データ分析支援システム及びデータ分析支援方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081028 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090317 |