JPH04320572A - Data processor - Google Patents

Data processor

Info

Publication number
JPH04320572A
JPH04320572A JP3088873A JP8887391A JPH04320572A JP H04320572 A JPH04320572 A JP H04320572A JP 3088873 A JP3088873 A JP 3088873A JP 8887391 A JP8887391 A JP 8887391A JP H04320572 A JPH04320572 A JP H04320572A
Authority
JP
Japan
Prior art keywords
data
arithmetic circuit
processing
record
controllers
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
JP3088873A
Other languages
Japanese (ja)
Inventor
Susumu Matsuda
進 松田
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 JP3088873A priority Critical patent/JPH04320572A/en
Publication of JPH04320572A publication Critical patent/JPH04320572A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To execute data selecting processing at high speed even when selecting conditions are complexed and to improve the using efficiency of a hardware arithmetic circuit. CONSTITUTION:This data processor is provided with plural controllers 13-1 to 13-m for selecting data and the processing of file data to be computed is divided by these controllers 13-1 to 13-m. Output data prepared by the controllers 13-1 to 13-m are successively outputted to the hardware arithmetic circuit 14 under the control of an arbitor 15. Since the preparation of the output data to the circuit 14 is executed in parallel by the controllers 13-1 to 13-m, data selecting processing can be executed at high speed even when their selecting conditions are complexed and the using efficiency of the circuit 14 can be improved.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】この発明はデータ処理装置に関し
、特にソートまたはリレーショナルデータベースの関係
演算を実行する専用のハードウェア演算回路を備えたデ
ータ処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing apparatus, and more particularly to a data processing apparatus equipped with a dedicated hardware arithmetic circuit for performing sorting or relational operations on a relational database.

【0002】0002

【従来の技術】近年、データベースを扱う計算機システ
ムにおいては、大量のデータから構成されるデータベー
スを高速に演算処理するために、専用のハードウェア演
算回路が利用されている。
2. Description of the Related Art In recent years, in computer systems that handle databases, dedicated hardware arithmetic circuits have been used to perform high-speed arithmetic processing on databases consisting of large amounts of data.

【0003】このハードウェア演算回路は、データベー
ス内から選択されたデータに対してソート演算やリレー
ショナルデータベースの関係演算等を実行するものであ
り、例えば選択されたレコード群をキー値に従って並べ
変える等の処理を行ない、これによってデータベースの
再構成を行なう。
[0003] This hardware arithmetic circuit executes sorting operations, relational operations in relational databases, etc. on data selected from within a database, such as rearranging a group of selected records according to key values. The database is reconfigured by processing.

【0004】しかし、このハードウェア演算回路にはデ
ータベース再構成のための特定の演算機能しか容易され
ていないので、例えばソート処理等において複雑な選択
条件が指定された場合には、ハードウェア演算回路にデ
ータを入力する前に、データの選択を予め行うことが必
要となる。
However, since this hardware arithmetic circuit only facilitates a specific arithmetic function for database reconfiguration, when complex selection conditions are specified in, for example, sorting processing, the hardware arithmetic circuit Before inputting data, it is necessary to select the data in advance.

【0005】このデータ選択では、例えば、各レコード
に付与されたキー値を基準値と比較し、選択条件を満足
するレコードだけをハードウェア演算回路への出力デー
タとして選択する処理が行われる。
[0005] In this data selection, for example, a process is performed in which a key value assigned to each record is compared with a reference value, and only records that satisfy selection conditions are selected as output data to a hardware arithmetic circuit.

【0006】従来の計算機システムでは、このようなデ
ータ選択を行なうデータ選択機構は通常は1個のみ設け
られており、その1個のデータ選択機構で演算対象の全
てのデータについて選択処理を行なっていた。
[0006] In conventional computer systems, there is usually only one data selection mechanism that performs such data selection, and that one data selection mechanism performs selection processing on all the data to be operated on. Ta.

【0007】このため、レコードの選択条件がさらに複
雑化された場合には、データ選択機構におけるデータ選
択処理に時間がかかる。この場合、ハードウェア演算回
路の前段での処理に多くの時間を要してしまい、この結
果、ハードウェア演算回路の使用効率の低下が引き起こ
される。このハードウェア演算回路の使用効率の低下は
、データベースの再構成処理の効率を低下する大きな原
因となる。
[0007] For this reason, when the record selection conditions become more complex, the data selection process in the data selection mechanism takes time. In this case, a lot of time is required for the processing at the front stage of the hardware arithmetic circuit, which results in a decrease in the usage efficiency of the hardware arithmetic circuit. This decrease in the usage efficiency of the hardware arithmetic circuit is a major cause of decreasing the efficiency of database reconfiguration processing.

【0008】このように、従来の計算機システムでは、
高速のハードウェア演算回路を備えていても、選択条件
が複雑化されると、ハードウェア演算回路の使用効率の
低下が引き起こされるので、ソートやリレーショナルデ
ータベースの関係演算を用いたデータベースの処理効率
が全体として低下されるという不具合があった。
[0008] In this way, in the conventional computer system,
Even if high-speed hardware arithmetic circuits are provided, if the selection conditions become complex, the usage efficiency of the hardware arithmetic circuits will decrease. There was a problem that the overall performance was lowered.

【0009】[0009]

【発明が解決しようとする課題】従来では、選択条件が
複雑化されるとハードウェア演算回路の使用効率が低下
され、データベースの演算処理に多くの時間を要する欠
点があった。
Conventionally, when the selection conditions become complicated, the usage efficiency of the hardware arithmetic circuit is reduced, and the arithmetic processing of the database requires a lot of time.

【0010】この発明はこのような点に鑑みてなされた
もので、選択条件が複雑化されてもデータ選択処理を高
速に実行できるようにし、ハードウェア演算回路の使用
効率の向上を図ることができるデータ処理装置を提供す
ることを目的とする。
The present invention has been made in view of the above points, and has an object to enable data selection processing to be executed at high speed even when selection conditions become complicated, and to improve the usage efficiency of hardware arithmetic circuits. The purpose is to provide a data processing device that can.

【0011】[0011]

【課題を解決するための手段および作用】この発明によ
るデータ処理装置は、複数のレコードから構成されるフ
ァイルデータを格納するメモリと、前記レコードのキー
値を用いて入力データに所定の演算処理を実行する演算
回路と、前記メモリに格納された演算対象のファイルデ
ータが分散して入力され、それら入力ファイルデータか
ら前記演算回路へ出力するデータを所定の選択条件に従
ってそれぞれ作成する複数のデータ選択手段と、前記複
数のデータ選択手段で作成された複数の出力データを前
記演算回路に順次出力する出力制御手段とを具備し、前
記演算回路への出力データの作成を前記複数のデータ選
択手段によって並列的に実行することを特徴とする。
[Means and Operations for Solving the Problems] A data processing device according to the present invention includes a memory that stores file data consisting of a plurality of records, and performs predetermined arithmetic processing on input data using key values of the records. An arithmetic circuit to be executed and a plurality of data selection means each receiving a distributed input of file data to be operated on and stored in the memory, and each creating data to be output to the arithmetic circuit from the input file data according to predetermined selection conditions. and output control means for sequentially outputting a plurality of output data created by the plurality of data selection means to the arithmetic circuit, the output data being created to the arithmetic circuit by the plurality of data selection means in parallel. It is characterized by being executed in a specific manner.

【0012】このデータ処理装置においては、データ選
択手段が複数個設けられており、これら複数のデータ選
択手段で演算対象のファイルデータに対する処理が分担
される。これらデータ選択手段は、選択条件に従って例
えばデータ選択や加工等の処理をそれぞれ担当のファイ
ルデータついて行ない、演算回路へ出力するためのデー
タを作成する。そして、これらデータ選択手段で作成さ
れた出力データは、出力制御手段によって演算回路へ順
次出力される。したがって、演算回路への出力データの
作成が複数のデータ選択手段によって並列的に実行され
るので、選択条件が複雑化されてもデータ選択処理を高
速に実行できるようになり、演算回路の使用効率の向上
を図ることができる。
[0012] In this data processing device, a plurality of data selection means are provided, and processing for file data to be operated on is shared among these plurality of data selection means. These data selection means perform processes such as data selection and processing on the respective file data in accordance with the selection conditions, and create data to be output to the arithmetic circuit. The output data created by these data selection means are sequentially output to the arithmetic circuit by the output control means. Therefore, the creation of output data to the arithmetic circuit is executed in parallel by multiple data selection means, so even if the selection conditions become complex, data selection processing can be executed at high speed, making the use of the arithmetic circuit more efficient. It is possible to improve the

【0013】[0013]

【実施例】以下、図面を参照してこの発明の実施例を説
明する。
Embodiments Hereinafter, embodiments of the present invention will be described with reference to the drawings.

【0014】図1にはこの発明の一実施例に係わる計算
機システムのシステム構成が示されている。この計算機
システムは、図示しない磁気ディスク装置に格納された
データベースを利用して所望のデータを構築・生成する
データベースシステムであり、システムバス10、中央
処理装置(CPU)11、メインメモリ12、第1乃至
第nのコントローラ13−1〜13−m、ハードウェア
演算回路14、およびアービタ15を備えている。
FIG. 1 shows the system configuration of a computer system according to an embodiment of the present invention. This computer system is a database system that constructs and generates desired data using a database stored in a magnetic disk device (not shown), and includes a system bus 10, a central processing unit (CPU) 11, a main memory 12, a It includes n-th controllers 13-1 to 13-m, a hardware arithmetic circuit 14, and an arbiter 15.

【0015】中央処理装置(CPU)11はこの計算機
システムの全体の制御を司るものであり、第1乃至第m
のコントローラ13−1〜13−mに指令を発行し、フ
ァイルデータに対する演算を実行させる。
[0015] A central processing unit (CPU) 11 is in charge of overall control of this computer system, and is responsible for the first to mth
A command is issued to the controllers 13-1 to 13-m to cause them to perform calculations on the file data.

【0016】この場合、中央処理装置(CPU)11か
らコントローラ13−1〜13−mの各々に供給される
指令は、メインメモリ12上の演算対象ファイルデータ
の格納位置(メモリアドレス)を示すバッファ情報と、
演算対象ファイルデータの論理情報(ブロック長、レコ
ード長、キー位置、キー長)と、実行すべき演算の種類
(ソート演算、またはリレーショナルデータベースの関
係演算)やその演算に伴う付帯条件(選択条件)を指定
する情報と、メインメモリ12上の演算結果の格納位置
(メモリアドレス)を示すバッファ情報等とから構成さ
れている。
In this case, the commands supplied from the central processing unit (CPU) 11 to each of the controllers 13-1 to 13-m are sent to a buffer indicating the storage location (memory address) of the file data to be operated on in the main memory 12. information and
Logical information of the file data to be computed (block length, record length, key position, key length), the type of computation to be executed (sort computation, or relational computation in a relational database), and accompanying conditions associated with that computation (selection conditions) and buffer information indicating the storage location (memory address) of the calculation result on the main memory 12.

【0017】メインメモリ12には、図示しない磁気デ
ィスク装置から読み込んだ演算対象ファイルデータ、お
よびコントローラ13−1〜13−m、ハードウェア演
算回路14によって求められた検算結果等が格納される
。ここでは、演算対象ファイルデータの格納位置の先頭
アドレスが「A1」で、演算結果の格納位置の先頭アド
レスが「B1」であるので、前述の演算対象ファイルデ
ータの格納位置を示すバッファ情報としてはアドレス「
A1」が指定され、また演算結果の格納位置を示すバッ
ファ情報としてはアドレス「B1」が指定される。
The main memory 12 stores calculation target file data read from a magnetic disk device (not shown), calculation results obtained by the controllers 13-1 to 13-m and the hardware calculation circuit 14, and the like. Here, the first address of the storage position of the file data to be calculated is "A1", and the first address of the storage position of the calculation result is "B1", so the buffer information indicating the storage position of the file data to be calculated is address"
A1" is designated, and address "B1" is designated as buffer information indicating the storage location of the calculation result.

【0018】第1乃至第mのコントローラ13−1〜1
3−mは、演算対象のファイルデータに対し、中央処理
装置(CPU)11から指定された演算をハードウェア
演算回路14を用いて実行するものであり、これら各コ
ントローラは、例えば、マイクロプロセッサとRAM等
によってそれぞれ構成されている。
[0018] First to m-th controllers 13-1 to 1
3-m uses a hardware arithmetic circuit 14 to execute an arithmetic operation specified by a central processing unit (CPU) 11 on file data to be arithmetic, and each of these controllers includes, for example, a microprocessor. Each of them is composed of RAM and the like.

【0019】ここでは、演算対象のファイルデータに対
する処理がこれらm個のコントローラ13−1〜13−
mによって分担される。この演算対象ファイルデータの
分担は、例えば、中央処理装置(CPU)11からの指
令に基づいて行われる。
Here, processing for file data to be calculated is performed by these m controllers 13-1 to 13-.
Shared by m. This calculation target file data allocation is performed based on a command from the central processing unit (CPU) 11, for example.

【0020】すなわち、中央処理装置(CPU)11は
、演算対象ファイルデータのレコード数を判断し、m個
のコントローラ13−1〜13−mに対して演算対象の
レコードを均等に割り当てる。
That is, the central processing unit (CPU) 11 determines the number of records of the file data to be calculated, and equally allocates the records to be calculated to the m controllers 13-1 to 13-m.

【0021】コントローラ13−1〜13−mの各々は
、担当のファイルデータに対してレコードの選択、およ
びその選択したレコードの加工等を行い、これによって
ハードウェア演算回路14へ出力するデータを作成する
。レコードの選択や加工は、中央処理装置(CPU)1
1から指定された選択条件に従って実行される。
Each of the controllers 13-1 to 13-m selects a record for the file data in charge, processes the selected record, and thereby creates data to be output to the hardware arithmetic circuit 14. do. Records are selected and processed by the central processing unit (CPU) 1.
It is executed according to the selection conditions specified from 1.

【0022】すなわち、選択処理では、レコードのキー
値と基準値とを比較することによって、選択条件を満足
するレコードが選ばれる。また、加工処理では、その選
択されたレコードをハードウェア演算回路14の演算処
理に適合するデータ形式に加工する処理が行われる。こ
の加工処理では、選択された各レコード毎に、選択条件
で指定されたキーフィールドだけを抽出する処理、およ
びその抽出したキーフィールドに対して識別子を付与す
る処理が実行される。
That is, in the selection process, a record that satisfies the selection condition is selected by comparing the key value of the record with a reference value. In addition, in the processing, the selected record is processed into a data format compatible with the calculation processing of the hardware calculation circuit 14. In this processing, for each selected record, a process of extracting only the key field specified by the selection condition and a process of assigning an identifier to the extracted key field are executed.

【0023】この識別子は、抽出したキーフィールドが
どのレコードに属していたものかを識別するためのもの
であり、その識別子としては、例えば、メインメモリ1
2上のレコードの格納位置の先頭アドレスを使用するこ
とができる。コントローラ13−1〜13−mによるこ
のようなデータの選択および加工処理については、図3
を参照して後述する。
[0023] This identifier is used to identify which record the extracted key field belongs to.
The start address of the storage position of the record above 2 can be used. Regarding the selection and processing of such data by the controllers 13-1 to 13-m, see FIG.
will be described later with reference to.

【0024】ハードウェア演算回路14は、ファイルデ
ータの再構成のために、ソート、またはリレーショナル
データベースの関係演算等を行う専用の演算回路であり
、その演算内容は、例えばコントローラ13−1〜13
−mのうちの特定の1つを介して、あるいは図示しない
制御ラインを介して直接的に中央処理装置(CPU)1
1から通知される。このハードウェア演算回路14の演
算結果は、メインメモリ12上の所定の格納位置(アド
レスB1を先頭アドレスとする記憶領域)に格納される
The hardware arithmetic circuit 14 is a dedicated arithmetic circuit that performs sorting or relational arithmetic operations on a relational database in order to reconstruct file data.
-m or directly via a control line (not shown) to the central processing unit (CPU 1).
You will be notified from 1. The calculation result of the hardware calculation circuit 14 is stored in a predetermined storage location on the main memory 12 (a storage area whose top address is address B1).

【0025】アービタ15は、コントローラ13−1〜
13−mでそれぞれ作成された複数の出力データが衝突
しないように、それらをハードウェア演算回路14に順
次出力するための出力調停回路である。このアービタ1
5は、コントローラ13−1〜13−mから出力される
データ出力要求信号(REQ)を受取り、所定の優先度
情報に従ってそれら要求を承認する応答信号(ACK)
を順番に返送する。
[0025] The arbiter 15 controls the controllers 13-1 to 13-1.
This is an output arbitration circuit for sequentially outputting a plurality of output data created in 13-m to the hardware arithmetic circuit 14 so as not to conflict with each other. This arbiter 1
5 receives data output request signals (REQ) output from the controllers 13-1 to 13-m, and sends a response signal (ACK) to approve the requests according to predetermined priority information.
be returned in order.

【0026】応答信号(ACK)を受け取ったコントロ
ーラはデータ出力が許可され、他のコントローラは応答
信号(ACK)を受け取るまでデータ出力を待機する。 これによって、コントローラ13−1〜13−mからは
間断なくデータが出力される。
The controller that receives the response signal (ACK) is permitted to output data, and the other controllers wait for data output until they receive the response signal (ACK). As a result, data is outputted from the controllers 13-1 to 13-m without interruption.

【0027】図2には、メインメモリ12上に格納され
るファイルデータの具体的な構成の一例が示されている
。図示のように、ファイルデータはn個のレコードR1
〜Rnから構成され、各レコードR1〜Rnは5個のフ
ィールドf1〜f5から構成されている。
FIG. 2 shows an example of a specific structure of file data stored on the main memory 12. As shown, the file data consists of n records R1
-Rn, and each record R1-Rn is composed of five fields f1-f5.

【0028】レコードR1はメインメモリ12上の先頭
アドレスA1で指定される位置に格納されており、同様
に、レコードR2は先頭アドレスA2、レコードR3は
先頭アドレスがA3、レコードR4は先頭アドレスがA
4、さらに、レコードRnは先頭アドレスがAnで指定
される位置に格納されている。次に、このように構成さ
れるファイルデータに対するコントローラ13−1〜1
3−mによるデータ選択、加工処理の動作について説明
する。
Record R1 is stored at the location specified by the start address A1 on the main memory 12, and similarly, record R2 is stored at the start address A2, record R3 is stored at the start address A3, and record R4 is stored at the start address A3.
4.Furthermore, record Rn is stored at a position whose start address is specified by An. Next, the controllers 13-1 to 1 for the file data configured in this way
The operation of data selection and processing by 3-m will be explained.

【0029】ここでは、図2のファイルデータを構成す
る各レコードR1〜Rnの5個のフィールドf1〜f5
のうちで、第2フィールドf2がコントローラ13−1
〜13−mが選択処理を行うためのキーフィールド(第
1優先度のキーフィールド)として指定され、第4フィ
ールドf4がハードウェア演算回路14が演算処理を行
うためのキーフィールド(第2優先度のキーフィールド
)として指定された場合を想定する。
Here, five fields f1 to f5 of each record R1 to Rn constituting the file data in FIG.
Among them, the second field f2 is the controller 13-1.
~13-m is designated as a key field (first priority key field) for performing selection processing, and the fourth field f4 is designated as a key field (second priority key field) for performing calculation processing by hardware calculation circuit 14. Assume that it is specified as a key field).

【0030】この場合、第1優先度のキーフィールドに
おけるレコードR1〜Rnのキー値はK1〜Knであり
、また、第2優先度のキーフィールドにおけるレコード
R1〜Rnのキー値はK1´〜Kn´である。
In this case, the key values of records R1 to Rn in the first priority key field are K1 to Kn, and the key values of records R1 to Rn in the second priority key field are K1' to Kn. ´ is.

【0031】このようなキーフィールドの2重指定は、
例えば、第2フィールドf2に定義されるデータ項目と
、第4フィールドf4に定義されるデータ項目との双方
を用いたソート処理を行う場合等に行われる。
[0031] Such double specification of key fields is as follows:
For example, this is performed when sorting is performed using both the data item defined in the second field f2 and the data item defined in the fourth field f4.

【0032】コントローラ13−1〜13−mは、中央
処理装置(CPU)11から演算指令を受け取ると、中
央処理装置(CPU)11によって割り当てられた担当
のレコード群をメインメモリ12からそれぞれ取り込む
。そして、コントローラ13−1〜13−mの各々は、
担当のレコードにおける第1優先度のキーフィールドの
キー値と中央処理装置(CPU)11によって指定され
た基準値とを比較し、選択条件を満足するレコードだけ
を選び出す。
When the controllers 13-1 to 13-m receive an arithmetic command from the central processing unit (CPU) 11, they each take in the record group assigned by the central processing unit (CPU) 11 from the main memory 12. Each of the controllers 13-1 to 13-m is
The key value of the first priority key field in the record in charge is compared with a reference value specified by the central processing unit (CPU) 11, and only records that satisfy the selection conditions are selected.

【0033】次いで、この選出されたレコードに含まれ
る5個のフィールドf1〜f5の中から、ハードウェア
演算回路14の演算処理で使用される第2優先度のキー
フィールド(第4フィールドf4)のキー値だけが抽出
される。この抽出されたキー値には、そのキーが属して
いるレコードの格納位置を示すアドレス情報(メインメ
モリ12上の先頭アドレス)が識別子として付与される
。これによって、抽出されたキー値とアドレス情報とか
ら成るデータ列が構成され、これがハードウェア演算回
路14への出力データとなる。図3には、このようなデ
ータ選択、加工処理の結果作成されたハードウェア演算
回路14への出力データの一例が示されている。
Next, from among the five fields f1 to f5 included in this selected record, the second priority key field (fourth field f4) used in the arithmetic processing of the hardware arithmetic circuit 14 is selected. Only key values are extracted. This extracted key value is given address information (starting address on the main memory 12) indicating the storage position of the record to which the key belongs as an identifier. As a result, a data string consisting of the extracted key value and address information is constructed, and this becomes output data to the hardware arithmetic circuit 14. FIG. 3 shows an example of output data to the hardware arithmetic circuit 14 created as a result of such data selection and processing.

【0034】図示のように、演算対象のレコードR1は
第4フィールドf4のキー値K1´とアドレスA1とか
ら成るデータ列R1´に加工され、同様に、演算対象の
レコードR2は第4フィールドf4のキー値K2´とア
ドレスA2とから成るデータ列R2´に加工され、演算
対象のレコードR4は第4フィールドf4のキー値K4
´とアドレスA4とから成るデータ列R4´に加工され
、さらに、演算対象のレコードRnは第4フィールドf
4のキー値Kn´とアドレスAnとから成るデータ列R
n´に加工される。
As shown in the figure, the record R1 to be operated on is processed into a data string R1' consisting of the key value K1' of the fourth field f4 and the address A1, and similarly, the record R2 to be operated on is processed to the data string R1' consisting of the key value K1' of the fourth field f4 and the address A1. is processed into a data string R2' consisting of the key value K2' and address A2, and the record R4 to be operated on has the key value K4 of the fourth field f4.
' and address A4, and furthermore, the record Rn to be operated on is stored in the fourth field f.
A data string R consisting of a key value Kn' of 4 and an address An.
Processed into n'.

【0035】また、この例では、演算対象のレコードR
3に対応する出力データが示されてないが、これは、レ
コードR3の第2フィールドf2のキー値K2が指定さ
れた条件を満足して無かったことを意味している。
Furthermore, in this example, the record R to be operated on is
Although the output data corresponding to No. 3 is not shown, this means that the key value K2 of the second field f2 of record R3 did not satisfy the specified condition.

【0036】コントローラ13−1〜13−mの各々は
、このようなデータ選択、加工の処理を担当のレコード
に対して順次実行し、1個のレコードに対する処理を終
了する度、すなわち1個の出力データ列を作成する度に
、データ出力要求信号(REQ)を発行する。そして、
アービタ15から応答信号(ACK)を受け取った際に
、その出力データをハードウェア演算回路14に供給す
る。
Each of the controllers 13-1 to 13-m sequentially executes such data selection and processing processing on the records it is responsible for, and each time it finishes processing on one record, that is, one Every time an output data string is created, a data output request signal (REQ) is issued. and,
When receiving a response signal (ACK) from the arbiter 15, the output data is supplied to the hardware arithmetic circuit 14.

【0037】ハードウェア演算回路14では、コントロ
ーラ13−1〜13−mによって選択、加工された入力
データに対してキー値K1´、K2´、K4´、…を用
いたソート、またはリレーショナルデータベースの関係
演算等が行なわれ、これによって、データ列R1´、R
2´、R4´、…の選択や並び換え等が行われる。
The hardware arithmetic circuit 14 sorts the input data selected and processed by the controllers 13-1 to 13-m using key values K1', K2', K4', etc., or sorts the input data in a relational database. Relational calculations, etc. are performed, and as a result, the data strings R1', R
2', R4', . . . are selected and rearranged.

【0038】ハードウェア演算回路14の演算結果は、
メインメモリ12上のアドレスB1を先頭とする格納領
域に書き込まれる。この場合、演算結果としては、選択
や並び換えが行われたデータ列R1´、R2´、R4´
の中で、アドレス情報(A1,A2,A4…)だけを使
用することができる。
The calculation results of the hardware calculation circuit 14 are as follows:
The data is written to a storage area starting from address B1 on the main memory 12. In this case, the operation results include the selected and rearranged data strings R1', R2', and R4'.
Among them, only address information (A1, A2, A4...) can be used.

【0039】すなわち、ハードウェア演算回路14は、
所定の演算処理に従った演算結果としてアドレス情報(
A1,A2,A4…)の並びを生成し、それをメインメ
モリ12に順番に格納する。
That is, the hardware arithmetic circuit 14 is
Address information (
A1, A2, A4...) is generated and stored in the main memory 12 in order.

【0040】メインメモリ12に格納された演算結果は
中央処理装置(CPU)11によって参照され、所望の
ファイルデータを得るために利用される。すなわち、中
央処理装置(CPU)11は、メインメモリ12に格納
されている演算対象のファイルデータのレコードR1〜
Rnを、演算結果が示すアドレス情報の並びの順番に並
び替え、指定された演算結果に従う新たなファイルを作
成して、その再構成したファイル情報を図示しない磁気
ディスク装置に格納する。
The calculation results stored in the main memory 12 are referenced by the central processing unit (CPU) 11 and used to obtain desired file data. That is, the central processing unit (CPU) 11 selects records R1 to R1 of file data to be operated on, which are stored in the main memory 12.
Rn is rearranged in the order of the address information indicated by the calculation results, a new file is created according to the designated calculation results, and the reconstructed file information is stored in a magnetic disk device (not shown).

【0041】以上のように、この実施例においては、デ
ータ選択のための複数のコントローラ13−1〜13−
mが設けられており、これらコントローラ13−1〜1
3−mによって演算対象のファイルデータに対する処理
が分担される。これらコントローラ13−1〜13−m
で作成された出力データは、アービタ15の制御の下で
ハードウェア演算回路14へ順次出力される。
As described above, in this embodiment, a plurality of controllers 13-1 to 13-1 are used for data selection.
m is provided, and these controllers 13-1 to 1
Processing for the file data to be calculated is shared by 3-m. These controllers 13-1 to 13-m
The output data created in is sequentially output to the hardware arithmetic circuit 14 under the control of the arbiter 15.

【0042】したがって、ハードウェア演算回路14へ
の出力データの作成が複数のコントローラ13−1〜1
3−mによって並列的に実行されるので、選択条件が複
雑化されてもデータ選択処理を高速に実行できるように
なり、ハードウェア演算回路14の使用効率の向上を図
ることができる。
Therefore, the creation of output data to the hardware arithmetic circuit 14 is performed by a plurality of controllers 13-1 to 1.
3-m in parallel, data selection processing can be executed at high speed even if the selection conditions are complicated, and the efficiency of use of the hardware arithmetic circuit 14 can be improved.

【0043】尚、ここでは、コントローラ13−1〜1
3−mによるデータ加工処理において指定キーだけを抽
出してその抽出キーにアドレス情報を識別子として付与
したが、データ加工処理を行う目的はハードウェア演算
回路14の演算処理に適合するデータ形式にレコードを
加工することにあるので、ハードウェア演算回路14の
機能によっては、指定キーの抽出を行うこと無く、選択
したレコードの全てのフィールドをハードウェア演算回
路14への出力データとして作成することも可能である
[0043] Here, the controllers 13-1 to 1
In the data processing process using 3-m, only the specified key is extracted and address information is added to the extracted key as an identifier. Therefore, depending on the function of the hardware arithmetic circuit 14, it is also possible to create all fields of the selected record as output data to the hardware arithmetic circuit 14 without extracting the specified key. It is.

【0044】この場合、ハードウェア演算回路14内部
で指定キーの抽出が行われることになるので、その抽出
処理の簡単化を図るために、コントローラ13−1〜1
3−mにおいて指定キーのフィールドをレコードの先頭
フィールドに予め移動しておくことが好ましい。図4に
はこの発明の第2実施例に係わる計算機システムの構成
が示されている。
In this case, since the specified key is extracted within the hardware arithmetic circuit 14, in order to simplify the extraction process, the controllers 13-1 to 1
In step 3-m, it is preferable to move the field of the specified key to the first field of the record in advance. FIG. 4 shows the configuration of a computer system according to a second embodiment of the present invention.

【0045】この第2実施例は、図1の第1実施例の計
算機システムと同様に、演算対処ファイルデータを複数
のコントローラで分担して処理する構成であるが、ここ
では、図1のコントローラ13−1〜13−mの代わり
に、コントローラ23−1〜23−m、および出力バッ
ファ24−1〜24−mが設けられており、またアービ
タ15の代わりに優先度制御回路25が設けられている
Similar to the computer system of the first embodiment shown in FIG. 1, this second embodiment has a configuration in which a plurality of controllers share and process the file data to be processed. Controllers 23-1 to 23-m and output buffers 24-1 to 24-m are provided in place of 13-1 to 13-m, and a priority control circuit 25 is provided in place of arbiter 15. ing.

【0046】コントローラ23−1〜23−mは、コン
トローラ13−1〜13−mと同様に担当レコードに対
する選択、加工処理を順次実行し、作成したデータをレ
コード単位で対応する出力バッファ24−1〜24−m
に格納する。また、出力バッファへのデータ格納を終了
すると、優先度制御回路25にデータ出力要求を発行す
る。優先度制御回路25は、データ出力要求を受け取る
と、所定の優先度情報に従って出力バッファ24−1〜
24−mの1つに出力許可信号を発生する。
The controllers 23-1 to 23-m, like the controllers 13-1 to 13-m, sequentially execute selection and processing on the records in charge, and output the created data in record units to the corresponding output buffer 24-1. ~24-m
Store in. Further, when data storage in the output buffer is completed, a data output request is issued to the priority control circuit 25. When the priority control circuit 25 receives a data output request, the priority control circuit 25 outputs the output buffers 24-1 to 24-1 according to predetermined priority information.
24-m.

【0047】この構成においては、作成データを出力バ
ッファに書き込んだ状態で次のレコードに対する処理を
実行できるので、演算対象のレコードに対する選択、及
び加工処理をさらに高速で実行できるようになる。
[0047] With this configuration, processing for the next record can be executed with the creation data written in the output buffer, so selection and processing for the record to be operated on can be executed at higher speed.

【0048】[0048]

【発明の効果】以上のように、この発明によれば、選択
条件が複雑化されてもデータ選択処理を高速に実行でき
るので、ハードウェア演算回路の使用効率の向上が図れ
、これによってデータベースの演算処理の高速化を実現
できる。
[Effects of the Invention] As described above, according to the present invention, data selection processing can be executed at high speed even when selection conditions become complicated, thereby improving the usage efficiency of hardware arithmetic circuits. It is possible to achieve faster calculation processing.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】この発明の第1実施例に係わるシステム構成を
示すブロック図。
FIG. 1 is a block diagram showing a system configuration according to a first embodiment of the present invention.

【図2】同実施例における演算対象ファイルデータの構
成の一例を示す図。
FIG. 2 is a diagram showing an example of the configuration of calculation target file data in the same embodiment.

【図3】同実施例に設けられた複数のコントローラによ
って作成された出力データの構成の一例を示す図。
FIG. 3 is a diagram showing an example of the configuration of output data created by a plurality of controllers provided in the embodiment.

【図4】この発明の第2実施例に係わるシステム構成を
示すブロック図。
FIG. 4 is a block diagram showing a system configuration according to a second embodiment of the invention.

【符号の説明】[Explanation of symbols]

11…CPU、12…メインメモリ、13−1〜13−
m…コントローラ、14…ハードウェア演算回路、15
…アービタ。
11...CPU, 12...Main memory, 13-1 to 13-
m...Controller, 14...Hardware arithmetic circuit, 15
…arbiter.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】  複数のレコードから構成されるファイ
ルデータを格納するメモリと、前記レコードのキー値を
用いて入力データに所定の演算処理を実行する演算回路
と、前記メモリに格納された演算対象のファイルデータ
が分散して入力され、それら入力ファイルデータから前
記演算回路へ出力するデータを所定の選択条件に従って
それぞれ作成する複数のデータ選択手段と、前記複数の
データ選択手段で作成された複数の出力データを前記演
算回路に順次出力する出力制御手段とを具備し、前記演
算回路への出力データの作成を前記複数のデータ選択手
段によって並列的に実行することを特徴とするデータ処
理装置。
1. A memory that stores file data consisting of a plurality of records, an arithmetic circuit that performs predetermined arithmetic processing on input data using key values of the records, and an arithmetic operation target stored in the memory. a plurality of data selection means each receiving a distributed input of file data and creating data to be output to the arithmetic circuit from the input file data according to predetermined selection conditions; and a plurality of data selection means created by the plurality of data selection means. A data processing device comprising: output control means for sequentially outputting output data to the arithmetic circuit, and generating output data to the arithmetic circuit in parallel by the plurality of data selection means.
【請求項2】  前記演算回路は、前記ファイルデータ
に対しソートまたはリレーショナルデータベースの関係
演算を含む演算処理を実行することを特徴とする請求項
1記載のデータ処理装置。
2. The data processing device according to claim 1, wherein the arithmetic circuit performs arithmetic processing on the file data, including sorting or relational operations in a relational database.
【請求項3】  前記データ選択手段は、前記選択条件
で要求されたレコードを前記レコードのキー値を用いて
前記演算対象ファイルデータの中から選択する手段と、
その選択されたレコードを前記演算回路の演算処理に適
合するデータ形式に加工する手段とを具備することを特
徴とする請求項1記載のデータ処理装置。
3. The data selection means selects a record requested by the selection condition from among the operation target file data using a key value of the record;
2. The data processing apparatus according to claim 1, further comprising means for processing the selected record into a data format compatible with arithmetic processing by said arithmetic circuit.
JP3088873A 1991-04-19 1991-04-19 Data processor Pending JPH04320572A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3088873A JPH04320572A (en) 1991-04-19 1991-04-19 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3088873A JPH04320572A (en) 1991-04-19 1991-04-19 Data processor

Publications (1)

Publication Number Publication Date
JPH04320572A true JPH04320572A (en) 1992-11-11

Family

ID=13955130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3088873A Pending JPH04320572A (en) 1991-04-19 1991-04-19 Data processor

Country Status (1)

Country Link
JP (1) JPH04320572A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015532748A (en) * 2012-08-20 2015-11-12 オラクル・インターナショナル・コーポレイション Hardware implementation of filtering / projection operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015532748A (en) * 2012-08-20 2015-11-12 オラクル・インターナショナル・コーポレイション Hardware implementation of filtering / projection operation

Similar Documents

Publication Publication Date Title
US6366911B1 (en) Partitioning of sorted lists (containing duplicate entries) for multiprocessors sort and merge
US5870743A (en) Method and apparatus for parallelizing operations that create a table
CN109643310B (en) System and method for redistribution of data in a database
JP3510042B2 (en) Database management method and system
JP4511469B2 (en) Information processing method and information processing system
JPH04320572A (en) Data processor
JPS59173863A (en) Mask memory system
JP4620593B2 (en) Information processing system and information processing method
JPH0581337A (en) Data processing device
JPS6172333A (en) How to merge multiple files
WO2005106713A1 (en) Information processing method and information processing system
JP3975975B2 (en) Parallel quick sort device, parallel quick sort method, and parallel quick sort program
JP2923952B2 (en) Merge processing method
JP2000235551A (en) Database parallel search control method and recording medium
WO2019170961A1 (en) Device, system and method for parallel data sorting
JPH0581342A (en) Data processor
JP2901786B2 (en) Schedule creation device
JPH0581338A (en) Data processing device
CN120276853A (en) Resource allocation method, device, electronic equipment and storage medium
JP3223530B2 (en) Data transfer instruction generation processing method
JPH0580977A (en) Data processor
WO1997011433A1 (en) Performing efficient join operations on large tables
JP2994917B2 (en) Storage system
JP2615046B2 (en) Record addition processing method
JPH02122328A (en) File preparation system