JP2567903B2 - データ転送方法 - Google Patents

データ転送方法

Info

Publication number
JP2567903B2
JP2567903B2 JP63072072A JP7207288A JP2567903B2 JP 2567903 B2 JP2567903 B2 JP 2567903B2 JP 63072072 A JP63072072 A JP 63072072A JP 7207288 A JP7207288 A JP 7207288A JP 2567903 B2 JP2567903 B2 JP 2567903B2
Authority
JP
Japan
Prior art keywords
storage device
search
request
external storage
access request
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.)
Expired - Lifetime
Application number
JP63072072A
Other languages
English (en)
Other versions
JPH0221323A (ja
Inventor
高明 関
弘行 北嶋
匡 大曽根
弘文 中川
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63072072A priority Critical patent/JP2567903B2/ja
Publication of JPH0221323A publication Critical patent/JPH0221323A/ja
Priority to US07/758,231 priority patent/US5239644A/en
Application granted granted Critical
Publication of JP2567903B2 publication Critical patent/JP2567903B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、デイスクキヤツシユ付制御装置を接続した
計算機システム、もしくは、前記制御装置と専用処理装
置を接続した検索処理システムにおいて、外部記憶装置
上のレコードをアクセスするためのデータ転送方法に係
り、特に、アクセス対象レコード(群)の先読み(CPU
側からの該レコードアクセス要求前にキヤツシユメモリ
上に該レコードを外部記憶装置から入力する方法)処理
におけるレコードアクセスに使用して好適なデータ転送
方法に関する。
〔従来の技術〕
従来のデイスクキヤツシユ付制御装置を用いたアクセ
ス対象レコード(群)の先読み処理データでは、「日経
エレクトロニクス」3.11(1985)(第159頁から第232
頁、「システム性向上への効果が実証されたデイスク・
キヤツシユと半導体デイスク」の特に第170頁において
論じられているように、CPUから、あるフアイルに対す
るアクセス要求が出されると、目的データレコードがデ
イスクキヤツシユ中にあるか調べ、キヤツシユがヒツト
すればキヤツシユから目的のデータレコードを主記憶装
置へ送り、キヤツシユミスのときは現在アクセス中の
(目的の)レコードブロツクを含む数ブロツク先(通常
は1トラツク長分)までシーケンシヤルに磁気デイスク
装置からキヤツシユメモリに読み込む(一部先読みす
る)ものとなつている。
〔発明が解決しようとする課題〕
上記従来技術は、デイスクキヤツシユ付き制御装置に
レコードの先読み処理として、アクセス対象のレコード
から数レコード分(もしくは、数トラツク分)をシーケ
ンシヤルに入力する処理しかできなかつた。
一般にデータ処理装置では、磁気デイスク装置等の外
部記憶装置による処理時間が最も長く、外部記憶装置を
遊ばせることなく、フル運転をすることは、システム全
体のスループツトを向上する上で、望ましいことであ
る。しかし、上述の数レコードもしくは数トラツク分の
一定量のデータの先読み処理をシーケンシヤルでアクセ
ス要求の都度行なう従来技術では、種々のデータ長のア
クセス要求に対し、必要かつ十分なデータのみを洩れな
く先読みしておくことはできず、また、各アクセス要求
の間に、外部記憶装置に待ち時間(遊び)が生じたりし
て、システムのスループツトを高めることはできないと
いう問題があつた。
一方、第3図に示すように、インデクス等により、検
索範囲が予め分かるインデクスアクセス式の計算機シス
テム等がある。このシステムでは、第3図のように、1
つ1つのインデクスアクセス要求が出される毎に、イン
デクスが指示する該当ブロツクアドレスを得て、該当ブ
ロツクをアクセスしているため、インデクスが指示する
ブロツクの先読みを行なうことはできず、いちいち外部
記憶装置上のブロツク(R′〜Rをアクセスする
必要があつた。
従つて、本発明の目的は、上記従来技術の問題点を解
消し、バツフア装置(デイスクキヤツシユ付き制御装
置)を持つデータ転送システムにおいて、必要かつ十分
な所定量のデータを洩れなく先読みし、次々のアクセス
要求の間に外部記憶装置に遊び(待ち時間)が生じるこ
となく、CPU処理中にも外部記憶装置への先読み処理を
並行して行なうことができるようにすることによつて、
応答時間を短縮し、CPUと外部記憶装置を含めたシステ
ム全体の稼動率を向上することにある。
〔課題を解決するための手段〕
上記目的を達成するため、本発明のデータ転送方法
は、主記憶装置と外部記憶装置の間にバツフア(キヤツ
シユメモリ)付きの制御装置を設け、任意のアクセス要
求Riに対する主記憶装置へのデータ転送完了迄に、次の
アクセス要求Ri+1で検索すべき外部記憶装置上の範囲D
i+1(又はその一部D′i+1)を指定して先読み要求Pi+1
を(上位装置から制御装置に)発行する。前記制御装置
は、このRiとPi+1を受け、Riに対する外部記憶装置から
のデータ転送後次のアクセス要求Ri+1が発行される迄の
間に、Pi+1に基づいて外部記憶装置上の範囲Di+1(又は
その一部D′i+1)を検索し、検索したデータを前記バ
ツフア上に一時的に格納する。制御装置は、又は、次の
アクセス要求Ri+1が範囲Di+1を指定して発行されたと
き、前記バツフア上に格納されているデータ(Di+1又は
その一部D′i+1に相当)を主記憶装置に転送する。
更に詳しく述べると、前記先読み要求Pi+1で指定され
る範囲Di+1(又はD′i+1)は、相次ぐアクセス要求Ri
とRi+1の間隔や、1ブロツク(レコード)当りの平均処
理時間などを考慮して、外部記憶装置の待ち時間が可及
的に小さくなるようにブロツク単位で定められる。Ri
対するデータレコードの外部記憶装置からバツフア装置
又はCPU(主記憶装置)への転送が終つた後、CPU上で
は、Riに関するデータレコード処理が行なわれるが、こ
れと並行して、制御装置(デイスク制御装置等)は、先
読み要求Pi+1に対するレコード(群)の外部記憶装置か
らバツフアへの先読み処理を続行する。次いで、CPUか
らのアクセス要求Ri+1に対し、制御装置は、バツフア上
の該当するレコードを主記憶装置へ転送すればよい。R
i+1に対応する範囲Di+1全部が先読みされていない場合
(一部D′i+1のみ先読みした場合)は、残りの部分(D
i+1−D′i+1)についてだけ外部記憶装置から主記憶装
置へ転送する。
〔作用〕
上記構成に基づく作用を説明する。
バツフア(デイスクキヤツシユ)付き制御装置を接続
した計算機システム上で稼動する処理要求プログラム
は、検索すべきレコード範囲(レコード群)Diに対する
アクセス要求Riの他に、これに、引き続いて必要とする
レコード範囲(レコード群)Di+1のアクセス要求Ri+1
対応する先読み要求Pi+1も設定し、前記バツフア付き制
御装置へ転送する。この場合、範囲Di+1は、例えば、相
次ぐアクセス要求RiとRi+1の間隔や、1ブロツク当りの
平均処理時間を考慮して、外部記憶装置にできるだけ待
ち時間が生じないように定められる。バツフア付き制御
装置は、先読み要求対象のレコード(群)を、外部記憶
装置上からバツフア(キヤツシユメモリ)上に先読み入
力する。これに続いて、ホスト側の処理要求プログラム
は、アクセス要求Ri+1をバツフア付き制御装置へ発行す
る。バツフア付き制御装置は、Ri+1に対し、既に、バツ
フア(キヤツシユメモリ)上にある要求レコードは、そ
のまま主記憶装置へ転送し、バツフア(キヤツシユメモ
リ)上にないものは、外部記憶装置から主記憶装置へ転
送する。処理要求プログラムは、Ri+1のレコード(群)
を全て入力した後、同様に、次のアクセス要求i+2に対
応する先読み要求Pi+2を設定し、バツフア付き制御装置
へ発行する。以上の手順を該処理要求の最後のレコード
アクセス要求まで繰り返す。これによつて、該処理要求
についてみると、CPU処理中にも、外部記憶装置への先
読みアクセス処理を並行して行なえ、したがつて、外部
記憶装置に遊び時間がほとんど生じることなく、応答時
間の向上、ならびに、CPUと外部記憶装置を含めたシス
テム全体の稼動率の向上ができる。
〔実施例〕
以下、本実施例で使う用語の説明をした後、本発明の
一実施例を第1図により説明する。
検索処理:専用処理装置4が(デイスクキヤツシユ付き
制御装置5を経由して)データベース(フアイル61)の
ブロツクに対してデータベース演算データの内容に関す
る比較処理,算術処理,選択処理,部分切り出し処理,
合計処理等)を行なう処理を示す。
検索範囲:専用処理装置4が(デイスクキヤツシユ付き
制御装置5を経由して)データベースのブロツクに対し
データベース演算を行なう場合の演算対象のブロツクア
ドレス群。
先読み検索要求:CPU側から専用処理装置4に対して、ブ
ロツクの先読み要求と先読みしたブロツク群のデータベ
ース演算を行なうことを要求すること。
先読み要求:専用処理装置4から、デイスクキヤツシユ
付き制御装置5に、外部記憶装置6上にあるブロツク群
を入力し、キヤツシユメモリ上に蓄えておくことを要求
する。
アクセス要求:専用処理装置4から、デイスクキヤツシ
ユ付き制御装置5に対して、ブロツクの入力を要求する
こと。
アクセス範囲:専用処理装置4から、デイスクキヤツシ
ユ付き制御装置5に対して、アクセス(ブロツクの入
力)要求をする場合のアクセス対象ブロツクアドレス群
を示す。
次に、本発明の一実施例を第1図により説明する。1
はCPU(中央処理装置)、2は主記憶装置で、本発明が
実施するための検索処理要求プログラム21と、検索処理
要求プログラム21を実行するために必要な管理ブロツク
領域22、及び入出力バツフア領域23が確保されている。
管理ブロツク領域22は、検索条件、アクセス要求対応テ
ーブル(複数のカラムからなるローの集合)におけるア
クセス範囲情報、入力レコード(以下、本実施例ではレ
コードをブロツクと記す)の受信バツフアアドレス等を
含む検索処理要求情報が格納される検索処理要求管理ブ
ロツク221と、アクセス対象テーブルが、どの外部記憶
装置上のどこに存在するかという、デバイスアドレス、
および、物理的範囲アドレスを格納したテーブル管理ブ
ロツク222を含む。一方、入出力バツフア領域23には、
専用処理装置4からの検索結果を受信する、もしくは、
デイスクキヤツシユ付き制御装置5からのブロツクを受
信するための検索結果受信用バツフア231が存在する。
3は、CPU1及び、主記憶装置2と専用処理装置4とのデ
ータ転送を制御するチヤネルである。4は、検索処理要
求プログラム21からの(副)検索要求(複数回の検索要
求により、該テーブルの検索処理を行なう場合、CPU側
から発行する個々の検索要求を(副)検索要求と呼ぶ)
と、先読み検索要求(引き続き発行する(副)検索要求
対応の検索範囲を検索する要求)を受付け、データベー
ス等の情報(テーブル)を検索(データベース演算)処
理する専用処理装置である。専用処理装置4は、検索処
理要求プログラム21からの(副)検索要求を受付けて、
検索処理を行なう検索処理実行部41と、検索処理を行な
う場合に必要な情報を格納する記憶ブロツク領域42から
成る。6は、検索対象の情報(データベース61)を格納
した外部記憶装置である。5は、外部記憶装置上6の検
索対象の情報(データベース61)をアクセスし、キヤツ
シユメモリ上にアクセス対象ブロツクを格納、また、キ
ヤツシユメモリ上のブロツクを主記憶装置2側へ転送す
るという処理の他、専用処理装置4からのデータベース
61のアクセス要求の受付けと、検索結果をキヤツシユメ
モリ上へ格納する等の処理を行なう。第2図は、専用処
理装置における検索処理実行部41、記憶ブロツク領域42
の詳細を示したものである。検索処理実行部41は、ホス
ト計算機側の検索処理要求プログラム21から(副)検索
処理要求と先読み検索要求を受付け、受付けたこれらの
検索処理要求をもとに、検索処理対象のブロツク及び、
先読み検索対象のブロツクを当該専用処理装置4に入力
し、検索処理する機能を持つ。また、記憶ブロツク領域
42には(第2図参照)、ホスト計算機側の検索処理要求
プログラム21からの(副)検索処理要求及び、先読み検
索処理要求を格納する検索処理情報格納ブロツク421
と、当該専用処理装置4内で検索処理した結果を一時格
納する検索結果一時格納バツフア422をもつ。
デイスクキヤツシユ付き制御装置5は、外部記憶装置
6上のフアイルのブロツクをアクセスするデイレクタ51
と、ホスト計算機側または、専用処理装置4からのブロ
ツクアクセス要求情報を格納するアクセス処理要求受付
ブロツク52と、先読み等により入力した外部記憶装置6
上のフアイルのブロツクを格納し、及び、(専用処理装
置4内で検索処理した結果を一時格納する)検索結果一
時格納バツフア422からの検索結果を格納するキヤツシ
ユメモリ53から成る。
第4図は、本実施例において、インデクスをアクセス
して、データベース上のブロツクを検索処理する場合の
タイムチャートであり、CPU側の検索処理要求プログラ
ムと、チヤネル,デイスクキヤツシユ付き制御装置(専
用処理装置も含む)と外部記憶装置との間の制御の流れ
を表わす。
第3図は、本実施例と同じハード構成においてインデ
クスをアクセスして、データベース上のブロツクを検索
処理する場合(従来方式)の実施例のタイムチャートで
ある。この両者の比較は、後ほど述べる。
次に、上述のごとき構成による一実施例の動作を述べ
る。まず、第5図をもとに、ホスト計算機側の検索処理
要求プログラム21の処理手順を説明する。ホスト計算機
側のユーザプログラムは、検索処理要求プログラム21に
対して、該テーブルの検索(データベース演算等)処理
を行ない、検索結果を渡せという検索処理要求を発行す
る(10)。検索処理要求プログラム21は、まず、ユーザ
プログラムから検索要求として、検索対象テーブル名,
検索条件,検索結果受取エリアのアドレス等を受取り、
空きの検索処理要求管理ブロツク221に格納する。ま
た、当該検索処理要求に対する検索IDを割当て、同ブロ
ツク221に格納する。さらに、空きの検索結果受信用バ
ツフア231を確保する(20)。この後、検索対象テーブ
ル名あるいは、インデクスを用いることにより、i番目
の(副)検索要求対応のサブ検索範囲Diを設定するた
め、まず、テーブル管理ブロツク222をサーチし、当該
テーブルが存在する外部記憶装置6のデバイスアドレス
とエクステント情報(当該テーブルが存在する開始,終
了シリンダ、トラツク、ブロツク番号)を得(30)、そ
れを基に、確保した検索結果受信用バツフア231の全容
量を満たす検索対象のブロツク数を求め、それに対応す
るサブ検索範囲Diと、そのブロツク数分を超えて先読み
検索処理したい検索対象の範囲(検索対象のブロツクア
ドレス群)を求め(35,40)、それを先読み対象の検索
範囲Di+1(P)として作成し、当該検索ID対応の検索処
理要求管理ブロツク221に格納する。ここで、第i番目
の(CPU側からの)検索要求又は(専用処理装置7から
の)アクセス要求をRiで表わす、対応する検索範囲をDi
で表わし、それを越えた先読み対象の検索範囲D
i+1(P)に対応する先読み検索要求又は先読み動作をP
i+1で表わす。このときの先読み検索対象の範囲D
i+1(P)は、任意のアクセス要求Riが終了し、次のア
クセス要求Ri+1が発行されるまでに、Ri+1に対する先読
みPi+1(Pi+1に対する外部記憶装置6の位置ずけ及び装
置6から5へのPi+1による先読み範囲の転送)が完了し
てしまわないように必要かつ充分な量の先読み範囲D′
i+1(P)以上を設定する。これは、外部記憶装置6
に、可能な限り遊びがないようにするためである。この
ため、任意の(副)検索要求Riの検索結果をホスト側が
受け取つてから、次の(副)検索要求Ri+1を発行するま
での時間Tcと、専用処理装置4において、1ブロツクの
演算処理(1ブロツクのアクセス要求からデータベース
演算し、検索結果一時格納バツフア422に格納するま
で)に要する平均時間Tbを予測し、TcをTbで割つた商
(切り上げ)を求める。この値が、Tc内に処理できる先
読み検索対象のブロツク数である。この商を、引き続き
発行する(副)検索要求対応の先読み検索範囲D′i+1
(P)とする。これにより、任意の(副)検索要求Ri
検索結果をホスト側が受け取つてから、次の(副)検索
要求Ri+1を発行するまでの時間Tcの間も外部記憶装置上
から先読み要求Pi+1に基づく検索範囲D′i+1(P)に
対するデータが検索され、外部記憶装置6が有効に使わ
れる。又、引き続き発行する(副)検索要求Ri+1を専用
処理装置4が受取つた場合、デイスクキヤツシユ上に、
既に対応する検索範囲の検索結果を格納しているため、
要求のあつた検索結果がただちにホスト側へ転送できる
ことが可能となる。この先読み検索範囲設定の処理後、
検索処理要求プログラム21は、専用処理装置4に、検索
ID,検索条件,当該(副)検索要求対応の検索範囲Di
び、先読み検索要求対象の検索範囲D′i+1と、当該
(副)検索要求対応の検索結果受信用バツフア231のア
ドレス群を検索処理情報として転送し、当該テーブルの
検索範囲内のブロツクについて検索処理を要求する(5
0)。この後、検索処理要求プログラム21は、専用処理
装置4側から検索結果が転送されて該(副)検索処理要
求が終了したことを報告されるまで待つ(60)。
次に、専用処理装置4の概略処理フローを示す第6
図,第7図、及び、第8図を用いて、専用処理装置4が
(副)検索処理要求と先読み検索要求を受付けて、デイ
スクキヤツシユ付き制御装置5を用いて検索処理を行な
い、検索結果をホスト計算機側の主記憶装置2の検索結
果受信用バツフア231へ転送するまでの動作について説
明する。
専用処理装置4の検索処理実行部41は、受け取つた
(副)検索処理要求の検索処理情報における検索IDをも
とに、当該検索IDを格納した検索処理情報格納ブロツク
421があるかどうかチエツクし(200)、もしなければ、
空きの検索処理情報格納ブロツク421を確保し、当該検
索処理情報を格納する(210)。次に、検索処理実行部4
1は、当該(副)検索要求対象(検索範囲)Di及び、先
読み検索対象の検索範囲D′i+1(P)をデイスクキヤ
ツシユ付き制御装置5に渡し、これら検索範囲のブロツ
クについて、デイスク(外部記憶装置)6からキヤツシ
ユへの先読み処理と検索範囲の1ブロツクの入力を要求
する(220)。この後、デイスクキヤツシユ付き制御装
置5からの1ブロツクの入力の終了報告を受けるまで待
つ(230)。
一方、第9図は、デイスクキヤツシユ付き制御装置5
の概略処理フローである。デイスクキヤツシユ付き制御
装置5は、検索範囲Di及び先読み検索範囲D′
i+1(P)の入力要求を受付け、第9図(a),(b)
に示すごとく処理を行なう。デイレクタ51は、受付けた
当該検索範囲の入力要求において、まず、入力要求の1
ブロツクを専用処理装置4へ渡すため、ブロツク転送処
理モジユール(デイレクタ51内の処理プログラム)を起
動する(500)。次に、このブロツク転送処理モジユー
ルの処理とは並行して、受付けた検索範囲の先頭ブロツ
クアドレスのブロツクアドレスから連続して検索範囲の
最終ブロツクアドレスまでブロツクを外部記憶装置6か
ら入力し、キヤツシユメモリ53上に格納する処理を行な
う(510,520)。他方、起動されたブロツク転送処理モ
ジユールは(第8図参照)、指定ブロツクアドレスのブ
ロツクがキヤツシユメモリ53上に存在するかどうかチエ
ツクし(600,400)、もし、存在するなら当該ブロツク
が存在するキヤツシユメモリ53上のアドレスを専用処理
装置4へ渡す(620)。存在しなければ、当該ブロツク
を外部記憶装置6上から入力し(610)、キヤツシユメ
モリ53上に格納した後、当該ブロツクを格納したキヤツ
シユメモリ53上のアドレスを専用処理装置4へ渡す(62
0)。この後、専用処理装置4へ当該ブロツクの入力要
求が終了したことを報告する(630)。
専用処理装置4は、デイスクキヤツシユ付き制御装置
5からの1ブロツク入力完了報告により、入力要求の待
ち状態が解かれ(240)、制御装置5から渡された入力
要求の1ブロツクを格納したキヤツシユメモリ53上のア
ドレスをもとに、該ブロツクの検索処理を行ない、検索
結果を検索結果一時格納バツフア422に格納する(25
0)。検索結果一時格納バツフア422が満杯になれば、当
該(副)検索要求の先読み検索処理中(引き続き発行す
る(副)検索要求対応のブロツクについて検索処理中)
かどうか、該検索ID対応の検索処理情報格納ブロツク42
1内の先読み検索処理フラグ(第2図参照)を判定し(2
60)(第7図320)、先読み検索処理中でなければ(先
読み検索処理フラグが“0")、検索結果一時格納バツフ
ア422の検索結果をホスト側に転送してブロツク受信用
バツフア231に格納する(265)。先読み検索処理中であ
れば(先読み検索処理フラグが“1")、検索結果一時格
納バツフア422の検索結果をデイスクキヤツシユ付き制
御装置5のキヤツシユメモリ53に格納する(330)(検
索結果一時格納バツフア422の数が多い場合は、そのま
ま該バツフア上に保持し、デイスクキヤツシユ付き制御
装置5のキヤツシユメモリ53に格納しない方式もあ
る)。次に、当該(副)検索要求対応の検索結果受信用
バツフア231群の全てに検索結果を転送したかチエツク
し(270)、全てに検索結果を転送した場合、ホスト側
に当該(副)検索要求対応の検索処理終了を報告する
(280)。残りの空き検索結果受信用バツフア231がある
場合は、当該サブ検索範囲Diでデイスクキヤツシユ付き
制御装置5から受取つたブロツクの次のブロツクアドレ
スについて上記のデイスクキヤツシユ付き制御装置5に
対して、1ブロツクの入力を要求し、該ブロツクの検索
処理から再び実行する(310)。この後、引き続き発行
する次の(副)検索要求対応の先読み検索対象の検索範
囲が設定されていれば、上記と同様に、先読み検索対象
の検索範囲について1ブロツク単位にブロツクの入力を
デイスクキヤツシユ付き制御装置5に要求し、検索処理
を行なう手順から再び実行する(240〜310)。検索対象
の検索範囲の最後のブロツクまで検索処理を行ない、次
の検索範囲に対する(副)検索要求もしくは新たな先読
み検索要求が無ければ(335)、当該検索処理は終了
し、次の(副)検索要求を待つ。
次に、ホスト側の検索処理要求プログラム21から引き
続き発行する(副)検索要求Ri+1を専用処理装置4が受
取つたとき、専用処理装置4の検索処理実行部41は、当
該(副)検索要求の検索IDと同じIDを持つ検索処理情報
格納ブロツク421があるかチエツクし(200)、もし同じ
ものがある場合、先読み検索処理フラグをリセツトし
(261)(第6図参照)、デイレクタ51内の検索結果転
送処理モジユールの起動を行ない(262)、デイスクキ
ヤツシユ付き制御装置5のキヤツシユメモリ53上の当該
(副)検索要求における検索結果を転送し、その処理と
並行して、新たに受けた(副)検索要求の検索(データ
ベース演算)処理を行なう。この場合、新たに受けた
(副)検索要求の検索範囲においてどこまで先読み検索
処理を行なつているか、または、行なつたかを確認し
(263)、当該(副)検索要求の検索範囲の全ブロツク
が先読み検索処理済みであれば、新たに、先読み検索対
象の検索範囲を受取つた場合(264)、先読み検索範囲D
i+2(P)をデイスクキヤツシユ付き制御装置5に渡
し、先読み処理を要求する(265)。その後、前述の先
読み検索処理を行なう。先読み検索対象の検索範囲を受
取つていなければ、検索処理実行部41の処理は終了す
る。まだ、先読み検索処理中で、新たに、先読み検索対
象の検索範囲を受取つた場合(第7図、350)、先読み
検索範囲Di+2(P)をデイスクキヤツシユ付き制御装置
5に渡し、先読み処理を要求する(360)。そして、現
在の先読み検索範囲を拡張(Di+1(P)+Pi+2(P)す
る(370)。もしくは、その後、先読み検索対象の検索
範囲を受取つていなければ、先読み検索処理中のブロツ
クから、当該(副)検索要求の処理として(副)検索要
求対応の検索範囲の最後のブロツクまで、専用処理装置
4は上記同様に、先読み検索処理を行ない、当該(副)
検索要求対応の全検索結果を転送後、検索処理の終了を
ホスト側に報告する。
起動された検索結果転送処理モジユールは、第8図に
示すように、当該(副)検索要求の検索ID対応の検索結
果がデイスクキヤツシユ付き制御装置5のキヤツシユメ
モリ53上に存在するかチエツクする(400)。もし存在
すれば、キヤツシユメモリ53上の当該検索結果をホスト
側の検索結果受信用バツフア231へ転送し(410)、該キ
ヤツシユメモリ53の該当領域を開放する(420)。もし
存在しなければ、本検索結果転送処理は終了する。これ
らの処理を当該(副)検索要求対応の検索結果受信用バ
ツフア群全てに転送するまで行なう(430)。全てのバ
ツフアに転送すれば本検索結果の転送処理は終了する
(440)。
以上が専用処理装置4とデイスクキヤツシユ付き制御
装置5を用いた先読み検索処理の一実施例である。上記
実施例によれば、ホスト計算機側の2回目以降の同一検
索IDの(副)検索要求が発行された場合、先読み(副)
検索要求によつて既に、デイスクキヤツシユ付き制御装
置5のキヤツシユメモリ53に蓄えられた検索結果は、デ
イスクへの入出力動作を必要とすることなく直ちに、ホ
スト側の主記憶装置へ転送できる。このため、(副)検
索要求発行から検索結果受信までの時間が低減でき、検
索処理の応答時間の向上が図れる。
本実施例による応答時間の効果を示すため、従来のイ
ンデクスアクセスによるブロツクの検索処理例を再度第
3図により、本発明の実施例をもとにしたインデクスア
クセスによるブロツクの検索処理を第4図により各々説
明する(ただし、両図ともインデクスアクセスの処理部
分は、図に表わしていない。特に、第4図ではCPU1から
外部記憶装置6へアクセス要求(検索要求)Ri及び先読
み要求Piを送る時間は、通常数ms以下で、無視し得るも
のとして、図示してない。)。
第4図(a)の実施例は、Di=Di(P)、即ち、先読
み検索要求Piによる検索範囲が検索要求Riによる検索範
囲に等しい場合、第4図(b)の実施例は、Di>D
i(P)、即ち、先読み検索要求Piによる検索範囲が検
索要求Riによる検索範囲よりも狭い場合の動作を時間系
列で示している。
前述のように、従来のインデクスアクセスによるブロ
ツクの検索処理は、1つのインデクスアクセスにより、
インデクスがポイントする該当ブロツクアドレスを得
て、該ブロツクをアクセスしていたため、インデクスが
ポイントするブロツクの先読みは行なえず、第3図に示
すように、一々外部記憶装置上のブロツク(R1′〜R
1)をアクセスする必要があつた。これに対し、第4
図(a),(b)の処理時間は、次のようになる。
まず、第4図(a)のDi=Di(P)の実施例におい
て、時刻T1でR1の検索要求とP2の先読み検索要求がCPU1
から、チヤネル2,制御装置5を経て(装置5をセツ
ト)、外部記憶装置6へ送られ、T1〜T2で装置6のR1
置付け、T2〜T4で装置6から装置5へR1転送、T3〜T5
装置5からチヤネル3を経てCPU1(主記憶装置3)へR1
転送、T5〜T7(ないしT5〜T9)でCPU1によるR1処理、T4
で装置5から装置6へP2の位置付け要求、T4〜T6で装置
6によるP2位置付け、T6〜T8で装置6から装置5へP2
転送、この間、T7でCPU1から装置5へR2及びP3を送り、
T8で装置5から装置6へP3位置付け要求、T8〜T10まで
に装置6によるP3位置付け、この間、T9〜T10でP2即ちR
2の転送、T10以降でCPU1によるR2の処理をそれぞれ行な
う。
また、第4図(b)のDi>Di(P)の実施例では、時
刻T1〜T7までは第4図(a)と同じであり、時刻T8まで
に、検索要求R2の一部分に相当する先読み分P2の転送
(装置6から装置5へ)が行なわれ、T8〜T11で装置6
によりR2の残りの分の位置付けが行なわれ、その間、T9
〜T10で装置5からCPU1へP2が転送され、T11〜T13で装
置6から装置5へ、T12〜T14で装置5からCPU1へ前記R2
の残り分が転送され、T14以降R2の処理が行なわれる。
このように、第4図(a),(b)に示すインデクス
アクセスによるブロツクの検索処理では、予め、インデ
クスを複数アクセスして、該ブロツク群のアドレスを各
々求めて、これらを検索要求Ri(R′〜Ri nの集合)
の検索対象Di、及び、先読み検索要求の範囲Di+1(P)
として求めておき、CPU側の検索要求Riと、引き続き発
行する検索要求Ri+1の先読み検索要求Pi+1とをチヤネル
経由でデイスクキヤツシユ付き制御装置に渡し、検索要
求Riのブロツク群を全てCPU側が受取つた後、インデク
スをアクセスして次の先読み検索要求Pi+1に対する検索
範囲Di+2(P)のブロツクアドレス群を求め、次の検索
要求Ri+1と引き続き発行する検索要求Ri+2の先読み検索
要求Pi+2をチヤネル経由でデイスクキヤツシユ付き制御
装置に渡し、上記同様に、検索処理を進めて行く方式で
あり、デイスクキヤツシユ付き制御装置は、当該検索要
求Riのブロツクアクセス処理と引き続き発行する検索要
求Ri+1の先読み処理を行なうため、2回目以降の検索要
求Riに対し、当該検索要求のブロツク群は、キヤツシユ
メモリ上に予め先読みされているため、キヤツシユメモ
リから直接CPU側へ転送できることになり、検索要求Rn
の発行から当該検索要求の先頭ブロツク受信までに要す
る時間は、第4図でいう“R2検索要求とP3の先読み検索
要求”の発行から“R2の処理”直前までの時間となり、
従来のインデクスアクセスによるブロツクの検索処理方
式に比べ、インデクスがポイントするブロツクのアクセ
ス時間が、(デイスクアクセス時間−キヤツシユメモリ
アクセス時間)分改善されているといえる。
なお、上記実施例では、同一外部記憶装置に対し、任
意のアクセス要求Riに対する外部記憶装置からのデータ
転送が終了する以前に、次のアクセス要求Ri+1に対する
先読み要求Pi+1を発行し、それによつて、アクセス要求
Riに関する外部記憶装置からバツフア(キヤツシユメモ
リ)へ又は主記憶装置へのデータ転送が完了する直後
に、間を置かないで先読み要求Pi+1に関する外部記憶装
置へのアクセスを開始することができる。このために
は、外部記憶装置のそれぞれに対応して、複数の論理デ
バイスアドレスを設け、任意の外部記憶装置へのアクセ
ス要求Riは、その外部記憶装置に対応するある論理デバ
イスへ発行し、該外部記憶装置に対する先読み要求Pi+1
は、該外部記憶装置の他の1論理デバイスへ発行すれば
よい。
以上本実施例によれば、上位装置(ホスト計算機)側
から(副)検索要求対応のサブ検索範囲Diと、これに引
き続いて発行する(副)検索要求対応の先読み検索対象
の検索範囲Pi+1も専用処理装置へ送るため、専用処理装
置は、当該(副)検索要求の検索処理が終つた後、もし
くは、それと並行して、引き続いて発行する(副)検索
要求対応のサブ検索範囲について検索処理を行ない、検
索結果を、デイスクキヤツシユ付き制御装置5のキヤツ
シユメモリ53に蓄えておくところまで検索処理を進める
ことが可能となり、ホスト計算機側の2回目以降の
(副)検索要求発行後、ただちに、デイスクキヤツシユ
付き制御装置5のキヤツシユメモリ53に蓄えた検索結果
をホスト側の主記憶装置へ転送するため、(副)検索要
求発行から検索結果受信までの時間が低減でき、検索処
理の高速化が図れるという効果がある。
〔発明の効果〕
以上詳しく述べたように、本発明のデータ転送方法に
よれば、上位装置から、アクセス要求Riに加えて、この
アクセス要求Riに対するデータのバツフアメモリないし
主記憶装置への転送が完了する迄に、次のアクセス要求
Ri+1での検索範囲Di+1(又はその一部D′i+1)を指定
して先読み要求Pi+1を発行し、この先読み要求Pi+1で先
読みされたデータを予めバツフア上に格納しておき、次
のアクセス要求Ri+1が発行されると、バツフア上にすで
に格納されているデータを主記憶装置に転送するように
したので、上位装置(CPU)処理中にも、並行して外部
記憶装置に対する先読みアクセスを行なうことができ、
応答時間の向上を図ることができる。又、CPUと外部記
憶装置を含めたシステム全体の待ち時間を少なくして、
稼動率を向上することができる等、優れた効果を奏す
る。
【図面の簡単な説明】
第1図は本発明のデータ転送システムの一実施例の概略
構成を示す図、第2図は専用処理装置の検索処理実行部
と記憶ブロツク領域の詳細図、第3図は従来のデータ転
送システムによる検索要求発行から検索結果受信処理に
亘るタイムチャート、第4図は本発明の実施例による検
索要求発行から検索結果受信処理に亘るタイムチャー
ト、第5図は検索処理要求プログラムの処理概略フロー
チヤート、第6図,第7図、及び、第8図は専用処理装
置4の処理概略フローチヤート、第9図はデイスクキヤ
ツシユ付き制御装置の処理概略フローチヤートである。 1……CPU、2……主記憶装置、21……検索処理要求プ
ログラム、4……専用処理装置、41……検索処理実行
部、5……デイスクキヤツシユ付き制御装置。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 大曽根 匡 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 中川 弘文 神奈川県秦野市堀山下1番地 株式会社 日立製作所神奈川工場内

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】主記憶装置と外部記憶装置との間に接続さ
    れその間の転送データを一時格納するバツフア付制御装
    置を有し、複数回のアクセス要求により前記外部記憶装
    置上のデータを前記主記憶装置に読み込むデータ転送方
    法において、任意のアクセス要求Riに対する前記主記憶
    装置へのデータ転送完了までに、次のアクセス要求Ri+1
    で検索すべき外部記憶装置上の範囲Di+1(又はその一部
    D′i+1)を指定して先読み要求Pi+1を上位装置から前
    記制御装置に発行し、前記任意のアクセス要求Riに対す
    る前記外部記憶装置からのデータ転送終了後次のアクセ
    ス要求Ri+1が発行されるまでに、前記先読み要求Pi+1
    基づいて前記制御装置により前記外部記憶装置上の範囲
    Di+1(又はその一部D′i+1)を検索しかつ検索したデ
    ータを前記バツフア上に一時格納し、次のアクセス要求
    Ri+1及びそのアクセス範囲Di+1が前記上位装置から前記
    制御装置に発行されたとき、前記バツフア上に格納され
    たいたデータを前記主記憶装置に転送することを特徴と
    するデータ転送方法。
  2. 【請求項2】前記次のアクセス要求Ri+1が発行されたと
    き、前記バツフア上に一時格納されたいた検索すべき範
    囲Di+1の一部D′i+1を転送し、検索すべき範囲Di+1
    残りの部分については、前記外部記憶装置上を検索して
    検索したデータを主記憶装置に転送することを特徴とす
    る請求項1記載のデータ転送方法。
  3. 【請求項3】前記任意のアクセス要求Riに対する前記外
    部記憶装置からのデータ転送が終了してから次のアクセ
    ス要求Ri+1が発行されるまでに、前記次のアクセス要求
    Ri+1に対する先読みPi+1が完了しない量の先読み範囲を
    指定したことを特徴とする請求項1記載のデータ転送方
    法。
  4. 【請求項4】前記主記憶装置と前記外部記憶装置の間
    に、前記バツフア付の制御装置と外部記憶装置上のデー
    タを検索する専用処理装置とを備えたことを特徴とする
    請求項1記載のデータ転送方法。
  5. 【請求項5】前記外部記憶装置の各々に対応して複数の
    論理デバイスアドレスを設け、任意の外部記憶装置への
    アクセス要求Riは該外部記憶装置に対応する論理デバイ
    スに発行し、該外部記憶装置に対する先読み要求Pi+1
    該外部記憶装置の他の1つの論理デバイスに発行するこ
    とにより、同一の外部記憶装置に対し任意のアクセス要
    求Riに関する外部記憶装置から前記バツフア又は主記憶
    装置へのデータ転送が終了する以前に、次のアクセス要
    求Ri+1に対する先読み要求Pi+1を発行し、アクセス要求
    Riに関する外部記憶装置からのデータ転送の完了の直後
    に先読み要求Pi+1に関する外部記憶装置へのアクセスが
    開始できるように構成したことを特徴とする請求項1記
    載のデータ転送方法。
  6. 【請求項6】複数の論理デバイスアドレスを持つ外部記
    憶装置を接続した構成とし、外部記憶装置に付された論
    理デバイス毎に、アクセス要求Riに対する主記憶装置へ
    のデータ転送が完了する以前に、次のアクセス要求Ri+1
    で検索すべき外部記憶装置上の範囲Di+1(又はその一部
    D′i+1)に対する先読み要求Pi+1を制御装置に発行す
    ることにより、同一外部記憶装置に対し、任意のアクセ
    ス要求Riに関する該外部記憶装置からのデータ転送が終
    了してから、次のアクセス要求Ri+1が発行されるまで
    も、外部記憶装置上から前記アクセス要求Ri+1に対する
    データを検索する処理を、各々の異なる論理デバイス対
    応に、並行して行なうように構成したことを特徴とする
    請求項4記載のデータ転送方法。
  7. 【請求項7】任意のアクセス要求Riと、これに引続いて
    発行するアクセス要求Ri+1に対する先読み要求Pi+1とを
    同時に前記バツフア付制御装置へ発行するように構成し
    たことを特徴とする請求項1記載のデータ転送方法。
JP63072072A 1988-03-28 1988-03-28 データ転送方法 Expired - Lifetime JP2567903B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63072072A JP2567903B2 (ja) 1988-03-28 1988-03-28 データ転送方法
US07/758,231 US5239644A (en) 1988-03-28 1991-09-09 Data preloading method and system for using a buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63072072A JP2567903B2 (ja) 1988-03-28 1988-03-28 データ転送方法

Publications (2)

Publication Number Publication Date
JPH0221323A JPH0221323A (ja) 1990-01-24
JP2567903B2 true JP2567903B2 (ja) 1996-12-25

Family

ID=13478836

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63072072A Expired - Lifetime JP2567903B2 (ja) 1988-03-28 1988-03-28 データ転送方法

Country Status (1)

Country Link
JP (1) JP2567903B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0652286A (ja) * 1992-07-08 1994-02-25 Matsushita Graphic Commun Syst Inc 電子ファイル装置

Also Published As

Publication number Publication date
JPH0221323A (ja) 1990-01-24

Similar Documents

Publication Publication Date Title
JP3183993B2 (ja) ディスク制御システム
EP0080875B1 (en) Data storage system for a host computer
US5257370A (en) Method and system for optimizing data caching in a disk-based computer system
JP3137554B2 (ja) データ転送/管理システム及び方法
JP4060506B2 (ja) ディスク制御装置
JPS619722A (ja) デイスク記憶装置のトラツクでペ−ジを再配列する装置
JPH08328752A (ja) 情報記録装置及び方法
JPH1063578A (ja) 情報記録再生装置
US5696931A (en) Disc drive controller with apparatus and method for automatic transfer of cache data
JP3087429B2 (ja) 記憶装置システム
US5872955A (en) Method and apparatus for reading and writing data in a disk drive system
JP2567903B2 (ja) データ転送方法
JP2943896B2 (ja) 計算機システム及びディスク・データの制御方法
JPS6258351A (ja) 光デイスクキヤツシユ方式
JP3122702B2 (ja) ディスク装置のライトバック制御方法
JP3080521B2 (ja) ディスク装置
JPH04311216A (ja) 外部記憶制御装置
JPH0415493B2 (ja)
JPH0460730A (ja) キャッシュ制御方式
JP3083530B2 (ja) キャッシュメモリのデータ管理方法およびキャッシュ制御装置
JP3093446B2 (ja) 情報処理装置
KR900006251B1 (ko) 자기 디스크 제어장치
JPH0799510B2 (ja) 二次記憶制御装置
WO1994022134A1 (en) Buffer control for data transfer within hard disk during idle periods
JPH06290000A (ja) ディスクコントローラ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 12

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081003

Year of fee payment: 12