JP2013196576A - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法及び情報処理プログラム Download PDF

Info

Publication number
JP2013196576A
JP2013196576A JP2012065267A JP2012065267A JP2013196576A JP 2013196576 A JP2013196576 A JP 2013196576A JP 2012065267 A JP2012065267 A JP 2012065267A JP 2012065267 A JP2012065267 A JP 2012065267A JP 2013196576 A JP2013196576 A JP 2013196576A
Authority
JP
Japan
Prior art keywords
transaction
time
scheduling
separation
transactions
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
JP2012065267A
Other languages
English (en)
Other versions
JP5867215B2 (ja
Inventor
Takero Kasai
毅郎 葛西
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012065267A priority Critical patent/JP5867215B2/ja
Publication of JP2013196576A publication Critical patent/JP2013196576A/ja
Application granted granted Critical
Publication of JP5867215B2 publication Critical patent/JP5867215B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ストレージレプリケーションのセパレートとトランザクションとのスケジューリングにおいて、レスポンス低下及びスループット低下を抑制できる情報処理装置、情報処理方法及びプログラムを提供する。
【解決手段】情報処理装置100は、実行待ちのトランザクションを、予想される実行所要時間順にリスト化するリスト化手段11と、トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、トランザクションをリスト順にスケジューリングするトランザクションスケジューリング手段12と、スケジューリングされたトランザクションの空き時間に、ボリューム毎にセパレートをスケジューリングするセパレートスケジューリング手段13とを有する。
【選択図】図1

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関し、例えばストレージレプリケーションのセパレートとトランザクションとのスケジューリング技術に関する。
今日、地震災害や鳥インフルエンザ等の事象への対応として、業務継続性の確保が大きな課題となっている。情報システムにおいて業務継続性を高めるためにはバックアップが重要である。情報システムのバックアップ技術の一つに、ディスク装置のボリュームの複製を作成するレプリケーションがある。
ディスク装置のレプリケーションとは、ディスク装置内にマスタボリューム(主ボリューム)とレプリカボリューム(複製ボリューム)を作成する技術である。通常は、マスタボリュームに更新があれば、更新データを逐次レプリカボリュームへ反映(レプリケート)する。このマスタボリュームとレプリカボリュームが結合された状態をレプリケート状態と呼び、2つのボリュームは一体として扱われる。一方、必要に応じて、マスタボリュームとレプリカボリュームをセパレート(分離)し、両者を別ボリュームとして別用途に使用することもできる。
一般に、DB(データベース)が格納されたボリュームのセパレートを行う場合、DBやデータの整合性を保つために、情報システムの運用を停止したり、オンライン業務を停止するなどして、DBの静止点を確保した後に、マスタボリュームとレプリカボリュームをセパレートする。セパレート後は、例えば、マスタボリュームは本番業務用途に、レプリカボリュームはDBのバックアップ用途に使用される。
しかし、24時間システムなど、業務を停止できないシステムも多く存在する。そこで、オンライン業務中に、DBが格納されたボリュームをセパレートするためのレプリケーションの仕組みとして、ダイナミックセパレータという機能がある。
特開2006−018796号公報
図18を参照して、典型的なダイナミックセパレータの動作と課題について説明する。
ダイナミックセパレータは、DBが格納されたボリュームのセパレートが要求される(時刻1)と、それ以降のトランザクションのスケジューリングを抑止し、既に実行中の全トランザクション(A〜C)が完了し、DBの静止点が確立できた時点(時刻2)で、セパレートを実施する。セパレートが完了したら、トランザクションのスケジューリングを再開し、スケジューリング抑止以降に投入された、もしくは、スケジュール待ちとなったトランザクション(D〜F)をスケジューリングする。
セパレート要求(時刻1)から、セパレートを開始するまで(時刻2)の所要時間は、実行中のトランザクション(A〜C)の実行時間に依存する。このため、長時間終わらないトランザクション(A)が存在すると、その間(時刻1〜時刻1)、新たなトランザクションが実行できず、オンライン利用者へのレスポンスが低下するとともに、資源を効率的に利用できない(スループットが低下する)という問題がある。
資源を効率的に利用できないという問題を解決するために、一般的にはバックフィルスケジューラという仕組みが存在する。バックフィルスケジューラとは、キューにある実行待ちをしているジョブの実行順序を入れ替えることにより、システム全体として資源を有効に利用するスケジューラである。通常、バックフィルスケジューラには、ジョブが使用する資源や、ジョブが完了するまでの予想時間が予め与えられる。この完了するまでの予想時間を、以降、許容時間と呼ぶ。一般に、許容時間を超えた場合は、そのジョブを打ち切るか、そのジョブが完了するまで他のジョブの実行を待ち合わせるかの2つの方針がとられる。
ここで、ダイナミックセパレータの静止点確立時に、一般的なバックフィルスケジューラを利用して、トランザクションをスケジューリングしようとする場合、以下の課題が生じる。
まず、オンライントランザクションのように、DBの負荷によりTAT(ターンアラウンドタイム、すなわち実行完了までの所要時間)が大きく変わる場合、トランザクションの許容時間の見積もりを、トランザクションの過去の実行実績における最大のTAT(最大TAT)で行うと、実際に最大TAT以下の時間で終了したときに、資源を効率的に利用できない(スループットが低下する)。
また、トランザクションの許容時間の見積もりを、トランザクションの過去の実行実績に基づくTATの平均値(平均TAT)で行い、かつ、トランザクションの実際の実行時間が許容時間を超えた場合、トランザクションの終了を待ち合わせてセパレートを実行することとすると、セパレート完了が遅れる(レスポンスが低下する)。
さらに、トランザクションの許容時間の見積もりを平均TATで行い、かつ、トランザクションの実際の実行時間が許容時間を超えた場合、トランザクションを打ち切ることとすると、多くのトランザクションが打ち切られ、資源を効率的に利用できない(スループットが低下する)。
加えて、セパレートの実施の際は、静止点を確立した後に、複数あるボリュームを順にセパレートしていくこととなるため、ボリュームの数に比例して時間がかかる(時刻2〜時刻3)。この間、静止点を確立した状態にしておく必要があり、トランザクションの実行はセパレート完了(時刻3)まで遅延する。そのため、オンライン利用者のレスポンスが低下するとともに、資源を効率的に利用できない(スループットが低下する)という問題がある。
本発明は、このような問題点を解決するためになされたものであり、ディスク装置レプリケーションのセパレートとトランザクションとのスケジューリングにおいて、レスポンス低下及びスループット低下を抑制できる情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
本発明に係る情報処理装置は、ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングする装置であって、実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化手段と、前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリング手段と、前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリング手段とを実行するものである。
本発明に係る情報処理方法は、ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングする方法であって、実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化ステップと、前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリングステップと、前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリングステップとを含むものである。
本発明に係るプログラムは、コンピュータに、ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングさせるためのプログラムであって、実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化ステップと、前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリングステップと、前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリングステップとを含むものである。
本発明により、ストレージレプリケーションのセパレートとトランザクションとのスケジューリングにおいて、レスポンス低下及びスループット低下を抑制できる情報処理装置、情報処理方法及びプログラムを提供することができる。
本発明の実施の形態1の情報処理装置100の構成を示す図である。 本発明の実施の形態1の情報処理装置100の構成を示す図である。 本発明の実施の形態1の情報処理装置100の構成を示す図である。 本発明の実施の形態1の情報処理装置100の構成を示す図である。 本発明の実施の形態1の情報処理装置100の構成を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 本発明の実施の形態1の情報処理装置100の動作を示す図である。 従来のダイナミックセパレータの動作を示す図である。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
<実施の形態1>
図1を参照して、本発明の実施の形態1にかかる情報処理装置100の構成について説明する。
情報処理装置100は、リスト化手段10、トランザクションスケジューリング手段11、及びセパレートスケジューリング手段12を有する。リスト化手段10は、実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化する処理を行う。トランザクションスケジューリング手段11は、前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングする。そして、セパレートスケジューリング手段12は、前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングする処理を行う。
図2を用いて、情報処理装置100のより詳細な実装例について説明する。
情報処理装置100は、典型的には1以上の端末300と、ストレージ200と接続され、端末300とはネットワークで接続される。
情報処理装置100は、典型的にはホストコンピュータであり、CPU、メモリ、入出力装置等のハードウェアを有し、メモリに格納されたソフトウェア(制御プログラム)に基づいて各種処理を実行する。情報処理装置100は物理的に単一の装置である必要はなく、複数の装置による分散処理を行う構成としてもよい。
情報処理装置100は、通信管理手段105と、プログラム106と、キュー110と、キューアクセス手段111と、スケジューラ101と、ボリューム表120と、I/O統計情報採取手段122と、ボリューム情報アクセス手段121と、トランザクション統計情報表130と、トランザクション実行時間統計情報採取手段132と、トランザクション統計情報アクセス手段131と、トランザクション定義情報表140と、トランザクション定義情報アクセス手段141と、トランザクション実行手段102と、タスク103と、レプリケーション制御手段104とを有する。典型的には、これらの手段はいずれも上述のハードウェアとソフトウェアとの協働により実現される論理的手段である。
ストレージ200は、ディスク装置制御手段201と、マスタボリューム202と、レプリカボリューム203とを含む。
本実施の形態は、スケジューラ101がボリューム表120をアクセスするためのボリューム情報アクセス手段121と、スケジューラ101がトランザクション統計情報表130をアクセスするためのトランザクション統計情報アクセス手段131と、スケジューラ101の動作とに特徴を有する。これらの手段の動作の詳細については後述する。
通信管理手段105は、端末300との通信を行い、端末300からオンライントランザクション要求を受信すると、プログラム106を実行し、結果を端末300に送信する。
プログラム106は、端末300から要求された処理を通信管理手段105に実行させる。当該処理には、端末300からのオンライントランザクション要求に応じ、トランザクションをキュー110に登録する処理が含まれる。
キュー110は、トランザクション名をキーとして、実行待ちをしているトランザクションを格納する。ここで、トランザクションはキュー110への登録順に格納される。
ボリューム表120は、ボリュームごとに、ボリューム名と、マスタボリュームとレプリカボリュームが結合された状態(レプリケート状態)か分離された状態(セパレート状態)かを表すレプリケーション状態と、I/O統計情報(BUSY率)を格納する(図3)。
I/O統計情報採取手段122は、ボリュームごとのI/O統計情報を採取し、定期的にボリューム表120のI/O統計情報を更新する。
トランザクション統計情報表130は、トランザクションごとに、トランザクション名と、トランザクションの平均TATと、トランザクションの最小TATと、トランザクションの最大TATとを格納する(図4)。
トランザクション実行時間統計情報採取手段132は、トランザクションの実行時間を採取し、トランザクション統計情報表130のトランザクションの平均TATと、トランザクションの最小TATと、トランザクションの最大TATを更新する。
トランザクション定義情報表140は、トランザクションごとに、トランザクション名と、トランザクションがアクセスするファイル名と、そのファイルが存在するボリューム名と、トランザクションを途中で中断可能か中断禁止かを表す中断禁止属性を格納する。これらの情報は、DBやトランザクションを設計した段階で決まるものであり、予めこの表140に登録される(図5)。なお、ファイル名からファイルが存在するボリュームが特定できるようなシステムでは、トランザクション定義情報表にボリューム名が登録されていなくてもよい。
スケジューラ101は、キューアクセス手段111と、ボリューム情報アクセス手段121と、トランザクション統計情報アクセス手段131と、トランザクション定義情報アクセス手段141と、レプリケーション制御手段104と、トランザクション実行手段102を使用し、トランザクションとレプリケーションのセパレートをスケジューリングする。なお、セパレート処理のスケジューリングを伴わないときは、スケジューラ101は任意のスケジュール方式にてトランザクションのスケジューリングを行う。かかるスケジュール方式には、例えば、キューに登録された順番でトランザクションのスケジューリングを行う、FIFO方式がある。
キューアクセス手段111は、スケジューラ101がキュー110をアクセスする際に使用する。キューアクセス手段111は、キュー110からトランザクションを読み出したり、再実行のためにキュー110へトランザクションを再登録する処理を行う。
ボリューム情報アクセス手段121は、スケジューラ101がボリューム表120をアクセスする際に使用する。ボリューム情報アクセス手段121は、ボリューム表120のレプリケーション状態の読み書き、I/O統計情報の読み出しを行う。
トランザクション統計情報アクセス手段131は、トランザクション名をキーに、トランザクション統計情報表130から、トランザクションの平均TATや、最小TATや、最大TATを読み出す。
トランザクション定義情報アクセス手段141は、トランザクション名をキーに、トランザクション定義情報表140から、ファイル名や、ボリューム名や、中断禁止属性を読み出す。
レプリケーション運用指示400は、システム管理者などのユーザから入力されるレプリケーションに関する指示に基づき、レプリケーション制御手段104に通知されるデータである。
レプリケーション制御手段104は、レプリケーション運用指示400として入力されるユーザからのレプリケート要求やセパレート要求の受付と、ストレージ200に対するボリュームのレプリケート指示やセパレート指示と、スケジューラ101とのセパレート情報の授受を行う。
トランザクション実行手段102は、スケジュールされたトランザクションをタスク103に割り当てる処理を行う。
タスク103は、トランザクションを実際に実行する主体である。タスク103の数は、トランザクションの同時実行多重度である。トランザクションはDBにアクセスするため、ストレージ200にアクセスする。
つづいて、図13、図14及び図15のフローチャートを参照して、実施の形態1にかかる情報処理装置100の動作について説明する。
まず、図13を参照して、セパレート要求受付時の情報処理装置100の動作について説明する。
システム管理者からのセパレート要求は、レプリケーション運用指示400として、レプリケーション制御手段104に通知され、レプリケーション制御手段104がセパレート要求を受け付ける(A1)。スケジューラ101は、レプリケーション制御手段104からセパレート要求受付を伝えられると、実行中のトランザクションそれぞれについて、トランザクション統計情報表130に格納されている平均TATと、トランザクションの実行経過時間に基づき、終了予想時刻を算出する。終了予想時刻は、平均TATと実行経過時間との差分を現在時刻に加えることにより算出できる。スケジューラ101は、これらのトランザクションの中から最も終了予想時刻が遅いトランザクションを、長時間トランザクションとする(A2)。例えば図7においては、AとBが実行中トランザクションであり、Aの終了予想時刻が一番遅いため、Aを長時間トランザクションとする。
スケジューラ101は、キューにあるトランザクションについて、トランザクション名をキーにトランザクション統計情報表130とトランザクション定義情報表140を参照し、トランザクションの予想TATを取得して、トランザクションをTAT順に並べ替えたリストをスケジューリング用に作成する。以降、このリストを予想TATリストと呼ぶ。ここで使用される予想TATとは、中断可能トランザクションについては平均TAT、中断禁止トランザクションについては最大TATである(A3)。中断禁止トランザクションについて最大TATを使用するのは、トランザクションの中断ができないことによるセパレートの遅延、つまりレスポンスの低下を抑制するためである。図6に、キューの内容を予想TAT順に並び替えた予想TATリストの例を示す。トランザクションFは中断禁止属性があるため、予想TATとして、トランザクション統計情報表130に基づき、トランザクションの最大TATの値である240msを使用する。それ以外のトランザクションについては、トランザクション統計情報表130に基づき、トランザクションの平均TATの値を、予想TATとして使用する。
スケジューラ101は、長時間トランザクションの予想終了時刻までの時間に対し、キューにあるトランザクションを予想TATリスト順に割り付ける、トランザクションスケジューリング処理を行う(A4)。以降、このスケジューリングされたトランザクションを追加トランザクションと呼ぶ。図8の例においては、予想TATの降順、すなわちE、D、F、C、H、Gの順でトランザクションがタスクに割り当てられている。IとJは、予想TATが長時間トランザクションの終了予想時刻を超えるため、スケジューリングしない。
なお、トランザクションを予想TATリスト順にスケジューリングすることの利点はつぎのとおりである。後述のように、本実施の形態では、長時間トランザクションの終了予想時刻付近で、セパレートを優先するためにトランザクションがキャンセルされることがあるが、このような場合でも、トランザクションが予想TATリスト順にスケジューリングされていれば、キャンセルされるのは比較的予想TATの短いトランザクションである。そのため、キャンセルされたトランザクションの再実行コストを抑制することが可能である。
つづいてスケジューラ101は、スケジューリングされたトランザクションの合間に、セパレートをスケジューリングする、セパレートスケジューリング処理を行う。セパレートは、ボリュームごとに順番に実施されるようスケジューリングされる(A5)。スケジューラ101は、スケジューリングに際して、以下の4つの規則に従う。
1.長時間トランザクションの終了直後に、かつ、最後のセパレートとして、長時間トランザクションで使用しているボリュームをセパレートすること。すなわち、その他のボリュームのセパレートは、上記セパレートより前に完了するようにスケジューリングすること(図9)。
これにより、図18に示すような一般的な例に比べて、セパレート要求からセパレート完了までの時間を短縮することができる。例えば図9においては、本規則に従いVOL1を最後にセパレートしている。図18のようにVOL1を最初にセパレートし、その後VOL2〜VOL5を順にセパレートする場合に比べて、VOL2〜VOL5のセパレートに要する時間の分だけ、セパレート完了を早くすることができる。
2.セパレートは時間を空けずに連続して実行すること(図10)。
これにより、セパレート要求からセパレート開始までの時間(以降、区間ともいう)が最大化され、かつ、セパレート実施区間が最小になる。そのため、追加トランザクションを最大限スケジューリングできるようになり、スループットの低下を防止することができる。例えば図10においては、セパレートをVOL5から開始し、VOL4、VOL2、VOL3、VOL1と連続して実行することで、セパレート要求からセパレート開始までの区間(トランザクションをバックフィルできる区間)を最大化するとともに、セパレートを実施している区間(トランザクションの投入が制限されうる区間)を最小化している。
3.予想TAT順にトランザクションをスケジューリング(図13のA4)した結果、あるボリュームがセパレート要求時から長時間トランザクションの終了予想時刻までトランザクションにより占有され、セパレートを行うための静止点が取れなくなった場合は、そのボリュームを使用するトランザクションを後にずらし、そのボリュームのセパレートを実行するためのボリューム未使用区間を作ること(図11)。
これにより、セパレート要求からセパレートが完了するまでの期間が、図18の例よりも長くなることはない。例えば図11においては、VOL2のセパレートを実施するために、トランザクションGの実行タイミングを、セパレート完了後に移動させている。
4.トランザクションを後にずらす場合は、そのトランザクションが使用するボリュームが、全てセパレート前であるか、又は全てセパレート後であるようにすること(図11)。
これにより、DBやデータの整合性が保証される。例えば図11においては、トランザクションGはVOL1とVOL2を使用する。また、上記3.の規則に従い、トランザクションGの実行タイミングはVOL2のセパレート完了後に移動されている。このため、トランザクションGの実行タイミングが、VOL1とVOL2の両ボリュームのセパレートの完了後となるよう、スケジュールをさらに調整する。
上述の規則に加え、スケジューラ101は、トランザクションがスケジューリングされておらずいつでもセパレートできるボリューム群、すなわちセパレートのスケジュールに自由度のあるボリューム群については、ボリューム表120のI/O統計情報を参照し、使用率(BUSY率)の低い順にセパレートが動作するように、再度スケジューリングを調整する(A6)。例えば図12において、VOL4とVOL5はスケジュールに自由度がある。ボリューム表120のI/O統計情報よれば、VOL4の方が使用率が低い。そのため、スケジューラ101は、VOL4を先にセパレートするように、VOL4とVOL5のセパレート順序を入れ替えている。
なお、使用率(BUSY率)の低い順にセパレートが動作するようにスケジューリングすることの利点はつぎのとおりである。使用率(BUSY率)の高いボリュームは、今後投入されるトランザクションにて使用される可能性が高く、逆に、使用率の低いボリュームは使用される可能性が低い。そのため、使用される可能性が高いボリュームを後にセパレートすれば、今後投入されるトランザクションが実行できる確率を上げることができる。
図16に、使用率(BUSY率)に基づくスケジューリングを行わない例を示す。図16において、セパレート要求時に実行中のトランザクションはAとBであり、VOL3〜VOL5は未使用ボリュームである。このとき、VOL3〜VOL5のセパレートを、単にVOL3、VOL4、VOL5の番号順でスケジューリングした。すなわち、VOL3を最初にセパレートするようスケジューリングした。この後に、トランザクションZが投入される。トランザクションZはVOL3とVOL1を使用するトランザクションである。このとき、タスク3は空いておりトランザクションZを実行可能であるものの、VOL3のセパレートがスケジュールされているため、結局VOL1のセパレートが完了するまでの間、トランザクションZを実行できない。
一方、図17に、使用率(BUSY率)に基づくスケジューリングを行った例を示す。図17においては、図3のボリューム表120に従い使用率の低い順にセパレートを実施している。そのため、使用率の高いVOL1とVOL3のセパレートは、より遅い時間に、かつ両者が近接した時間に実施され、トランザクションZが実行できない区間が小さい。よって、タスク3は、トランザクションZが投入された直後に、トランザクションZを実行することができる。
つぎに、図14を参照して、ボリュームのセパレート時刻が到来した時の情報処理装置100の動作について説明する。
レプリケーション制御手段104は、スケジューラ101が作成したスケジュールに基づき、各ボリュームのセパレート予定時刻を監視し、セパレート予定時刻が到来したとき、セパレート対象のボリュームを使用しているトランザクションがあるかを判断する(B2)。
セパレート対象のボリュームを使用しているトランザクションがある場合、レプリケーション制御手段104は、対象ボリュームを使用しているトランザクションを1つ選択する(B3)。レプリケーション制御手段104は、選択したトランザクションが、セパレート要求時に実行中だったトランザクションか、追加トランザクションかを判断する(B4)。セパレート要求時に実行中だったトランザクションである場合、レプリケーション制御手段104は、当該トランザクションの完了を待ち合わせる(B6)。一方、追加トランザクションである場合、レプリケーション制御手段104は、まず、当該トランザクションの中断禁止属性を確認し(B5)、中断禁止属性が中断禁止である場合、当該トランザクションの完了を待ち合わせる(B6)。一方、中断禁止属性が中断可能である場合、当該トランザクションの実行をキャンセルし、後刻再実行を行うためにキューに戻す(B7)。レプリケーション制御手段104は、待ち合わせていたトランザクションが完了し、又はトランザクションをキャンセルしたならば、対象ボリュームを使用しているトランザクションが他にあるか判断する(B2)。対象ボリュームを使用しているトランザクションが他にある場合、レプリケーション制御手段104は、それらすべてのトランザクションについて、上述のB3〜B7の処理を繰り返す。
一方、セパレート対象のボリュームを使用しているトランザクションが他にない場合、レプリケーション制御手段104は、そのボリュームのセパレートを実行する(B8)。そして、ボリューム情報アクセス手段121を使用し、ボリューム表120のセパレート状態を結合から分離に更新する(B9)。
最後に、図15を参照して、新たなトランザクションがキューに入った場合の情報処理装置100の動作について説明する。
スケジューラ101は、タスクの空き状況を確認し、タスクがあいている場合、すなわち新たなトランザクションの割り付け先となるタスクが存在しない場合、さらに換言するならば、長時間トランザクションの終了予想時刻までの間において、新たなトランザクションの予想TATに相当する空き時間を有するタスクが存在しない場合は、タスクの空き状況の監視を継続し、タスクが空いた再に再度スケジューリングを試行する(C3)。
一方、タスクが空いている場合は、スケジューラ101は、新たなトランザクションが使用する全てのボリュームについて、セパレート前とセパレート後が混在しないようにスケジュール可能か確認する(C4)。スケジュールが不可能な場合、スケジューラ101は、新たなトランザクションが使用する全てのボリュームのセパレートが完了してから再度スケジューリングを行う(C5)。一方、スケジュールが可能な場合、スケジューラ101は、新たなトランザクションにかかるスケジューリングを実行する(C6)。
本実施の形態においては、スケジューラ101が、セパレート要求時に、実行中のトランザクションが全て終了する予想時刻を算出し、セパレート要求時からその予想時刻までの区間に、キューにある実行待ちトランザクションを予想TAT順にスケジューリングする。ここで使用するTATは、実行途中で中断可能なトランザクションについては平均TAT、中断ができないトランザクションについては最大TATである。これにより、情報処理装置100は、オンライン利用者のレスポンス低下の抑制と、資源の効率的な利用(スループットの低下の抑制)とを両立することができる。
また、本実施の形態においては、スケジューラ101が、セパレートをボリューム単位に連続してスケジューリングする。これにより、情報処理装置100は、見かけのセパレート時間を短縮でき、かつ、複数ボリュームを使用する追加トランザクションの割り付けを行い易くなり、オンライン利用者のレスポンス低下を抑制するとともに、資源を効率的に利用(スループットの低下を抑制)することができる。
また、本実施の形態においては、スケジューラ101が、セパレート開始からセパレート完了までのトランザクションが実行できない区間を最小とするために、長時間トランザクションが利用するボリュームのセパレートを長時間トランザクションの実行直後に実行し、その他のボリュームのセパレートは、前記ボリュームのセパレート以前の区間に、トランザクションの合間にスケジューリングする。これにより、情報処理装置100は、オンライン利用者のレスポンス低下を抑制するとともに、資源を効率的に利用(スループットの低下を抑制)することができる。
また、本実施の形態においては、スケジューラ101が、トランザクションがスケジューリングされておらずセパレートのスケジューリングに自由度があるボリューム群について、ボリュームの使用率(BUSY率)が低い順にセパレートを行うようにセパレートのスケジュールを調整する。これにより、情報処理装置100は、セパレート要求からセパレート完了までの間に新たにキューに登録されるトランザクションが、セパレート完了前に実行できる確率を高めることができ、オンライン利用者のレスポンス低下を抑制するとともに、資源を効率的に利用(スループットの低下を抑制)することができる。
<実施の形態2>
つぎに、図14を用いて、本発明の実施の形態2にかかる情報処理装置100の動作について説明する。
実施の形態2は、図14のB7における処理に特徴を有する。その他の構成要素については実施の形態1と同じである。
実施の形態1では、図14のB7に示すように、中断可能なトランザクションについては、セパレート時刻になった場合、即時キャンセルとしている。本実施の形態は、ここに時間的猶予を持たせるものである。すなわち、レプリケーション制御手段104は、セパレート時刻が到来した際、中断可能なトランザクションについてB7の処理を実行する前に、そのトランザクションの完了を所定の時間を限度として待ち合わせる。これにより、トランザクションの再実行コストを抑えることができる。
例えば、レプリケーション制御手段104は、B7の処理を、平均TATの1.2倍までは待ち合わせ、1.2倍を越えた時点でキャンセルすることができる。なお、本実施の形態は、時間的猶予を平均TATの1.2倍に限定するものではない。この時間的猶予は、さまざまな方法で設定可能である。例えば、αを任意の時間とし平均TAT+αまで待ち合わせる方法や、最大TATまで待ち合わせる方法、あるいは、平均TAT+標準偏差まで待ち合わせる方法などがある。
本実施の形態においては、レプリケーション制御手段104が、中断可能なトランザクションをキャンセルする前に、所定の時間だけトランザクションの終了の待ち合わせを行う。これにより、トランザクションの再実行コストを抑えることができ、資源を効率的に利用(スループットの低下を抑制)することができる。
<その他の実施の形態>
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
例えば、上述の実施の形態では、本発明を主にハードウェアにより構成されるものとして説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより論理的に実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
100 情報処理装置
11 リスト化手段
12 トランザクションスケジューリング手段
13 セパレートスケジューリング手段
101 スケジューラ
102 トランザクション実行手段
103 タスク
104 レプリケーション制御手段
105 通信管理手段
106 プログラム
110 キュー
111 キューアクセス手段
120 ボリューム表
121 ボリューム情報アクセス手段
122 I/O統計情報採取手段
130 トランザクション統計情報表
131 トランザクション統計情報アクセス手段
132 トランザクション実行時間統計情報採取手段
140 トランザクション定義情報表
141 トランザクション定義情報アクセス手段
200 ストレージ
201 ディスク装置制御手段
202 マスタボリューム
203 レプリカボリューム
300 端末
400 レプリケーション運用指示

Claims (10)

  1. ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングする装置であって、
    実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化手段と、
    前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリング手段と、
    前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリング手段とを有する
    情報処理装置。
  2. 前記セパレートスケジューリング手段は、
    前記長時間トランザクションが使用している前記ボリュームの前記セパレートを、前記長時間トランザクションの終了直後に、かつ他の前記ボリュームの前記セパレートよりも後に実施されるようスケジューリングする
    請求項1記載の情報処理装置。
  3. 前記セパレートスケジューリング手段は、
    前記ボリューム毎の前記セパレートが時間的に連続して実施されるようスケジューリングする
    請求項1又は2記載の情報処理装置。
  4. 前記セパレートスケジューリング手段は、
    前記トランザクションがスケジューリングされない前記ボリュームについては、I/O負荷の低い順に前記セパレートが実施されるようスケジューリングする
    請求項1乃至3いずれか1項記載の情報処理装置。
  5. 前記セパレートスケジューリング手段は、
    前記スケジューリングされた前記トランザクションの空き時間がなく、前記セパレートをスケジューリングできない場合は、所定の前記トランザクションの開始予定時刻を後にずらし、
    前記トランザクションの開始予定時刻を後にずらすときは、前記トランザクションが使用する前記ボリュームの全てが前記セパレートの前又は前記セパレートの後であるようにスケジューリングする
    請求項1乃至4いずれか1項記載の情報処理装置。
  6. 前記トランザクションの予想される実行所要時間として、
    中断可能な前記トランザクションについては過去の実行所要時間の平均値を、中断が禁止されたトランザクションについては過去の実行所要時間の最大値を使用する
    請求項1乃至5いずれか1項記載の情報処理装置。
  7. 前記セパレートの開始予定時刻において、実行中のトランザクションが存在する場合、
    当該トランザクションが中断可能なトランザクションである場合は当該トランザクションの実行をキャンセルし、当該トランザクションが中断が禁止されたトランザクションである場合は当該トランザクションの実行が完了するまで待機する
    請求項1乃至6いずれか1項記載の情報処理装置。
  8. 当該トランザクションが中断可能なトランザクションである場合は、当該トランザクションの実行完了を所定の時間まで待機し、前記所定の時間までに当該トランザクションの実行が完了しない場合は当該トランザクションの実行をキャンセルする
    請求項7記載の情報処理装置。
  9. ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングする方法であって、
    実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化ステップと、
    前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリングステップと、
    前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリングステップとを含む
    情報処理方法。
  10. コンピュータに、ストレージレプリケーションのセパレートと、前記ストレージのボリュームを利用するトランザクションとをスケジューリングさせるためのプログラムであって、
    実行待ちの前記トランザクションを、予想される実行所要時間順にリスト化するリスト化ステップと、
    前記トランザクションのうち予想される実行所要時間が最も長い長時間トランザクションの終了予想時刻までの時間に、前記トランザクションを前記リスト順にスケジューリングするトランザクションスケジューリングステップと、
    前記スケジューリングされた前記トランザクションの空き時間に、前記ボリューム毎に前記セパレートをスケジューリングするセパレートスケジューリングステップとを含む
    プログラム。
JP2012065267A 2012-03-22 2012-03-22 情報処理装置、情報処理方法及び情報処理プログラム Active JP5867215B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012065267A JP5867215B2 (ja) 2012-03-22 2012-03-22 情報処理装置、情報処理方法及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012065267A JP5867215B2 (ja) 2012-03-22 2012-03-22 情報処理装置、情報処理方法及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2013196576A true JP2013196576A (ja) 2013-09-30
JP5867215B2 JP5867215B2 (ja) 2016-02-24

Family

ID=49395386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012065267A Active JP5867215B2 (ja) 2012-03-22 2012-03-22 情報処理装置、情報処理方法及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP5867215B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7459573B2 (ja) 2020-03-09 2024-04-02 日本電気株式会社 制御装置、制御方法、及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314736A (ja) * 1995-05-23 1996-11-29 N T T Data Tsushin Kk バッチ処理の多重制御方式及び方法
JP2004192133A (ja) * 2002-12-09 2004-07-08 Nec Corp 複製ボリューム生成方法およびディスク装置
JP2006018796A (ja) * 2004-06-03 2006-01-19 Hitachi Ltd データ処理方法および装置並びにストレージ装置およびその処理プログラム
JP2007072847A (ja) * 2005-09-08 2007-03-22 Nec Corp 情報処理システムとセパレート隠蔽装置及びセパレート制御方法並びにプログラム
JP2007226587A (ja) * 2006-02-24 2007-09-06 Mitsubishi Electric Corp 計算機リソース動的制御装置、計算機リソース動的制御システム及び計算機リソース動的制御方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314736A (ja) * 1995-05-23 1996-11-29 N T T Data Tsushin Kk バッチ処理の多重制御方式及び方法
JP2004192133A (ja) * 2002-12-09 2004-07-08 Nec Corp 複製ボリューム生成方法およびディスク装置
JP2006018796A (ja) * 2004-06-03 2006-01-19 Hitachi Ltd データ処理方法および装置並びにストレージ装置およびその処理プログラム
JP2007072847A (ja) * 2005-09-08 2007-03-22 Nec Corp 情報処理システムとセパレート隠蔽装置及びセパレート制御方法並びにプログラム
JP2007226587A (ja) * 2006-02-24 2007-09-06 Mitsubishi Electric Corp 計算機リソース動的制御装置、計算機リソース動的制御システム及び計算機リソース動的制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7459573B2 (ja) 2020-03-09 2024-04-02 日本電気株式会社 制御装置、制御方法、及びプログラム

Also Published As

Publication number Publication date
JP5867215B2 (ja) 2016-02-24

Similar Documents

Publication Publication Date Title
US8458712B2 (en) System and method for multi-level preemption scheduling in high performance processing
CA3168286A1 (en) Data flow processing method and system
EP2851799B1 (en) Fault tolerant batch processing
US10331479B2 (en) Computing on transient resources
JP4935595B2 (ja) ジョブ管理方法、ジョブ管理装置およびジョブ管理プログラム
CN109814998A (zh) 一种多进程任务调度的方法及装置
Wang et al. Pigeon: An effective distributed, hierarchical datacenter job scheduler
JP4992408B2 (ja) ジョブ割当プログラム、方法及び装置
CN113886089B (zh) 一种任务处理方法、装置、系统、设备及介质
CN107515781B (zh) 一种基于多处理器的确定性任务调度及负载均衡系统
US20100251248A1 (en) Job processing method, computer-readable recording medium having stored job processing program and job processing system
CN112114973A (zh) 一种数据处理方法及装置
JPH0816410A (ja) スケジュール制御装置とその方法
JP2011180894A (ja) ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
Ungureanu et al. Kubernetes cluster optimization using hybrid shared-state scheduling framework
CN109298897A (zh) 一种采用资源组的任务分发的系统和方法
US20190013998A1 (en) Determining statuses of computer modules
JP5867215B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP4733458B2 (ja) 検索システム及び検索方法
CN116954863A (zh) 数据库调度方法、装置、设备及存储介质
JP2015148909A (ja) 並列計算機システム、並列計算機システムの制御方法及び管理ノードの制御プログラム
GB2514585A (en) Task scheduler
JP4571090B2 (ja) スケジューラプログラム、サーバシステム、スケジューラ装置
CN115629854A (zh) 分布式任务调度方法、系统、电子设备和存储介质
CN115061811A (zh) 一种资源调度方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151221

R150 Certificate of patent or registration of utility model

Ref document number: 5867215

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150