図面 (/)

技術 計算機システムおよびジョブ実行計画変更方法

出願人 株式会社日立製作所
発明者 大西辰弥
出願日 2016年9月8日 (4年3ヶ月経過) 出願番号 2016-175267
公開日 2018年3月15日 (2年9ヶ月経過) 公開番号 2018-041296
状態 未査定
技術分野 マルチプログラミング
主要キーワード 性能劣化判定 アラーム発報 変化量閾値 実行予測 終了予測時刻 使用予定量 回避不能 計画時刻
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2018年3月15日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (10)

課題

複数のジョブの実行において、実行期間を変更することにより、制約条件を満たしつつ、性能劣化を防ぐ。

解決手段

プロセッサは、複数のジョブに対し、各ジョブの実行予定期間と、各ジョブのリソース使用予定量と、制約条件と、ジョブ間従属関係とを示すジョブ情報を取得し、複数のジョブの実行状況を取得し、ジョブ情報及び実行状況に基づいて、各ジョブが、予め設定された逸脱条件を満たすか否かを判定する、ように構成される。複数のジョブが逸脱条件を満たすと判定された場合、プロセッサは、常に複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ複数のジョブの中の特定ジョブが制約条件を満たす、という変更条件の下で、複数のジョブの中の変更ジョブの実行期間を変更する。

概要

背景

近年、様々な事業分野の自由化や、企業の事業拡大に伴い、業務システムには機能の多様化が求められている。

様々な機能を具備した大規模業務システムを構築する際、複数のサブシステムを構築し、サブシステム間で情報を共有することにより、1つの業務システムとして機能させることがある。サブシステムは、業務機能毎に構築されたり、既存システムを組み合わせて構築されたりすることにより、各々の機能に沿った業務を実施する。

サブシステム間で情報を共有するにあたり、他サブシステムの処理結果を参照(データ参照)することや、特定の処理を契機に他サブシステムと連携イベント連携)することがある。データ参照やイベント連携を正しく行うために、SLA(Service Level Agreement)と呼ばれる終了期限を設けることがある。

また、各業務機能はそれぞれに性能特性を持つため、リソース消費傾向に応じて性能を左右する要因が異なる。特許文献1では、このような性能特性が異なる複数のアプリケーションが混在して稼働している環境において、ボトルネック要因を推定することにより、性能劣化の要因を特定する技術を開示している。

概要

複数のジョブの実行において、実行期間を変更することにより、制約条件を満たしつつ、性能劣化を防ぐ。プロセッサは、複数のジョブに対し、各ジョブの実行予定期間と、各ジョブのリソース使用予定量と、制約条件と、ジョブ間従属関係とを示すジョブ情報を取得し、複数のジョブの実行状況を取得し、ジョブ情報及び実行状況に基づいて、各ジョブが、予め設定された逸脱条件を満たすか否かを判定する、ように構成される。複数のジョブが逸脱条件を満たすと判定された場合、プロセッサは、常に複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ複数のジョブの中の特定ジョブが制約条件を満たす、という変更条件の下で、複数のジョブの中の変更ジョブの実行期間を変更する。

目的

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

メモリと、前記メモリに接続されるプロセッサと、を備え、前記プロセッサは、複数のジョブに対し、各ジョブの実行予定期間と、各ジョブのリソース使用予定量と、制約条件と、ジョブ間従属関係とを示すジョブ情報を取得し、前記複数のジョブの実行状況を取得し、前記ジョブ情報及び前記実行状況に基づいて、各ジョブが、予め設定された逸脱条件を満たすか否かを判定する、ように構成され、前記複数のジョブが前記逸脱条件を満たすと判定された場合、前記プロセッサは、常に前記複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ前記複数のジョブの中の特定ジョブが制約条件を満たす、という変更条件の下で、前記複数のジョブの中の変更ジョブ実行期間を変更する、計算機システム

請求項2

前記制約条件は、前記特定ジョブが、予め設定された終了期限以前に終了することである、請求項1に記載の計算機システム。

請求項3

前記複数のジョブが前記逸脱条件を満たすと判定された場合、前記プロセッサは、前記変更ジョブの実行期間候補を算出し、前記ジョブ情報及び前記実行期間候補に基づいて、前記実行期間候補が前記変更条件を満たすか否かを判定し、前記実行期間候補が前記変更条件を満たす場合、前記変更ジョブの実行期間を前記実行期間候補に変更する、請求項2に記載の計算機システム。

請求項4

前記実行期間候補が前記変更条件を満たさない場合、前記プロセッサは、前記実行期間候補の算出と前記実行期間候補の判定とを繰り返し、前記実行期間候補の判定の回数が、規定回数に達した場合、前記プロセッサは、アラーム報知する、請求項3に記載の計算機システム。

請求項5

前記実行状況は、実行されたジョブの実行期間の実績である実行実績期間を含み、前記逸脱条件は、前記実行されたジョブの実行予定期間の開始時刻と、前記実行されたジョブの実行実績期間の開始時刻との差、又は前記実行されたジョブの実行予定期間の終了時刻と、前記実行されたジョブの実行実績期間の終了時刻との差が、予め設定された時刻閾値よりも大きいことである、請求項4に記載の計算機システム。

請求項6

前記実行状況は、前記実行されたジョブの処理件数を含み、前記ジョブ情報は、前記実行されたジョブの処理件数の予定量である処理予定件数を含み、前記プロセッサは、前記実行されたジョブの処理予定件数及び処理件数に基づいて、前記実行されたジョブの実行期間の長さを、処理予測時間として予測し、前記実行されたジョブの処理予測時間に基づいて、各ジョブの実行期間を予測する、請求項4に記載の計算機システム。

請求項7

前記逸脱条件は、前記実行されたジョブの処理予定件数と、前記実行されたジョブの現在の処理件数との差が、予め設定された処理件数変化量閾値よりも大きいことである、請求項6に記載の計算機システム。

請求項8

前記プロセッサは、前記変更ジョブの前記変更された実行期間を、表示デバイスに表示させるように構成されている、請求項1乃至7の何れか一項に記載の計算機システム。

請求項9

前記プロセッサは、前記変更ジョブの前記変更された実行期間の開始時刻を示す指令を、前記複数のジョブを実行する業務システム発行するように構成されている、請求項1乃至7の何れか一項に記載の計算機システム。

請求項10

複数のジョブに対し、各ジョブの実行予定期間と、各ジョブのリソース使用予定量と、制約条件と、ジョブ間の従属関係とを示すジョブ情報を取得し、前記複数のジョブの実行状況を取得し、前記ジョブ情報及び前記実行状況に基づいて、各ジョブが、予め設定された逸脱条件を満たすか否かを判定し、前記複数のジョブが前記逸脱条件を満たすと判定された場合、常に前記複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ前記複数のジョブの中の特定ジョブが制約条件を満たす、という変更条件の下で、前記複数のジョブの中の変更ジョブの実行期間を変更する、ことを備える、ジョブ実行計画変更方法

技術分野

0001

本発明は、計算機システムに関する。

背景技術

0002

近年、様々な事業分野の自由化や、企業の事業拡大に伴い、業務システムには機能の多様化が求められている。

0003

様々な機能を具備した大規模業務システムを構築する際、複数のサブシステムを構築し、サブシステム間で情報を共有することにより、1つの業務システムとして機能させることがある。サブシステムは、業務機能毎に構築されたり、既存システムを組み合わせて構築されたりすることにより、各々の機能に沿った業務を実施する。

0004

サブシステム間で情報を共有するにあたり、他サブシステムの処理結果を参照(データ参照)することや、特定の処理を契機に他サブシステムと連携イベント連携)することがある。データ参照やイベント連携を正しく行うために、SLA(Service Level Agreement)と呼ばれる終了期限を設けることがある。

0005

また、各業務機能はそれぞれに性能特性を持つため、リソース消費傾向に応じて性能を左右する要因が異なる。特許文献1では、このような性能特性が異なる複数のアプリケーションが混在して稼働している環境において、ボトルネック要因を推定することにより、性能劣化の要因を特定する技術を開示している。

先行技術

0006

国際公開第2015/145664号

発明が解決しようとする課題

0007

しかしながら、特許文献1では性能特性が異なるアプリケーションがジョブとして稼働し、遅延が発生することによる影響については考慮されていない。そのため、ジョブの処理時間の増加や障害により本来の実行期間と異なる期間に走行することによる性能劣化の推定ができない。性能劣化はSLA超過の原因となる。

課題を解決するための手段

0008

上記課題を解決するために、本発明の一態様である計算機システムは、メモリと、前記メモリに接続されるプロセッサと、を備える。前記プロセッサは、複数のジョブに対し、各ジョブの実行予定期間と、各ジョブのリソース使用予定量と、制約条件と、ジョブ間従属関係とを示すジョブ情報を取得し、前記複数のジョブの実行状況を取得し、前記ジョブ情報及び前記実行状況に基づいて、各ジョブが、予め設定された逸脱条件を満たすか否かを判定する、ように構成される。前記複数のジョブが前記逸脱条件を満たすと判定された場合、前記プロセッサは、常に前記複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ前記複数のジョブの中の特定ジョブが制約条件を満たす、という変更条件の下で、前記複数のジョブの中の変更ジョブの実行期間を変更する。

発明の効果

0009

複数のジョブの実行において、実行期間を変更することにより、制約条件を満たしつつ、性能劣化を防ぐことができる。

図面の簡単な説明

0010

実施例に係る計算機システムの構成の一例を示す。
ジョブフローの一例を示す。
ジョブ実行実績統合DB110の一例を示す。
リソース使用率時間変化の第1の例を示す。
ジョブ遅延判定情報500の一例を示す。
リソース使用率の時間変化の第2の例を示す。
性能劣化回避処理を示す。
性能劣化回避情報600の一例を示す。
リソース使用率の時間変化の第3の例を示す。

実施例

0011

以下、図面を参照して本発明の実施形態を説明する。

0012

以下の説明では、「×××テーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「×××テーブル」を「×××情報」と呼ぶことができる。また、以下の説明において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部又は一部が1つのテーブルであってもよい。

0013

また、以下の説明では、要素の識別情報として、IDが使用されるが、それに代えて又は加えて他種の識別情報が使用されてもよい。

0014

また、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号又は参照符号における共通番号を使用し、同種の要素を区別して説明する場合は、その要素の参照符号を使用又は参照符号に代えてその要素に割り振られたIDを使用することがある。

0015

また、以下の説明では、I/O(Input/Output)要求は、ライト要求又はリード要求であり、アクセス要求と呼ばれてもよい。

0016

また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU(Central Processing Unit))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又はインターフェースデバイス(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理又はシステムとしてもよい。また、プロセッサは、処理の一部または全部を行うハードウェア回路を含んでもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサ(例えばCPU)と記憶資源を含み、記憶資源はさらに配布プログラム配布対象であるプログラムとを記憶してよい。そして、プログラム配布サーバのプロセッサが配布プログラムを実行することで、プログラム配布サーバのプロセッサは配布対象のプログラムを他の計算機に配布してよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。

0017

図1は、実施例に係る計算機システムの構成の一例を示す。

0018

計算機システムは、メモリ100、CPU200、入力デバイス300、表示デバイス400を含む。本実施例において、計算機システムの各機能は一つの計算機(サーバ)上に搭載されている。メモリ100は、プログラムおよびデータを格納する。CPU200は、メモリ100に格納されたプログラムに従って処理を実行する。入力デバイス300は、管理者からの情報の入力を受け付ける。表示デバイス400は、CPU200からの指示に従って情報を表示する。入力デバイス300、表示デバイス400の代わりに、ネットワークを介して計算機システムに接続される端末装置が用いられてもよい。

0019

メモリ100は、プログラムとして、業務システム101、リソース監視部102、リソース情報収集部103、ジョブ実行部105、ジョブ実行実績収集部106、ジョブ実行実績統合部109、ジョブ遅延判定部111、性能劣化判定部112、性能劣化回避部113を格納する。更にメモリ100は、データとして、リソース情報データベース(DB)104、ジョブ実行実績DB107、ジョブ構成管理DB108、ジョブ実行実績統合DB110を格納する。

0020

業務システム101は、複数のサブシステムを含み、各サブシステム間でイベント連携やデータ参照を行うことにより日々の業務を実施する。

0021

ジョブ構成管理DB108は、イベント連携情報や、データ参照関係といった各ジョブネット前後関係を保持する。ジョブネットは、少なくとも一つのジョブを含む。例えば、ジョブネットの前後関係は、当該ジョブネットの前段である前提ジョブネットや、当該ジョブネットの後段である後続ジョブネットを示す。データ参照関係は、ジョブネットが前提ジョブネットのデータを参照することを示す。イベント連携情報は、ジョブネットが前提ジョブネットのイベントを受けて処理を開始することを示す。イベント連携情報や、データ参照関係を、従属関係と呼ぶことがある。

0022

また、ジョブ構成管理DB108は、特定のジョブネットの終了期限を示すSLA時刻を保持する。ジョブ構成管理DB108は、特定のジョブネットについて計画された開始時刻(開始計画時刻)を保持してもよい。ジョブ構成管理DB108に格納されるジョブ構成情報は、予め管理者または開発者により設定される。

0023

ジョブ構成管理DB108が保持している情報を元に、ジョブ実行部105は、業務システム101にジョブの実行の命令を出す。例えば、ジョブ構成管理DB108が、あるジョブネットの開始時刻を保持している場合、ジョブ実行部105は、開始時刻に、当該ジョブネットの実行の命令を業務システム101に発行する。また、ジョブ実行部105は、例えば命令に対する返り値に基づいてジョブが正常に完了したか否かを判定する。

0024

開始時刻が設定されているジョブネットが、前提ジョブネットから出力されるデータを参照する場合で、前提ジョブネットの終了時刻が当該ジョブネットの開始時刻よりも遅延すると、当該ジョブネットが異常終了する等の不具合が発生する。

0025

ジョブ実行実績収集部106は、業務システム101が実行したジョブの実行情報を、ジョブ実行部105を通じて収集し、収集された実行情報をジョブ実行実績としてジョブ実行実績DB107に登録する。例えば、ジョブ実行実績DB107は、実行されたジョブの開始時刻、終了時刻、処理件数を含む。例えば、ジョブネットがファイル内のレコードを処理する場合、処理件数は、当該ファイル内のレコード件数であってもよい。また、ジョブネットがDBに登録されるデータを処理する場合、処理件数は、DBに登録されているデータ量の増分であってもよい。ジョブ実行実績DB107は、正常に完了したか否かを示す実行結果を含んでもよい。

0026

リソース監視部102は、業務システム101が業務を実行している際のCPUやメモリといった各種リソースの使用状況を、繰り返し監視する。

0027

リソース情報収集部103は、リソース監視部102が監視した結果を、リソース使用率等のリソース情報としてリソース情報DB104に登録する。リソース情報は、CPUの使用時間やメモリの使用量等の、リソース使用量であってもよい。

0028

ジョブ実行実績統合部109は、リソース情報DB104、ジョブ実行実績DB107、ジョブ構成管理DB108に登録されたデータを統合し、統合されたデータをジョブ実行実績統合DB110に蓄積する。ジョブ実行実績統合DB110に蓄積される情報の一例として、ジョブネット毎の、開始予定時刻終了予定時刻、SLA時刻、処理予定件数、リソース使用率、前提ジョブネット、後続ジョブネットがある。ここで、ジョブ実行実績統合部109は、ジョブ実行実績DB107に登録されている日々の業務の実行実績をもとに、開始予定時刻、終了予定時刻、処理予定件数を算出する。また、ジョブ実行実績統合部109は、リソース情報DB104をもとに、リソース使用率を算出する。また、ジョブ実行実績統合部109は、ジョブ構成管理DB108に登録されている情報をもとに、SLA時刻、前提ジョブネット、後続ジョブネットを、ジョブ実行実績統合DB110へ格納する。

0029

ジョブ遅延判定部111は、ジョブ実行実績統合DB110に蓄積された過去のデータと現在のジョブ実行実績とから、ジョブネットに遅延の発生が見込まれるかを判定する。このとき、ジョブ遅延判定部111は、実行されたジョブネットの開始時刻および終了時刻の遅延を検出してもよい。また、ジョブ遅延判定部111は、実行されたジョブネットの処理件数の推移から処理時間の増減を推定することにより、ジョブネットに遅延発生が見込まれるかを判定してもよい。処理時間は、ジョブネットの開始時刻から終了時刻までの時間の長さである。

0030

ジョブ遅延判定部111にてジョブネットの遅延が発生する見込みであると判定された際、性能劣化判定部112は、性能劣化が発生しうるか判定する。ここで性能劣化判定部112は、ジョブ実行実績統合DB110に蓄積されたジョブ構成情報と、リソース情報と、ジョブ遅延判定部111により判定された処理時間の増減とから、リソース限界による性能劣化が起こりうるかを判定する。具体的には、性能劣化判定部112は、遅延が発生すると見込まれたジョブネット及び後続のジョブネットと、同期間に走行するジョブネットとのリソース使用率の合計が100%を超過する場合、性能劣化が見込まれる期間として判定する。

0031

性能劣化判定部112にて性能劣化の発生が見込まれると判定された際、性能劣化回避部113は、性能劣化が見込まれる期間のジョブ開始時刻変更指令をジョブ実行部105に出す。ここで性能劣化回避部113は、ジョブ実行実績統合DB110に蓄積されている情報をもとに、開始時刻を変更するジョブに対して、変更先の期間において性能劣化が発生するか、また変更後にSLA時刻超過が発生するかを評価する。評価の結果、性能劣化が発生せず、且つSLA時刻超過が発生しないと判定された場合、性能劣化回避部113は、ジョブ開始時刻変更指令を出す。評価の結果、性能劣化またはSLA時刻超過が発生すると判定された場合、性能劣化回避部113は、アラーム報知を行う。

0032

あるジョブネットの変更後の開始時刻を示すジョブ開始時刻変更指令を受けたジョブ実行部105は、ジョブ構成管理DB108に開始時刻が設定されている場合であっても、変更後の開始時刻を優先し、変更後の開始時刻に当該ジョブネットを実行する。

0033

なお、業務システム101が、別のサーバ上にあってもよい。また、リソース監視部102、リソース情報収集部103、リソース情報DB104が、別のサーバ上にあってもよい。また、ジョブ実行部105、ジョブ実行実績収集部106、ジョブ実行実績DB107、ジョブ構成管理DB108が、別のサーバ上にあってもよい。ジョブ実行実績統合部109、ジョブ遅延判定部111、性能劣化判定部112、性能劣化回避部113、ジョブ実行実績統合DB110が、別のサーバ上にあってもよい。

0034

例えば、業務システム101内の各サブシステムが既存システムであり、それぞれのサブシステムが、リソース監視、ジョブ実行管理を行う際、ジョブ実行実績統合部109が各サブシステムのリソース情報、ジョブ実行実績、ジョブ構成情報を収集する。

0035

なお、リソース監視部102、リソース情報収集部103、リソース情報DB104、ジョブ実行実績統合部109、ジョブ実行実績統合DB110、性能劣化判定部112、性能劣化回避部113は、CPU、メモリ等、複数の種類のリソースのリソース使用率を用いてもよい。

0036

図2は、ジョブフローの一例を示す。

0037

ジョブフローは、イベント連携やデータ参照関係など、ジョブネット間の前後関係を示している。例えば、ジョブネットAは、ジョブネットBの前提ジョブネットであり、ジョブネットBはジョブネットAの後続ジョブネットの関係にある。ジョブネットBは、ジョブネットAの結果のデータを読み込んで処理を開始するため、ジョブネットAの終了前に開始することができず、順番を逆にしたり、同時に処理したりすることはできない。また、ジョブネットH、I、J、Kは、ジョブネットA、B、C、D、E、F、Gとの前後関係を持たず、並列に処理することができる。また、ジョブネットE、F、Fは、ジョブネットC、Dとの前後関係を持たず、並列に処理することができる。

0038

ジョブ構成管理DB108は、ジョブフローの実行期間を含む、実行計画を示す。実行計画は、予め設定された実行周期毎に実行される。本実施例において、実行周期は1日である。

0039

図3は、ジョブ実行実績統合DB110の一例を示す。

0040

この図の例は、図2にて述べたジョブフローに対応する。ジョブ実行実績統合DB110は、ジョブネット毎のエントリを有する。一つのジョブネットに対応するエントリは、ジョブネット名411、開始予定時刻413、終了予定時刻416、SLA時刻423、処理予定件数422、リソース使用率424、前提ジョブネット431、後続ジョブネット432を含む。

0041

ジョブネット名411は、当該ジョブネットを示す。開始予定時刻413は、当該ジョブネットの実行開始予定時刻を示す。終了予定時刻416は、当該ジョブネットの実行終了の予定時刻を示す。SLA時刻423は、当該ジョブネットに設定された終了期限を示す。処理予定件数422は、当該ジョブネットによる処理件数の予定量を示す。リソース使用率424は、当該ジョブネットによるリソース使用率の予定量を示す。前提ジョブネット431は、当該ジョブネットの前段のジョブネットを示す。後続ジョブネット432は、当該ジョブネットの後段のジョブネットを示す。

0042

SLA時刻423は、設定されないジョブネットがあってもよい。SLA時刻423が設定されているジョブを特定ジョブと呼ぶことがある。

0043

開始予定時刻413から終了予定時刻416までの期間を実行予定期間と呼ぶことがある。ジョブ構成管理DB108にジョブネットの開始時刻が登録されている場合、当該ジョブネットの開始予定時刻の代わりに、開始時刻が用いられてもよい。開始予定時刻413、終了予定時刻416、処理予定件数422は、ジョブ実行実績DB107に登録されている日々の業務の実行結果をもとに導かれる。例えば、ジョブ実行実績統合部109は、ジョブ実行実績DB107における各ジョブネットの、開始時刻、終了時刻、処理件数について、平均値を算出し、夫々、開始予定時刻413、終了予定時刻416、処理予定件数422として格納する。

0044

リソース使用率424は、リソース情報DB104に登録されている日々の業務の実行結果をもとに導かれる。例えば、ジョブ実行実績統合部109は、各ジョブネットに対し、リソース情報DB104における実行期間中のリソース使用率の最大値を、ジョブ実行実績統合DB110のリソース使用率として算出する。リソース使用率424の代わりに、リソース使用量の予定量等、他のリソース使用予定量が用いられてもよい。

0045

各ジョブネットの前後関係を示す前提ジョブネット431および後続ジョブネット432と、SLA時刻423とは、ジョブ構成管理DB108にて管理されている。本実施例におけるSLA時刻は、業務システム101に対し、顧客との契約や他のシステムとの関係で定められる処理期限の時刻としている。この時刻までに特定のジョブネットの処理が完了しないことは、顧客や他のシステムに影響を与えるため、可能な限り回避されるべきである。回避不能な場合でも、早く予知して対策を講じることが求められる。

0046

SLA時刻の代わりに、ジョブネットの実行に対する他の制約条件が設定されてもよい。制約条件は、特定のジョブネットが正常に完了することであってもよいし、特定のジョブネットの実行期間が他のジョブネットの実行期間に重ならないことであってもよいし、実行計画が一定の周期で実行される場合、特定のジョブネットが次の周期の実行計画の開始までに完了することであってもよい。

0047

ジョブ実行実績統合DB110、または、リソース情報DB104、ジョブ実行実績DB107、ジョブ構成管理DB108を、ジョブ情報と呼ぶことがある。ジョブ実行実績を実行状況と呼ぶことがある。

0048

図4は、リソース使用率の時間変化の第1の例を示す。

0049

この図の例は、図3の状態に対応する。即ち、この図は、通常時のリソース使用率の時間変化を示す。

0050

この図において、縦軸は時刻を示し、横軸はリソース使用率を示す。点線は各ジョブネットの実行期間とリソース使用率を表し、実線は各時刻におけるリソース使用率の合計値を表す。この図の例では、リソース使用率が100%を超えている時刻はなく、性能劣化は発生しない。

0051

図5は、ジョブ遅延判定情報500の一例を示す。

0052

ジョブ遅延判定情報500は、ジョブ遅延判定部111により収集される。ジョブ遅延判定情報500は、ジョブネット毎のエントリを有する。一つのジョブネットに対応するエントリは、ジョブネット名511、開始時刻512、開始予測時刻513、終了時刻515、終了予測時刻516、処理件数521、処理予測件数522、SLA時刻523、リソース使用率524を含む。

0053

ジョブネット名511は、当該ジョブネットを示す。開始時刻512は、当該ジョブネットの開始時刻の実績値である。開始予測時刻513は、当該ジョブネットの開始時刻の予測値である。終了時刻515は、当該ジョブネットの終了時刻の実績値である。終了予測時刻516は、当該ジョブネットの終了時刻の予測値である。処理件数521は、当該ジョブネットの処理件数の実績値である。処理予測件数522は、当該ジョブネットの処理件数の予測値である。SLA時刻523は、当該ジョブネットのSLA時刻423である。リソース使用率524は、当該ジョブネットのリソース使用率424である。

0054

ジョブ遅延判定部111は、ジョブ実行実績DB107から、実行中のジョブネットの開始時刻、終了時刻、処理件数を収集する。ジョブ遅延判定部111は更に、ジョブ実行実績統合DB110の一部を収集する。ジョブ遅延判定部111は、何れかのジョブネットが、予め設定された逸脱条件を満たす場合、ジョブネットの実行が遅延し、業務システム101の性能劣化が発生すると判定する。

0055

ここで、ジョブ遅延判定部111は、収集された情報に基づいて、実行中のジョブネットの処理件数および処理予定件数の差から、処理時間の増減を予測してもよい。例えば、逸脱条件は、あるジョブネットの処理件数が増加することであってもよい。具体的には、逸脱条件は、実行中のジョブネットの処理件数から処理予定件数を減じて得られる値が、予め設定された処理件数変化量閾値よりも大きいことであってもよい。

0056

また、逸脱条件は、実行されたジョブネットの開始時刻の実績である開始実績時刻、または実行されたジョブネットの終了時刻の実績である終了実績時刻の何れかが遅延することであってもよい。例えば、逸脱条件は、あるジョブネットの開始実績時刻から、開始時刻512または開始予定時刻413を減じて得られる値が、予め設定された時刻変化量よりも大きいことであってもよい。また、逸脱条件は、あるジョブネットの終了実績時刻から、終了時刻515または終了予定時刻416を減じて得られる値が、予め設定された時刻変化量よりも大きいことであってもよい。開始実績時刻から終了実績時刻までの期間を、実行実績期間と呼ぶことがある。

0057

また、ジョブ遅延判定部111は、過去の処理時間及び処理件数から単位処理件数あたりの処理時間を推定し、推定した単位処理件数あたりの処理時間に処理件数を乗算することにより、ジョブネットの処理時間を予測してもよい。ジョブ遅延判定部111は、予測された処理時間に基づいて、各ジョブネットの開始予測時刻513および終了予測時刻516を算出してもよい。逸脱条件は、あるジョブネットの開始予測時刻513から、開始時刻512または開始予定時刻413を減じて得られる値が、予め設定された時刻変化量よりも大きいことであってもよい。また、逸脱条件は、あるジョブネットの終了予測時刻516から、終了時刻515または終了予定時刻416を減じて得られる値が、予め設定された時刻変化量よりも大きいことであってもよい。

0058

更にジョブ遅延判定部111は、イベント連携やデータ参照等の前後関係と、前提ジョブネットの処理件数とを用いて、後続ジョブネットの処理件数について予測を行う。

0059

図5は、図3の例においてジョブネットCの処理件数が増加した場合のジョブ遅延判定情報500を示す。この図の例において、ジョブネットCの処理件数が増加し、ジョブネットCの処理時間が増加し、ジョブネットCの終了予測時刻516が終了予定時刻416よりも遅延することが予測される。

0060

図6は、リソース使用率の時間変化の第2の例を示す。

0061

この図は、図5の状態に対応する。即ち、この図は、ジョブネットCの処理件数が増加した場合のリソース使用率の時間変化を示す。

0062

この図の例は、図4の例に比べて、ジョブネットCの処理時間が延び、終了予測時刻が遅延することにより、本来同期間に走行することのなかったジョブネットCとジョブネットGとジョブネットJとの処理が重なる。この場合、性能劣化判定部112は、斜線で示された期間において、リソース使用率が100%を超過するため、性能劣化が発生すると判定する。この状態では、処理が非効率になり、リソース使用量の超過以上に処理遅延が大きくなるため、リソース超過は回避することが望ましい。

0063

性能劣化が発生することにより、該当期間のジョブネット処理時間が延びることが想定される。したがって、ジョブネットC、ジョブネットG、ジョブネットJの終了予測時刻が遅れるとともに、それぞれのジョブネットの後続の終了予測時刻にも影響が出る。

0064

そのため、影響範囲下にあるジョブネットのうち、ジョブネットD、ジョブネットJ、ジョブネットKにおいて、SLA時刻超過が発生することが考えられる。

0065

図7は、性能劣化回避処理を示す。

0066

ジョブネットの実行期間の遅延等により、性能劣化判定部112により特定の期間において性能劣化の発生が見込まれた場合、710において性能劣化回避部113は、性能劣化回避処理を開始する。例えば、性能劣化判定部112は、何れかのジョブネットが逸脱条件を満たす場合に、性能劣化が発生すると判定する。

0067

702において性能劣化回避部113は、性能劣化の発生が見込まれた期間に実行予定となっているジョブネットの中から一つのジョブネットを選択し、実行期間を変更する。このとき、性能劣化回避部113は、ジョブ実行実績統合DB110にて管理されている各ジョブネットの前後関係を保持したままジョブネットの開始時刻を変更する。例えば、性能劣化回避部113は、性能劣化の発生する期間におけるジョブネットの開始時刻を、予め設定された時間間隔だけ後方へ変更する。性能劣化の発生する期間に複数のジョブネットが実行される場合、自身とそれよりも後段のジョブネットとにSLA時刻が設定されていないジョブネットを優先して選択し、その開始時刻を変更してもよい。702において選択されたジョブを変更ジョブと呼ぶことがある。702において変更された実行期間を、実行期間候補と呼ぶことがある。

0068

703において性能劣化回避部113は、ジョブ実行実績統合DB110に基づいて、変更後のジョブネットの実行期間と、後続のジョブネットの実行期間とのリソース使用率の評価を行う。

0069

704において性能劣化回避部113は、703の評価結果をもとに、新たに性能劣化が発生するか否かを判定する。ここで、性能劣化回避部113は、リソース使用率の合計が100%を超える場合、性能劣化が発生すると判定する。

0070

704の結果、性能劣化が発生しないと判定された場合(NO)、705において性能劣化回避部113は、変更後のジョブネットの終了時刻および、後続のジョブネットの終了時刻について、ジョブ実行実績統合DB110にて管理されている情報をもとに、評価を行う。

0071

706において性能劣化回避部113は、705の評価結果をもとに、SLA時刻が設定されているジョブネットについて、SLA時刻超過が発生しているか否かを判定する。

0072

706の結果、SLA時刻超過が発生していないと判定された場合(NO)、707において性能劣化回避部113は、ジョブ実行部105にジョブネットの開始時刻変更指令を出し、710において性能劣化回避部113は、性能劣化回避処理を終了する。ここで、性能劣化回避部113は、変更された開始時刻を表示デバイスに表示させてもよい。また、性能劣化回避部113は、開始時刻が変更されたジョブネットのジョブネット名、終了予測時刻、SLA時刻等を、表示デバイスに表示させてもよい。

0073

703の結果、性能劣化が発生すると判定された場合(YES)、または705の結果、SLA時刻超過が発生すると判定された場合(YES)、708において性能劣化回避部113は、702の変更回数規定回数に到達したかを判定する。

0074

708の結果、変更回数が規定回数に到達していないと判定された場合(NO)、性能劣化回避部113は、処理を702へ移行させる。

0075

708の結果、変更回数が規定回数に到達したと判定された場合(YES)、709において性能劣化回避部113は、アラーム発報し、710において性能劣化回避部113は、性能劣化回避処理を終了する。アラームを受けた管理者は、業務システム101の性能劣化の影響を受ける別の業務システムの管理者へ、性能劣化を通知する等の対処を行う。

0076

以上の性能劣化回避処理によれば、性能劣化回避部113は、性能劣化が発生せず、且つSLA時刻超過が発生しないという条件の下で、ジョブネットの開始時刻を変更することができる。

0077

図8は、性能劣化回避情報600の一例を示す。

0078

性能劣化回避情報600は、前述の性能劣化回避処理の703および705において、性能劣化回避部113により収集される。性能劣化回避情報600は、ジョブネット毎のエントリを有する。一つのジョブネットに対応するエントリは、ジョブネット名611、開始時刻612、開始予測時刻613、変更後開始時刻614、終了時刻615、終了予測時刻616、変更後終了時刻617、処理件数621、処理予測件数622、SLA時刻623、リソース使用率624を含む。

0079

ジョブネット名611は、当該ジョブネットを示す。開始時刻612は、当該ジョブネットの開始時刻512である。開始予測時刻613は、当該ジョブネットの開始予測時刻513である。変更後開始時刻614は、当該ジョブネットに対し、性能劣化回避処理により変更された開始時刻である。終了時刻615は、当該ジョブネットの終了時刻515である。終了予測時刻616は、当該ジョブネットの終了予測時刻516である。変更後終了時刻617は、当該ジョブネットに対し、性能劣化回避処理により変更された終了時刻である。処理件数621は、当該ジョブネットの処理件数521である。処理予測件数622は、当該ジョブネットの処理予測件数522である。SLA時刻623は、当該ジョブネットのSLA時刻423である。リソース使用率624は、当該ジョブネットのリソース使用率424である。

0080

この図は、図5の例において、性能劣化の発生が見込まれる期間のジョブの開始時刻を変更した場合の性能劣化回避情報600を示す。性能劣化回避部113は、ジョブ遅延判定部111が予測したジョブの開始予測時刻513、終了予測時刻516と、ジョブ実行実績統合DB110とを収集する。性能劣化回避部113は更に、収集された情報に基づいて、性能劣化回避処理を行い、変更後開始時刻614、変更後終了時刻617を算出する。

0081

もし、性能劣化回避部113が、性能劣化の発生を回避するために、ジョブネットの前後関係を保持したまま、ジョブネットC、ジョブネットJの開始時刻を変更すると、ジョブネットDおよび、ジョブネットJのSLA時刻超過が発生する。

0082

一方、性能劣化回避部113が、この図に示したようにジョブネットGの開始時刻を変更すると、全てのジョブネットにおいてSLA時刻超過が発生しないことが判る。

0083

図9は、リソース使用率の時間変化の第3の例を示す。

0084

この図は、図8の状態に対応する。即ち、この図は、ジョブネットCの処理件数が増加した場合で、性能低下回避処理後のリソース使用率の時間変化を示す。

0085

図6の例では、ジョブネットC、ジョブネットG、ジョブネットJが同期間に走行することにより、リソース使用率の合計が100%を超過していたが、この図の例では、ジョブネットGの開始時刻を変更することにより、リソース使用率の合計が100%を超過することがなくなり、性能劣化が回避されたことが判る。

0086

本実施例の計算機システムは、ジョブネットを単位として実行計画を管理し変更しているが、計算機システムは、ジョブ等、他の単位で実行計画を管理し変更してもよい。

0087

また、本実施例では、ジョブネットについて、特定の処理件数に対して、リソース使用率と処理時間を固定としたが、変更可否の情報を加えて開始時刻と終了時刻の差を変更してもよい。例えば、性能劣化回避部113は、ジョブネットのリソース使用量を減らして処理時間を長くするように変更してもよい。

0088

また、性能劣化回避部113は、複数のジョブを含むジョブネットの実行を中断可能にして、実行期間を複数のジョブに分割可能にして、当該ジョブネット内の特定のジョブの開始時刻を変更してもよい。これらの変更により、変更の自由度が向上することで、性能劣化およびSLA時刻超過を回避する実行計画を実現しやすくなる。

0089

逸脱条件は、実行中のジョブネットの処理件数および処理予定件数の差の大きさが、変化量閾値よりも大きいことであってもよい。これにより、ジョブ遅延判定部111は、実行中のジョブネットの処理予定件数から処理件数を減じた値が、変化量閾値よりも大きい場合、当該ジョブネットの終了時刻が早まると判定する。この場合、後続ジョブネットの開始時刻が早まり、それ以降の複数のジョブネットの実行期間が重なることによりリソース使用率が100%以上になる可能性がある。また、逸脱条件は、あるジョブネットの開始予測時刻513と、開始時刻512または開始予定時刻413との差の大きさが、予め設定された時刻変化量よりも大きいことであってもよい。また、逸脱条件は、あるジョブネットの終了予測時刻516と、終了時刻515または終了予定時刻416との差の大きさが、予め設定された時刻変化量よりも大きいことであってもよい。

0090

本実施例によれば、複数のジョブが逸脱条件を満たすと判定された場合、計算機システムは、変更条件の下で、ジョブの実行期間を変更することができる。例えば、変更条件は、常に複数のジョブのリソース使用予定量の合計が、予め設定されたリソース使用量閾値以下であり、且つ複数のジョブの中の特定ジョブが制約条件を満たすことである。本実施例において、リソース使用予定量はリソース使用率であり、リソース使用量閾値は100%である。リソース使用量閾値は100%より小さくてもよい。

0091

計算機システムは、変更条件の下でジョブの実行期間を変更することにより、ジョブの処理遅延に伴って発生するSLA時刻超過や、それによるサブシステム間のイベント連携やデータ参照処理の異常を防ぐことができる。

0092

実行予定期間の開始時刻は、開始予定時刻413や開始時刻512等に対応する。実行予定期間の終了時刻は、終了予定時刻416や終了時刻515等に対応する。実行予測期間の開始時刻は、開始予測時刻513等に対応する。実行予測期間の終了時刻は、終了予測時刻516等に対応する。

0093

以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲を上記構成に限定する趣旨ではない。本発明は、他の種々の形態でも実施する事が可能である。

0094

100…メモリ、 101…業務システム、 102…リソース監視部、 103…リソース情報収集部、 104…リソース情報DB、 105…ジョブ実行部、 106…ジョブ実行実績収集部、 107…ジョブ実行実績DB、 108…ジョブ構成管理DB、 109…ジョブ実行実績統合部、 110…ジョブ実行実績統合DB、 111…ジョブ遅延判定部、 112…性能劣化判定部、 113…性能劣化回避部、 200…CPU、 300…入力デバイス、 400…表示デバイス

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ