JPH0581342A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0581342A
JPH0581342A JP3268187A JP26818791A JPH0581342A JP H0581342 A JPH0581342 A JP H0581342A JP 3268187 A JP3268187 A JP 3268187A JP 26818791 A JP26818791 A JP 26818791A JP H0581342 A JPH0581342 A JP H0581342A
Authority
JP
Japan
Prior art keywords
data
processor
arithmetic
arithmetic processing
secondary storage
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
JP3268187A
Other languages
English (en)
Inventor
Hiroyoshi Yamada
広佳 山田
Takao Iwasaki
孝夫 岩崎
Tomohiko Yamada
朝彦 山田
Kazunori Shimakawa
和典 島川
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP3268187A priority Critical patent/JPH0581342A/ja
Publication of JPH0581342A publication Critical patent/JPH0581342A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】データ量が多い場合でも演算処理装置内で演算
処理全てを実行できるようにし、ホスト装置の負荷の軽
減を図る。 【構成】ハードウェア制御プロセッサ(ECAM)16
4によって制御される演算処理によって所定のデータ範
囲毎に中間結果が求められ、その中間結果は作業ファイ
ル171へ順次出力される。そして、作業ファイル17
1上の各中間結果から所定箇所が順次入力されて、それ
ら入力された中間結果の統合処理が行われる。このた
め、データ量が多く大容量メモリ(EBDM)163の
記憶容量を超過するような演算処理を行う場合でも、作
業ファイル171を直接的に使用してそこに中間結果を
蓄積できるので、データベース演算処理装置16内で演
算処理全てを実行することができる。したがって、ホス
トコンピュータ10の負荷を大幅に軽減でき、十分に高
速な演算処理を実現できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ホスト装置からの要
求に応じて演算対象のファイルデータに対してソートや
関係代数演算等の演算処理を実行する演算処理装置を備
えたデータ処理装置に関する。
【0002】
【従来の技術】一般に、コンピュータシステムにおいて
は、ソート処理や関係データベースの検索系処理等を高
速に実行するために専用のデータベース演算処理装置が
設けられている。このデータベース演算処理装置はハー
ドウェアソータと称される演算回路を備えており、この
演算回路を用いることによってソートや関係代数演算を
高速に実行する。
【0003】このデータベース演算処理装置で演算処理
を行う場合には、ホスト装置の2次記憶装置からそのデ
ータベース演算処理装置内の内部メモリに演算対象デー
タが入力され、その入力データが演算回路に送られて所
定の演算が実行される。そして、その演算処理の結果は
内部メモリに入力される。
【0004】このように、データベース演算処理装置の
内部メモリには処理対象データや処理結果のデータが格
納される。このため、データ量が比較的少ない場合には
問題ないが、データ量が多く内部メモリの記憶容量を越
えてしまうような場合においては、演算処理結果が内部
メモリに保持できなくなるという事態が生じ、データベ
ース演算処理装置内で演算処理を行うことが出来なくな
る。
【0005】このため、従来では、データ量が多い場合
には演算回路による演算の中間結果をホスト装置に渡
し、それら中間結果の統合等の処理を全てホスト装置に
依頼するという手法が用いられていた。この場合、ホス
ト装置は、例えば、その受け取った中間結果を主記憶に
順次書き込み、中間結果の統合処理等を行ってその後に
最終結果を2次記憶装置に書き込むという処理を行うこ
とが必要となる。
【0006】ホスト装置がデータベース演算処理装置の
演算処理をこのようにサポートすると、主記憶のメモリ
資源の多くがそのために使用されてしまうと共に、その
ホスト装置の負荷を増大させることになる。このため、
十分な負荷分散を図ることができなくなり、結果とし
て、コンピュータシステム全体の性能が低下されるとい
う不具合が招かれる。
【0007】
【発明が解決しようとする課題】従来では、データ量が
多い場合には演算処理装置内で演算処理全てを実行する
ことが出来きず、ホスト装置の負荷が増大されるという
欠点があった。
【0008】この発明はこのような点に鑑みなされたも
ので、データ量が多い場合でも2次記憶装置の作業ファ
イルを用いる事により演算処理装置内で演算処理全てを
実行できるようにし、ホスト装置の負荷を大幅に軽減
し、しかも十分に高速な演算処理を実現できるデータ処
理装置を提供することを目的とする。
【0009】
【課題を解決するための手段および作用】この発明は、
ホスト装置と、演算対象のファイルデータが格納される
2次記憶装置と、前記2次記憶装置を直接アクセスする
ためのパスを有し、前記ホスト装置からの要求に応じて
前記演算対象のファイルデータに対して所定の演算処理
を実行する演算処理装置とを備えたデータ処理装置にお
いて、前記演算処理装置に、演算対象のファイルデータ
を前記パスを介して前記2次記憶装置から内部メモリに
入力する手段と、内部メモリに入力されたデータに対し
て所定の演算処理を実行し、所定のデータ範囲毎に中間
結果を順次求める演算手段と、この演算手段によって求
められた中間結果を前記パスを介して前記2次記憶装置
内の所定の作業ファイルへ順次出力する手段と、前記作
業ファイル上の各中間結果から所定箇所を前記パスを介
して前記内部メモリに順次入力する手段と、前記内部メ
モリに入力された中間結果を順次統合処理し、最終結果
を求める手段とを具備し、前記演算処理装置が前記2次
記憶装置上に割り当てられた作業ファイルを直接的に使
用して演算処理を行うことを第1の特徴とする。
【0010】このデータ処理装置においては、演算手段
によって所定のデータ範囲毎に中間結果が求められ、そ
の中間結果は2次記憶装置内の作業ファイルへ順次出力
される。そして、作業ファイル上の各中間結果から所定
箇所が内部メモリに順次入力されて、それら入力された
中間結果の統合処理が行われる。このため、データ量が
多く内部メモリの記憶容量を超過するような演算処理を
行う場合でも、2次記憶装置上に割り当てられた作業フ
ァイルを直接的に使用してそこに中間結果を蓄積できる
ので、演算処理装置内で演算処理全てを実行することが
できる。したがって、ホスト装置の負荷を大幅に軽減で
き、十分に高速な演算処理を実現できる。
【0011】また、この発明は、演算処理装置に第1乃
至第3のプロセッサから構成されるマルチプロセッサ構
成を採用し、演算処理装置と2次記憶装置間のデータ入
出力を第1のプロセッサに、演算回路を用いた演算処理
を第2のプロセッサに、そして、全体の制御と中間結果
の統合処理を第3のプロセッサにそれぞれ機能分散する
と共に、第1のプロセッサによって内部メモリと作業フ
ァイル間における中間結果の転送を実行させるように構
成したことを第2の特徴とする。
【0012】この構成においては、第1乃至第3のプロ
セッサによって負荷分散が図れ、しかもこの様な機能分
散によってデータ入力と中間結果を求める演算処理が並
行して実行でき、また作業ファイルからの中間結果の入
力処理と統合処理およびデータ出力処理も並行して実行
可能となる。このため、データ量が多い場合でも演算処
理に要する全体の時間を著しく低減でき、高性能の装置
を実現できる。
【0013】
【実施例】以下、図面を参照してこの発明の実施例を説
明する。
【0014】図1にはこの発明の一実施例に係わるデー
タ処理装置の全体のシステム構成が示されている。この
データ処理装置は、ホストコンピュータ10と、データ
ベース演算処理装置(データベースエンジン;DBE)
16と、磁気ディスク装置17とによって構成されてい
る。ホストコンピュータ10は、CPU11、主記憶装
置12、第1および第2のチャネル装置14,15によ
って構成されており、これらCPU11、主記憶装置1
2、およびチャネル装置14,15はシステムバス13
を介して相互接続されている。
【0015】ホストコンピュータ10とデータベース演
算処理装置16はチャネル装置14によって接続され、
またホストコンピュータ10と磁気ディスク装置17は
チャネル装置15によって接続されている。さらに、デ
ータベース演算処理装置16と磁気ディスク装置17は
専用のアクセスパス18を介して接続されている。
【0016】CPU11は、ホストコンピュータ10全
体の制御を司るものであり、データベース演算処理装置
16に対してソート処理や関係代数演算等の各種演算処
理の実行を依頼する。また、この演算処理の依頼に際
し、CPU11は、磁気ディスク装置17の一部の記憶
領域を作業ファイル171としてデータベース演算処理
装置16に割り当てる。この作業ファイル171の割り
当ては、CPU11が、どの記憶領域を作業ファイルと
して使用するのかを指定する作業ファイルコマンドを発
行することによって行われる。作業ファイル171の大
きさは、演算対象の入力ファイルの大きさに基づいて決
定される。
【0017】主記憶装置12には、データベース演算処
理装置16に演算対象ファイルや演算内容を指示するた
めのコマンドや、作業ファイルを指定する作業ファイル
コマンドが格納される。
【0018】データベース演算処理装置(DBE)16
は、CPU11からのコマンドに基づいて演算対象ファ
イルのデータに対して演算処理を実行するものであり、
演算対象ファイルの入力および演算結果の出力、さらに
は演算の中間結果の入出力のために、パス18を介して
磁気ディスク装置17を直接的にアクセスする。
【0019】このデータベース演算処理装置(DBE)
16は、エンジンインターフェースプロセッサ(EI
P)161、エンジン制御プロセッサ(ECP)16
2、大容量メモリ(EBDM)163、ハードウェアソ
ータ制御プロセッサ(ECAM)164、並列ソーティ
ングモジュール(PSOM)165、および並列関係代
数演算モジュール(PRAM)166によって構成され
ている。
【0020】エンジンインターフェースプロセッサ(E
IP)161、エンジン制御プロセッサ(ECP)16
2、およびハードウェアソータ制御プロセッサ(ECA
M)164の3台のプロセッサは内部バス16によって
相互接続されており、大容量メモリ(EBDM)163
を共有メモリとする密結合のマルチプロセッサを構成し
ている。大容量メモリ(EBDM)163は、3台の各
プロセッサの共通のアドレス空間上に配置されている。
また、これら3台のプロセッサ、つまりエンジンインタ
ーフェースプロセッサ(EIP)161、エンジン制御
プロセッサ(ECP)162、およびハードウェアソー
タ制御プロセッサ(ECAM)164には機能分散がな
されている。この場合、それぞれの固有の役割を効率良
く実行するために、これら各プロセッサは、密結合なが
らそれぞれに適した独立のモニタによって動作制御され
るように構成されている。
【0021】エンジンインターフェースプロセッサ(E
IP)161、エンジン制御プロセッサ(ECP)16
2、およびハードウェアソータ制御プロセッサ(ECA
M)164の機能分散は、次のようになされている。
【0022】すなわち、エンジンインターフェースプロ
セッサ(EIP)161は、ホストコンピュータ10と
データベース演算処理装置16間の通信を行うと共に、
磁気ディスク装置17のディスクコントローラにもパス
18を介して接続されており、磁気ディスク17とのデ
ータ入出力を直接的に制御する。また、エンジンインタ
ーフェースプロセッサ(EIP)161は、磁気ディス
ク装置17にデータを出力する際、出力ファイルの再構
成処理も行う。
【0023】ホストコンピュータ10との間の通信にお
いては、エンジンインターフェースプロセッサ(EI
P)161は、第1のチャネル装置14を介してCPU
11から送られてくるコマンドを受信し、それをエンジ
ン制御プロセッサ(ECP)162に送信する。また、
エンジンインターフェースプロセッサ(EIP)161
は、エンジン制御プロセッサ(ECP)162から送ら
れてくるコマンド結果としてのステータスを受信し、そ
れを第1のチャネル装置14を介してCPU11に返信
する。
【0024】磁気ディスク装置17との間のデータ入出
力処理においては、エンジンインターフェースプロセッ
サ(EIP)161は、エンジン制御プロセッサ(EC
P)162からの入出力要求を受け付け、大容量メモリ
(EBDM)163と磁気ディスク装置17との間でデ
ータ転送を行う。このデータ転送には、演算対象ファイ
ルを磁気ディスク装置17から入力するデータ入力処
理、演算の最終結果を磁気ディスク装置17へ出力する
データ出力処理、所定のデータ範囲毎の演算の中間結果
を磁気ディスク装置17の作業ファイル171との間で
入出力する中間結果入出力処理がある。
【0025】エンジン制御プロセッサ(ECP)162
は、エンジンインターフェースプロセッサ(EIP)1
61、大容量メモリ(EBDM)163、およびハード
ウェア制御プロセッサ(ECAM)164を内部バス1
67を介して制御すると共に、作業ファイル171から
大容量メモリ(EBDM)163に入力される各中間結
果の統合処理を行い、最終演算結果を求める。例えば、
ソート処理の演算を行う場合には、エンジン制御プロセ
ッサ(ECP)162は、中間結果としての部分ソート
列に対してマージを行い、これによって最終ソート結果
を求める。
【0026】大容量メモリ(EBDM)163は、磁気
ディスク装置17から読み出された演算対象のファイル
データ、ハードウェアソータ制御プロセッサ(ECA
M)164、並列ソーティングモジュール(PSOM)
165、および並列関係代数演算モジュール(PRA
M)166による演算処理における所定データ範囲毎の
中間結果、さらには、エンジン制御プロセッサ(EC
P)162による統合結果等を格納する共有メモリであ
る。演算対象のファイルデータは大容量メモリ(EBD
M)163内の入力バッファ部に格納され、中間結果お
よび統合処理結果は大容量メモリ(EBDM)163内
の出力バッファ部に格納される。
【0027】この場合、中間結果全てについては大容量
メモリ(EBDM)163に保持できないので、ハード
ウェアソータ制御プロセッサ(ECAM)164、並列
ソーティングモジュール(PSOM)165、および並
列関係代数演算モジュール(PRAM)166による演
算で得られた中間結果は、作業ファイル171に順次出
力される。
【0028】ハードウェアソータ制御プロセッサ(EC
AM)164は、エンジン制御プロセッサ(ECP)1
62からの指令に基づいて、並列ソーティングモジュー
ル(PSOM)165および並列関係代数演算モジュー
ル(PRAM)166による演算を制御する。
【0029】この場合、ハードウェアソータ制御プロセ
ッサ(ECAM)164は、大容量メモリ(EBDM)
163上のデータを並列ソーティングモジュール(PS
OM)165に入力し、並列関係代数演算モジュール
(PRAM)166から出力された演算結果を大容量メ
モリ(EBDM)163上に格納するが、並列ソーティ
ングモジュール(PSOM)165へのデータ入力に際
しては、所定のデータ範囲毎にキー切り出し処理を実行
する。このキー切り出し処理においては、ハードウェア
ソータ制御プロセッサ(ECAM)164は、演算対象
データ範囲の各レコードから演算に必要なキーのみを切
り出し、それにレコード識別番号(大容量メモリ163
上におけるレコードの先頭アドレス)を付加して並列ソ
ーティングモジュール(PSOM)165へ送出する。
【0030】並列ソーティングモジュール(PSOM)
165は、ハードウェアソータ制御プロセッサ(ECA
M)164によって駆動され、ソートを並列に実行する
専用のハードウェア回路であり、並列関係代数演算モジ
ュール(PRAM)166に接続されている。この並列
ソーティングモジュール(PSOM)165は、パイプ
ラインマージソータと称されるものであり、2−ウェイ
マージを行う複数のソートセルをカスケード接続してな
る。
【0031】並列関係代数演算モジュール(PRAM)
166は、関係型データベースにおけるJOIN(結
合)やRESTRICT(制約)といった関係代数演算
を並列に実行する専用のハードウェア回路であり、並列
ソーティングモジュール(PSOM)165からソート
されたデータを入力し、演算結果をハードウェアソータ
制御プロセッサ(ECAM)164に出力する。ソート
処理だけを実行する場合には、並列関係代数演算モジュ
ール(PRAM)166は、最終段のソートセルとして
機能する。また、JOIN(結合)やRESTRICT
(制約)といった関係代数演算を行う場合には、並列ソ
ーティングモジュール(PSOM)165のソートセル
を数段用いたソート後に、並列関係代数演算モジュール
(PRAM)166に入力される。
【0032】このように、エンジンインターフェースプ
ロセッサ(EIP)161、エンジン制御プロセッサ
(ECP)162、およびハードウェアソータ制御プロ
セッサ(ECAM)164には、それぞれ作業ファイル
171を用いた拡張処理のための機能が分散されてい
る。この場合、これらプロセッサは、大容量メモリ(E
BDM)163上のバッファのやりとりを除けば非同期
に動作し、並行して各機能を実行する。
【0033】例えば、作業ファイル171を用いた拡張
処理でソートを行う場合を想定する。この拡張ソート
は、演算対象データの入力処理、所定データ範囲毎のソ
ート処理、中間結果の出力処理によってソートフェーズ
が実行され、中間結果の入力処理、マージ処理、出力処
理によってマージフェーズが実行される。この場合、ソ
ートフェーズにおいては、ハードウェアソータ制御プロ
セッサ(ECAM)164の制御によるソート演算処理
は、エンジンインターフェースプロセッサ(EIP)1
61による演算対象データの入力処理と並行して実行さ
れる。また、マージフェーズにおいては、エンジンイン
ターフェースプロセッサ(EIP)161による中間結
果の入力処理と、エンジン制御プロセッサ(ECP)1
62によるマージ処理と、エンジンインターフェースプ
ロセッサ(EIP)161による演算結果出力処理は並
行して実行される。
【0034】次に、図1のデータ処理装置によって実行
される作業ファイル171を用いた拡張処理の動作を説
明する。
【0035】まず、データ処理装置全体の処理の流れを
説明する。
【0036】CPU11は、主記憶装置12上にあるソ
ート等の演算指定コマンドと作業ファイルコマンドをシ
ステムバス13を介してデータベース演算処理装置16
に発行する。それらコマンドは大容量メモリ(EBD
M)163に格納される。エンジン制御プロセッサ(E
CP)162は、そのコマンドの解析を行い、作業ファ
イル171の位置及び大きさを認識すると共に、処理対
象となるデータをエンジンインターフェースプロセッサ
(EIP)161を介して磁気ディスク装置17から大
容量メモリ(EBDM)163に一定量単位で部分的に
読み込み、それをハードウェアソータ制御プロセッサ
(ECAM)164に渡して処理させる。ハードウェア
ソータ制御プロセッサ(ECAM)164は、並列ソー
ティングモジュール(PSOM)165と並列関係代数
演算モジュール(PRAM)166を用いて演算を実行
し、処理が終了すればエンジン制御プロセッサ(EC
P)162に報告を行う。ハードウェアソータ制御プロ
セッサ(ECAM)164から得られる中間結果は、作
業ファイル171に送られる。この後、エンジン制御プ
ロセッサ(ECP)162は、作業ファイル171から
入力された各中間結果を統合して、最終処理結果を求め
る。エンジンインターフェースプロセッサ(EIP)1
61は、処理結果をディスク装置17に出力し、そして
与えられたコマンドに対応する応答をシステムバス13
を介してCPU11に返す。
【0037】次に、図2乃至図4を参照して、データベ
ース演算処理装置16内における動作を説明する。
【0038】前述したように、大容量メモリ(EBD
M)163にはエンジンインターフェースプロセッサ
(EIP)161による入力処理によって演算処理対象
のデータが格納され、この入力処理と並行してハードウ
ェアソータ制御プロセッサ(ECAM)164による演
算制御が実行される。すなわち、エンジンインターフェ
ースプロセッサ(EIP)161は、磁気ディスク装置
17に対象となるデータが存在するかぎり大容量メモリ
(EBDM)163に一定のデータ量単位で演算対象デ
ータを順次入力し、それをハードウェアソータ制御プロ
セッサ(ECAM)164に渡す。
【0039】大量のデータを処理する場合には大容量メ
モリ(EBDM)163の容量が不足してしまうので、
ハードウェアソータ制御プロセッサ(ECAM)164
は、ある一定の範囲毎に中間結果を求める必要がある。
このため、ハードウェアソータ制御プロセッサ(ECA
M)164は、一定量のデータ単位で大容量メモリ(E
BDM)163から並列ソーティングモジュール(PS
OM)165および並列関係代数演算モジュール(PR
AM)166にデータを渡し、その一定データ範囲毎に
演算処理を実行させる(ステップS12)。
【0040】並列ソーティングモジュール(PSOM)
165および並列関係代数演算モジュール(PRAM)
166は、一定サイズの演算済みデータ列を中間結果と
して順次生成し、ハードウェアソータ制御プロセッサ
(ECAM)164はその中間結果を大容量メモリ(E
BDM)163に入力する。ハードウェアソータ制御プ
ロセッサ(ECAM)164で得られた処理結果を保持
したままでは、大容量メモリ(EBDM)163の容量
の関係上、処理を継続することができない。そこで、エ
ンジンインターフェースプロセッサ(EIP)161
は、ハードウェアソータ制御プロセッサ(ECAM)1
64で得られた一定データ範囲毎の中間結果を作業ファ
イル171に順次出力する(ステップS13)。
【0041】このようなデータの入力、演算処理、中間
結果の出力処理は、未処理データがなくなるまで繰り返
される(ステップS11〜S13)。
【0042】図3には、ステップS11〜S13におけ
るデータの流れが示されている。図示のように、一定量
のデータD1,D2…が順次ハードウェアソータ制御プ
ロセッサ(ECAM)164に渡され、そこでデータD
1,D2にそれぞれ対応する第1、第2の中間結果が得
られ、それら中間結果は順次作業ファイル171に書き
出される。
【0043】前述のステップS11〜S13の処理が全
て終了すると、エンジンインターフェースプロセッサ
(EIP)161は、作業ファイル171上の複数の中
間結果から必要な箇所をその都度取り出し、大容量メモ
リ(EBDM)163に入力する(ステップS15)。
エンジン制御プロセッサ(ECP)162は、これら入
力されたデータの結合やマージによってそれらを統合
し、最終結果を求める(ステップS16)。求められた
最終結果は、エンジンインターフェースプロセッサ(E
IP)161によって磁気ディスク装置17に出力され
る。この処理も、作業ファイル17の全ての中間結果が
処理されるまで繰り返される(ステップS14〜S1
6)。
【0044】図4には、ステップS14〜S16におけ
るデータの流れが示されている。図示のように、複数の
中間結果それぞれから必要な箇所のデータE1〜E4が
取り出されて大容量メモリ(EBDM)163に入力さ
れ、それがエンジン制御プロセッサ(ECP)162に
よって統合される。このデータE1〜E4の統合結果
は、第1の出力結果として磁気ディスク装置17の出力
結果ファイルに書き出される。
【0045】次に、図5および図6を参照し、演算対象
データ、およびハードウェアソータ制御プロセッサ(E
CAM)164で得られる中間結果の具体例を、データ
ベース演算処理装置16がソート処理を行う場合を例と
って説明する。
【0046】例えば、図5に示されているように、演算
対象データは、n×4個のレコードR1,R2,…から
構成されており、各レコードは例えば5個のフィールド
F1〜F5を含んでいる。並列ソーティングモジュール
(PSOM)165および並列関係代数演算モジュール
(PRAM)166で一度にソートできるレコード件数
がn個である場合には、図示のように、演算対象データ
はそれぞれn個のレコードからなる4つのストリングに
分割される。この場合、磁気ディスク装置17からはス
トリング単位でデータ入力が行われ、大容量メモリ(E
BDM)163に格納される。
【0047】このような演算対象データに対して、例え
ば、第3のフィールドF3をキーフィールドとするソー
トを行う場合には、ハードウェアソータ制御プロセッサ
(ECAM)164は、第1ストリングにおける演算対
象の各レコードR1,R2…から演算に必要な第3のフ
ィールドF3(K1,K2,…)のみを切り出し、それ
にレコード識別番号(メモリ163上のレコードの先頭
アドレスAD1,AD2,…)を付加して、それを並列
ソーティングモジュール(PSOM)165,並列関係
代数演算モジュール(PRAM)166に渡す。
【0048】並列ソーティングモジュール(PSOM)
165,並列関係代数演算モジュール(PRAM)16
6は、その第1ストリングについてソートを行って昇順
または降順に整列化された部分ソート列を生成する。
【0049】図6においては、昇順に整列化した場合の
部分ソート列S1〜S4が示されている。これら部分ソ
ート列S1〜S4は、演算対象データの第1乃至第4の
ストリングにそれぞれ対応する中間結果である。各部分
ソート列S1〜S4の要素は、図示のように、レコード
識別番号とキー部から構成されている。このような部分
ソート列S1〜S4はハードウェアソータ制御プロセッ
サ(ECAM)164から順番に得られ、作業ファイル
171に順次格納されていく。
【0050】図7には、マージ処理による部分ソート列
S1〜S4の統合結果が示されている。図7に示されて
いるように、エンジン制御プロセッサ(ECP)162
のマージで生成されたストリングの各要素は、レコード
識別番号だけから成り、レコード識別番号はキー部の値
が小さいものから順に配置されている。このようなマー
ジ結果は、大容量メモリ(EBDM)163上に格納さ
れる。
【0051】エンジン制御プロセッサ(ECP)162
によるこのようなマージ結果はエンジンインターフェー
スプロセッサ(EIP)161によって磁気ディスク装
置17に出力されるが、この場合、図7で説明したよう
に、マージ結果はレコード識別番号の並びのみによって
構成されているので、エンジンインターフェースプロセ
ッサ(EIP)161は、磁気ディスク装置17にデー
タを出力する際、出力ファイルの再構成処理を行う。す
なわち、エンジンインターフェースプロセッサ(EI
P)161は、図5の演算対象データのレコードを図7
のマージ結果の並びにしたがって図8のように再構成
し、それを磁気ディスク装置17に出力する。
【0052】図9には、この実施例における拡張ソート
実行時のデータベース演算処理装置16内のタイミング
チャートが示されている。
【0053】図9に示されているように、ソートフェー
ズにおいては、エンジンインターフェースプロセッサ
(EIP)161による演算対象データの一定量単位の
入力処理と、並列ソーティングモジュール(PSOM)
165および並列関係代数演算モジュール(PRAM)
166を用いたハードウェアソータ制御プロセッサ(E
CAM)164による一定データ量単位のソート処理が
並行して動作される。また、演算対象データ全体を見る
と、入力処理、ソート処理、そして作業ファイル171
への中間結果出力処理が大部分並行して実行される。
【0054】また、マージフェーズにおいても、エンジ
ンインターフェースプロセッサ(EIP)161による
作業ファイル171からの中間結果の入力処理と、エン
ジン制御プロセッサ(ECP)162によるマージ処理
と、エンジンインターフェースプロセッサ(EIP)1
61による出力処理とが実質的に並行して動作される。
【0055】以上のように、この実施例においては、並
列ソーティングモジュール(PSOM)165および並
列関係代数演算モジュール(PRAM)166を用いた
ハードウェア制御プロセッサ(ECAM)164による
演算処理によって所定のデータ範囲毎に中間結果が求め
られ、その中間結果は作業ファイル171へ順次出力さ
れる。そして、作業ファイル171上の各中間結果から
所定箇所が順次入力されて、それら入力された中間結果
の統合処理が行われる。このため、データ量が多く大容
量メモリ(EBDM)163の記憶容量を超過するよう
な演算処理を行う場合でも、磁気ディスク装置17上に
割り当てられた作業ファイル171を直接的に使用して
そこに中間結果を蓄積できるので、データベース演算処
理装置16内で演算処理全てを実行することができる。
したがって、ホストコンピュータ10の負荷を大幅に軽
減でき、十分に高速な演算処理を実現できる。
【0056】また、この実施例においては、データベー
ス演算処理装置16にマルチプロセッサ構成を採用し、
磁気ディスク装置17との間のデータ入出力をエンジン
インターフェースプロセッサ(EIP)161に、並列
ソーティングモジュール(PSOM)165および並列
関係代数演算モジュール(PRAM)166を用いた演
算処理をハードウェアソータ制御プロセッサ(ECA
M)164に、そして、全体の制御と中間結果の統合処
理をエンジン制御プロセッサ(ECP)162にそれぞ
れ機能分散すると共に、エンジンインターフェースプロ
セッサ(EIP)161によって作業ファイル171と
の間における中間結果の転送を実行させている。このた
め、プロセッサ間の負荷分散が図れ、しかもデータ入力
と中間結果を求める演算処理が並行して実行でき、また
作業ファイル171からの中間結果の入力処理と統合処
理およびデータ出力処理も並行して実行できる。このた
め、データ量が多い場合でも演算処理に要する全体の時
間を著しく低減でき、高性能の装置を実現できる。
【0057】
【発明の効果】以上のように、この発明によれば、デー
タ量が多い場合でも2次記憶装置の作業ファイルを用い
る事により演算処理装置内で演算処理全てを実行できる
ようになり、ホスト装置の負荷を大幅に軽減し、しかも
十分に高速な演算処理を行うことが可能となる。
【図面の簡単な説明】
【図1】この発明の一実施例に係わデータ処理装置のシ
ステム構成を示すブロック図。
【図2】同実施例のデータベース演算処理装置の動作を
説明するためのフローチャート。
【図3】同実施例の拡張ソートにおけるソートフェーズ
時のデータの流れを示す図。
【図4】同実施例の拡張ソートにおけるマージフェーズ
時のデータの流れを示す図。
【図5】同実施例における演算対象入力データのデータ
構造の一例を示す図。
【図6】同実施例における部分ソート列のデータ構造の
一例を示す図。
【図7】同実施例におけるマージ結果のデータ構造の一
例を示す図。
【図8】同実施例における出力結果ファイルのデータ構
造の一例を示す図。
【図9】同実施例における拡張ソート実行時の動作を説
明するタイミングチャート。
【符号の説明】
10…ホストコンピュータ、16…データベース演算装
置、17…磁気ディスク装置、161,162,164
…プロセッサ、163…大容量メモリ、165…並列ソ
ーティングモジュール、166…並列関係代数演算モジ
ュール、171…作業ファイル。
フロントページの続き (72)発明者 島川 和典 東京都青梅市末広町2丁目9番地 株式会 社東芝青梅工場内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 ホスト装置と、演算対象のファイルデー
    タが格納される2次記憶装置と、前記2次記憶装置を直
    接アクセスするためのパスを有し、前記ホスト装置から
    の要求に応じて前記演算対象のファイルデータに対して
    所定の演算処理を実行する演算処理装置とを備えたデー
    タ処理装置において、 前記演算処理装置は、演算対象のファイルデータを前記
    パスを介して前記2次記憶装置から内部メモリに入力す
    る手段と、内部メモリに入力されたデータに対して所定
    の演算処理を実行し、所定のデータ範囲毎に中間結果を
    順次求める演算手段と、この演算手段によって求められ
    た中間結果を前記パスを介して前記2次記憶装置内の所
    定の作業ファイルへ順次出力する手段と、前記作業ファ
    イル上の各中間結果から所定箇所を前記パスを介して前
    記内部メモリに順次入力する手段と、前記内部メモリに
    入力された中間結果を順次統合処理し、最終結果を求め
    る手段とを具備し、 前記演算処理装置が前記2次記憶装置上に割り当てられ
    た作業ファイルを直接的に使用して演算処理を行うこと
    を特徴とするデータ処理装置。
  2. 【請求項2】 ホスト装置と、演算対象のファイルデー
    タが格納される2次記憶装置と、前記2次記憶装置を直
    接アクセスするためのパスを有し、前記ホスト装置から
    の要求に応じて前記演算対象のファイルデータに対して
    所定の演算処理を実行する演算処理装置とを備えたデー
    タ処理装置において、 前記演算処理装置は、前記ホスト装置との間の通信、お
    よび前記2次記憶装置との間のデータ入出力を実行する
    第1のプロセッサと、ソートまたは関係代数演算を行う
    演算回路と、前記第1のプロセッサによって入力される
    演算対象のファイルデータ、および前記演算回路による
    演算結果が格納される内部メモリと、前記演算回路によ
    る演算を演算対象データの所定データ範囲毎に順次実行
    させて中間結果を前記内部メモリに入力する第2のプロ
    セッサと、前記第1のプロセッサを介して供給される前
    記ホスト装置からの指示に基づき、前記第1および第2
    のプロセッサを動作制御する第3のプロセッサとを具備
    し、 前記第1のプロセッサは、前記2次記憶装置上に割り当
    てられた所定の作業ファイルと前記内部メモリとの間で
    前記中間結果の入出力を実行し、前記第3のプロセッサ
    は、前記第1のプロセッサによって前記作業ファイルか
    ら前記内部メモリに入力された中間結果の統合処理を実
    行することを特徴とするデータ処理装置。
JP3268187A 1991-09-21 1991-09-21 データ処理装置 Pending JPH0581342A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3268187A JPH0581342A (ja) 1991-09-21 1991-09-21 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3268187A JPH0581342A (ja) 1991-09-21 1991-09-21 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0581342A true JPH0581342A (ja) 1993-04-02

Family

ID=17455129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3268187A Pending JPH0581342A (ja) 1991-09-21 1991-09-21 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0581342A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0707239A1 (en) 1994-09-21 1996-04-17 Canon Kabushiki Kaisha Toner for developing electronstatic images, image forming method and process cartridge
JP2012059215A (ja) * 2010-09-13 2012-03-22 Nomura Research Institute Ltd データ検索システム及びプログラム
JP2017526027A (ja) * 2014-05-27 2017-09-07 華為技術有限公司Huawei Technologies Co.,Ltd. クラスタリング記憶方法および装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0707239A1 (en) 1994-09-21 1996-04-17 Canon Kabushiki Kaisha Toner for developing electronstatic images, image forming method and process cartridge
JP2012059215A (ja) * 2010-09-13 2012-03-22 Nomura Research Institute Ltd データ検索システム及びプログラム
JP2017526027A (ja) * 2014-05-27 2017-09-07 華為技術有限公司Huawei Technologies Co.,Ltd. クラスタリング記憶方法および装置
US10817258B2 (en) 2014-05-27 2020-10-27 Huawei Technologies Co., Ltd. Clustering storage method and apparatus

Similar Documents

Publication Publication Date Title
US5307485A (en) Method and apparatus for merging sorted lists in a multiprocessor shared memory system
Lee et al. Join processing using bloom filter in mapreduce
EP0644486A2 (en) Management of data accesses in computer systems
JPH05324430A (ja) データ処理装置
US8005820B2 (en) Optimizing the processing of in-list rows
JPH0581342A (ja) データ処理装置
JPH0581337A (ja) データ処理装置
JPH0580977A (ja) データ処理装置
JPH0580976A (ja) データ処理装置
von Bultzingsloewen et al. Kardamom—a dataflow database machine for real-time applications
JPH05101109A (ja) データベース演算処理装置
JPH0581339A (ja) データ処理装置
JPH05324580A (ja) データ処理装置
JP3005466B2 (ja) 並列ソート装置
JP2983352B2 (ja) データベース演算処理装置
JPH06110936A (ja) データ処理装置
JPH0581343A (ja) データ処理装置
JPH0581338A (ja) データ処理装置
JPH05324431A (ja) データ処理装置
JPH05324429A (ja) データ処理装置
JPH06176077A (ja) データ処理装置
JPH10326214A (ja) データベース管理システムおよび問合せの処理方法
JPH06176075A (ja) データ処理装置
JPH06348560A (ja) データ処理装置
JPH06176076A (ja) データ処理装置