JP3526585B2 - 分散データベースの質問処理最適化方式 - Google Patents
分散データベースの質問処理最適化方式Info
- Publication number
- JP3526585B2 JP3526585B2 JP08820892A JP8820892A JP3526585B2 JP 3526585 B2 JP3526585 B2 JP 3526585B2 JP 08820892 A JP08820892 A JP 08820892A JP 8820892 A JP8820892 A JP 8820892A JP 3526585 B2 JP3526585 B2 JP 3526585B2
- Authority
- JP
- Japan
- Prior art keywords
- relation
- semi
- degree
- join
- order
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/964—Database arrangement
- Y10S707/966—Distributed
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99939—Privileged access
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【技術分野】本発明は、分散データベースの質問処理最
適化方式に関し、より詳細には、リレーション(Relati
on:関係)のn次の次数の概念を導入し、その定量化を
図る分散データベースの質問処理最適化方式に関する。
適化方式に関し、より詳細には、リレーション(Relati
on:関係)のn次の次数の概念を導入し、その定量化を
図る分散データベースの質問処理最適化方式に関する。
【0002】
【従来技術】データベースとしては、集中化して利用す
るものと、分散化して利用するものとがあり、データベ
ースの間では、必要に応じてデータを取り出すことがで
きるようになっていることが必要である。また、コンピ
ュータシステムやネットワークの技術の進歩につれて、
分散データベースの問題が重要になってきている。分散
データベースの理論については多くの重要な問題が残さ
れている。分散データベースの質問処理の最適化はその
中の一つである。分散データベースは、従来の集中デー
タベースと比べてその挙動が大きく変わっている。質問
処理だけを対象としても、通信回線上でのデータ転送に
応じて、質問処理の最適化も違う手法を用いざるを得な
い。
るものと、分散化して利用するものとがあり、データベ
ースの間では、必要に応じてデータを取り出すことがで
きるようになっていることが必要である。また、コンピ
ュータシステムやネットワークの技術の進歩につれて、
分散データベースの問題が重要になってきている。分散
データベースの理論については多くの重要な問題が残さ
れている。分散データベースの質問処理の最適化はその
中の一つである。分散データベースは、従来の集中デー
タベースと比べてその挙動が大きく変わっている。質問
処理だけを対象としても、通信回線上でのデータ転送に
応じて、質問処理の最適化も違う手法を用いざるを得な
い。
【0003】文献「分散データベースの木質問の最適
化」(李紅,佐藤 洋 データベース・システム研究会6
4-6,プログラミング言語研究会26-3,September 199
0.)には、分散データベースの木質問処理の準結合によ
る解法の最適スケジュールを求める問題について述べら
れている。すなわち、問題を木質問に限り、任意の関係
を簡約する(reduce)ための準結合の系列より成るスケ
ジュールを考え、全回線使用時間を最適化する最適化問
題について考察している。また、文献「分散データベ
ースの質問処理の最適化に関する考察」(李紅,佐藤
洋 データベース・システム研究会64-6,March 198
8.)には、回線使用時間と応答時間の最適な解を求める
アプローチとして、複数属性による結合・準結合につい
て検討されている。しかし、今までの分散データベース
の質問処理の最適化に関する研究は、分散データベース
に多く存在する複数属性で結合する質問を考えていない
傾向があるが、これは現実と掛け離れている。
化」(李紅,佐藤 洋 データベース・システム研究会6
4-6,プログラミング言語研究会26-3,September 199
0.)には、分散データベースの木質問処理の準結合によ
る解法の最適スケジュールを求める問題について述べら
れている。すなわち、問題を木質問に限り、任意の関係
を簡約する(reduce)ための準結合の系列より成るスケ
ジュールを考え、全回線使用時間を最適化する最適化問
題について考察している。また、文献「分散データベ
ースの質問処理の最適化に関する考察」(李紅,佐藤
洋 データベース・システム研究会64-6,March 198
8.)には、回線使用時間と応答時間の最適な解を求める
アプローチとして、複数属性による結合・準結合につい
て検討されている。しかし、今までの分散データベース
の質問処理の最適化に関する研究は、分散データベース
に多く存在する複数属性で結合する質問を考えていない
傾向があるが、これは現実と掛け離れている。
【0004】以下に、複数属性による結合について説明
する。リレーションR1(a,b,c,…)とリレーションR
2(a,b,c,…)と属性a,b,cについて結合をする。これ
は、十分に研究されていない複数属性による結合の質問
である。このような質問は、集中型のデータベースには
あまり現れないものであって、分散データベースに多く
現れるものと考えてもよいだろう。集中の関係型データ
ベースの場合は、異なる関係が同じ複数の属性を持つ
と、データの冗長になりやすいし、処理速度も遅くなり
がちでデメリットが多い。また、実際に運用するとき、
データベースの首尾一貫性,障害回復,データベースの
保守,耐故障性などの面にも問題が出てくる。分散デー
タベースの場合は、共通の属性をもつ関係を異なる場所
に置くことはしばしば起こり、極端な例でいうと、水平
に分割された関係は、その属性が皆同じである。従っ
て、単一属性の結合のみを最適化の対象とするモデルが
不完全だと考えられる。この問題を正面から取り扱う研
究はほとんどないようである。
する。リレーションR1(a,b,c,…)とリレーションR
2(a,b,c,…)と属性a,b,cについて結合をする。これ
は、十分に研究されていない複数属性による結合の質問
である。このような質問は、集中型のデータベースには
あまり現れないものであって、分散データベースに多く
現れるものと考えてもよいだろう。集中の関係型データ
ベースの場合は、異なる関係が同じ複数の属性を持つ
と、データの冗長になりやすいし、処理速度も遅くなり
がちでデメリットが多い。また、実際に運用するとき、
データベースの首尾一貫性,障害回復,データベースの
保守,耐故障性などの面にも問題が出てくる。分散デー
タベースの場合は、共通の属性をもつ関係を異なる場所
に置くことはしばしば起こり、極端な例でいうと、水平
に分割された関係は、その属性が皆同じである。従っ
て、単一属性の結合のみを最適化の対象とするモデルが
不完全だと考えられる。この問題を正面から取り扱う研
究はほとんどないようである。
【0005】次に、結合と準結合からレデューサー(re
ducer)を求める方法について述べる。通常、分散デー
タベースの質問処理は三つのステップからなっている。
(a)局所処理(step1),(b)データ転送によるリ
レーションサイズの減少(step2),(c)結果を求め
るノードへのデータ転送と演算(step3)である。
(b)において、単一準結合を用いるものはたくさん提
案されている。最近では、この段階で結合を導入する提
案も見られる。図4(a)〜(e)は、結合と準結合を
説明するための図である。図(a),(b)はリレーシ
ョンA,Bを、図(c)は結合を、図(d),(e)は準
結合を各々示している。リレーションA(図(a))とリ
レーションB(図(b))をaに関し結合すると、図
(c)のようになり、すべてのデータが包含される。リ
レーションA(図(a))の属性aに関し、リレーション
B(図(b))へ準結合すると、リレーションAの属性a
はa1がリレーションBの属性aのa1と共通するので、
図(d)のようになる。また、リレーションA(図
(a))の属性bに関し、リレーションB(図(b))へ準
結合すると、リレーションAの属性bのb2がリレーシ
ョンBの属性bのb2と共通するので、図(e)のよう
になり、b3のタプルは除外される。以上のように、準
結合は結合による処理よりもデータ量を減らして取扱う
ことが可能であり、結合をレデューサーに入れることは
又準結合で得られない効果があることもわかる。
ducer)を求める方法について述べる。通常、分散デー
タベースの質問処理は三つのステップからなっている。
(a)局所処理(step1),(b)データ転送によるリ
レーションサイズの減少(step2),(c)結果を求め
るノードへのデータ転送と演算(step3)である。
(b)において、単一準結合を用いるものはたくさん提
案されている。最近では、この段階で結合を導入する提
案も見られる。図4(a)〜(e)は、結合と準結合を
説明するための図である。図(a),(b)はリレーシ
ョンA,Bを、図(c)は結合を、図(d),(e)は準
結合を各々示している。リレーションA(図(a))とリ
レーションB(図(b))をaに関し結合すると、図
(c)のようになり、すべてのデータが包含される。リ
レーションA(図(a))の属性aに関し、リレーション
B(図(b))へ準結合すると、リレーションAの属性a
はa1がリレーションBの属性aのa1と共通するので、
図(d)のようになる。また、リレーションA(図
(a))の属性bに関し、リレーションB(図(b))へ準
結合すると、リレーションAの属性bのb2がリレーシ
ョンBの属性bのb2と共通するので、図(e)のよう
になり、b3のタプルは除外される。以上のように、準
結合は結合による処理よりもデータ量を減らして取扱う
ことが可能であり、結合をレデューサーに入れることは
又準結合で得られない効果があることもわかる。
【0006】
【目的】本発明は、上述のごとき実情に鑑みてなされた
もので、分散データベースの質問処理の最適化に対し
て、リレーションの次数の概念とその定量化及びこれを
ベースとした複数属性による準結合を用いた分散データ
ベースの質問処理最適化方式を提供することを目的とし
てなされたものである。
もので、分散データベースの質問処理の最適化に対し
て、リレーションの次数の概念とその定量化及びこれを
ベースとした複数属性による準結合を用いた分散データ
ベースの質問処理最適化方式を提供することを目的とし
てなされたものである。
【0007】
【構成】本発明は、上記目的を達成するために、(1)
ネットワークで接続された複数のノードに分散されたリ
レーショナルデータベースからなる分散データベースシ
ステムにおいて、リレーションのタプル数が、該リレー
ション中のk個の相異なる任意の単一属性毎のタプル数
の積の最小値を超える場合の最大のkを該リレーション
の次数として決定する次数決定手段と、複数属性で結合
する質問に現れる各リレーション間で、準結合してから
他のノードに転送する方が、準結合せずに直接他のノー
ドに転送するよりコストが低いような準結合をメリット
のある準結合として求めて、これらのリレーション間の
準結合を取った結果を転送列に加える操作を行う準結合
手段とを有し、リレーションを前記次数決定手段で決定
された次数毎に分けてリレーション集合を作成し、この
最も低い次数のリレーション集合から最も高い次数のリ
レーション集合に対して順次、サイズの小さいリレーシ
ョンに対してメリットのある準結合を得て、転送列を得
ること、或いは、(2)ネットワークで接続された複数
のノードに分散されたリレーショナルデータベースから
なる分散データベースシステムにおいて、各ノード内の
リレーションに対して、複数属性で結合する質問を射影
と選択演算及びノード内での結合として実行する局所処
理手段と、リレーションのタプル数が、該リレーション
中のk個の相異なる任意の単一属性毎のタプル数の積の
最小値を超える場合の最大のkを該リレーションの次数
として決定する次数決定手段と、前記局所処理した各リ
レーションを次数毎に分けてリレーション集合を作る集
合手段と、前記集合手段で求めた最も小さい次数のリレ
ーション集合を除くすべてのリレーション集合から、異
なる単一属性に対して最もサイズの小さいリレーション
を一つずつ抽出して該最も小さい次数のリレーション集
合に付加する抽出手段と、前記リレーション集合内でサ
イズの最も小さいリレーションから最も大きいリレーシ
ョンまで順次、該リレーションとこれ以外のリレーショ
ン集合内のリレーションに対して、準結合してから他の
ノードに転送する方が、準結合せずに直接他のノードに
転送するよりコストが低いような準結合を求めて、これ
らのリレーション間の準結合を取った結果を転送列に加
える操作を行う準結合操作手段と、前記準結合操作手段
で加えた転送列を次に高い次数のリレーション集合に追
加する操作を、最も低い次数のリレーション集合から最
も高い次数のリレーション集合まで繰り返して行う制御
手段とを備え、前記制御手段は、最後に、結合されてい
ないリレーションを直接に質問を求めるノードに転送す
るようにしたこと、更には、(3)前記(2)におい
て、前記準結合操作手段は、他のリレーションと準結合
を行ってもコストを低くできないとき、そのリレーショ
ンをリレーション集合から削除し、他のリレーションと
共通の属性を持たないリレーションは削除しないことを
特徴としている。
ネットワークで接続された複数のノードに分散されたリ
レーショナルデータベースからなる分散データベースシ
ステムにおいて、リレーションのタプル数が、該リレー
ション中のk個の相異なる任意の単一属性毎のタプル数
の積の最小値を超える場合の最大のkを該リレーション
の次数として決定する次数決定手段と、複数属性で結合
する質問に現れる各リレーション間で、準結合してから
他のノードに転送する方が、準結合せずに直接他のノー
ドに転送するよりコストが低いような準結合をメリット
のある準結合として求めて、これらのリレーション間の
準結合を取った結果を転送列に加える操作を行う準結合
手段とを有し、リレーションを前記次数決定手段で決定
された次数毎に分けてリレーション集合を作成し、この
最も低い次数のリレーション集合から最も高い次数のリ
レーション集合に対して順次、サイズの小さいリレーシ
ョンに対してメリットのある準結合を得て、転送列を得
ること、或いは、(2)ネットワークで接続された複数
のノードに分散されたリレーショナルデータベースから
なる分散データベースシステムにおいて、各ノード内の
リレーションに対して、複数属性で結合する質問を射影
と選択演算及びノード内での結合として実行する局所処
理手段と、リレーションのタプル数が、該リレーション
中のk個の相異なる任意の単一属性毎のタプル数の積の
最小値を超える場合の最大のkを該リレーションの次数
として決定する次数決定手段と、前記局所処理した各リ
レーションを次数毎に分けてリレーション集合を作る集
合手段と、前記集合手段で求めた最も小さい次数のリレ
ーション集合を除くすべてのリレーション集合から、異
なる単一属性に対して最もサイズの小さいリレーション
を一つずつ抽出して該最も小さい次数のリレーション集
合に付加する抽出手段と、前記リレーション集合内でサ
イズの最も小さいリレーションから最も大きいリレーシ
ョンまで順次、該リレーションとこれ以外のリレーショ
ン集合内のリレーションに対して、準結合してから他の
ノードに転送する方が、準結合せずに直接他のノードに
転送するよりコストが低いような準結合を求めて、これ
らのリレーション間の準結合を取った結果を転送列に加
える操作を行う準結合操作手段と、前記準結合操作手段
で加えた転送列を次に高い次数のリレーション集合に追
加する操作を、最も低い次数のリレーション集合から最
も高い次数のリレーション集合まで繰り返して行う制御
手段とを備え、前記制御手段は、最後に、結合されてい
ないリレーションを直接に質問を求めるノードに転送す
るようにしたこと、更には、(3)前記(2)におい
て、前記準結合操作手段は、他のリレーションと準結合
を行ってもコストを低くできないとき、そのリレーショ
ンをリレーション集合から削除し、他のリレーションと
共通の属性を持たないリレーションは削除しないことを
特徴としている。
【0008】まず、図3(a)〜(d)に基づき、分散
データベースの質問処理について説明する。図(a)
は、コミュニケーションネットワークを示す図で、ノー
ド(局所:サイト)〜を有し、ノードには分散デ
ータベース(DDB1:Distributed Data Base 1)を有
し、ノードには分散データベース(DDB2)、ノー
ドには分散データベース(DDB3)を各々有してい
る。また、DDB1におけるリレーションはR1(a,b)
(a,bは属性)を、DDB3におけるリレーションはR
3(a,b)を各々有している。ノードは質問を提出するノ
ードである。例えば、質問R(a,b)=R1(a,b)*R3(a)
(*は結合を示す)があった場合、図(b)〜(d)の
転送手順が考えられる。図(b)においては、ノード
からR1(a,b)がノードへ、ノードよりR3(a)がノー
ドへ転送される。図(c)において、ノードよりR
3(a)がノードへ転送され、準結合を取り、ノードか
らR1(a,b)がノードへ転送される。図(d)におい
て、ノードよりR1(a)がノードへ転送され、準結合
を取り、ノードよりR3(a)がノードへ転送され、準
結合を取り、次にノードよりR1(a,b)がノードへ転
送される。図(d)における転送手順は、他の順番も考
えられる。コストを最小とするこのような転送手順を提
案することが本発明の目的である。
データベースの質問処理について説明する。図(a)
は、コミュニケーションネットワークを示す図で、ノー
ド(局所:サイト)〜を有し、ノードには分散デ
ータベース(DDB1:Distributed Data Base 1)を有
し、ノードには分散データベース(DDB2)、ノー
ドには分散データベース(DDB3)を各々有してい
る。また、DDB1におけるリレーションはR1(a,b)
(a,bは属性)を、DDB3におけるリレーションはR
3(a,b)を各々有している。ノードは質問を提出するノ
ードである。例えば、質問R(a,b)=R1(a,b)*R3(a)
(*は結合を示す)があった場合、図(b)〜(d)の
転送手順が考えられる。図(b)においては、ノード
からR1(a,b)がノードへ、ノードよりR3(a)がノー
ドへ転送される。図(c)において、ノードよりR
3(a)がノードへ転送され、準結合を取り、ノードか
らR1(a,b)がノードへ転送される。図(d)におい
て、ノードよりR1(a)がノードへ転送され、準結合
を取り、ノードよりR3(a)がノードへ転送され、準
結合を取り、次にノードよりR1(a,b)がノードへ転
送される。図(d)における転送手順は、他の順番も考
えられる。コストを最小とするこのような転送手順を提
案することが本発明の目的である。
【0009】次に、分散データベースのモデルとリレー
ションのn次次数の概念について、以下に説明する。 分散データベースの質問処理最適化方式のモデルと記
述法について説明する。本発明における分散データベー
スの質問処理の環境は、遠隔地に分散されたコンピュー
タネットワークである。そのため、質問処理のコストは
通信にかかるコストのみとする。コストは転送するデー
タの量の線型関数とし、次の式を用いる。 C = C0 + βX …(1) C0は通信設定のコスト、βは単位データを転送するコ
スト、Xは転送されるデータの量である。簡単のため、
β=1とする。
ションのn次次数の概念について、以下に説明する。 分散データベースの質問処理最適化方式のモデルと記
述法について説明する。本発明における分散データベー
スの質問処理の環境は、遠隔地に分散されたコンピュー
タネットワークである。そのため、質問処理のコストは
通信にかかるコストのみとする。コストは転送するデー
タの量の線型関数とし、次の式を用いる。 C = C0 + βX …(1) C0は通信設定のコスト、βは単位データを転送するコ
スト、Xは転送されるデータの量である。簡単のため、
β=1とする。
【0010】質問の対象となるデータベースは、分散さ
れたリレーショナルデータベースである。質問処理は、
まずネットワークの各ノードで行われるものとする。し
たがって、扱うリレーションはそれぞれ異なるノードに
格納されているとする。同じデータが複数存在するとき
は、事前に一つ選ばれたとする。データはリレーション
上に均一に分布されているとし、リレーションの属性は
統計的に互いに独立とする。以上の仮定は多くの文献で
見られるが、ほとんどの文献では結合する属性は一つで
あることと仮定しているか、または、一般的な質問であ
ると仮定するが、最適化の課程において、単一属性の結
合しか考慮にいれていない。このような仮定は、実際に
分散データベースの質問処理の多くに対して最適化の程
度を妨げている。すなわち、分散データベース環境に多
く現れる複数属性に関する結合が含まれていない。
れたリレーショナルデータベースである。質問処理は、
まずネットワークの各ノードで行われるものとする。し
たがって、扱うリレーションはそれぞれ異なるノードに
格納されているとする。同じデータが複数存在するとき
は、事前に一つ選ばれたとする。データはリレーション
上に均一に分布されているとし、リレーションの属性は
統計的に互いに独立とする。以上の仮定は多くの文献で
見られるが、ほとんどの文献では結合する属性は一つで
あることと仮定しているか、または、一般的な質問であ
ると仮定するが、最適化の課程において、単一属性の結
合しか考慮にいれていない。このような仮定は、実際に
分散データベースの質問処理の多くに対して最適化の程
度を妨げている。すなわち、分散データベース環境に多
く現れる複数属性に関する結合が含まれていない。
【0011】本発明においては、複数属性による結合を
含む一般的な質問を最適化の対象とする。ここでは、リ
レーションをU,R等で表わし、属性をa,b,c,…で表
わす。R(a,b,c)は属性aとbとcを持つリレーション
を表わすことになる。R(a)はリレーションをaに射影
した関係とする。R(a,b,c)のタプル(Tuple)数はtま
たはTで記述する。R(a)のタプル数はtaまたはtR(a)
で表わす。Daは属性aの領域の大きさを表わす。R(a)
の選択度はpaまたはpRで、p=ta/Daである。ま
た、以下のような記号を使う。 R(a):リレーションR(a)、または、そのタプル数 |R|:リレーションRのサイズ tab:属性aとbからなるリレーションR(a,b)のタプ
ル数 R1→R2:リレーションR1をリレーションR2に転送
し、R2のノードで準結合する。
含む一般的な質問を最適化の対象とする。ここでは、リ
レーションをU,R等で表わし、属性をa,b,c,…で表
わす。R(a,b,c)は属性aとbとcを持つリレーション
を表わすことになる。R(a)はリレーションをaに射影
した関係とする。R(a,b,c)のタプル(Tuple)数はtま
たはTで記述する。R(a)のタプル数はtaまたはtR(a)
で表わす。Daは属性aの領域の大きさを表わす。R(a)
の選択度はpaまたはpRで、p=ta/Daである。ま
た、以下のような記号を使う。 R(a):リレーションR(a)、または、そのタプル数 |R|:リレーションRのサイズ tab:属性aとbからなるリレーションR(a,b)のタプ
ル数 R1→R2:リレーションR1をリレーションR2に転送
し、R2のノードで準結合する。
【0012】複数属性を持つリレーションの選択度と
複数属性による準結合について説明する。従来、リレー
ションR(a,b)の選択度を論じるとき、単一属性に射影
したリレーションR(a)(R(b))の選択度pa=ta/D
a(pb=tb/Db)しか取り扱われていない。tabはリ
レーションR(a,b)のタプル数とすると、次のような不
等式が成り立つ。 tab ≦ ta × tb …(2) 上記の式の両端をDa×Dbで割ると、次の式が成り立
つ。
複数属性による準結合について説明する。従来、リレー
ションR(a,b)の選択度を論じるとき、単一属性に射影
したリレーションR(a)(R(b))の選択度pa=ta/D
a(pb=tb/Db)しか取り扱われていない。tabはリ
レーションR(a,b)のタプル数とすると、次のような不
等式が成り立つ。 tab ≦ ta × tb …(2) 上記の式の両端をDa×Dbで割ると、次の式が成り立
つ。
【0013】
【数1】
【0014】複数属性を持つリレーションR(a,b)の選
択度pabは、上記式の左端によって決まる。 pab = tab/(Da × Db) …(4) 同様に、タプルt個を持つリレーションR(a1,a2,
…an)の選択度pは、 p = t/(Da1 × Da2 ×…Dan) …(5) となる。後述するように、複数属性を準結合するとき、
このように定義した複数属性の選択度を用いる方法は、
単一属性のときと同様に合理性を持っている。したがっ
て、タプル数tを持つリレーションRが選択度pの複数
(単一)属性のリレーションによって準結合された場
合、準結合された後のリレーションのタプル数t′が t′= t × p …(6) となる。結合されない属性bのタプル数の期待値R′
(b)は次の式で計算する。
択度pabは、上記式の左端によって決まる。 pab = tab/(Da × Db) …(4) 同様に、タプルt個を持つリレーションR(a1,a2,
…an)の選択度pは、 p = t/(Da1 × Da2 ×…Dan) …(5) となる。後述するように、複数属性を準結合するとき、
このように定義した複数属性の選択度を用いる方法は、
単一属性のときと同様に合理性を持っている。したがっ
て、タプル数tを持つリレーションRが選択度pの複数
(単一)属性のリレーションによって準結合された場
合、準結合された後のリレーションのタプル数t′が t′= t × p …(6) となる。結合されない属性bのタプル数の期待値R′
(b)は次の式で計算する。
【0015】この式は、(6)式の近似式である。
R′(b) = min{t×p,tR(b)} …(7)
式(2)は次のようになっていることが多い。
tab ≪ ta × tb …(8)
したがって、次式が成り立つ場合が多い。
pab ≪ pa × pb …(9)
この式は、左辺が複数属性(a,b)で準結合する場合
の選択度であり、右辺が属性aと属性bを別々で準結合
する場合の選択度である。複数属性による準結合のほう
が、それぞれ単一属性による準結合より結合を受ける関
係をより小さくすることを示している。属性の数が多け
れば、レデューサーとしての効率も大きくなる。しか
し、複数属性においては、その中の単一属性に注目する
と、データの重複が存在する。
の選択度であり、右辺が属性aと属性bを別々で準結合
する場合の選択度である。複数属性による準結合のほう
が、それぞれ単一属性による準結合より結合を受ける関
係をより小さくすることを示している。属性の数が多け
れば、レデューサーとしての効率も大きくなる。しか
し、複数属性においては、その中の単一属性に注目する
と、データの重複が存在する。
【0016】リレーションのn次次数の概念について
説明する。前記文献では、リレーションを1次か2次
かについて定性的に述べている。ここで、定性的な意味
における1次,2次とは、例えば、社員を特定する場合
にコード(社員番号)がわかればコードのみで特定され
る。すなわち、1つの属性で特定されれば、それが1次
である。しかし、コードがわからず、社員名のみで特定
しようとすると、同姓同名のものは特定されないので、
生年月日を加味して特定するような場合には、属性が2
つ必要となり、これが2次である。本発明においては、
もっとも一般的なケースに対してリレーションの次数を
定量的に規定する。
説明する。前記文献では、リレーションを1次か2次
かについて定性的に述べている。ここで、定性的な意味
における1次,2次とは、例えば、社員を特定する場合
にコード(社員番号)がわかればコードのみで特定され
る。すなわち、1つの属性で特定されれば、それが1次
である。しかし、コードがわからず、社員名のみで特定
しようとすると、同姓同名のものは特定されないので、
生年月日を加味して特定するような場合には、属性が2
つ必要となり、これが2次である。本発明においては、
もっとも一般的なケースに対してリレーションの次数を
定量的に規定する。
【0017】リレーションR(a1,a2,…an)のタプ
ル数をTとし、R(ai)(i=1,2,…n)のタプル数をt
iとする。リレーションRに対して整数Ki(i=1,2,…
n)を次のように計算する。 K1 = min{t1,t2,…tn} K2 = min{t1×t2,t1×t3…tn-1×tn} …(10) … … Kn = t1×t2×…×tn したがって、 K1 ≦ K2 ≦ … ≦ Kn …(11) K1 ≦ T ≦ Kn …(12) が成り立つ。 K1 ≦ K2 ≦ … ≦ Km ≦ T < Km+1≦ … ≦ Kn …(13) のとき、リレーションRの次数をmとし、次のように書
くことにする。 d(R)= m. 以上のことから、次の表1のリレーションR(a,b,c)は
1次のリレーションである。
ル数をTとし、R(ai)(i=1,2,…n)のタプル数をt
iとする。リレーションRに対して整数Ki(i=1,2,…
n)を次のように計算する。 K1 = min{t1,t2,…tn} K2 = min{t1×t2,t1×t3…tn-1×tn} …(10) … … Kn = t1×t2×…×tn したがって、 K1 ≦ K2 ≦ … ≦ Kn …(11) K1 ≦ T ≦ Kn …(12) が成り立つ。 K1 ≦ K2 ≦ … ≦ Km ≦ T < Km+1≦ … ≦ Kn …(13) のとき、リレーションRの次数をmとし、次のように書
くことにする。 d(R)= m. 以上のことから、次の表1のリレーションR(a,b,c)は
1次のリレーションである。
【0018】
【表1】
【0019】すなわち、表1より t1=80,t2=1
00,t3=60であるので、 K1 = t3 = 60 K2 = t3 × t1 = 60 × 80 = 4800 K3 = t1 × t2 × t3 = 60 × 80 × 100
=480000 となり、リレーションRのタプル数T=100であるの
で、 K1(=60)≦T(=100)<K2(=4800) が成り立つので、次数は1次である。次の表2のリレー
ションR(a,b,c)は2次のリレーションである。
00,t3=60であるので、 K1 = t3 = 60 K2 = t3 × t1 = 60 × 80 = 4800 K3 = t1 × t2 × t3 = 60 × 80 × 100
=480000 となり、リレーションRのタプル数T=100であるの
で、 K1(=60)≦T(=100)<K2(=4800) が成り立つので、次数は1次である。次の表2のリレー
ションR(a,b,c)は2次のリレーションである。
【0020】
【表2】
【0021】すなわち、表2より、リレーションRのタ
プル数T=5000であるので、 K2(=4800)≦T(=5000)<K3(=480
000) が成り立つので、次数は2次である。
プル数T=5000であるので、 K2(=4800)≦T(=5000)<K3(=480
000) が成り立つので、次数は2次である。
【0022】次に、リレーションの次数と複数属性の準
結合について説明する。前述では、リレーションの次数
について説明した。この次数について定性的に説明する
と、一般的には、リレーションの各属性のタプル数がリ
レーションのタプル数と多く違わなければその関係が1
次のリレーションであるし、リレーションのタプル数が
リレーション内の二つの属性のタプル数の積とほぼ同等
なら、その関係は2次のリレーションである。同時に、
属性n個のリレーションの次数がnのとき、リレーショ
ンのタプル数は全ての属性のタプルの積に近いであろ
う。
結合について説明する。前述では、リレーションの次数
について説明した。この次数について定性的に説明する
と、一般的には、リレーションの各属性のタプル数がリ
レーションのタプル数と多く違わなければその関係が1
次のリレーションであるし、リレーションのタプル数が
リレーション内の二つの属性のタプル数の積とほぼ同等
なら、その関係は2次のリレーションである。同時に、
属性n個のリレーションの次数がnのとき、リレーショ
ンのタプル数は全ての属性のタプルの積に近いであろ
う。
【0023】複数の結合属性の持つリレーションを他の
ノードに転送するときに、次の3つのことに注意しなけ
ればならない。第1に転送されるデータの量、いわゆる
コスト、第2に転送されるデータによって先方のリレー
ションはサイズがどのくらい減るか、これは、ベニフィ
ト(benefit)と呼ばれ、転送されるデータの選択度と
関係する。第3に転送されるデータの属性間の関連情報
である。リレーションを属性に射影してから転送する場
合は、射影によって他のデータとの間の対応情報が失わ
れることがあるが、重複するデータの量が減ることにな
る。選択度は射影するたびに大幅に増える。次数の説明
から分かるように、明らかにn個の属性を持つリレーシ
ョンRはその次数d(R)が1とnの間である。
ノードに転送するときに、次の3つのことに注意しなけ
ればならない。第1に転送されるデータの量、いわゆる
コスト、第2に転送されるデータによって先方のリレー
ションはサイズがどのくらい減るか、これは、ベニフィ
ト(benefit)と呼ばれ、転送されるデータの選択度と
関係する。第3に転送されるデータの属性間の関連情報
である。リレーションを属性に射影してから転送する場
合は、射影によって他のデータとの間の対応情報が失わ
れることがあるが、重複するデータの量が減ることにな
る。選択度は射影するたびに大幅に増える。次数の説明
から分かるように、明らかにn個の属性を持つリレーシ
ョンRはその次数d(R)が1とnの間である。
【0024】リレーションRのタプル数をTとし、射影
されたリレーションR′のタプル数をT′とする。次式
が成り立つ。 T′≦ T リレーションRの次数を計算するための整数をKとし、
射影されたリレーションR′の次数を計算するための整
数をK′とすると、前述した次数の説明によって、 K′i ≧ Ki (1≦i≦R′の属性数) が成り立つ。上記の両式によって、R′の次数はRの次
数より増えないことを示している。このことから
(A):“リレーションR(a1,a2,…an)の任意の
射影R′の次数はRの次数より増えることはない”とい
うことが言える。実際に、射影した関係R′の次数はか
なり小さくなることが多い。さらに“1次のリレーショ
ンの任意の射影は次数が1次である。”も言える。
されたリレーションR′のタプル数をT′とする。次式
が成り立つ。 T′≦ T リレーションRの次数を計算するための整数をKとし、
射影されたリレーションR′の次数を計算するための整
数をK′とすると、前述した次数の説明によって、 K′i ≧ Ki (1≦i≦R′の属性数) が成り立つ。上記の両式によって、R′の次数はRの次
数より増えないことを示している。このことから
(A):“リレーションR(a1,a2,…an)の任意の
射影R′の次数はRの次数より増えることはない”とい
うことが言える。実際に、射影した関係R′の次数はか
なり小さくなることが多い。さらに“1次のリレーショ
ンの任意の射影は次数が1次である。”も言える。
【0025】以下に、準結合を取るときのリレーション
の次数について説明する。リレーションRのタプル数を
Tとし、リレーションR1(a1)の選択度はpとする。準
結合したあとのリレーションをR′とし、そのタプル数
をT′とする。また、Rの各属性のタプル数をti(i=
1,2,…n)とし、R′の各属性のタプル数をt′i(i
=1,2,…n)とする。したがって、 T′= T × p …(14) となる。これから次式が成り立つことを証明する。 T′< K′m+1 …(15) 便宜のため、t2≦t3≦ … ≦tnとする。したがっ
て、 K′m+1= min{t1×p×min{T′,t2}×min{T′,t3}×…×min{T′,tm+1}, min{T′,t2}×min{T′,t3}×…×min{T′,tm+2}} …(16) T′が式(16)の右辺の計算結果に現れるなら、式
(15)が成り立つ。そうでないとき、式(16)は次
式になる。 K′m+1=min{t1×p×t2×t3×…×tm+1,t2×t3×…×tm+2} …(17) 式(17)の右辺において、両値のどちらが小さくて
も、Km+1の定義と式(14)を考えると、T′<K′
m+1が成り立つ。すなわち、単一属性の準結合を受けた
リレーションの次数が大きくならないことがわかる。 このことから(B): "準結合したリレーションの非結
合属性のタプル数の期待値は、式(7)を用いて計算す
るものとすれば、リレーションR(a1,a2,…an)は
単一属性のリレーションR1(a1)によって準結合を取っ
ても次数は増えない" ということが言える。
の次数について説明する。リレーションRのタプル数を
Tとし、リレーションR1(a1)の選択度はpとする。準
結合したあとのリレーションをR′とし、そのタプル数
をT′とする。また、Rの各属性のタプル数をti(i=
1,2,…n)とし、R′の各属性のタプル数をt′i(i
=1,2,…n)とする。したがって、 T′= T × p …(14) となる。これから次式が成り立つことを証明する。 T′< K′m+1 …(15) 便宜のため、t2≦t3≦ … ≦tnとする。したがっ
て、 K′m+1= min{t1×p×min{T′,t2}×min{T′,t3}×…×min{T′,tm+1}, min{T′,t2}×min{T′,t3}×…×min{T′,tm+2}} …(16) T′が式(16)の右辺の計算結果に現れるなら、式
(15)が成り立つ。そうでないとき、式(16)は次
式になる。 K′m+1=min{t1×p×t2×t3×…×tm+1,t2×t3×…×tm+2} …(17) 式(17)の右辺において、両値のどちらが小さくて
も、Km+1の定義と式(14)を考えると、T′<K′
m+1が成り立つ。すなわち、単一属性の準結合を受けた
リレーションの次数が大きくならないことがわかる。 このことから(B): "準結合したリレーションの非結
合属性のタプル数の期待値は、式(7)を用いて計算す
るものとすれば、リレーションR(a1,a2,…an)は
単一属性のリレーションR1(a1)によって準結合を取っ
ても次数は増えない" ということが言える。
【0026】後述する式(25)と前記(B)の説明に
より、 (C): "準結合したリレーションの非結合属性のタプ
ル数の期待値は、式(7)を用いて計算するものとすれ
ば、リレーションR(a1,a2,…an)は他のリレーション
によって準結合を取っても次数は増えない" ことが言え
る。又、式(16)でT′≦t2が成り立つようにpを
選べば (C1):準結合を受けるリレーションは準結合したあ
とに1次のリレーションにも成り得る。
より、 (C): "準結合したリレーションの非結合属性のタプ
ル数の期待値は、式(7)を用いて計算するものとすれ
ば、リレーションR(a1,a2,…an)は他のリレーション
によって準結合を取っても次数は増えない" ことが言え
る。又、式(16)でT′≦t2が成り立つようにpを
選べば (C1):準結合を受けるリレーションは準結合したあ
とに1次のリレーションにも成り得る。
【0027】前記(A)と(C)ではリレーションが射
影されること、または、準結合を受けることで次数が小
さくなる(大きくはならない)こと、(C1)では、準
結合するときの選択度が小さければ、準結合をしたあと
のリレーションの次数も最小限に小さくなることがわか
った。リレーションの次数が小さいとき、リレーション
内でデータの重複度は少ない。例えば、1次のリレーシ
ョンでは任意の二つの属性に射影すれば、そのデータは
重複しない。一般的にn属性のリレーションは次数がm
(m>1)のとき、そのリレーション内でタプル数のもっ
とも小さい単一属性はデータが極めて大きい回数重複す
る。前記(A)により、このようなリレーションは部分
属性に射影することによって次数を減らすことができる
し、重複度も減らすことができる。一般的に許される重
複度はリレーションの次数とリレーションのサイズの両
方に関係する。リレーションの次数だけを考えると、こ
こで単にm>n/2のときには高次リレーションと呼
び、そうでないときは低次リレーションと呼ぶことにす
る。すなわち、リレーションの各単一属性のタプル数を
ソートした列を考えるとき、その列の中間にある単一属
性のデータが重複しているなら高次リレーションとな
る。
影されること、または、準結合を受けることで次数が小
さくなる(大きくはならない)こと、(C1)では、準
結合するときの選択度が小さければ、準結合をしたあと
のリレーションの次数も最小限に小さくなることがわか
った。リレーションの次数が小さいとき、リレーション
内でデータの重複度は少ない。例えば、1次のリレーシ
ョンでは任意の二つの属性に射影すれば、そのデータは
重複しない。一般的にn属性のリレーションは次数がm
(m>1)のとき、そのリレーション内でタプル数のもっ
とも小さい単一属性はデータが極めて大きい回数重複す
る。前記(A)により、このようなリレーションは部分
属性に射影することによって次数を減らすことができる
し、重複度も減らすことができる。一般的に許される重
複度はリレーションの次数とリレーションのサイズの両
方に関係する。リレーションの次数だけを考えると、こ
こで単にm>n/2のときには高次リレーションと呼
び、そうでないときは低次リレーションと呼ぶことにす
る。すなわち、リレーションの各単一属性のタプル数を
ソートした列を考えるとき、その列の中間にある単一属
性のデータが重複しているなら高次リレーションとな
る。
【0028】リレーションの次数の規定はリレーション
の全体のタプル数に緊密に依存している。同じ属性を持
つリレーションの全体のタプル数が小さいとき、その次
数も通常小さい。複数属性による準結合をすることによ
って、準結合されたリレーションのタプル数は非常に小
さくなり、これと同時にそのリレーションの次数も小さ
くなる。この現象は準結合する複数属性の数に関係す
る。複数属性の数が多ければ多いほど結合されたリレー
ションはタプル数と次数が小さくなる。リレーションの
次数は、リレーションをどのように射影して転送するか
を判断する重要な因子になっている。リレーションは、
次数が高い程データが多く重複して、射影されたリレー
ションの選択度が小さい。このような高次のリレーショ
ンを部分属性に分割すると、より低い転送コストが得ら
れる。
の全体のタプル数に緊密に依存している。同じ属性を持
つリレーションの全体のタプル数が小さいとき、その次
数も通常小さい。複数属性による準結合をすることによ
って、準結合されたリレーションのタプル数は非常に小
さくなり、これと同時にそのリレーションの次数も小さ
くなる。この現象は準結合する複数属性の数に関係す
る。複数属性の数が多ければ多いほど結合されたリレー
ションはタプル数と次数が小さくなる。リレーションの
次数は、リレーションをどのように射影して転送するか
を判断する重要な因子になっている。リレーションは、
次数が高い程データが多く重複して、射影されたリレー
ションの選択度が小さい。このような高次のリレーショ
ンを部分属性に分割すると、より低い転送コストが得ら
れる。
【0029】図1は、本発明による分散データベースの
質問処理最適化方式の一実施例を説明するための構成図
で、図中、1は局所処理手段、2は集合手段、3は抽出
手段、4は準結合操作手段、5は準結合手段、6は次数
決定手段、6aは判断手段、6bは分割手段、7は転送
列作成手段、8は制御手段である。局所処理手段1は、
ネットワークの各ノード内で複数属性による結合を含む
質問に現われる各リレーションに対して、射影と選択と
結合演算のすべて、あるいはいずれかを処理する。集合
手段2は、該局所処理手段1に基づいて得たリレーショ
ンを次数毎に分けてリレーション集合を作る。複数属性
による結合を含む質問に現われるリレーションの次数を
得る。次数決定手段6は、前述した(10)式〜(1
3)式に基づいて決定される。準結合した結果のリレー
ションの次数が高次リレーションであるかどうかの判断
をする判断手段6aと、該判断手段6aにより高次であ
ると判断されたときには、部分属性に分割することによ
り低次のリレーションとする分割手段6bとを有する。
該分割手段6bにより分割された低次のリレーション
を、次に大きいサイズのリレーション集合へ付加するよ
うにする。抽出手段3は、前記集合手段2によって作ら
れたリレーション集合の中からサイズの最も小さい異な
る単一属性のリレーションを抽出し、該リレーションを
新たにリレーション集合に付加する。準結合操作手段4
は、前記抽出手段3により付加されたリレーション集合
内におけるリレーションから順次にメリットのある準結
合を準結合手段5により求め、転送列作成手段7により
転送列を得て、次に高い次数のリレーション集合に付加
する。制御手段8は、前記各手段の低次から最高次のリ
レーション集合までの制御を行わせて最終的な転送列を
求め、質問を求めるノードへ転送する。
質問処理最適化方式の一実施例を説明するための構成図
で、図中、1は局所処理手段、2は集合手段、3は抽出
手段、4は準結合操作手段、5は準結合手段、6は次数
決定手段、6aは判断手段、6bは分割手段、7は転送
列作成手段、8は制御手段である。局所処理手段1は、
ネットワークの各ノード内で複数属性による結合を含む
質問に現われる各リレーションに対して、射影と選択と
結合演算のすべて、あるいはいずれかを処理する。集合
手段2は、該局所処理手段1に基づいて得たリレーショ
ンを次数毎に分けてリレーション集合を作る。複数属性
による結合を含む質問に現われるリレーションの次数を
得る。次数決定手段6は、前述した(10)式〜(1
3)式に基づいて決定される。準結合した結果のリレー
ションの次数が高次リレーションであるかどうかの判断
をする判断手段6aと、該判断手段6aにより高次であ
ると判断されたときには、部分属性に分割することによ
り低次のリレーションとする分割手段6bとを有する。
該分割手段6bにより分割された低次のリレーション
を、次に大きいサイズのリレーション集合へ付加するよ
うにする。抽出手段3は、前記集合手段2によって作ら
れたリレーション集合の中からサイズの最も小さい異な
る単一属性のリレーションを抽出し、該リレーションを
新たにリレーション集合に付加する。準結合操作手段4
は、前記抽出手段3により付加されたリレーション集合
内におけるリレーションから順次にメリットのある準結
合を準結合手段5により求め、転送列作成手段7により
転送列を得て、次に高い次数のリレーション集合に付加
する。制御手段8は、前記各手段の低次から最高次のリ
レーション集合までの制御を行わせて最終的な転送列を
求め、質問を求めるノードへ転送する。
【0030】次に、図2に基づき、質問処理最適化方式
の手順について説明する。これまでは、リレーションの
次数の性質について説明したが、ここでは、リレーショ
ンの次数の性質を利用した質問処理最適化方式の手順に
ついて説明する。リレーションが準結合される場合を検
討する。準結合されてから他のノードに転送するほう
が、準結合せずに直接に他のノードに転送するよりコス
トが低い場合、その準結合をメリットのある準結合と呼
ぶ。次の手順は、全回線使用時間(total time)を最適
化の対象とするものである。step1 : 各ノードで局所処理、すなわちノード内での
射影と選択演算及び結合を行う。step2 : 局所処理したリレーションを次数ごとにわけ
て、i次のリレーションからなる集合をGiとする。次
数のもっとも小さい集合をGlと書く。step3 : Glを除くすべてのリレーションから、サイズ
の最も小さい異なる単一属性を一つずつ抽出する。抽出
された単一属性のリレーションをG1に付加する。
の手順について説明する。これまでは、リレーションの
次数の性質について説明したが、ここでは、リレーショ
ンの次数の性質を利用した質問処理最適化方式の手順に
ついて説明する。リレーションが準結合される場合を検
討する。準結合されてから他のノードに転送するほう
が、準結合せずに直接に他のノードに転送するよりコス
トが低い場合、その準結合をメリットのある準結合と呼
ぶ。次の手順は、全回線使用時間(total time)を最適
化の対象とするものである。step1 : 各ノードで局所処理、すなわちノード内での
射影と選択演算及び結合を行う。step2 : 局所処理したリレーションを次数ごとにわけ
て、i次のリレーションからなる集合をGiとする。次
数のもっとも小さい集合をGlと書く。step3 : Glを除くすべてのリレーションから、サイズ
の最も小さい異なる単一属性を一つずつ抽出する。抽出
された単一属性のリレーションをG1に付加する。
【0031】step4: リレーション集合G1から順次に
次数のもっとも高いリレーション集合まで、次のような
操作を繰り返して行う。 step4-1:集合内でリレーションをサイズの昇順にソート
する。 step4-2:集合内でサイズの小さいリレーションからメリ
ットのある準結合を求め、準結合をとり、これを転送列
に加える。他のリレーションと準結合を行ってもメリッ
トがないとき、そのリレーションは集合から削除され
る。ただし、他のリレーションと共通の属性を持たない
リレーションは削除しない。 step4-3:準結合した結果のリレーションは、高次リレー
ションなら、それを適切に低次リレーションに分けて、
次にサイズの大きいリレーションに対して準結合をと
る。この操作は、この集合のもっともサイズの大きいリ
レーションまで行われる。 step4-4:上記の操作によって得られた結果は複数のリレ
ーションも有りえる。これらのリレーションを次に高い
次数のリレーション集合に追加する。最も次数の高いリ
レーション集合の場合は、その結果のリレーションを質
問を求めるノードに転送する。step5 : 最後に、結合されていないリレーションを直
接に質問を求めるノードに転送するか、または、前記st
ep4で得られた結果を適切に射影し、準結合をしてから
質問を求めるノードに転送するかを選択する。質問は質
問を求めるノードで計算される。図2に示した手順を応
答時間を小さくするための手段に直すには、以下のとこ
ろで並列化を図ればよい。step3では、抽出されたリレ
ーションを適切に全てのリレーション集合に付加する。
step4を並列に実行する等の方法を取ればよい。以下の
表3に具体的な実施例を示す。
次数のもっとも高いリレーション集合まで、次のような
操作を繰り返して行う。 step4-1:集合内でリレーションをサイズの昇順にソート
する。 step4-2:集合内でサイズの小さいリレーションからメリ
ットのある準結合を求め、準結合をとり、これを転送列
に加える。他のリレーションと準結合を行ってもメリッ
トがないとき、そのリレーションは集合から削除され
る。ただし、他のリレーションと共通の属性を持たない
リレーションは削除しない。 step4-3:準結合した結果のリレーションは、高次リレー
ションなら、それを適切に低次リレーションに分けて、
次にサイズの大きいリレーションに対して準結合をと
る。この操作は、この集合のもっともサイズの大きいリ
レーションまで行われる。 step4-4:上記の操作によって得られた結果は複数のリレ
ーションも有りえる。これらのリレーションを次に高い
次数のリレーション集合に追加する。最も次数の高いリ
レーション集合の場合は、その結果のリレーションを質
問を求めるノードに転送する。step5 : 最後に、結合されていないリレーションを直
接に質問を求めるノードに転送するか、または、前記st
ep4で得られた結果を適切に射影し、準結合をしてから
質問を求めるノードに転送するかを選択する。質問は質
問を求めるノードで計算される。図2に示した手順を応
答時間を小さくするための手段に直すには、以下のとこ
ろで並列化を図ればよい。step3では、抽出されたリレ
ーションを適切に全てのリレーション集合に付加する。
step4を並列に実行する等の方法を取ればよい。以下の
表3に具体的な実施例を示す。
【0032】
【表3】
【0033】分散データベースは、リレーションR1(a,
b)とR2(a,b,c)とR3(a,b,c)から構成されている。リレ
ーションの次数と次数の高さも前記表3に示している。
この分散データベースに対して、リレーションR1とR2
とR3を属性(a,b,c)について結合する質問が現れると
き、前記処理手順に従って実行する。通信設定のコスト
C0=5とする。前記手順のstep2によって次数ごとの
リレーション集合は次の通りである。 G1={R1}, G2={R2}, G3={R3} 前記手順のstep3にしたがって、リレーションR2とR3
から単一属性のリレーションR2(b)とR3(a)とR3(c)を
抽出し、それをリレーション集合G1に追加すると、G1
は次のようになる。 G′1 ={R3(a),R2(b),R3(c),R1}
b)とR2(a,b,c)とR3(a,b,c)から構成されている。リレ
ーションの次数と次数の高さも前記表3に示している。
この分散データベースに対して、リレーションR1とR2
とR3を属性(a,b,c)について結合する質問が現れると
き、前記処理手順に従って実行する。通信設定のコスト
C0=5とする。前記手順のstep2によって次数ごとの
リレーション集合は次の通りである。 G1={R1}, G2={R2}, G3={R3} 前記手順のstep3にしたがって、リレーションR2とR3
から単一属性のリレーションR2(b)とR3(a)とR3(c)を
抽出し、それをリレーション集合G1に追加すると、G1
は次のようになる。 G′1 ={R3(a),R2(b),R3(c),R1}
【0034】このリレーション集合において、前記手順
のstep4により、次の転送が選ばれる。 R3(a) → R1 R2(b)を使ってメリットのある準結合が得られなかった
ため、R2(b)をG2に付加しない。R3(a)とR1で結合し
た結果、R′1(a,b)とR3(c)をG2に追加する。R′1の
タプル数は80×0.3=24になる。リレーション集
合G′2は次の通りとなる。 G′2 ={R′1(a,b),R3(c),R2} 前記手順のstep4にしたがって、R′1をR2に転送して
準結合する。その結合結果は低次リレーションなので、
リレーション集合G3に追加し(R3(c)はR2(b)と同じ
理由でG3に付加せず)、リレーションR3と準結合を取
る。結果として、次の転送スケジュールが得られる。 転送スケジュール: R3(a) → R1 → R2 → R3 → そのコストは次の式によって計算できる。
のstep4により、次の転送が選ばれる。 R3(a) → R1 R2(b)を使ってメリットのある準結合が得られなかった
ため、R2(b)をG2に付加しない。R3(a)とR1で結合し
た結果、R′1(a,b)とR3(c)をG2に追加する。R′1の
タプル数は80×0.3=24になる。リレーション集
合G′2は次の通りとなる。 G′2 ={R′1(a,b),R3(c),R2} 前記手順のstep4にしたがって、R′1をR2に転送して
準結合する。その結合結果は低次リレーションなので、
リレーション集合G3に追加し(R3(c)はR2(b)と同じ
理由でG3に付加せず)、リレーションR3と準結合を取
る。結果として、次の転送スケジュールが得られる。 転送スケジュール: R3(a) → R1 → R2 → R3 → そのコストは次の式によって計算できる。
【0035】
【数2】
【0036】以下の表4に他の実施例を示す。
【0037】
【表4】
【0038】分散データベースは表4の関係から構成さ
れているリレーションR1とR2とR3とR4を属性(a,b,
c)について結合する質問のスケジュールを前記処理手
順で求める。通信設定のコストC0=5とする。前記手
順のstep2と3によって、次数ごとのリレーション集合
は次の通りである。 G′1={R4(a),R3(b),R4(c),R1,R2}, G2
={R3,R4} リレーション集合G′1において、前記手順のstep4に
より、次の転送とリレーションが選ばれる。 R4(a) → R2 …(18) R3(b)が削除され、G′1で得られた結果R′2とR4(c)
とR1をG2に付加すると、リレーション集合G′2は次
の通りとなる。 G′2={R′2(a,b),R4(c),R1,R3,R4}
れているリレーションR1とR2とR3とR4を属性(a,b,
c)について結合する質問のスケジュールを前記処理手
順で求める。通信設定のコストC0=5とする。前記手
順のstep2と3によって、次数ごとのリレーション集合
は次の通りである。 G′1={R4(a),R3(b),R4(c),R1,R2}, G2
={R3,R4} リレーション集合G′1において、前記手順のstep4に
より、次の転送とリレーションが選ばれる。 R4(a) → R2 …(18) R3(b)が削除され、G′1で得られた結果R′2とR4(c)
とR1をG2に付加すると、リレーション集合G′2は次
の通りとなる。 G′2={R′2(a,b),R4(c),R1,R3,R4}
【0039】前記手順のstep4にしたがって、次の転送
スケジュールが選ばれる。 R′2(a,b) → R3(a,b) → R4(a,b,c) → …(19) 前記手順のstep5では、関係R′4(b)をR1に転送し、
準結合をしてから結果の求めるノードに転送する。 R′4(b) → R1 → …(20) 前記(18),(19),(20)から、最終転送スケジ
ュールは次のようになる。 転送スケジュール:R4(a) → R2(a,b) → R3(a,b)
→ R4(a,b,c) →R′4(b) → R1 → そのコストは、次の式によって計算できる。
スケジュールが選ばれる。 R′2(a,b) → R3(a,b) → R4(a,b,c) → …(19) 前記手順のstep5では、関係R′4(b)をR1に転送し、
準結合をしてから結果の求めるノードに転送する。 R′4(b) → R1 → …(20) 前記(18),(19),(20)から、最終転送スケジ
ュールは次のようになる。 転送スケジュール:R4(a) → R2(a,b) → R3(a,b)
→ R4(a,b,c) →R′4(b) → R1 → そのコストは、次の式によって計算できる。
【0040】
【数3】
【0041】次に、複数属性を持つリレーションの選択
度について説明する。ここでは、複数属性による準結合
を行ったときの選択度について述べる。リレーションU
(a,b,…)をリレーションR(a,b)により準結合を行う。
リレーションR(a,b)を属性a,bに分けて別々に結合す
るのではなく、aとbペアを送って準結合するものとす
る。このとき、R(a,b)のタプルはDa×Dbからランダ
ムにtR個が選ばれたと考えると、リレーションR(a,b)
の選択度pRは次の式となる。 pR = tR/(Da×Db) …(21) R(a,b)のタプルをこのように選んだとすると、R(a,b)
のaまたはbの単一属性のタプル数の期待値が求められ
る。これを使って、特別の場合の近似式をtaについて
のみ与えると、taの期待値は次のようになる。
度について説明する。ここでは、複数属性による準結合
を行ったときの選択度について述べる。リレーションU
(a,b,…)をリレーションR(a,b)により準結合を行う。
リレーションR(a,b)を属性a,bに分けて別々に結合す
るのではなく、aとbペアを送って準結合するものとす
る。このとき、R(a,b)のタプルはDa×Dbからランダ
ムにtR個が選ばれたと考えると、リレーションR(a,b)
の選択度pRは次の式となる。 pR = tR/(Da×Db) …(21) R(a,b)のタプルをこのように選んだとすると、R(a,b)
のaまたはbの単一属性のタプル数の期待値が求められ
る。これを使って、特別の場合の近似式をtaについて
のみ与えると、taの期待値は次のようになる。
【0042】
【数4】
【0043】tbについても同様である。これから準結
合に用いるリレーションR(a,b)に関して、そのタプル
数tの他、単一属性のタプル数ta,tbが与えられてい
る場合を考える。このとき、t個のタプルはランダムに
選ばれるが、taとtbが与えられているため、前の場合
のサブアンサンブルを考える必要があり、その選択度は
前記(21)と一致しない恐れがある。準結合を受ける
リレーションU(a,b)のあるタプルχを考える。χの属
性aの値,bの値が、a,bの値の中にある確率pa,p
bは、 pa = ta/Da, pb = tb/Db …(23) である。この条件が満たされた上でχの中のab対の値
がR(a,b)の中のab対と一致する条件確率pabは、R
(a,b)のab対がta×tb個の対の中からランダムに選
ばれると考えて、 pab = t/(ta×tb) …(24) となる。(23)のpaとpbの積とpabを掛けて、R
(a,b)の選択度pは、 p = pa×pb×pab = t/(Da×Db) …(25) となり、(21)と一致していることが分かる。このよ
うにして、(21)または(25)の選択度の公式は、
十分な合理性を持つと考えられる。以上は2属性のこと
を考えたが、属性数が3以上の場合も同様に拡張でき
る。
合に用いるリレーションR(a,b)に関して、そのタプル
数tの他、単一属性のタプル数ta,tbが与えられてい
る場合を考える。このとき、t個のタプルはランダムに
選ばれるが、taとtbが与えられているため、前の場合
のサブアンサンブルを考える必要があり、その選択度は
前記(21)と一致しない恐れがある。準結合を受ける
リレーションU(a,b)のあるタプルχを考える。χの属
性aの値,bの値が、a,bの値の中にある確率pa,p
bは、 pa = ta/Da, pb = tb/Db …(23) である。この条件が満たされた上でχの中のab対の値
がR(a,b)の中のab対と一致する条件確率pabは、R
(a,b)のab対がta×tb個の対の中からランダムに選
ばれると考えて、 pab = t/(ta×tb) …(24) となる。(23)のpaとpbの積とpabを掛けて、R
(a,b)の選択度pは、 p = pa×pb×pab = t/(Da×Db) …(25) となり、(21)と一致していることが分かる。このよ
うにして、(21)または(25)の選択度の公式は、
十分な合理性を持つと考えられる。以上は2属性のこと
を考えたが、属性数が3以上の場合も同様に拡張でき
る。
【0044】まず、すべてのもっとも小さい単一属性を
考慮に入れる。単一属性のリレーションはサイズが小さ
くて、すべての情報を持っている。射影されるもっとも
小さい単一属性は、高次のリレーションから分離される
確率が高いため、転送コストも低い。次に、2次以上の
リレーションの準結合を考える。この段階では、複数属
性の準結合また結合が導入される。そのため、リレーシ
ョンの属性の間にある対応情報の損失をかなり小さい程
度に押さえることができ、かつ、小さい選択度(複数属
性を持つリレーションの選択度)で他のリレーションを
有効にレデュースすることができる。
考慮に入れる。単一属性のリレーションはサイズが小さ
くて、すべての情報を持っている。射影されるもっとも
小さい単一属性は、高次のリレーションから分離される
確率が高いため、転送コストも低い。次に、2次以上の
リレーションの準結合を考える。この段階では、複数属
性の準結合また結合が導入される。そのため、リレーシ
ョンの属性の間にある対応情報の損失をかなり小さい程
度に押さえることができ、かつ、小さい選択度(複数属
性を持つリレーションの選択度)で他のリレーションを
有効にレデュースすることができる。
【0045】すべてのリレーションを単一属性に射影し
てから結合するという従来の方法について検討してみ
る。表3に示す分散データベースを例に取ることにす
る。リレーションR2にすべての単一属性を送って結合
した結果、リレーションはサイズが216であるが、同様
にしてすべての単一属性とリレーションR3と準結合し
た結果、リレーションはサイズが11520である。この数
値と前述したすべての転送コスト121との差は明らかに
非常に大きい。これは、単一属性の準結合を用いて高次
リレーションのサイズが効果的に減らされないことを示
している。単一属性の限界とも言える。
てから結合するという従来の方法について検討してみ
る。表3に示す分散データベースを例に取ることにす
る。リレーションR2にすべての単一属性を送って結合
した結果、リレーションはサイズが216であるが、同様
にしてすべての単一属性とリレーションR3と準結合し
た結果、リレーションはサイズが11520である。この数
値と前述したすべての転送コスト121との差は明らかに
非常に大きい。これは、単一属性の準結合を用いて高次
リレーションのサイズが効果的に減らされないことを示
している。単一属性の限界とも言える。
【0046】また、リレーション(複数の属性を持つ)
をレデューサーに加わることについて、本発明の手順は
できるだけ多くのリレーションをレデューサーに入れて
いる。まず、低次のリレーションを入れて、高次のリレ
ーションを低次にしてから入れるようになっている。こ
のようにして、結合による効果を得ることができる。各
ノードのリレーションの次数や複数属性の選択度などの
情報を管理しなければならないのは、ネットワークのオ
ーバーヘッドを増やすのではないかという疑問点があ
る。しかし、実際の分散データベースを考えると、各ノ
ードで多くとも数キロバイトの情報量が増えるだけで、
大きい問題はない。
をレデューサーに加わることについて、本発明の手順は
できるだけ多くのリレーションをレデューサーに入れて
いる。まず、低次のリレーションを入れて、高次のリレ
ーションを低次にしてから入れるようになっている。こ
のようにして、結合による効果を得ることができる。各
ノードのリレーションの次数や複数属性の選択度などの
情報を管理しなければならないのは、ネットワークのオ
ーバーヘッドを増やすのではないかという疑問点があ
る。しかし、実際の分散データベースを考えると、各ノ
ードで多くとも数キロバイトの情報量が増えるだけで、
大きい問題はない。
【0047】
【効果】以上の説明から明らかなように、本発明による
と、分散データベースに合うモデルを使って、分散デー
タベースの質問処理最適化方式を提案しているので、複
数属性による準結合をレデューサーに入れる方式が非常
に有効で、結合演算も取り入れることができた。これら
はリレーションのn次の次数の概念の導入とその定量化
によって実現されている。また、転送コストを小さくす
ることができ、質問処理に要する全回線使用時間の短縮
化が図れる。
と、分散データベースに合うモデルを使って、分散デー
タベースの質問処理最適化方式を提案しているので、複
数属性による準結合をレデューサーに入れる方式が非常
に有効で、結合演算も取り入れることができた。これら
はリレーションのn次の次数の概念の導入とその定量化
によって実現されている。また、転送コストを小さくす
ることができ、質問処理に要する全回線使用時間の短縮
化が図れる。
【図1】 本発明による分散データベースの質問処理最
適化方式の一実施例を説明するための構成図である。
適化方式の一実施例を説明するための構成図である。
【図2】 本発明による分散データベースの質問処理最
適化方式の一実施例を示すフローチャートである。
適化方式の一実施例を示すフローチャートである。
【図3】 分散データベースの質問処理を説明する図で
ある。
ある。
【図4】 リレーションの結合と準結合を説明するため
の図である。
の図である。
1…局所処理手段、2…集合手段、3…抽出手段、4…
準結合操作手段、5…準結合手段、6…次数決定手段、
6a…判断手段、6b…分割手段、7…転送列作成手
段、8…制御手段。
準結合操作手段、5…準結合手段、6…次数決定手段、
6a…判断手段、6b…分割手段、7…転送列作成手
段、8…制御手段。
Claims (3)
- 【請求項1】 ネットワークで接続された複数のノード
に分散されたリレーショナルデータベースからなる分散
データベースシステムにおいて、リレーションのタプル
数が、該リレーション中のk個の相異なる任意の単一属
性毎のタプル数の積の最小値を超える場合の最大のkを
該リレーションの次数として決定する次数決定手段と、
複数属性で結合する質問に現れる各リレーション間で、
準結合してから他のノードに転送する方が、準結合せず
に直接他のノードに転送するよりコストが低いような準
結合をメリットのある準結合として求めて、これらのリ
レーション間の準結合を取った結果を転送列に加える操
作を行う準結合手段とを有し、リレーションを前記次数
決定手段で決定された次数毎に分けてリレーション集合
を作成し、この最も低い次数のリレーション集合から最
も高い次数のリレーション集合に対して順次、サイズの
小さいリレーションに対するメリットのある準結合を得
て、転送列を得ることを特徴とする分散データベースの
質問処理最適化方式。 - 【請求項2】 ネットワークで接続された複数のノード
に分散されたリレーショナルデータベースからなる分散
データベースシステムにおいて、各ノード内のリレーシ
ョンに対して、複数属性で結合する質問を射影と選択演
算及びノード内での結合として実行する局所処理手段
と、リレーションのタプル数が、該リレーション中のk
個の相異なる任意の単一属性毎のタプル数の積の最小値
を超える場合の最大のkを該リレーションの次数として
決定する次数決定手段と、前記局所処理した各リレーシ
ョンを次数毎に分けてリレーション集合を作る集合手段
と、前記集合手段で求めた最も小さい次数のリレーショ
ン集合を除くすべてのリレーション集合から、異なる単
一属性に対して最もサイズの小さいリレーションを一つ
ずつ抽出して該最も小さい次数のリレーション集合に付
加する抽出手段と、前記リレーション集合内でサイズの
最も小さいリレーションから最も大きいリレーションま
で順次、該リレーションとこれ以外のリレーション集合
内のリレーションに対して、準結合してから他のノード
に転送する方が、準結合せずに直接他のノードに転送す
るよりコストが低いような準結合を求めて、これらのリ
レーション間の準結合を取った結果を転送列に加える操
作を行う準結合操作手段と、前 記準結合操作手段で加え
た転送列を次に高い次数のリレーション集合に追加する
操作を、最も低い次数のリレーション集合から最も高い
次数のリレーション集合まで繰り返して行う制御手段と
を備え、前記制御手段は、最後に、結合されていないリ
レーションを直接に質問を求めるノードに転送するよう
にしたことを特徴とする分散データベースの質問処理最
適化方式。 - 【請求項3】 請求項2に記載の分散データベースの質
問最適化方式において、前記準結合操作手段は、他のリ
レーションと準結合を行ってもコストを低くできないと
き、そのリレーションをリレーション集合から削除し、
他のリレーションと共通の属性を持たないリレーション
は削除しないことを特徴とする分散データベースの質問
処理最適化方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08820892A JP3526585B2 (ja) | 1992-03-12 | 1992-03-12 | 分散データベースの質問処理最適化方式 |
US08/031,207 US5446886A (en) | 1992-03-12 | 1993-03-12 | System from optimizing query processing of multi-attribute distributed relations using local relation tuple numbers to choose semijoins |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08820892A JP3526585B2 (ja) | 1992-03-12 | 1992-03-12 | 分散データベースの質問処理最適化方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05257768A JPH05257768A (ja) | 1993-10-08 |
JP3526585B2 true JP3526585B2 (ja) | 2004-05-17 |
Family
ID=13936488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08820892A Expired - Fee Related JP3526585B2 (ja) | 1992-03-12 | 1992-03-12 | 分散データベースの質問処理最適化方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5446886A (ja) |
JP (1) | JP3526585B2 (ja) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE514994C2 (sv) * | 1993-12-03 | 2001-05-28 | Ericsson Telefon Ab L M | Sätt och anordning för utvinning av data ur en grupp av data |
US5600829A (en) * | 1994-09-02 | 1997-02-04 | Wisconsin Alumni Research Foundation | Computer database matching a user query to queries indicating the contents of individual database tables |
US5915257A (en) | 1994-10-11 | 1999-06-22 | Brio Technology, Inc. | Cross tab analysis and reporting method |
US5978577A (en) * | 1995-03-17 | 1999-11-02 | Csg Systems, Inc. | Method and apparatus for transaction processing in a distributed database system |
US5694591A (en) * | 1995-05-02 | 1997-12-02 | Hewlett Packard Company | Reducing query response time using tree balancing |
USRE37965E1 (en) * | 1995-09-27 | 2003-01-07 | International Business Machines Corporation | Method for localizing execution or subqueries and determining collocation of execution of subqueries in a parallel database |
US5745746A (en) * | 1996-06-24 | 1998-04-28 | International Business Machines Corporation | Method for localizing execution of subqueries and determining collocation of execution of subqueries in a parallel database |
US5740423A (en) * | 1995-12-28 | 1998-04-14 | Csg Systems, Inc. | System and method for accessing distributed data on a plurality of databases |
US5899997A (en) * | 1996-04-03 | 1999-05-04 | Transparency Systems, Inc. | Object-oriented query mechanism |
US6609100B2 (en) * | 1997-03-07 | 2003-08-19 | Lockhead Martin Corporation | Program planning management system |
US6990458B2 (en) * | 1997-08-28 | 2006-01-24 | Csg Systems, Inc. | System and method for computer-aided technician dispatch and communication |
US6513041B2 (en) * | 1998-07-08 | 2003-01-28 | Required Technologies, Inc. | Value-instance-connectivity computer-implemented database |
JP2000112982A (ja) * | 1998-10-07 | 2000-04-21 | Ricoh Co Ltd | 異種データベース統合システム |
DE10104831A1 (de) * | 2001-02-01 | 2002-08-08 | Sap Ag | Datenstruktur für Informationssysteme |
US7644050B2 (en) * | 2004-12-02 | 2010-01-05 | International Business Machines Corporation | Method and apparatus for annotation-based behavior extensions |
US7157643B2 (en) * | 2004-08-05 | 2007-01-02 | Thomas & Betts International, Inc. | Floor box with voltage divider |
US7562342B2 (en) * | 2004-12-02 | 2009-07-14 | International Business Machines Corporation | Method and apparatus for incrementally processing program annotations |
US7792851B2 (en) * | 2004-12-02 | 2010-09-07 | International Business Machines Corporation | Mechanism for defining queries in terms of data objects |
US7769747B2 (en) * | 2004-12-02 | 2010-08-03 | International Business Machines Corporation | Method and apparatus for generating a service data object based service pattern for an enterprise Java beans model |
US7882100B2 (en) * | 2005-01-24 | 2011-02-01 | Sybase, Inc. | Database system with methodology for generating bushy nested loop join trees |
US7584200B2 (en) * | 2005-01-31 | 2009-09-01 | International Business Machines Corporation | Graphical database navigator with relation level control |
US7496683B2 (en) * | 2006-07-27 | 2009-02-24 | International Business Machines Corporation | Maximization of sustained throughput of distributed continuous queries |
US7636712B2 (en) * | 2006-11-14 | 2009-12-22 | Microsoft Corporation | Batching document identifiers for result trimming |
US7853584B2 (en) * | 2006-12-05 | 2010-12-14 | International Business Machines Corporation | Multi-partition query governor in a computer database system |
US7680779B2 (en) | 2007-01-26 | 2010-03-16 | Sap Ag | Managing queries in a distributed database system |
US20080228700A1 (en) | 2007-03-16 | 2008-09-18 | Expanse Networks, Inc. | Attribute Combination Discovery |
US20090043752A1 (en) * | 2007-08-08 | 2009-02-12 | Expanse Networks, Inc. | Predicting Side Effect Attributes |
US20100076950A1 (en) * | 2008-09-10 | 2010-03-25 | Expanse Networks, Inc. | Masked Data Service Selection |
US7917438B2 (en) * | 2008-09-10 | 2011-03-29 | Expanse Networks, Inc. | System for secure mobile healthcare selection |
US8200509B2 (en) | 2008-09-10 | 2012-06-12 | Expanse Networks, Inc. | Masked data record access |
US20100063830A1 (en) * | 2008-09-10 | 2010-03-11 | Expanse Networks, Inc. | Masked Data Provider Selection |
US20100169313A1 (en) * | 2008-12-30 | 2010-07-01 | Expanse Networks, Inc. | Pangenetic Web Item Feedback System |
US20100169262A1 (en) * | 2008-12-30 | 2010-07-01 | Expanse Networks, Inc. | Mobile Device for Pangenetic Web |
US8255403B2 (en) * | 2008-12-30 | 2012-08-28 | Expanse Networks, Inc. | Pangenetic web satisfaction prediction system |
US8386519B2 (en) | 2008-12-30 | 2013-02-26 | Expanse Networks, Inc. | Pangenetic web item recommendation system |
US8108406B2 (en) | 2008-12-30 | 2012-01-31 | Expanse Networks, Inc. | Pangenetic web user behavior prediction system |
WO2010077336A1 (en) | 2008-12-31 | 2010-07-08 | 23Andme, Inc. | Finding relatives in a database |
US9262472B2 (en) * | 2012-04-26 | 2016-02-16 | Hewlett Packard Enterprise Development Lp | Concatenation for relations |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4769772A (en) * | 1985-02-28 | 1988-09-06 | Honeywell Bull, Inc. | Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases |
JPS61208124A (ja) * | 1985-03-12 | 1986-09-16 | Oki Electric Ind Co Ltd | 分散デ−タベ−ス管理システムにおける結合演算処理方式 |
US5121494A (en) * | 1989-10-05 | 1992-06-09 | Ibm Corporation | Joining two database relations on a common field in a parallel relational database field |
US5241648A (en) * | 1990-02-13 | 1993-08-31 | International Business Machines Corporation | Hybrid technique for joining tables |
US5325525A (en) * | 1991-04-04 | 1994-06-28 | Hewlett-Packard Company | Method of automatically controlling the allocation of resources of a parallel processor computer system by calculating a minimum execution time of a task and scheduling subtasks against resources to execute the task in the minimum time |
-
1992
- 1992-03-12 JP JP08820892A patent/JP3526585B2/ja not_active Expired - Fee Related
-
1993
- 1993-03-12 US US08/031,207 patent/US5446886A/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
疋田 定幸,図解分散型データベースシステム,日本,株式会社オーム社,1989年 5月25日,第1版,P.94〜95 |
Also Published As
Publication number | Publication date |
---|---|
US5446886A (en) | 1995-08-29 |
JPH05257768A (ja) | 1993-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3526585B2 (ja) | 分散データベースの質問処理最適化方式 | |
US6728758B2 (en) | Agent for performing process using service list, message distribution method using service list, and storage medium storing program for realizing agent | |
CN102171680B (zh) | 用于基于列的数据编码结构的查询的高效大规模过滤和/或排序 | |
US6510429B1 (en) | Message broker apparatus, method and computer program product | |
US6775682B1 (en) | Evaluation of rollups with distinct aggregates by using sequence of sorts and partitioning by measures | |
JP4856541B2 (ja) | データベースの自動的および動的な提供 | |
Bloesch et al. | ConQuer: a conceptual query language | |
US5903887A (en) | Method and apparatus for caching result sets from queries to a remote database in a heterogeneous database system | |
CN107247758B (zh) | 基于银行核心系统的数据处理方法 | |
JPH0556541B2 (ja) | ||
US11151099B2 (en) | System and method for data structure migration control | |
EP2680151A1 (en) | Distributed data base system and data structure for distributed data base | |
US20040243590A1 (en) | Technique for using a current lookup for performing multiple merge operations using source data that is modified in between the merge operations | |
JP2004110219A (ja) | データ処理システム及びジョイン処理方法 | |
US8655920B2 (en) | Report updating based on a restructured report slice | |
JPH07253991A (ja) | ジョイン処理方式 | |
US7899784B2 (en) | Method and apparatus for performing multi-table merge operations in a database environment | |
US7020656B1 (en) | Partition exchange loading technique for fast addition of data to a data warehousing system | |
JPH05225250A (ja) | 関係データベースのテーブル結合方式 | |
CN100573511C (zh) | 产生分析数据结构的自定义等级体系的系统和方法 | |
US20040243591A1 (en) | Pipleline merge operations using source data and multiple destination data structures | |
US7043491B1 (en) | Partition exchange technique for operating a data warehousing system | |
KR101549655B1 (ko) | 병렬처리방식의 데이터베이스 이중화 방법 및 그 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 | |
US8818987B2 (en) | Converting union commands to union all commands | |
CN100367216C (zh) | 事件模型中的快速事件匹配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040217 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080227 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |