JPH07253991A - ジョイン処理方式 - Google Patents

ジョイン処理方式

Info

Publication number
JPH07253991A
JPH07253991A JP6045620A JP4562094A JPH07253991A JP H07253991 A JPH07253991 A JP H07253991A JP 6045620 A JP6045620 A JP 6045620A JP 4562094 A JP4562094 A JP 4562094A JP H07253991 A JPH07253991 A JP H07253991A
Authority
JP
Japan
Prior art keywords
sub
processing means
data
main
join
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
Application number
JP6045620A
Other languages
English (en)
Inventor
Toshio Matsumoto
利夫 松本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP6045620A priority Critical patent/JPH07253991A/ja
Priority to GB9502768A priority patent/GB2287807B/en
Priority to US08/388,616 priority patent/US5613142A/en
Publication of JPH07253991A publication Critical patent/JPH07253991A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
    • G06F7/36Combined merging and sorting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • G06F16/2456Join operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing

Abstract

(57)【要約】 【目的】 マルチプロセッサ状のリレーショナル・デー
タベースのジョイン処理をマスタ処理装置に負荷をかけ
ることなく効率良く行なう。 【構成】 マスタ処理装置1、及び複数のスレーブ処理
装置3a〜3d、及びディスク装置4a〜4dを備えた
システムにおいて、データ5a〜5d、及び6a〜6c
がディスク装置に分散して格納されている。各スレーブ
処理装置は第1の副テーブル300aを抽出しマスタ処
理装置に転送し、マスタ処理装置は第1の主テーブルを
作成する。各スレーブ処理装置は第1の主テーブルを参
照することにより、第2のデータを選択的に抽出し、第
2の副テーブル400aを生成する。マスタ処理装置1
は第2の副テーブルをマージすることにより第2の主テ
ーブル200を生成する。そして第1の主テーブルと第
2の主テーブルを用いて結合処理を行なう。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はリレーショナル・データ
ベースにおけるリレーションをジョイン・フィールドに
基づいてジョインするジョイン処理方式に関するもので
ある。
【0002】
【従来の技術】図22、および図23は、例えば特開平
3−156571号公報に示された従来の技術によるリ
レーショナル・データベースにおけるジョイン処理方式
を説明するためのブロック図である。図において、1は
情報を処理するマスタ処理装置、3a〜3cはマスタ処
理装置1によって制御されるスレーブ処理装置、4a〜
4cはスレーブ処理装置3a〜3cに接続されたスレー
ブディスク装置、50a〜50cおよび60a〜60c
はそれぞれレコード単位でスレーブディスク装置4a〜
4cに分割して格納されたリレーション、70a〜70
cおよび80a〜80cはそれぞれリレーション50a
〜50cおよび60a〜60cのジョイン・フィールド
F1、9a〜9cはリレーション50a〜50cのその
他のフィールドF2、10a〜10cはリレーション6
0a〜60cのその他のフィールドF3、11a〜11
cおよび12a〜12cはそれぞれリレーション50a
〜50cおよび60a〜60cの各レコードのアドレ
ス、13a〜13cおよび14a〜14cはそれぞれリ
レーション50a〜50cおよび60a〜60cから抽
出されたジョイン・フィールドF1(70a〜70cお
よび80a〜80c)とレコード・アドレス11a〜1
1cおよび12a〜12cとからなりジョイン・フィー
ルドF1(70a〜70cおよび80a〜80c)の値
に基づいてソートされたアドレス・テーブルである。1
5および16はそれぞれスレーブ処理装置3a〜3cか
らマスタ処理装置1に転送されたアドレス・テーブル1
3a〜13cおよび14a〜14cをマスタ処理装置1
がジョイン・フィールドF1(70および80)の値に
基づいてマージソートしたアドレス・テーブル、17a
〜17cおよび18a〜18cはそれぞれアドレス・テ
ーブル15および16に対してジョイン・フィールドF
1(70と80)の突き合わせ比較処理を行いジョイン
条件を満たすレコードのレコード・アドレスを求めレコ
ード・アドレス中のスレーブ処理装置の番号により分類
し、各スレーブ処理装置ごとに作成したアドレス・テー
ブルである。19a〜19cおよび20a〜20cはマ
スタ処理装置1からスレーブ処理装置3a〜3cに転送
されたアドレス・テーブル17a〜17cおよび18a
〜18c中のレコード・アドレス11a〜11cおよび
12a〜12cを参照してスレーブ処理装置3a〜3c
がスレーブディスク装置4a〜4c中のリレーション5
0a〜50cおよび60a〜60cから読み込んだジョ
イン条件を満たすレコードの集合、21および22は各
スレーブ処理装置3a〜3cで得られたジョイン条件を
満たすレコードの集合19a〜19cおよび20a〜2
0cをマスタ処理装置1に転送してマージしたレコード
の集合、23はジョイン処理の結果として得られるレコ
ードの集合である。
【0003】この従来例のジョイン処理方式の特徴とす
るところは、リレーショナル・データベースにおけるリ
レーションをレコード単位で上記各スレーブディスク装
置(各スレーブ記憶手段)4a〜4cに分割して格納
し、ジョインされるリレーションのジョイン・フィール
ドを各スレーブディスク装置(各スレーブ記憶手段)4
a〜4cから抽出してソートする処理を各スレーブ処理
装置(各スレーブ処理手段)3a〜3cで並列に実行さ
せることである。
【0004】即ち、この従来例では、リレーショナル・
データベースにおけるジョインされるリレーションのそ
れぞれについて上記各スレーブ処理装置3a〜3cが並
列に上記各スレーブディスク装置4a〜4cからジョイ
ン・フィールドを読み込んで、スレーブ処理装置3a〜
3cの番号を含むそのレコードのアドレスとジョイン・
フィールドとからなるアドレス・テーブルを作成し、そ
のアドレス・テーブルをジョイン・フィールドの値に基
づいてソートしてマスタ処理装置1に転送し、マスタ処
理装置1は各スレーブ処理装置3a〜3cから転送され
たアドレス・テーブルに基づいてジョイン条件に合致す
るレコードのレコード・アドレスのみを選択し、この結
果を各スレーブ処理装置3a〜3cに転送し、各スレー
ブ処理装置3a〜3cはジョインされるリレーションの
それぞれについてマスタ処理装置1から転送されたレコ
ード・アドレスに基づきジョインされるレコード中の必
要なフィールドをスレーブディスク装置4a〜4cから
読み込んで、ジョイン・フィールドとそれらの必要なフ
ィールドとからなるレコードの集合をマスタ処理装置1
に転送し、マスタ処理装置1が各スレーブ処理装置3a
〜3cから転送されたレコードの集合に基づいてジョイ
ン処理を行なうようにしている。
【0005】
【発明が解決しようとする課題】マルチプロセッサ上で
動作するリレーショナル・データベースにおいて、従来
のジョイン処理では、マスタとなるプロセッサがスレー
ブとなるプロセッサに先ず第1テーブルのデータを要求
し、次に単純に第2テーブルのデータを要求した後、こ
れをジョインキー・チェックして不要データを捨ててジ
ョインしていた。この場合、第2テーブルのデータには
本来必要でないレコードも含まれているため効率が悪い
という問題点があった。
【0006】マルチプロセッサ上で動作するリレーショ
ナル・データベースのジョイン処理で、スレーブからジ
ョインする2つのテーブルのジョインキーとレコード・
アドレスを先ずマスタに転送してジョインキー・チェッ
クをした後、必要なレコードを再度抽出してマスタでジ
ョインをする場合において、従来は全レコードのジョイ
ンキーとレコード・アドレスをマスタに送っていたため
マスタで全レコードのジョインキー・チェックを行なう
必要があった。
【0007】マルチプロセッサ上で動作するリレーショ
ナル・データベースにおいて、従来のジョイン処理で
は、各スレーブから抽出したテーブルデータのジョイン
キー・チェック及びジョインをマスタプロセッサで実行
していた。このためマスタプロセッサがネックになり並
列化のメリットが少なくなっていた。
【0008】この発明は以上のような問題点を解決する
ためになされたものであり、マルチプロセッサを用いた
システムに構築されたリレーショナル・データベースに
おいて、ジョイン処理を高速に行なうジョイン処理方式
を提供することを目的とする。
【0009】特にマスタ処理装置と複数のスレーブ処理
装置を有し、複数のスレーブ処理装置にデータが分散さ
れて格納されているようなデータベースにおいて、マス
タ処理装置に負荷が係らないようなジョイン処理方式を
提供することを目的とする。また、マスタ処理装置とス
レーブ処理装置の間のデータ転送量を減少させたジョイ
ン処理方式を提供することを目的とする。また、複数の
スレーブ処理装置を用いてジョイン処理の一部の動作を
並列的に行なわせるジョイン処理方式を提供することを
目的とする。また、複数のスレーブ処理装置においてジ
ョインキー・チェックやジョイン処理自身を行なわせる
ジョイン処理方式を提供することを目的とする。
【0010】
【課題を解決するための手段】第1の発明に係るジョイ
ン処理方式は、情報を処理する主処理手段と、上記主処
理手段により制御される複数の副処理手段と、上記副処
理手段毎に接続された複数の記憶手段とを備え、関連す
る第1と第2のデータを上記複数の記憶手段に分散して
記憶させジョインキーにより分散して記憶された関連す
る第1と第2のデータを結合させ結果テーブルを作成す
るジョイン処理方式において、ジョインキー・チェック
を各副処理手段により行なうことを特徴とする。
【0011】第2の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、第1のデータの抽出結果に基づいて各副処
理手段から主処理手段に転送する第2のデータを選択す
ることを特徴とする。
【0012】第3の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、データの結合を各副処理手段により行なう
ことを特徴とする。
【0013】第4の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、上記各副処理手段は上記記憶手段に記憶さ
れた第1のデータから結合候補となるデータを抽出して
ジョインキーを含む第1の副テーブルを作成し、第1の
副テーブルを主処理手段に転送し、上記主処理手段は、
上記第1の副テーブルを各副処理手段から受信して第1
の主テーブルを作成し、上記各副処理手段は、上記第1
の主テーブルのジョインキーと上記記憶手段に記憶され
た第2のデータをジョインキーで照合し、第2のデータ
の中でジョインキーと合致したデータを抽出して第2の
副テーブルを作成するとともに、第2の副テーブルを主
処理手段へ転送し、上記主処理手段は上記第2の副テー
ブルを各副処理手段から受信して第2の主テーブルを作
成し、第1と第2の主テーブルを用いてデータを結合し
結果テーブルを作成することを特徴とする。
【0014】第5の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、上記各副処理手段は上記記憶手段に記憶さ
れた第1のデータから結合候補となるデータを抽出して
ジョインキーを含む第1の副テーブルを作成し、第1の
副テーブルを主処理手段に転送し、上記主処理手段は、
上記第1の副テーブルを各副処理手段から受信して第1
の主テーブルを作成し、作成された第1の主テーブルに
含まれたジョインキーのハッシュ値を計算してハッシュ
表を作成し、ハッシュ表を各副処理手段に転送し、上記
各副処理手段は、上記ハッシュ表を受信し、上記記憶手
段に記憶された第2のデータのジョインキーのハッシュ
値を計算し、受信したハッシュ表のハッシュ値と照合し
てハッシュ値が一致したデータを結合候補となるデータ
として抽出し第2の副テーブルを作成し、第2の副テー
ブルを主処理手段に転送し、上記主処理手段は、上記第
2の副テーブルを各副処理手段から受信して第2の主テ
ーブルを作成し、第1と第2の主テーブルを用いてデー
タを結合し結果テーブルを作成することを特徴とする。
【0015】第6の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、上記各副処理手段は、上記記憶手段に記憶
された第1のデータから結合候補となるデータのジョイ
ンキーとアドレスを抽出して第1の副テーブルを作成
し、第1の副テーブルを主処理手段へ転送し、上記主処
理手段は、上記第1の副テーブルを各副処理手段から受
信して第1の主テーブルを作成し、上記各副処理手段
は、上記第1の主テーブルのデータを参照して上記記憶
手段に記憶された第2のデータから同じジョインキーを
有するデータを抽出して第2の副テーブルを作成し、第
2の副テーブルを上記主処理手段へ転送し、上記主処理
手段は、上記第2の副テーブルを各副処理手段から受信
して第2の主テーブルを作成し、第1と第2の主テーブ
ルを用いてデータを結合し結果テーブルを作成すること
を特徴とする。
【0016】第7の発明に係るジョイン処理方式は、上
記主処理手段は、上記第1の主テーブルにフラグフィー
ルドを設け、上記各副処理手段が上記第1の主テーブル
のデータを参照して上記記憶手段に記憶された第2のデ
ータから同じジョインキーを有するデータを抽出して第
2の副テーブルを作成する場合に、その参照結果をフラ
グフィールドに記憶させることを特徴とする。
【0017】第8の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、上記各副処理手段は上記記憶手段に記憶さ
れた第1のデータから結合候補となるデータを抽出して
ジョインキーを含む第1の副テーブルを作成し、第1の
副テーブルを主処理手段に転送し、上記主処理手段は、
上記第1の副テーブルを各副処理手段から受信して第1
の主テーブルを作成し、作成された第1の主テーブルに
含まれたジョインキーのハッシュ値を計算してハッシュ
表を作成し、ハッシュ表を各副処理手段に転送し、上記
各副処理手段は、上記ハッシュ表を受信し、上記記憶手
段に記憶された第2のデータのジョインキーのハッシュ
値を計算し、受信したハッシュ表のハッシュ値と照合し
てハッシュ値が一致したデータのジョインキーとアドレ
スを抽出して第2の副テーブルを作成し、第2の副テー
ブルを主処理手段に転送し、上記主処理手段は、上記第
2の副テーブルを各副処理手段から受信して第2の主テ
ーブルを作成し、第1と第2の主テーブルを用いてデー
タを結合し結果テーブルを作成することを特徴とする。
【0018】第9の発明に係るジョイン処理方式は、情
報を処理する主処理手段と、上記主処理手段により制御
される複数の副処理手段と、上記副処理手段毎に接続さ
れた複数の記憶手段とを備え、関連する第1と第2のデ
ータを上記複数の記憶手段に分散して記憶させジョイン
キーにより分散して記憶された関連する第1と第2のデ
ータを結合させ結果テーブルを作成するジョイン処理方
式において、上記各副処理手段は上記記憶手段に記憶さ
れた第1のデータから結合候補となるデータを抽出して
ジョインキーを含む第1の副テーブルを作成し、第1の
副テーブルを主処理手段に転送し、上記主処理手段は、
上記第1の副テーブルを各副処理手段から受信して第1
の主テーブルを作成し、上記第1の主テーブルを各副処
理手段に転送し、上記各副処理手段は、上記第1の主テ
ーブルを受信し、ジョインキーを用いて上記記憶手段に
記憶された第2のデータと受信した第1の主テーブルの
データの結合して結果副テーブルを作成し、結果副テー
ブルを主処理手段に転送し、上記主処理手段は上記結果
副テーブルを各副処理手段から受信して結果テーブルを
作成することを特徴とする。
【0019】第10の発明に係るジョイン処理方式は、
上記副処理手段は、ジョインキーとアドレスを抽出して
ジョインキー・チェックを行ない、ジョインキー・チェ
ック後に、アドレスからレコードを抽出してデータを結
合することを特徴とする。
【0020】第11の発明に係るジョイン処理方式は、
上記副処理手段は、互いにデータを転送するデータ転送
手段を備えたことを特徴とする。
【0021】
【作用】第1の発明に係るジョイン処理方式において
は、ジョインキー・チェックを複数の副処理手段に行な
わせることによりジョインキー・チェックが並列実行可
能になる。また、主処理手段においてはジョインキー・
チェックを行なう必要がないため、主処理手段の負荷が
減少する。さらに、ジョインキー・チェックを副処理手
段に行なわせることにより副処理手段から主処理手段に
転送するデータ量が減少する。
【0022】第2の発明に係るジョイン処理方式におい
ては、第2のデータを抽出する場合に第1のデータの抽
出結果に基づいて抽出するため、不要なデータを抽出す
ることがなくなる。この結果、副処理手段から主処理手
段に転送するデータ量を減少させることができる。ま
た、主処理手段においては不要なデータが少ない、或い
は全く存在しないため効率よい結合処理を行なうことが
出来る。
【0023】第3の発明に係るジョイン処理方式におい
ては、データの結合を副処理手段によって行なうため主
処理手段において結合処理を行なうことがなく、主処理
手段の負荷が減少する。
【0024】第4の発明に係るジョイン処理方式におい
ては、各副処理手段においてジョインキーを参照するこ
とにより、第2のデータを選択するため無駄なデータを
選択することがなくなる。従って、副処理手段から主処
理手段に転送するデータ量が減少する。
【0025】第5の発明に係るジョイン処理方式におい
ては、副処理手段がハッシュ表を用いて第2のデータを
選択するので無駄なデータを選択する場合が限られる。
従って、副処理手段から主処理手段に転送されるデータ
の量が減少する。また、ハッシュ表は主処理手段により
作成され各副処理手段に転送されるが、実際のレコード
やアドレスを転送する場合に比べて非常に少ない情報量
で構成することができるため、他の例に比べて主処理手
段から副処理手段に転送するデータ量を削減することが
できる。
【0026】第6の発明に係るジョイン処理方式におい
ては、レコードのデータを用いるのでは無くアドレスを
用いている点が特徴である。アドレスを用いる場合は実
際のレコードのデータを用いるよりも少ない情報で処理
が可能になる。従って、生成されるテーブルのサイズ
や、転送されるデータ量を減少させることができる。ま
た、アドレスを用いて実際のレコードを抽出する場合に
は、既にジョインキー・チェックが終了しているため無
駄の無いレコード抽出を行なうことが可能になる。この
ようにアドレスを用いることにより、扱うデータ量や転
送するデータ量を削減できる。このアドレスを用いる場
合にも、前述したように副処理手段が第2のデータを抽
出する場合にジョインキーを参照し、合致したデータだ
けを選択するため無駄なデータを抽出することがなくな
る。
【0027】第7の発明に係るジョイン処理方式におい
ては、第1の主テーブルにフラグフィールドを設けて、
副処理手段が第2の副テーブルを作成する場合にデータ
を抽出したものに対応してフラグを持たせることができ
るので、ジョインキー・チェック処理を主処理手段から
省略することができる。即ち、副処理手段において実質
的にジョインキー・チェックが行なわれその結果がフラ
グフィールドに記憶させられることになる。
【0028】第8の発明に係るジョイン処理方式におい
ては、前述したアドレスを抽出する第6の発明と、同じ
く前述したハッシュ表を用いてデータ抽出を行なう場合
を組み合わせたものである。従って前述した第5の発明
の作用と、第6の発明の作用とを組み合わせた作用を持
つものである。
【0029】第9の発明に係るジョイン処理方式におい
ては、複数の副処理手段において結合処理を行なうた
め、結合処理を並列実行することができる。また、主処
理手段は結合処理を行なう必要が無く主処理手段の負荷
が減少する。
【0030】第10の発明に係るジョイン処理方式にお
いては、前述した第9の発明においてアドレスを抽出す
る場合を前提としたものであり、複数の副処理手段がジ
ョインキー・チェックおよび結合処理を行なうことによ
り処理の並列化が計れる。また、主処理手段はジョイン
キー・チェック及び結合処理を行なう必要がない。さら
に、実際のレコードのデータを用いるよりも少ない情報
で処理が可能になる。
【0031】第11の発明に係るジョイン処理方式にお
いては、副処理手段が互いにデータを転送するデータ転
送手段を備えているため、主処理手段を介さずにデータ
の転送が行なえる。従って、主処理手段の負荷が更に減
少する。また、副処理手段同士がデータ転送を行なうこ
とにより主処理手段が行なっていたマージ処理を各副処
理手段に行わせることができ、主処理手段のマージ処理
が減少する。
【0032】
【実施例】
実施例1.図1は、この発明に係るジョイン処理方式を
説明するためのシステム構成図である。図において、1
は主処理手段となるマスタ処理装置、また3a〜3dは
副処理手段となるスレーブ処理装置、4a〜4dはスレ
ーブ処理装置に接続されたディスク装置である。5a〜
5dはディスク装置4a〜4dにそれぞれ分散して格納
された社員データ、6a〜6dは同じくディスク装置4
a〜4dに分散して格納された売上データである。
【0033】このようにこの実施例においては、情報を
処理するマスタ処理装置と、マスタ処理装置によって制
御される複数のスレーブ処理装置と、これら複数のスレ
ーブ処理装置に接続された記憶装置を備え、リレーショ
ナル・データベースにおけるリレーションをレコード単
位でディスク装置に分割して格納している。
【0034】このようなシステム構成において、図2に
示すようなコマンドを入力する場合について説明する。
図2は、田中という姓の社員の売上数量及び商品を求め
るために図1に示したシステムに対して投入されるコマ
ンドを示したものである。このコマンドはSQLと呼ば
れるデータベース検索言語を用いて記述したものである
が、コマンドの形式はSQLに限らずどのようなもので
あっても構わない。このコマンドは社員データから社員
の氏名を取り出すとともに、売上データから数量と商品
を選択することを命令するものである。そのときの条件
は、社員の姓が田中であるという条件を付けている。ま
た、社員データと売上データの結合は、ジョインキーと
呼ばれるキーを用いてジョイン条件が一致する場合に選
択が行なわれる。図2に示す例においてはジョイン条件
は社員データのマンナンバと、売上データのマンナンバ
が一致する場合にデータを選択するというものである。
また、この例においては、データを結合するためのジョ
インキーはマンナンバを用いることを示している。以
下、この例では、ジョインキーとしてマンナンバを用い
る場合を説明する。また、この例では社員データのマン
ナンバと、売上データのマンナンバをジョイン条件に基
づいて一致しているかどうかをチェックすることをジョ
インキー・チェックと呼ぶことにする。
【0035】次に、図3を用いてこの実施例の動作原理
について説明する。図3において、300aは社員デー
タ5aから図2に示すコマンドに従って抽出された第1
の副テーブル、100は各スレーブ処理装置3a〜3b
から送られてきた第1の副テーブル300a〜300d
をマージした第1の主テーブル、400aは第1の主テ
ーブル100を参照することにより、売上データ6aか
ら抽出された第2の副テーブル、200はスレーブ処理
装置3a〜3dから転送される第2の副テーブル400
a〜400dをマージした第2の主テーブルである。こ
の実施例はスレーブ処理装置からマスタ処理装置に渡す
売上データに対してフィルタリングを行って、スレーブ
処理装置からマスタ処理装置に対して送るレコード件数
を減らす点に特徴がある。具体的にはマスタ処理装置の
第1の主テーブル100がジョインキーでソートされて
いるものとし、各スレーブ処理装置3a〜3dにおいて
売上データから関連するデータを取り出す際に、マスタ
処理装置に作成された第1の主テーブル100を参照す
ることにより抽出する件数を減らすものである。即ち、
マスタ処理装置でジョインキー・チェックを行なうので
はなく、スレーブ処理装置においてジョインキー・チェ
ックを行なう点が特徴である。マスタ処理装置に作られ
た第1の主テーブルのジョインキーを直接参照すること
により、スレーブ処理装置3a〜3dはそれぞれ売上デ
ータの各レコードと突き合わせを行い、ジョインキーが
一致しない不要なデータは捨て、一致するものだけを第
2の副テーブル400a〜400dとして作成する。こ
のように第2の副テーブル400a〜400dに残った
レコードだけをマスタ処理装置1に転送する。このよう
にジョインキー・チェックをスレーブ処理装置で行なう
ことにより、各スレーブ処理装置3a〜3dにおいてジ
ョインキー・チェックを並列に処理できるので全体とし
て高速な処理が行なえる。また、マスタ処理装置とスレ
ーブ処理装置間のデータの転送量が減少する。
【0036】図4は、図3に示した動作原理の詳細説明
図である。図において(1)〜(9)は動作順を示すも
のであり、この順に従って以下に説明する。
【0037】(1)社員データ5aから姓が田中の社員
を抽出する。ここで抽出するのは姓が田中の社員の氏名
とマンナンバである。抽出した氏名とマンナンバは抽出
後の社員テーブル301aとして記憶する。
【0038】(2)抽出後の社員テーブル301aをジ
ョインキーであるマンナンバでソートし、ソート後の社
員テーブル300aを作成する。このソート後の社員テ
ーブルは前述した図3における第1の副テーブルに相当
する。
【0039】(3)ソート後の社員テーブル300aを
マスタ処理装置に転送する。
【0040】(4)マスタ処理装置は転送された社員テ
ーブル300aと他のスレーブ処理装置からの社員テー
ブル300b〜300dをマンナンバでマージソート
し、社員テーブル100を作成する。この社員テーブル
100は図3に示した第1の主テーブルに相当する。
【0041】(5)一方、スレーブ処理装置において
は、売上データ6aからジョインキーのマンナンバでソ
ートしたソート後の売上テーブル401aを作成する。
【0042】(6)スレーブ処理装置はマスタ処理装置
で作成された社員テーブル100を参照し、ソート後の
売上テーブル401aから社員テーブル100にマンナ
ンバがあるレコードのみを抽出する。すなわち、テーブ
ル100、401aの各先頭レコードから順にマンナン
バのつきあわせを行なうことによりジョインキー・チェ
ックがスレーブ処理装置側で行なわれる。このジョイン
キー・チェックにより売上テーブル400aが作成され
る。この400aは図3に示した第2の副テーブルに相
当する。売上テーブル400aは既にジョインキー・チ
ェックを行なわれているため、結合処理に必要なデータ
のみが抽出されており、無駄なデータが存在しない。
【0043】(7)スレーブ処理装置側は売上テーブル
400aをマスタ処理装置に転送する。マスタ処理装置
側は売上テーブル400aを受信する。
【0044】(8)また、マスタ処理装置側は他のスレ
ーブ処理装置から送られてきた売上テーブル400b〜
400dを受信し、これら4つの売上テーブル400a
〜400dをマンナンバでマージソートする。マージソ
ートした結果、売上テーブル200を作成する。この売
上テーブルは図3に示した第2の主テーブルに相当す
る。
【0045】(9)マスタ処理装置側は社員テーブル1
00と売上テーブル200の各レコードの結合を行な
い、結果テーブル500を作成する。
【0046】以上のように、この実施例はマスタ処理装
置側にジョインキー・チェックを行なうための社員テー
ブル100を完成させ、スレーブ処理装置側でこの完成
された社員テーブル100を参照することにより、ジョ
インキー・チェックを行なう点を特徴としている。ジョ
インキー・チェックが複数のスレーブ処理装置で行なわ
れることによりジョインキー・チェックが同時に並列的
に行なわれるため処理速度が向上する。また、スレーブ
処理装置側からマスタ処理装置側へ転送する売上テーブ
ルには結合に必要なレコードのみしか存在しないため、
最小限のレコード転送ですむ。
【0047】実施例2.図5は、この発明に係るジョイ
ン処理方式の他の例を示す図である。図5は動作原理を
示す図である。図において、前述した実施例と異なる点
は、第1の主テーブル100が生成されてから、第1の
主テーブルに基づきハッシュ表600を作成する点であ
る。第1の主テーブル100に存在するジョインキーか
らハッシュ値を計算し、ハッシュ表600を作成し、マ
スタ処理装置からスレーブ処理装置3a〜3dに転送す
る。各スレーブ処理装置3a〜3dは転送されたハッシ
ュ表600を参照し、売上データのジョインキーを計算
し、ハッシュ表に登録されたハッシュ値と一致する場合
にはジョインされるデータの候補としてそのデータを抽
出し、第2の副テーブル400aを生成する。この例に
おいても、スレーブ処理装置からマスタ処理装置に渡す
第2の副テーブルのデータがハッシュ表を用いてフィル
タリングされるため、第2の副テーブルのレコード件数
を減らすことができる。さらに、スレーブ処理装置側で
作成される第2の副テーブル400a〜400dのレコ
ード件数が少なくなるので、マスタ処理装置でのデータ
のマージ処理およびジョインキー・チェック処理が高速
に行なわれる。また、スレーブ処理装置からマスタ処理
装置へのデータ転送量が減少する。
【0048】次に図6及び図7は、この実施例の詳細説
明図である。図6はスレーブ処理装置側の動作を示す図
である。また図7はマスタ処理装置側の動作を示す図で
ある。図において(1)〜(9)は動作順を示してお
り、以下この動作順に従って説明する。
【0049】(1)社員データ5aから姓が田中の社員
を抽出する。抽出したデータは抽出後の社員テーブル3
01aとして登録される。
【0050】(2)抽出後の社員テーブル301aをジ
ョインキーであるマンナンバでソートする。ソートした
結果はソート後の社員テーブル300aとして登録され
る。このソート後の社員テーブル300aは図5に示し
た第1の副テーブルに相当する。
【0051】(3)ソート後の社員テーブル300aを
マスタ処理装置に転送する。
【0052】(4)マスタ処理装置は転送された社員テ
ーブル300aを受信する。マスタ処理装置はソート後
の社員テーブルを各スレーブ処理装置から受信し、受信
した社員テーブル300a〜300dをマンナンバでマ
ージソートして社員テーブル100を作成する。この社
員テーブル100は図5に示した第1の主テーブルに相
当する。
【0053】(5)社員テーブル100からマンナンバ
を用いてハッシュ値を計算する。図8はマンナンバを用
いてハッシュ値を計算する計算方法を示す図である。こ
の例においては、マンナンバが4バイトの整数形の形式
で格納されており。ハッシュ値が1バイトの場合を示し
ている。マンナンバの4つのバイトを加算し、加算した
結果を1バイトの加算値とする。加算の結果、桁あふれ
が生じた場合は無視する。例えばマンナンバ「8286
012」の場合には4バイトの整数形コードが「007
E6F3C」となり、「00」と「7E」と「6F」と
「3C」をそれぞれ加算すると「129」となり、先頭
の「1」は桁あふれとして無視され、ハッシュ値は「2
9」となる。このように1バイトのハッシュ値を計算す
る場合には、ハッシュ値は全部で256通りでき、全て
のマンナンバがこのいずれかのハッシュ値に割り振られ
ることになる。マスタ処理装置はこのハッシュ値を計算
し、ハッシュ表を作成する。
【0054】(6)マスタ処理装置で作成されたハッシ
ュ表は各々のスレーブ処理装置3a〜3dに転送され
る。ハッシュ表は前述したように00からFFまでの2
56通りのフラグで表わされる。図6のハッシュ表60
0に示すように社員テーブル100から計算されたハッ
シュ値のフラグはオンになっていて、社員テーブル10
0に有ることを示しており、その他のハッシュ値に該当
するフラグは0(オフ)になっている。従って、全体で
256ビットの情報(32バイトの情報)が必要であ
る。マスタ処理装置からスレーブ処理装置へのハッシュ
表の転送はこの32バイトの情報を転送するのみであ
り、システムに対して大きな影響を与えることはない。
【0055】(7)ハッシュ表を受信したスレーブ処理
装置は、このハッシュ表を参照しながら売上データ6a
からデータを抽出する。売上データ6aの各レコードに
存在するジョインキーのハッシュ値を計算し、計算され
たハッシュ値のフラグがハッシュ表600でオンになっ
ていれば、これをジョイン処理を行なう候補データとし
て選択する。選択されたデータは売上テーブル401a
として記憶される。このように、各スレーブ処理装置に
おいてハッシュ表600を用いてジョインの候補となる
データを選択するため生成される売上テーブル401a
〜401dから不要な売上データが除かれる点がこの実
施例の特徴である。
【0056】(8)売上テーブル401aは、ジョイン
キーであるマンナンバでソートされソート後の売上テー
ブル400aが生成される。
【0057】(9)ソート後の売上テーブル400aは
マスタ処理装置に転送される。
【0058】(10)各スレーブ処理装置から転送され
てきた売上テーブル400a〜400dはマンナンバで
マージソートされ、1つの売上テーブル200として生
成される。この売上テーブル200は図5に示した第2
の主テーブルに相当する。
【0059】(11)社員テーブル100と売上テーブ
ル200を用いて結合処理を行なう。この結合処理はマ
ンナンバを用いたジョインキー・チェックにより結合さ
れる。売上テーブル200にあるレコードは既にハッシ
ュ表を参照して選択されたものであるため、レコード件
数が減少しており、結合処理が高速に行なわれる。この
結合処理の結果、結果テーブル500が作成される。
【0060】この実施例によれば、ハッシュ表を用いて
スレーブ処理装置側で売上テーブルのレコード件数を減
少させているため、スレーブ処理装置からマスタ処理装
置へ送るデータ転送量を減少させることができる。また
マスタ処理装置におけるジョインキー・チェック処理が
効率よく行える。
【0061】実施例3.図9はこの実施例で用いる社員
データと売上データを示す図である。この実施例におい
ては、社員データと売上データをそのまま用いるのでは
なくジョインキーとなるマンナンバとそれぞれのレコー
ドが存在しているレコード・アドレスを用いる場合につ
いて説明する。図8に示すように、ディスク装置4aの
社員データに対しては1000番台のアドレスがふられ
ており、売上データに対しては2000番台のレコード
・アドレスがふられているものとする。また、ディスク
装置4bの社員データに対しては3000番台のレコー
ド・アドレスがふられており、売上データに対しては4
000番台のアドレスがふられているものとする。同様
にディスク装置4c及び4dに対しても社員データ及び
売上データに対しては異なるレコード・アドレスがふら
れているものとする。このように社員データ、売上デー
タは各ディスク装置4a〜4dに分散して格納されてい
るが、レコード・アドレスを参照することにより、その
レコードがどのディスク装置に格納されているものかを
判別することができる。例えば、5005番地というレ
コード・アドレスを持つレコードはディスク装置4cの
データであるということを判別することができる。
【0062】以下、このようなデータを用いる場合につ
いて説明する。図10及び図11はこの発明に係るジョ
イン処理方式の他の例を示す図である。図10はスレー
ブ処理装置側の動作を示しており、図11はマスタ処理
装置側の動作を示している。
【0063】以下、この実施例の動作を順に説明する。 (1)社員データ5aから姓が田中の社員のマンナンバ
とアドレスを抽出する。この例においては、前述した実
施例と異なりアドレスを抽出する点が特徴である。抽出
されたマンナンバとアドレスは抽出後のアドレス・テー
ブル301aとして記憶される。
【0064】(2)抽出後のアドレス・テーブル301
aをジョインキーであるマンナンバでソートし、ソート
後のアドレス・テーブル300aを生成する。このソー
ト後のアドレス・テーブル300aは図5に示した第1
の副テーブルに相当する。
【0065】(3)ソート後のアドレス・テーブル30
0aをマスタ処理装置に転送する。
【0066】(4)マスタ処理装置では転送されたアド
レス・テーブルを受信する。マスタ処理装置は各スレー
ブ処理装置3a〜3dからアドレス・テーブル300a
〜300dを受信し、これらをマンナンバでマージソー
トしたアドレス・テーブル100を生成する。
【0067】(5)スレーブ処理装置では売上データ6
aからマンナンバとアドレスを抽出する。その際、マン
ナンバでソートし、ソート後のアドレス・テーブル40
1aを生成する。
【0068】(6)マスタ処理装置で生成されたアドレ
ス・テーブル100を参照し、ソート後のアドレス・テ
ーブル401aにあるマンナンバが一致するものを結合
される候補データとして抽出し、アドレス・テーブル4
00aを生成する。このように、マスタ処理装置で生成
したアドレス・テーブル100のマンナンバを参照する
ことにより、スレーブ処理装置側でデータを選択する点
がこの実施例の特徴である。このように、データの選択
をスレーブ処理装置側で行なうことにより生成されるア
ドレス・テーブル400aのレコード件数が減少する。
また、これらの選択は各スレーブ処理装置で行なわれて
おり選択処理が並列的に行なわれる。
【0069】(7)スレーブ処理装置はアドレス・テー
ブル400aをマスタ処理装置に転送する。
【0070】(8)マスタ処理装置は転送されたアドレ
ス・テーブルを受信する。マスタ処理装置は各スレーブ
処理装置3a〜3dから受信したアドレス・テーブル4
00a〜400dをマンナンバでマージソートしたアド
レス・テーブル200を生成する。このアドレス・テー
ブル200は図5に示した第2の主テーブルに相当す
る。
【0071】(9)社員データから生成されたアドレス
・テーブル100と、売上データから生成されたアドレ
ス・テーブル200を用いてジョインキー・チェックを
行なう。このジョインキー・チェックの結果ジョインキ
ーが一致するレコードを抽出したテーブル101、20
1を生成する。
【0072】(10)テーブル101を各スレーブ処理
装置3a〜3dに分割し、分割後のテーブル102を作
成する。アドレス・テーブル100に示すように、アド
レスが1000番台のものはスレーブ処理装置3aより
送られたレコードであり、アドレス3000番台のもの
はスレーブ処理装置3bから送られたものであるという
ことがアドレスにより区別することができる。従って、
このアドレスを用いてテーブル101のレコードを再び
各スレーブ処理装置3a〜3dのレコードに分割するこ
とができる。このようにして作成されたテーブルがテー
ブル102である。実際にはこの分割後のテーブルは各
スレーブ処理装置に分割されており、4つの細分化され
たテーブル102a〜102dが存在する。
【0073】(11)分割後のテーブル102をマスタ
処理装置からスレーブ処理装置に転送する。
【0074】(12)スレーブ処理装置は転送されたア
ドレス・テーブル102aを参照し、社員データ5aか
らアドレス・テーブル102aに記憶されているアドレ
スのレコードを抽出する。抽出したレコードは社員テー
ブル302aとして記憶される。
【0075】(13)抽出された社員テーブル302a
はマスタ処理装置に転送される。マスタ処理装置は転送
された社員テーブル302aを受信する。またマスタ処
理装置は他のスレーブ処理装置からの社員テーブル30
2b〜302dを受信する。
【0076】(14)マスタ処理装置は受信した社員テ
ーブル302a〜302dをマージして社員テーブル1
03を作成する。
【0077】(15)一方、売上データから生成された
アドレス・テーブルを用いたジョインキー・チェックに
よりキーが一致するレコードを抽出したテーブル201
から各スレーブ処理装置ごとに分割されたテーブル20
4a〜204dを作成する。テーブル201にあるアド
レスを用いることにより、前述したようにどのスレーブ
処理装置から送られてきたレコードであるかどうかをア
ドレスにより判別することができる。従って、マスタ処
理装置はアドレスを参照することによりそのレコードが
どのスレーブ処理装置から送られてきたかを判定し、4
つの分割後のテーブル204a〜204dを作成するこ
とができる。
【0078】(16)マスタ処理装置は作成した分割後
のテーブルを各々のスレーブ処理装置に転送する。スレ
ーブ処理装置は転送されたテーブル204aを受信す
る。
【0079】(17)スレーブ処理装置では受信したテ
ーブル204aを参照して売上データ6aからテーブル
204aに記憶されたアドレスにあるレコードを抽出す
る。抽出したレコードは売上テーブル402aとして記
憶される。
【0080】(18)売上テーブル402aはマスタ処
理装置に転送される。マスタ処理装置は各スレーブ処理
装置から転送されてきた売上テーブル402a〜402
dを受信する。
【0081】(19)マスタ処理装置は受信した売上テ
ーブル402a〜402dをマージして売上テーブル2
02を作成する。
【0082】(20)社員テーブル103と売上テーブ
ル202を用いてジョイン結合処理を行い、結果テーブ
ル500を作成する。
【0083】以上のように、この実施例はスレーブ処理
装置からマスタ処理装置にわたすデータとしてジョイン
キーとアドレスを送付する場合、ジョインキーとアドレ
スを無条件に送るのではなく、各スレーブ処理装置にお
いてフィルタリングを行なってから送るようにしたもの
である。このフィルタリングを行なうことによりスレー
ブ処理装置からマスタ処理装置へ送るデータ件数を減ら
すことができる。また、フィルタリング処理は各スレー
ブ処理装置で並列的に行なわれる。
【0084】実施例4.図12及び図13は、この発明
に係るジョイン処理方式の他の例を示す図である。図1
2はスレーブ処理装置側の動作を示す詳細図であり、図
13はマスタ処理装置側の動作を示す詳細図である。
【0085】この実施例においても、図9に示したよう
なデータを用いてジョインキーであるマンナンバとアド
レスを抽出してジョイン処理を行なう場合について説明
する。
【0086】この実施例の動作は、(1)〜(5)まで
は前述した実施例3と同様であるのでここではその説明
を省略する。但し、この実施例で異なる点は社員データ
5aから抽出されてマスタ処理装置に生成されたアドレ
ス・テーブル100にジョインキー・チェック結果を保
持するフィールドを追加した点である。
【0087】以下、このフィールドをどのように用いる
かについて、(6)以降の動作を説明する。 (6)前述した実施例3と同様にアドレス・テーブル1
00を参照しながらアドレス・テーブル401aからマ
ンナンバが一致したレコードを抽出してアドレス・テー
ブル400を生成する。その際、マンナンバが一致した
ものに対してはアドレス・テーブル100にあるフィー
ルドを1にする。アドレス・テーブル100のフィール
ドは予めゼロクリアされており、このマンナンバによる
ジョインキー・チェックの結果、一致した場合には該当
するフィールドを0から1にする。このようにこの実施
例ではスレーブ処理装置側においてジョインキー・チェ
ックを行なうことが特徴であり、このジョインキー・チ
ェック結果をマスタ処理装置側のアドレス・テーブルの
フィールドに保持させる点を特徴としている。このよう
に、ジョインキー・チェックをスレーブ処理装置側で行
なってしまうため、生成されたアドレス・テーブル40
0aは既にジョインキー・チェックが済んだレコードの
みとなるため、結合処理が行なわれるレコードとして確
定されたものとなる。
【0088】(7)アドレス・テーブル400aのアド
レスに基づいて売上データ6aから該当するレコードを
抽出する。抽出されたレコードは売上テーブル402a
として記憶される。
【0089】(8)一方、マスタ処理装置においてはア
ドレス・テーブル100においてフィールドが1になっ
たものだけを抽出し、そのアドレスにより各スレーブ処
理装置に対応するテーブルを作成する。
【0090】(9)マスタ処理装置は作成したテーブル
を各々の対応するスレーブ処理装置へ転送する。転送さ
れたアドレス・テーブル203aをスレーブ処理装置で
受信する。
【0091】(10)受信したアドレス・テーブル20
3aを参照しながら該当するアドレスのレコードを社員
データ5aから抽出する。抽出したデータは社員テーブ
ル302aとして記憶される。
【0092】(11)社員テーブル302aはマスタ処
理装置に転送される。マスタ処理装置は転送された社員
テーブル302aを受信する。
【0093】(12)マスタ処理装置は各スレーブ処理
装置から転送されてきた社員テーブル302a〜302
dをマージソートして社員テーブル105を作成する。
【0094】(13)社員テーブル105は各スレーブ
処理装置に転送される。スレーブ処理装置は社員テーブ
ル105を受信する。
【0095】(14)スレーブ処理装置は受信した社員
テーブル105と売上テーブル402aの結合処理を行
なう。結果サブテーブル500aとして記憶される。
【0096】(15)スレーブ処理装置は結果サブテー
ブル500aをマスタ処理装置に転送する。マスタ処理
装置は各スレーブ処理装置から転送されてきた結果サブ
テーブル500a〜500dを受信する。
【0097】(16)マスタ処理装置は受信した結果サ
ブテーブル500a〜500dをマージして結果テーブ
ル500を生成する。
【0098】以上のようにこの実施例は、ジョインキー
・チェックをスレーブ処理装置側で並列的に行なうと共
に、スレーブ処理装置側で行なわれたジョインキー・チ
ェックのチェック結果をアドレス・テーブル100のフ
ィールドに記憶することを特徴としているものである。
このようにスレーブ処理装置側でジョインキー・チェッ
クを行なうため、スレーブ処理装置側で選択されるレコ
ード件数を少なくすることが出来る。また、スレーブ処
理装置側からマスタ処理装置に送るレコード件数を少な
くすることによりデータ転送量を削減することができ
る。
【0099】実施例5.図14及び図15はこの発明に
係るジョイン処理方式の他の例を示す図である。図14
はスレーブ処理装置側の動作詳細図であり、図15はマ
スタ処理装置側の動作詳細図である。
【0100】図において(1)〜(10)までの動作は
前述した実施例2と同様のものである。異なる点は社員
データ5a及び売上データ6aから抽出されるデータが
社員データ、売上データではなくアドレスである点であ
る。即ち、社員データ5aから抽出されるのはマンナン
バとアドレスであり、売上データ6aから抽出されるの
は同様にマンナンバとアドレスである。このようにアド
レスが抽出される点を除けば(1)〜(10)までの動
作は、実施例2に示した(1)〜(10)までの動作と
同様である。ここで特徴となるのは(7)に示すように
ハッシュ表を用いて売上データ6aから結合の対象とな
る候補データを選択している点である。売上データのマ
ンナンバからハッシュ値を算出し、ハッシュ表にあるハ
ッシュ値と一致した場合にはそのレコードを結合の候補
データとして選択するが、ハッシュ表に存在しない場合
にはそのレコードを捨ててしまうことによりアドレス・
テーブル401aのレコード件数を削除することができ
る。従って、スレーブ処理装置からマスタ処理装置に送
るデータのレコード件数を減少させることができるとと
もに、マスタ処理装置におけるジョインキー・チェック
の処理を削減することができる。
【0101】次に(11)〜(22)までの動作は実施
例3に示した(9)〜(20)までの処理と同様のもの
である。即ち、この実施例においてもアドレスを抽出し
ているため、このアドレスを用いて社員データと売上デ
ータを再び選択しなおす作業をしなければならない。
(11)〜(22)の動作はアドレスから実際の社員デ
ータ及び売上データを抽出しジョイン処理を行なうもの
である。
【0102】実施例6.図16及び図17は、この発明
に係るジョイン処理方式の他の例を示す図である。図1
6はスレーブ処理装置側の動作詳細図であり、図17は
マスタ処理装置側の動作詳細図である。この実施例で特
徴となる点は、マスタ処理装置が複数のスレーブ処理装
置からのデータを収集しマージソートする作業を行なう
ことに徹している点である。この実施例では複数のスレ
ーブ処理装置から社員テーブルを収集してマージした結
果1つの社員テーブルを生成することと、最終的に結合
処理が行なわれたレコードを各スレーブ処理装置から収
集してマージするという2つのマージ作業だけをマスタ
が行なう例について説明する。
【0103】以下、動作を順に説明する。 (1)社員データ5aから姓が田中の社員を抽出する。
抽出したレコードは社員テーブル301aとして記録す
る。
【0104】(2)抽出後の社員テーブル301aをジ
ョインキーであるマンナンバでソートする。ソートした
結果はソート後の社員テーブル300aとして記憶す
る。
【0105】(3)ソート後の社員テーブル300aを
マスタ処理装置に転送する。マスタ処理装置は転送され
た社員テーブル300aを受信する。また、マスタ処理
装置は各スレーブ処理装置から社員テーブル300b〜
300dを受信する。
【0106】(4)マスタ処理装置は受信した社員テー
ブル300a〜300dをマンナンバでマージし、社員
テーブル100を生成する。
【0107】(5)マスタ処理装置は生成した社員テー
ブル100を各スレーブ処理装置に転送する。スレーブ
処理装置は社員テーブル100を受信する。
【0108】(6)売上データ6aからジョインキーで
あるマンナンバでソートした売上テーブル400aを抽
出する。
【0109】(7)マスタ処理装置から転送された社員
テーブル100と売上テーブル400aの結合を行な
い、結果サブテーブル500aを生成する。
【0110】(8)スレーブ処理装置は生成した結果サ
ブテーブル500aをマスタ処理装置に転送する。マス
タ処理装置は転送された結果サブテーブル500aを受
信する。また、マスタ処理装置はその他のスレーブ処理
装置から送られた結果サブテーブル500a〜500d
を受信する。
【0111】(9)マスタ処理装置は受信した結果サブ
テーブル500a〜500dをマージすることにより結
果テーブル500を得る。このように、この実施例はジ
ョインキー・チェック及びジョイン処理を全てスレーブ
処理装置に行なわせることを特徴としている。スレーブ
処理装置にはマスタ処理装置で作成された社員テーブル
100が転送されているため、社員テーブル100と売
上テーブルを参照することによりジョイン処理をスレー
ブ処理装置で行なうことが可能になる。従ってジョイン
処理がスレーブ処理装置側で並列に実行でき、高速な処
理が可能になる。また、このジョイン処理はスレーブ処
理装置側で行なわれるため、マスタ処理装置側ではジョ
イン処理を行なう必要がなくマスタ処理装置の負荷が無
くなる。
【0112】実施例7.図18及び図19は、この発明
に係るジョイン処理方式の他の例を示す図である。図1
8はスレーブ処理装置側の動作詳細図であり、図19は
マスタ処理装置側の動作詳細図である。
【0113】この例で、特に特徴となる点は前述した実
施例と同様にマスタ処理装置側は複数のスレーブ処理装
置からのデータを収集し、マージするという作業に徹し
ている点である。
【0114】この実施例においては、最初にアドレスを
抽出して次に実際のデータを抽出する例を説明するが、
マスタ処理装置は社員データから抽出されたアドレスを
複数のスレーブ処理装置から収集してマージソートする
ことと、複数のスレーブ処理装置でジョインキー・チェ
ックが行なわれた後のアドレスを収集してマージソート
することと、アドレスによって抽出された社員テーブル
を収集してマージソートすることと、最終的に結合処理
が行なわれたレコードを収集してマージするという4つ
のマージ作業を行なう場合について説明する。マスタ処
理装置はこの4つのマージ作業を行なうのみであり。そ
の他の処理、即ちジョインキー・チェックやジョイン処
理は全てスレーブ処理装置側で行なわれる。
【0115】以下、この実施例の動作について説明す
る。 (1)〜(5)各スレーブ処理装置で社員データから社
員テーブルを抽出しマスタ処理装置でこれらの抽出され
た社員テーブル300a〜300dを収集し、マージソ
ートしたテーブル100を生成する。この生成されたテ
ーブル100は各スレーブ処理装置に転送される。
【0116】(6)〜(11)転送されたテーブル10
0及び売上データから抽出されたテーブルを用いてジョ
インキー・チェックを行ない、一致すると判定されたテ
ーブルを作成する。このテーブルは再びマスタ処理装置
に送られ、マスタ処理装置は各スレーブ処理装置からの
テーブルをマージソートしてテーブル110を作成す
る。このテーブルはアドレスにより各スレーブ処理装置
毎に分割され、転送される。
【0117】(12)〜(15)転送されたテーブルの
アドレスを用いて社員データ5aから該当するレコード
を抽出する。スレーブ処理装置はこの抽出したレコード
をマスタ処理装置に転送する。マスタ処理装置は各スレ
ーブ処理装置からの抽出されたレコードをマージソート
して再びスレーブ処理装置へ転送する。
【0118】(16)〜(19)スレーブ処理装置は転
送されたレコードと売上データから抽出されたレコード
の結合処理を行ない、結果サブテーブル500aを生成
する。この結果サブテーブル500aはマスタ処理装置
に転送される。マスタ処理装置は、各スレーブ処理装置
から転送された結果サブテーブル500a〜500dを
マージし、最終的に結果テーブル500を得る。
【0119】以上のように、この実施例はマスタ処理装
置は単にマージ処理と転送処理を行なうだけであり、そ
の他のジョインキー・チェックやジョイン処理をスレー
ブ処理装置に行なわせるのでマスタ処理装置の負荷が大
幅に減少する。
【0120】実施例8.図20及び図21は、この発明
に係るジョイン処理方式の他の例を示す図である。図2
0はスレーブ処理装置側の動作詳細図であり、図21は
マスタ処理装置側の動作詳細図である。この実施例にお
いては、社員データ及び売上データからアドレスを抽出
し、その後実際のレコードを抽出する場合であっても、
即ち実施例7に示すような場合であっても、マスタ処理
装置のマージ処理を実施例6に示したものと同様な負荷
とする場合について説明する。実施例7で述べたよう
に、社員データおよび売上データからアドレスを抽出し
た場合には後にそのレコードを抽出しなければならない
という処理が入るため、マスタ処理装置側でマージする
処理回数が多くなっていた。しかし、この実施例ではス
レーブ処理装置同士がデータの転送を行なえるようにな
っており、スレーブ処理装置同士のデータ転送によりマ
スタ処理装置のマージする処理を減少させようとしたも
のである。図20及び図21が、前述した実施例7の図
18及び図19と異なる点は、図18及び図19の
(8)〜(15)までの処理である。(8)〜(15)
の処理はアドレスから実際のレコードを抽出するための
マージ処理をマスタ処理装置側で2回行なっていたが、
この例においては図20に示すようにマスタ処理装置側
のマージ処理をなくしている。
【0121】以下(8)〜(15)まで順を追って説明
する。 (8)ジョインキー・チェックが行なわれた結果、キー
値が一致したテーブルが作成されるが、このテーブルに
はアドレスが含まれているため、そのアドレスを用いて
スレーブ処理装置に対応するデータに分割する。
【0122】(9)分割したテーブルを各スレーブ処理
装置に転送する。この転送方法は直接スレーブ処理装置
に転送しても構わないし、或いはマスタ処理装置を経由
する場合でも構わない。マスタ処理装置を経由する場合
でもマスタ処理装置は単にデータを転送するのみであり
マージ処理が存在しない為、大きな負荷にはならない。
【0123】(10)他のスレーブ処理装置から転送さ
れてきた分割後のテーブル及び、自分自身のスレーブ処
理装置で分割した自分のテーブルを受信する。
【0124】(11)これら4つの分割されたテーブル
をマージする。マージする際には重複したアドレスがあ
る場合には重複したアドレスを除去する。
【0125】(12)マージ後のテーブルにあるアドレ
スを用いて、社員データの中から該当するレコードを抽
出する。
【0126】(13)抽出したレコードをソートし、ソ
ートしたテーブルを各スレーブ処理装置に転送する。
【0127】(14)他のスレーブ処理装置から転送さ
れてきたレコードと自分自身のスレーブ処理装置にある
レコードを受信する。
【0128】(15)受信した4つのテーブルをマンナ
ンバでマージソートする。このようにして社員テーブル
120が生成される。それ以降の処理については前述し
た実施例と同様なのでここでは説明を省略する。
【0129】以上のように、この実施例で特徴となる点
はマスタ処理装置の負荷を更に減少させた点である。特
にスレーブ処理装置側がスレーブ処理装置同士でデータ
を転送しあうことによりマスタ処理装置の負荷を前述し
た実施例よりも更に減少させることができる。
【0130】実施例9.上記実施例においては、テーブ
ルを転送する場合、或いはテーブルを参照する場合、或
いはハッシュ表を転送する場合、或いはハッシュ表を参
照する場合等いくつかの例をあげたが、テーブルや表を
参照する例に対してはテーブルや表を転送するようにし
てもよい、或いはテーブルや表を転送する例に対しては
テーブルや表を参照するようにしても構わない。テーブ
ルや表を参照する場合はマスタ処理装置とスレーブ処理
装置の間のトラフィック量が多くなるが、データが一方
のみに存在しているため、他方の装置のメモリ領域を圧
迫しないというメリットがある。一方、データを転送す
る場合は、転送された側のメモリを圧迫するというデメ
リットはあるが、一度テーブルや表が転送されてしまえ
ばマスタ処理装置とスレーブ処理装置側での参照関係が
なくなるためマスタ処理装置とスレーブ処理装置のトラ
フィック量を減少させることができる。
【0131】実施例10.上記実施例においては、社員
データ及び売上データのレコードをそのまま用いる場
合、或いは社員データ及び売上データのアドレスを用い
る場合を示したが、レコードを用いる場合とアドレスを
用いる場合を組み合わせても構わない、例えば社員デー
タから抽出されるデータとしてはマンナンバとアドレス
を用い、売上データから抽出されるデータとしてはマン
ナンバとレコードのデータそのものを抽出するようにし
ても構わない、或いはその逆であっても構わない。
【0132】実施例11.上記実施例においては、社員
データと売上データの2種類のデータを用いる場合につ
いて説明したが、ジョイン処理を行なう場合は2種類の
データを結合する場合に限らず、3種類のデータ、或い
は4種類のデータを結合するような場合であっても構わ
ない。
【0133】
【発明の効果】以上のように第1の発明によれば、ジョ
インキー・チェックを各副処理手段により行なうので、
主処理手段のジョインキー・チェックが無くなり主処理
手段の負荷が減少する。
【0134】又、第2の発明によれば、第1のデータの
抽出結果に基づいて第2のデータを選択するので、無駄
なデータ抽出を行なわずにすむ。その結果、副処理手段
から主処理手段へのデータ転送量が減少するとともに、
主処理手段の結合処理が効率良く行なわれる。
【0135】第3の発明によれば、データの結合を副処
理手段において行なうので、データの結合を並列実行す
ることができる。また主処理手段の負荷を減少させるこ
とができる。
【0136】第4の発明によれば、第1の主テーブルを
作成して第1の主テーブルにより第2のデータを選択的
に抽出するため、不要なデータを減少させることができ
る。
【0137】第5の発明によれば、ハッシュ表を用いて
第2のデータを抽出すようにしたので、無駄なデータを
抽出する機会が減少する。またこの抽出は副処理手段で
行なわれるが、ハッシュ表自身が少ない情報量で構成さ
れているため、副処理手段のメモリを圧迫せずにデータ
の抽出が行なえる。
【0138】第6の発明によれば、第4の発明の効果に
加えて更にアドレスを用いてジョインキー・チェックを
行なうため、ジョインキー・チェック迄の処理が少ない
情報量で行なえる。
【0139】第7の発明によれば、副処理手段において
行なわれたジョインキー・チェックの結果を主処理手段
にある第1の主テーブルのフラグフィールドに記憶させ
るようにしたので、主処理手段において再びジョインキ
ー・チェックを行なう必要がなくなり主処理手段の負荷
を減少させることができる。
【0140】第8の発明によればアドレスを用いて抽出
する場合と、ハッシュ表を用いて抽出する場合の両方の
効果を享受することができる。
【0141】第9の発明によれば、結合処理を各副処理
手段で行なうようにしたので結合処理が並列実行できる
と共に主処理手段の負荷を減少させることができる。
【0142】第10の発明によれば、前述した第9の発
明の効果に加えてアドレスを用いてジョインキー・チェ
ックを行なうようにしたので、少ない情報量を用いた処
理を行なうことができる。
【0143】第11の発明によれば、副処理手段がデー
タ転送手段を備えたので互いにデータを転送しあうこと
により主処理手段の負荷を更に減少させることができ
る。
【図面の簡単な説明】
【図1】この発明のジョイン処理方式の基本構成図であ
る。
【図2】この発明のジョイン処理方式を説明するための
コマンド例を示す図である。
【図3】この発明の第1の実施例の動作原理図である。
【図4】この発明の第1の実施例の詳細説明図である。
【図5】この発明の第2の実施例の動作原理図である。
【図6】この発明の第2の実施例のスレーブ処理装置の
動作説明図である。
【図7】この発明の第2の実施例のマスタ処理装置の動
作説明図である。
【図8】この発明の実施例2におけるハッシュ値計算方
式を示す図である。
【図9】この発明の第3の実施例のデータ説明図であ
る。
【図10】この発明の第3の実施例のスレーブ処理装置
の動作説明図である。
【図11】この発明の第3の実施例のマスタ処理装置の
動作説明図である。
【図12】この発明の第4の実施例のスレーブ処理装置
の動作説明図である。
【図13】この発明の第4の実施例のマスタ処理装置の
動作説明図である。
【図14】この発明の第5の実施例のスレーブ処理装置
の動作説明図である。
【図15】この発明の第5の実施例のマスタ処理装置の
動作説明図である。
【図16】この発明の第6の実施例のスレーブ処理装置
の動作説明図である。
【図17】この発明の第6の実施例のマスタ処理装置の
動作説明図である。
【図18】この発明の第7の実施例のスレーブ処理装置
の動作説明図である。
【図19】この発明の第7の実施例のマスタ処理装置の
動作説明図である。
【図20】この発明の第8の実施例のスレーブ処理装置
の動作説明図である。
【図21】この発明の第8の実施例のマスタ処理装置の
動作説明図である。
【図22】従来例におけるジョイン処理方式のブロック
図である。
【図23】従来例におけるジョイン処理方式のブロック
図である。
【符号の説明】
1 マスタ処理装置 3a〜3d スレーブ処理装置 4a〜4d ディスク装置 5a〜5d 社員データ 6a〜6d 売上データ 100 第1の主テーブル 200 第2の主テーブル 300a〜300d 第1の副テーブル 400a〜400d 第2の副テーブル

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、ジョインキー・チェック
    を各副処理手段により行なうことを特徴とするジョイン
    処理方式。
  2. 【請求項2】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、第1のデータの抽出結果
    に基づいて各副処理手段から主処理手段に転送する第2
    のデータを選択することを特徴とするジョイン処理方
    式。
  3. 【請求項3】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、データの結合を各副処理
    手段により行なうことを特徴とするジョイン処理方式。
  4. 【請求項4】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、 上記各副処理手段は上記記憶手段に記憶された第1のデ
    ータから結合候補となるデータを抽出してジョインキー
    を含む第1の副テーブルを作成し、第1の副テーブルを
    主処理手段に転送し、 上記主処理手段は、上記第1の副テーブルを各副処理手
    段から受信して第1の主テーブルを作成し、 上記各副処理手段は、上記第1の主テーブルのジョイン
    キーと上記記憶手段に記憶された第2のデータをジョイ
    ンキーで照合し、第2のデータの中でジョインキーと合
    致したデータを抽出して第2の副テーブルを作成すると
    ともに、第2の副テーブルを主処理手段へ転送し、 上記主処理手段は上記第2の副テーブルを各副処理手段
    から受信して第2の主テーブルを作成し、第1と第2の
    主テーブルを用いてデータを結合し結果テーブルを作成
    することを特徴とするジョイン処理方式。
  5. 【請求項5】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、 上記各副処理手段は上記記憶手段に記憶された第1のデ
    ータから結合候補となるデータを抽出してジョインキー
    を含む第1の副テーブルを作成し、第1の副テーブルを
    主処理手段に転送し、 上記主処理手段は、上記第1の副テーブルを各副処理手
    段から受信して第1の主テーブルを作成し、作成された
    第1の主テーブルに含まれたジョインキーのハッシュ値
    を計算してハッシュ表を作成し、ハッシュ表を各副処理
    手段に転送し、 上記各副処理手段は、上記ハッシュ表を受信し、上記記
    憶手段に記憶された第2のデータのジョインキーのハッ
    シュ値を計算し、受信したハッシュ表のハッシュ値と照
    合してハッシュ値が一致したデータを結合候補となるデ
    ータとして抽出し第2の副テーブルを作成し、第2の副
    テーブルを主処理手段に転送し、 上記主処理手段は、上記第2の副テーブルを各副処理手
    段から受信して第2の主テーブルを作成し、第1と第2
    の主テーブルを用いてデータを結合し結果テーブルを作
    成することを特徴とするジョイン処理方式。
  6. 【請求項6】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、 上記各副処理手段は、上記記憶手段に記憶された第1の
    データから結合候補となるデータのジョインキーとアド
    レスを抽出して第1の副テーブルを作成し、第1の副テ
    ーブルを主処理手段へ転送し、 上記主処理手段は、上記第1の副テーブルを各副処理手
    段から受信して第1の主テーブルを作成し、 上記各副処理手段は、上記第1の主テーブルのデータを
    参照して上記記憶手段に記憶された第2のデータから同
    じジョインキーを有するデータを抽出して第2の副テー
    ブルを作成し、第2の副テーブルを上記主処理手段へ転
    送し、 上記主処理手段は、上記第2の副テーブルを各副処理手
    段から受信して第2の主テーブルを作成し、第1と第2
    の主テーブルを用いてデータを結合し結果テーブルを作
    成することを特徴とするジョイン処理方式。
  7. 【請求項7】 上記主処理手段は、上記第1の主テーブ
    ルにフラグフィールドを設け、上記各副処理手段が上記
    第1の主テーブルのデータを参照して上記記憶手段に記
    憶された第2のデータから同じジョインキーを有するデ
    ータを抽出して第2の副テーブルを作成する場合に、そ
    の参照結果をフラグフィールドに記憶させることを特徴
    とする請求項6記載のジョイン処理方式。
  8. 【請求項8】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、 上記各副処理手段は上記記憶手段に記憶された第1のデ
    ータから結合候補となるデータを抽出してジョインキー
    を含む第1の副テーブルを作成し、第1の副テーブルを
    主処理手段に転送し、 上記主処理手段は、上記第1の副テーブルを各副処理手
    段から受信して第1の主テーブルを作成し、作成された
    第1の主テーブルに含まれたジョインキーのハッシュ値
    を計算してハッシュ表を作成し、ハッシュ表を各副処理
    手段に転送し、 上記各副処理手段は、上記ハッシュ表を受信し、上記記
    憶手段に記憶された第2のデータのジョインキーのハッ
    シュ値を計算し、受信したハッシュ表のハッシュ値と照
    合してハッシュ値が一致したデータのジョインキーとア
    ドレスを抽出して第2の副テーブルを作成し、第2の副
    テーブルを主処理手段に転送し、 上記主処理手段は、上記第2の副テーブルを各副処理手
    段から受信して第2の主テーブルを作成し、第1と第2
    の主テーブルを用いてデータを結合し結果テーブルを作
    成することを特徴とするジョイン処理方式。
  9. 【請求項9】 情報を処理する主処理手段と、上記主処
    理手段により制御される複数の副処理手段と、上記副処
    理手段毎に接続された複数の記憶手段とを備え、関連す
    る第1と第2のデータを上記複数の記憶手段に分散して
    記憶させジョインキーにより分散して記憶された関連す
    る第1と第2のデータを結合させ結果テーブルを作成す
    るジョイン処理方式において、 上記各副処理手段は上記記憶手段に記憶された第1のデ
    ータから結合候補となるデータを抽出してジョインキー
    を含む第1の副テーブルを作成し、第1の副テーブルを
    主処理手段に転送し、 上記主処理手段は、上記第1の副テーブルを各副処理手
    段から受信して第1の主テーブルを作成し、上記第1の
    主テーブルを各副処理手段に転送し、 上記各副処理手段は、上記第1の主テーブルを受信し、
    ジョインキーを用いて上記記憶手段に記憶された第2の
    データと受信した第1の主テーブルのデータの結合して
    結果副テーブルを作成し、結果副テーブルを主処理手段
    に転送し、 上記主処理手段は上記結果副テーブルを各副処理手段か
    ら受信して結果テーブルを作成することを特徴とするジ
    ョイン処理方式。
  10. 【請求項10】 上記副処理手段は、ジョインキーとア
    ドレスを抽出してジョインキー・チェックを行ない、ジ
    ョインキー・チェック後に、アドレスからレコードを抽
    出してデータを結合することを特徴とする請求項9記載
    のジョイン処理方式。
  11. 【請求項11】 上記副処理手段は、互いにデータを転
    送するデータ転送手段を備えたことを特徴とする請求項
    1〜8記載のジョイン処理方式。
JP6045620A 1994-03-16 1994-03-16 ジョイン処理方式 Pending JPH07253991A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP6045620A JPH07253991A (ja) 1994-03-16 1994-03-16 ジョイン処理方式
GB9502768A GB2287807B (en) 1994-03-16 1995-02-13 Join processing system and method
US08/388,616 US5613142A (en) 1994-03-16 1995-02-14 Join processing system and method for joining relations based on join fields in a relational database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6045620A JPH07253991A (ja) 1994-03-16 1994-03-16 ジョイン処理方式

Publications (1)

Publication Number Publication Date
JPH07253991A true JPH07253991A (ja) 1995-10-03

Family

ID=12724427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6045620A Pending JPH07253991A (ja) 1994-03-16 1994-03-16 ジョイン処理方式

Country Status (3)

Country Link
US (1) US5613142A (ja)
JP (1) JPH07253991A (ja)
GB (1) GB2287807B (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109758A (ja) * 1999-10-06 2001-04-20 Hitachi Ltd 仮想表インタフェースと該インタフェースを用いた問合せ処理システム及び方法
KR20030014011A (ko) * 2001-08-10 2003-02-15 (주)프리즘엠아이텍 이종의 데이터 베이스 자동 병합 시스템 및 그 방법
JP2009140096A (ja) * 2007-12-04 2009-06-25 Nippon Telegr & Teleph Corp <Ntt> 分散インデックス結合方法及びシステム
KR100918704B1 (ko) * 2007-07-27 2009-09-22 강릉원주대학교산학협력단 가상 튜플 생성 장치 및 방법
JP2009238008A (ja) * 2008-03-27 2009-10-15 Nippon Telegr & Teleph Corp <Ntt> 分散インデックス結合方法及びシステム
JP2011198320A (ja) * 2010-03-24 2011-10-06 Nec Corp データ連携定義作成装置
JP2011242851A (ja) * 2010-05-14 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 和集合集約処理と等結合処理の組み合わせ方法及びデータベースシステム及びプログラム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625617B2 (en) 1996-01-02 2003-09-23 Timeline, Inc. Modularized data retrieval method and apparatus with multiple source capability
US6631382B1 (en) 1996-01-02 2003-10-07 Timeline, Inc. Data retrieval method and apparatus with multiple source capability
WO1997046024A2 (en) * 1996-05-30 1997-12-04 Philips Electronics N.V. Communication method between stations
US5903893A (en) * 1997-09-15 1999-05-11 International Business Machines Corporation Method and apparatus for optimizing a merge-join operation across heterogeneous databases
JP4563558B2 (ja) * 2000-07-31 2010-10-13 株式会社ターボデータラボラトリー データのコンパイル方法、および、コンパイル方法を記憶した記憶媒体
US7085769B1 (en) * 2001-04-26 2006-08-01 Ncr Corporation Method and apparatus for performing hash join
US20040181524A1 (en) * 2003-01-16 2004-09-16 Jardin Cary A. System and method for distributed processing in a node environment
US20100241638A1 (en) * 2009-03-18 2010-09-23 O'sullivan Patrick Joseph Sorting contacts
JP5460486B2 (ja) * 2010-06-23 2014-04-02 インターナショナル・ビジネス・マシーンズ・コーポレーション データをソートする装置及び方法
US9262472B2 (en) * 2012-04-26 2016-02-16 Hewlett Packard Enterprise Development Lp Concatenation for relations
US10067954B2 (en) * 2015-07-22 2018-09-04 Oracle International Corporation Use of dynamic dictionary encoding with an associated hash table to support many-to-many joins and aggregations
US11163910B2 (en) * 2017-06-29 2021-11-02 Salesforce.Com, Inc. Methods and systems for data migration

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61273633A (ja) * 1985-05-29 1986-12-03 Fujitsu Ltd 分散デ−タベ−スジヨイン処理方式
US4774657A (en) * 1986-06-06 1988-09-27 International Business Machines Corporation Index key range estimator
JPH07104871B2 (ja) * 1989-08-31 1995-11-13 三菱電機株式会社 リレーショナル・データベースにおけるジョイン処理方式
US5210870A (en) * 1990-03-27 1993-05-11 International Business Machines Database sort and merge apparatus with multiple memory arrays having alternating access
US5193182A (en) * 1990-04-27 1993-03-09 Bachman Information Systems, Inc. Computer system for defining logical operations on design data including retrieve entity-set, send, receive, signal, when, reference to entity-set, reference to entity method, connect and disconnect

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109758A (ja) * 1999-10-06 2001-04-20 Hitachi Ltd 仮想表インタフェースと該インタフェースを用いた問合せ処理システム及び方法
KR20030014011A (ko) * 2001-08-10 2003-02-15 (주)프리즘엠아이텍 이종의 데이터 베이스 자동 병합 시스템 및 그 방법
KR100918704B1 (ko) * 2007-07-27 2009-09-22 강릉원주대학교산학협력단 가상 튜플 생성 장치 및 방법
JP2009140096A (ja) * 2007-12-04 2009-06-25 Nippon Telegr & Teleph Corp <Ntt> 分散インデックス結合方法及びシステム
JP2009238008A (ja) * 2008-03-27 2009-10-15 Nippon Telegr & Teleph Corp <Ntt> 分散インデックス結合方法及びシステム
JP2011198320A (ja) * 2010-03-24 2011-10-06 Nec Corp データ連携定義作成装置
JP2011242851A (ja) * 2010-05-14 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 和集合集約処理と等結合処理の組み合わせ方法及びデータベースシステム及びプログラム

Also Published As

Publication number Publication date
GB9502768D0 (en) 1995-03-29
GB2287807A (en) 1995-09-27
US5613142A (en) 1997-03-18
GB2287807B (en) 1998-05-06

Similar Documents

Publication Publication Date Title
JPH07253991A (ja) ジョイン処理方式
US7058621B1 (en) Method for extracting information from a database
JP3526585B2 (ja) 分散データベースの質問処理最適化方式
US9870382B2 (en) Data encoding and corresponding data structure
EP0066061A2 (en) Relational algebra engine
JPH05216696A (ja) 高速併合装置及び併合方法
US20200226130A1 (en) Vertical union of feature-based datasets
US5247662A (en) Join processor for a relational database, using multiple auxiliary processors
CN100354861C (zh) 数据压缩器和数据解压缩器
CA2418093A1 (en) Data compiling method
JPH08235033A (ja) オブジェクト指向データベース管理システムにおける結合演算方式
Wei et al. Processing recursive XQuery over XML streams: The Raindrop approach
CN100367216C (zh) 事件模型中的快速事件匹配方法
CN111813777B (zh) Olap自动创建并写入mq数据的方法及系统
CN117851425A (zh) 一种分布式关系型数据库全局Binlog方法及系统
JPH04148373A (ja) データ検索システム
JPH023870A (ja) リレーショナル・データベースのレコード検索方法
JPH0333979A (ja) 関係データベースの限定述語処理方法
Fermández et al. Data mining-a semantic model
JPS63131227A (ja) デ−タ処理方式
JPS62251924A (ja) 数値情報デ−タベ−スの検索方式
CN113468202A (zh) 内存数据的筛选方法、装置、设备及存储介质
JPH01173229A (ja) データベース処理装置
CN116150153A (zh) 一种机床配置文件数据处理方法及装置
JPH0991268A (ja) 集計装置