JP2010086317A - Resource allocation method, resource allocation program, and flow processing system - Google Patents

Resource allocation method, resource allocation program, and flow processing system Download PDF

Info

Publication number
JP2010086317A
JP2010086317A JP2008255264A JP2008255264A JP2010086317A JP 2010086317 A JP2010086317 A JP 2010086317A JP 2008255264 A JP2008255264 A JP 2008255264A JP 2008255264 A JP2008255264 A JP 2008255264A JP 2010086317 A JP2010086317 A JP 2010086317A
Authority
JP
Japan
Prior art keywords
node
flow
execution
partial
allocation
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
Application number
JP2008255264A
Other languages
Japanese (ja)
Other versions
JP4834708B2 (en
Inventor
Satoshi Nakamura
中村  聡
Masahiko Tsuda
政彦 津田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008255264A priority Critical patent/JP4834708B2/en
Publication of JP2010086317A publication Critical patent/JP2010086317A/en
Application granted granted Critical
Publication of JP4834708B2 publication Critical patent/JP4834708B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To suppress a decrease in reliability of a flow execution path in allocating each of nodes called from a flow of a flow processing system to a plurality of physical computers. <P>SOLUTION: When an operation management device 1 cannot allocate a service called by a whole BP (Business Process) to one service execution device 3, the device 1 divides the whole BP into a plurality of partial BPs along an execution path for each branch of the whole BP, calculates total necessary resource amount information on the service called by executing the BP to determine a necessary resource amount of the partial BP, retrieves the service execution device 3 which has an available resource amount larger than the determined necessary resource amount of the partial BP, and allocates the service called by partial BP to the retrieved service execution device 3. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、リソース割当方法、リソース割当プログラム、および、フロー処理システムに関する。   The present invention relates to a resource allocation method, a resource allocation program, and a flow processing system.

物理計算機のリソースを論理的に分割して、複数の計算機を使用するのと同等の効果を得られる仮想計算機技術が使われている。仮想計算機技術により、従来別々の物理計算機で実行していた業務を少数の物理計算機上の仮想計算機で実行することで、物理計算機数を集約することができる。特許文献1には、仮想計算機の負荷に応じて物理計算機のリソースを割り当てる技術が開示されている。
特開2002−202959号公報
Virtual computer technology is used that logically divides physical computer resources and achieves the same effect as using multiple computers. By using virtual computer technology, the number of physical computers can be aggregated by executing operations that have been executed on separate physical computers with virtual computers on a small number of physical computers. Patent Document 1 discloses a technology for allocating resources of a physical computer according to a load on a virtual computer.
JP 2002-202959 A

計算機上で実行される多くの業務は、複数の業務単位を実行順序に従って接続する、フロー形式によって表現される。フロー形式で表現される業務の流れは、分岐によって複数の実行パスに分割される。従来の技術では、各業務単位を個別に別々の物理計算機に割り当てられていたものの、フローの実行パスが考慮されていないため、その実行パスの一部の信頼性が低下すると、実行パスの開始点から終了点までのルート全体に、信頼性の低下が影響してしまう。   Many business operations executed on a computer are expressed by a flow format in which a plurality of business units are connected according to an execution order. The business flow expressed in the flow format is divided into a plurality of execution paths by branching. In the conventional technology, each business unit is individually assigned to a separate physical computer, but the execution path of the flow is not taken into account, so if the reliability of a part of the execution path decreases, the execution path starts. Decreasing reliability affects the entire route from the point to the end point.

図20は、フロー処理システム(上位概念)と、その2つの下位概念(BP(Business Process)処理システム、ジョブ処理システム)とについて、対応する用語を示す説明表である。
フロー処理システムは、集合要素である「ノード呼び出し」間を、接続端子である「エッジ」で接続することで表現される。1つの「ノード呼び出し」は、その「ノード呼び出し」を実行する計算機とは別の計算機上に割り当てられる「ノード」を呼び出すことで、フローの一業務単位に相当する処理を実行する。また、1つの実行パス上のルートの「ノード呼び出し」を、開始点から終了点まで順に抽出したものが、「部分フロー」である。
FIG. 20 is an explanatory table showing corresponding terms for the flow processing system (superordinate concept) and its two subordinate concepts (BP (Business Process) processing system, job processing system).
The flow processing system is expressed by connecting “node calls” that are collective elements with “edges” that are connection terminals. One “node call” executes a process corresponding to one business unit of a flow by calling a “node” allocated on a computer different from the computer that executes the “node call”. Further, “partial flow” is obtained by sequentially extracting “node calls” of a route on one execution path from a start point to an end point.

フロー処理システムの一例として、BP処理システムが挙げられる。BP処理システムでは、「フロー」が「BP」に、「部分フロー」が「部分BP」に、「ノード呼び出し」が「サービス呼び出しアクティビティ」に、「ノード」が「サービス」に、それぞれ具現化される。   An example of the flow processing system is a BP processing system. In the BP processing system, “flow” is embodied as “BP”, “partial flow” as “partial BP”, “node call” as “service call activity”, and “node” as “service”. The

フロー処理システムの別の一例として、ジョブ処理システムが挙げられる。ジョブ処理システムでは、「フロー」が「ジョブネット」に、「部分フロー」が「部分ジョブネット」に、「ノード呼び出し」が「ジョブ呼び出し」に、「ノード」が「ジョブ」に、それぞれ具現化される。   Another example of the flow processing system is a job processing system. In the job processing system, “flow” is realized as “job net”, “partial flow” is realized as “partial job net”, “node call” is called “job call”, and “node” is realized as “job”. Is done.

以上、フロー処理システムの2つの例について、説明した。これらのフロー処理システムで共通するのは、呼び出し先(ノード、サービス、ジョブ)を割り当てる計算機の候補が複数存在するときに、どの呼び出し先をどの計算機に割り当てれば、高い信頼性を得られるか、という課題である。   Heretofore, two examples of the flow processing system have been described. What is common in these flow processing systems is that when there are multiple computer candidates to which call destinations (nodes, services, jobs) are assigned, which call destination is assigned to which computer, high reliability can be obtained. This is a problem.

例えばフロー処理システムの代表例の1つである、BP処理システムにおいて、BPが定義するアクティビティの実行により呼び出されるサービスの割当には、BPを考慮した割当法により信頼性を向上させることができる。   For example, in a BP processing system, which is one of typical examples of a flow processing system, the reliability of a service called by executing an activity defined by a BP can be improved by an allocation method that takes the BP into consideration.

例えばBP処理システムにおいて、物理計算機a1とa2があり、物理計算機a1上の仮想計算機で実行されるサービスs1と、物理計算機a2上の仮想計算機で実行されるサービスs2があるとする。サービスs1とs2の両方を呼び出す所定BPがあった場合、物理計算機a1、a2のいずれかで障害が発生すると、所定BPの実行処理は、継続不可能になる。   For example, in the BP processing system, there are physical computers a1 and a2, and it is assumed that there is a service s1 executed by a virtual computer on the physical computer a1 and a service s2 executed by a virtual computer on the physical computer a2. If there is a predetermined BP that calls both services s1 and s2, if a failure occurs in either of the physical computers a1 and a2, the execution process of the predetermined BP cannot be continued.

このように、信頼性が低下してしまう要因は、同一のBPから呼び出すサービスに対してリソースを割り当てる物理計算機の数が多いことである。そのため、同一BPから呼び出されるサービスを同一物理計算機に割り当てることにより、信頼性を向上させることができる。   As described above, the reason why the reliability is lowered is that the number of physical computers that allocate resources to services called from the same BP is large. Therefore, reliability can be improved by allocating services called from the same BP to the same physical computer.

しかし、BP処理システムにおいて、あるBPから呼び出されるサービスの総リソース量が、割り当て先の物理計算機のリソース量よりも多い場合、従来技術では割り当て対象のBPから呼び出されるサービスの総リソース量よりも多い物理計算機を新たに用意するか、BPを考慮せずサービスを複数の物理計算機に分散配置する。前者では、物理計算機に余分なリソースが生じてしまい、後者では、信頼性が低下してしまう。   However, in the BP processing system, when the total resource amount of the service called from a certain BP is larger than the resource amount of the allocation-destination physical computer, in the conventional technology, the total resource amount of the service called from the allocation target BP is larger. A new physical computer is prepared or a service is distributed to a plurality of physical computers without considering BP. In the former case, extra resources are generated in the physical computer, and in the latter case, reliability is lowered.

そこで、本発明は、前記した問題を解決し、フロー処理システム(BP処理システム、ジョブ処理システムも含む)のフローから呼び出される各ノードを、複数の物理計算機へ割り当てるときに、フローの実行パスの信頼性の低下を抑制することを、主な目的とする。   Therefore, the present invention solves the above-described problem, and assigns each node called from a flow of a flow processing system (including a BP processing system and a job processing system) to a plurality of physical computers. The main purpose is to suppress the decrease in reliability.

前記課題を解決するために、本発明は、フローを実行するフロー実行装置と、前記フローのノード呼び出しから呼び出されるノードを実行するノード実行装置と、前記実行されるノードに割り当てられた物理計算機資源である前記ノード実行装置のリソースを管理する運用管理装置と、を含めて構成されるフロー処理システムによるリソース割当方法であって、
前記運用管理装置が、
前記フローのノード呼び出しとそのノード呼び出しの実行により呼び出されるノードとの対応情報、前記呼び出されるノードごとの必要リソース量情報、および、前記ノード実行装置ごとに利用可能なリソース量情報を記憶部から読み取り、
前記フローについて、そのフローの実行により呼び出されるノードの必要リソース量情報を前記対応情報に従って集計して、フローの必要リソース量を求め、求めた前記フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を1台以上検索し、
前記ノード実行装置が1台以上検索されたときには、その検索された1台以上の前記ノード実行装置から1台の前記ノード実行装置を選択し、選択した前記ノード実行装置に対して、前記フローから呼び出されるノードを割り当て、
前記ノード実行装置が1台も検索されなかったときには、前記フローの分岐ごとの実行パスに沿って、フローを複数の部分フローに分割し、各部分フローごとに、そのフローの実行により呼び出されるノードの必要リソース量情報を集計して、部分フローの必要リソース量を求め、求めた前記部分フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を検索し、検索された前記ノード実行装置に対して、部分フローごとに呼び出されるノードを割り当てることを特徴とする。
その他の手段は、後記する。
In order to solve the above problems, the present invention provides a flow execution device for executing a flow, a node execution device for executing a node called from a node call of the flow, and a physical computer resource allocated to the executed node. A resource allocation method by a flow processing system configured to include an operation management device that manages resources of the node execution device,
The operation management device is
Reads from the storage unit correspondence information between a node call of the flow and a node called by execution of the node call, necessary resource amount information for each called node, and resource amount information available for each node execution device ,
For the flow, the necessary resource amount information of the node called by the execution of the flow is aggregated according to the correspondence information, the required resource amount of the flow is obtained, and the available resource amount exceeding the obtained required resource amount of the flow is calculated. Search for one or more node execution devices with
When one or more node execution devices are searched, one node execution device is selected from the searched one or more node execution devices, and the selected node execution device is selected from the flow. Assign the node to be called,
When no node execution device is searched, the flow is divided into a plurality of partial flows along the execution path for each branch of the flow, and a node called by executing the flow for each partial flow The necessary resource amount information is aggregated, the required resource amount of the partial flow is obtained, the node execution device having an available resource amount exceeding the obtained required resource amount of the partial flow is searched, and the searched node A node to be called for each partial flow is assigned to the execution device.
Other means will be described later.

本発明によれば、フロー処理システムのフローから呼び出される各ノードを、複数の物理計算機へ割り当てるときに、フローの実行パスの信頼性の低下を抑制することができる。   ADVANTAGE OF THE INVENTION According to this invention, when assigning each node called from the flow of a flow processing system to a some physical computer, the fall of the reliability of the execution path of a flow can be suppressed.

以下に、本発明が適用されるフロー処理システムの第1実施形態(BP処理システム)および第2実施形態(ジョブ処理システム)について、説明する。まず、BP処理システムの第1実施形態について、図面を参照して詳細に説明する。   Hereinafter, a first embodiment (BP processing system) and a second embodiment (job processing system) of a flow processing system to which the present invention is applied will be described. First, a first embodiment of a BP processing system will be described in detail with reference to the drawings.

図1は、BP処理システムの構成図を示す。BP処理システムは、1台以上のBP実行装置2と、1台以上の運用管理装置1と、2台以上のサービス実行装置3と、がネットワーク8で接続されて構成される。
物理計算機であるBP実行装置2は、CPU41、ネットワークインタフェース42、主記憶装置45、および、二次記憶装置43を有する。ネットワークインタフェース42は、ネットワーク8に接続されている。
なお、運用管理装置1および、サービス実行装置3も、BP実行装置2と同様に各計算機資源を備える物理計算機として構成される。運用管理装置1の主記憶装置44は、BP実行装置2および、サービス実行装置3に対する処理プログラム(図2で後記)が実装されている。
FIG. 1 shows a block diagram of a BP processing system. The BP processing system is configured by connecting one or more BP execution devices 2, one or more operation management devices 1, and two or more service execution devices 3 via a network 8.
The BP execution device 2, which is a physical computer, includes a CPU 41, a network interface 42, a main storage device 45, and a secondary storage device 43. The network interface 42 is connected to the network 8.
Note that the operation management apparatus 1 and the service execution apparatus 3 are also configured as physical computers including the respective computer resources, like the BP execution apparatus 2. The main storage device 44 of the operation management device 1 is installed with a processing program (described later in FIG. 2) for the BP execution device 2 and the service execution device 3.

運用管理装置1は、BP実行装置2に対してBPの実行を指示し、サービス実行装置3に対してサービスおよびそのサービスに割り当てられるリソースの割当を指示する。
リソースとは、サービス実行装置3の計算機資源であり、例えば、CPUやメモリなどの性能により定義される。BP実行装置2は、BPを実行することで、サービス実行装置3が実行するサービスを呼び出す。
BPを利用するユーザは、BP実行装置2へBPの実行を依頼し、BP実行装置2は、ネットワーク8を通じてBPに対応するサービスを実行するよう、サービス実行装置3へ要求電文を転送する。サービス実行装置3の実行結果は、ネットワーク8を通じてBP実行装置2へ伝えられ、最終的にユーザへ実行結果が伝えられる。
The operation management apparatus 1 instructs the BP execution apparatus 2 to execute BP, and instructs the service execution apparatus 3 to allocate a service and resources allocated to the service.
A resource is a computer resource of the service execution device 3, and is defined by, for example, the performance of a CPU, memory, or the like. The BP execution device 2 calls a service executed by the service execution device 3 by executing the BP.
The user who uses the BP requests the BP execution device 2 to execute the BP, and the BP execution device 2 transfers a request message to the service execution device 3 so as to execute the service corresponding to the BP through the network 8. The execution result of the service execution device 3 is transmitted to the BP execution device 2 through the network 8, and finally the execution result is transmitted to the user.

さらに、運用管理装置1と、サービス実行装置3とは、運用管理装置1からサービス実行装置3の電源を制御するために、管理用ネットワーク9で接続される。なお、ネットワーク8と、管理用ネットワーク9とは、流れるデータの種別が異なるため、これらの各ネットワークに接続する各装置では、各ネットワークに接続するためのインタフェースを、ネットワークごとに別々に用意することが、望ましい。   Furthermore, the operation management apparatus 1 and the service execution apparatus 3 are connected by a management network 9 in order to control the power supply of the service execution apparatus 3 from the operation management apparatus 1. Since the network 8 and the management network 9 are different in the type of data that flows, each device connected to each network must have a separate interface for connecting to each network. Is desirable.

図2は、BP処理システムの機能を示す構成図である。運用管理装置1の主記憶装置44は、割当計画部11と、BP指示部12と、サービス指示部13と、電源制御指示部14と、を有し、OS46が起動する。
割当計画部11は、割当用マスタテーブル15aをもとに、割当用コピーテーブル15bを編集することで、サービスへのリソースの割り当て処理を計画する。
BP指示部12は、BP定義テーブル16a,16bの内容をもとにした実行用BP記憶部22の内容の更新を、ネットワーク8経由でBP管理部21に指示する。
サービス指示部13は、BP割当テーブル17a,17bと、部分BP割当テーブル20a,20bと、冗長化定義テーブル19a,19bおよびサービス割当テーブル18a,18bの内容をもとにした仮想計算機32上のサービスおよびリソースの割り当てを、ネットワーク8経由で仮想計算機制御部31に指示する。
電源制御指示部14は、管理用ネットワーク9を介して、電源制御部35に対してサービス実行装置3の電源オンオフを指示する。
FIG. 2 is a configuration diagram showing functions of the BP processing system. The main storage device 44 of the operation management apparatus 1 includes an allocation planning unit 11, a BP instruction unit 12, a service instruction unit 13, and a power control instruction unit 14, and the OS 46 is activated.
The allocation planning unit 11 plans the resource allocation process to the service by editing the allocation copy table 15b based on the allocation master table 15a.
The BP instruction unit 12 instructs the BP management unit 21 to update the contents of the execution BP storage unit 22 based on the contents of the BP definition tables 16 a and 16 b via the network 8.
The service instruction unit 13 provides services on the virtual machine 32 based on the contents of the BP allocation tables 17a and 17b, the partial BP allocation tables 20a and 20b, the redundancy definition tables 19a and 19b, and the service allocation tables 18a and 18b. In addition, the virtual machine control unit 31 is instructed to allocate resources via the network 8.
The power control instruction unit 14 instructs the power control unit 35 to turn on and off the service execution device 3 via the management network 9.

運用管理装置1は、割当用マスタテーブル15aと、割当用コピーテーブル15bとを記憶する。
割当用マスタテーブル15aは、BP定義テーブル16aと、BP割当テーブル17aと、サービス割当テーブル18aと、冗長化定義テーブル19aと、部分BP割当テーブル20aと、を有する。
割当用コピーテーブル15bは、BP定義テーブル16bと、BP割当テーブル17bと、サービス割当テーブル18bと、冗長化定義テーブル19bと、部分BP割当テーブル20bと、を有する。
割当用コピーテーブル15bは、割当用マスタテーブル15aから作成されたコピーであり、このコピーに対して編集が行われる。編集結果が正常に反映されたときには、割当用コピーテーブル15bの内容が割当用マスタテーブル15aへ反映される。
The operation management apparatus 1 stores an allocation master table 15a and an allocation copy table 15b.
The allocation master table 15a includes a BP definition table 16a, a BP allocation table 17a, a service allocation table 18a, a redundancy definition table 19a, and a partial BP allocation table 20a.
The allocation copy table 15b includes a BP definition table 16b, a BP allocation table 17b, a service allocation table 18b, a redundancy definition table 19b, and a partial BP allocation table 20b.
The allocation copy table 15b is a copy created from the allocation master table 15a, and the copy is edited. When the editing result is normally reflected, the contents of the allocation copy table 15b are reflected in the allocation master table 15a.

BP実行装置2は、BP管理部21と、実行用BP記憶部22と、BP実行部23と、OS46と、を有する。
BP管理部21は、BP指示部12からの指示を受け、実行用BP記憶部22の内容を更新する。実行用BP記憶部22は、BPの処理の流れを定義するための部品であるアクティビティの組合せを記憶する。各アクティビティでは、サービスの呼び出しや条件分岐などを行う。
BP実行部23は、実行用BP記憶部22のBP情報に従ってサービスの呼び出しを行う。
The BP execution device 2 includes a BP management unit 21, an execution BP storage unit 22, a BP execution unit 23, and an OS 46.
The BP management unit 21 receives an instruction from the BP instruction unit 12 and updates the contents of the execution BP storage unit 22. The execution BP storage unit 22 stores a combination of activities that are parts for defining the flow of BP processing. In each activity, service invocation and conditional branching are performed.
The BP execution unit 23 calls a service according to the BP information in the execution BP storage unit 22.

サービス実行装置3は、仮想計算機制御部31と、仮想計算機32と、電源制御部35と、OS46と、を有する。仮想計算機32は、サービス実行部33と、負荷監視部34と、を有する。   The service execution device 3 includes a virtual machine control unit 31, a virtual machine 32, a power supply control unit 35, and an OS 46. The virtual computer 32 includes a service execution unit 33 and a load monitoring unit 34.

仮想計算機制御部31は、サービス指示部13からの指示命令を受け、仮想計算機32に対して、以下に示す指示内容を指示する。
・実行するサービス実行部33を割り当てる。
・リソースを割り当てる。割り当てるリソースの量は、サービス実行装置3の持つリソースを超えない範囲で、自由に設定することができる。
・仮想計算機32のリソース使用量を取得する。
The virtual computer control unit 31 receives an instruction command from the service instruction unit 13 and instructs the virtual computer 32 with the following instruction content.
Assign a service execution unit 33 to be executed.
• Allocate resources. The amount of resources to be allocated can be freely set within a range that does not exceed the resources of the service execution device 3.
The resource usage of the virtual machine 32 is acquired.

仮想計算機32は、BP実行部23が実行するBPのアクティビティの実行により呼び出される各サービスの実行に必要な必要リソース量を、サービス実行装置3が提供するリソースから割り当てる。そして、サービス実行部33を起動する。なお、仮想計算機32がサービス実行装置3から提供されるリソースは、時間経過に対して不変(固定)でもよいし、可変でもよい。
サービス実行部33は、仮想計算機32が割り当てるリソースを利用して、1つ以上のサービスを実行する。
負荷監視部34は、サービス実行部33がサービスを実行することにより、そのサービスに割り当てられているリソースへ与えている負荷について、仮想計算機制御部31に定期的にアクセスすることにより、監視する。
電源制御部35は、電源制御指示部14からの電源オンオフの指示を受け、自装置であるサービス実行装置3の電源制御を行う。
The virtual machine 32 allocates the necessary resource amount necessary for executing each service called by the execution of the BP activity executed by the BP execution unit 23 from the resources provided by the service execution device 3. Then, the service execution unit 33 is activated. Note that the resources provided by the virtual machine 32 from the service execution device 3 may be unchanged (fixed) with respect to time or may be variable.
The service execution unit 33 executes one or more services using resources allocated by the virtual machine 32.
The load monitoring unit 34 monitors the load given to the resources allocated to the service by the service execution unit 33 executing the service by periodically accessing the virtual machine control unit 31.
The power control unit 35 receives the power on / off instruction from the power control instruction unit 14 and controls the power of the service execution apparatus 3 that is the self apparatus.

図3は、BP処理システムのBP定義テーブル16a,16bを示す構成図である。BP定義テーブル16a,16bは、BP名T1001と、BPIDT1002と、アクティビティIDT1003と、サービスIDT1004と、必要リソース量T1005と、割当先物理計算機IDT1006と、を対応づけて記憶する。   FIG. 3 is a configuration diagram showing the BP definition tables 16a and 16b of the BP processing system. The BP definition tables 16a and 16b store a BP name T1001, a BPIDT 1002, an activity IDT 1003, a service IDT 1004, a necessary resource amount T1005, and an allocation destination physical computer IDT 1006 in association with each other.

BP名T1001は、BPを一意に特定する。   The BP name T1001 uniquely identifies the BP.

BPIDT1002は、BP全体を示す一意に割り振られたIDと、BPを分割できる場合には分割した各BPを特定するIDを示す。なお、BPを分割できるとは、BP定義内に分岐が定義されており、実行パスごとに部分BPとして分割できることを意味する。   The BPIDT 1002 indicates a uniquely assigned ID indicating the entire BP and an ID for identifying each divided BP when the BP can be divided. Note that the ability to divide a BP means that a branch is defined in the BP definition, and that a BP can be divided as a partial BP for each execution path.

BPに分岐が定義されていない場合は、例えばBP名が「BP1」であるT1007のように、BP全体を示すBPID「BP1」を特定するのみだが、BPに分岐が定義されている場合は、例えばBP名が「BP3」であるT1008〜T1010に示したように、BP全体を示すBPID「BP3」と、続いて実行パスごとの部分BPを「BP3−1」T1009、「BP3−2」T1010のように特定する。なお、本例では、BP全体を示すBPIDとBP名を同一としているが、異なるIDを割り振ってもよい。その場合は、BP全体を示すBPIDであることが理解されればよい。   When a branch is not defined in the BP, for example, only the BPID “BP1” indicating the entire BP is specified, such as T1007 whose BP name is “BP1”, but when a branch is defined in the BP, For example, as shown in T1008 to T1010 where the BP name is “BP3”, the BPID “BP3” indicating the entire BP, and the partial BP for each execution path are subsequently set to “BP3-1” T1009, “BP3-2” T1010. Identify as follows. In this example, the BPID indicating the entire BP and the BP name are the same, but different IDs may be allocated. In that case, it may be understood that the BPID indicates the entire BP.

アクティビティIDT1003は、BP名T1001とBPIDT1002で特定されるBPを構成するアクティビティを特定する。そのため、例えば、アクティビティIDが「A3」であるT1012〜T1014は同じアクティビティを示す。   The activity IDT 1003 specifies an activity constituting the BP specified by the BP name T1001 and the BPIDT 1002. Therefore, for example, T1012 to T1014 whose activity ID is “A3” indicate the same activity.

サービスIDT1004は、アクティビティIDT1003のアクティビティから呼び出されるサービスを特定する。そのため、アクティビティIDが「A1」であるT1011と、アクティビティIDが「A3」であるT1012〜T1014とは、アクティビティは異なるが、同じサービスIDであるサービス「A」を呼び出すことを示す。   The service IDT 1004 specifies a service called from the activity of the activity IDT 1003. Therefore, T1011 having an activity ID “A1” and T1012 to T1014 having an activity ID “A3” indicate that the service “A” having the same service ID is called, although the activities are different.

必要リソース量T1005は、サービスIDT1004のサービスを実行するために必要なサービス実行装置3のリソース量である。そのため、複数の実行パス上の同じアクティビティから呼び出されるサービスに関して、各実行パスから実行するのに必要なリソース量と、全BPが必要とするリソース量は異なる。
例えば、アクティビティIDの「A3」に対応する必要リソース量は、全体の場合はT1012の「20」となり、部分BP「BP3−1」の実行パスの実行に要する必要リソース量は、T1013の「10」となる。
The required resource amount T1005 is the resource amount of the service execution device 3 necessary for executing the service of the service IDT 1004. Therefore, regarding services called from the same activity on a plurality of execution paths, the amount of resources required to execute from each execution path is different from the amount of resources required by all BPs.
For example, the required resource amount corresponding to the activity ID “A3” is “20” in T1012 in the entire case, and the required resource amount required for executing the execution path of the partial BP “BP3-1” is “10” in T1013. "

つまり、部分BP間でアクティビティ(例えば、「A3」)が重複するときには、そのアクティビティの全体BPにおける必要リソース量(T1012の「20」)は、そのアクティビティの各部分BPにおける必要リソース量(T1013の「10」、T1014の「10」)の総和になる。
なお、全体BPの必要リソース量をどのような割合で、各部分BPのアクティビティに割り当てるかについては、前記したように、各部分BP間で等分してもよいし、各部分BPの実行により処理されるトランザクション量に比例して、各部分BP間で異なったりソース量を割り当ててもよい。
That is, when activities (for example, “A3”) overlap between the partial BPs, the required resource amount (“20” of T1012) in the entire BP of the activity is the required resource amount (T1013 of T1013) in each partial BP of the activity. “10” and “10” of T1014).
In addition, as described above, the ratio of the required resource amount of the entire BP to the activity of each partial BP may be equally divided between the partial BPs, or by the execution of each partial BP. In proportion to the transaction amount to be processed, each partial BP may be different or a source amount may be allocated.

割当先物理計算機IDT1006は、サービスIDのサービスを割り当てたサービス実行装置3(物理計算機)を特定する。   The assignment destination physical computer IDT 1006 identifies the service execution device 3 (physical computer) to which the service ID service is assigned.

図4は、BP処理システムの冗長化定義テーブル19a,19bを示す構成図である。冗長化定義テーブル19a,19bは、システムの運用者が冗長化するBPIDT1002を管理する。冗長化するBPIDT1101(BP3−1)は、割当計画実行前に定義する。なお、冗長化の対象として、部分BP(BP3−1)だけでなく、BP(BP4)も指定可能である。
この冗長化定義テーブル19a,19bは、ユーザからの入力により作成される。ユーザからの入力手段として、BPIDを文字列として入力またはリストから選択してもよいし、BPとそのアクティビティとをグラフ表示(図8参照)して、そのグラフ表示上からマウスドラッグにより指定された領域内に存在するBPを、入力してもよい。
FIG. 4 is a configuration diagram showing the redundancy definition tables 19a and 19b of the BP processing system. The redundancy definition tables 19a and 19b manage the BPIDT 1002 that the system operator makes redundant. Redundant BPIDT 1101 (BP3-1) is defined before execution of the allocation plan. In addition, not only the partial BP (BP3-1) but also BP (BP4) can be specified as a target for redundancy.
The redundancy definition tables 19a and 19b are created by input from the user. As an input means from the user, the BPID may be input as a character string or selected from a list, or the BP and its activity are displayed in a graph (see FIG. 8) and designated by dragging the mouse from the graph display. You may input BP which exists in an area | region.

図5は、BP処理システムのBP割当テーブル17a,17bを示す構成図である。BP割当テーブル17a,17bは、BPIDが示すBPもしくは、部分BPから呼び出されるサービスの実行に必要なリソースの総和を管理する。   FIG. 5 is a configuration diagram showing the BP allocation tables 17a and 17b of the BP processing system. The BP allocation tables 17a and 17b manage the sum of resources necessary for executing the service called from the BP indicated by the BPID or the partial BP.

リソース量合計T1201は、BPIDT1002で示すBPから呼び出すサービスの実行に必要なリソースの合計である。この合計は、BP定義テーブル16a,16bのBPIDが同じレコードの必要リソース量T1005の合計により求める。
例えば、BPID=「BP1」の場合、「必要リソース量(アクティビティID)」と表記すると、「20(A1)」+「20(B1)」+「30(C1)」=70が、リソース量合計となる(T1205)。同様に、部分BPの場合も、例えば、BPID=「BP3−1」の場合、「10(A3)」+「20(D3)」=「30」が、リソース量合計となる。
The total resource amount T1201 is a total of resources necessary for executing the service called from the BP indicated by the BPIDT 1002. This total is obtained from the total required resource amount T1005 of records having the same BPID in the BP definition tables 16a and 16b.
For example, when BPID = “BP1”, “20 (A1)” + “20 (B1)” + “30 (C1)” = 70 is expressed as “total required resource amount” when expressed as “required resource amount (activity ID)”. (T1205). Similarly, in the case of the partial BP, for example, when BPID = “BP3-1”, “10 (A3)” + “20 (D3)” = “30” is the total resource amount.

割当済フラグT1202は、BPIDT1002で示すBPに対してリソースが割り当てられているか(真を示すtrue)、否か(偽を示すfalse)を示す。例えば、T1206のように「false」で示されている場合、まだリソースが割り当てられていない状態を示している。   Allocated flag T1202 indicates whether a resource is allocated to the BP indicated by BPIDT 1002 (true indicating true) or not (false indicating false). For example, when “false” is indicated as in T1206, this indicates a state where resources are not yet allocated.

分散割当フラグT1203は、BPIDT1002で示すBPに割り当てられたリソースが複数台の物理計算機に分散されて割り当てられているか(true:分散割当とする)、1台の物理計算機に集中して割り当てられているか(false:集中割当とする)を示す。T1207のように「false」で示されている場合、集中割当されていることを示す。   The distributed allocation flag T1203 indicates whether the resource allocated to the BP indicated by the BPIDT 1002 is distributed and allocated to a plurality of physical computers (true: distributed allocation), and is allocated concentrated on one physical computer. (False: centralized allocation). When “false” is indicated as in T1207, it indicates that centralized allocation is performed.

割当可能物理計算機リストT1204は、リソースを割り当て可能な物理計算機のリストを示す。T1208は、物理計算機のリストとして、「X」と「Y」と、「Z」の3台があることを示している。   The assignable physical computer list T1204 shows a list of physical computers to which resources can be assigned. T1208 indicates that there are three “X”, “Y”, and “Z” as a list of physical computers.

図6は、BP処理システムの部分BP割当テーブル20a,20bを示す構成図である。部分BP割当テーブル20a,20bは、図5に示すBP割当テーブル17a,17bに部分BPの情報が定義されていた場合、その部分BPの情報のみ抽出する。BP名T1001は、部分BPの属するBP名であり、BPIDT1002は、各BPの部分BPにおけるBPIDを特定する。   FIG. 6 is a configuration diagram showing the partial BP allocation tables 20a and 20b of the BP processing system. The partial BP allocation tables 20a and 20b extract only the information on the partial BP when the information on the partial BP is defined in the BP allocation tables 17a and 17b shown in FIG. The BP name T1001 is a BP name to which the partial BP belongs, and the BPIDT 1002 specifies the BPID in the partial BP of each BP.

リソース量合計T1301は、対応する部分BPのBPIDのリソース量合計である。計算方式は、図5におけるリソース量合計T1201と同様である。
割当済みフラグT1302は、BPIDT1002で示す部分BPに対してリソースが割り当てられているか(真を示すtrue)、否か(偽を示すfalse)を示す。
割当可能物理計算機リストT1303は、リソースを割り当て可能な物理計算機のリストを示す。
図7は、BP処理システムのサービス割当テーブル18a,18bを示す構成図である。サービス割当テーブル18a,18bは、物理計算機IDT1401と、リソース量T1402と、空きリソース量T1403と、割当リストT1404と、を対応づけて記憶する。
The total resource amount T1301 is the total resource amount of the BPID of the corresponding partial BP. The calculation method is the same as the total resource amount T1201 in FIG.
Allocated flag T1302 indicates whether resources are allocated to the partial BP indicated by BPIDT 1002 (true indicating true) or not (false indicating false).
The assignable physical computer list T1303 shows a list of physical computers to which resources can be assigned.
FIG. 7 is a configuration diagram showing service allocation tables 18a and 18b of the BP processing system. The service allocation tables 18a and 18b store the physical computer IDT 1401, the resource amount T1402, the free resource amount T1403, and the allocation list T1404 in association with each other.

物理計算機IDT1401は、サービス実行装置3を特定する。   The physical computer IDT 1401 identifies the service execution device 3.

リソース量T1402は、物理計算機IDT1401の物理計算機における割当可能なリソースの総量を示す。   The resource amount T1402 indicates the total amount of resources that can be allocated in the physical computer with the physical computer IDT1401.

空きリソース量T1403は、物理計算機IDT1401の物理計算機におけるリソース量のうち、既に割り当てられたリソース量分だけ除いた残りのリソース量を示す。例えば、所定の物理計算機に「100」のリソース量があり、そのうち、「40」のリソース量が既に割り当てられたとすると、空きリソース量は「60」である。   The free resource amount T1403 indicates the remaining resource amount obtained by removing the already allocated resource amount from the resource amount in the physical computer of the physical computer IDT1401. For example, if there is a resource amount of “100” in a predetermined physical computer, and the resource amount of “40” has already been allocated, the free resource amount is “60”.

割当リストT1404は、物理計算機IDの物理計算機に対して既に割り当てられたサービスの一覧である。例えば、T1405の表記「BP1」は、物理計算機IDの示す「X」に対し、そのIDが示すBPのサービスが割り当てられていることを示す。BP1が使用するリソース量は、「70」なので(図中「BP1(70)」と記述)、空きリソース量は、割当可能なリソース量「100」−実際に割り当てられている「BP1」のリソース量「70」=「30」である。   The allocation list T1404 is a list of services already allocated to the physical computer with the physical computer ID. For example, the notation “BP1” of T1405 indicates that the BP service indicated by the ID is assigned to “X” indicated by the physical computer ID. Since the resource amount used by BP1 is “70” (described as “BP1 (70)” in the figure), the available resource amount is the resource amount “100” that can be allocated—the resource of “BP1” that is actually allocated. The quantity “70” = “30”.

図8は、2種類のサービスの割当方法(集中割当、分散割当)を示す説明図である。この説明図において、実線の矢印は、アクティビティが実行パスに従って実行される順序を示し、点線の矢印は、アクティビティからサービスへの呼び出し関係を示す。   FIG. 8 is an explanatory diagram showing two types of service allocation methods (centralized allocation and distributed allocation). In this explanatory diagram, solid arrows indicate the order in which activities are executed according to the execution path, and dotted arrows indicate call relationships from activities to services.

BP実行部23は、BP「1」およびBP「4」を実行する。BP「1」は、アクティビティ「A1」→「B1」→「C1」の順に実行する。この実行の過程で、例えば、アクティビティ「A1」は、サービス実行装置3のサービス実行部33が実行するサービス「A」を呼び出す(点線矢印)。
なお、右側のBP「4」には、条件分岐が定義されており、アクティビティ「D4」→「F4」の実行パスを示す部分BP「4−2」と、「D4」→「G4」→「H4」の実行パスを示す部分BP「4−1」と、によって構成される。そして、部分BP「4−1」または部分BP「4−2」のうち、いずれかの実行パスのアクティビティの順に実行する。
The BP execution unit 23 executes BP “1” and BP “4”. The BP “1” is executed in the order of activities “A1” → “B1” → “C1”. In the course of this execution, for example, the activity “A1” calls the service “A” executed by the service execution unit 33 of the service execution apparatus 3 (dotted line arrow).
Note that a conditional branch is defined in BP “4” on the right side, the partial BP “4-2” indicating the execution path of the activity “D4” → “F4”, “D4” → “G4” → “ And a partial BP “4-1” indicating an execution path of “H4”. Then, the partial BP “4-1” or the partial BP “4-2” are executed in the order of the activity of any execution path.

まず、集中割当51は、所定のBPに属する全アクティビティの実行により呼び出されるサービスが、同じ1つのサービス実行装置3に集中して割り当てられる旨を示す。例えば、BP「1」のアクティビティ「A1、B1、C1」は、同じサービス実行装置3に割り当てられているサービス「A、B、C」を呼び出しているので、集中割当である。   First, the centralized allocation 51 indicates that services called by executing all activities belonging to a predetermined BP are concentrated and allocated to the same service execution device 3. For example, the activity “A1, B1, C1” of BP “1” is a centralized assignment because the service “A, B, C” assigned to the same service execution device 3 is called.

一方、分散割当52は、所定のBPに属する全アクティビティの実行により呼び出されるサービスが、複数のサービス実行装置3に分散して割り当てられる旨を示す。分散して割り当てられる場合は、実行パスに従って部分BPの実行により呼び出されるサービス群を、割り当てる最小単位とする。
例えば、BP「4」のアクティビティ「D4,F4,G4,H4」は、部分BP「4−1」が1台目のサービス実行装置3に割り当てられており、部分BP「4−2」が2台目のサービス実行装置3に割り当てられているため、分散割当である。
On the other hand, the distributed allocation 52 indicates that a service called by executing all activities belonging to a predetermined BP is distributed and allocated to a plurality of service execution apparatuses 3. When distributed and allocated, a service group called by executing the partial BP according to the execution path is set as a minimum unit to be allocated.
For example, in the activity “D4, F4, G4, H4” of the BP “4”, the partial BP “4-1” is assigned to the first service execution apparatus 3, and the partial BP “4-2” is 2 Since it is assigned to the third service execution apparatus 3, it is distributed assignment.

以上、図8で説明した実行パスは、あらかじめユーザにより入力されていてもよいし、BP全体を入力として、機械的に抽出してもよい。機械的に抽出する手法は、例えば、BPEL(Business Process Execution Language)で記述されたBPは、アクティビティをノードとするXML(Extensible Markup Language)の木構造であるので、その木構造をルートノード(開始点)から順に辿ることにより、実行パスを抽出する手法が、挙げられる。   As described above, the execution path described with reference to FIG. 8 may be input by the user in advance, or may be mechanically extracted using the entire BP as an input. For example, a BPEL (Business Process Execution Language) BP is an XML (Extensible Markup Language) tree structure having an activity as a node. A method of extracting an execution path by tracing in order from (point) can be mentioned.

図9は、2種類のサービス割当方法(集中割当、冗長割当)を示す説明図である。図8と比較すると、アクティビティ「F4」が、2台のサービス実行装置3上のサービス「D」を利用する点が、異なっている。   FIG. 9 is an explanatory diagram showing two types of service allocation methods (centralized allocation and redundant allocation). Compared to FIG. 8, the difference is that the activity “F4” uses the service “D” on the two service execution apparatuses 3.

BP処理システムにおいて、信頼性を高めるためにサービスの冗長化を考慮することが考えられる。その場合、1つのサービスだけ冗長化してもBP処理システムにおいては不充分であり、最低でもそのサービスが実行される実行パス上のアクティビティの実行により呼び出されるサービス全てを冗長化しなければならない。よって、冗長割当の最小単位は、部分BP(図中、BP「4−2」)である。
一方、BP全体のサービスを冗長化してもよい、その場合は、多くのリソースを要する代わりに、BP全体が有する全ての部分BPへの障害に対処することができる。
In the BP processing system, it is conceivable to consider service redundancy in order to increase reliability. In that case, even if only one service is made redundant, it is not sufficient in the BP processing system, and at least all the services called by executing the activity on the execution path on which the service is executed must be made redundant. Therefore, the minimum unit of redundant allocation is a partial BP (BP “4-2” in the figure).
On the other hand, the service of the entire BP may be made redundant. In this case, a failure to all partial BPs of the entire BP can be dealt with instead of requiring many resources.

冗長割当とは、既にBP全体の割当が済んでいる状況下で、その割当済みBPの少なくとも一部のBPを、割当済みのサービス実行装置3とは別のサービス実行装置3に対しても、冗長的に割り当てる方式である。
例えば、BP「4」は、既に右側のサービス実行装置3への割当が済んでいる。さらに、BP「4」の信頼性を高めるために、BP「4−2」を左側のサービス実行装置3にも冗長割当53を行っている。
Redundant allocation means that under the situation where the entire BP has already been allocated, at least a part of the allocated BP is transferred to a service execution apparatus 3 other than the allocated service execution apparatus 3. This is a redundant allocation method.
For example, BP “4” has already been assigned to the right service execution apparatus 3. Further, in order to increase the reliability of the BP “4”, the redundant allocation 53 of the BP “4-2” is also made to the service execution device 3 on the left side.

図10は、割当計画部11が実行するリソースの集中割り当て処理を示すフローチャートである。   FIG. 10 is a flowchart showing the concentrated resource allocation processing executed by the allocation planning unit 11.

まず、割当用マスタテーブル15aから割当用コピーテーブル15bへコピーする(S101)。具体的には、BP定義テーブル16aからBP定義テーブル16bへ、BP割当テーブル17aからBP割当テーブル17bへ、サービス割当テーブル18aからサービス割当テーブル18bへ、冗長化定義テーブル19aから冗長化定義テーブル19bへ、部分BP割当テーブル20aから部分BP割当テーブル20bへ、それぞれコピーする。   First, the allocation master table 15a is copied to the allocation copy table 15b (S101). Specifically, from the BP definition table 16a to the BP definition table 16b, from the BP assignment table 17a to the BP assignment table 17b, from the service assignment table 18a to the service assignment table 18b, and from the redundancy definition table 19a to the redundancy definition table 19b. The partial BP allocation table 20a is copied to the partial BP allocation table 20b.

次に、BP割当テーブル17bを参照し、リソースを割り当てられていないBPもしくは部分BPから、それぞれのリソース量合計が大きい順に、割当対象BPとして選択するループ(S111〜S119)を実行する。このループを実行することで、割当対象BPの割当済フラグは、「false」から「true」へ更新される。リソース量合計が大きい順にBPを割り当てることで、リソースの空きが複数の物理計算機に断片化されることを抑制できる。   Next, referring to the BP allocation table 17b, a loop (S111 to S119) for selecting the allocation target BP from the BP to which the resource is not allocated or the partial BP in the descending order of the total resource amount is executed. By executing this loop, the allocated flag of the allocation target BP is updated from “false” to “true”. By assigning BPs in descending order of the total amount of resources, it is possible to prevent resource vacancies from being fragmented into a plurality of physical computers.

サービス割当テーブル18bを参照し、割当対象BPのリソース量合計を上回る空きリソース量を有する物理計算機を検索する(S112)。
まず、S112の結果、集中割当ができる物理計算機が検索されなかったら(S113,No)、S116に移行する。
割当対象BPが部分BPではなければ(S116,Yes)、割当対象BPを複数台の物理計算機に分散割当する(S117)。具体的には、後記する図10の処理をサブルーチンとして呼び出す。
割当対象BPが部分BPであれば(S116,No)、これ以上の分散割当はできないとして、リソース不足をエラー通知する(S118)。
With reference to the service allocation table 18b, a physical computer having a free resource amount exceeding the total resource amount of the allocation target BP is searched (S112).
First, as a result of S112, if a physical computer capable of centralized allocation is not found (S113, No), the process proceeds to S116.
If the allocation target BP is not a partial BP (S116, Yes), the allocation target BP is distributed and allocated to a plurality of physical computers (S117). Specifically, the process of FIG. 10 described later is called as a subroutine.
If the allocation target BP is a partial BP (No in S116), an error notification is sent that there is a shortage of resources because no further distributed allocation is possible (S118).

一方、S112の結果、物理計算機が検索されたら(S113,Yes)、同じBPがその物理計算機に対し割り当てられていないとき(S114,Yes)、その物理計算機に対して割当対象BPを集中割当し(S115)、割当対象BPのループを終了する(S119)。   On the other hand, when a physical computer is searched as a result of S112 (S113, Yes), when the same BP is not allocated to the physical computer (S114, Yes), the allocation target BP is centrally allocated to the physical computer. (S115), the allocation target BP loop is terminated (S119).

同じBPがその物理計算機に対し割り当てられていた場合(S114,No)、そのBPの割当可能物理計算機リストからその物理計算機を削除し、再度収容可能な物理計算機を検索する(S112)。なお、一般的に検索された物理計算機のうち、最も空きリソース量の多い物理計算機にリソースを割り当てるものとする。   If the same BP is assigned to the physical computer (No at S114), the physical computer is deleted from the assignable physical computer list of the BP, and a physical computer that can be accommodated again is searched (S112). It is assumed that resources are allocated to a physical computer having the largest amount of free resources among the physical computers searched in general.

集中割当(S115)について、具体的には、S112で特定した割当対象の物理計算機に割当対象BPを割り当てる。つまり、BP定義テーブル16bの割当対象BPを示すレコード内の割当先物理計算機ID列に、特定した割当対象の物理計算機のIDを書き込む。そして、サービス割当テーブル18bの特定した割当対象の物理計算機を示すレコード内の割当リスト列に、割当対象BPのBPIDを書き込む。BP割当テーブル17bの割当対象BPに対応する分散割当フラグに「false」を設定する。   For the centralized allocation (S115), specifically, the allocation target BP is allocated to the allocation target physical computer specified in S112. That is, the ID of the identified physical computer to be allocated is written into the allocation destination physical computer ID column in the record indicating the allocation target BP in the BP definition table 16b. Then, the BPID of the allocation target BP is written in the allocation list column in the record indicating the specified allocation target physical computer in the service allocation table 18b. “False” is set in the distributed allocation flag corresponding to the allocation target BP in the BP allocation table 17b.

さらに、S119でループを終了した後、S114,S115,S117(詳細は、図11で後記)で更新した割当用コピーテーブル15bの内容に従って、サービスにリソースを割り当てる(S121)。なお、この処理は、割当用コピーテーブル15bの内容をユーザに確認させ、ユーザからの許諾を得てから実行してもよい。サービスにリソースを割り当てる処理を実現するため、サービス指示部13は、仮想計算機制御部31を介して仮想計算機32に対し、仮想計算機32の使用するリソースを割り当てさせるとともに、サービス実行部33を起動し、割り当てた各サービスを割り当てたリソースを用いて実行させる。   Further, after completing the loop in S119, resources are allocated to the service according to the contents of the allocation copy table 15b updated in S114, S115, and S117 (details will be described later in FIG. 11) (S121). This process may be executed after the user confirms the contents of the allocation copy table 15b and obtains permission from the user. In order to realize the process of allocating resources to the service, the service instruction unit 13 causes the virtual machine 32 to allocate resources used by the virtual machine 32 via the virtual machine control unit 31, and activates the service execution unit 33. The assigned service is executed using the assigned resource.

割り当て結果をもとに、割当用コピーテーブル15bから割当用マスタテーブル15aへ最新の割当状態を反映する(S122)。例えば、割当用コピーテーブル15bの内容が全て正常に割り当てられたときには、割当用マスタテーブル15aの内容は、割当用コピーテーブル15bのコピーとなる。一方、割当用コピーテーブル15bの内容の一部に、リソース不足などにより割当エラー(S118,後記する図11のS209)が発生したときには、割当用マスタテーブル15aの内容は、その割当エラーにより割り当てられなかった割当用コピーテーブル15bの内容の書き込みは省略される。そして、割当用コピーテーブル15bは、不用になるので削除される。   Based on the allocation result, the latest allocation state is reflected from the allocation copy table 15b to the allocation master table 15a (S122). For example, when all the contents of the allocation copy table 15b are normally allocated, the contents of the allocation master table 15a are copies of the allocation copy table 15b. On the other hand, when an allocation error (S118, S209 in FIG. 11 described later) occurs due to a resource shortage or the like in part of the contents of the allocation copy table 15b, the contents of the allocation master table 15a are allocated due to the allocation error. The writing of the contents of the allocation copy table 15b that has not occurred is omitted. Since the allocation copy table 15b is unnecessary, it is deleted.

未使用の物理計算機の電源をオフにする(S123)。具体的には、サービス割当テーブル18aの割当リストを参照し、リソースの割り当てが行われていない物理計算機の電源をオフにして、省電力化を実行する。そのため、電源制御指示部14は、管理用ネットワーク9を経由して、リソースの割り当てが行われていない物理計算機の電源制御部35に対して、その物理計算機の電源オフを指示する。以上、図10の処理を一通り説明した。   The unused physical computer is turned off (S123). Specifically, the allocation list of the service allocation table 18a is referred to, and power saving is executed by turning off the power of a physical computer to which resources are not allocated. Therefore, the power control instruction unit 14 instructs the power control unit 35 of the physical computer to which no resource is assigned via the management network 9 to turn off the physical computer. The process of FIG. 10 has been described above.

図11は、図10が示す割当対象BPを分散割当(S117)するためのフローチャートである。   FIG. 11 is a flowchart for distributed allocation (S117) of the allocation target BP shown in FIG.

まず、割当対象BPに対応する分散割当フラグに「true」を設定する(S201)。   First, “true” is set to the distributed allocation flag corresponding to the allocation target BP (S201).

次に、部分BP割当テーブル20bを参照し、割当対象BPに対応するリソースを割り当てられていない部分BPから、部分BPのリソース量合計が大きい順に、割当対象BPとして選択するループ(S202〜S208)を実行する。このループを実行することで、部分BP割当テーブル20bの割当対象BPの割当済みフラグは、「false」から「true」へ更新される。割当対象BPに対応する全ての部分BPの割当済みフラグが「true」になれば、BP割当テーブル17の割当済みフラグは「true」に更新される。   Next, a loop for referring to the partial BP allocation table 20b and selecting the allocation target BP in descending order of the total resource amount of the partial BP from the partial BP to which the resource corresponding to the allocation target BP is not allocated (S202 to S208). Execute. By executing this loop, the allocation flag of the allocation target BP in the partial BP allocation table 20b is updated from “false” to “true”. If the assigned flag of all the partial BPs corresponding to the assignment target BP becomes “true”, the assigned flag in the BP assignment table 17 is updated to “true”.

サービス割当テーブル18bを参照し、割当対象部分BPのリソース量合計を上回る空きリソース量を有する(換言すると、部分BPを割り当てられる)物理計算機を検索する(S203)。S204では、S203の検索結果を判断する。
まず、物理計算機が検索されなかったら(S204,No)、その部分BPを割り当てることはできなかったとして、その部分BPの割当作業は終了し、処理をS207に進める。
With reference to the service allocation table 18b, a physical computer having a free resource amount exceeding the total resource amount of the allocation target partial BP (in other words, a partial BP can be allocated) is searched (S203). In S204, the search result of S203 is determined.
First, if the physical computer is not searched (S204, No), the partial BP allocation work is terminated, assuming that the partial BP could not be allocated, and the process proceeds to S207.

一方、物理計算機が検索されたら(S204,Yes)、その物理計算機に対して、割当対象部分BPが含まれるBPもしくは同じ部分BPが割り当てられていないか確認し、割り当てられていない場合(S205,Yes)、その物理計算機に対して割当対象部分BPを割り当てる(S206)。
逆に、その物理計算機に対して、割当対象部分BPが含まれるBPもしくは同じ部分BPが割り当てられていないか確認し、割り当てられていた場合(S205,No)、そのBPの割当可能物理計算機リストからその物理計算機を削除し、再度、部分BPを収容可能な物理計算機を検索する(S203)。なお、一般的に検索された物理計算機のうち、最も空きリソース量の多い物理計算機にリソースを割り当てるものとする。
On the other hand, if a physical computer is searched (S204, Yes), it is confirmed whether a BP including the allocation target part BP or the same partial BP is assigned to the physical computer, and if it is not assigned (S205, Yes), the allocation target part BP is allocated to the physical computer (S206).
On the contrary, it is confirmed whether or not the BP including the allocation target part BP or the same partial BP is allocated to the physical computer. If the BP is allocated (No in S205), the allocable physical computer list of the BP is confirmed. Then, the physical computer is deleted, and a physical computer that can accommodate the partial BP is searched again (S203). It is assumed that resources are allocated to a physical computer having the largest amount of free resources among the physical computers searched in general.

ここで、割当対象BPに属する全ての部分BPの割り当てが完了したか否かを判定する(S207)。割当対象BPに属する全ての部分BPの割り当てが完了したとは、S206の割り当て処理により、割当対象BPの実行により呼び出されるサービスが全て割り当てられたことを示す。S207でYesの場合、BP割当テーブル17bの割当済みフラグを「true」に更新し、サブルーチンから呼び出し元(S117)へ戻る。   Here, it is determined whether or not the allocation of all the partial BPs belonging to the allocation target BP is completed (S207). The completion of allocation of all partial BPs belonging to the allocation target BP indicates that all the services called by execution of the allocation target BP have been allocated by the allocation processing in S206. In the case of Yes in S207, the assigned flag in the BP assignment table 17b is updated to “true”, and the process returns from the subroutine to the caller (S117).

一方、割当対象BPの割当が完了していないなら(S207,No)、ループを終了する(S208)。   On the other hand, if the allocation of the allocation target BP is not completed (S207, No), the loop is terminated (S208).

もし、S202〜S208のループを抜けたとき、S207でYesとならなかったので、リソース不足で部分BPのリソースが割り当てられず、サービスを実行できない旨のエラーをユーザおよび呼び出し元へ通知する(S209)。これらの処理の終了後、サブルーチンから呼び出し元(S117)へ戻る。   If the loop of S202 to S208 is exited, the answer to S207 is not Yes, so the partial BP resource is not allocated due to insufficient resources, and an error that the service cannot be executed is notified to the user and the caller (S209). ). After these processes are completed, the process returns from the subroutine to the caller (S117).

図12は、BPの分散割当配置結果を記述するサービス割当テーブル18を示す構成図である。BP定義テーブル16bにおけるBP1と、BP2と、BP3と、を2台の物理計算機Xと、Yと、に割り当てた場合のサービス割当テーブルの結果である。BP3は、集中割当することができず、BP3−1と、BP3−2と、に分散割当されている。従来の技術では、3台目の物理計算機Zを用意するか、実行パスを意識しないで配備するか、をユーザが選択しなければならず、前者は物理計算機のリソースに無駄が生じ、後者は、信頼性が低下したが、本実施形態の分散割当処理(図11参照)により無駄なく信頼性の向上したリソース割り当てを実現できた。   FIG. 12 is a block diagram showing the service allocation table 18 describing the BP distributed allocation result. It is a result of the service allocation table when BP1, BP2, and BP3 in the BP definition table 16b are allocated to two physical computers X and Y. BP3 cannot be centrally allocated, and is distributedly allocated to BP3-1 and BP3-2. In the conventional technology, the user must select whether to prepare the third physical computer Z or to deploy without regard to the execution path. The former causes waste of physical computer resources, and the latter Although the reliability decreased, resource allocation with improved reliability could be realized without waste by the distributed allocation processing (see FIG. 11) of the present embodiment.

図13は、BPの分散割当配置結果を記述するサービス割当テーブル18を示す構成図である。BP定義テーブル16bにおけるBP4と、BP5と、を3台の物理計算機X,Y,Zに割り当てた場合のサービス割当テーブルの結果である。BP4,BP5ともに集中割当することができず、BP4は、BP4−1と、BP4−2と、に分散割当され、BP5は、BP5−1と、BP5−2と、に分散割当されている。あるBPのリソース量合計が1台の物理計算機のリソース量より大きな場合において、本実施形態は信頼性を損なうことなくリソース割り当てすることが可能である。   FIG. 13 is a block diagram showing the service allocation table 18 describing the BP distributed allocation arrangement result. This is a result of the service allocation table when BP4 and BP5 in the BP definition table 16b are allocated to three physical computers X, Y, and Z. Neither BP4 nor BP5 can be centrally allocated, BP4 is distributed and allocated to BP4-1 and BP4-2, and BP5 is distributed and allocated to BP5-1 and BP5-2. In the case where the total resource amount of a certain BP is larger than the resource amount of one physical computer, this embodiment can allocate resources without impairing reliability.

図14は、BPの冗長割当配置結果を記述するサービス割当テーブル18を示す構成図である。BP定義テーブル16bにおけるBP1と、BP2と、BP3と、を3台の物理計算機X,Y,Zとに割り当てた場合のサービス割当テーブルの結果である。ただし、ユーザは冗長化定義テーブル19bにおいて、BP3−1の部分BPを冗長化するように指定している。
BP3−1は、同じ部分BPを含むBP3が割り当てられている物理計算機Zには割り当てられず、別の物理計算機に割り当てられている。この結果、例えば、物理計算機Zが故障したとしても、物理計算機Yが稼働していれば、BP3−1の実行パスは救うことができる。本実施形態の結果、BPの冗長化に成功した。
FIG. 14 is a block diagram showing the service allocation table 18 describing the redundant allocation allocation result of BP. This is a result of the service allocation table when BP1, BP2, and BP3 in the BP definition table 16b are allocated to three physical computers X, Y, and Z. However, the user designates that the partial BP of BP3-1 is made redundant in the redundancy definition table 19b.
BP3-1 is not assigned to the physical computer Z to which BP3 including the same partial BP is assigned, but is assigned to another physical computer. As a result, even if the physical computer Z fails, for example, if the physical computer Y is operating, the execution path of the BP3-1 can be saved. As a result of this embodiment, the BP was successfully made redundant.

図15は、BPの分散割当配置と冗長割当配置結果を記述するサービス割当テーブル18を示す構成図である。BP定義テーブル16bにおけるBP1と、BP3と、BP5と、を3台の物理計算機X,Y,Zとに割り当てた場合のサービス割当テーブルの結果である。ただし、ユーザは冗長化定義テーブル19bにおいて、BP3−1の部分BPを冗長化するように指定している。
このように、物理計算機のリソース量とBPのリソース量合計の結果によっては、BPの冗長割当と同時に分散割当を実現することができる。
BP処理システムにおいては、BPのアクティビティの実行により呼び出されるサービスのリソース量合計が大きい、あるいは、サービスの冗長化がどうしても必要な場合が存在する。そのようなBP処理システムにおいて、信頼性が向上した割当システムを実現することができた。
FIG. 15 is a configuration diagram showing the service allocation table 18 describing the BP distributed allocation arrangement and the redundant allocation arrangement result. This is a result of the service allocation table when BP1, BP3, and BP5 in the BP definition table 16b are allocated to three physical computers X, Y, and Z. However, the user designates that the partial BP of BP3-1 is made redundant in the redundancy definition table 19b.
Thus, depending on the result of the resource amount of the physical computer and the total resource amount of BP, distributed allocation can be realized simultaneously with redundant allocation of BP.
In the BP processing system, there are cases where the total amount of resources of services called by the execution of the BP activity is large, or redundancy of services is absolutely necessary. In such a BP processing system, an allocation system with improved reliability could be realized.

本実施形態により、BPの実行により呼び出されるサービスの信頼性が向上する。例えば、あるBPを2つの部分BPb1、b2に分割し、2台のサービス実行装置a1、a2にb1から呼び出されるサービスとb2から呼び出されるサービスを分散配置した場合、a1のサービス実行装置が故障しても、残りの部分BPb2は実行することができる。また、BPを実行パスごと細かく分割できるので、リソースの無駄を省略することができる。   According to this embodiment, the reliability of the service called by execution of BP improves. For example, when a certain BP is divided into two parts BPb1 and b2, and a service called from b1 and a service called from b2 are distributed to two service execution devices a1 and a2, the service execution device of a1 fails. However, the remaining part BPb2 can be executed. Further, since the BP can be finely divided for each execution path, waste of resources can be omitted.

以下に、本発明が適用されるフロー処理システムの第2実施形態(ジョブ処理システム)について、説明する。既に図20を参照して説明したように、第1実施形態(BP処理システム)と、第2実施形態(ジョブ処理システム)と、の違いは、扱うデータ内容が、BPかジョブかという違いであり、第1実施形態の各技術的特徴(集中割当、分散割当、冗長割当)は、第2実施形態においても有している。
よって、第1実施形態と第2実施形態との構成要素の対応関係を明確にするため、第1実施形態の構成要素(例えば、BP指示部12)の符号下2桁「12」と、第2実施形態の構成要素(例えば、ジョブネット指示部112)の符号下2桁「12」と、が一致するように、符号を構成する。
The second embodiment (job processing system) of the flow processing system to which the present invention is applied will be described below. As already described with reference to FIG. 20, the difference between the first embodiment (BP processing system) and the second embodiment (job processing system) is that the data content to be handled is BP or a job. Yes, each technical feature (centralized allocation, distributed allocation, redundant allocation) of the first embodiment is also included in the second embodiment.
Therefore, in order to clarify the correspondence between the constituent elements of the first embodiment and the second embodiment, the last two digits “12” of the constituent elements of the first embodiment (for example, the BP instruction unit 12) and the first The code is configured such that the last two digits “12” of the component of the second embodiment (for example, the job net instruction unit 112) match.

図16は、図1と同様に、ジョブ処理システムの構成図を示す。運用管理装置101は、ジョブネット管理装置102へジョブネットの実行指示を行うことと、ジョブ実行装置103へリソースとジョブの割当を行う。   FIG. 16 shows a configuration diagram of the job processing system, similar to FIG. The operation management apparatus 101 issues a job net execution instruction to the job net management apparatus 102 and allocates resources and jobs to the job execution apparatus 103.

図17は、図2と同様に、ジョブ処理システムの機能を示す構成図である。運用管理装置101の主記憶装置44は、割当計画部11と、ジョブネット指示部112と、ジョブ指示部113と、電源制御指示部14と、を有し、OS46が起動する。
割当計画部11は、割当用マスタテーブル115aをもとに、割当用コピーテーブル115bを編集することで、ジョブへのリソースの割り当て処理を計画する。
ジョブネット指示部112は、ジョブネット定義テーブル116a,116bの内容をもとにした実行用ジョブネット記憶部73の内容の更新を、ネットワーク8経由でジョブネット管理部121に指示する。
ジョブ指示部113は、ジョブネット割当テーブル117a,117bと、部分ジョブネット割当テーブル120a,120bと、冗長化定義テーブル119a,119bおよびジョブ割当テーブル118a,118bの内容をもとにした仮想計算機32上のジョブおよびリソースの割り当てを、ネットワーク8経由で仮想計算機制御部31に指示する。
電源制御指示部14は、管理用ネットワーク9を介して、電源制御部35に対してジョブ実行装置103の電源オンオフを指示する。
FIG. 17 is a block diagram showing functions of the job processing system, as in FIG. The main storage device 44 of the operation management apparatus 101 includes an allocation planning unit 11, a job net instruction unit 112, a job instruction unit 113, and a power control instruction unit 14, and the OS 46 is activated.
The allocation planning unit 11 plans the resource allocation process to the job by editing the allocation copy table 115b based on the allocation master table 115a.
The job net instruction unit 112 instructs the job net management unit 121 to update the contents of the execution job net storage unit 73 based on the contents of the job net definition tables 116 a and 116 b via the network 8.
The job instruction unit 113 runs on the virtual computer 32 based on the contents of the job net allocation tables 117a and 117b, the partial job net allocation tables 120a and 120b, the redundancy definition tables 119a and 119b, and the job allocation tables 118a and 118b. Is assigned to the virtual machine control unit 31 via the network 8.
The power control instruction unit 14 instructs the power control unit 35 to turn on / off the job execution apparatus 103 via the management network 9.

運用管理装置101は、割当用マスタテーブル115aと、割当用コピーテーブル115bとを記憶する。
割当用マスタテーブル115aは、ジョブネット定義テーブル116aと、ジョブネット割当テーブル117aと、ジョブ割当テーブル118aと、冗長化定義テーブル119aと、部分ジョブネット割当テーブル120aと、を有する。
割当用コピーテーブル115bは、ジョブネット定義テーブル116bと、ジョブネット割当テーブル117bと、ジョブ割当テーブル118bと、冗長化定義テーブル119bと、部分ジョブネット割当テーブル120bと、を有する。
割当用コピーテーブル115bは、割当用マスタテーブル115aから作成されたコピーであり、このコピーに対して編集が行われる。編集結果が正常に反映されたときには、割当用コピーテーブル115bの内容が割当用マスタテーブル115aへ反映される。
The operation management apparatus 101 stores an allocation master table 115a and an allocation copy table 115b.
The allocation master table 115a includes a job net definition table 116a, a job net allocation table 117a, a job allocation table 118a, a redundancy definition table 119a, and a partial job net allocation table 120a.
The allocation copy table 115b includes a job net definition table 116b, a job net allocation table 117b, a job allocation table 118b, a redundancy definition table 119b, and a partial job net allocation table 120b.
The allocation copy table 115b is a copy created from the allocation master table 115a, and the copy is edited. When the editing result is normally reflected, the contents of the allocation copy table 115b are reflected in the allocation master table 115a.

図18は、図8と同様に、ジョブネットのジョブの割当方法を示す説明図である。ジョブネット実行部123は、ジョブネット「1」およびジョブネット「4」を実行する。図18におけるジョブ処理システムの集中割当も分散割当も、BP処理システムと同様の発想である。ジョブを1台のジョブ実行装置103に配置した場合、集中割当となり、ジョブを複数のジョブ実行装置103に配置した場合、分散割当となる。   FIG. 18 is an explanatory diagram showing a job net job assignment method, similar to FIG. The job net execution unit 123 executes the job net “1” and the job net “4”. The centralized allocation and distributed allocation of the job processing system in FIG. 18 are the same ideas as the BP processing system. When a job is arranged in one job execution apparatus 103, centralized assignment is performed. When a job is arranged in a plurality of job execution apparatuses 103, distributed assignment is performed.

図19は、図9と同様に、ジョブネットのジョブの割当方法を示す説明図である。ジョブネット「1」は同じ1つのジョブ実行装置103に集中割当されており、ジョブネット「4」は別のジョブ実行装置103に集中割当されている。
ここで、特定のジョブを冗長化することを考える。ジョブ処理の実行を考えた場合、ジョブ同士が独立した処理ではなく、互いに依存関係にあった場合(例えば、ジョブ呼び出し「D4」の結果がジョブ呼び出し「F4」に影響するなど)、ジョブ1つだけ冗長化しても信頼性に問題が生じるので、少なくとも冗長化するジョブネット上の特定のジョブを含む実行パス上のジョブから呼び出される実際のジョブプログラム全てを冗長化しなければならない。
冗長割当53は、ジョブネット「4」のジョブ「D4,F4」の実行パスを示す部分ジョブネット「4−2」の単位で冗長化して1つのジョブ実行装置103に割り当てている。
FIG. 19 is an explanatory diagram showing a job net assignment method, similar to FIG. The job net “1” is centrally allocated to the same one job execution apparatus 103, and the job net “4” is centrally allocated to another job execution apparatus 103.
Here, consider making a specific job redundant. Considering execution of job processing, if jobs are not independent processes but are dependent on each other (for example, the result of job call “D4” affects job call “F4”), one job Even if only redundancy is made, a problem arises in reliability. Therefore, all actual job programs called from jobs on the execution path including a specific job on the job net to be made redundant must be made redundant.
Redundant allocation 53 is made redundant in units of partial job net “4-2” indicating the execution path of job “D4, F4” of job net “4” and allocated to one job execution apparatus 103.

以上説明したように、第1実施形態(BP処理システム)、第2実施形態(ジョブ処理システム)それぞれについて、フロー処理システムの信頼性を向上させ、物理計算機のリソースの無駄を最小限にするように、管理装置から呼び出されるサービスもしくはジョブを物理計算機のリソースに割り当てることができる。   As described above, for each of the first embodiment (BP processing system) and the second embodiment (job processing system), the reliability of the flow processing system is improved and the waste of resources of the physical computer is minimized. In addition, a service or job called from the management apparatus can be assigned to the resource of the physical computer.

図21は、第1実施形態(BP処理システム)において、割当方式をまとめた表である。以下、運用管理装置1の処理の概要を説明する。
BP(全体)>部分BP>(1つの)サービス呼び出しアクティビティ、の順に、必要とするリソース量が大きくなる。
割り当て対象のBPを割り当てるときに、そのBP全体を1台に集中割当できれば、高信頼性を得ることができる。
もし、BP全体が大きすぎて集中割当できないときには、1つ以上のアクティビティにより構成される部分BPを単位として、複数台(少数台)に分散割当を試みる。部分BPの分散割当ができたときには、実行パス単位では1台に割り当てたことになり、適度な信頼性を得ることができる。
さらに、部分BPを単位としても、分散割当できなかったときには、さらに細かい1つのアクティビティを単位として割り当てる代わりに、エラーを発行する。
FIG. 21 is a table summarizing the allocation method in the first embodiment (BP processing system). Hereinafter, an outline of processing of the operation management apparatus 1 will be described.
The required resource amount increases in the order of BP (whole)> partial BP> (one) service call activity.
When allocating the BP to be allocated, if the entire BP can be centrally allocated to one unit, high reliability can be obtained.
If the entire BP is too large to be centrally allocated, distributed allocation is attempted for a plurality of units (a small number) with a partial BP composed of one or more activities as a unit. When distributed allocation of partial BPs is possible, it is allocated to one unit in the execution path unit, and appropriate reliability can be obtained.
Furthermore, even if the partial BP is used as a unit, if distributed allocation cannot be performed, an error is issued instead of assigning one more detailed activity as a unit.

さらに、BP全体の集中割当、または、部分BPの分散割当ができたときには、その割当済みのBPの信頼性をさらに向上させるため、冗長割当を行ってもよい。冗長割当では、あらかじめユーザから指定されたBP全体、または、部分BPを単位として、割当済みのサービス実行装置3とは別のサービス実行装置3を新たに検索して、指定されたBP全体、または、部分BPを割り当てる。   Furthermore, when the centralized allocation of the entire BP or the distributed allocation of the partial BPs can be performed, redundant allocation may be performed in order to further improve the reliability of the allocated BP. In the redundant allocation, the entire BP designated by the user in advance or the service execution device 3 different from the allocated service execution device 3 is newly searched in units of partial BPs, or the entire designated BP, or , Assign a partial BP.

本発明の第1実施形態に関するBP処理システムを示す構成図である。It is a block diagram which shows the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムの機能を示す構成図である。It is a block diagram which shows the function of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムのBP定義テーブルを示す構成図である。It is a block diagram which shows the BP definition table of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムの冗長化定義テーブルを示す構成図である。It is a block diagram which shows the redundancy definition table of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムのBP割当テーブルを示す構成図である。It is a block diagram which shows the BP allocation table of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムの部分BP割当テーブルを示す構成図である。It is a block diagram which shows the partial BP allocation table of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムのサービス割当テーブルを示す構成図である。It is a block diagram which shows the service allocation table of the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムにおける2種類のサービスの割当方法(集中割当、分散割当)を示す説明図である。It is explanatory drawing which shows the allocation method (centralized allocation, distributed allocation) of two types of services in the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBP処理システムにおける2種類のサービスの割当方法(集中割当、冗長割当)を示す説明図である。It is explanatory drawing which shows the allocation method (centralized allocation and redundant allocation) of two types of services in the BP processing system regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するリソース割り当て処理を示すフローチャートである。It is a flowchart which shows the resource allocation process regarding 1st Embodiment of this invention. 本発明の第1実施形態に関する分散割当する処理を示すフローチャートである。It is a flowchart which shows the process which carries out the distributed allocation regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBPの分散割当配置結果を記述するサービス割当テーブルを示す構成図である。It is a block diagram which shows the service allocation table which describes the distributed allocation arrangement | positioning result of BP regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBPの分散割当配置結果を記述するサービス割当テーブルを示す構成図である。It is a block diagram which shows the service allocation table which describes the distributed allocation arrangement | positioning result of BP regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBPの冗長割当配置結果を記述するサービス割当テーブルを示す構成図である。It is a block diagram which shows the service allocation table which describes the redundant allocation arrangement | positioning result of BP regarding 1st Embodiment of this invention. 本発明の第1実施形態に関するBPの分散割当配置と冗長割当配置結果を記述するサービス割当テーブルを示す構成図である。It is a block diagram which shows the service allocation table which describes the distributed allocation arrangement | positioning and redundant allocation arrangement | positioning of BP regarding 1st Embodiment of this invention. 本発明の第2実施形態に関するジョブ処理システムを示す構成図である。It is a block diagram which shows the job processing system regarding 2nd Embodiment of this invention. 本発明の第2実施形態に関するジョブ処理システムの機能を示す構成図である。It is a block diagram which shows the function of the job processing system regarding 2nd Embodiment of this invention. 本発明の第2実施形態に関するジョブ処理システムにおける2種類のサービスの割当方法(集中割当、分散割当)を示す説明図である。It is explanatory drawing which shows the allocation method (centralized allocation, distributed allocation) of two types of services in the job processing system regarding 2nd Embodiment of this invention. 本発明の第2実施形態に関するジョブ処理システムにおける2種類のサービスの割当方法(集中割当、冗長割当)を示す説明図である。It is explanatory drawing which shows the allocation method (centralized allocation and redundant allocation) of two types of services in the job processing system regarding 2nd Embodiment of this invention. フロー処理システムの用語を示す説明図である。It is explanatory drawing which shows the term of a flow processing system. 本発明の一実施形態に関する3種類の割当方式を示す説明図である。It is explanatory drawing which shows three types of allocation systems regarding one Embodiment of this invention.

符号の説明Explanation of symbols

1 運用管理装置
2 BP実行装置
3 サービス実行装置
8 ネットワーク
9 管理用ネットワーク
11 割当計画部
12 BP指示部
13 サービス指示部
14 電源制御指示部
15a 割当用マスタテーブル
15b 割当用コピーテーブル
16 BP定義テーブル
17 BP割当テーブル
18 サービス割当テーブル
19 冗長化定義テーブル
20 部分BP割当テーブル
21 BP管理部
22 実行用BP記憶部
23 BP実行部
31 仮想計算機制御部
32 仮想計算機
33 サービス実行部
34 負荷監視部
35 電源制御部
41 CPU
42 ネットワークインタフェース
43 二次記憶装置
44 主記憶装置
45 主記憶装置
46 OS
51 集中割当
52 分散割当
53 部分冗長割当
101 運用管理装置
102 ジョブネット管理装置
103 ジョブ実行装置
112 ジョブネット指示部
113 ジョブ指示部
115a 割当用マスタテーブル
115b 割当用コピーテーブル
116 ジョブネット定義テーブル
117 ジョブネット割当テーブル
118 ジョブ割当テーブル
119 冗長化定義テーブル
120 部分ジョブネット割当テーブル
121 ジョブネット管理部
122 実行用ジョブネット記憶部
123 ジョブネット実行部
133 ジョブ実行部
DESCRIPTION OF SYMBOLS 1 Operation management apparatus 2 BP execution apparatus 3 Service execution apparatus 8 Network 9 Management network 11 Assignment plan part 12 BP instruction part 13 Service instruction part 14 Power supply control instruction part 15a Assignment master table 15b Assignment copy table 16 BP definition table 17 BP allocation table 18 Service allocation table 19 Redundancy definition table 20 Partial BP allocation table 21 BP management unit 22 Execution BP storage unit 23 BP execution unit 31 Virtual computer control unit 32 Virtual computer 33 Service execution unit 34 Load monitoring unit 35 Power control Part 41 CPU
42 Network interface 43 Secondary storage device 44 Main storage device 45 Main storage device 46 OS
51 Centralized allocation 52 Distributed allocation 53 Partial redundant allocation 101 Operation management apparatus 102 Job net management apparatus 103 Job execution apparatus 112 Job net instruction section 113 Job instruction section 115a Allocation master table 115b Allocation copy table 116 Job net definition table 117 Job net Allocation table 118 Job allocation table 119 Redundancy definition table 120 Partial job net allocation table 121 Job net management unit 122 Job net storage unit for execution 123 Job net execution unit 133 Job execution unit

Claims (9)

フローを実行するフロー実行装置と、前記フローのノード呼び出しから呼び出されるノードを実行するノード実行装置と、前記実行されるノードに割り当てられた物理計算機資源である前記ノード実行装置のリソースを管理する運用管理装置と、を含めて構成されるフロー処理システムによるリソース割当方法であって、
前記運用管理装置が、
前記フローのノード呼び出しとそのノード呼び出しの実行により呼び出されるノードとの対応情報、前記呼び出されるノードごとの必要リソース量情報、および、前記ノード実行装置ごとに利用可能なリソース量情報を記憶部から読み取り、
前記フローについて、そのフローの実行により呼び出されるノードの必要リソース量情報を前記対応情報に従って集計して、フローの必要リソース量を求め、求めた前記フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を1台以上検索し、
前記ノード実行装置が1台以上検索されたときには、その検索された1台以上の前記ノード実行装置から1台の前記ノード実行装置を選択し、選択した前記ノード実行装置に対して、前記フローから呼び出されるノードを割り当て、
前記ノード実行装置が1台も検索されなかったときには、前記フローの分岐ごとの実行パスに沿って、フローを複数の部分フローに分割し、各部分フローごとに、そのフローの実行により呼び出されるノードの必要リソース量情報を集計して、部分フローの必要リソース量を求め、求めた前記部分フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を検索し、検索された前記ノード実行装置に対して、部分フローごとに呼び出されるノードを割り当てることを特徴とする
リソース割当方法。
A flow execution device that executes a flow, a node execution device that executes a node that is called from a node call of the flow, and an operation that manages resources of the node execution device that are physical computer resources allocated to the executed node A resource allocation method by a flow processing system configured to include a management device,
The operation management device is
Reads from the storage unit correspondence information between a node call of the flow and a node called by execution of the node call, necessary resource amount information for each called node, and resource amount information available for each node execution device ,
For the flow, the necessary resource amount information of the node called by the execution of the flow is aggregated according to the correspondence information, the required resource amount of the flow is obtained, and the available resource amount exceeding the obtained required resource amount of the flow is calculated. Search for one or more node execution devices with
When one or more node execution devices are searched, one node execution device is selected from the searched one or more node execution devices, and the selected node execution device is selected from the flow. Assign the node to be called,
When no node execution device is searched, the flow is divided into a plurality of partial flows along the execution path for each branch of the flow, and a node called by executing the flow for each partial flow The necessary resource amount information is aggregated, the required resource amount of the partial flow is obtained, the node execution device having an available resource amount exceeding the obtained required resource amount of the partial flow is searched, and the searched node A resource allocation method, wherein a node to be called for each partial flow is allocated to an execution device.
前記フロー処理システムは、BP(Business Process)実行装置がフローとしてBPを実行し、サービス実行装置がノードとしてサービスを実行するBP処理システムとして構成され、
前記部分フローは、BPの分岐ごとの実行パスに沿って構成される部分BPとして構成され、
前記ノード呼び出しは、BPのサービス呼び出しアクティビティとして構成されることを特徴とする
請求項1に記載のリソース割当方法。
The flow processing system is configured as a BP processing system in which a BP (Business Process) execution device executes a BP as a flow and a service execution device executes a service as a node,
The partial flow is configured as a partial BP configured along an execution path for each branch of the BP,
The resource allocation method according to claim 1, wherein the node call is configured as a BP service call activity.
前記フロー処理システムは、ジョブネット実行装置がフローとしてジョブネットを実行し、ジョブ実行装置がノードとしてジョブを実行するジョブネット処理システムとして構成され、
前記部分フローは、ジョブネットの分岐ごとの実行パスに沿って構成される部分ジョブネットとして構成され、
前記ノード呼び出しは、ジョブネットのジョブ呼び出しとして構成されることを特徴とする
請求項1に記載のリソース割当方法。
The flow processing system is configured as a job net processing system in which a job net execution device executes a job net as a flow, and the job execution device executes a job as a node.
The partial flow is configured as a partial job net configured along an execution path for each branch of the job net,
The resource allocation method according to claim 1, wherein the node call is configured as a job call of a job net.
前記フローから呼び出されるノードを1台の前記ノード実行装置に割り当てる工程において、検索された前記1台以上のノード実行装置のうち、提供可能なリソース量が最も大きい前記ノード実行装置を選択することを特徴とする
請求項1ないし請求項3のいずれか1項に記載のリソース割当方法。
In the step of assigning a node called from the flow to one node execution device, selecting the node execution device having the largest amount of resources that can be provided among the one or more node execution devices searched. The resource allocation method according to any one of claims 1 to 3.
前記運用管理装置は、フローを所定の前記ノード実行装置に割り当てた後、そのフロー、または、その部分フローが冗長指定されているときには、その冗長指定されているフロー、または、その部分フローを、所定の前記ノード実行装置とは別の前記ノード実行装置へと割り当てることを特徴とする
請求項1ないし請求項4のいずれか1項に記載のリソース割当方法。
The operation management apparatus assigns a flow to a predetermined node execution apparatus, and when the flow or the partial flow is designated as redundant, the redundant designated flow or the partial flow is The resource allocation method according to any one of claims 1 to 4, wherein allocation is performed to the node execution device different from the predetermined node execution device.
前記運用管理装置は、所定のフローから構成される各部分フローを所定の前記ノード実行装置群に割り当てた後、そのフロー、または、その部分フローが冗長指定されているときには、その冗長指定されているフロー、または、その部分フローを、所定の前記ノード実行装置群とは別の前記ノード実行装置へと割り当てることを特徴とする
請求項1ないし請求項4のいずれか1項に記載のリソース割当方法。
The operation management device assigns each partial flow composed of a predetermined flow to the predetermined node execution device group, and if the flow or the partial flow is designated as redundant, the redundancy is designated. The resource allocation according to any one of claims 1 to 4, wherein a flow or a partial flow thereof is allocated to the node execution device different from the predetermined node execution device group. Method.
前記ノード実行装置が検索されなかったときの工程において、部分フローの単位で前記ノード実行装置にノードを割り当てることができなかった場合は、リソース不足をエラー通知することを特徴とする
請求項1ないし請求項6のいずれか1項に記載のリソース割当方法。
2. In the step when the node execution device is not searched, when a node cannot be allocated to the node execution device in units of partial flows, an error notification is given for resource shortage. The resource allocation method according to claim 6.
請求項1ないし請求項7のいずれか1項に記載のリソース割当方法を、前記フロー処理システムの各装置に実行させるための、リソース割当プログラム。   A resource allocation program for causing each device of the flow processing system to execute the resource allocation method according to any one of claims 1 to 7. フローを実行するフロー実行装置と、前記フローのノード呼び出しから呼び出されるノードを実行するノード実行装置と、前記実行されるノードに割り当てられた物理計算機資源である前記ノード実行装置のリソースを管理する運用管理装置と、を含めて構成されるフロー処理システムであって、
前記運用管理装置が、
前記フローのノード呼び出しとそのノード呼び出しの実行により呼び出されるノードとの対応情報、前記呼び出されるノードごとの必要リソース量情報、および、前記ノード実行装置ごとに利用可能なリソース量情報を記憶部から読み取り、
前記フローについて、そのフローの実行により呼び出されるノードの必要リソース量情報を前記対応情報に従って集計して、フローの必要リソース量を求め、求めた前記フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を1台以上検索し、
前記ノード実行装置が1台以上検索されたときには、その検索された1台以上の前記ノード実行装置から1台の前記ノード実行装置を選択し、選択した前記ノード実行装置に対して、前記フローから呼び出されるノードを割り当て、
前記ノード実行装置が1台も検索されなかったときには、前記フローの分岐ごとの実行パスに沿って、フローを複数の部分フローに分割し、各部分フローごとに、そのフローの実行により呼び出されるノードの必要リソース量情報を集計して、部分フローの必要リソース量を求め、求めた前記部分フローの必要リソース量を上回る利用可能なリソース量をもつ前記ノード実行装置を検索し、検索された前記ノード実行装置に対して、部分フローごとに呼び出されるノードを割り当てることを特徴とする
フロー処理システム。
A flow execution device that executes a flow, a node execution device that executes a node that is called from a node call of the flow, and an operation that manages resources of the node execution device that are physical computer resources allocated to the executed node A flow processing system including a management device,
The operation management device is
Reads from the storage unit correspondence information between a node call of the flow and a node called by execution of the node call, necessary resource amount information for each called node, and resource amount information available for each node execution device ,
For the flow, the necessary resource amount information of the node called by the execution of the flow is aggregated according to the correspondence information, the required resource amount of the flow is obtained, and the available resource amount exceeding the obtained required resource amount of the flow is calculated. Search for one or more node execution devices with
When one or more node execution devices are searched, one node execution device is selected from the searched one or more node execution devices, and the selected node execution device is selected from the flow. Assign the node to be called,
When none of the node execution devices are searched, the flow is divided into a plurality of partial flows along the execution path for each branch of the flow, and a node called by executing the flow for each partial flow The necessary resource amount information is aggregated, the required resource amount of the partial flow is obtained, the node execution device having an available resource amount exceeding the obtained required resource amount of the partial flow is searched, and the searched node A flow processing system, wherein a node to be called for each partial flow is assigned to an execution device.
JP2008255264A 2008-09-30 2008-09-30 Resource allocation method, resource allocation program, and flow processing system Expired - Fee Related JP4834708B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008255264A JP4834708B2 (en) 2008-09-30 2008-09-30 Resource allocation method, resource allocation program, and flow processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008255264A JP4834708B2 (en) 2008-09-30 2008-09-30 Resource allocation method, resource allocation program, and flow processing system

Publications (2)

Publication Number Publication Date
JP2010086317A true JP2010086317A (en) 2010-04-15
JP4834708B2 JP4834708B2 (en) 2011-12-14

Family

ID=42250208

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008255264A Expired - Fee Related JP4834708B2 (en) 2008-09-30 2008-09-30 Resource allocation method, resource allocation program, and flow processing system

Country Status (1)

Country Link
JP (1) JP4834708B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102616927A (en) * 2012-03-28 2012-08-01 中国科学技术大学 Adjusting method of technological parameters of sewage treatment and device
WO2012164689A1 (en) * 2011-05-31 2012-12-06 株式会社日立製作所 Job management server and job management method
CN111694649B (en) * 2020-06-12 2023-07-18 北京火山引擎科技有限公司 Resource scheduling method, device, computer equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09185589A (en) * 1996-01-05 1997-07-15 Toshiba Corp Information processing system and power saving method for the system
JPH1115799A (en) * 1997-06-26 1999-01-22 Hitachi Ltd Parallel processing system
JP2003006172A (en) * 2001-06-19 2003-01-10 Mitsubishi Electric Corp System and method for processing information
JP2007148469A (en) * 2005-11-24 2007-06-14 Hitachi Ltd Preliminary resource allocation method using business process definition
JP2008009622A (en) * 2006-06-28 2008-01-17 Hitachi Ltd Management server and server system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09185589A (en) * 1996-01-05 1997-07-15 Toshiba Corp Information processing system and power saving method for the system
JPH1115799A (en) * 1997-06-26 1999-01-22 Hitachi Ltd Parallel processing system
JP2003006172A (en) * 2001-06-19 2003-01-10 Mitsubishi Electric Corp System and method for processing information
JP2007148469A (en) * 2005-11-24 2007-06-14 Hitachi Ltd Preliminary resource allocation method using business process definition
JP2008009622A (en) * 2006-06-28 2008-01-17 Hitachi Ltd Management server and server system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012164689A1 (en) * 2011-05-31 2012-12-06 株式会社日立製作所 Job management server and job management method
US9112750B2 (en) 2011-05-31 2015-08-18 Hitachi, Ltd. Job management server and job management method
CN102616927A (en) * 2012-03-28 2012-08-01 中国科学技术大学 Adjusting method of technological parameters of sewage treatment and device
CN111694649B (en) * 2020-06-12 2023-07-18 北京火山引擎科技有限公司 Resource scheduling method, device, computer equipment and storage medium

Also Published As

Publication number Publication date
JP4834708B2 (en) 2011-12-14

Similar Documents

Publication Publication Date Title
JP4523965B2 (en) Resource allocation method, resource allocation program, and operation management apparatus
US10277525B2 (en) Method and apparatus for disaggregated overlays via application services profiles
JP4605072B2 (en) Control device and information system control method
US11106508B2 (en) Elastic multi-tenant container architecture
US9207929B2 (en) Integrated system and firmware update method
US10333859B2 (en) Multi-tenant resource coordination method
US9477286B2 (en) Energy allocation to groups of virtual machines
JP4331742B2 (en) Computer system, computer and method for managing performance based on I / O allocation ratio
GB2293675A (en) Process allocation in a data processing system
US8112518B2 (en) Redundant systems management frameworks for network environments
CN109743202B (en) Data management method, device and equipment and readable storage medium
JP4834708B2 (en) Resource allocation method, resource allocation program, and flow processing system
US20010025312A1 (en) Information processing system
KR19990043986A (en) Business take over system
CN108829798B (en) Data storage method and system based on distributed database
CN109450913A (en) A kind of multinode registration dispatching method based on strategy
JPH06348664A (en) Controller for computer system constituted of plural cpus provided with different instruction characteristics
CN114490000A (en) Task processing method, device, equipment and storage medium
US10992534B2 (en) Forming groups of nodes for assignment to a system management server
JP2012181673A (en) Resource allocation device, resource allocation method, and program
CN116302452B (en) Job scheduling method, system, device, communication equipment and storage medium
CN113452729A (en) Serial number determination method, equipment and storage medium
JP2006277047A (en) Data processing device and dynamic substitution method of application program in multithread system
JP2015064746A (en) Information processing system, control method and control program for information processing system
JP2013041364A (en) Storage device and storage management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110727

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: 20110830

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: 20110926

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: 20140930

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees