JPH10301758A - ソート処理装置 - Google Patents

ソート処理装置

Info

Publication number
JPH10301758A
JPH10301758A JP10643497A JP10643497A JPH10301758A JP H10301758 A JPH10301758 A JP H10301758A JP 10643497 A JP10643497 A JP 10643497A JP 10643497 A JP10643497 A JP 10643497A JP H10301758 A JPH10301758 A JP H10301758A
Authority
JP
Japan
Prior art keywords
record
sort
comparison
output
register
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
JP10643497A
Other languages
English (en)
Inventor
Takeshi Misumi
武嗣 三角
Yasutaka Takeda
保孝 武田
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 JP10643497A priority Critical patent/JPH10301758A/ja
Publication of JPH10301758A publication Critical patent/JPH10301758A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 データベース検索処理におけるレコード同士
の関係の検査を高速に実行することができるソート処理
装置を提供する。 【解決手段】 入力されたレコードはソートセル120
でソートされ、ソート順に従ってレコードレジスタ13
0に供給される。レコードレジスタ130は、供給され
るレコードを所定時間の間保持し、その後レコードレジ
スタ131に出力する。レコードレジスタ130及び1
31には、ソート順において隣り合うレコードが保持さ
れる。出力レジスタ134は、レコードレジスタ131
からレコードを受け取り、保持する。比較回路132
は、レコードレジスタ130及び131に保持されたレ
コード同士を比較して両者の一致不一致などを検査し、
その結果に応じて、出力レジスタ134の保持レコード
の出力又は廃棄を指示する出力制御信号を生成する。出
力レジスタ134は、この出力制御信号に応じて保持し
たレコードを外部に出力するか、又は出力せずに廃棄す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、データベース検
索などにおけるレコードのソート処理を行うソート処理
装置に関する。
【0002】
【従来の技術】記憶装置の大容量化の進展に伴い、デー
タベースの大規模化が進んでいる。大規模データベース
は、そのデータ数の多さにより、検索処理に多大の時間
を要するという問題を本質的に有している。このような
問題を解決あるいは緩和するための方法として、検索処
理において必要なソート処理を専用のハードウエアソー
タ(以下「H/Wソータ」と略す)で実行させる方法が
従来より知られている。このようなH/Wソータとして
は、例えば特開昭61−16327号公報や特開昭61
−16328号公報に示されるようなものがある。
【0003】ところで、データベース検索処理の一つ
に、例えばレコード群の中から特定のフィールドの値が
一致しているレコードを抽出する処理がある。このよう
な処理の具体例として、図10(a)に示す会員番号フ
ィールド301と会員名フィールド302を持つ複数の
レコードからなるデータベースにおいて、図10(b)
に示す会員番号フィールド301の値が一致するレコー
ドを、エラーレコードとして検出する処理を考える。こ
のような処理においては、特定のレコードを検査するだ
けでは出力を決定することはできず、複数のレコードに
わたる検査が必要となる。これを実現する具体的な方法
の一つとして、レコード群を会員番号フィールド301
の値について昇順あるいは降順にソートし、このソート
結果において先頭から順に連続する2つのレコードの会
員番号フィールド301の値を比較し、一致した場合に
それらレコードをエラーレコードと判定するという方法
がある。
【0004】
【発明が解決しようとする課題】しかしながら、前述の
特開昭61−16327号公報や特開昭61−1632
8号公報に示す装置は、ソート処理のみを行う装置であ
り、ソート結果のレコード同士の間の関係を検査する機
能は持たない。このため、従来は、図10に例示したよ
うな処理を実現するためには、H/Wソータでレコード
群をソートした後、あらためてそのソート結果に対して
ソフトウエアによりレコード同士の関係を調べるなど、
複数回に処理が必要となり、データベース処理に時間が
かかるという問題があった。
【0005】この発明は、以上のような問題を解決する
ためになされたものであり、データベース検索処理にお
けるレコード同士の関係の検査を高速に実行することが
できるソート処理装置を提供することを目的とする。
【0006】
【課題を解決するための手段】第1の発明に係るソート
処理装置は、入力されたレコード群をソートし、ソート
されたレコード群をソート順に従って1レコードずつ出
力するソート処理部と、前記ソート処理部から順に出力
された各レコードを、それぞれ当該レコードの次に出力
されたレコードと順次比較し、その比較結果を出力する
レコード間検査部とを有するものである。
【0007】第2の発明に係るソート処理装置は、入力
されたレコード群をソートし、ソートされたレコード群
をソート順に従って1レコードずつ出力するソート処理
部と、前記ソート処理部から順に出力された各レコード
を、それぞれ当該レコードの次に出力されたレコードと
順次比較し、その比較結果に基づき当該レコードの外部
への出力を制御するレコード間検査部とを有するもので
ある。
【0008】また、第3の発明は、前記第2の発明に係
るソート処理装置において、前記レコード間検査部は、
前記ソート処理部から順次出力された連続する2つのレ
コードを順次比較し、その比較結果に応じてレコードの
出力を制御する出力制御信号を出力する比較回路と、前
記ソート処理部から出力されたレコードを保持し、保持
したレコードを前記出力制御信号に応じて出力又は廃棄
する出力レジスタとを有するものである。
【0009】また、第4の発明は、前記第1から第3の
発明に係るソート処理装置において、前記レコード群の
各フィールドの位置、長さ及びデータ型を含むレコード
構成情報を記憶するレコード構成情報レジスタを設け、
前記ソート処理部及び前記レコード間検査部は、前記レ
コード構成情報レジスタの情報を参照してフィールド単
位でソート又は比較を行うものである。
【0010】また、第5の発明は、前記第4の発明に係
るソート処理装置において、前記ソート処理部は、レコ
ード群の各フィールドのうちソートキーとして用いるフ
ィールドの指定を含むソート条件を記憶するソート条件
設定レジスタを有し、前記レコード間検査部は、比較対
象とするフィールドの指定を含む比較処理の処理条件を
記憶する比較条件設定レジスタを有し、ソートキーとな
るフィールドと比較対象となるフィールドとを独立に設
定可能としたものである。
【0011】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面に基づいて説明する。
【0012】実施の形態1.図1は、この発明に係るソ
ート処理装置の実施の形態1の構成図である。図1にお
いて、ソート処理装置1は、入力レジスタ10、レコー
ド構成情報レジスタ11、ソート処理部12、レコード
間検査部13を含んでいる。
【0013】入力レジスタ10は、データベース管理シ
ステムなどから供給される入力レコードを保持し、これ
ら各レコードを順にソート処理部12に供給する。
【0014】また、レコード構成情報レジスタ11に
は、データベース管理システムにより、入力レコードの
データ構成を示すレコード構成情報が設定される。例え
ば、処理対象となる入力レコードが、図2に示すように
「地域名」「販売店名」「品目名」「品番」「販売数
量」「単価」「その他」のフィールドから構成されてい
る場合、レコード構成情報は図3に示すようなテーブル
で表すことができる。図3のテーブルにおいて、各行は
それぞれレコードの各フィールドに対応する。各行は3
つの列から構成されている。第1列101はレコード終
了フラグであり、これが1となっている行がレコードの
最後のフィールドである。また、第2列102はそのフ
ィールドに含まれるデータのデータサイズ(バイト単
位)であり、第3列103はそのフィールドに格納され
るデータのデータ型である。したがって、例えば、テー
ブルの第1行104は、レコードの先頭フィールドであ
る「地域名」フィールドには、12バイトの文字列(S
tring)型のデータが含まれることを表す。また、
第7行105は、「その他」フィールドがレコードの最
後のフィールドであり、64バイトの文字列型データを
含むことを示す。
【0015】ソート処理部12は、入力レジスタ10か
ら供給されるレコード群をソートする。ソート処理部1
2は、ソートキーとするフィールドやソート順(昇順又
は降順)などのソート条件が設定されるソート条件設定
レジスタ121と、ソート条件設定レジスタ121に設
定されたソート条件に従ってレコードのソート処理を実
行するソートセル120とから構成される。ソートセル
120は、ソート結果のレコード群をソート順に従って
1レコードずつ出力する。
【0016】レコード間検査部13は、ソート処理部1
2のソートセル120から出力されたソート済みのレコ
ードを順に受け取り、順次、受け取ったレコードとその
次に受け取ったレコードと比較することにより、レコー
ド間の関係を検査する。すなわち、レコード間検査部1
3は、ソートセル120からソート順に従って出力され
るレコードを1つずつ組合せをずらしながら、2レコー
ドずつ比較していく。
【0017】レコード間検査部13は、2つのレコード
レジスタ130及び131、比較回路132、比較条件
設定レジスタ133、及び出力レジスタ134を含んで
いる。レコードレジスタ130は、ソートセル120か
ら出力されたレコードを所定時間の間保持した後、レコ
ードレジスタ131に出力する。レコードレジスタ13
1は、レコードレジスタ130から出力されたレコード
を保持し、比較回路132による比較が終わると、その
レコードを出力レジスタ134に出力する。したがっ
て、レコードレジスタ130及び131には、ソートセ
ル120から連続して出力された2つのレコードが保持
されることになる。比較回路132は、レコードレジス
タ130及び131に保持されたレコードを比較する。
この比較処理についての処理条件は、比較条件設定レジ
スタ133に設定される。比較条件設定レジスタ133
には、より詳しくは、2レコードの間で比較の対象とす
るフィールドの指定やこれら各比較対象フィールドが満
たすべき比較条件、及びこれら比較条件を満足した時に
行う処理内容などが設定される。ここで、比較条件は、
各比較対象フィールドごとに設定される。比較条件とし
ては、例えば、両レコードの比較対象フィールドの値が
一致するあるいは不一致であるなどの条件を設定するこ
とができる。したがって、比較回路132は、この比較
条件設定レジスタ133の設定内容に基づき、レジスタ
130及び131の両レコードの各比較対象フィールド
ごとに値の比較を行い、比較結果を外部に出力する。比
較結果は、例えば、すべての比較対象フィールドのつい
ての比較条件が満足された場合にオンとなり、それ以外
の場合にはオフとなる信号として出力される。また、比
較回路132は、この比較結果と、前記比較条件設定レ
ジスタ133に設定された比較条件満足時の処理内容と
に基づき、出力レジスタ134に保持されたレコードの
出力を制御する出力制御信号を生成する。そして、出力
レジスタ134は、レコードレジスタ131から受け取
ったレコードを保持し、このレコードを出力制御信号に
応じて外部に出力又は廃棄する。
【0018】次に、この実施の形態1の装置が行う処理
について具体例を用いて説明する。ここでは、図2に示
す構成を有するレコード群において「販売店名」及び
「品目名」が一致するレコードがあれば、それらのうち
の最初のレコードのみを出力するような処理を考える。
【0019】この処理においては、まずデータベース管
理システムにより、レコード構成情報レジスタ11、ソ
ート条件設定レジスタ121及び比較条件設定レジスタ
133に対してデータの初期設定が行われる。ここで、
レコード構成情報レジスタ11には、図3に示した内容
のレコード構成情報が設定される。また、ソート条件設
定レジスタ121には、ソートキーとするフィールドと
して「販売店名」「品目名」の指定が設定され、ソート
順として昇順又は降順のいずれかが設定される。ソート
順は各ソートキーごとに設定できるようにしてもよい。
この場合、ソート条件設定レジスタ121には、例えば
レコードの7つのフィールドのそれぞれについて、ソー
トキー指定の有無及びソート順を設定する領域を設けれ
ばよい。
【0020】また、比較条件設定レジスタ133には、
比較処理の処理条件が図4に示すような形式で設定され
る。図4では、各行が一つの処理条件を示している。行
が複数ある場合は、それら各行はOR(オア)条件とし
て扱う。各行において、第1列203は条件終了フラグ
を示し、このフラグが1となっている行が一連の処理条
件の中の最後の条件である。また、第2列204−1か
ら最終列205の直前の列204−7までは、レコード
の各フィールドに対応した比較条件の設定領域である。
この例では、レコードは7つのフィールドを持つので、
比較条件の設定領域も7つ設けられる。そして、レコー
ド間検査において比較対象としないフィールドについて
は、この比較条件設定領域に0を設定する。一方、比較
対象とするフィールドについては、その設定領域に比較
条件を表す値を設定する。比較条件としては、比較する
2つのレコードの当該比較対象フィールドの値の一致、
不一致、大小関係などを設定することができる。図4の
行201の処理条件では、列204−2及び204−3
に対して比較条件としてEQという値が設定されてお
り、この値EQは、フィールドの値が一致した場合を検
出するという条件を示す。1つの行において設定された
各列の比較条件はAND(アンド)条件として扱う。し
たがって、行201は、比較する2つのレコードの第2
フィールド「販売店名」及び第3フィールド「品目名」
が共に一致する場合を検出するという条件を示してい
る。最終列205には、各比較対象フィールドに対して
設定された比較条件がすべて満たされた場合に行う処理
内容を示す値が設定される。ここで設定される処理内容
としては、例えば、「最初の1レコードだけを出力す
る」、「エラーとする」、「すべて出力する」、「出力
しない」などが考えられる。図4では、行201の列2
05にONEという値が設定されており、この値は「最
初の1レコードだけ出力する」という処理内容を示す。
したがって、行201は、「販売店名」フィールド及び
「品目名」フィールドの値が一致するレコードを検出し
た場合には、それらのなかの最初の1レコードだけを出
力するという処理条件を示している。なお、行202
は、列203の値が1となっているので、一連の条件の
中の最後の処理条件であり、それまでの処理条件がいず
れも満たされなかった場合のデフォルト処理を指定して
いる。したがって、行202の条件は通常の条件と異な
り、各フィールドについての比較条件は設定しない。行
202の列205の値ALLは、比較条件を満たすレコ
ードをすべて出力するという処理内容を示す。よって、
図4に示した設定内容では、第2フィールド「販売店
名」及び第3フィールド「品目名」を連続するレコード
間で比較し、これらが一致するレコード群については最
初のレコードのみを出力し、それ以外のレコードはすべ
て出力するという条件が表されている。なお、図4の例
では、デフォルト条件を除く通常の処理条件は1つだけ
であったが、複数の処理条件を設定したい場合は、デフ
ォルト条件の前にそれら処理条件を示す行を追加すれば
よい。この場合、複数の処理条件は、前述したようにO
R条件として扱われる。
【0021】なお、ソート処理装置1にソート処理のみ
を行わせたい場合は、比較条件設定レジスタ133に図
4の行202の内容のみを設定すればよい。
【0022】これら初期設定が完了すると、データベー
ス管理システムから図1のソート処理装置1に対して処
理対象のレコードが入力される。入力されたレコード群
は、入力レジスタ10に保持される。入力レジスタ10
は、ソートセル120の要求に応じ、レコードを順次ソ
ートセル120に供給する。ソートセル120は、前述
したソート条件設定レジスタ121の設定内容に従い、
「販売店名」及び「品目名」をソートキーとして、設定
されたソート順に従ってレコードのソートを行う。この
とき、ソートセル120は、レコード構成情報レジスタ
11の内容を参照して、各ソートキーのフィールドのレ
コード内での位置及びデータ型を判別し、適切なソート
処理を行う。ソートセル120は、ソート処理が終了し
次第、各レコードをソート順に従って、レコード間検査
部13のレコードレジスタ130に出力する。
【0023】レコードレジスタ130は、このレコード
を所定時間の間保持した後、レコードレジスタ131に
送る。これにより、レコードレジスタ131には、レコ
ードレジスタ130に保持されるレコードよりも1つ前
にソートセル120から出力されたレコードが保持され
ることになる。比較回路132は、レコードレジスタ1
30及び131に保持された2つのレコードの内容を比
較する。このとき、比較回路132は、比較条件設定レ
ジスタ133及びレコード構成情報レジスタ11の設定
を参照して比較対象のフィールドを判別する。この例で
は「販売店名」と「品目名」のフィールドについて、そ
れぞれ2レコード間での比較が行われる。また、比較回
路132は、レコード構成情報レジスタ11の設定内容
を参照し、比較対象のフィールドのデータ型に適した比
較方法で比較を行う。ここで、この実施の形態1では、
ソートセル120でのソート処理により、「販売店名」
及び「品目名」が一致するレコードは必ず連続してい
る。したがって、レコード群の中にこれらフィールドの
値が同一値となるレコードが存在するならば、それらレ
コードは必ず比較回路132で検出される。比較回路1
32は、比較条件設定レジスタ133にデータベース検
索処理におけるレコード同士の関係の検査を高速に実行
することができるソート処理装置を提供する設定された
各処理条件について、順に各比較対象フィールドについ
て比較条件が満足されるか否かを検査する。この検査の
結果は、比較結果としてデータベース管理システムなど
に出力される。また、比較回路132は、レコード間の
検査の結果に基づき出力レジスタ134に対する出力制
御信号を生成する。例えば、比較回路132は、比較対
象の2レコードにおいて「販売店名」及び「品目名」の
両フィールドの一致を新たに検出した場合、最初の1レ
コードの期間だけレコード出力を指示する出力信号を出
力し、次にそれら2フィールドのいずれかの不一致を検
出するまでの間はレコード出力の抑制を指示する出力制
御信号を出力する。出力レジスタ134は、レコードレ
ジスタ131からレコードを受け取り、このレコードを
比較回路132からの出力制御信号に従って出力する。
すなわち、出力制御信号がレコード出力を示していれ
ば、受け取ったレコードを出力し、出力制御信号がレコ
ード出力の抑制を示していれば、受け取ったレコードを
出力せずに廃棄する。このような処理によれば、与えら
れたレコード群のなかに「販売店名」及び「品目名」が
一致するレコードがあれば、それらのうちの最初のレコ
ードのみを抽出することができる。
【0024】なお、図10に示した会員番号の重複をエ
ラーとして検出するような処理の場合、処理条件におい
て、会員番号の一致を比較条件とし、レコードの出力を
行わないよう設定することもできる。このような設定を
行った場合、レコードは出力されず、エラーがあるか否
かを示す比較結果のみが出力される。データベース管理
システムでは、この比較結果の信号から、エラーの有無
を検出することができる。
【0025】このように、実施の形態1に係るソート処
理装置によれば、与えられたレコード群において、複数
のレコード間でのフィールドの値の一致、不一致等を検
査して、その検査の結果を出力したり、あるいはその検
査の結果に応じて所望のレコードのみを抽出して出力し
たりすることができる。
【0026】なお、以上では、ソートキーのフィールド
と比較対象のフィールドとが一致する場合について処理
例を説明したが、この実施の形態は、ソートキーはソー
ト条件設定レジスタ121に、比較対象フィールドは比
較条件設定レジスタ133にそれぞれ独立して設定する
ので、ソートキーと比較対象フィールドとを異ならせる
こともできる。この構成によれば、例えば、図5に示す
「販売店名」「売上げ」及び「製品名」の3つのフィー
ルドからなるレコードにおいて、販売店別売上げ1位の
製品名を抽出するような処理を実現することができる。
この処理を実現するためには、「販売店名」及び「売上
げ」をソートキーとして「売上げ」に関しては降順にソ
ートし、比較条件設定レジスタ133において比較対象
として「販売店名」のみを指定し、この「販売店名」が
一致した場合には出力を抑制するよう処理内容の設定を
行えばよい。
【0027】実施の形態2.次に、図6を参照して、こ
の発明の実施の形態2について説明する。
【0028】この実施の形態2は、既存のソート装置2
0に、レコード間検査装置30をアドオンすることによ
り、全体として実施の形態1のソート処理装置1と同様
の機能を達成するものである。
【0029】図6において、ソート装置20は、実施の
形態1のソート処理部12と同様の機能を持つ従来既存
の装置であり、レコード間検査装置30は、実施の形態
1のレコード間検査部13と同様の機能を持つ装置であ
る。この実施の形態において、レコード間検査装置30
は、専用のレコード構成情報レジスタ135を含むほか
は、実施の形態1のレコード間検査部13と同様の構成
でよい。レコード構成情報レジスタ135は、実施の形
態1のレコード構成情報レジスタ11と同じものを用い
ることができる。
【0030】図6の構成において、ソート装置20は、
与えられるレコード群をソートしてレコード間検査装置
30に入力する。そして、レコード間検査装置30は、
実施の形態1のレコード間検査部13と同様の手順で処
理を行う。
【0031】この実施の形態によれば、従来既存のソー
ト装置を利用することにより、ハードウエア開発に要す
る時間及びコストを削減することができる。
【0032】実施の形態3.次に、この発明の実施の形
態3について、図7を参照して説明する。図7におい
て、図1の構成要素と同様の構成要素には、同一の符号
を付して詳細な説明を省略する。
【0033】前述の実施の形態1では、レコード間の関
係の検査において、比較対象をフィールド単位で指定す
ることができた。実施の形態3は、この実施の形態1の
機能を限定して装置構成を簡略化したものである。
【0034】この実施の形態3のソート処理装置1aで
は、レコード間の関係としてレコード全体の一致不一致
のみを検査する。すなわち、レコード間検査部13aの
比較回路132aは、レコードレジスタ130及び13
1に保持された2つのレコードについて、レコード全体
についての一致不一致のみを調べ、この結果に基づきレ
コードの出力等を制御する。したがって、レコード間検
査部13aには比較条件設定レジスタを設ける必要がな
い。また、レコード同士の比較において各フィールドの
位置などを考慮しなくてよいので、比較回路132a
は、レコード構成情報レジスタ11の設定を参照しなく
てよい。
【0035】したがって、この実施の形態3によれば、
実施の形態1よりも回路構成を簡素化することができ
る。
【0036】実施の形態4.周知のように、マージソー
ト処理では、複数のソート済みのレコード列を入力とす
る。そして、各レコード列の先頭のレコード同士を比較
してソート順が最も先となるものを選択して出力し、出
力したレコードを元のレコード列の先頭から取り除き、
再び各レコード列の先頭レコードを対象として上述の比
較及び選択出力の処理を繰り返す。すべての入力レコー
ド列のレコードがなくなるまで以上の処理を繰り返すこ
とにより、複数の入力レコード列がマージされ、1つの
ソート済みレコード列が得られる。この実施の形態4
は、このようなマージソート処理を行うソート処理装置
にこの発明を適用した場合の例である。
【0037】図8は、この実施の形態4のソート処理装
置40の構成図である。図8のソート処理装置40は、
2系統のソート済みレコード列をマージソートする機能
を有する。なお、図8において、図1の構成要素と同様
の構成要素には同一の符号を付して詳細な説明を省略す
る。
【0038】ソート処理装置40において、レコード構
成情報レジスタ11は、実施の形態1のレコード構成情
報レジスタ11と同じものであり、初期設定時にデータ
ベース管理システムにより図3に示したようなレコード
構成情報が設定される。条件設定レジスタ138は、実
施の形態1におけるソート条件設定レジスタ121と比
較条件設定レジスタ133の機能を併せ持つものであ
り、ソートキーとなるフィールドの指定、ソート順、レ
コード間検査における比較対象フィールドの指定、各比
較対象フィールドについての比較条件、及び比較条件を
満足した場合の処理内容が設定される。この条件設定レ
ジスタ138の内容は、初期設定時にデータベース管理
システムなどにより設定される。
【0039】レコード構成情報レジスタ11及び条件設
定レジスタ138への初期設定が完了すると、データベ
ース管理システムからソート処理装置40に対して処理
対象となる2系統のソート済みレコード列が入力され
る。これら2系統のレコード列は、それぞれ入力レジス
タ10a及び10bにいったん保持される。比較回路1
36は、これら入力レジスタ10a及び10bからそれ
ぞれレコードを受け取り処理を行う。
【0040】この実施の形態の比較回路136は、機能
的には実施の形態1のソートセル120及び比較回路1
32の両方の役割を果たす。すなわち、比較回路136
は、入力されてくるレコードをソートする機能と、ソー
トにより得られたソート順に並んだレコード同士を比較
する機能を有する。この機能を実現するため、比較回路
136は、2つの比較処理を行う。
【0041】まず第1の比較処理は、入力レジスタ10
a及び10bから受け取ったレコード同士を比較する処
理である。比較回路136は、条件設定レジスタ138
におけるソートキー及びソート順の設定、及びレコード
構成情報レジスタ11を参照して、それら2つのレコー
ドのソートキー同士を比較し、ソート順が先となるレコ
ードを選択する。選択されたレコードは、出力レジスタ
134及びレコードレジスタ137に入力される。選択
されなかったレコードは、比較回路136内に保持さ
れ、次回の処理において、選択されたレコードと同じ入
力レジスタから入力される次のレコードと比較される。
すなわち、この第1の比較処理は、マージソート処理そ
のものである。したがって、この第1の比較処理によれ
ば、レコードがソート順に従って順次選択され、出力レ
ジスタ134及びレコードレジスタ137には、次々と
ソート順に従ってレコードが入力されていく。出力レジ
スタ134は、実施の形態1の場合と同様、入力される
レコードをいったん保持し、比較回路136にて後述の
第2の比較処理に基づき生成される出力制御信号に従っ
て外部に出力又は廃棄する。レコードレジスタ137
は、比較回路136から入力されたレコードを保持し、
所定時間だけ遅延させて比較回路136に入力する。
【0042】比較回路136が行う第2の比較処理は、
前記第1の比較処理にて選択されたレコードと、レコー
ドレジスタ137から入力されたレコードとを比較する
処理である。レコードレジスタ137から供給されるレ
コードは前回選択されたレコードなので、この第2の比
較処理は、前回選択されたレコードと今回選択されたレ
コードとを比較する処理といえる。前述のように第1の
比較処理ではレコードはソート順に従って選択されるの
で、この第2の比較処理では、ソート結果における隣り
合うレコード同士を順次比較することとなる。比較回路
136は、条件設定レジスタ138に設定された比較対
象フィールドや比較条件などの情報を参照してこの第2
の比較処理を行い、この比較処理の結果に基づいて出力
制御信号を生成する。この出力制御信号の生成の手順
は、実施の形態1と同様である。なお、比較回路136
は、この第2の比較処理の結果、すなわち比較条件を満
足したか否かを示す信号を、比較結果としてデータベー
ス管理システムなどに供給する。
【0043】出力レジスタ134は、比較回路136の
第1の比較処理で選択されたレコードを保持し、実施の
形態1と同様に、比較回路136からの出力制御信号に
よってこの保持したレコードの出力又は廃棄する。この
ような処理により、出力レジスタ134からは、予め設
定された条件を満足するレコードが出力される。
【0044】以上説明したように、この実施の形態4に
よれば、マージソート処理を行うソート処理装置におい
て、複数のレコード間でのフィールドの値の一致、不一
致等を検査して、その検査の結果を出力したり、あるい
はその検査の結果に応じて所望のレコードのみを抽出し
て出力したりすることができる。この実施の形態4に係
るソート処理装置は、従来のマージソート処理装置に対
して、レコードレジスタ137の追加や比較回路部分の
回路追加(すなわち第2の比較処理機能を行う回路の追
加)などのわずかなハードウエアの追加を行うだけで実
現することができる。
【0045】なお、例えば前掲の特開昭61−1632
7号公報や特開昭61−16328号公報に示されるよ
うなパイプラインマージソート方式のソート装置におい
て、マージソートセルの一つとしてこの実施の形態4の
ソート処理装置を用いることもできる。この場合、この
実施の形態4の装置は、パイプラインの最終段のマージ
ソートセルとして用いることが好適である。
【0046】実施の形態5.前述の実施の形態1では、
レコード間検査部13のレコードレジスタ130及び1
31はそれぞれ1レコード全体を保持し、比較回路13
2はそれらレコードレジスタ130及び131からレコ
ード全体を読み込んで比較していた。このため、例えば
レコード長が512バイトのレコードを処理する場合に
は、比較回路132は、512バイトのデータの比較を
1度に行う必要があった。このように実施の形態1の構
成では、大きなサイズのレコードを処理可能にしようと
すると、比較回路132の回路規模が大きくなる。この
実施の形態5は、このような比較回路の大規模化を抑制
することを目的とする。
【0047】図9を参照してこの発明の実施の形態5に
ついて説明する。図9において、図1の構成要素と同様
の構成要素には同一の符号を付してその説明を省略す
る。
【0048】図9と図1の比較からわかるように、この
実施の形態5のソート処理装置1bは、ソートセル12
0から出力されるレコードを保持する手段として、レコ
ードレジスタの代わりにメモリ139を有している。こ
のメモリ139は、ソートセル120から出力されたレ
コードを2つ保持し、保持した各レコードの先頭からそ
れぞれ所定サイズずつデータを取り出し、比較回路13
2bに供給する機能を有する。比較回路132bは、メ
モリ139から受け取ったそれら所定サイズのデータ同
士を比較する。例えば、メモリ139が各レコードから
データを1バイトずつ取り出す構成の場合、比較回路1
32bは1バイトのデータ同士を比較する。なお、この
比較処理においては、比較するデータの制御は比較回路
132bが行う。すなわち、比較回路132bは、レコ
ード構成情報レジスタ11及び比較条件設定レジスタ1
33の設定内容を参照し、1回の比較が終わるごとにメ
モリ139に対して次のデータの出力を指示する。この
ようにしてメモリ139に保持された2つのレコードに
おける比較対象フィールドについての比較がすべて完了
すると、比較回路132bは、メモリ139に指示を送
って、保持した2つのレコードのうちのソート順が先の
方を出力レジスタ134に出力させ、ソートセル120
から次のレコードを取り込ませる。そして、比較回路1
32bは、実施の形態1と同様、比較結果を外部のデー
タベース管理システムなどに出力すると共に、この比較
結果に基づき出力制御信号を生成して出力レジスタ13
4に供給する。出力レジスタ134は、この出力制御信
号に応じて、保持したレコードを外部に出力するか又は
廃棄する。
【0049】このように、この実施の形態5によれば、
比較回路132bは、予め定められた所定サイズのデー
タ同士を比較できればよいので、比較対象のレコードの
サイズが大きくなるような場合でも、回路規模を大きく
する必要はない。逆に言えば、この実施の形態では、比
較回路132bは、メモリ139の容量が許す限りにお
いて、いくらでも大きなレコードを比較することができ
る。
【0050】なお、図9では、入力されるレコード列が
2系統である場合の構成を示したが、この実施の形態5
の構成は、入力レコード列が3系統以上の場合にも適用
することができる。
【0051】以上、この発明の好適な実施の形態につい
て説明したが、これら実施の形態はあくまでこの発明の
利用例にすぎず、この発明はそれら実施の形態のみに限
定されるものではない。例えば、比較対象とするフィー
ルド数、比較条件の内容や数、比較条件が成立した場合
の処理内容などは、前述の例に限られるものではない。
また、レコード構成情報レジスタやソート条件設定レジ
スタ、比較条件設定レジスタの設定内容や設定方法など
は、個々のインプリメントの事情にしたがい任意に構成
することができる。
【0052】
【発明の効果】以上説明したように、第1の発明によれ
ば、ソート結果のレコードを順次比較していくことによ
り、レコード同士の一致不一致などの関係の検査を高速
に実行し、その結果を出力することができる。
【0053】また、第2の発明によれば、レコード同士
の一致不一致などの関係の検査を高速に実行し、この検
査の結果に従って予め設定された条件に適合するレコー
ドのみを抽出して出力することができる。
【0054】また、第3の発明によれば、ソートされた
レコードを出力レジスタにいったん保持し、このレコー
ドの出力又は廃棄を比較回路からの出力制御信号によっ
て制御することにより、予め設定された条件に適合する
レコードのみを抽出して出力することができる。
【0055】また、第4の発明では、レコード構成情報
レジスタを設けたことにより、ソート処理におけるソー
トキーやレコード間検査における比較対象をフィールド
単位で指定することが可能となる。
【0056】また、第5の発明によれば、ソートキーと
なるフィールドと比較対象となるフィールドを独立に設
定可能としたことにより、処理内容をより柔軟に設定す
ることができ、複雑な処理を指定することが可能とな
る。
【図面の簡単な説明】
【図1】 この発明の実施の形態1に係るソート処理装
置の構成を示す図である。
【図2】 レコードの構成の一例を示す図である。
【図3】 レコード構成情報の内容の一例を示す図であ
る。
【図4】 比較条件設定レジスタの設定内容の一例を示
す図である。
【図5】 レコード構成の別の一例を示す図である。
【図6】 この発明の実施の形態2に係るソート処理装
置の構成を示す図である。
【図7】 この発明の実施の形態3に係るソート処理装
置の構成を示す図である。
【図8】 この発明の実施の形態4に係るソート処理装
置の構成を示す図である。
【図9】 この発明の実施の形態5に係るソート処理装
置の構成を示す図である。
【図10】 データベース検索処理の一例を示す図であ
る。
【符号の説明】
1 ソート処理装置、10 入力レジスタ、11 レコ
ード構成情報レジスタ、12 ソート処理部、13 レ
コード間検査部、120 ソートセル、121ソート条
件設定レジスタ、130,131 レコードレジスタ、
132 比較回路、133 比較条件設定レジスタ、1
34 出力レジスタ。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 入力されたレコード群をソートし、ソー
    トされたレコード群をソート順に従って1レコードずつ
    出力するソート処理部と、 前記ソート処理部から順に出力された各レコードを、そ
    れぞれ当該レコードの次に出力されたレコードと順次比
    較し、その比較結果を出力するレコード間検査部と、 を有することを特徴とするソート処理装置。
  2. 【請求項2】 入力されたレコード群をソートし、ソー
    トされたレコード群をソート順に従って1レコードずつ
    出力するソート処理部と、 前記ソート処理部から順に出力された各レコードを、そ
    れぞれ当該レコードの次に出力されたレコードと順次比
    較し、その比較結果に基づき当該レコードの外部への出
    力を制御するレコード間検査部と、 を有することを特徴とするソート処理装置。
  3. 【請求項3】 前記レコード間検査部は、 前記ソート処理部から順次出力された連続する2つのレ
    コードを順次比較し、その比較結果に応じてレコードの
    出力を制御する出力制御信号を出力する比較回路と、 前記ソート処理部から出力されたレコードを保持し、保
    持したレコードを前記出力制御信号に応じて出力又は廃
    棄する出力レジスタと、 を有することを特徴とする請求項2記載のソート処理装
    置。
  4. 【請求項4】 前記レコード群の各フィールドの位置、
    長さ及びデータ型を含むレコード構成情報を記憶するレ
    コード構成情報レジスタを設け、 前記ソート処理部及び前記レコード間検査部は、前記レ
    コード構成情報レジスタの情報を参照してフィールド単
    位でソート又は比較を行うことを特徴とする請求項1か
    ら3のいずれかに記載のソート処理装置。
  5. 【請求項5】 前記ソート処理部は、レコード群の各フ
    ィールドのうちソートキーとして用いるフィールドの指
    定を含むソート条件を記憶するソート条件設定レジスタ
    を有し、 前記レコード間検査部は、比較対象とするフィールドの
    指定を含む比較処理の処理条件を記憶する比較条件設定
    レジスタを有し、 ソートキーとなるフィールドと比較対象となるフィール
    ドとを独立に設定可能としたことを特徴とする請求項4
    記載のソート処理装置。
JP10643497A 1997-04-23 1997-04-23 ソート処理装置 Pending JPH10301758A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10643497A JPH10301758A (ja) 1997-04-23 1997-04-23 ソート処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10643497A JPH10301758A (ja) 1997-04-23 1997-04-23 ソート処理装置

Publications (1)

Publication Number Publication Date
JPH10301758A true JPH10301758A (ja) 1998-11-13

Family

ID=14433554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10643497A Pending JPH10301758A (ja) 1997-04-23 1997-04-23 ソート処理装置

Country Status (1)

Country Link
JP (1) JPH10301758A (ja)

Similar Documents

Publication Publication Date Title
US5060143A (en) System for string searching including parallel comparison of candidate data block-by-block
US4514826A (en) Relational algebra engine
US4476525A (en) Pipeline-controlled data processing system capable of performing a plurality of instructions simultaneously
JPS5846742B2 (ja) 対話式デ−タ検索装置
US5659733A (en) Sort processing method and apparatus for sorting data blocks using work buffer merge data records while sequentially transferring data records from work buffers
JPH10301758A (ja) ソート処理装置
JP2880199B2 (ja) 記号列検索方法および検索装置
JP3070093B2 (ja) レコード処理装置
JP2519245B2 (ja) 情報検索装置
JPH04279973A (ja) 文字列比較方式
JPS60164842A (ja) 命令先取り装置
JPH01173230A (ja) ソート処理装置
JPH06162083A (ja) 文字列検索装置
JP2586155B2 (ja) 論理シミュレータ
JP2735255B2 (ja) ハツシング処理方法
JPS61278933A (ja) デ−タのソ−ト方式
JPH04315260A (ja) 文字列照合方式
JPH0546666A (ja) 情報検索装置
JPH03147036A (ja) 可変長データ処理装置
JPH04278664A (ja) 住所解析処理装置
JPH01133134A (ja) キー値重複チェック方式
JPH08235044A (ja) ジャーナル検索方式
JPS63257030A (ja) 文字列検索回路
JPH0668147A (ja) 検査テーブル検索方式
JPH0371262A (ja) データ処理装置