JPH0291725A - 併合処理方式 - Google Patents

併合処理方式

Info

Publication number
JPH0291725A
JPH0291725A JP24522088A JP24522088A JPH0291725A JP H0291725 A JPH0291725 A JP H0291725A JP 24522088 A JP24522088 A JP 24522088A JP 24522088 A JP24522088 A JP 24522088A JP H0291725 A JPH0291725 A JP H0291725A
Authority
JP
Japan
Prior art keywords
block
address
string
input
blocks
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
JP24522088A
Other languages
English (en)
Inventor
Tadayoshi Ideshita
井手下 忠良
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP24522088A priority Critical patent/JPH0291725A/ja
Publication of JPH0291725A publication Critical patent/JPH0291725A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 【産業上の利用分野〕 本発明は電子計算機によるデータの分類(ソート)処理
において頻繁に行われる併合くマージ)処理の方式に関
するものである。
〔従来の技術〕
周知のように、分類処理とは複数のデータを所定のキー
値の順序に並べ替える処理を言い、取り扱うデータが多
数である場合には、対象とするデータの全てを電子計算
機の内部記憶装置上の作業領域に同時に確保できないた
め、全データを同時処理可能な所定の個数以下のいくつ
かのグループに分け、それぞれのグループの中でそれぞ
れ並べ替えを行ってストリングと呼ばれるデータレコー
ドの列を作成し、作成したストリングをいったん外部記
憶装置上に格納しておき、その後、複数のストリングに
対して併合処理を行ってストリングの数を減らして行き
、最終的に1つのデータレコードの列とする方式を採っ
ている。
第3図は一般的な分類処理のフローチャートを示したも
のであり、大きく分けて入カフニーズ100.併合フェ
ーズ200.出力フェーズ300から構成されている。
すなわち、入力フェーズ100では、分類の対象となる
個々のデータが格納された入力ファイルより所定数のデ
ータを読み出し、電子計算機の内部記憶装置上の作業領
域内で分類キーによりデータレコードを比較しながらス
トリングを作成し、このストリングを外部記憶装置上の
ソートワークファイルに出力する。なお、外部記憶装置
としては一般に磁気ディスク装置が使用される。また、
入出力の単位はブロックであり、ストリングは通常複数
個のブロックから構成される。第4図はストリングを形
成するブロックの論理的構成を示したものであり、同一
のストリングに属するブロックBは前ブロツクアドレス
と次ブロツクアドレスとを含むポインタPによって互い
に論理的にリンクされている。なお、各ストリングの先
頭アドレスは、別に設けられたストリングインデックス
によって管理されている。
次いで、併合フェーズ200では、ストリングインデッ
クスおよびポインタをもとに外部記憶装置上に格納され
た複数のストリングのブロックを内部記憶装置のバッフ
ァエリアに読み込み、各ブロックのデータレコードを先
頭から分類キーに従つて併合を行い、新たに長いストリ
ングを作成し、再度外部記憶装置上に書き戻しながら、
ストリング数を減らして行く、すなわち、併合されて新
規に作成されるストリングのブロックは、併合のために
入力されたストリングのブロック(入力された時点で空
きブロックとみなせる。)に書き戻される。なお、新規
に作成されたストリングのブロックもポインタで論理的
にリンクされている。
なお、内部記憶装置上で一度に併合できるストリング数
のことをマージオーダ(Mで表す、)と呼び、このマー
ジオーダは内部記憶装置に格納できるソートブロックサ
イズの個数により決定される。しかして、入力フェーズ
100が終了した段階でストリングがM零以下である場
合にはストリングを減らす必要がないため、ステップS
1から併合フェーズ200をスキップして直接に出カフ
ニーズ300に移行する。同様に、併合フェーズ200
の適用によってストリングがM零以下となった場合もス
テップS2から出力フェーズ300に移行することにな
る。
出力フェーズ300は最終的な併合処理であり、ストリ
ングインデックスおよびポインタをもとに外部記憶装置
上に格納された全てのストリングのそれぞれの先頭から
ブロックを内部記憶装置のバッファエリアに読み込み、
各ブロックのデータレコードを先頭から分類キーに従り
て併合を行い、その結果を出力データとして出力する。
〔発明が解決しようとする課題〕
ところで、上述の併合処理においては外部記憶装置との
入出力動作が頻繁に行われることから、高速な処理を行
わせるには外部記憶装置の入出力時間の短縮が不可欠で
ある。特に、併合フェーズで新たに作成されたストリン
グのブロックは外部記憶装置に書き戻されるが、従来は
空きブロックを任意に選んで書き込みを行っていたため
、磁気ディスク装置等の外部記憶装置のシーク動作が頻
繁に発生し、ディスクのヘッド移動に要する時間のため
高速化が図れないという欠点があった。
本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、ストリングのフ゛ロックの書き戻し
の際のシーク動作をなるべく抑え、処理時間を短縮する
ことのできる併合処理方式を提供することにある。
〔課題を解決するための手段〕
本発明は上記の目的を達成するため、生成されたストリ
ングを記憶するストリング記憶手段と、このストリング
記憶手段からストリングを構成するブロックを複数読み
出すブロック入力手段と、入力されたブロックの併合を
行うストリング併合手段と、 併合されたブロックを前記ストリング記憶手段の空きブ
ロックへ書き込むブロック出力手段と、前記ブロック入
力手段が入力したブロックのアドレスを空きブロックの
アドレスとして管理するブロックアドレススタック手段
と、 このブロックアドレススタック手段をサーチして前記ブ
ロック出力手段の出力先のアドレスを書き戻し時間が最
短となるものに設定する最適アドレス選択手段とを備え
るようにしている。
〔作用〕
本発明の併合処理方式にあっては、生成されたストリン
グを記憶しであるストリング記憶手段からストリングを
構成するブロックをブロック入力手段が複数読み出し、
ス) IJソング合手段が入力されたブロックの併合を
行い、ブロック出力手段が併合されたブロックを前記ス
トリング記憶手段の空きブロックへ書き込み、前記ブロ
ック入力手段が入力したブロックのアドレスを空きブロ
ックのアドレスとして管理するプロ・/クアドレススタ
ック手段を最適アドレス選択手段がサーチして、前記ブ
ロック出力手段の出力先のアドレスを書きyし時間が最
短となるものに設定する。
〔実施例〕
以下、本発明の実施例につき図面を参照して説明する。
第1図は本発明の併合処理方式の一実施例を示す構成図
であり、第3図において既に説明した併合フェーズ20
0における処理を行う部分である。
第1図において、本実施例は、ストリング記憶手段1と
、ブロック入力手段2と、ストリング併合手段3と、ブ
ロック出力手段4と、ブロックアドレススタ7り手段5
と、最適アドレス選択手段6とから構成されている。
ストリング記憶手段lに格納されているストリングは、
以前の大カフニーズにおいて入力ファイルからデータを
入力し内部記憶装置上で並べ替えて作成されている。
併合フェーズにおけるマージオーダをMとすると、ブロ
ック入力手段2はストリング記憶手段lからストリング
インデックスおよびポインタをもとにM本のストリング
を先頭のブロックより順次人力し、ストリング併合手段
3に渡す。このとき同時に入力したブロックのストリン
グ記憶手段1上のアドレスを最適アドレス選択手段6を
介してブロックアドレススタック手段5に通知する。ブ
ロックアドレススタック手段5はそのアドレスをストリ
ング記憶手段1の空きブロックとして管理する。
ストリング併合手段3は内部記憶装置上に用意したバッ
ファエリアにブロックを移送し、分類キーに従ってブロ
ック上のデータレコードを比較して併合を行う。併合さ
れたデータは新たなストリングを形成して行き、このス
トリングのブロックはブロック出力手段4によって再び
ストリング記憶手段1に書き戻される。
このとき書き戻すアドレスはブロックアドレススタック
手段5中にスタックされている空きブロック中から最適
アドレス選択手段6により選ばれる。最適アドレス選択
手段6は、この選択基準として、ストリング記憶手段1
に書き戻す時間が最短になるように設定されており、よ
って、外部記憶装置が磁気ディスク装置である場合には
、ヘッドの移動が最も少なくて済むブロックに書き込み
が行われ、より高速に次の処理に移行できるものである
第2図は第1図の実施例をより具体化した構成図である
しかして、ストリング記憶手段1のソートワークファイ
ルlaにはストリングST1.Sr1゜・・・、STn
、・・・が格納されており、ブロック入力手段2はスト
リングインデックス(図示せず)をもとに必要なストリ
ングSTiのブロックを入力してストリング併合手段3
の入力バッファ3aに移送すると共に、入力したブロッ
クのアドレスを最適アドレス選択手段6の現ヘッドアド
レス6bに格納し、バイナリ−サーチ機構6aに通知す
る。
バイナリ−サーチ機構6aはブロックアドレススタック
手段5のディスクアドレススタック5aにスタックされ
ている取入力のブロックのアドレスをバイナリ−サーチ
することによりディスクアドレスの順序をスタック上で
保つようにして新たな空きブロックのアドレスを格納す
る。
ストリング併合手段3はバッファ3b上の各ブロックの
先頭から分類キーにより比較を行いながら複数のストリ
ングのブロックのデータレコードを併合して出カバソフ
ァ3c上に新規ストリングのブロックを作成する。そし
て、出力バッファ3Cがいっばいになるとブロック出力
手段4によってストリング記憶手段・1のソートワーク
ファイル1aに書き戻される。
このときのアドレスは、最適アドレス選択手段6のバイ
ナリ−サーチ機構63により、現ヘッドアドレス6bに
一番近いディスクアドレスの空きブロックがブロックア
ドレススタック手段5のディスクアドレススタック5a
中から選択される。
しかして、書き戻しのために選ばれるブロックのアドレ
スはストリング記憶手段1のソートワークファイルla
中の現在のヘッド位置に最も近いアドレスとなるので、
書き戻しのためのヘッドの移動、すなわちシーク動作を
最小にすることが可能となる。
〔発明の効果〕
以上説明したように、本発明の併合処理方式にあっては
、入力したストリングのブロックを併合して外部記憶装
置に書き戻す際に、シーク動作の最も少なくて済む空き
ブロックを選択するようにしたので、頻繁に行われる入
出力動作に要する時間が短縮化でき、処理の高速化が図
れる効果がある。
【図面の簡単な説明】
第1図は本発明の併合処理方式の一実施例の構成図、 第2図は第1図に示した実施例のより詳細な構成図、 第3図は分類処理のフローチャートおよび、第4図はス
トリングを形成するブロックの論理的構成図である。 図において、 1・・・・・・ストリング記憶手段 1a・・・ソートワークファイル 2・・・・・・ブロック入力手段 3・・・・・・ストリング併合手段 3a・・・入カバソファ 3b・・・バッファ 3c・・・出カバソファ 4・・・・・・ブロック出力手段 ・・・・・・ブロックアドレススタック手段a・・・デ
ィスクアドレススタック ・・・・・・最適アドレス選択手段 a・・・バイナリ−サーチ機構 b・・・現ヘッドアドレス

Claims (1)

  1. 【特許請求の範囲】 生成されたストリングを記憶するストリング記憶手段と
    、 このストリング記憶手段からストリングを構成するブロ
    ックを複数読み出すブロック入力手段と、入力されたブ
    ロックの併合を行うストリング併合手段と、 併合されたブロックを前記ストリング記憶手段の空きブ
    ロックへ書き込むブロック出力手段と、前記ブロック入
    力手段が入力したブロックのアドレスを空きブロックの
    アドレスとして管理するブロックアドレススタック手段
    と、 このブロックアドレススタック手段をサーチして前記ブ
    ロック出力手段の出力先のアドレスを書き戻し時間が最
    短となるものに設定する最適アドレス選択手段とを備え
    たことを特徴とする併合処理方式。
JP24522088A 1988-09-29 1988-09-29 併合処理方式 Pending JPH0291725A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24522088A JPH0291725A (ja) 1988-09-29 1988-09-29 併合処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24522088A JPH0291725A (ja) 1988-09-29 1988-09-29 併合処理方式

Publications (1)

Publication Number Publication Date
JPH0291725A true JPH0291725A (ja) 1990-03-30

Family

ID=17130425

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24522088A Pending JPH0291725A (ja) 1988-09-29 1988-09-29 併合処理方式

Country Status (1)

Country Link
JP (1) JPH0291725A (ja)

Similar Documents

Publication Publication Date Title
US5943683A (en) Data processing method using record division storing scheme and apparatus therefor
US5117495A (en) Method of sorting data records
JPS6254329A (ja) フアイル装置へのデ−タの登録方法および検索方法
JPH02178730A (ja) 分割法を用いた内部ソート方式
US20020065793A1 (en) Sorting system and method executed by plural computers for sorting and distributing data to selected output nodes
JP3251138B2 (ja) ハッシュ方式
JP3515810B2 (ja) ソート処理方法および装置
JPH0291725A (ja) 併合処理方式
JP2923952B2 (ja) マージ処理方法
JP2943693B2 (ja) ソート作業ファイルスペース管理方式
JPH0239225A (ja) ファイルシステム
JPH0267648A (ja) ツリー構造データベースのレコード追加方式
JP2669241B2 (ja) マイグレーション処理方式
JPS62287350A (ja) インデツクス一括更新方式
JPH11306183A (ja) データベース検索システム
JP3293544B2 (ja) 補助記憶装置を用いたソート方式
JPH043234A (ja) 固定長型レコードのファイリング制御方法
JPH04250568A (ja) レコード検索装置
JPH01147720A (ja) 分類処理方式
JPH0199125A (ja) リンク分類方式
JPS63253431A (ja) インバ−テツド構造のデ−タベ−ス検索方式
JPH04178726A (ja) 大容量データ分類処理方式
JPS61275934A (ja) デイスクソ−トシステム
JPH0652231A (ja) リレーショナルデータベース運用機構
JPH0833900B2 (ja) 内容検索装置