JP2005148799A - Method for processing information, method for deriving service time and method for adjusting number of processing unit - Google Patents
Method for processing information, method for deriving service time and method for adjusting number of processing unit Download PDFInfo
- Publication number
- JP2005148799A JP2005148799A JP2003380860A JP2003380860A JP2005148799A JP 2005148799 A JP2005148799 A JP 2005148799A JP 2003380860 A JP2003380860 A JP 2003380860A JP 2003380860 A JP2003380860 A JP 2003380860A JP 2005148799 A JP2005148799 A JP 2005148799A
- Authority
- JP
- Japan
- Prior art keywords
- time
- processing
- storage unit
- service time
- stored
- 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.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、稼動中のシステムにおける処理ユニットのサービス時間を導出するための技術及び導出されたサービス時間の利用技術に関する。なお、本願において、処理ユニットとは、クラスタを構成するサーバや、コンピュータに含まれるメモリ及びCPUのセット、或いはプロセッサ等、所定の処理を実行するハードウェアの単位を指す。 The present invention relates to a technique for deriving a service time of a processing unit in an operating system and a technique for using the derived service time. In the present application, the processing unit refers to a unit of hardware that executes a predetermined process such as a server constituting a cluster, a memory and CPU set included in a computer, or a processor.
近年、インターネットによるサービスを提供するシステムにおいて、クラスタ構成を用いるケースが増加している。インターネットによるサービスを提供するシステムには、例えば、ユーザからのリクエストの受け付けや認証等を行うウェブ(Web)フロント・サーバとアプリケーション処理を行うアプリケーション・サーバとデータベース(DB)へのアクセスを行うDBサーバとが含まれる。このようなシステムにクラスタ構成を適用すると、例えばWebフロント・サーバが同様の機能を持つ複数のサーバによって構成され、負荷を分散した形態で処理を実行するようになる。また例えばWebフロント・サーバに含まれる複数のサーバが処理系のグループと待機系のグループとに分かれている等、障害時の切り替えや高負荷時のサーバ追加を考慮したクラスタの構成となっている場合もある。また例えばWebフロント・サーバに含まれるサーバがアプリケーション処理機能をも有し、場合によってはアプリケーション・サーバを構成するサーバに切り替わるような場合もある。 In recent years, there are an increasing number of cases in which a cluster configuration is used in a system that provides services via the Internet. The system that provides services via the Internet includes, for example, a web (Web) front server that accepts requests from users and authenticates, an application server that performs application processing, and a DB server that accesses a database (DB). And are included. When a cluster configuration is applied to such a system, for example, the Web front server is configured by a plurality of servers having similar functions, and processing is executed in a form in which the load is distributed. In addition, for example, a plurality of servers included in the Web front server are divided into a processing group and a standby group, and the cluster configuration takes into account switching at the time of failure and addition of servers at high load. In some cases. Further, for example, a server included in the Web front server also has an application processing function, and in some cases, the server may be switched to a server constituting the application server.
このように多様な形態が含まれる、クラスタ構成を用いたシステムにおいて、処理効率を上げるための様々な技術が存在する。例えば、最も早く処理可能なサーバを選択して処理を実行させる技術が存在する(例えば特許文献1参照)。すなわち、複数のサーバとクライアントとを含む情報処理装置であって、処理に要する時間の予測を複数のサーバに対して要求する予測要求手段と、予測要求手段による要求に応じて予測される処理時間を評価する評価手段と、評価手段により予測された複数のサーバによる処理時間から最も処理時間の短いサーバを選択する手段と、選択手段により選択されたサーバに処理を送りつける手段とを備える。
一方、例えばサービス内容(実行するプログラム)の変更があった場合や取り扱うデータ量が増加した場合等、リソース量の決定に用いる待ち行列モデルのサービス時間を更新する必要がある。待ち行列モデルにおけるサービス時間は、処理時間から待ち時間を減じたものであり、従来、非負荷時の処理時間が値として用いられてきた。また、上で述べた従来技術(特許文献1)においても、予め測定されたハードウェアの処理能力に基づき計算したサービス時間、すなわち非負荷時の処理時間を用いて、待ち時間を含むサーバの処理時間を導出している。 On the other hand, for example, when the service content (program to be executed) is changed or the amount of data to be handled is increased, it is necessary to update the service time of the queue model used for determining the resource amount. The service time in the queuing model is obtained by subtracting the waiting time from the processing time, and conventionally, the processing time during non-load has been used as a value. Also in the above-described prior art (Patent Document 1), the processing of the server including the waiting time using the service time calculated based on the hardware processing capacity measured in advance, that is, the processing time when there is no load. Derived time.
図1に、待ち行列モデルにおける処理時間の概要図を示す。図1において、待ち行列モデルは、待ち行列102と処理中要素104とにより構成されている。トランザクション等の処理対象データ(処理内容や命令を含む)は、図の左から右に流れていくものとする。例えば先入先出法(ファーストイン・ファーストアウト)で処理を行う場合、トランザクションは、まず待ち行列102の最後尾に置かれる。図1の例では、待ち行列102には例えば5つのトランザクションが既に含まれているため、6つ目(図の一番左側)に並ぶことになる。そして、待ち行列102の先頭から順に処理がなされていき、例えば6つ目に並んだ時点から、前の5つのトランザクションが処理されて順番が回ってくるまでの時間が待ち時間106である。そして、実際の処理にかかる時間がサービス時間108である。処理時間100は、トランザクションが投入されてから処理が終了するまでの時間であり、待ち時間106とサービス時間108との合計である。なお、非負荷時においては、待ち行列102が存在せず、処理時間100はサービス時間108と等しくなる。そして、従来技術では、非負荷時の処理時間100(=サービス時間108)に基づき待ち時間106及び処理時間100を導出する。
FIG. 1 shows a schematic diagram of processing time in the queuing model. In FIG. 1, the queue model includes a
しかしながら、稼動中のシステムは負荷がかかっているのが普通であり、サービス時間、すなわち非負荷時の処理時間を計測するのが難しい。このため、待ち行列モデルのサービス時間を更新するためには、システムの稼動状況を一時的に非負荷の状態にする必要がある。一方で、24時間稼動のシステム等、常に稼動し続けることが要求されているシステムを一旦停止し、非負荷時の処理時間を計測するのは現実的ではない。 However, the operating system is usually loaded, and it is difficult to measure the service time, that is, the processing time when there is no load. For this reason, in order to update the service time of the queuing model, it is necessary to temporarily set the operation status of the system to a non-load state. On the other hand, it is not realistic to temporarily stop a system that is required to continue operating, such as a system that operates 24 hours, and measure the processing time when there is no load.
そのため、本発明の目的は、稼動中のシステムにおける処理ユニットのサービス時間の導出を可能とするための技術を提供することである。 Therefore, an object of the present invention is to provide a technique for enabling derivation of the service time of a processing unit in an operating system.
また、本発明の他の目的は、稼動中のシステムにおけるクラスタのリソース量を適切に設定するための技術を提供することである。 Another object of the present invention is to provide a technique for appropriately setting a cluster resource amount in an operating system.
本発明の第1の態様に係る方法は、所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間を取得し、記憶装置に格納するステップと、サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施ステップと、推定サービス時間と待ち時間格納部に格納された待ち時間との和と記憶装置に格納された処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、推定サービス時間を所定のルールに基づき再設定してサービス時間格納部に格納し、シミュレーション実施ステップを実行する繰り返しステップとを含む。 The method according to the first aspect of the present invention is the sum of waiting time and service time for a processing unit that executes a predetermined service, and the waiting time and service time are measured during operation without being separated. A waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule is calculated by queue simulation, and stored in the queue. Until the difference between the simulation execution step stored in the storage unit and the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or a specific condition The estimated service time is reset based on the predetermined rule and stored in the service time storage unit until And a repetition step of performing the steps.
このように、システムの稼動中に計測された(待ち時間を含む)実際の処理時間に基づき、推定サービス時間による待ち行列シミュレーションを繰り返すことにより、本来、システムの稼動中には計測困難であるサービス時間を導出することができる。すなわち、推定サービス時間を設定して待ち行列シミュレーションを実行した際に、推定サービス時間と、待ち行列シミュレーションの結果として得られる待ち時間との和(シミュレーション結果の処理時間)が、実際に計測された処理時間に十分近ければ、設定した推定サービス時間は実際のサービス時間に十分近いとみなすことができる。シミュレーション結果の処理時間が、実際に計測された処理時間と大きく異なる場合には、設定した推定サービス時間も実際のサービス時間(正解)と大きく異なるため、推定サービス時間を設定し直す。 In this way, services that are inherently difficult to measure while the system is operating by repeating the queuing simulation based on the estimated service time based on the actual processing time (including the waiting time) measured while the system is operating. Time can be derived. In other words, when the estimated service time was set and the queue simulation was executed, the sum of the estimated service time and the waiting time obtained as a result of the queue simulation (simulation result processing time) was actually measured. If the processing time is sufficiently close, the set estimated service time can be regarded as sufficiently close to the actual service time. If the processing time of the simulation result is significantly different from the actually measured processing time, the estimated service time is also significantly different from the actual service time (correct answer), so the estimated service time is reset.
本発明の第2の態様に係る方法は、システムを構成する1又は複数のクラスタについて、当該クラスタを構成する処理ユニット数を調整する処理ユニット数調整方法であって、システムの稼動中に計測された処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより処理ユニットのサービス時間を導出し、サービス時間格納部に格納するステップと、サービス時間格納部に格納された処理ユニットのサービス時間に基づきクラスタ毎に第2の待ち行列シミュレーションを実施するステップと、第2の待ち行列シミュレーションにより算出されたクラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納するステップと、第2の待ち行列シミュレーションにより算出された処理ユニット毎の稼働率を稼働率格納部に格納するステップと、システム処理時間格納部に格納されたシステム全体の処理時間と稼働率格納部に格納された稼働率とに基づき、クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定ステップとを含む。 The method according to the second aspect of the present invention is a method for adjusting the number of processing units for adjusting the number of processing units constituting a cluster of one or a plurality of clusters constituting the system, which is measured during operation of the system. A first queuing simulation is performed using the processing time of the processing unit, and the service time of the processing unit is derived and stored in the service time storage unit; and the processing unit stored in the service time storage unit Based on the service time, the step of executing the second queue simulation for each cluster and the processing time for each cluster calculated by the second queue simulation are summed to calculate the processing time of the entire system. Stored in the storage unit and calculated by the second queuing simulation Configure a cluster based on the step of storing the operating rate for each processing unit in the operating rate storage unit, the processing time of the entire system stored in the system processing time storage unit, and the operating rate stored in the operating rate storage unit Determining an appropriate value for the number of processing units and storing it in the processing unit number storage unit.
このように、システム稼動中に計測された実際の処理時間に基づき導出されたサービス時間を用いてさらに待ち行列シミュレーションを実行することにより、システムを構成するクラスタ毎の処理時間を算出し、各クラスタの処理時間に基づき(各クラスタを構成する)処理ユニット数を決定する。これにより、システム稼動中においてもサービス時間に基づき適切な処理ユニット数を決定することができる。 In this way, by further executing a queuing simulation using the service time derived based on the actual processing time measured during system operation, the processing time for each cluster constituting the system is calculated, and each cluster is calculated. The number of processing units (composing each cluster) is determined based on the processing time. Thereby, an appropriate number of processing units can be determined based on the service time even during system operation.
また、本発明の第2の態様において、上記決定ステップが、システム処理時間格納部に格納されたシステム全体の処理時間が所定の最短処理時間よりも短い場合、稼働率格納部に格納された稼働率に基づき、システムを構成するクラスタのうちで稼働率が最小の処理ユニットを含むクラスタを特定するステップと、特定されたクラスタから処理ユニットを1減らした状態で第2の待ち行列シミュレーションを実施するステップとを含むようにしてもよい。 In the second aspect of the present invention, when the determination step is performed when the processing time of the entire system stored in the system processing time storage unit is shorter than a predetermined shortest processing time, the operation stored in the operation rate storage unit Based on the rate, a step of identifying a cluster including a processing unit having the minimum operation rate from among the clusters constituting the system, and a second queuing simulation with the number of processing units reduced by 1 from the identified cluster Steps may be included.
また、本発明の第2の態様において、処理ユニット接続切替装置に、クラスタを構成する処理ユニットの数が処理ユニット数格納部に格納されたクラスタを構成する処理ユニット数の適正値と等しくなるように接続切替させるステップをさらに含むようにしてもよい。これにより、システム稼動中においても適切な処理ユニット数に動的に調整することができる。 Further, in the second aspect of the present invention, the processing unit connection switching device allows the number of processing units constituting the cluster to be equal to an appropriate value of the number of processing units constituting the cluster stored in the processing unit number storage unit. A step of switching the connection may be further included. As a result, the number of processing units can be dynamically adjusted even during system operation.
本発明の第3の態様に係る方法は、所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間からサービス時間を導出するサービス時間導出方法であって、処理ユニットの稼動中に計測され且つ処理時間格納部に格納されている処理ユニットの処理時間を推定サービス時間としてサービス時間格納部に格納するステップと、サービス時間格納部に格納された推定サービス時間に基づき待ち行列シミュレーションを実施し、待ち行列シミュレーションにより算出された待ち時間を待ち時間格納部に格納するシミュレーション実施ステップと、待ち時間格納部に格納された待ち時間とサービス時間格納部に格納された推定サービス時間との和と、処理時間格納部に格納されている処理時間との差を計算し、第1の差として誤差格納部に格納する誤差計算ステップと、誤差格納部に格納された第1の差が所定の誤差許容範囲外である場合、推定サービス時間を再設定し、サービス時間格納部に格納する再設定ステップとを含む。そして、誤差格納部に格納された第1の差が所定の誤差許容範囲内である場合、サービス時間格納部に格納された推定サービス時間を当該処理ユニットのサービス時間とみなす。 The method according to the third aspect of the present invention is the sum of waiting time and service time for a processing unit that executes a predetermined service, and the waiting time and service time are measured during operation without being separated. A service time deriving method for deriving a service time from a processing time, wherein the processing time of the processing unit measured during the operation of the processing unit and stored in the processing time storage unit is used as the estimated service time in the service time storage unit. A step of storing, a simulation execution step of performing a queuing simulation based on the estimated service time stored in the service time storage unit, and storing the waiting time calculated by the queue simulation in the waiting time storage unit, and storing the waiting time Waiting time stored in the service and estimated service time stored in the service time storage The error calculation step of calculating the difference between the sum of the two and the processing time stored in the processing time storage unit and storing the difference in the error storage unit as the first difference, and the first difference stored in the error storage unit A reset step of resetting the estimated service time and storing the estimated service time in the service time storage unit when the error is outside the predetermined allowable error range. Then, when the first difference stored in the error storage unit is within a predetermined allowable error range, the estimated service time stored in the service time storage unit is regarded as the service time of the processing unit.
このように、まず初めに実際の処理時間を推定サービス時間に設定して待ち行列シミュレーションを行うことにより、待ち行列の状況によっては、比較的近い値から推定サービス時間を再設定していくことができる。例えばトランザクションの発生率が低い等、待ち行列がない状態であれば、最初に設定した推定サービス時間は再設定するまでもなく実際のサービス時間と等しくなる。 In this way, by first setting the actual processing time to the estimated service time and performing the queue simulation, the estimated service time may be reset from a relatively close value depending on the queue status. it can. For example, if there is no queue such as a low transaction occurrence rate, the estimated service time set first becomes equal to the actual service time without resetting.
また、本発明の第3の態様において、基準値格納部には、サービス時間の最大値以下の値を有する第1の基準値と当該第1の基準値より小さく且つサービス時間の最小値以上の値を有する第2の基準値とが格納されており、上記再設定ステップが、誤差格納部に格納された第1の差が所定の誤差許容範囲外であり且つ当該第1の差が正の値である場合には、第1の基準値を切り下げて基準値格納部に格納すると共に新たな第1の基準値と第2の基準値との間に新たな推定サービス時間を設定してサービス時間格納部に格納するステップと、誤差格納部に格納された第1の差が所定の誤差許容範囲外であり且つ当該第1の差が負の値である場合には、第2の基準値を切り上げて基準値格納部に格納すると共に新たな第2の基準値と第1の基準値との間に新たな推定サービス時間を設定してサービス時間格納部に格納するステップとを含むようにしてもよい。 In the third aspect of the present invention, the reference value storage unit includes a first reference value having a value less than or equal to the maximum service time, a value smaller than the first reference value and greater than or equal to the minimum service time. A second reference value having a value is stored, and the resetting step includes a step in which the first difference stored in the error storage unit is outside a predetermined error allowable range and the first difference is positive. If the value is a value, the first reference value is rounded down and stored in the reference value storage unit, and a new estimated service time is set between the new first reference value and the second reference value. The step of storing in the time storage unit and the second reference value when the first difference stored in the error storage unit is outside a predetermined error allowable range and the first difference is a negative value Is rounded up and stored in the reference value storage unit, and the new second reference value and first reference value It may include a step of storing the service time storage unit by setting a new estimated service time during.
このように、推定サービス時間の再設定範囲を次第に狭めていくことにより、推定サービス時間を実際のサービス時間(正解)に近づけることができる。すなわち、シミュレーション結果の処理時間が、実際に計測された処理時間よりも長かった場合には、第1の基準値を切り下げて推定サービス時間を短く再設定するようにし、シミュレーション結果の処理時間が、実際に計測された処理時間よりも短かった場合には、第2の基準値を切り上げて推定サービス時間を長く再設定するようにする。第1の基準値と第2の基準値との大小関係が逆転することはないため、推定サービス時間の再設定範囲が狭くなっていく。 In this way, the estimated service time can be brought closer to the actual service time (correct answer) by gradually narrowing the reset range of the estimated service time. That is, when the processing time of the simulation result is longer than the actually measured processing time, the estimated service time is set to be shortened by reducing the first reference value, and the processing time of the simulation result is If it is shorter than the actually measured processing time, the second reference value is rounded up to reset the estimated service time longer. Since the magnitude relationship between the first reference value and the second reference value does not reverse, the reset range of the estimated service time becomes narrower.
また、本発明の第3の態様において、サービス時間最大値の初期値として処理ユニットの処理時間を最大値格納部に格納するステップと、サービス時間最小値の初期値としてゼロを最小値格納部に格納するステップとをさらに含み、上記再設定ステップが、誤差格納部に格納された第1の差が所定の誤差許容範囲外であり且つ当該第1の差が正の値である場合には、推定サービス時間を用いてサービス時間最大値を再設定し、最大値格納部に格納するステップと、推定サービス時間とサービス時間最小値との平均値を用いて推定サービス時間を再設定し、サービス時間格納部に格納するステップとを含むようにしてもよい。 In the third aspect of the present invention, the step of storing the processing time of the processing unit in the maximum value storage unit as an initial value of the service time maximum value, and the initial value of the service time minimum value as zero in the minimum value storage unit A step of storing, wherein the resetting step is when the first difference stored in the error storage unit is outside a predetermined error tolerance range and the first difference is a positive value. The service time maximum value is reset using the estimated service time and stored in the maximum value storage unit, and the estimated service time is reset using the average value of the estimated service time and the minimum service time, and the service time is reset. Storing in the storage unit.
また、本発明の第3の態様において、再設定され且つ最大値格納部に格納されたサービス時間最大値と、再設定され且つサービス時間格納部に格納された推定サービス時間との差である第2の差が、所定の近似範囲外である場合、推定サービス時間に基づきシミュレーション実施ステップ以降を再実行するようにしてもよい。 In the third aspect of the present invention, the difference between the service time maximum value reset and stored in the maximum value storage unit and the estimated service time reset and stored in the service time storage unit When the difference between the two is outside the predetermined approximate range, the simulation execution step and subsequent steps may be re-executed based on the estimated service time.
なお、本発明に係る方法をコンピュータに実行させるためのプログラムを作成することも可能であって、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してデジタル信号として配信される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。 It is also possible to create a program for causing a computer to execute the method according to the present invention, and the program is a storage medium such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, and a hard disk. Alternatively, it is stored in a storage device. Moreover, it may be distributed as a digital signal via a network. Note that data being processed is temporarily stored in a storage device such as a computer memory.
本発明によれば、システム稼動中においても処理ユニットのサービス時間を把握することができる。また、稼動中のシステムにおけるクラスタのリソース量(処理ユニット数)を適切に設定することができる。 According to the present invention, it is possible to grasp the service time of a processing unit even during system operation. Also, the cluster resource amount (number of processing units) in the operating system can be set appropriately.
本発明の一実施の形態に係るシステム構成図を図2に示す。例えばインターネットであるネットワーク1には、サーバ切替装置5と例えばパーソナル・コンピュータである1又は複数のユーザ端末3とが、無線又は有線によって接続されている。ユーザ端末3は、図示していないウェブ(Web)ブラウザ機能を有し、Webページの閲覧が可能となっている。なお、ユーザ端末3は、Webブラウザ機能を有する携帯電話機やその他の携帯情報端末等であってもよい。サーバ切替装置5には、クラスタ50とクラスタ54と処理時間格納部7と管理サーバ21とが接続されている。この他にも「・・・」で示している1又は複数のクラスタが接続されている。クラスタ50にはサーバ51とサーバ53とが含まれ、クラスタ54にはサーバ55が含まれている。各クラスタにはこの他にも1又は複数のサーバが含まれている場合もある。また、各サーバには処理時間ログ生成部が含まれている。サーバ51には処理時間ログ生成部510が含まれており、サーバ53には処理時間ログ生成部530が含まれており、サーバ55には処理時間ログ生成部550が含まれている。これらの処理時間ログ生成部は、各サーバの処理時間ログを生成し、処理時間格納部7に格納する。
A system configuration diagram according to an embodiment of the present invention is shown in FIG. For example, the
サービス時間決定装置9には、処理時間格納部7とサービス時間格納部11とが接続されており、サービス時間決定装置9は、処理時間格納部7を参照して処理を実行し、処理結果をサービス時間格納部11に格納する。また、性能評価装置15には、サービス時間格納部11とシステム要件DB13とサーバ・サービス時間DB17と評価結果格納部19とが接続されている。性能評価装置15は、サービス時間格納部11とシステム要件DB13とを参照して処理を実行し、処理結果をサーバ・サービス時間DB17と評価結果格納部19とに格納する。また、評価結果格納部19は管理サーバ21にも接続されており、管理サーバ21は、評価結果格納部19を参照して処理を行う。
A processing time storage unit 7 and a service time storage unit 11 are connected to the service time determination device 9, and the service time determination device 9 executes processing with reference to the processing time storage unit 7 and displays the processing result. Stored in the service time storage unit 11. The
また、各クラスタを構成するサーバは、各々サーバ切替装置5に接続されている又は接続可能な状態になっている。そして、クラスタのリソース(クラスタを構成するサーバの台数)は、管理サーバ21によって管理されており、管理サーバ21は、必要に応じてサーバ切替装置5に対しリソースの切替指示を出力する。例えばクラスタ50に含まれるサーバの数を増やすように指示を出す。
In addition, the servers constituting each cluster are each connected to or connectable to the
図3を用いて、図2に示したサーバ側(クラスタ50等)の処理の概要を説明する。図3のサーバ処理概要図には、Webフロント・サーバ300とアプリケーション・サーバ310とDBサーバ320とが含まれている。これらは、サーバを機能的に分類したサーバ・グループである。そして、Webフロント・サーバ300には、サーバA(302)とサーバF(304)とが含まれている。サーバA(302)及びサーバF(304)は各々複数のサーバ(処理ユニット)によって構成されており、丸数字で示されている。すなわち、サーバA(302)及びサーバF(304)は各々3台のサーバによって構成されているクラスタである。
The outline of the processing on the server side (cluster 50 or the like) shown in FIG. 2 will be described with reference to FIG. The server processing outline diagram of FIG. 3 includes a Web front server 300, an
アプリケーション・サーバ310には、サーバB(312)とサーバD(314)とサーバE(316)とが含まれている。各々2台のサーバによって構成されている。DBサーバ320には、サーバC(322)が含まれている。サーバC(322)は1台のサーバによって構成されている。なお、各サーバ(サーバA(302)等)の左又は上に示されている縦線又は横線模様の四角は、待ち行列を表している。また、図2に示したクラスタ50やクラスタ54は、図3のサーバA(302)やサーバB(312)に相当し、リソース(サーバ台数)の増減は、サーバA(302)やサーバB(312)に含まれる丸数字の増減で示される。
The
トランザクション等の処理対象データ(処理内容や命令を含む)は、図の左上から投入され、まずサーバA(302)による処理が行われる。サーバA(302)は処理結果をサーバB(312)に出力し、サーバB(312)は処理結果をサーバD(314)とサーバC(322)との少なくともいずれかに出力する。サーバD(314)とサーバC(322)との少なくともいずれかは、処理結果をサーバE(316)に出力し、サーバE(316)は処理結果をサーバF(304)に出力する。サーバF(304)は処理結果を例えばネットワーク1を介してユーザ端末3(図2)に送信する。このようにして一連の処理が行われ、処理を行った全サーバにおける待ち時間を含めた処理時間の合計が、システム全体の処理時間(レスポンス時間)となる。
Data to be processed (including processing contents and instructions) such as a transaction is input from the upper left of the figure, and is first processed by the server A (302). Server A (302) outputs the processing result to server B (312), and server B (312) outputs the processing result to at least one of server D (314) and server C (322). At least one of the server D (314) and the server C (322) outputs the processing result to the server E (316), and the server E (316) outputs the processing result to the server F (304). The server F (304) transmits the processing result to the user terminal 3 (FIG. 2) via the
図4に、システム要件DB13(図2)のテーブル構成及び格納されるデータの一例を示す。図4の例には要件項目の列400と設定値の列402とが含まれている。このテーブルには、システム管理者等が予めデータを格納しておく。例えば1行目には、要件項目の列400に「システム全体のレスポンス時間」と示されており、設定値の列402に「最大値2sec 最小値1sec」と示されている。すなわち、当該システムは、システム全体としての処理時間を、待ち時間も含めて1秒から2秒の間にする必要があるという設定がなされている。そして、システム全体の処理時間が例えば3秒であった場合、1秒短くするために、いずれかのクラスタのリソースを増やす等の対策を行う必要がある。また、図4の例では、2行目以降には各サーバの最大稼働率が登録されている。例えばこの値を越える稼働率のサーバがあった場合には、不具合が生じる危険があるため、当該サーバを含むクラスタのリソースを増やす等の対策を行う必要がある。なお、システム要件DB13には、図示しないが、この他にも、クラスタを構成するサーバの識別データ及び機種種別や実行させるソフトウェア(プログラム)に関する設定データが格納されているテーブルが設けられている。
FIG. 4 shows an example of the table configuration of the system requirement DB 13 (FIG. 2) and stored data. The example of FIG. 4 includes a
図5に、サーバ・サービス時間DB17(図2)のテーブル構成及び格納されるデータの一例を示す。図5の例には、機種種別500の列とソフト・OS(Operating System)の列502とサービス時間の列504とが含まれている。データは、性能評価装置15(図2)の処理結果として格納される。サービス時間は、サーバの機種種別、実行するソフトウェア(プログラム)及びOSに主に依存するため、このようなデータを格納しておくことにより、新規のシステムを設計する際における処理時間シミュレーションに利用することが可能となる。
FIG. 5 shows an example of the table structure of the server / service time DB 17 (FIG. 2) and stored data. The example of FIG. 5 includes a
図6に、サービス時間決定装置9(図2)の機能ブロック図を示す。図6に示すサービス時間決定装置9には、初期設定部600と待ち行列シミュレータ610と誤差算出部620と最大誤差抽出部630と第1比較部640と設定値調整部650と第2比較部660と処理サーバ制御部670とが含まれている。処理の詳細については後の処理フローの説明において述べる。また、図6には、処理時間格納部6007とサービス時間格納部6011とが含まれているが、これらは各々図2に示した処理時間格納部7とサービス時間格納部11とに等しい。
FIG. 6 shows a functional block diagram of the service time determination device 9 (FIG. 2). The service time determination device 9 shown in FIG. 6 includes an
また、図2には図示していないが、サービス時間決定装置9はワーク・メモリ領域を有しており、ワーク・メモリ領域には、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605と、第1サーバ待ち時間格納部611、第2サーバ待ち時間格納部612、第3サーバ待ち時間格納部613、・・・、及び第nサーバ待ち時間格納部615と、第1サーバ誤差格納部621、第2サーバ誤差格納部622、第3サーバ誤差格納部623、・・・、及び第nサーバ誤差格納部625と、特定番号格納部631と、再設定値格納部651とが含まれている。ここで、nはシステムに含まれるサーバの数であり、サーバ設定値格納部、サーバ待ち時間格納部及びサーバ誤差格納部は各々n個存在する。
Although not shown in FIG. 2, the service time determination device 9 has a work memory area. The work memory area stores a first server setting
なお、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605とには、各々、処理時間(Ti(iは例えば1からnまでの整数))とサービス時間最小値(smini)とサービス時間最大値(smaxi)と推定サービス時間(si)とを格納することができるようになっている。
The first server setting
さらにサービス時間決定装置9には、リクエスト頻度格納部608と第1近似パラメタ格納部638と第2近似パラメタ格納部658とが含まれている。これらには所定の値が予め格納されている。
Furthermore, the service time determination device 9 includes a request
初期設定部600は、処理時間格納部6007を参照し、処理結果(Ti、smini、smaxi及びsi)を第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605との対応する格納部に格納する。
The
待ち行列シミュレータ610は、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605とリクエスト頻度格納部608とを参照し、各処理結果(wi)を第1サーバ待ち時間格納部611、第2サーバ待ち時間格納部612、第3サーバ待ち時間格納部613、・・・、及び第nサーバ待ち時間格納部615の対応する格納部に格納する。
The queue simulator 610 includes a first server setting
誤差算出部620は、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605と、第1サーバ待ち時間格納部611、第2サーバ待ち時間格納部612、第3サーバ待ち時間格納部613、・・・、及び第nサーバ待ち時間格納部615とを参照し、各処理結果(|(si+wi−Ti)/Ti|)を第1サーバ誤差格納部621、第2サーバ誤差格納部622、第3サーバ誤差格納部623、・・・、及び第nサーバ誤差格納部625の対応する格納部に格納する。
The
最大誤差抽出部630は、第1サーバ誤差格納部621、第2サーバ誤差格納部622、第3サーバ誤差格納部623、・・・、及び第nサーバ誤差格納部625を参照し、処理結果(j)を特定番号格納部631に格納する。「j」は、特定のサーバに対応する番号である。
The maximum
第1比較部640は、特定のサーバ番号「j」を格納する特定番号格納部631と、特定のサーバ番号「j」に対応する第jサーバ設定値格納部と、特定のサーバ番号「j」に対応する第jサーバ待ち時間格納部と、第1近似パラメタ格納部638とを参照し、処理結果に応じて設定値調整部650又は処理サーバ制御部670に処理を実行させる。
The
設定値調整部650は、特定のサーバ番号「j」を格納する特定番号格納部631と、特定のサーバ番号「j」に対応する第jサーバ設定値格納部とを参照し、処理結果(sj、及びsmaxj又はsminj)を再設定値格納部651に格納するとともに、特定のサーバ番号「j」に対応する第jサーバ設定値格納部に格納されているデータ(sj、及びsmaxj又はsminj)を更新する。
The set
第2比較部660は、再設定値格納部651と第2近似パラメタ格納部658とを参照し、処理結果に応じて処理サーバ制御部670又は待ち行列シミュレータ610に処理を実行させる。処理サーバ制御部670は、処理結果に応じて、最大誤差抽出部630に処理を実行させるか、又は第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605を参照してサービス時間格納部6011にデータ(si)を格納する。
The
次に、図7を用いて、図6に示したサービス時間決定装置が実施する処理(サービス時間算出処理)の処理フローについて説明する。 Next, a processing flow of processing (service time calculation processing) performed by the service time determination device illustrated in FIG. 6 will be described with reference to FIG.
まず、初期設定部600は、処理時間格納部6007から全サーバの各処理時間(Ti(iは例えば1からn(サーバ数)までの整数であり、個々のサーバに対応する番号である。))を読み込み、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605の対応する格納部に格納する(ステップS1)。処理時間格納部6007には、処理時間ログ生成部510乃至550(図2)によって生成された、各サーバの例えば1トランザクション当たりの平均処理時間が格納されており、この値を読み込む。なお、処理時間格納部6007にログ・データのみが格納されている場合、初期設定部600はログ・データに基づき各サーバの例えば1トランザクション当たりの平均処理時間を算出して上記各サーバ設定値格納部に格納する。
First, the
さらに、初期設定部600は、全サーバについて、サービス時間最小値格納領域に「0」を格納し、推定サービス時間格納領域及びサービス時間最大値格納領域に上で読み込んだ処理時間を格納する(ステップS3)。すなわち、上記各サーバ設定値格納部において、sminiに「0」を設定し、si及びsmaxiにTiの値を設定する。
Further, the
そして、待ち行列シミュレータ610は、全サーバにつき、推定サービス時間(si)と、リクエスト頻度格納部608に格納されている所定のリクエスト頻度であるλとを用いて待ち行列シミュレーションを実施し、待ち時間(wi)を算出して第1サーバ待ち時間格納部611、第2サーバ待ち時間格納部612、第3サーバ待ち時間格納部613、・・・、及び第nサーバ待ち時間格納部615の対応する格納部に格納する(ステップS5)。なお、待ち行列シミュレーションの具体的な方法については従来技術(例えば、「“待ち行列のシミュレーション”、インターネット<URL:http://www.cis.nagasaki-u.ac.jp/labs/oguri/CompSimExm.pdf>」参照。)を用いればよく、詳細な説明は省略する。
Then, the queue simulator 610 performs a queue simulation using the estimated service time (s i ) and the predetermined request frequency λ stored in the request
そして、誤差算出部620は、各サーバにつき、処理時間(Ti)、推定サービス時間(si)及び上記各サーバ待ち時間格納部に格納された待ち時間(wi)を用いて、|(si+wi−Ti)/Ti|の値を算出し、第1サーバ誤差格納部621、第2サーバ誤差格納部622、第3サーバ誤差格納部623、・・・、及び第nサーバ誤差格納部625の対応する格納部に格納する。最大誤差抽出部630は、上記各サーバ誤差格納部を参照し、最も値の大きい|(sj+wj−Tj)/Tj|を特定し、「j」を特定番号格納部631に格納する(ステップS7)。すなわち、最大誤差が生じているサーバ(j)を特定する。
Then, the
そして、第1比較部640は、特定されたサーバ(j)の推定サービス時間(sj)、待ち時間(wj)及び処理時間(Tj)とを用いてsj+wjとTjとを比較し(ステップS9)、さらに第1近似パラメタ格納部638に格納されている所定の近似パラメタであるε1とを用いて、sj+wjがTjに十分近いか判定する(ステップS11)。すなわち、推定サービス時間及び待ち時間の和と実際に測定された処理時間との差が、許容誤差範囲内に収まっているか判定する。具体的には、値の差の絶対値(例えば|sj+wj−Tj|)が所定の近似パラメタであるε1より小さければ、十分に近いと判定する。十分に近いと判定された場合(ステップS11:Yesルート)、後に述べるステップS25の処理に移行する。一方、十分に近いとはいえないと判定された場合(ステップS11:Noルート)、第1比較部640により処理を指示された設定値調整部650は、sj+wjがTjより大きいか判定する(ステップS13)。
Then, the
大きくないと判定された場合(ステップS13:Noルート)、第1比較部640により処理を指示された設定値調整部650は、sminjにsjを設定し、sjにsjとsmaxjとの平均値((sj+smaxj)/2)を設定して再設定値格納部651に格納するとともに、当該再設定されたsminj及びsjを用いて、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605の対応する格納部(サーバ(j))のデータを更新する(ステップS15)。すなわち、シミュレーションの結果算出された処理時間が実際に測定された処理時間以下であるということは、今回シミュレーションで使用した推定サービス時間(sj)が実際の(求めようとしている)値よりも短く設定されていたと考えられるため、sminjを切り上げ且つ推定サービス時間を長く再設定する。sj及びsminjが再設定されると、第2比較部660は、再設定され且つ再設定値格納部651に格納されたsjとsminjとを比較する(ステップS17)。そして、後に述べるステップS23の処理に移行する。
If it is not greater (Step S13: No route), the setting
一方、sj+wjがTjより大きいと判定された場合(ステップS13:Yesルート)、設定値調整部650は、smaxjにsjを設定し、sjにsjとsminjとの平均値((sj+sminj)/2)を設定して再設定値格納部651に格納するとともに、当該再設定されたsmaxj及びsjを用いて、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605のいずれか対応する格納部(サーバ(j))のデータを更新する(ステップS19)。すなわち、シミュレーションの結果算出された処理時間が実際に測定された処理時間より長いということは、今回シミュレーションで使用した推定サービス時間(sj)が実際の(求めようとしている)値よりも長く設定されていたと考えられるため、smaxjを切り下げ且つ推定サービス時間を短く再設定する。sj及びsmaxjが再設定されると、第2比較部660は、再設定されたsjとsmaxjとを比較する(ステップS21)。
On the other hand, when it is determined that s j + w j is larger than T j (step S13: Yes route), the set
そして、第2比較部660は、ステップS17又はステップS21の比較結果に基づき、sjとsminj、又はsjとsmaxjとが十分に近いか判定する(ステップS23)。具体的には、値の差の絶対値(例えば|sj−sminj|)が所定の近似パラメタであるε2より小さければ、十分に近いと判定する。このような場合、これ以上処理を行っても所望の結果を得ることが難しいため、このサーバについての処理を終了するものである。十分に近いとはいえないと判定された場合(ステップS23:Noルート)、ステップS5の処理に戻り、第2比較部660により処理を指示された待ち行列シミュレータ610は、ステップS15又はステップS19において再設定され且つ更新された値(sj)に基づき待ち行列シミュレーションを実行する。
Then, the
一方、十分に近いと判定された場合(ステップS23:Yesルート)、第2比較部660により処理を指示された処理サーバ制御部670は、全サーバについての処理が終了したか判定する(ステップS25)。全サーバについての処理が終了していないと判定された場合(ステップS25:Noルート)、最大誤差抽出部630は、未だ処理がなされていないサーバのうち、|(sj+wj−Tj)/Tj|の値が最大であるサーバ(j)を特定する(ステップS27)。そして、ステップS9の処理に戻る。
On the other hand, when it is determined that the processing is sufficiently close (step S23: Yes route), the processing
一方、全サーバについての処理が終了したと判定された場合(ステップS25:Yesルート)、処理サーバ制御部670は、第1サーバ設定値格納部601、第2サーバ設定値格納部602、第3サーバ設定値格納部603、・・・、及び第nサーバ設定値格納部605に格納されている全サーバの推定サービス時間(si)を、サービス時間算出処理の結果データとしてサービス時間格納部6011に格納する(ステップS29)。そしてサービス時間算出処理を終了する。
On the other hand, when it is determined that the processing for all the servers has been completed (step S25: Yes route), the processing
このように、推定サービス時間を設定し、シミュレーションの結果に基づき推定サービス時間の再設定範囲を次第に絞り込んでいくような方法で各サーバのサービス時間を算出する。これにより、システム稼動中においても(システムを非負荷状態にすることなく)各サーバのサービス時間を知ることができる。 In this way, the estimated service time is set, and the service time of each server is calculated by a method of gradually narrowing down the reset range of the estimated service time based on the simulation result. Thereby, it is possible to know the service time of each server even when the system is operating (without putting the system in a non-load state).
次に、図8及び図9を用いて、性能評価装置15(図2)が実施する処理(リソース量調整処理)の処理フローについて説明する。以下、処理の主体は性能評価装置15(図2)であり、記載を省略する場合もある。まず、性能評価装置15は、システム要件DB13(図2)から、システムを構成する全クラスタについて、各クラスタのリソース量(クラスタを構成するサーバ台数)を読み込み、図示しないワーク・メモリ領域内の例えば「X」という格納部及び「Y」という格納部に格納する(図8:ステップS41)。なお、各クラスタのリソース量を、以下の説明においてRkiと表現する。kiは例えば1からkn(クラスタ数)までの整数であり、個々のクラスタに対応する番号である。
Next, a processing flow of processing (resource amount adjustment processing) performed by the performance evaluation device 15 (FIG. 2) will be described with reference to FIGS. Hereinafter, the main subject of the processing is the performance evaluation device 15 (FIG. 2), and the description may be omitted. First, the
さらに、性能評価装置15は、システム要件DB13(図2)から、システム全体のレスポンス時間の最大値及び最小値と、各サーバの稼働率上限とを読み込み、ワーク・メモリ領域に格納する(ステップS43)。なお、以下の説明において、システム全体のレスポンス時間最大値をRPmax、最小値をRPminと表現する。同様に、各サーバの稼働率上限をKmaxiと表現する。iは例えば1からn(サーバ数)までの整数であり、個々のサーバに対応する番号である。
Further, the
そして、性能評価装置15は、サービス時間格納部11(図2)に格納された各サーバのサービス時間を読み込み、ワーク・メモリ領域に格納する(ステップS45)。なお、以下の説明において、各サーバのサービス時間をSiと表現する。そして、各クラスタのリソース量(Rki)及び各サーバのサービス時間(Si)に基づき、クラスタ毎に待ち行列シミュレーションを実施する(ステップS47)。なお、待ち行列シミュレーションの具体的な方法については従来技術を用いればよく、詳細な説明は省略するが、リソース量(Rki)をサービス窓口数として用いる。
The
そして、性能評価装置15は、待ち行列シミュレーションの結果に基づき、各サーバの稼働率及びシステム全体のレスポンス時間を特定し、各々ワーク・メモリ領域に格納する(ステップS49)。システム全体のレスポンス時間は、各クラスタの処理時間を加算して算出する。なお、以下の説明において、システム全体のレスポンス時間をRP、各サーバの稼働率をKiと表現する。
Then, the
そして、性能評価装置15は、待ち行列シミュレーションによって算出されたシステム全体のレスポンス時間が、システム要件として定められているシステム全体のレスポンス時間の最大値及び最小値の範囲内にあるか、すなわちRPmin≦RP≦RPmaxであるか判定する(ステップS51)。RPmin≦RP≦RPmaxであると判定された場合(ステップS51:Yesルート)、リソース量の調整は必要ないため、処理は端子Bを介して図9の処理に移行し、リソース量調整処理を終了する。
Then, the
一方、RPmin≦RP≦RPmaxではないと判定された場合(ステップS51:Noルート)、待ち行列シミュレーションによって算出されたシステム全体のレスポンス時間が、システム要件として定められているシステム全体のレスポンス時間の最大値よりも長いか、すなわちRP>RPmaxであるか判定する(ステップS53)。RP>RPmaxではないと判定された場合(ステップS53:Noルート)、処理は端子Aを介して図9の処理に移行する。 On the other hand, when it is determined that RPmin ≦ RP ≦ RPmax is not satisfied (step S51: No route), the response time of the entire system calculated by the queue simulation is the maximum of the response time of the entire system defined as the system requirements. It is determined whether it is longer than the value, that is, RP> RPmax (step S53). When it is determined that RP> RPmax is not satisfied (step S53: No route), the process proceeds to the process of FIG.
一方、RP>RPmaxであると判定された場合(ステップS53:Yesルート)、ステップS49において特定した各サーバの稼働率(Ki)に基づき、最大の稼働率であるサーバ(j)と、稼働率上限を越えているサーバ、すなわちKm>Kmaxmであるサーバ(m)とを特定する(ステップS55)。「j」及び「m」は、特定のサーバに対応する番号である。そして、性能評価装置15は、特定されたサーバを含むクラスタのリソース量(Rkj及びRkm)を1増やし、上記Xに格納する(ステップS57)。「kj」及び「km」は、特定のクラスタに対応する番号である。そして、ステップS47の処理に戻り、再設定されたリソース量を用いて待ち行列シミュレーションを再実行する。
On the other hand, when it is determined that RP> RPmax (step S53: Yes route), the server (j) having the maximum operation rate and the operation based on the operation rate (K i ) of each server specified in step S49 A server exceeding the rate upper limit, that is, a server (m) where K m > Kmax m is identified (step S55). “J” and “m” are numbers corresponding to a specific server. Then, the
図9に、端子Aを介して移行した後の処理(ステップS53:Noルート(図8))について示す。性能評価装置15は、ステップS49(図8)において特定した各サーバの稼働率(Ki)に基づき、最小の稼働率であるサーバ(p)を特定する(図9:ステップS71)。「p」は、特定のサーバに対応する番号である。ここで、性能評価装置15は、今現在における各クラスタのリソース量(Rki)を上記「X」に格納しておく(ステップS73)。そして、ステップS71において特定されたサーバ(p)を含むクラスタのリソース量(Rkp)を1減らし、上記「Y」に格納する(ステップS75)。「kp」は、特定のクラスタに対応する番号である。
FIG. 9 shows a process after the transition through the terminal A (step S53: No route (FIG. 8)). The
そして、性能評価装置15は、各クラスタのリソース量(Rki)(上記「Y」に格納された値)及び各サーバのサービス時間(Si)に基づき、待ち行列シミュレーションを実施する(ステップS77)。そして、待ち行列シミュレーションの結果に基づき、システム全体のレスポンス時間(RP)及び各サーバの稼働率(Ki)を特定し、各々ワーク・メモリ領域に格納する(ステップS79)。
Then, the
また、性能評価装置15は、待ち行列シミュレーションによって算出されたシステム全体のレスポンス時間が、システム要件として定められているシステム全体のレスポンス時間の最大値以上か、すなわちRP≧RPmaxであるか判定する(ステップS81)。RP≧RPmaxであると判定された場合(ステップS81:Yesルート)、上記「X」に格納されている各クラスタのリソース量(Rki)を処理結果として評価結果格納部19(図2)に格納する(ステップS83)。そして、リソース調整処理を終了する。
Further, the
一方、RP≧RPmaxではないと判定された場合(ステップS81:Noルート)、RP≧RPminであるか判定する(ステップS85)。すなわち、待ち行列シミュレーションによって算出されたシステム全体のレスポンス時間が、システム要件として定められているシステム全体のレスポンス時間の最大値及び最小値の範囲内にあるか判定する。RP≧RPminではないと判定された場合(ステップS85:Noルート)、ステップS71の処理に戻る。一方、RP≧RPminであると判定された場合(ステップS85:Yesルート)、上記「Y」に格納されている各クラスタのリソース量(Rki)を処理結果として評価結果格納部19(図2)に格納する(ステップS87)。そして、リソース量調整処理を終了する。 On the other hand, when it is determined that RP ≧ RPmax is not satisfied (step S81: No route), it is determined whether RP ≧ RPmin is satisfied (step S85). That is, it is determined whether the response time of the entire system calculated by the queue simulation is within the range of the maximum value and the minimum value of the response time of the entire system defined as system requirements. If it is determined that RP ≧ RPmin is not satisfied (step S85: No route), the process returns to step S71. On the other hand, if it is determined that RP ≧ RPmin (step S85: Yes route), the evaluation result storage unit 19 (FIG. 2) uses the resource amount (R ki ) of each cluster stored in “Y” as a processing result. (Step S87). Then, the resource amount adjustment process ends.
このようにして、リソース量調整処理が行われる。すなわち、サービス時間格納部11(図2)に格納されたサーバ毎のサービス時間に基づき、各クラスタの適切なリソース量を算出することができる。 In this way, the resource amount adjustment process is performed. That is, an appropriate resource amount for each cluster can be calculated based on the service time for each server stored in the service time storage unit 11 (FIG. 2).
なお、評価結果格納部19(図2)に格納した適切なリソース量は、管理サーバ21(図2)によって参照され、各クラスタのリソース量を実際に調整するために用いられる。具体的には、管理サーバ21は、まず、評価結果格納部19からクラスタ毎のリソース量(最適リソース量)を読み込み、ワーク・メモリ領域等の記憶装置に格納する。そして、例えば所定の格納部に格納されている、各クラスタの現在のリソース量(現在リソース量)を読み込み、ワーク・メモリ領域等の記憶装置に格納する。なお、管理サーバ21がリソース量チェック機能を有していて、各クラスタの現在のリソース量をチェックするような場合もある。そして、管理サーバ21は、クラスタ毎に最適リソース量と現在リソース量とを比較し、異なっているクラスタがあれば、当該クラスタと最適リソース量とを特定し、サーバ切替装置5(図2)に切替処理を指示する。
The appropriate resource amount stored in the evaluation result storage unit 19 (FIG. 2) is referred to by the management server 21 (FIG. 2), and is used to actually adjust the resource amount of each cluster. Specifically, the
サーバ切替装置5は、管理サーバ21から指定されたクラスタのリソース切替処理を行う。すなわち、最適リソース量と現在リソース量とが異なっているクラスタのリソース量を最適リソース量に変更する。サーバ切替装置5は、例えばVLAN(Virtual LAN)をサポートしたスイッチング・ハブであり、論理的に、クラスタを構成するサーバを接続状態から非接続状態にしてリソース量を減らしたり、非接続状態のサーバを接続状態にしてクラスタに追加し、リソース量を増やしたりといった処理を行う。また、管理サーバ21は、各サーバ上で動作させるソフトウェア(プログラム)を必要に応じて切り替える。
The
これにより、システムが稼動中であっても、各クラスタのリソース量を動的に制御し、適切な状態に保つことが可能となる。なお、リソース量の変更(切替)時には、部分的に処理を停止させる場合もある。 Thereby, even when the system is in operation, the resource amount of each cluster can be dynamically controlled and kept in an appropriate state. Note that the processing may be partially stopped when the resource amount is changed (switched).
また、性能評価装置15(図2)は、上で述べたリソース量調整処理に加え、サーバ・サービス時間登録処理も実施する。サーバ・サービス時間登録処理は、定期的に又は管理者等のユーザからの要求に従って実施する。まず、性能評価装置15は、システム要件DB13から、システムを構成しているサーバの機種種別や当該サーバで実行させるソフトウェア(プログラム)に関する設定データを読み込み、ワーク・メモリ領域等の記憶装置に格納する。さらに、性能評価装置15は、サービス時間格納部11から各サーバのサービス時間を読み込み、各サーバのサービス時間と、上でワーク・メモリ領域に格納しておいたサーバの機種種別及びソフトウェア(プログラム)に関する設定データとを対応付け、サーバ・サービス時間レコードを生成して、サーバ・サービス時間DB17に格納する。このサーバ・サービス時間DB17に格納されたデータは、新規のシステムを設計する際における処理時間シミュレーション等に利用することができる。
The performance evaluation device 15 (FIG. 2) also performs server / service time registration processing in addition to the resource amount adjustment processing described above. The server service time registration process is performed periodically or in accordance with a request from a user such as an administrator. First, the
以上本発明の一実施の形態について説明したが、本発明はこれに限定されるものではない。例えば、図1及び図3に示した概要図は一例であって、待ち行列や処理時間の長さ、サーバ数等、図に示したようなケースに限られない。また、図2に示したシステム構成図は一例であって、管理サーバ21やサービス時間決定装置9等の各装置が複数のサーバやコンピュータによって構成されている場合もある。なお、本実施の形態においては、リソース量を、クラスタを構成するサーバの台数としているが、クラスタを例えば1台のサーバに置き換え、クラスタを構成するサーバを例えばメモリ及びCPUのセット等の処理ユニットに置き換えて本発明を応用することも可能である。
Although one embodiment of the present invention has been described above, the present invention is not limited to this. For example, the schematic diagrams shown in FIGS. 1 and 3 are examples, and the queues, the length of processing time, the number of servers, and the like are not limited to the cases shown in the drawings. Further, the system configuration diagram shown in FIG. 2 is an example, and each device such as the
また、図4及び図5に示したテーブル構成は一例であって、同様のデータを格納するためであれば別の構成を採用するようにしてもよいし、必要に応じて項目を追加又は削除してもよい。また、図6に示した機能ブロック構成は一例であって、実際のプログラム・モジュール構成やメモリ構成とは異なる場合がある。さらに、図7乃至図9に示した処理フローも一例であって、同様の処理結果が得られる範囲において処理の順序を入れ替えてもよいし、必要に応じてステップを追加又は削除してもよい。 The table configurations shown in FIGS. 4 and 5 are examples, and other configurations may be adopted as long as they store similar data, and items are added or deleted as necessary. May be. Further, the functional block configuration shown in FIG. 6 is an example, and may differ from the actual program / module configuration or memory configuration. Furthermore, the processing flows shown in FIG. 7 to FIG. 9 are also examples, and the processing order may be changed within a range in which similar processing results can be obtained, and steps may be added or deleted as necessary. .
(付記1)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間を取得し、記憶装置に格納するステップと、
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施ステップと、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施ステップを実行する繰り返しステップと、
を含み、コンピュータにより実行される情報処理方法。
(Appendix 1)
For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Steps,
A simulation execution step of calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing it in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Re-setting the estimated service time based on the predetermined rule, storing the estimated service time in the service time storage unit, and repeating the simulation execution step;
An information processing method executed by a computer.
(付記2)
基準値格納部には、前記サービス時間の最大値以下の値を有する第1の基準値と当該第1の基準値より小さく且つ前記サービス時間の最小値以上の値を有する第2の基準値とが格納されており、
前記繰り返しステップが、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が正の値である場合には、前記第1の基準値を切り下げて前記基準値格納部に格納すると共に新たな第1の基準値と前記第2の基準値との間に新たな推定サービス時間を設定して前記サービス時間格納部に格納するステップと、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が負の値である場合には、前記第2の基準値を切り上げて前記基準値格納部に格納すると共に新たな第2の基準値と前記第1の基準値との間に新たな推定サービス時間を設定して前記サービス時間格納部に格納するステップと、
を含む付記1記載の情報処理方法。
(Appendix 2)
The reference value storage unit includes a first reference value having a value less than or equal to the maximum value of the service time, and a second reference value having a value smaller than the first reference value and greater than or equal to the minimum value of the service time; Is stored,
The repeating step comprises:
When the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device is a positive value, the first reference value And setting the new estimated service time between the new first reference value and the second reference value and storing the new estimated service time in the service time storage unit;
When the difference between the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device is a negative value, the second reference value Rounding up and storing in the reference value storage unit and setting a new estimated service time between the new second reference value and the first reference value and storing in the service time storage unit;
The information processing method according to
(付記3)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間から前記サービス時間を導出するサービス時間導出方法であって、
前記処理ユニットの稼動中に計測され且つ処理時間格納部に格納されている前記処理ユニットの処理時間を推定サービス時間としてサービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記推定サービス時間に基づき待ち行列シミュレーションを実施し、前記待ち行列シミュレーションにより算出された待ち時間を待ち時間格納部に格納するシミュレーション実施ステップと、
前記待ち時間格納部に格納された前記待ち時間と前記サービス時間格納部に格納された前記推定サービス時間との和と、前記処理時間格納部に格納されている前記処理時間との差を計算し、第1の差として誤差格納部に格納する誤差計算ステップと、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲外である場合、前記推定サービス時間を再設定し、前記サービス時間格納部に格納する再設定ステップと、
を含み、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲内である場合、前記サービス時間格納部に格納された前記推定サービス時間を当該処理ユニットのサービス時間とみなす、
コンピュータにより実行されるサービス時間導出方法。
(Appendix 3)
For a processing unit that executes a predetermined service, a service time that is the sum of the waiting time and the service time and that derives the service time from the processing time measured during operation without the waiting time and the service time being separated. A derivation method comprising:
Storing the processing time of the processing unit measured during operation of the processing unit and stored in the processing time storage unit in the service time storage unit as an estimated service time;
A simulation execution step of performing a queuing simulation based on the estimated service time stored in the service time storage unit, and storing the waiting time calculated by the queue simulation in a waiting time storage unit;
A difference between the sum of the waiting time stored in the waiting time storage unit and the estimated service time stored in the service time storage unit and the processing time stored in the processing time storage unit is calculated. An error calculation step of storing in the error storage unit as the first difference;
A resetting step of resetting the estimated service time and storing in the service time storage unit when the first difference stored in the error storage unit is outside a predetermined error tolerance;
Including
If the first difference stored in the error storage unit is within a predetermined error tolerance, the estimated service time stored in the service time storage unit is regarded as a service time of the processing unit;
A service time deriving method executed by a computer.
(付記4)
システムを構成する1又は複数のクラスタについて、当該クラスタを構成する処理ユニット数を調整する処理ユニット数調整方法であって、
前記システムの稼動中に計測された前記処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより前記処理ユニットのサービス時間を導出し、サービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記処理ユニットのサービス時間に基づき前記クラスタ毎に第2の待ち行列シミュレーションを実施するステップと、
前記第2の待ち行列シミュレーションにより算出された前記クラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納するステップと、
前記第2の待ち行列シミュレーションにより算出された前記処理ユニット毎の稼働率を稼働率格納部に格納するステップと、
前記システム処理時間格納部に格納された前記システム全体の処理時間と前記稼働率格納部に格納された稼働率とに基づき、前記クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定ステップと、
を含み、コンピュータにより実行される処理ユニット数調整方法。
(Appendix 4)
A method for adjusting the number of processing units for adjusting the number of processing units constituting a cluster for one or a plurality of clusters constituting the system,
Deriving a service time of the processing unit by performing a first queuing simulation using the processing time of the processing unit measured during operation of the system, and storing the service time in a service time storage unit;
Performing a second queuing simulation for each of the clusters based on the service time of the processing unit stored in the service time storage;
Totaling the processing time for each cluster calculated by the second queuing simulation to calculate the processing time of the entire system and storing it in the system processing time storage unit;
Storing an operation rate for each of the processing units calculated by the second queue simulation in an operation rate storage unit;
Based on the processing time of the entire system stored in the system processing time storage unit and the operating rate stored in the operating rate storage unit, an appropriate value of the number of processing units constituting the cluster is determined and stored. A decision step to store in the department;
A method for adjusting the number of processing units executed by a computer.
(付記5)
前記決定ステップが、
前記システム処理時間格納部に格納された前記システム全体の処理時間が所定の最長処理時間よりも長い場合、前記稼働率格納部に格納された稼働率に基づき、前記システムを構成するクラスタのうちで、稼働率が最大の処理ユニット又は所定の最大稼働率を越えている処理ユニットを含むクラスタを特定するステップと、
特定された前記クラスタに処理ユニットを1追加した状態で前記第2の待ち行列シミュレーションを実施するステップと、
を含む付記7記載の処理ユニット数調整方法。
(Appendix 5)
The determining step comprises:
When the processing time of the entire system stored in the system processing time storage unit is longer than a predetermined longest processing time, based on the operating rate stored in the operating rate storage unit, among the clusters constituting the system Identifying a cluster including a processing unit having a maximum operating rate or a processing unit exceeding a predetermined maximum operating rate;
Performing the second queuing simulation with one processing unit added to the identified cluster;
The processing unit number adjusting method according to appendix 7, including:
(付記6)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間を取得し、記憶装置に格納するステップと、
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施ステップと、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施ステップを実行する繰り返しステップと、
をコンピュータに実行させるプログラム。
(Appendix 6)
For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Steps,
A simulation execution step of calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing it in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Re-setting the estimated service time based on the predetermined rule, storing the estimated service time in the service time storage unit, and repeating the simulation execution step;
A program that causes a computer to execute.
(付記7)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間から前記サービス時間を導出するサービス時間導出プログラムであって、
システムの稼動中に計測され且つ処理時間格納部に格納されている前記処理ユニットの処理時間を推定サービス時間としてサービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記推定サービス時間に基づき待ち行列シミュレーションを実施し、前記待ち行列シミュレーションにより算出された待ち時間を待ち時間格納部に格納するシミュレーション実施ステップと、
前記待ち時間格納部に格納された前記待ち時間と前記サービス時間格納部に格納された前記推定サービス時間との和と、前記処理時間格納部に格納されている前記処理時間との差を計算し、第1の差として誤差格納部に格納する誤差計算ステップと、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲外である場合、前記推定サービス時間を再設定し、前記サービス時間格納部に格納する再設定ステップと、
をコンピュータに実行させ、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲内である場合、前記サービス時間格納部に格納された前記推定サービス時間を当該処理ユニットのサービス時間とみなす、
サービス時間導出プログラム。
(Appendix 7)
For a processing unit that executes a predetermined service, a service time that is the sum of the waiting time and the service time and that derives the service time from the processing time measured during operation without the waiting time and the service time being separated. A derivation program,
Storing the processing time of the processing unit measured during operation of the system and stored in the processing time storage unit in the service time storage unit as an estimated service time;
A simulation execution step of performing a queuing simulation based on the estimated service time stored in the service time storage unit, and storing the waiting time calculated by the queue simulation in a waiting time storage unit;
A difference between the sum of the waiting time stored in the waiting time storage unit and the estimated service time stored in the service time storage unit and the processing time stored in the processing time storage unit is calculated. An error calculation step of storing in the error storage unit as the first difference;
A resetting step of resetting the estimated service time and storing in the service time storage unit when the first difference stored in the error storage unit is outside a predetermined error tolerance;
To the computer,
If the first difference stored in the error storage unit is within a predetermined error tolerance, the estimated service time stored in the service time storage unit is regarded as a service time of the processing unit;
Service time derivation program.
(付記8)
システムを構成する1又は複数のクラスタについて、当該クラスタを構成する処理ユニット数を調整する処理ユニット数調整プログラムであって、
前記システムの稼動中に計測された前記処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより前記処理ユニットのサービス時間を導出し、サービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記処理ユニットのサービス時間に基づき前記クラスタ毎に第2の待ち行列シミュレーションを実施するステップと、
前記第2の待ち行列シミュレーションにより算出された前記クラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納するステップと、
前記第2の待ち行列シミュレーションにより算出された前記処理ユニット毎の稼働率を稼働率格納部に格納するステップと、
前記システム処理時間格納部に格納された前記システム全体の処理時間と前記稼働率格納部に格納された稼働率とに基づき、前記クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定ステップと、
をコンピュータ実行させる処理ユニット数調整プログラム。
(Appendix 8)
A processing unit number adjustment program for adjusting the number of processing units constituting a cluster for one or a plurality of clusters constituting the system,
Deriving a service time of the processing unit by performing a first queuing simulation using the processing time of the processing unit measured during operation of the system, and storing the service time in a service time storage unit;
Performing a second queuing simulation for each of the clusters based on the service time of the processing unit stored in the service time storage;
Totaling the processing time for each cluster calculated by the second queuing simulation to calculate the processing time of the entire system and storing it in the system processing time storage unit;
Storing an operation rate for each of the processing units calculated by the second queue simulation in an operation rate storage unit;
Based on the processing time of the entire system stored in the system processing time storage unit and the operating rate stored in the operating rate storage unit, an appropriate value of the number of processing units constituting the cluster is determined and stored. A decision step to store in the department;
For adjusting the number of processing units for causing a computer to execute.
(付記9)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間を取得し、記憶装置に格納する手段と、
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施手段と、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施手段を実行する繰り返し手段と、
を有する情報処理装置。
(Appendix 9)
For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Means,
A simulation execution means for calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing the waiting time in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Repetitive means for resetting the estimated service time based on the predetermined rule, storing it in the service time storage unit, and executing the simulation execution means;
An information processing apparatus.
(付記10)
所定のサービスを実行する処理ユニットについて、待ち時間とサービス時間との和であり且つ当該待ち時間とサービス時間とが分離されずに稼動中に計測される処理時間から前記サービス時間を導出するサービス時間導出装置であって、
システムの稼動中に計測され且つ処理時間格納部に格納されている前記処理ユニットの処理時間を推定サービス時間としてサービス時間格納部に格納する手段と、
前記サービス時間格納部に格納された前記推定サービス時間に基づき待ち行列シミュレーションを実施し、前記待ち行列シミュレーションにより算出された待ち時間を待ち時間格納部に格納するシミュレーション実施手段と、
前記待ち時間格納部に格納された前記待ち時間と前記サービス時間格納部に格納された前記推定サービス時間との和と、前記処理時間格納部に格納されている前記処理時間との差を計算し、第1の差として誤差格納部に格納する誤差計算手段と、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲外である場合、前記推定サービス時間を再設定し、前記サービス時間格納部に格納する再設定手段と、
を有し、
前記誤差格納部に格納された前記第1の差が所定の誤差許容範囲内である場合、前記サービス時間格納部に格納された前記推定サービス時間を当該処理ユニットのサービス時間とみなす、
サービス時間導出装置。
(Appendix 10)
For a processing unit that executes a predetermined service, a service time that is the sum of the waiting time and the service time and that derives the service time from the processing time measured during operation without the waiting time and the service time being separated. A deriving device,
Means for storing in the service time storage unit the processing time of the processing unit measured during the operation of the system and stored in the processing time storage unit as an estimated service time;
Simulation execution means for performing a queuing simulation based on the estimated service time stored in the service time storage unit, and storing the waiting time calculated by the queue simulation in the waiting time storage unit;
A difference between the sum of the waiting time stored in the waiting time storage unit and the estimated service time stored in the service time storage unit and the processing time stored in the processing time storage unit is calculated. Error calculation means for storing in the error storage as the first difference;
Resetting means for resetting the estimated service time and storing it in the service time storage unit when the first difference stored in the error storage unit is outside a predetermined error allowable range;
Have
If the first difference stored in the error storage unit is within a predetermined error tolerance, the estimated service time stored in the service time storage unit is regarded as a service time of the processing unit;
Service time deriving device.
(付記11)
システムを構成する1又は複数のクラスタについて、当該クラスタを構成する処理ユニット数を調整する処理ユニット数調整装置であって、
前記システムの稼動中に計測された前記処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより前記処理ユニットのサービス時間を導出し、サービス時間格納部に格納する手段と、
前記サービス時間格納部に格納された前記処理ユニットのサービス時間に基づき前記クラスタ毎に第2の待ち行列シミュレーションを実施する手段と、
前記第2の待ち行列シミュレーションにより算出された前記クラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納する手段と、
前記第2の待ち行列シミュレーションにより算出された前記処理ユニット毎の稼働率を稼働率格納部に格納する手段と、
前記システム処理時間格納部に格納された前記システム全体の処理時間と前記稼働率格納部に格納された稼働率とに基づき、前記クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定手段と、
を有する処理ユニット数調整装置。
(Appendix 11)
A processing unit number adjusting device that adjusts the number of processing units constituting a cluster for one or a plurality of clusters constituting the system,
Means for deriving a service time of the processing unit by performing a first queuing simulation using the processing time of the processing unit measured during operation of the system, and storing the service time in a service time storage unit;
Means for performing a second queuing simulation for each cluster based on the service time of the processing unit stored in the service time storage;
Means for calculating the processing time of the entire system by summing up the processing time for each cluster calculated by the second queuing simulation, and storing it in the system processing time storage unit;
Means for storing an operation rate for each processing unit calculated by the second queue simulation in an operation rate storage unit;
Based on the processing time of the entire system stored in the system processing time storage unit and the operating rate stored in the operating rate storage unit, an appropriate value of the number of processing units constituting the cluster is determined and stored. Determining means for storing in the department;
An apparatus for adjusting the number of processing units.
1 ネットワーク 3 ユーザ端末
5 サーバ切替装置 7 処理時間格納部
9 サービス時間決定装置 11 サービス時間格納部
13 システム要件DB 15 性能評価装置
17 サーバ・サービス時間DB 19 評価結果格納部
21 管理サーバ 50,54 クラスタ
51,53,55 サーバ
510,530,550 処理時間ログ生成部
DESCRIPTION OF
Claims (5)
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施ステップと、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施ステップを実行する繰り返しステップと、
を含み、コンピュータにより実行される情報処理方法。 For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Steps,
A simulation execution step of calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing it in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Re-setting the estimated service time based on the predetermined rule, storing the estimated service time in the service time storage unit, and repeating the simulation execution step;
An information processing method executed by a computer.
前記システムの稼動中に計測された前記処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより前記処理ユニットのサービス時間を導出し、サービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記処理ユニットのサービス時間に基づき前記クラスタ毎に第2の待ち行列シミュレーションを実施するステップと、
前記第2の待ち行列シミュレーションにより算出された前記クラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納するステップと、
前記第2の待ち行列シミュレーションにより算出された前記処理ユニット毎の稼働率を稼働率格納部に格納するステップと、
前記システム処理時間格納部に格納された前記システム全体の処理時間と前記稼働率格納部に格納された稼働率とに基づき、前記クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定ステップと、
を含み、コンピュータにより実行される処理ユニット数調整方法。 A method for adjusting the number of processing units for adjusting the number of processing units constituting a cluster for one or a plurality of clusters constituting the system,
Deriving a service time of the processing unit by performing a first queuing simulation using the processing time of the processing unit measured during operation of the system, and storing the service time in a service time storage unit;
Performing a second queuing simulation for each of the clusters based on the service time of the processing unit stored in the service time storage;
Totaling the processing time for each cluster calculated by the second queuing simulation to calculate the processing time of the entire system and storing it in the system processing time storage unit;
Storing an operation rate for each of the processing units calculated by the second queue simulation in an operation rate storage unit;
Based on the processing time of the entire system stored in the system processing time storage unit and the operating rate stored in the operating rate storage unit, an appropriate value of the number of processing units constituting the cluster is determined and stored. A decision step to store in the department;
A method for adjusting the number of processing units executed by a computer.
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施ステップと、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施ステップを実行する繰り返しステップと、
をコンピュータに実行させるプログラム。 For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Steps,
A simulation execution step of calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing it in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Re-setting the estimated service time based on the predetermined rule, storing the estimated service time in the service time storage unit, and repeating the simulation execution step;
A program that causes a computer to execute.
前記システムの稼動中に計測された前記処理ユニットの処理時間を用いて第1の待ち行列シミュレーションを実施することにより前記処理ユニットのサービス時間を導出し、サービス時間格納部に格納するステップと、
前記サービス時間格納部に格納された前記処理ユニットのサービス時間に基づき前記クラスタ毎に第2の待ち行列シミュレーションを実施するステップと、
前記第2の待ち行列シミュレーションにより算出された前記クラスタ毎の処理時間を合計してシステム全体の処理時間を算出し、システム処理時間格納部に格納するステップと、
前記第2の待ち行列シミュレーションにより算出された前記処理ユニット毎の稼働率を稼働率格納部に格納するステップと、
前記システム処理時間格納部に格納された前記システム全体の処理時間と前記稼働率格納部に格納された稼働率とに基づき、前記クラスタを構成する処理ユニット数の適正値を決定し処理ユニット数格納部に格納する決定ステップと、
をコンピュータ実行させる処理ユニット数調整プログラム。 A processing unit number adjustment program for adjusting the number of processing units constituting a cluster for one or a plurality of clusters constituting the system,
Deriving a service time of the processing unit by performing a first queuing simulation using the processing time of the processing unit measured during operation of the system, and storing the service time in a service time storage unit;
Performing a second queuing simulation for each of the clusters based on the service time of the processing unit stored in the service time storage;
Totaling the processing time for each cluster calculated by the second queuing simulation to calculate the processing time of the entire system and storing it in the system processing time storage unit;
Storing an operation rate for each of the processing units calculated by the second queue simulation in an operation rate storage unit;
Based on the processing time of the entire system stored in the system processing time storage unit and the operating rate stored in the operating rate storage unit, an appropriate value of the number of processing units constituting the cluster is determined and stored. A decision step to store in the department;
For adjusting the number of processing units for causing a computer to execute.
サービス時間格納部に格納され且つ所定のルールに基づき設定される推定サービス時間に対応する待ち時間を待ち行列シミュレーションにより算出し、待ち行列格納部に格納するシミュレーション実施手段と、
前記推定サービス時間と前記待ち時間格納部に格納された前記待ち時間との和と前記記憶装置に格納された前記処理時間との差が許容誤差範囲内に収まるまで又は特定の条件が満たされるまで、前記推定サービス時間を前記所定のルールに基づき再設定して前記サービス時間格納部に格納し、前記シミュレーション実施手段を実行する繰り返し手段と、
を有する情報処理装置。 For a processing unit that executes a predetermined service, the processing time that is the sum of the waiting time and the service time and that is measured while the waiting time and the service time are not separated is acquired and stored in the storage device Means,
A simulation execution means for calculating a waiting time corresponding to the estimated service time stored in the service time storage unit and set based on a predetermined rule by a queue simulation, and storing the waiting time in the queue storage unit;
Until the difference between the sum of the estimated service time and the waiting time stored in the waiting time storage unit and the processing time stored in the storage device falls within an allowable error range or until a specific condition is satisfied Repetitive means for resetting the estimated service time based on the predetermined rule, storing it in the service time storage unit, and executing the simulation execution means;
An information processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003380860A JP4322094B2 (en) | 2003-11-11 | 2003-11-11 | Information processing method, service time deriving method, and processing unit number adjusting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003380860A JP4322094B2 (en) | 2003-11-11 | 2003-11-11 | Information processing method, service time deriving method, and processing unit number adjusting method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005148799A true JP2005148799A (en) | 2005-06-09 |
JP4322094B2 JP4322094B2 (en) | 2009-08-26 |
Family
ID=34690408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003380860A Expired - Fee Related JP4322094B2 (en) | 2003-11-11 | 2003-11-11 | Information processing method, service time deriving method, and processing unit number adjusting method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4322094B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009193205A (en) * | 2008-02-13 | 2009-08-27 | Nec Corp | Automatic tuning system, automatic tuning device, and automatic tuning method |
JP2010066828A (en) * | 2008-09-08 | 2010-03-25 | Ns Solutions Corp | Information processor, information processing method and program |
JP2011086295A (en) * | 2009-10-16 | 2011-04-28 | Sap Ag | Estimating service resource consumption based on response time |
JP2017215923A (en) * | 2016-05-31 | 2017-12-07 | エーオー カスペルスキー ラボAO Kaspersky Lab | System and method for detecting malicious files on virtual machine in distributed network |
JP2019040408A (en) * | 2017-08-25 | 2019-03-14 | 富士通株式会社 | Information processing device, information processing system, and program |
CN111767137A (en) * | 2020-06-03 | 2020-10-13 | 北京奇艺世纪科技有限公司 | System deployment method, device, electronic equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07182310A (en) * | 1993-12-24 | 1995-07-21 | Canon Inc | Method and device for structure analysis |
JP2001282871A (en) * | 2000-03-31 | 2001-10-12 | Toshiba Corp | Model identification method, device and storage medium storing model identification program |
JP2002183386A (en) * | 2000-12-14 | 2002-06-28 | Esso Sekiyu Private Ltd | Labor cost optimization device in gas station |
JP2003178040A (en) * | 2001-12-10 | 2003-06-27 | Hitachi Information Systems Ltd | Web site constitution determination supporting method |
-
2003
- 2003-11-11 JP JP2003380860A patent/JP4322094B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07182310A (en) * | 1993-12-24 | 1995-07-21 | Canon Inc | Method and device for structure analysis |
JP2001282871A (en) * | 2000-03-31 | 2001-10-12 | Toshiba Corp | Model identification method, device and storage medium storing model identification program |
JP2002183386A (en) * | 2000-12-14 | 2002-06-28 | Esso Sekiyu Private Ltd | Labor cost optimization device in gas station |
JP2003178040A (en) * | 2001-12-10 | 2003-06-27 | Hitachi Information Systems Ltd | Web site constitution determination supporting method |
Non-Patent Citations (2)
Title |
---|
吉野 秀明、外1名: "待ち行列網解析システム TEDAS−Q", 情報処理学会論文誌, vol. 第31巻,第4号, JPN6009007412, 15 April 1990 (1990-04-15), pages 624 - 633, ISSN: 0001332954 * |
黒澤 和人, 統計・OR入門, vol. 初版第1版, JPN6009007414, 1 March 1995 (1995-03-01), pages 83 - 95, ISSN: 0001253405 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009193205A (en) * | 2008-02-13 | 2009-08-27 | Nec Corp | Automatic tuning system, automatic tuning device, and automatic tuning method |
JP2010066828A (en) * | 2008-09-08 | 2010-03-25 | Ns Solutions Corp | Information processor, information processing method and program |
JP2011086295A (en) * | 2009-10-16 | 2011-04-28 | Sap Ag | Estimating service resource consumption based on response time |
US9804943B2 (en) | 2009-10-16 | 2017-10-31 | Sap Se | Estimating service resource consumption based on response time |
JP2017215923A (en) * | 2016-05-31 | 2017-12-07 | エーオー カスペルスキー ラボAO Kaspersky Lab | System and method for detecting malicious files on virtual machine in distributed network |
JP2019040408A (en) * | 2017-08-25 | 2019-03-14 | 富士通株式会社 | Information processing device, information processing system, and program |
CN111767137A (en) * | 2020-06-03 | 2020-10-13 | 北京奇艺世纪科技有限公司 | System deployment method, device, electronic equipment and storage medium |
CN111767137B (en) * | 2020-06-03 | 2023-09-01 | 北京奇艺世纪科技有限公司 | System deployment method and device, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP4322094B2 (en) | 2009-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10924535B2 (en) | Resource load balancing control method and cluster scheduler | |
CN108089921B (en) | Server for cloud big data operation architecture and operation resource optimization method thereof | |
US10972344B2 (en) | Automated adjustment of subscriber policies | |
US8560667B2 (en) | Analysis method and apparatus | |
US7953691B2 (en) | Performance evaluating apparatus, performance evaluating method, and program | |
CN110134495B (en) | Container cross-host online migration method, storage medium and terminal equipment | |
US7668096B2 (en) | Apparatus for modeling queueing systems with highly variable traffic arrival rates | |
US9740534B2 (en) | System for controlling resources, control pattern generation apparatus, control apparatus, method for controlling resources and program | |
JP7167174B2 (en) | Dynamic Grant Batch Processing in Distributed Storage Networks | |
US20050278439A1 (en) | System and method for evaluating capacity of a heterogeneous media server configuration for supporting an expected workload | |
CN104375897A (en) | Cloud computing resource scheduling method based on minimum relative load imbalance degree | |
WO2006112988A2 (en) | Prescriptive architecture recommendations | |
CN112764920B (en) | Edge application deployment method, device, equipment and storage medium | |
CN109800075A (en) | Cluster management method and device | |
JP4322094B2 (en) | Information processing method, service time deriving method, and processing unit number adjusting method | |
JP2010152818A (en) | Server system | |
WO2021000694A1 (en) | Method for deploying services and scheduling apparatus | |
CN111966490A (en) | Spark partition load balancing method | |
CN114035906B (en) | Virtual machine migration method and device, electronic equipment and storage medium | |
JP2006268155A (en) | Load balancing device, server system, and its load balancing method | |
CN110266525B (en) | CDN server number configuration method, equipment and computer readable storage medium | |
CN112579246B (en) | Virtual machine migration processing method and device | |
CN113347016B (en) | Virtualization network function migration method based on resource occupation and time delay sensitivity | |
CN118138632B (en) | Extension processing method and system of micro-service architecture | |
Melikov et al. | Queuing management with feedback in cloud computing centers with large numbers of web servers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060424 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090417 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090602 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090602 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120612 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120612 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130612 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130612 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |