JPH11203320A - データベース前処理方式 - Google Patents
データベース前処理方式Info
- Publication number
- JPH11203320A JPH11203320A JP10008294A JP829498A JPH11203320A JP H11203320 A JPH11203320 A JP H11203320A JP 10008294 A JP10008294 A JP 10008294A JP 829498 A JP829498 A JP 829498A JP H11203320 A JPH11203320 A JP H11203320A
- Authority
- JP
- Japan
- Prior art keywords
- database
- search
- application program
- processing
- retrieval
- 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
Landscapes
- Devices For Executing Special Programs (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】SQLを使用して、実際に該当データの検索を
行いながら、検索件数を求める場合、処理結果(検索件
数)は正確な件数を求められるが、データ件数に比例し
た処理時間を要する。 【解決手段】アプリケーションプログラム10からのコ
ンパイル要求に対して、データベース管理システム20
で問合せ解析、最適化処理の後で、問合せ条件、及びデ
ータベースシステムの統計情報から予測検索件数を算出
し、予測検索件数をアプリケーションプログラム10に
返却する。
行いながら、検索件数を求める場合、処理結果(検索件
数)は正確な件数を求められるが、データ件数に比例し
た処理時間を要する。 【解決手段】アプリケーションプログラム10からのコ
ンパイル要求に対して、データベース管理システム20
で問合せ解析、最適化処理の後で、問合せ条件、及びデ
ータベースシステムの統計情報から予測検索件数を算出
し、予測検索件数をアプリケーションプログラム10に
返却する。
Description
【0001】
【発明の属する技術分野】本発明は、データベース処理
装置に関し、特にリレーショナルデータベース管理シス
テムに好敵な処理方式に関する。
装置に関し、特にリレーショナルデータベース管理シス
テムに好敵な処理方式に関する。
【0002】
【従来の技術】データベース管理システム、特にリレー
ショナルデータベース管理システムは、SQLで表現さ
れた問合せを処理して、内部手順を決定し、実行する。
従来は、処理時間の統計情報を取得し、平均・分散等を
計算し、処理時間の予測値を出力する(特開58−11
7334号公報)などがある。しかし、問合せの検索件
数を求める方法として、アプリケーションプログラムに
おいてSQLの集合関数(COUNT)で行っているの
が一般的である。SQLの集合関数では、指定された条
件に従って実際に該当データの検索を行い検索件数の算
出をしている。
ショナルデータベース管理システムは、SQLで表現さ
れた問合せを処理して、内部手順を決定し、実行する。
従来は、処理時間の統計情報を取得し、平均・分散等を
計算し、処理時間の予測値を出力する(特開58−11
7334号公報)などがある。しかし、問合せの検索件
数を求める方法として、アプリケーションプログラムに
おいてSQLの集合関数(COUNT)で行っているの
が一般的である。SQLの集合関数では、指定された条
件に従って実際に該当データの検索を行い検索件数の算
出をしている。
【0003】
【発明が解決しようとする課題】上記従来技術は、検索
件数を求めるために、SQLを使用して、実際に該当デ
ータの検索を行いながら、検索件数を求めている。この
処理形態では、処理結果(検索件数)は正確な件数を求
められるが、データ件数に比例した処理時間を要すると
いう問題がある。このため、データ件数が膨大になる
と、実用上処理が困難になってくる。本発明の目的は、
問合せの前処理時に、実際に該当データを検索すること
なく、検索件数をアプリケーションプログラムに返却す
ることにある。
件数を求めるために、SQLを使用して、実際に該当デ
ータの検索を行いながら、検索件数を求めている。この
処理形態では、処理結果(検索件数)は正確な件数を求
められるが、データ件数に比例した処理時間を要すると
いう問題がある。このため、データ件数が膨大になる
と、実用上処理が困難になってくる。本発明の目的は、
問合せの前処理時に、実際に該当データを検索すること
なく、検索件数をアプリケーションプログラムに返却す
ることにある。
【0004】
【課題を解決するための手段】上記目的を達成するため
に、本発明ではデータベースに対する問合せのコンパイ
ル処理時に、データベースシステムの統計情報、及び問
合せ条件を元に検索件数を予測することに特徴がある。
に、本発明ではデータベースに対する問合せのコンパイ
ル処理時に、データベースシステムの統計情報、及び問
合せ条件を元に検索件数を予測することに特徴がある。
【0005】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。
に基づいて詳細に説明する。
【0006】図1は、本発明が適用されたデータベース
システムの構成例である。アプリケーションプログラム
10は、検索要求で、検索件数が一定件数以下の場合の
み検索を実行するアプリケーションプログラムである。
アプリケーションプログラム10では、問合せ生成を行
い(100)、データベース管理システム20に対して
コンパイル要求を出す(101)。このコンパイル要求
で、データベース管理システム20は、問合せ文の解析
処理(200)を行い、データディクショナリ30から
取得した定義情報、及びデータベースシステムの統計情
報を基にして最適なデータ検索の処理手順を決定する最
適化処理(210)を行う。なお、データディクショナ
リ30は、表、列、インデクスなどの定義情報、及び
表、列中のデータに関する統計情報など、データベース
の管理情報を保持している。最適なデータ検索の処理手
順決定後、検索件数の予測処理(220)を行い、アプ
リケーションプログラム10に検索件数を返却する。ア
プリケーションプログラム10では、受け取った検索件
数が一定件数より多い場合(102)、アプリケーショ
ンプログラムを終了する。受け取った検索件数が一定件
数より少ない場合(102)、データ検索の実行要求を
行い(103)、データベース管理システム20は、処
理手順の実行(230)を行い、データベース40にア
クセスし、アプリケーションプログラム10に検索結果
を返却する。アプリケーションプログラム10では、受
け取った検索結果を出力する(104)。このデータ検
索実行要求、検索結果の出力は、該当データがなくなる
まで(105)繰り返す。
システムの構成例である。アプリケーションプログラム
10は、検索要求で、検索件数が一定件数以下の場合の
み検索を実行するアプリケーションプログラムである。
アプリケーションプログラム10では、問合せ生成を行
い(100)、データベース管理システム20に対して
コンパイル要求を出す(101)。このコンパイル要求
で、データベース管理システム20は、問合せ文の解析
処理(200)を行い、データディクショナリ30から
取得した定義情報、及びデータベースシステムの統計情
報を基にして最適なデータ検索の処理手順を決定する最
適化処理(210)を行う。なお、データディクショナ
リ30は、表、列、インデクスなどの定義情報、及び
表、列中のデータに関する統計情報など、データベース
の管理情報を保持している。最適なデータ検索の処理手
順決定後、検索件数の予測処理(220)を行い、アプ
リケーションプログラム10に検索件数を返却する。ア
プリケーションプログラム10では、受け取った検索件
数が一定件数より多い場合(102)、アプリケーショ
ンプログラムを終了する。受け取った検索件数が一定件
数より少ない場合(102)、データ検索の実行要求を
行い(103)、データベース管理システム20は、処
理手順の実行(230)を行い、データベース40にア
クセスし、アプリケーションプログラム10に検索結果
を返却する。アプリケーションプログラム10では、受
け取った検索結果を出力する(104)。このデータ検
索実行要求、検索結果の出力は、該当データがなくなる
まで(105)繰り返す。
【0007】図2は、検索件数予測処理の実施例であ
る。検索件数予測220では、問合せ条件、及びデータ
ベースシステムの統計情報から検索件数を予測する。図
2の検索件数予測の処理フローでは、次の記法を用い
る。
る。検索件数予測220では、問合せ条件、及びデータ
ベースシステムの統計情報から検索件数を予測する。図
2の検索件数予測の処理フローでは、次の記法を用い
る。
【0008】 □Amax −− 現在までの予測検索件数の最大値 □Amin −− 現在までの予測検索件数の最小値 □Bmax −− 現在の問合せ条件列での予測検索件数の最大値 □Bmin −− 現在の問合せ条件列での予測検索件数の最小値 □Max −− 最終的な予測検索件数の最大値 □Min −− 最終的な予測検索件数の最小値 データベースシステムのデータディクショナリには、統
計情報として表を構成する列の出現値、あるいは列の出
現値を分割した結果得られる範囲値と列値の出現回数と
当該範囲に出現する列値の個数に関する情報、及び表の
行数に関する情報を保持している。
計情報として表を構成する列の出現値、あるいは列の出
現値を分割した結果得られる範囲値と列値の出現回数と
当該範囲に出現する列値の個数に関する情報、及び表の
行数に関する情報を保持している。
【0009】まず問合せ条件が設定されている列の予測
検索件数をデータベースシステムの統計情報から算出す
る(241)。この予測検索件数をAmax、Amin
に設定する(242)。その後、さらに問合せ条件が存
在するかを判断(243)して、存在しない場合には、
Amaxが予測検索件数の最大値、Aminが予測検索
件数の最小値(244)とする。問合せ条件が存在する
場合は、次の問合せ条件の予測検索件数をデータベース
システムの統計情報から算出し(244)、Bmax、
Bminに設定する(245)。次に論理演算を判断し
(246)、論理演算がAND条件の場合、Amaxに
は、Amax、またはBmaxの小さい値を設定する
(247)。現在までの予測検索件数と、現在の問合せ
条件列の予測検索件数の和が、表の全行数より少ない場
合(248)は、必ず重複する行があるとは限らないた
め、Aminは0となる(249)。現在までの予測検
索件数と、現在の問合せ条件列の予測検索件数の和が、
表の全行数より多い場合(248)は、(Amin+B
min)−表の全行数により、必ず重複する件数をAm
inに設定する(250)。論理演算がOR条件の場合
(251)、Amaxには、Amax+Bmaxと表の
全行数の小さい値を設定する。Aminには、Ami
n、Bminの大きい値を設定する(252)。さらに
問合せの条件が存在する(253)場合には、244か
らの処理を繰り返し、問合せ条件が存在しなくなった時
点で、MaxにAmax、MinにAminを設定する
(244)。
検索件数をデータベースシステムの統計情報から算出す
る(241)。この予測検索件数をAmax、Amin
に設定する(242)。その後、さらに問合せ条件が存
在するかを判断(243)して、存在しない場合には、
Amaxが予測検索件数の最大値、Aminが予測検索
件数の最小値(244)とする。問合せ条件が存在する
場合は、次の問合せ条件の予測検索件数をデータベース
システムの統計情報から算出し(244)、Bmax、
Bminに設定する(245)。次に論理演算を判断し
(246)、論理演算がAND条件の場合、Amaxに
は、Amax、またはBmaxの小さい値を設定する
(247)。現在までの予測検索件数と、現在の問合せ
条件列の予測検索件数の和が、表の全行数より少ない場
合(248)は、必ず重複する行があるとは限らないた
め、Aminは0となる(249)。現在までの予測検
索件数と、現在の問合せ条件列の予測検索件数の和が、
表の全行数より多い場合(248)は、(Amin+B
min)−表の全行数により、必ず重複する件数をAm
inに設定する(250)。論理演算がOR条件の場合
(251)、Amaxには、Amax+Bmaxと表の
全行数の小さい値を設定する。Aminには、Ami
n、Bminの大きい値を設定する(252)。さらに
問合せの条件が存在する(253)場合には、244か
らの処理を繰り返し、問合せ条件が存在しなくなった時
点で、MaxにAmax、MinにAminを設定する
(244)。
【0010】これまでの処理フローを経て、検索件数の
予測を行う。
予測を行う。
【0011】
【発明の効果】本発明のデータベース前処理方式によれ
ば、アプリケーションプログラムで検索件数算出のため
の問合せを実行する必要がなくなる。また、検索件数予
測処理においても、データ件数に依存せずに高速な検索
件数を提供することが可能となる。
ば、アプリケーションプログラムで検索件数算出のため
の問合せを実行する必要がなくなる。また、検索件数予
測処理においても、データ件数に依存せずに高速な検索
件数を提供することが可能となる。
【図1】本発明が適用されたデータベース管理システム
の機能図。
の機能図。
【図2】本発明が適用されたデータベース管理システム
の機能図。
の機能図。
10…アプリケーションプログラム、20…データベー
ス管理システム、30…データディクショナリ、
40…データベース。
ス管理システム、30…データディクショナリ、
40…データベース。
Claims (2)
- 【請求項1】計算機上で動作するデータベース処理装置
において、問合せ結果をアプリケーションプログラムに
返却するために、問合せの解析をする問合せ解析手段
と、最適な処理手順を決定する処理手順決定手段と、問
合せの検索件数を予測する検索件数予測手段を備えたこ
とで、予測検索件数をアプリケーションプログラムに返
却することを特徴とするデータベース管理システム。 - 【請求項2】計算機上で動作するデータベース処理装置
において、最適な処理手順を決定する処理手順決定手段
のための、カラムの出現値、あるいはカラムの出現値を
分割した結果得られる範囲値、列値の出現回数と当該範
囲に出現する列値の個数に関する情報、及び表の行数に
関する情報を保持し、これらの情報から問合せの条件に
対する列の該当件数を予測し、列毎の該当件数より問合
せ結果の検索件数を予測することを特徴とするデータベ
ース管理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10008294A JPH11203320A (ja) | 1998-01-20 | 1998-01-20 | データベース前処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10008294A JPH11203320A (ja) | 1998-01-20 | 1998-01-20 | データベース前処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11203320A true JPH11203320A (ja) | 1999-07-30 |
Family
ID=11689153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10008294A Pending JPH11203320A (ja) | 1998-01-20 | 1998-01-20 | データベース前処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11203320A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008546098A (ja) * | 2005-05-31 | 2008-12-18 | シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド | 患者の人口統計的レコード照会のデータ依存型フィルタリングシステム及び方法 |
JP2019020762A (ja) * | 2017-07-11 | 2019-02-07 | 三菱電機エンジニアリング株式会社 | 文書管理システム |
CN110309119A (zh) * | 2013-03-13 | 2019-10-08 | 萨勒斯福斯通讯有限公司 | 用于实现数据上传、处理和预测查询api公开的系统、方法和装置 |
WO2024071505A1 (ko) * | 2022-09-29 | 2024-04-04 | 스마트마인드 주식회사 | 멀티-쿼리 스케줄러를 기반으로 멀티-쿼리를 처리하는 방법 및 이러한 방법을 제공하는 데이터 처리 시스템 |
-
1998
- 1998-01-20 JP JP10008294A patent/JPH11203320A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008546098A (ja) * | 2005-05-31 | 2008-12-18 | シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド | 患者の人口統計的レコード照会のデータ依存型フィルタリングシステム及び方法 |
US9336283B2 (en) | 2005-05-31 | 2016-05-10 | Cerner Innovation, Inc. | System and method for data sensitive filtering of patient demographic record queries |
CN110309119A (zh) * | 2013-03-13 | 2019-10-08 | 萨勒斯福斯通讯有限公司 | 用于实现数据上传、处理和预测查询api公开的系统、方法和装置 |
CN110309119B (zh) * | 2013-03-13 | 2023-08-22 | 硕动力公司 | 用于实现数据上传、处理和预测查询api公开的系统、方法和装置 |
JP2019020762A (ja) * | 2017-07-11 | 2019-02-07 | 三菱電機エンジニアリング株式会社 | 文書管理システム |
WO2024071505A1 (ko) * | 2022-09-29 | 2024-04-04 | 스마트마인드 주식회사 | 멀티-쿼리 스케줄러를 기반으로 멀티-쿼리를 처리하는 방법 및 이러한 방법을 제공하는 데이터 처리 시스템 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dreseler et al. | Quantifying TPC-H choke points and their optimizations | |
US8285707B2 (en) | Method of querying relational database management systems | |
US7814104B2 (en) | Techniques for partition pruning | |
EP0326927B1 (en) | Method and apparatus for processing a database | |
US6581055B1 (en) | Query optimization with switch predicates | |
US6744449B2 (en) | Graphical query analyzer | |
US8423569B2 (en) | Decomposed query conditions | |
US20040220904A1 (en) | Information retrieval system and method using index ANDing for improving performance | |
US20010014888A1 (en) | Database management system and method for query process for the same | |
US20040210563A1 (en) | Method and system of collecting execution statistics of query statements | |
US9406027B2 (en) | Making predictions regarding evaluation of functions for a database environment | |
CA2427228A1 (en) | Information retrieval systems for optimization of queries having maximum or minimum function aggregation predicates | |
CN115617830A (zh) | 一种基于机器学习的数据查询优化处理方法及装置 | |
US20040068488A1 (en) | Data query differential analysis | |
Trummer | Exact cardinality query optimization with bounded execution cost | |
CN115237947A (zh) | Sql数据库的优化处理方法、装置、智能终端及介质 | |
Bachhav et al. | An efficient query optimizer with materialized intermediate views in distributed and cloud environment | |
Abdel Kader et al. | ROX: run-time optimization of XQueries | |
Zou et al. | Survey on learnable databases: A machine learning perspective | |
Mishra et al. | A lightweight online framework for query progress indicators | |
JPH11203320A (ja) | データベース前処理方式 | |
Gu et al. | Improving the quality of web-based data imputation with crowd intervention | |
WO2021250950A1 (ja) | 文書検索の性能を評価する方法、システム、および装置 | |
CN114153874A (zh) | 基数估计方法、装置、电子设备及存储介质 | |
Xie et al. | Cool, a COhort OnLine analytical processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080122 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 10 Free format text: PAYMENT UNTIL: 20090122 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090122 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100122 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |