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

データ処理装置

Info

Publication number
JPH0887473A
JPH0887473A JP6246845A JP24684594A JPH0887473A JP H0887473 A JPH0887473 A JP H0887473A JP 6246845 A JP6246845 A JP 6246845A JP 24684594 A JP24684594 A JP 24684594A JP H0887473 A JPH0887473 A JP H0887473A
Authority
JP
Japan
Prior art keywords
data
processing request
execution
computer
processing
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
JP6246845A
Other languages
English (en)
Inventor
Tatsunori Kanai
達徳 金井
Takeshi Yokogawa
健 横川
Toshio Shirokibara
敏雄 白木原
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 JP6246845A priority Critical patent/JPH0887473A/ja
Publication of JPH0887473A publication Critical patent/JPH0887473A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【目的】 能力を十分に引出すことができ、管理やチュ
ーニングを自動化できる、複数の計算機を有するデータ
処理装置を提供すること。 【構成】 複数の記憶手段、記憶手段と接続され受けた
処理要求をプログラムAPを用いて実行する手段/AP
からの要求に基づき記憶手段へのデータアクセスとその
履歴情報の蓄積をする管理手段を有する複数の計算機、
計算機を相互接続する手段、処理要求発生元からの処理
要求を受ける手段/過去の処理要求・これを実行した計
算機・実行に要したコストを含む実行履歴を蓄積する手
段/実行履歴を参照し処理要求を実行する計算機を選択
しその実行を指示する手段を有する処理要求割付手段、
計算機上のデータ管理手段からデータアクセス履歴情報
を受け取り、この情報を元に最適なデータ配置を決定
し、データ管理手段に決定したデータ配置に基づくデー
タ配置変更を夫々指示する手段を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数の計算機で構成さ
れたデータ処理装置に関する。
【0002】
【従来の技術】通信路で結合された複数の端末装置や計
算機あるいは自動現金支払機などの処理要求発生部から
処理要求を受け付け、この処理要求に基づいて所定の処
理を実行するデータ処理装置は、今日広く利用されてい
る。このようなデータ処理装置は、従来は単一の汎用計
算機を用いて構成されてきたが、より高い処理性能が求
められる場合には複数台の計算機を用いて構成されるよ
うになって来ている。
【0003】そのような複数台の計算機を用いたデータ
処理装置は、データ非共有型の構成をとる場合と、デー
タ共有型の構成をとる場合がある。図38は、データ非
共有型の構成をとる従来のデータ処理装置の一例であ
り、図39は、データ共有型の構成をとる従来のデータ
処理装置の一例である。いずれの構成においても、複数
の処理要求実行計算機1110−1〜1110−mにア
プリケーションプログラム1116−1〜1116−m
を夫々配置し、通信路1115を介して接続された処理
要求発生部1102−1〜1102−nからの処理要求
を受けたフロントエンド計算機111上の処理要求割り
付け部1101が各処理要求実行計算機に処理要求の実
行を割り当てる方式になっている。
【0004】データ非共有型とデータ共有型の違いは、
データ記憶装置と処理要求実行計算機の結合方式にあ
る。データ非共有型の場合は各処理要求実行計算機がロ
ーカルにデータ記憶装置1118−1〜1118−mを
持ち、データは各データ記憶装置に分割して記憶され
る。それゆえ、データ管理部1117−1〜1117−
mは自処理要求実行計算機に接続されているデータ記憶
装置上のデータにしかアクセスできない。一方、データ
共有型の場合は、すべての処理要求実行計算機はデータ
記憶装置1118を共有するので、どの処理要求実行計
算機も任意のデータをアクセスすることができる。
【0005】処理要求割り付け部1101が各処理要求
実行計算機に対し処理要求を割り付ける方式としては、
例えばあらかじめ与えられた処理要求とその要求を実行
する計算機の対応表を見て、どの処理の場合はどの処理
要求実行計算機に割り当てるかを判断したり、あるい
は、各処理要求実行計算機の負荷状況を調べる手段を付
加して、負荷の小さいと判断した処理要求実行計算機に
処理を割り当てる方式などがある。
【0006】例えば、「TUXEDO SYSTEM
Release 4.1 Transaction M
anager Administrator´s Gu
ide」(Prentice Hall)には、処理要
求の持つ引数をみて処理要求実行計算機を決定する方式
が記載されている。
【0007】図38に示した構成のように複数台のデー
タ記憶装置を用いる場合、格納するデータを複数台のデ
ータ記憶装置にどの様に分割して配置するかに関して
は、例えばデータベース・ベンチマーキング(Jim Gray
編 喜連川 優、渡辺栄一監訳日経BP社)に述べられ
ているように、データをデータ記憶装置に対しハッシュ
関数などを用いランダムに配置するもの、データをデー
タ記憶装置に対しラウンドロビン式に配置するもの、デ
ータの値の範囲をデータ格納領域の数に分割しそれらを
一つずつデータ記憶装置に割り当てるものなどがある。
また、データの配置を変更する方式としては、「Dat
a Placement In Bubba、Geor
ge Copeland et.al.、SIGMO
D、Vol.17、No.3、1988」に述べられて
いるように、データアクセスへの情報を基に最適な配置
を計算し再配置を行う方式などがあった。
【0008】ところで、複数台の処理要求実行計算機を
用いて効率良く業務を実行するためには、各処理要求を
その処理のコストの低い処理要求実行計算機に対して割
り付ける必要があり、また複数台のデータ記憶装置を用
いている時にはデータを複数台のデータ記憶装置に分割
して配置させる必要がある。
【0009】従来、システム管理者は、データ処理装置
内で実行されるアプリケーションプログラムを調べそれ
がどの様なデータをアクセスするかを解析し、なるべく
個々の処理要求の実行が並列に処理されるように、また
個々の処理要求を実行するのに必要なデータはなるべく
その処理要求を実行する処理要求実行計算機内にあるよ
うに、更にはデータ配置とデータ処理装置への各処理要
求の発生頻度等を考慮して各処理要求を実行するに必要
なコストがなるべく小さくなるように、データの分散配
置と処理要求の処理要求実行計算機への割り付け方式を
決定する必要があった。
【0010】しかしながら、データの分散配置、処理要
求の割り付け方式のどちらか一方を決定するだけでも、
システムの性能を十分に発揮させるためにはシステム全
体の動的な特性を解析する必要があり非常に困難であっ
た。
【0011】
【発明が解決しようとする課題】この様に、従来のデー
タ管理装置では、データの分散配置および処理要求の割
り付け方法のどちらか一方を最適化するだけでも、シス
テム全体の動的な特性を解析する必要があり非常に困難
であったため、システムの性能を十分に発揮させること
ができないという問題点があった。また、システムの管
理やチューニングに非常に手間が掛かるという問題点が
あった。
【0012】本発明は、上記事情に鑑みてなされたもの
であり、データ配置を決定するのに必要な情報の作成・
解析を自動的に実行し最適なデータ配置を決定する方式
と各処理要求をどの処理要求実行計算機に割り付けるか
を各処理要求の履歴を基に決定する方式を同時に用い、
これらを協調させる事により、システムの能力を十分に
引き出すことができ、かつシステムの管理やチューニン
グを自動化することのできるデータ処理装置を提供する
ことを目的とする。
【0013】
【課題を解決するための手段】本発明は、処理要求を発
生する少なくとも1つの第1の計算機と、発生された処
理要求を実行する複数の第2の計算機とならなるトラン
ザクション処理システムにおいて、第1の計算機により
発生された処理要求を複数の第2の計算機のいずれかへ
転送する処理要求割付手段と、第2の計算機に接続さ
れ、処理要求の実行に用いられるデータを記憶するデー
タ記憶手段と、この手段に記憶されているデータの配置
を決定し再配置を行う手段とを具備するものである。
【0014】そして、本発明の第1の発明は、前記処理
要求割付手段が、過去の処理要求の実行履歴の情報を獲
得し、この履歴情報に基づいて割付先の第2の計算機を
選択することを特徴とする。
【0015】一方、本発明の第2の発明は、前記処理要
求割付手段が、前記記憶手段にきおくされるデータの配
置の情報を獲得し、この配置情報に基づいて割付先の第
2の計算機を選択することを特徴とする。
【0016】本発明の第1の発明の好ましい態様は、デ
ータを記憶するための複数のデータ記憶手段と、いずれ
かの前記データ記憶手段と接続され、与えられた処理要
求をアプリケーションプログラムを用いて実行する手段
および該処理要求を実行する該アプリケーションプログ
ラムからの要求に基づき該実行に必要な該データ記憶手
段内のデータへのアクセスを行うとともに該データへの
アクセスの履歴に関する情報を蓄積するデータ管理手段
を夫々有する複数の計算機と、該複数の計算機を相互接
続する結合手段と、この結合手段に接続され、通信路を
介して接続された少なくとも1つの処理要求発生手段か
ら送られた処理要求を受付ける手段、過去の処理要求、
該処理要求を実行した前記計算機、その実行に要したコ
ストを含む実行履歴を蓄積する手段および該処理要求発
生手段から送られた新しい処理要求を受信すると該実行
履歴と比較して実行すべき前記アプリケーションプログ
ラムの存在する前記計算機を選択して該処理要求の実行
を指示する手段を有する処理要求割り付け手段と、前記
計算機上の前記データ管理手段から前記データへのアク
セスの履歴に関する情報を夫々受け取り、該情報を元に
して最適なデータ配置を夫々決定し、該データ管理手段
に対しこの決定したデータ配置に基づくデータの配置の
変更処理の実行を夫々指示するデータ配置決定手段とを
具備してなることを特徴とする。
【0017】本発明の第2の発明の好ましい態様は、デ
ータを記憶するための複数のデータ記憶手段と、いずれ
かの前記データ記憶手段と接続され、与えられた処理要
求をアプリケーションプログラムを用いて実行する手段
および該処理要求を実行する該アプリケーションプログ
ラムからの要求に基づき該実行に必要な該データ記憶手
段内のデータへのアクセスを行うとともに該データへの
アクセスの履歴に関する情報を蓄積するデータ管理手段
を夫々有する複数の計算機と、該複数の計算機を相互接
続する結合手段と、この結合手段に接続され、通信路を
介して接続された少なくとも1つの処理要求発生手段か
ら送られた処理要求を受付ける手段、各計算機に接続さ
れた前記データ記憶手段にはどのようなデータが記憶さ
れているかを表すデータ配置情報を獲得する手段、該処
理要求発生手段から送られた新しい処理要求を受信する
と該データ配置情報と比較して実行すべきアプリケーシ
ョンプログラムの存在する前記計算機を選択して処理要
求の実行を指示する手段を有する処理要求割り付け手段
と、前記計算機上の前記データ管理手段から前記データ
へのアクセスの履歴に関する情報を夫々受け取り、該情
報を元にして最適なデータ配置を夫々決定し、該データ
管理手段に対しこの決定したデータ配置に基づくデータ
の配置の変更処理の実行を夫々指示するデータ配置決定
手段とを具備してなることを特徴とする。
【0018】好ましくは、第1および第2の発明におい
て、前記データ管理部は、アプリケーションプログラム
の実行に伴うデータ操作要求を受け取り、操作対象のデ
ータが自計算機のデータ記憶装置にある場合は操作要求
を実行し、自計算機にない場合はデータが存在する計算
機のデータ管理部にデータ操作を要求することを特徴と
する。すなわち、アプリケーションプログラムに対して
はすべてのデータに透過にアクセスすることを可能にす
る手段を持たせる。
【0019】好ましくは、第1および第2の発明におい
て、前記データ管理部は、前記データ配置決定手段の決
定したデータ配置に従ってデータの配置を変更する手段
を有することを特徴とする。
【0020】好ましくは、第1および第2の発明におい
て、前記データ配置決定手段が、新しいデータ配置を決
定する処理の開始を指示する手段を有することを特徴と
する。
【0021】好ましくは、第2の発明において、前記デ
ータ配置決定手段は、決定した新しいデータの配置をデ
ータ配置情報として前記処理要求割り付け部に知らせる
手段を有することを特徴とする。
【0022】好ましくは、第2の発明において、前記デ
ータ管理部夫々は、管理するデータの情報をデータ配置
情報として前記処理要求割り付け部に知らせる手段を持
つことを特徴とする。
【0023】好ましくは、第1および第2の発明におい
て、アプリケーションプログラムは、同じものを各計算
機上に配置することを特徴とする。
【0024】
【作用】本発明では、処理要求割り付け部は、その処理
要求を実行する最適な計算機すなわち最も小さなコスト
でその処理要求を実行することのできる計算機を選択
し、処理を割り当てる。通常、処理要求の実行に必要な
データを持つ計算機に処理を割り付けた場合に最もコス
トが小さくなるが、データを持たない計算機に割り付け
た場合はリモートのデータへのアクセスが必要となるた
めコストが増大する。このとき、すべてのアプリケーシ
ョンプログラムは、データ管理部を通してすべてのデー
タを透過にアクセスできるようになっているので、必ず
しも絶対に最適な計算機に割り当てられることが保証さ
れていなくても構わない。
【0025】このような処理要求の割り付けを行うと、
データの配置によって各処理要求の実行時間が異なり、
また各計算機の負荷が均衡化したり、しなかったりす
る。そこで、どの処理要求を実行するのにどのデータの
アクセスが必要であったかを示す情報を基に、各処理要
求の実行時間と各計算機の負荷を最適化するデータ配置
を求め、その状態にデータを配置し直す。
【0026】処理要求割り付け部は、新しいデータ配置
に従って処理要求を割り付けることで、負荷を均衡化す
ることができる。また、各処理要求の実行時間に関して
も最適化される。この様なデータの配置に応じた処理要
求割り付けとデータ再配置とのフィードバックループに
よって、データ処理装置全体の負荷の均衡化が自動化さ
れ、またデータ処理装置全体の性能も向上する。
【0027】ここで、データの配置に応じた処理要求割
り付けとデータ再配置とのフィードバックループは、各
発明において次のようしてなされる。
【0028】第1の本発明では、処理要求割り付け手段
は、処理要求をある計算機に割り付けた結果得られたコ
ストなどを蓄積し、これに基づいて最適な割り付け方を
学習していくとともに、一方、データ配置決定手段は、
データアクセスの履歴を見ながら適宜データ配置を最適
なものに変更する。そして、このデータ配置の変更が、
間接的に処理要求割り付け手段の処理要求割り付け結果
にフィードバックされるのである。
【0029】第2の発明では、処理要求割り付け手段
は、データ配置情報に基づいて処理要求を各計算機に割
り付るとともに、一方、データ配置決定手段は、データ
アクセスの履歴を見ながら適宜データ配置を最適なもの
に変更する。そして、このデータ配置の変更を、直接的
に処理要求割り付け手段に与えるのである。
【0030】このように、本発明のデータ処理装置を用
いれば、複数の処理要求実行計算機を用いて処理を並列
実行する事により高性能なデータ処理が実現できる。ま
た、処理要求の負荷が高い場合でも、その処理要求を実
行するアプリケーションプログラムを複数の処理要求実
行計算機に分散する事により、高負荷のデータ処理にも
対応できる。
【0031】また、本発明によれば、データ共有型ある
いはデータ分散型のどちらのデータ記憶装置を用いた場
合でも、各アプリケーションプログラムはどの処理要求
実行計算機に接続されているデータ記憶装置上のデータ
にもアクセスできるので、従来の単一計算機上で開発し
たアプリケーションプログラムを変更せずに並列処理を
行うことが可能になる。またこの性質によって、処理要
求割り付け装置は必ずしも毎回最適な処理要求実行計算
機を選び出せる決定的なアルゴリズムではなく、最適で
ない処理要求実行計算機を選ぶ場合も存在するような確
率的なアルゴリズムを用いて処理要求の割り付けを行う
ことができる。
【0032】更にデータ配置決定部によるデータの自動
最適配置によって、どのような処理要求がどのような頻
度で発生するかといった動的な特性に対して、それに対
する最適なデータの分割配置を行うことができ各処理要
求の実行性能が向上する。また、そのデータ配置に従っ
て、処理要求割り付け部は各処理要求をそれを実行する
のに適した処理要求実行計算機に割り付けるので、デー
タの分散配置の決定や処理要求の割り付け方法を与えな
くても自動的に処理の負荷分散ができ、データ処理装置
全体のチューニングも自動化でき、システム管理も容易
になる。
【0033】また、処理要求割り付け部における最適な
割り付け戦略が明らかでない場合や、最適なデータの分
散配置が明らかではない場合でも、処理の負荷分散がう
まく行われない可能性は存在するもののデータ処理装置
としては動作することができる。
【0034】
【実施例】以下、図面を参照しながら本発明の実施例を
説明する。
【0035】各構成要素(ブロック)に付した参照番号
のうち「i−j」「i−j−k」(例えば102−1)
の形のものは、「i」が同一のものは同様の構成を有す
るものであることを表す。また、参照番号iを付したブ
ロックの個々を区別する必要のない場合など、適宜「−
j」「−j−k」を省略して記述する。
【0036】(第1の実施例)図1に、本発明の第1の
実施例の構成を示す。
【0037】図1のデータ処理装置は、m(mは2以
上)台の処理要求実行用の計算機(処理要求実行計算
機)110−1〜110−mと、フロントエンド処理用
の計算機(フロントエンド計算機)111と、フロント
エンド計算機111と各処理要求実行計算機110−1
〜110−mとを相互接続する結合路114と、各処理
要求実行計算機110−1〜110−mに接続されてデ
ータを記憶するデータ記憶装置118−1〜118−m
とから構成されている。なお、図1ではフロントエンド
計算機は1台であるが並列に複数台設けても良い。ま
た、データ記憶装置はすべての処理要求実行計算機では
なくそのうちの一部にだけローカルに設けても良い(デ
ータ記憶装置は1台だけでも良い)。
【0038】このように複数台の処理要求実行計算機を
用いることによって、並列処理による高性能なデータ処
理が実現できる。また、処理要求の負荷を複数の処理要
求実行計算機に分散して、高負荷のデータ処理に対応で
きる。
【0039】フロントエンド計算機111は、処理要求
を発生するn(nは1以上)台の各処理要求発生部10
2−1〜102−nと通信路115を介して接続され、
処理要求発生部102−1〜102−nから送られてく
る処理要求を受信し、それを実行すべきアプリケーショ
ンプログラム116−1〜116−mの存在する処理要
求実行計算機110−1〜110−mを選択し、該処理
要求の実行を指示する処理要求割り付け部101を持
つ。
【0040】処理要求発生部102としては、端末装置
や計算機あるいは自動現金支払機など種々のものが考え
られる。
【0041】各処理要求実行計算機110−1〜110
−mは、処理要求を実行するアプリケーションプログラ
ム116−1〜116−m、アプリケーションプログラ
ム116−1〜116−mの実行に必要なデータ記憶装
置118−1〜118−m上のデータの操作を行うデー
タ管理部117−1〜117−mを夫々持つ。
【0042】処理要求実行計算機110−1〜110−
mのうちの1つは、データ配置管理部120を持つ。こ
のデータ配置管理部120は、各処理要求実行計算機1
10−1〜110−m内部のデータ管理部117−1〜
117−m夫々と協調して動作するものであり、各デー
タ管理部117−1〜117−mからデータアクセスに
関する情報を受け取り、その情報を基に最適なデータ配
置を計算し、その結果に従って各処理要求実行計算機1
10−1〜110−mにデータの配置の変更を指示す
る。なお、データ配置管理部120およびデータ管理部
117のより具体的な内部構成については後述する。
【0043】本実施例においては、データ配置決定部1
20は処理要求実行計算機110の1台に配設したが、
その替わりにフロントエンド計算機111上に1台設け
ても、フロントエンド計算機111および処理要求実行
計算機110の他に設けた計算機上に1台設けても、こ
れら計算機のいずれか複数台上に夫々設けても良い。
【0044】データ記憶装置を複数台用いる場合は、デ
ータは分割されて各データ記憶装置118−1〜118
−mに格納される。データの分割に際しては、例えばキ
ーによりデータを分類して各計算機に格納させることが
できる。また、この場合、データの一部あるいは全体の
複製を作成し、複製を元のデータが格納されているデー
タ記憶装置と異なるデータ格納装置に格納することによ
り、耐障害性を向上させることも可能である。
【0045】データ記憶装置118としては、ハードデ
ィスク、半導体メモリ等を用いる事ができる。また、マ
グネティックテープ、フロッピーディスク、CD−RO
M、MO等を用いる事も可能である。
【0046】データ記憶装置内にデータを分散して配置
する場合には、データを単に重なり無く分割して配置す
る事も可能であるが、データの一部あるいは全てに対し
冗長性を持たせて元のデータとその複製を異なるデータ
記憶装置内に配置する事によって、データ処理装置の耐
障害性を向上させる事も可能である。
【0047】次に、図1のデータ処理装置の動作を説明
する。
【0048】処理要求発生部102−1〜102−nの
いずれかにより出力された処理要求は、通信路115を
通してフロントエンド計算機111上の処理要求割り付
け部101に送られる。処理要求割り付け部101は、
処理要求実行計算機110−1〜110−mのうちか
ら、その処理要求を実行するのに最適なものを選択して
処理を割り付ける。
【0049】処理要求を実行するのに最適な処理要求実
行計算機とは、その処理要求を最も小さなコストで実行
できる処理要求実行計算機である。コストは、例えばそ
の処理要求を実行するのに必要な時間で表すことができ
る。あるいは、その処理を実行するのに必要な通信回数
などでコストを表すこともできる。
【0050】処理要求を実行する処理要求実行計算機を
選択する方式は、後述するように、「過去に、どの様な
処理要求を、どの処理要求実行計算機で実行したら、ど
れくらいのコストがかかったか」を表す実行履歴を蓄積
する手段を設け、新しい処理要求が到着すると、その処
理要求を実行履歴と照らし合わせて、どの処理要求実行
計算機で実行すると最小のコストで実行できるかを判断
する方式を用いることができる。この方式では、過去の
実行履歴を基に最適な処理要求実行計算機を選択するた
め、必ず最適なものが選択される保証はなく、最適なも
のが選択されるか否かは確率的なものとなる。このよう
な確率的な方式を使用できるのは、後述するように、ど
の処理要求実行計算機上のアプリケーションプログラム
からもすべてのデータに透過にアクセスできるように構
成していることによる。
【0051】どのデータがどの処理要求実行計算機のデ
ータ記憶装置にあるかによって、決定的なアルゴリズム
で最適な処理要求実行計算機を選択することができる場
合には、処理要求割り付け装置にそのようなアルゴリズ
ムをプログラムとして組み込む方法もある。
【0052】なお、処理要求割り付け部101のより具
体的な内部構成については後述する。
【0053】さて、処理要求実行計算機110−1〜1
10−mに割り付けられた処理要求は、その処理要求実
行計算機上に配置されたアプリケーションプログラム1
16によって実行される。後述するように、どの処理要
求実行計算機110−1〜110−m上のアプリケーシ
ョンプログラム116−1〜116−mからもすべての
データに透過にアクセスできるように構成しているた
め、アプリケーションプログラム116−1〜116−
mとしては、どの処理要求実行計算機110−1〜11
0−mにも同一のものを配置して構わない。したがっ
て、従来の単一計算機上で開発したアプリケーションプ
ログラムを変更せずに並列処理を行うことが可能であ
る。
【0054】データ管理部117−1〜117−mは、
アプリケーションプログラム116−1〜116−mか
らその実行に伴って必要となるデータ操作要求を受け取
って実行する。このとき操作対象のデータが自処理要求
実行計算機110のデータ記憶装置118上になけれ
ば、そのデータを持つ処理要求実行計算機110のデー
タ管理部117に操作を依頼する。自計算機110にあ
る場合には、ローカルに操作を行う。このようなデータ
操作は、通常、キーによって操作対象のデータを指定す
る。「キーの値がどの範囲ならば、どの処理要求実行計
算機にデータの実体があるか」を記録する表を持たせる
ことによって、データ操作をローカルに行うか他の処理
要求実行計算機のデータ管理部117に依頼するかを判
断することができる。ローカルに操作を行う場合の処理
方式は、例えば「データベースシステム入門技術解説、
滝沢 誠著、ソフトリサーチセンター、ISBN4−9
15778−07−x」に開示されている。
【0055】データ配置決定部120は、各処理要求実
行計算機110−1〜110−mのデータ管理部117
−1〜117−mから、「どの処理要求の実行にはどの
データへのアクセスが必要であったか」という情報とそ
の処理要求の頻度情報等からなる統計情報を収集する。
そのため、データ配置決定部120は、各処理要求実行
計算機110と結合路114を通じて結合されている計
算機であれば、どの計算機上に存在していても構わな
い。図1の例では処理要求実行計算機のひとつに存在し
ているが、フロントエンド計算機111の上でも構わな
いし、新たな計算機を結合路114に接続してその上に
置いても構わない。
【0056】データ配置決定部120は、後述するよう
に、各データ管理部117−1〜117−mから集めた
統計情報を基にデータをどのように配置すると各処理要
求実行計算機110−1〜110−mの負荷が均衡化さ
れ、かつ個々の処理要求の実行に要するコストを小さく
できるかを考えて、最適なデータ配置を求める。その結
果に基づいて各データ管理部117−1〜117−mの
管理するデータを移動することで、最適なデータ配置に
なる。このデータの移動は、データ配置決定部120が
各処理要求実行計算機110上のデータ管理部117に
指示することにより行うことができる。また、データ配
置決定部120が求めた新しいデータ配置に従って、人
手でデータを移動するような実施方法も可能である。
【0057】データ配置決定部120がデータの最適な
配置を決定してデータの再配置を行うタイミングは、オ
ペレータがデータ配置決定部120に指示することによ
って行う方法、データ配置決定部120が予め決められ
た時間間隔で行う方法、データ配置決定部120が予め
決められた量の統計情報を収集すると行う方法、統計情
報から各処理要求実行計算機110のデータアクセスの
回数に偏りが認められるようになった時点で行う方法、
各処理要求実行計算機110の負荷情報に偏りが生じた
ら行う方法、処理要求割り付け部101が処理要求を割
り付ける処理要求実行計算機110に偏りが生じたらデ
ータ配置決定部120に再配置を指示する方法など、種
々の方法が可能である。
【0058】データ配置決定部120によるデータの自
動最適配置によって、各処理要求の頻度や個々の処理要
求のアクセスするデータの変化といった様なシステム全
体の動的な特性に対し、その変化に追従して最適なデー
タ配置とする事が可能になる。さらに、そのデータ配置
に従って、処理要求割り付け部101は各処理要求をそ
れを実行するのに適した処理要求実行計算機110に割
り付けるので、データ配置の変更の度に新たなデータの
配置やその配置に基づいた処理要求の割り付け方法を与
えなくても自動的に処理の負荷分散ができ、更にはデー
タ処理装置全体のチューニングも自動化でき、システム
管理も容易になる。
【0059】また、処理要求割り付け部101における
最適な割り付け戦略が明らかでない場合や、最適なデー
タの分散配置が明らかではない場合でも、データを取り
敢えず分散して配置しておけば、処理の負荷分散がうま
く行われない可能性は存在するものの、データ処理装置
としては動作することが保証される。
【0060】図1のデータ処理装置の例ではフロントエ
ンド計算機111は1つであるが、図2に示すように、
夫々が処理要求割り付け部101−1〜101−lを有
する複数のフロントエンド計算機111−1〜111−
lを用いることもできる。複数台のフロントエンド計算
機111−1〜111−lを通信路115と結合路11
4の間に置くことによって、1台のフロントエンド計算
機111が故障した場合は別のフロントエンド計算機1
11で代替することにより、耐障害性が向上する。
【0061】また、フロントエンド計算機1台では処理
要求割り付け部の処理に必要な性能が得られない場合、
複数台を用いて負荷を分散することができる。また、複
数の処理要求発生部を収容する通信路を複数に分割し、
複数台のフロントエンド計算機をそれぞれ異なる通信路
に結合する方法も可能である。
【0062】本実施例のデータ処理装置は、オンライン
トランザクション処理にもそうでないオンライン処理に
も適用できる。
【0063】ここで、データの配置を固定した上で、各
処理要求をどの処理要求実行計算機に対して割り付ける
かということだけを動的に決定する手法を用いて各処理
要求をどの処理要求実行計算機に対して割り付けるかを
動的に決定する場合を考えると、個々の処理要求の必要
とするデータが必ずしもその処理要求実行計算機内にあ
るように処理要求を割り付ける事ができないため、シス
テムの性能が十分に発揮できない。システムの性能を十
分に発揮させるためには、新たに決定された処理要求の
割り付け方等に基づいて、データの配置をどうすべきか
を決定し、システム管理者自身がデータを再配置する必
要がある。このため、システム管理に非常に手間がかか
る。
【0064】一方、処理要求の実行できる業務計算機が
予め決定されていた場合には、動的な特性に基づいてデ
ータ配置を決定する方法、例えば「Data Plac
ement In Bubba、George Cop
eland et.al.、SIGMOD、Vol.1
7、No.3、1988」に述べられているように、フ
ァイルへのアクセスを監視し、ファイルを人手により移
動する方法によってデータアクセスの動的な特性を基に
データの配置を変えたとしても、当初処理要求の割り付
け方式を決定する時に用いたデータの配置と異なるた
め、各処理要求の必要とするデータが当該処理要求を実
行する処理要求実行計算機内にあるとは限らなくなるた
めにやはりシステムの性能が十分に発揮できない。シス
テムの性能を十分に発揮させるには、新たなデータ配置
と各処理要求の発生頻度等を考慮して新たに各処理要求
をどの処理要求実行計算機に割り付けるかを決定する必
要がある。このため、システム管理に非常に手間が掛か
る。
【0065】本実施例(あるいは後述する各実施例)で
は、処理要求を実行する最適な計算機すなわち最も小さ
なコストでその処理要求を実行することのできる計算機
を選択し処理を割り当てる処理要求割り付け手段と、デ
ータの自動最適配置を行うデータ配置決定手段とを設
け、データの配置に応じた処理要求割り付けとデータ再
配置とのフィードバックループを形成させることで、デ
ータの配置と処理要求の割り付けの両方を動的に最適化
することを可能にしているのである。
【0066】(第2の実施例)図3に、本発明の第2の
実施例の構成を示す。
【0067】図3に示すデータ処理装置と図1のデータ
処理装置との違いは、データ記憶装置118の接続方式
にある。図3のデータ処理装置では、すべての処理要求
実行計算機110−1〜110−mが1つのデータ記憶
装置118を共有している。本方式においては、各処理
要求実行計算機110−1〜110−mはデータ記憶装
置118内の任意のデータにアクセスすることが可能で
ある。
【0068】図3の各処理要求実行計算機110−1〜
110−m内のデータ管理部117−1〜117−m
は、まず自分がアクセスしようとするデータを他のデー
タ管理部117がアクセスしているかを調べる。もしも
他のデータ管理部117がアクセスしていない場合に
は、まずそのデータを自データ管理部117内に用意し
た領域に読み込み、その上で必要な操作を行う。データ
管理部117は必要な処理を行った後、データをデータ
記憶装置118内に戻す事も可能であるが、再度同じデ
ータをアクセスする可能性が高い場合には、データを書
き戻さずに自データ管理部117内の領域に保持したま
まにする事もできる。この場合、他のデータ管理部11
7は、そのデータに対し直接アクセスする事はできなく
なり、このデータ管理部117に対し処理を依頼する事
になる。
【0069】このため本実施例のような場合には、デー
タ配置決定部120は、「データ記憶装置118内のど
こにデータを配置するか」ではなく、「どの処理要求実
行計算機のデータ管理部117が、どのデータを、当該
データ管理部117内の領域内に保持したままでも良い
か」を決定する。
【0070】本実施例は、本発明の方式が、図1に示す
ようなデータ非共有型のデータ処理装置だけではなく、
データ共有型あるいはディスク共有型のデータ処理装置
にも適用可能であることを示している。
【0071】(第3の実施例)図4に、本発明の第3の
実施例の構成を示す。
【0072】図4に示すデータ処理装置は、図1のデー
タ処理装置においてフロントエンド計算機111上にあ
った処理要求割り付け部101を、各処理要求実行計算
機110−1〜110−m上に持たせるようにしたもの
である。
【0073】各処理要求実行計算機110−1〜110
−mの処理要求割り付け部101−1〜101−mは、
夫々通信路115−1〜115−mを介して複数の処理
要求発生部102と接続されている。図4の例のように
各処理要求実行計算機110−1〜110−mは、それ
ぞれ別の通信路115−1〜115−mに接続する代わ
りに、すべての処理要求実行計算機あるいはそのうちの
何台かが同一の通信路に接続されていても構わない(通
信路は、ただ1つでも構わない)。
【0074】データ記憶装置118は、図3と同様、す
べての処理要求実行計算機110−1〜110−mで共
有するような方法も可能である。
【0075】(第1〜第3の実施例のデータ配置決定部
120およびデータ管理部117の具体例)次に、第1
〜第3の実施例のデータ配置決定部120およびデータ
管理部117の具体例を示す。図5は、データ管理部1
20およびデータ配置決定部117の概略構成図であ
る。このように、データ配置決定部120は、相関情報
記憶表202、相関情報管理部203、データ配置決定
部204から構成され、データ管理部117は、アクセ
ス要求受信部201、データ格納情報記憶部205、デ
ータ配置変更部206、データアクセス部207から構
成される。なお、図5中では、結合路114、通信路1
15、処理要求割り付け部101、処理要求発生部10
2は省いてある。また、アプリケーションプログラム1
16は、1つでも複数個でも良いが、図中では1つのみ
示してある。データ記憶装置118は、処理要求実行計
算機110にローカルに接続されたものでも、複数の処
理要求実行計算機110に共有されたものでも良い。
【0076】以下では、説明の便宜上、データ管理部1
20およびデータ配置決定部117のことを、データ管
理装置と呼ぶこととする。
【0077】このデータ管理装置は、概略的には、計算
機等から、複数の異なるデータ格納領域に分散して格納
されているデータへのアクセスを要する処理要求が送信
されてくると、まず、これを受け取り、特定の複数のデ
ータが一連の処理内で共にアクセスされたことを示すデ
ータ相互の相関情報を更新する。
【0078】ここに、一連の処理とは、所定の開始時点
より所定の終了時点までの間に行なわれた処理のことで
ある。例えばあるプロセスが生成されてから終了するま
でを一連の処理として扱うことも可能であるし、あるい
はそのプロセスが入力に応じて異なる処理をする時には
その処理毎を一連の処理と定義することもできる。ある
いはまたそのプロセスの動作を複数に分割し、それらを
それぞれ一連の処理と定義することも可能である。さら
にはトランザクションとして実行される処理を一連の処
理と定義することも可能である。また特定の処理以外は
全て同じように定義することも可能である。あるいは所
定の開始時刻から終了時刻の間に実行されたものを全て
一連の処理とすることも可能である。
【0079】上記の処理要求を受け取るごとにデータ相
互の相関情報を更新する操作を繰り返し、システムにお
ける相関情報に関する情報を十分に獲得した後、この相
関情報とデータが格納されているデータ格納領域を示す
データ格納情報を基にして、システムの特性に適合した
前記データ格納領域内の新しいデータ配置を決定する。
【0080】したがって、このようなデータ管理方法に
よれば、複数のデータ格納領域に格納されているデータ
が一連の処理において共に参照・更新される頻度が多い
場合には、その相関を自動的に判別することができ、そ
の様なデータを同じデータ格納領域に格納するようにデ
ータの配置を自動的に変更することができる。
【0081】また、データの配置に必要な情報を自動的
に取得するため、システム管理者がシステム上の処理を
解析してデータの配置を決定する必要がなく、各プロセ
スの実行時間が短くなりシステムの持つ性能を容易に引
き出すことができるようになる。
【0082】このデータ管理装置は、アプリケーション
プログラム116からデータアクセス要求を受け取り、
アクセス要求の履歴が予め決められた条件を満たすよう
になったときに相関情報を作成・更新する。この様にし
て十分な量の相関情報を取得した後、それとデータ格納
情報に基づき新たなデータ配置情報を作成する。
【0083】また、データ管理装置は、1つ以上のデー
タ記憶装置118上にデータを格納する。ここで、デー
タ管理装置は複数のデータ格納領域を管理するが、それ
らを各データ記憶装置に一つずつ割り当てるように構成
することも、各データ記憶装置に複数個ずつ割り当てて
構成することも可能である。また複数のデータ記憶装置
をまとめて一つのデータ格納領域として扱うことも可能
である。データ記憶装置内のデータ格納領域の数、個々
の領域の大きさは任意であり、また各データ記憶装置間
のデータ格納領域の数、領域の大きさがそれぞれ異なる
構成にすることも可能である。
【0084】データ管理装置が管理するデータ記憶装置
118は、データを格納する機能を有するものであっ
て、該データ記憶装置118中の任意の位置のデータを
読み出したり、書き変えたりすることもできるものであ
れば良く、半導体メモリ、ハードディスク、フロッピー
ディスク、磁気テープ等を用いることが可能である。
【0085】データ管理装置は、独立した装置として構
成することも可能であり、また計算機の持つ機能として
ソフトウェアあるいはハードウェアとして実現すること
も可能である。
【0086】以下、図5のデータ管理装置の動作を説明
する。
【0087】アプリケーションプログラム116におい
て実行されている処理要求から発生されたデータアクセ
ス要求は、アクセス要求受信部201によって受け取ら
れる。アクセス要求は、データアクセスを行なうのに必
要なデータと相関情報を生成するために必要なデータか
らなる。アクセス要求受信部201は、受け取ったデー
タアクセス要求を相関情報管理部203とデータアクセ
ス部207へと渡す。
【0088】データアクセス部207は、受け取ったア
クセス要求に基づきデータ記憶装置118からデータを
読み出しあるいは更新し、その結果をデータアクセス要
求発生元であるアプリケーションプログラム116へと
返す。
【0089】相関情報管理部203は、新たに受け取っ
たアクセス要求から相関情報を作成し、相関情報記憶表
202に記憶されている相関情報と照らし合わせ、既に
登録されている相関情報ならばその相関情報の更新を行
ない、また未登録の相関情報ならばその相関情報を相関
情報記憶表202に登録する。その際、一定期間以上更
新されていなかったり、あるいは予め決められた条件に
満たないようなものを相関情報記憶表2から削除する。
相関情報管理部203は、アクセス要求がある度にこの
様な相関情報の更新を繰り返し、相関情報が十分に得ら
れたならば相関情報をデータ配置決定部204に渡す。
【0090】データ配置決定部204は、受け取った相
関情報とデータ格納情報記憶部205に記憶されている
データ格納情報をもとに新たなデータ配置を決定する。
データ配置決定部204は、新たなデータ配置を決定し
たならば、それをデータ配置変更部206とデータ格納
情報記憶部205へと渡す。
【0091】データ配置変更部205は、配置を変更す
るにあたり、まずデータアクセス部207に対しどのデ
ータの場所をどの様に入れ換えるかを通知する。この通
知を受けるとデータアクセス部207は、それらのデー
タに対する更新要求を一時的に禁止する。次に、データ
配置変更部206は、受け取ったデータ配置をもとにデ
ータを入れ換え、入れ換えが終了したならばその旨をデ
ータ格納情報記憶部205とデータアクセス部207へ
と伝える。
【0092】データ格納情報記憶部205は、データ配
置更新部206よりデータの入れ換えが終了した旨を受
け取ると、先にデータ配置決定部204より受け取った
データ配置に関する情報に基づきデータ格納情報を更新
する。また、データアクセス部207は、データの入れ
換えが終了したという通知を受け取ると、必要に応じて
データの配置が変更されたことによるデータアクセスの
ための管理情報の変更をした上で、それらへの更新要求
を可能な状態にする。
【0093】(第1〜第3の実施例の処理要求割り付け
部101の具体例)次に、第1〜第3の実施例の処理要
求割り付け部101の具体例を示す。
【0094】本実施例の処理要求割り付け部101の構
成例を図6に示す。また、他の構成例を図7に示す。な
お、構成を区別するために、図6の処理要求割り付け部
を1で表し、図7の処理要求割り付け部を11で表すこ
ととする。
【0095】処理要求割り付け部1,11は、1つ以上
の処理要求発生部2−1〜2−nが発生した処理要求を
受け取り、その処理要求を実行可能な1つ以上の処理要
求実行計算機10−1〜10−mの中から実行に最適な
計算機を選択し、受け取った処理要求を選択した計算機
に転送する。
【0096】まず、処理要求割り付け部の構成例を図6
に従って説明する。いずれかの処理要求発生部2から送
られて来た処理要求は、処理要求受信部3によって受け
取られる。処理要求受信部3は受信した処理要求を処理
要求送信部6と特徴パラメタ抽出部4に渡す。特徴パラ
メタ抽出部4は渡された処理要求から特徴パラメタを抽
出し、それを実行計算機選択部5に渡すと共に、そのデ
ータを実行履歴情報記憶部8に渡して該当処理要求の特
徴パラメタとして記録しておく。実行計算機選択部5
は、特徴パラメタ抽出部4から渡された特徴パラメタの
値と、実行履歴情報記憶部8に記録している過去の実行
履歴情報を比較することによって、該当処理要求を実行
する最適な計算機を選択する。選択した計算機を処理要
求送信部6に伝えると共に、実行履歴情報記憶部8に知
らせて該当処理要求を実行した計算機として記録してお
く。処理要求送信部6は、処理要求受信部3から渡され
た処理要求を、実行計算機選択部5から知らされた計算
機に対して送信することによって、処理要求の割り付け
処理を完了する。実行履歴情報管理部7は、実行履歴情
報記憶部8に記録している実行履歴情報の管理を行い、
定められた時間あるいは処理回数を越える古い実行履歴
情報の消去等を行う。処理要求を受け取った処理要求を
実行計算機10は、その処理要求実行すると共に、その
実行に要したコストを処理要求割り付け部の実行コスト
検出部9に伝える。実行コスト検出部9は、受け取った
実行コストを実行履歴情報記憶部8に伝えることによっ
て、該当する処理要求の処理要求実行履歴情報に実行コ
ストを記録する。処理要求実行計算機10は処理要求の
実行結果を処理要求発生部2に伝える必要がある場合
は、適当な通信手段を用いて直接処理要求発生部に伝え
る。
【0097】処理要求割り付け部の別の構成例を図7に
従って説明する。図7の構成例は、処理要求を処理要求
実行計算機に伝えるまでは図6の構成例と同じである。
処理要求を受け取った処理要求実行計算機10はその処
理を実行するが、図6の構成例とは違って、その実行に
要したコストを陽に処理要求割り付け部に知らせること
はしない。処理要求実行計算機10は、処理要求を実行
した処理結果を処理要求割り付け部11に送り返す。こ
の処理結果は処理要求割り付け部の処理結果受信部12
が受信して処理結果送信部13に伝えると共に、処理結
果を受信したことを実行コスト検出部9に伝える。処理
結果を受け取った処理結果送信部13は、該当する処理
要求を発生した処理要求発生部2に処理結果を送り返
す。処理結果を受信したことを知らされた実行コスト検
出部9は、該当する処理要求の実行に要したコストを求
め、その実行コストを実行履歴情報記憶部8に伝えるこ
とによって、該当する処理要求の処理要求実行履歴情報
に実行コストを記憶する。実行コストを求める手段とし
ては、処理要求を受け取った時間とその処理要求に対応
する処理結果を受け取った時間の差を実行に必要なコス
トとする方式や、該当する処理要求の実行を追い抜いて
実行を完了した処理要求の数を実行コストとする方式な
どを用いることが出来る。
【0098】図6および図7に示した構成例では、図8
(a)に示すように受信した処理要求から取りだした特
徴パラメタを実行履歴情報記憶部8に記録し、実行計算
機選択部5は実行履歴情報記憶部に記録した過去の実行
履歴の特徴パラメタを基に実行計算機の選択を行ってい
る。これに対して、実行履歴情報記憶部8には特徴パラ
メタではなく処理要求そのものを記録しておくこともで
きる。この場合、図8(b)に示すように処理要求受信
部3が受信した処理要求をそのまま実行履歴情報記憶部
8に記録し、実行計算機選択部5が過去の処理要求実行
履歴情報の特徴パラメタを見る場合は特徴パラメタ抽出
部4を通して再度特徴パラメタを抽出する。図9に示す
処理要求割り付け部の構成例は、図6の処理要求割り付
け部の構成を、処理要求をそのまま実行履歴情報記憶部
8に記録するように変更したものである。また、図10
に示す処理要求割り付け部の構成例は、図7の処理要求
割り付け部の構成を、処理要求をそのまま実行履歴情報
記憶部8に記録するように変更したものである。
【0099】以下には、処理要求割り付け部の一実施例
の動作原理を説明する。
【0100】本発明の処理要求割り付け部では、処理要
求割り付け部が新しい処理要求を受け取ると、まずその
特徴パラメタを抽出する。処理要求の特徴パラメタは一
つの処理要求に対して一つではなく、一般に複数個の値
の組である。
【0101】次に、新しい処理要求の特徴パラメタと、
記憶している過去の処理要求の実行履歴情報の持つ特徴
パラメタとを比較し、各計算機毎かつ各特徴パラメタ毎
に、新しい処理要求の特徴パラメタと最も近い特徴パラ
メタの値を持つ実行履歴情報を選び出す。
【0102】すなわち、該当する処理要求を実行可能な
計算機がM台であり、特徴パラメタがN個の値の組から
なるとき、新しい処理要求の特徴パラメタをX[n]
(0≦n<N)すると、M×N個の実行履歴情報H
[m,n](0≦m<M、0≦n<N)を次の条件を満
たすように選び出す。
【0103】
【数1】 ここで、Aは現在記憶している全ての実行履歴情報の集
合を、H[m,n][p]は実行履歴情報H[m,n]
の持つ特徴パラメタの値の組のp番目の値を、node
(F)は実行履歴情報Fに記録された処理要求の実行さ
れた計算機の番号を意味する。
【0104】こうして選び出したM×N個の実行履歴情
報H[m,n]の中から、まず、各特徴パラメタ毎に処
理要求を実行する候補となる計算機P[n](0≦n<
N)を次の条件を満たすように選択する。ここでcos
t(F)は、実行履歴情報Fに記録された処理要求の実
行に要したコストを意味する。
【0105】
【数2】 つまり実行履歴情報H[m,n]の中から、各特徴パラ
メタ毎に、コストの最も小さな実行履歴情報を選び、そ
の実行履歴情報に対応する処理要求を実行した計算機
を、各特徴パラメタの実行候補計算機P[n]とする。
ここで、実行候補として選ばれた実行履歴情報H[P
[n],n]の持つ実行に要するコストが、同じ特徴パ
ラメタを持つ他の実行履歴情報の持つ実行コストに比べ
て特に小さくなっている場合は、その実行履歴情報を実
行候補として選んで問題無い。しかし、H[P[n],
n]の持つ実行に要するコストが他の実行履歴情報の持
つコストと比べて有意な差が見られない場合、言い替え
れば、特にコストの小さな実行履歴情報がない場合に
は、単に最小のコストを持つ実行履歴情報を選んでも、
それが実際に最適な実行候補である可能性は小さい。そ
こで、そのような可能性が少い実行履歴情報を実行候補
計算機から外すために、たとえば次のような条件を満た
さない実行候補計算機P[n]は、実行候補計算機から
外す。
【0106】
【数3】 つまり、同じ特徴パラメタを持つ実行履歴情報H[m,
n]の持つコストの平均値が、実行候補となった実行履
歴情報H[P[n],n]の持つコストと比べて、定め
られた値T倍以上大きな場合は有意な差があると考え、
無い場合は実行候補計算機から外す。Tは例えば1.1
というような値を持つ。アルゴリズム上は、実行候補計
算機がない場合は、P[n]の値は−1のような計算機
番号としては有効でない値を入れておく。
【0107】こうして選ばれたN個の実行候補計算機P
[N]から、実際に実行する計算機を選び出す。このと
き、各特徴パラメタの重み情報W[N]を用いる。W
[N]の各要素W[k]は、それぞれ処理要求のk番の
特徴パラメタの値と、その処理要求を実行する計算機番
号との相関の強さを表す。P[N]とW[N]の対応す
る要素を、W[N]の値の大きなものから順に並べたも
のをPP[N]とWW[N]とすると、PP[N]とW
W[N]から実際に実行する計算機を選び出す手続をC
言語で記述すると次のようになる。
【0108】
【数4】 ここで、random( )は0から1の間の実数値を
とる乱数を発生する関数であるとする。実行する計算機
の番号を代入する変数をpickednodeとして、
初期値はどの計算機番号でもない−1を入れておく。重
みの大きな候補から順に、乱数を発生させてその値が重
みより小さいならばその計算機を選択し、そうでない場
合は次に重みの大きな候補について同様に選択を続け
る。最後まで候補が決まらない場合は、適当な方法で実
行する計算機を選択する。ここで示した手続きの例で
は、乱数でM台の計算機の中のひとつを選んでいる。
【0109】以下には、本発明をリモート・プロシージ
ャ・コール(RPC)による処理要求の割り付け部に適
用した場合の一実施例を述べる。
【0110】図11に処理要求割付部の構成を示す。図
11の構成は、図10の構成に対して処理要求表(記憶
部)26と処理要求表管理部25がつけ加わったもので
ある。図10の処理要求割付部は、単一の種類の処理要
求の割り付けを行う場合の構成であり、これを複数の種
類の処理要求を扱えるようにしたのが図11の構成であ
る。
【0111】処理要求受信部3は、処理要求発生部2か
ら結合路14を通して伝えられる処理要求パケットを受
け取る。例えば結合路としてイーサネットを用いる場合
には、UDPプロトコルの特定ポートに到着するパケッ
トを受信する。パケットは図12(a)に示すようなバ
イト列の構造を持つデータであるが、RPCの処理要求
パケットはこのバイト列をたとえば図12(b)に示す
ような構造を持つデータと解釈する。すなわち、パケッ
トの先頭には処理要求の種別を示すデータが入ってい
る。図12(b)の例は、proc1と呼ぶ処理の種別
であることを示している。実際にはproc1に対応す
る一意の識別番号が、パケットの先頭の4バイトを占め
る数値として記録される。その後には、処理要求に付随
する引数が必要な個数並ぶ。図12(b)の例では、
x,y,zで表している3つの4バイト長のデータが並
んでいる。RPCのパケットの構造は、ここで示したも
の以外にも多くの構造があるが、本発明の方式はどのよ
うな構造のパケットにも適用可能である。
【0112】RPCのパケットのどの部分に要求の種別
が入っているかは固定であるので、パケットを受信した
処理要求受信部3はそのパケットから要求の種別を取り
出すことができ、それを処理要求表26に伝える。ここ
で、処理要求受信部は複数のポートに到着する処理要求
パケットを受信するように構成することも可能である。
この場合、各ポート毎にそのポートに到着する処理要求
に関する情報を記録した処理要求表を作成しておき、処
理要求受信部はパケットを受信すると、それを受信した
ポートに対応する処理要求表に要求の種別を伝えるよう
な構成も可能である。
【0113】処理要求表26は図13に示すように、要
求の種別、引数情報、重み情報、実行計算機情報、実行
履歴情報ポインタの5種類の情報の対応関係を記録する
表である。
【0114】要求の種別は、各処理要求のパケットの先
頭の要求の種別を示す値である。図13の例ではpro
c1やproc2がこれに当たるが、実際にはproc
1やproc2に対応する数値が記録される。引数情報
は、要求の種別毎にその引数のデータ型を記録してい
る。例えば図13の例では、proc1の引数は3つあ
り、そのデータ型は順にint(整数型)、strin
g(文字列型)、float(浮動小数点型)であるこ
とを示している。実際にはそれぞれint,strin
g,floatに対応するように割り当てられた数値の
配列として実現する。
【0115】図13の例に示されている引数情報はin
tやfloatのような構造を持たない型のみである
が、図14(a)に示すような構造体の場合には、図1
4(b)に示すように構造体であることを示す数値(図
ではstructと記述している)、構造体のメンバの
数(図の例では2)、メンバのデータ型に対応する数値
(図の例ではint、charと記述している)の組と
して表現する。図14(c)に示すような配列の場合
は、図14(d)に示すような配列であることを示す数
値(図ではarrayと記述している)、要素数を示す
数値(図の例では10)、要素のデータ型に対応する数
値(図ではintと記述している)の組として表現す
る。構造体や配列はその構成要素が構造体や配列であっ
ても構わない。
【0116】多くのRPCシステムでは、図14(e)
に示すようなインタフェース記述から実際に通信に用い
るパケットの形式を決定する。この処理は通常RPCコ
ンパイラと呼ぶプログラムによって行われる。RPCコ
ンパイラは図15に示すようにRPCのインタフェース
記述を入力とし、そのインタフェース記述に対応するパ
ケット形式で処理要求を送信するためのクライアントス
タブと、それを受信するためのサーバスタブ、およびク
ライアントとサーバで共通に使われる情報を記述したヘ
ッダファイルを出力する。ONC RPCではrpcg
en、DCERPCではidlと呼ぶプログラムが、こ
こで言うRPCコンパイラに相当する。
【0117】本実施例では図15に示すように、RPC
コンパイラは、上記の他にパケット情報も出力する。パ
ケット情報は図16に示すように、処理要求表の要求の
種別の引数情報に登録すべきデータから構成される。す
なわち、図14(e)のようにインタフェース記述が与
えられた場合は、要求の種別としてはproc1、引数
情報としてはint,string,floatの組が
生成される。先にも述べたように、実際はproc1,
int,string,floatそれぞれに対して一
意に識別できるような数値が割り当てられている。図1
1の構成図において、処理要求表管理部25がパケット
情報を読み込んで、その中の要求の種別と引数情報を処
理要求表26に登録する。
【0118】図13の処理要求表の重み情報は、要求の
種別が持つ各引数の重みを示す数値である。処理要求を
割り付けるべき処理要求実行計算機を予測する場合に、
どの特徴パラメタに注目すべきかを示している。重みの
情報は特徴パラメタの各要素と1対1に対応する要素を
持つ配列である。図13のproc1の例で引数は3つ
であるが重み情報は4要素のベクトルであるのは、特徴
パラメタはすべての引数に加えて、その中の一部の引数
のビット位置を変更した数値をも含むためである。ここ
では整数型の引数に関してはそのビット位置を変更した
物も特徴パラメタに加えているため、重み情報は4要素
のベクトルになっている。RPCパケットから特徴パラ
メタを取り出す方式、ビット位置変更の方式、およびど
の特徴パラメタに関してビット位置変換を行った特徴パ
ラメタを生成するかに関しては後で述べる。
【0119】図13の処理要求表の実行計算機情報は、
要求の種別毎にそれを実行可能な処理要求実行計算機を
列挙した物であり、実際には処理要求の転送に必要な計
算機のネットワークアドレスやその計算機上でのポート
番号といった情報を持つ。例えば図13のproc1の
1番目の実行計算機情報は、計算機のネットワークアド
レスが62.31で、ポート番号が70であることを示
している。
【0120】図13の処理要求表26の実行履歴情報ポ
インタは、実行履歴情報記憶部8に記憶されている実行
履歴情報で各要求の種別に属するもののグループを指し
示している。実行履歴情報は図17に示すように、処理
要求の内容、その処理要求を実行した計算機の番号、そ
の実行に要したコスト(例えばここでは実行に要した時
間)、処理結果を送り返すのに必要なその処理要求発生
部の情報(例えばここではネットワークアドレスとポー
ト番号)からなる。処理要求をそのまま記録するのでは
なく、その処理要求から取り出した特徴パラメタ、ある
いはその特徴パラメタのうち実行計算機の予測に用いる
重みの大きなもののみを取り出したものでも構わない。
【0121】図18に処理要求表を中心とした情報の流
れを示す。この図18は図11中で処理要求実行計算機
の決定に必要な部分を抜き出し、その中のモジュール間
で受け渡す情報を示したものである。以下、図11と図
18を参照しながら本実施例の動作を説明する。
【0122】処理要求表26の中に記録される情報は、
図15に示すようにRPCコンパイラがパケット情報と
して生成する。このパケット情報はファイル等の形態で
生成され、処理要求割り付け部の処理要求表管理部25
によって読み込まれ、処理要求表26に登録される。こ
のとき処理要求表26の重み情報の初期値は、プログラ
マやシステム管理者が与えても構わないし、あるいは全
ての要素を一定の初期値(例えば0.9)にしても構わ
ない。実行計算機情報は、プログラマやシステム管理者
が与えても構わないし、あるいはネームサーバ等によっ
てその要求を実行できる計算機を調べて登録するような
実施方法もある。また、各処理要求実行計算機10が自
分の実行できる要求の種別を処理要求割り付け部に知ら
せ、その情報を基に処理要求表26に記入するような実
施方法も可能である。処理要求表26の実行履歴情報ポ
インタの初期値は、実行履歴情報記憶部8に該当する要
求の種別の実行履歴情報が残っている場合はそれを指す
ように、残っていない場合は空の実行履歴情報の集合を
指すようにする。
【0123】処理要求受信部3が処理要求発生部2から
処理要求のRPCパケットを受信すると、その処理要求
パケットを次段の第1の特徴パラメタ抽出部28と処理
要求送信部6に渡す。また、処理要求とそれを出力した
処理要求発生部を、新しい実行履歴情報として実行履歴
情報記憶部8に登録する。さらに、受信した処理要求パ
ケットの先頭にある処理要求の種別を示す情報を取り出
し、これを処理要求表26に渡す。
【0124】処理要求表26は、処理要求受信部3から
受け取った要求の種別をキーとして処理要求表を引き、
その結果得られる引数情報を2つある特徴パラメタ抽出
部に、重み情報を実行計算機選択部5に、実行計算機情
報を処理要求送信部6に、実行履歴情報ポインタを実行
履歴情報記憶部8にそれぞれ渡す。
【0125】処理要求パケットと引数情報をそれぞれ処
理要求受信部3と処理要求表26から受け取った第1の
特徴パラメタ抽出部28は、受け取った処理要求の特徴
パラメタを抽出し、実行計算機選択部5に渡す。
【0126】処理要求パケットは図19に示すようなバ
イト列である。その先頭には要求の種別を示すデータが
ある。例えば先頭の1ワード(4バイト)が要求の種別
を示すとすると、図19の例では10進数に直して37
2(16進数で174)が要求の種別を表す値である。
ここでは372はproc1を表すものとする。要求の
種別を示すデータの後には、その要求に付随する複数の
引数が続く。proc1の場合、処理要求表の引数情報
にも書かれているように、第1引数は整数型(in
t)、第2引数は文字列型(string)、第3引数
は実数型(float)である。各データ型のネットワ
ークパケット上での表現方式は各種のものがあり、本発
明はどのような表現方式にも適用できる。ここでは、整
数および実数は4バイトのデータとして表現され、文字
列は4バイトの整数によって表された文字列長と、その
後に続く1バイトで表現された文字の並びからなるもの
とする。例えば図19の例では、第1引数は整数値67
00、第2引数は文字列“abcdefg”、第3引数
は実数値12.5である。
【0127】特徴パラメタ抽出部のもう一つの入力デー
タである引数情報は、要求の種別毎にその各引数の型を
示す情報を並べたものである。この引数情報は、処理要
求のデータ構造の情報の一例であり、この情報を参照し
て処理要求から基本データ単位を取り出して、この各基
本データ単位を特徴パラメタとする。例えば図20に示
すように、整数型は1、実数型は2、文字列型は3とい
うように符号化しておくと、proc1の引数情報は
1,3,2の3つの値を持つベクトル(あるいは配列)
になる。
【0128】以上の2種類の情報を受け取った特徴パラ
メタ抽出部は、図21に示すように動作して特徴パラメ
タを抽出し、実行計算機選択部5に渡す。すなわち特徴
パラメタ抽出部は処理要求パケットの引数部(図21で
はP)と引数情報(図21ではT)を入力とし、引数情
報の各要素に対応する処理要求パケットの引数部を順に
切り出し、それに対する特徴パラメタの値を順次出力し
て行く。例えば引数情報に記述された引数のデータ型が
整数型(図21の例では1)の場合は、処理要求パケッ
トの引数部から4バイトのデータを切り出し、それを1
ワードの整数値としてそのまま特徴パラメタの値として
出力する。図21の例には出てこないが、文字型や列挙
型にも同様に必要なバイト数のデータを切り出し、それ
を整数値として読み、その値を特徴パラメタとして出力
する。実数型(図21の例では2)の場合も同様に4バ
イトのデータを切り出し、それを単精度の実数値として
解釈し、その値を特徴パラメタとして出力する。倍精度
等の場合も同様である。
【0129】文字列型(図21の例では3)の場合はい
くつかの実施方式を用いることが出来る。図21の例で
は文字列の先頭の4バイト(4バイトに満たない場合は
0や空白文字等を補う)を1ワードの整数値として読
み、その値を特徴パラメタとして出力する。このよう
に、あらかじめ決められた長さの文字列に切揃えて、そ
れを数値として読み変えて特徴パラメタにすることがで
きる。文字列の切揃え方には、先頭の一定長の文字列を
切り出す方法、最後の一定長の文字列を切り出す方法、
先頭の一定長と最後の一定長を切り出して繋げたものを
用いる方法がある。また、このようにして切り出した文
字列だけでなく、文字列の長さも特徴パラメタとして加
える方式もある。文字列を数値化するのではなく、その
まま特徴パラメタとして実行計算機選択部5に渡し、実
行計算機選択部5は文字列を辞書式順序で比較すること
によって実行計算機の選択を行う方式もある。
【0130】引数情報に記述されるデータ型には、図2
1の例には出てこないが、配列や構造体のような複合型
のデータも存在する。固定長の配列の場合には、そのす
べて要素の特徴パラメタを取り出し、それらを配列の特
徴パラメタにするのが最も簡単な実施方法である。固定
長あるいは可変長の配列の場合、文字列型の場合のよう
に、先頭の一定個数、あるいは最後の一定個数、あるい
は先頭の一定個数と最後の一定個数の合わせたものを特
徴パラメタにする方式もある。また可変長の配列の場合
には、配列の大きさを特徴パラメタに加えることも出来
る。
【0131】構造体の場合は、それを構成するそれぞれ
の要素の特徴パラメタを順次取り出して、それらを構造
体の特徴パラメタとする。構造体の配列や文字列の配列
のように組み合わせた場合も同様の手順で特徴パラメタ
を抽出することが出来る。
【0132】本実施例では、特徴パラメタの内、いくつ
かのものについては、その値のビット位置を入れ換えた
値も特徴パラメタに加える。ビット位置を入れ換えたも
のを特徴パラメタに加えることによって、例えば引数の
上位のビットの値と、その処理要求の実行に適した計算
機の間に相関関係がある場合は、同じ計算機で実行する
のが望ましい処理要求の特徴パラメタの値が近くなるよ
うにでき、実行計算機選択部5の判断能力を強化するこ
とが出来る。また、実行計算機と相関関係のある引数の
特徴パラメタのビット位置を入れ換えたものは、実行計
算機との相関関係が無いランダムな特徴パラメタとな
る。逆に、ビット位置を入れ換えたものが実行計算機と
相関関係がある場合は、ビット位置を入れ換える前の特
徴パラメタは実行計算機との相関関係が無いランダムな
特徴パラメタとなる。そのため、各特徴パラメタの値と
実行計算機の間の相関関係を比べる際の基準となるラン
ダムな成分が必ず特徴パラメタの中に存在することにな
る。このようなランダムな成分が存在することによっ
て、すべての特徴パラメタと実行計算機の相関関係が同
程度で、すべての特徴パラメタが実行計算機と一様に相
関関係があるのか、あるいは一様に相関関係が無いのか
判断がつかない状況を無くすことが出来る。
【0133】ビット位置の入れ換え方には各種の方式が
あり、本発明はどのような入れ換え方をも適用できる。
ビット位置の入れ換え方として有用な方式の例は、図2
2に示すようにビット位置を反転(ビットリバース)す
る方式である。すなわち、特徴パラメタの上位のビット
と下位のビットを反転し、その結果得られたビット列を
数値として読みかえたものを特徴パラメタの値とする。
【0134】ビット位置を変換したものを特徴パラメタ
に加える引数の決め方には、引数から得られたすべての
特徴パラメタのビット位置を反転したものを特徴パラメ
タに加える方式、あらかじめ定められた特定のデータ型
に関してビット位置を反転したものを特徴パラメタに加
える方式、プログラマやシステム管理者が指定した引数
に関してビット位置を反転したものを特徴パラメタに加
える方式等がある。図21の例では、整数型の引数に対
してビット位置を反転したものを特徴パラメタに加える
方式を用いている。
【0135】ランダムな成分を特徴パラメータとして加
えることによる効果を得るためには、乱数を発生させて
特徴パラメータとする実施法も可能である。
【0136】引数情報と実行履歴情報を処理要求表26
と実行履歴情報記憶部8から受け取る第2の特徴パラメ
タ抽出部29は、上で述べた第1の特徴パラメタ抽出部
と同様の手順で特徴パラメタの抽出を行う。実行履歴情
報記憶部8は、処理要求表26から受け取った実行履歴
情報ポインタの指す特定の要求の種別に属する複数の実
行履歴情報を順次第2の特徴パラメタ抽出部29に送
る。実行履歴情報を受け取った第2の特徴パラメタ抽出
部29は、その中に記録されている処理要求から第1の
特徴パラメタ抽出部28と同じ方式で特徴パラメタを抽
出し、それを実行計算機選択部5に渡す。このとき、そ
の処理要求の実行履歴情報に記録されている実行計算機
と実行コストも合わせて実行計算機選択部5に渡す。
【0137】実行計算機選択部5は図23に示すような
構成を持つ。実行計算機選択部5は、第1の特徴パラメ
タ抽出部からは新しく到着した処理要求の特徴パラメタ
を受け取り、第2の特徴パラメタ抽出部からは過去に実
行した同じ要求の種別を持つ実行履歴情報から取り出し
た特徴パラメタと実行計算機と実行コストを順次受け取
り、近似コスト選択部30に渡す。
【0138】近似コスト選択部30は、複数ある特徴パ
ラメタの内のひとつと、複数ある過去に同じ種別の処理
要求を実行した計算機のひとつとに関して、その実行計
算機で過去に実行した実行履歴情報で該当する特徴パラ
メタ値が最も近いものの実行コストを選び出す。すなわ
ちi番目の特徴パラメタとj番目の実行計算機を担当す
る近似コスト選択部30は、図24に示すような動作を
行う。新しい処理要求の特徴パラメタのi番目の特徴パ
ラメタの値をP、j番目の実行計算機で過去に実行した
同じ種別の処理要求の実行履歴情報の集合をHとする。
H中の各々の実行履歴情報hに対して、第2の特徴パラ
メタ抽出部によって取り出されたhの持つi番目の特徴
パラメタの値とPとを比較し、その差が最も小さな実行
履歴情報の実行コストを近似コストCとして出力する。
図24に示した方式では、該当する実行計算機で過去に
実行した処理要求が無い場合は、実行コストとして0を
出力する。図25に示す方式を用いると、過去に実行し
た処理要求がない場合は∞(最も大きな実行コスト)を
出力する。実行コストが0の場合はその実行計算機に優
先的に処理要求を割り付けられ、実行コストが∞の場合
はその実行計算機には処理要求を割り付けられないこと
になる。図24および図25に示した方式では、特徴パ
ラメタの値の比較は算術的に行っている。この比較には
ハミング距離等のような比較方式を用いることも出来
る。また、文字列に関しては辞書式順序を基にした比較
を用いることも出来る。このような複数の比較方式を併
用する方式も可能である。
【0139】実行計算機選択部5はすべての特徴パラメ
タを実行計算機選択に用いる実施方式の他に、先頭の一
定個数の特徴パラメタのみを用いる実施方式、重み情報
の大きな一定個数の特徴パラメタのみを用いる実施方
式、あるいは重みが一定の値よりも大きな特徴パラメタ
のみを用いるような実施方式もある。
【0140】近似コスト選択部30で得られた近似コス
トは、特徴パラメタ毎に最小コスト計算機選択部31に
集められる。最小コスト計算機選択部31はこれらの近
似コストの中から、最も低い近似コストを与える実行計
算機を選び、その特徴パラメタに関する最小コスト計算
機番号Nとして出力する。最小コスト計算機選択部31
の動作は図26に示すように、最小の近似コストを与え
る実行計算機番号を選び出す部分(S4〜S7)と、そ
の最小性が意味のあるものか否かを判定する部分(S8
〜S10)から成る。j番目の特徴パラメタを担当する
最小コスト計算機選択部31に対してk番目の実行計算
機を担当する近似コスト選択部30から渡される近似コ
ストをIkとすると、図26のステップS4からS7
は、各実行計算機に関する近似コストI1,I2,・・
・Im(mは実行計算機の数とする)の中から最もコス
トの小さなものを選び出し、そのコストを与える実行計
算機の番号を実行候補計算機番号Nとして出力する。そ
の後、その最小の近似コストが他の近似コストに比べて
特別に小さいのか否かで、それが意味のある最小性を持
つかどうかを判断する。そのためにまず、ステップS4
からS7でI1からImまでの合計Sを求めておき、そ
れをmで割った平均値S/mと、選び出した実行計算機
Nの最小近似コストCを予め与えられた定数倍(例えば
1.1倍)した値とをステップS8で比べ、S/mの方
が大きければNをj番目の特徴パラメタに関する最小コ
スト計算機として出力する。そうでない場合は実行計算
機Nの近似コストCが有意な最小性を持たないと判断
し、どの実行計算機も選ばないことを意味する計算機番
号−1を出力する。
【0141】こうして最小コスト計算機選択部31によ
って各特徴パラメタ毎に選ばれた実行候補計算機と、処
理要求表26から渡される各特徴パラメタの重み情報を
元に、計算機番号選択部32は処理要求を割り付けるべ
き実行計算機番号を選び出す。計算機番号選択部32は
図27に示すように、まず各特徴パラメタに関する実行
候補計算機とその特徴パラメタの重みの組を、重み順ソ
ート部33によって、重みの大きな物から順に並べかえ
る。その出力は図27に示すように重い物から順に確率
的選択部34に入れられ、実行計算機番号を選択する。
確率的選択部34は図28に示すように、実行候補計算
機番号C、その計算機番号を選び出した特徴パラメタの
重みW、乱数発生部35で発生した0.0から1.0の
間の値をとる乱数R、前段の確率的選択部34で選んだ
実行計算機番号Pを入力とし、この段で決定した実行候
補計算機番号Nを出力する。最上流の確率的選択部34
のPには、どの実行計算機も選ばれていないことを示す
−1が入力される。確率的選択部34の動作は図28に
示すように、前段で実行計算機が決定された場合はその
計算機番号を、そうでない場合で乱数Rが重みWより小
さな場合は候補計算機番号Cが、そのいずれでもない場
合はどの計算機も選ばないことを示す−1が出力Nとな
る。最下流にはどの特徴パラメタに関しても実行計算機
が選ばれなかった場合に備えて、重みが1.0で候補計
算機番号は任意計算機選択部36の選択結果である確率
的選択部34を設ける。
【0142】任意計算機選択部36は、どの特徴パラメ
タに関する確率的選択部34も実行計算機を選択しなか
った場合に、任意の計算機を選び出す働きを持つ。図2
7に示すように任意計算機選択部36が乱数を用いてラ
ンダムに実行計算機を決定する場合は、ランダムな割付
けとなる。任意計算機選択部36は、今までに各実行計
算機に割り付けた偏りをもとに、各処理要求実行計算機
の負荷を予測し、負荷が小さいと予測される実行計算
機、即ち過去に割り付けた処理要求の少ない実行計算機
や現在割り付けて処理中の処理要求の少い実行計算機を
優先的に選択したり、各実行計算機の負荷情報を知り、
それを元に負荷の小さな実行計算機を優先的に選択する
実施方式もある。
【0143】こうして選択された実行計算機番号は処理
要求送信部6に送られる。処理要求送信部6はこの実行
計算機番号を用いて処理要求表26から渡された実行計
算機情報を引き、該当する計算機に対して、処理要求受
信部3から渡された処理要求を転送する。このとき、実
行履歴情報記憶部8に記憶した該当する処理要求の実行
履歴情報に、処理要求を転送した実行計算機を登録す
る。
【0144】こうして割り付けられて転送された処理要
求は、処理要求実行計算機10によって実行し、その実
行結果は処理要求割り付け部11に送り返される。処理
要求割り付け部の処理結果受信部12は処理結果を受信
し、その処理結果を実行コスト検出部9と処理結果送信
部13に送る。実行コスト検出部9はその処理結果に対
応する実行履歴情報を実行履歴情報記憶部から取り出
し、その実行コストを記録する。ここでは実行に要した
時間を実行コストとする方式をとる。そのために、処理
要求送信部6は処理要求を転送する際に該当する実行履
歴情報の実行コスト欄にその時点の時刻を記録してお
く。実行コスト検出部9は実行コスト欄に記録された時
刻と現在の時刻の差を実行コストとして実行コスト欄に
記録し直す。本実施例では実行時間を実行コストとした
が、処理要求実行計算機10が実行コストを処理結果に
添えて送り返す方式もある。この場合処理要求実行計算
機10で任意のデータを実行コストとして与えることが
出来る。実行コストの例としては、実行中に必要となっ
たディスク参照回数、他のノードのデータのアクセス回
数、ロックの待ちの回数等を用いることが出来る。
【0145】本実施例のように処理結果を処理要求割り
付け部が中継して処理要求発生部に送り返す方式以外
に、処理要求実行計算機が処理要求発生部に直接処理結
果を送り返し、処理要求割り付け部はその間の通信路を
モニターし、処理結果のパケットを見つければそれを取
り込んで実行コストを検出するような実施方式も可能で
ある。
【0146】本実施例では、処理要求実行計算機に送っ
た処理要求とその処理結果の対応は、実行履歴情報を参
照することで判断する。しかし、この方式では同時に複
数のパケットを同じ処理要求実行計算機に割り付けて多
重処理を行なうことが出来ない。これを可能にするため
には、図29(a)に示すように処理要求パケットに一
意の識別番号を持たせる。処理要求実行計算機は図29
(b)に示すように処理要求に付いて来た識別番号を処
理結果に持たせて返す。この一意の識別番号を用いるこ
とにより、同時に複数の処理要求を同じ実行計算機に割
り付けた場合でも、実行履歴情報に記録された処理要求
と処理結果の対応をとることが可能になる。このような
識別番号を用いて同じ計算機に対する処理要求を識別す
る方式以外に、処理要求割り付け部と処理要求実行計算
機を結ぶ通信チャネルを論理的に多重化し、同時に同じ
計算機に対する処理要求も異なる通信チャネルを用いる
ことで識別することが可能になる。
【0147】処理要求を割り付ける処理要求実行計算機
の選択に用いる各特徴パラメタの重み情報は、プログラ
マやシステム管理者が与える実施方法もあるが、このよ
うな値は自動的に決定できることが望ましい。そのため
に、図30に示すような重み計算部(図11の27)を
用いる。重み計算部27は実行履歴情報記憶部8に記憶
している過去の実行履歴情報から、どの特徴パラメタと
最適な処理要求実行計算機との間に相関関係が強いかを
判断し、相関関係が強い特徴パラメタの重みほど大きく
なるように設定する。重み計算部27は大きく各特徴パ
ラメタ毎のクラスタ数を求めるクラスタ計算部37と、
そのクラスタ数を正規化して重み情報に変換する重み正
規化部38の2つの部分から成る。j番目の特徴パラメ
タに対応するクラスタ計算部37は、図31に示すよう
な構成を持ち、重み情報を計算したい要求の種別に属す
るすべての実行履歴情報を入力とする。それらの実行履
歴情報は特徴パラメタ順ソート部41に入り、j番目の
特徴パラメタの順に並べ変えられ、順次計算機番号変化
計数部42に送られる。計算機番号変化計数部42は実
行履歴情報を順次受け取り、その中に記録されている実
行計算機が変化する回数をクラスタ数として出力する。
j番目の特徴パラメタと最適な実行計算機の間に相関関
係がある場合には、j番目の特徴パラメタでソートすれ
ば同じ実行計算機を持つ実行履歴情報が並ぶ可能性が高
いため、クラスタ数が小さくなる。
【0148】こうして得られた各特徴パラメタのクラス
タ数は、重み正規化部38に送られると共に、最大値検
出部40と最小値検出部39にも送られる。最大値検出
部40は各特徴パラメタに対するクラスタ数の最大値
を、最小値検出部39は各特徴パラメタに対するクラス
タ数の最小値を求めて計算する。各特徴パラメタに対す
る重み正規化部38は、その特徴パラメタのクラスタ数
Cと、最小値検出部の出力min、最大値検出部の出力
maxを入力とし、クラスタ数を正規化処理してその特
徴パラメタの重みWとして出力する。この正規化出力
は、一例として次のような式を用いることが出来る。
【0149】W=0.9*(max−C)/(max−
min)+0.05 この式を用いると、クラスタ数が最小の特徴パラメタの
重みが0.95に、クラスタ数が最大の特徴パラメタの
重みが0.05になるよう線形に正規化される。同様の
式を用いて0.0から1.0の間の値を持つような線形
の正規化を行うことも出来る。また非線形の関数を用い
た正規化を行い、たとえば、クラスタ数が大きな間は重
みがほとんどかからないようにするなどの実施方式もあ
る。
【0150】実行履歴情報記憶部8に記憶する実行履歴
情報のうち、古い物は実行履歴情報管理部7によって削
除される。削除する実行履歴情報は、一定の時間以上前
に記録された物、あるいは実行履歴情報記憶部に入れる
実行履歴情報の個数を定めておく場合に、その個数を越
える古い物等が対象になる。本実施例では、実行履歴情
報記憶部8に記憶できる実行履歴情報の個数(保存履歴
数)が一定であるとしている。保存履歴数はプログラマ
やシステム管理者が与える実施方法もあるが、このよう
な値は自動的に決定できることが望ましい。そのため、
図32に示すような構成を持ち、保存履歴数を自動的に
調整する保存履歴数決定部を用いる。
【0151】保存履歴数決定部は現在の保存履歴数Wと
それよりも小さな保存履歴数wとを管理し、新しい処理
要求に対して過去W個の実行履歴情報を用いて実行計算
機を選択した場合の予測コストと、過去w個の実行履歴
情報を用いて実行計算機を選択した場合の予測コストを
求め、実際に割り付けて実行するのに要した実行コスト
との差の統計量を基に保存履歴数を変更して行く。以
下、この動作を図32を用いて説明する。
【0152】保存履歴数決定部は実行計算機選択部1と
実行計算機選択部5の2つの実行計算機選択部を持つ。
これらの実行計算機選択部は図23や図27に示したも
のと同等の構成を持つが、その出力は実行計算機番号で
はなく、選ばれた実行計算機での処理要求の実行に要す
ると予測した実行コストである。すなわち、図23にお
いて実行計算機選択部5の最小コスト計算機選択部は、
最小コストを与える実行候補計算機番号だけでなくその
最小の実行コストをも出力する。さらに図27において
各特徴パラメタに関する実行候補計算機の番号だけでな
くそれに付随する実行コストも一緒に重み順ソート部で
ソートし、確率的選択部も実行候補計算機番号と実行コ
ストを組みにして扱う。実行計算機選択部1は図11に
示すような処理要求割り付け部に用いる実行計算機選択
部8と兼用することが出来る。
【0153】新しい処理要求を受信した実行計算機割り
付け部は、実行履歴情報記憶部に記憶しているW個の実
行履歴情報を用いて実行計算機選択部1によって、その
処理要求の実行に必要な予測コスト1を求める。この
時、その予測コスト1で実行できると推定した実行計算
機番号を処理要求送信部に送り、処理要求の割付けを行
う。同時に実行計算機選択部5はw個の実行履歴情報を
用いてその処理要求の実行に必要な予測コスト2を求め
る。こうして求めた予測コスト1および予測コスト2
と、実際にその処理要求を実行計算機選択部1で選択し
た実行計算機で実行するのに要した実行コストとの差
を、それぞれ偏差計算部1と偏差計算部2で求める。偏
差計算部は予測コストと実コストの算術的な差の絶対値
を出力する。
【0154】各処理要求に関する偏差計算部1と偏差計
算部2の出力および実コストは、それぞれ平均計算部
1、平均計算部2、平均計算部3に渡される。平均計算
部は入力された値に対して、過去の一定個数分の平均値
を求めて出力する。つまり平均計算部1および平均計算
部2の出力は、それぞれ予測コスト1と予測コスト2の
実コストとの差の絶対値の平均となる。また平均計算部
3の出力は実コストの平均値となる。平均計算部1と平
均計算部2の出力は誤差率計算部1と誤差率計算部2に
渡される。誤差率計算部1および誤差率計算部2は、そ
れぞれ平均計算部1と平均計算部2から渡された予測コ
ストと実コストの差の平均値を、平均計算部3から渡さ
れる実コストの平均値で割った値を出力する。これらの
値をそれぞれ誤差率1および誤差率2と呼ぶ。誤差率は
予測値が実コストとどれくらいずれているかを示す指標
となる。
【0155】保存履歴数更新部は図33に示すように、
現在の保存履歴数Wと下位の保存履歴数wと誤差率1と
誤差率2を入力とし、望ましい保存履歴数WWと下位の
保存履歴数wwを計算し、それを新しい保存履歴数と下
位の保存履歴数として設定する。誤差率1と誤差率2を
それぞれEuとElとすると、予め与えられている満た
されなければならない誤差率Tに比べてElが小さな場
合(S12)は、現在の保存履歴数は大きすぎて期待す
る以上に良い予測値を与えていることになる。この時は
下位の保存履歴数wを新しい保存履歴数WWとし、wよ
りもさらに小さな数を新しい下位の保存履歴数wwとす
る(S13)。逆にEuがTよりも大きな場合(S1
4)は、現在の保存履歴数は小さすぎて期待する質の予
測値が出ていないことになる。この時は現在の保存履歴
数を新しい下位の保存履歴数wwとし、Wよりも大きな
数を新しい保存履歴数WWとする(S15)。
【0156】(発明の効果)(以上説明したように本発
明の処理要求割り付け部を用いれば、複数の計算機から
成る情報処理システムに於いて、処理要求とそれを実行
するのに最適な計算機の間に相関関係がある場合には、
その相関関係を自動的に検出し、処理要求を最適な計算
機に割り付けることができる。処理要求の割り付けに必
要な情報は自動的に検出するため、プログラマやシステ
ム管理者が割り付け手続きを与える必要がなく、情報処
理システム全体の持つ性能を容易に引き出すことが出来
る。) (第4の実施例)次に、本発明の第4の実施例を説明す
る。
【0157】本実施例のシステム全体図は、第1〜第3
の実施例で示したものと同様であり、本実施例と前述し
た実施例との相違は、処理要求割り付け部とデータ配置
決定部120およびデータ管理部117との間の協調の
仕方が異なる点にある。以下、主に、本実施例が前述し
た実施例と異なる点について説明する。なお、前述した
実施例の処理要求割り付け部と区別するため、本実施例
の処理要求割り付け部を301で表すこととする。
【0158】図1、図2、図3において、処理要求割り
付け部101は、新しい処理要求を受信すると、実行履
歴と比較して実行すべきアプリケーションプログラム1
16の存在する処理要求実行計算機110を選択して処
理要求の実行を指示した。
【0159】本実施例では、処理要求割り付け部301
に、各処理要求実行計算機110のデータ記憶装置11
8にどのようなデータが記憶されているかを表すデータ
配置情報を知る手段を持たせ、新しい処理要求を受信す
るとデータ配置情報と比較して実行すべきアプリケーシ
ョンプログラム116の存在する処理要求実行計算機1
10を選択して処理要求の実行を指示するように構成す
る。
【0160】図34に、本実施例の処理要求割り付け部
301の内部構成の一例を示す。処理要求割り付け部3
01には、データ配置情報を記録するデータ配置表30
3と、ルーティング情報を記録するルーティング表30
4と、これら表303,304に基づき新しく到着した
処理要求を実行すべき処理要求実行計算機110を決定
して処理要求の実行を指示する割り付け決定部302か
らなる。
【0161】データ配置表303は、例えば図35のよ
うな構成を持つ。データ配置表303には、各データベ
ースに関して、キーの値がどの範囲のデータは、どの処
理要求実行計算機のデータ記憶装置に記憶されているか
を示す情報が記録される。例えば図35の例では、AC
COUNTという名前のデータベースがあって、その主
キーの値が0から999の範囲のデータは0番の処理要
求実行計算機110のデータ記憶装置118にあること
を示している。
【0162】データ配置表303は、人手で作って処理
要求割り付け部301に与える方法も可能であり、ま
た、データ配置決定部120が新しいデータ配置を決定
した時にその情報を処理要求割り付け部301に伝えて
データ配置表303に記録する実施方法も可能であり、
さらに、各データ管理部117が自分がどのようなデー
タを管理するかを処理要求割り付け部301に伝えてデ
ータ配置表303に記録する実施方法も可能である。
【0163】ルーティング表304は、例えば図36の
ような構成を持つ。ルーティング表304には、処理要
求実行計算機110上のアプリケーションプログラム1
16が実行可能な処理要求の種類と、処理要求の割り付
けを行うときに使う引数の名前と、同じく処理要求の割
り付けのときに使うデータベースの名前を記録してい
る。
【0164】処理要求は、例えば図37に示すように、
処理要求の種類を示すヘッダと、処理要求の実行に必要
ないくつかの引数から構成される。図37の例では、預
金の引出しを行うWITHDRAWという処理要求は、
口座番号を示すACCOUNT_ID、窓口番号を示す
TELLER_ID、支店番号を示すBRANCH_I
D、引出し金額を示すAMOUNTの4つの引数を持
つ。
【0165】図36のルーティング表304は、預金の
引出しを行うWITHDRAWという処理要求は、AC
COUNT_IDという引数の値とACCOUNTとい
うデータベースと照らし合わせて処理要求の割り付けを
行うことを示している。すなわち、WITHDRAWの
処理要求が処理要求割り付け部301に到着すると、割
り付け決定部302はまずルーティング表304を見
て、WITHDRAWはACCOUNT_IDの値とA
CCOUNTデータベースを用いてルーティングするこ
とを知る。次に、処理要求の持つACCOUNT_ID
という引数の値を取り出す。その後、割り付け決定部3
02はデータ配置表303を見て、ACCOUNTデー
タベースのデータで、そのキーの値が処理要求のACC
OUNT_ID引数の値と同じものはどの計算機番号の
処理要求実行計算機に存在するかを調べる。こうして調
べた処理要求実行計算機に対して処理要求の実行を指示
する。
【0166】ルーティング表304は、人手で作成して
処理要求割り付け部301に記録するような方法が可能
である。
【0167】第1の実施例に示したような処理要求割り
付け部101は、必ずしも毎回最適な処理要求実行計算
機110を選び出せない確率的なアルゴリズムで動作し
ているのに対して、本実施例のような処理要求割り付け
部301は、ルーティング表304やデータ配置表30
3が正しく与えられれば必ず最適な処理要求実行計算機
110を選び出せる決定的なアルゴリズムで動作してい
る。決定的なアルゴリズムを用いる場合は、データの配
置が変更されてもすぐに新しいデータ配置に応じた処理
要求の割り付けが可能であるという効果が得られる。一
方、確率的なアルゴリズムの場合はルーティング表のよ
うな割り付けに関する情報を処理要求割り付け部に与え
る必要がないという効果が得られる。
【0168】また、本発明は上述した各実施例に限定さ
れるものではなく、その要旨を逸脱しない範囲で、種々
変形して実施することができる。
【0169】
【発明の効果】本発明では、処理要求を実行する最適な
計算機すなわち最も小さなコストでその処理要求を実行
することのできる計算機を選択し処理を割り当てる処理
要求割り付け手段と、データの自動最適配置を行うデー
タ配置決定手段とを設け、データの配置に応じた処理要
求割り付けとデータ再配置とのフィードバックループを
形成した。
【0170】これによって、データ配置決定手段による
データの自動最適配置によって、どのような処理要求が
どのような頻度で発生するかといった動的な特性に対し
て、それに対する最適なデータの分割配置を行うことが
でき各処理要求の実行性能が向上する。
【0171】また、処理要求割り付け手段は、新しいデ
ータ配置に従って各処理要求をそれを実行するのに適し
た計算機に割り付けることができるので、データの分散
配置の決定や処理要求の割り付け方法を与えなくても自
動的に処理の負荷分散ができ、各処理要求の実行時間に
関しても最適化される。
【0172】また、データ処理装置全体のチューニング
も自動化でき、システム管理も容易になる。
【図面の簡単な説明】
【図1】第1の実施例に係るデータ処理装置の構成例を
概略的に示す図
【図2】第1の実施例に係るデータ処理装置の他の構成
を概略的に示す図
【図3】第2の実施例に係るデータ処理装置の構成例を
概略的に示す図
【図4】第3の実施例に係るデータ処理装置の構成例を
概略的に示す図
【図5】第1〜第3の実施例に係るデータ管理部および
データ配置決定部の概略構成図
【図6】同実施例に係る処理要求割り付け部の構成例を
示す図
【図7】処理要求割り付け部の別の構成例を示す図
【図8】特徴パラメタ抽出の流れの変形例を示す図
【図9】処理要求割り付け部の別の構成例を示す図
【図10】処理要求割り付け部の別の構成例を示す図
【図11】処理要求割り付け部の詳細な構成例を示す図
【図12】処理要求パケットの例を示す図
【図13】処理要求表の内容を示す図
【図14】引数情報の例とRPCのインタフェース記述
の例を示す図
【図15】RPCコンパイラの機能の説明図
【図16】RPCのパケット情報の内容を示す図
【図17】実行履歴情報の内容を示す図
【図18】処理要求表に関するデータの流れを示す図
【図19】処理要求パケットの内容を示す図
【図20】特徴パラメタ抽出部の動作例の説明図
【図21】特徴パラメタ抽出部の動作を表すフロー図
【図22】ビット位置反転の例を示す図
【図23】実行計算機選択部の構成例を示す図
【図24】近似コスト選択部の動作を表すフロー図
【図25】近似コスト選択部の別の動作を表すフロー図
【図26】最小コスト計算機選択部の動作を表すフロー
【図27】計算機番号選択部の構成例を示す図
【図28】確率的選択部の動作を表すフロー図
【図29】RPCの処理要求パケットと処理結果パケッ
トの例を示す図
【図30】重み計算部の構成例を示す図
【図31】クラスタ計算部の構成例を示す図
【図32】保存履歴数決定部の構成例を示す図
【図33】保存履歴数更新部の動作を表すフロー図
【図34】第4の実施例に係る処理要求割り付け部の内
部構成の一例を示す図
【図35】データ配置表の構成例を示す図
【図36】ルーティング表の構成例を示す図
【図37】処理要求の構成例を示す図
【図38】従来のデータ処理装置の構成を示す図
【図39】従来のデータ処理装置の他の構成を示す図
【符号の説明】
101,101−1〜101−m…処理要求割り付け
部、102−1〜102−n,102−1−1〜102
−m−r…処理要求発生部、110−1〜110−m,
111,111−1〜111−l…計算機、114…結
合路、115,115−1〜115−l…通信路、11
6−1〜116−m…アプリケーションプログラム、1
17−1〜117−m…データ管理部、118,118
−1〜118−m…データ記憶装置、120…データ配
置決定部 201…アクセス要求受信部、202…相関情報記憶
表、203…相関情報管理部、204…データ配置決定
部、205…データ格納情報記憶部、206…データ配
置変更部、207…データアクセス部 301…処理要求割り付け部、302…割り付け決定
部、303…データ配置表、304…ルーティング表 1,11…処理要求割り付け装置、2…処理要求発生元
計算機、3…処理要求受信部、4…特徴パラメタ抽出
部、5…実行計算機選択部、6…処理要求送信部、7…
実行履歴情報管理部、8…実行履歴情報記憶部、9…実
行コスト検出部、10…処理要求実行計算機、12…処
理結果受信部、13…処理結果送信部、25…処理要求
表管理部、26…処理要求表、27…重み計算部、28
…特徴パラメタ抽出部1、29…特徴パラメタ抽出部
2、30…近似コスト選択部、31…最小コスト計算機
選択部、32…計算機番号選択部、33…重み順ソート
部、34…確率的選択部、35…乱数発生部、36…任
意計算機選択部、37…クラスタ計算部、38…重み正
規化部、39…最小値検出部、40…最大値検出部、4
1…特徴パラメタ順ソート部、42…計算機番号変化計
数部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】データを記憶するための複数のデータ記憶
    手段と、 いずれかの前記データ記憶手段と接続され、与えられた
    処理要求をアプリケーションプログラムを用いて実行す
    る手段および該処理要求を実行する該アプリケーション
    プログラムからの要求に基づき該実行に必要な該データ
    記憶手段内のデータへのアクセスを行うとともに該デー
    タへのアクセスの履歴に関する情報を蓄積するデータ管
    理手段を夫々有する複数の計算機と、 該複数の計算機を相互接続する結合手段と、 この結合手段に接続され、通信路を介して接続された少
    なくとも1つの処理要求発生手段から送られた処理要求
    を受付ける手段、過去の処理要求、該処理要求を実行し
    た前記計算機、その実行に要したコストを含む実行履歴
    を蓄積する手段および該処理要求発生手段から送られた
    新しい処理要求を受信すると該実行履歴と比較して実行
    すべき前記アプリケーションプログラムの存在する前記
    計算機を選択して該処理要求の実行を指示する手段を有
    する処理要求割り付け手段と、 前記計算機上の前記データ管理手段から前記データへの
    アクセスの履歴に関する情報を夫々受け取り、該情報を
    元にして最適なデータ配置を夫々決定し、該データ管理
    手段に対しこの決定したデータ配置に基づくデータの配
    置の変更処理の実行を夫々指示するデータ配置決定手段
    とを具備してなることを特徴とするデータ処理装置。
  2. 【請求項2】データを記憶するための複数のデータ記憶
    手段と、 いずれかの前記データ記憶手段と接続され、与えられた
    処理要求をアプリケーションプログラムを用いて実行す
    る手段および該処理要求を実行する該アプリケーション
    プログラムからの要求に基づき該実行に必要な該データ
    記憶手段内のデータへのアクセスを行うとともに該デー
    タへのアクセスの履歴に関する情報を蓄積するデータ管
    理手段を夫々有する複数の計算機と、 該複数の計算機を相互接続する結合手段と、 この結合手段に接続され、通信路を介して接続された少
    なくとも1つの処理要求発生手段から送られた処理要求
    を受付ける手段、各計算機に接続された前記データ記憶
    手段にはどのようなデータが記憶されているかを表すデ
    ータ配置情報を獲得する手段、該処理要求発生手段から
    送られた新しい処理要求を受信すると該データ配置情報
    と比較して実行すべきアプリケーションプログラムの存
    在する前記計算機を選択して処理要求の実行を指示する
    手段を有する処理要求割り付け手段と、 前記計算機上の前記データ管理手段から前記データへの
    アクセスの履歴に関する情報を夫々受け取り、該情報を
    元にして最適なデータ配置を夫々決定し、該データ管理
    手段に対しこの決定したデータ配置に基づくデータの配
    置の変更処理の実行を夫々指示するデータ配置決定手段
    とを具備してなることを特徴とするデータ処理装置。
JP6246845A 1994-09-16 1994-09-16 データ処理装置 Pending JPH0887473A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6246845A JPH0887473A (ja) 1994-09-16 1994-09-16 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6246845A JPH0887473A (ja) 1994-09-16 1994-09-16 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0887473A true JPH0887473A (ja) 1996-04-02

Family

ID=17154569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6246845A Pending JPH0887473A (ja) 1994-09-16 1994-09-16 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0887473A (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10275126A (ja) * 1997-03-31 1998-10-13 Nri & Ncc Co Ltd 負荷分散制御を行うクライアントサーバーシステム
JPH10334061A (ja) * 1997-06-04 1998-12-18 Fujitsu Ltd 負荷分散システム
JP2006268104A (ja) * 2005-03-22 2006-10-05 Nec Corp 指紋照合システム、指紋照合処理装置および指紋照合処理方法
JP2006297905A (ja) * 2005-03-23 2006-11-02 Canon Finetech Inc インクジェット印刷装置およびその予備吐出制御方法
JP2007265193A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ジョブ割当プログラム、ジョブ割当装置およびジョブ割当方法
JP2008204120A (ja) * 2007-02-20 2008-09-04 Hitachi Ltd コンピュータシステム
JP2011164736A (ja) * 2010-02-05 2011-08-25 Nec Corp 負荷制御装置
WO2012023190A1 (ja) * 2010-08-18 2012-02-23 富士通株式会社 通信端末装置、着信処理プログラム、および着信処理方法
JP2012160075A (ja) * 2011-02-01 2012-08-23 Nippon Telegr & Teleph Corp <Ntt> 分散処理装置、および、分散処理方法
JP2012216214A (ja) * 2006-06-13 2012-11-08 Tannenbaum Zvi アプリケーションプログラムのためのクラスタコンピューティングのサポート
JP2013105217A (ja) * 2011-11-10 2013-05-30 Fujitsu Ltd マルチコアプロセッサシステム、レジスタ利用方法、およびレジスタ利用プログラム
US8683075B1 (en) 1996-12-09 2014-03-25 Verizon Corporate Services Group Inc. Distributed computing system and method for distributing user requests to replicated network servers
US8849889B1 (en) 2005-09-26 2014-09-30 Advanced Cluster Systems, Inc. Clustered computer system
JP2014194399A (ja) * 2013-03-29 2014-10-09 Mitsubishi Electric Corp レーダ処理装置
JP2015172833A (ja) * 2014-03-11 2015-10-01 株式会社日立製作所 データ処理システム
WO2018061825A1 (ja) * 2016-09-29 2018-04-05 日本電気株式会社 分散処理システム、分散処理方法、及び記録媒体
JP2021086349A (ja) * 2019-11-27 2021-06-03 Kddi株式会社 情報処理装置及び情報処理方法

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683075B1 (en) 1996-12-09 2014-03-25 Verizon Corporate Services Group Inc. Distributed computing system and method for distributing user requests to replicated network servers
JPH10275126A (ja) * 1997-03-31 1998-10-13 Nri & Ncc Co Ltd 負荷分散制御を行うクライアントサーバーシステム
JPH10334061A (ja) * 1997-06-04 1998-12-18 Fujitsu Ltd 負荷分散システム
JP2006268104A (ja) * 2005-03-22 2006-10-05 Nec Corp 指紋照合システム、指紋照合処理装置および指紋照合処理方法
JP2006297905A (ja) * 2005-03-23 2006-11-02 Canon Finetech Inc インクジェット印刷装置およびその予備吐出制御方法
US8849889B1 (en) 2005-09-26 2014-09-30 Advanced Cluster Systems, Inc. Clustered computer system
JP2007265193A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ジョブ割当プログラム、ジョブ割当装置およびジョブ割当方法
US12021679B1 (en) 2006-06-13 2024-06-25 Advanced Cluster Systems, Inc. Cluster computing
US10333768B2 (en) 2006-06-13 2019-06-25 Advanced Cluster Systems, Inc. Cluster computing
JP2012216214A (ja) * 2006-06-13 2012-11-08 Tannenbaum Zvi アプリケーションプログラムのためのクラスタコンピューティングのサポート
US11811582B2 (en) 2006-06-13 2023-11-07 Advanced Cluster Systems, Inc. Cluster computing
US11570034B2 (en) 2006-06-13 2023-01-31 Advanced Cluster Systems, Inc. Cluster computing
US8676877B2 (en) 2006-06-13 2014-03-18 Advanced Cluster Systems, Inc. Cluster computing using special purpose microprocessors
US11563621B2 (en) 2006-06-13 2023-01-24 Advanced Cluster Systems, Inc. Cluster computing
US11128519B2 (en) 2006-06-13 2021-09-21 Advanced Cluster Systems, Inc. Cluster computing
JP2014241167A (ja) * 2006-06-13 2014-12-25 タンネンバウム、ズヴィ アプリケーションプログラムのためのクラスタコンピューティングのサポート
JP2008204120A (ja) * 2007-02-20 2008-09-04 Hitachi Ltd コンピュータシステム
JP2011164736A (ja) * 2010-02-05 2011-08-25 Nec Corp 負荷制御装置
US9086910B2 (en) 2010-02-05 2015-07-21 Nec Corporation Load control device
WO2012023190A1 (ja) * 2010-08-18 2012-02-23 富士通株式会社 通信端末装置、着信処理プログラム、および着信処理方法
US8768330B2 (en) 2010-08-18 2014-07-01 Fujitsu Limited Communication terminal apparatus, computer product, and incoming call processing method
JP5397549B2 (ja) * 2010-08-18 2014-01-22 富士通株式会社 携帯電話装置、着信処理プログラム、および着信処理方法
JP2012160075A (ja) * 2011-02-01 2012-08-23 Nippon Telegr & Teleph Corp <Ntt> 分散処理装置、および、分散処理方法
JP2013105217A (ja) * 2011-11-10 2013-05-30 Fujitsu Ltd マルチコアプロセッサシステム、レジスタ利用方法、およびレジスタ利用プログラム
JP2014194399A (ja) * 2013-03-29 2014-10-09 Mitsubishi Electric Corp レーダ処理装置
JP2015172833A (ja) * 2014-03-11 2015-10-01 株式会社日立製作所 データ処理システム
WO2018061825A1 (ja) * 2016-09-29 2018-04-05 日本電気株式会社 分散処理システム、分散処理方法、及び記録媒体
JPWO2018061825A1 (ja) * 2016-09-29 2019-07-11 日本電気株式会社 分散処理システム、分散処理方法、及び記録媒体
US11294736B2 (en) 2016-09-29 2022-04-05 Nec Corporation Distributed processing system, distributed processing method, and recording medium
JP2021086349A (ja) * 2019-11-27 2021-06-03 Kddi株式会社 情報処理装置及び情報処理方法

Similar Documents

Publication Publication Date Title
JPH0887473A (ja) データ処理装置
US7756940B2 (en) Transaction processing system having service level control capabilities
US5864679A (en) Transaction routing in a multiple processor system using an extracted transaction feature parameter and transaction historical data
US5819083A (en) Minimal sufficient buffer space for data redistribution in a parallel database system
Dowdy et al. Comparative models of the file assignment problem
CN110297699B (zh) 调度方法、调度器、存储介质及系统
JP4687253B2 (ja) ストリームデータ処理システムのクエリ処理方法
US6374297B1 (en) Method and apparatus for load balancing of web cluster farms
JP3812236B2 (ja) イベント制御手段を備えたネットワーク管理システム
CN113722127A (zh) 高效轻量易用的分布式网络消息中间件
EP1564638B1 (en) A method of reassigning objects to processing units
US7584292B2 (en) Hierarchical system configuration method and integrated scheduling method to provide multimedia streaming service on two-level double cluster system
WO2007023726A1 (ja) 情報処理システム
JP2003296171A (ja) 電子帳票管理方法及びプログラム
Wang et al. Hybrid pulling/pushing for i/o-efficient distributed and iterative graph computing
CN117978806B (zh) 一种实现跨集群资源调度的方法
JP4839585B2 (ja) 資源情報収集配信方法およびシステム
Chen et al. Analysis of replicated data with repair dependency
US5978803A (en) Information retrieval system
CN117729204B (zh) 一种基于监控感知的k8s容器调度方法及系统
Anton et al. A survey of stability results for redundancy systems
CN121411721B (zh) 一种多打印机的自助打印调控方法及系统
JP2005309838A (ja) 情報管理システムと情報管理方法、及び、そのための情報管理サブシステム
Zheng et al. Lion: Minimizing distributed transactions through adaptive replica provision
CN115202876A (zh) 一种基于etl服务器的任务处理方法、系统和电子设备

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041109