JP5041805B2 - データストレージシステムのサービス品質コントローラ及びサービス品質方法 - Google Patents
データストレージシステムのサービス品質コントローラ及びサービス品質方法 Download PDFInfo
- Publication number
- JP5041805B2 JP5041805B2 JP2006509277A JP2006509277A JP5041805B2 JP 5041805 B2 JP5041805 B2 JP 5041805B2 JP 2006509277 A JP2006509277 A JP 2006509277A JP 2006509277 A JP2006509277 A JP 2006509277A JP 5041805 B2 JP5041805 B2 JP 5041805B2
- Authority
- JP
- Japan
- Prior art keywords
- target
- request
- requests
- queue
- waiting time
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
より詳細には、本発明は、サービス品質(QoS)についてのデータストレージシステムの制御に関する。
この米国出願の内容は、参照により本明細書に援用される。
技術の進歩といった要因により、コンピュータハードウェアのコストの削減、及び、デジタルデータの量を増加させるワールドワイドウェブの成長が、世界規模で起こっている。
例えば、企業、行政、及び家庭におけるコンピュータシステムは、テキスト形式及び他の文書形式のデータ、データベース、マルチメディアファイル、電子メール通信、ウェブページ、トランザクションレコード等を生成するのに使用される。
その結果、データストレージ要求は、非常に大きなものとなり、次第に増大している。
例えば、現代のデータセンタは、数十個の大きなアレイならびに数千個の論理ボリューム及びファイルシステムを含む場合がある。
このようなデータセンタは、大きな組織、さらには複数の組織のストレージ要求に役立つことができる。
SSPは、その顧客に利用可能とするストレージを自身のディスクアレイ上に割り当てる。
組織は、機器を購入し、適切な人材を雇うことによって内部で自身のストレージ要求を満たすことができると同時に、その別々の部門にストレージサービスを提供するためのSSPモデルに内部で従うこともできる。
しかしながら、これは、各顧客、キャッシュ空間、ディスク、バス、ネットワーク帯域幅等のストレージ資源、及び、ストレージコントローラのプロセスサイクルを得るために競争するSSPに独自の負荷を提供することから、SSPとの関連で困難になる可能性がある。
さらに、ストレージシステムは、通常、要求の発生元にかかわらず、すべての要求に対してベストエフォート型のサービスを提供するように設計される。
しかしながら、この技法は、追加された資源がシステムのコストを増加させるので、一般にコスト効率が良くない。
別の手法は、各仕事負荷に別々の物理資源(例えば、1つ又は複数の専用ディスクアレイ)を割り当てることである。
この技法は、追加される容量又は帯域幅を一般に任意の増加量で追加できない代わりに、仕事負荷の要件が変化すると、広範囲の再構成が必要とされる場合がある点で、柔軟性に欠ける傾向がある。
本発明が対象とするのはこの目的である。
本発明は、データストレージシステムのサービス品質コントローラ及び関連した方法である。
1態様では、本発明は、データストレージのサービス品質方法及びサービス品質装置を提供する。
複数のストレージシステムの仕事負荷のそれぞれについての要求に優先順位が付けられる。
これらの要求は、ストレージデバイスキューを目標キュー深度に維持するために、その優先順位に従ってストレージデバイスキューへ選択的に転送される。
この目標キュー深度は、要求の待ち時間値に応じて調整される。この待ち時間値は、各仕事負荷について要求の到着時刻と完了時刻との差に基づいて計算される。
仕事負荷の目標待ち時間は、その仕事負荷の要求レートに基づくことができる。
待ち時間を削減するために、仕事負荷の目標待ち時間がその計算された待ち時間値よりも小さい場合に、目標キュー深度を削減することができる。
スループットを増加させるために、各仕事負荷の目標待ち時間が、計算された各待ち時間値よりも大きい場合に、目標キュー深度を増加させることができる。
要求をデバイスキューに上記転送した結果として、デバイスキューは到達キュー深度を有する。
したがって、目標キュー深度値を増加させることは、到達キュー深度が目標キュー深度によって制限される場合に実行することができる。
要求は、スケジューリングされて、データストレージデバイスへ転送され、監視された待ち時間統計値は、各仕事負荷の許容可能な待ち時間統計値の範囲内に概ね維持される。
各要求の目標デッドラインに従って要求に優先順位を付けることによって、それら要求をスケジューリングすることができる。
データストレージデバイスにおいて目標キュー深度を維持するために、要求を転送することができる。
仕事負荷の許容可能な待ち時間統計値が、監視された待ち時間統計値よりも小さい場合に、目標キュー深度を削減することができる。
さらに、許容可能な各待ち時間統計値が、監視された各待ち時間統計値よりも大きい場合に、目標キュー深度を増加させることができる。
本発明は、データストレージシステムのサービス品質コントローラ及び関連した方法を提供する。
本発明は、ホストからの入出力(I/O)要求を途中で捕捉して、それらI/O要求をストレージデバイスへ転送すると同時に、それらI/O要求が転送されるレートを選択的に調節することによって、1つ又は複数のホストと1つ又は複数のストレージデバイスとの間の仮想化レベルを追加する。
各要求は、ストレージデバイスへの配信についてスケジューリングされると同時に、その完了が監視される。
完了した要求から得られた統計的な情報に基づいて、その後、各仕事負荷の所望の性能を維持しようとして、スケジューリングを変更することができる。
本発明は、一定の性能分離(performance isolation)を提供して、或る仕事負荷が経験する性能が他の仕事負荷の変動による影響をあまり受けず、性能目標が満たされることをより確実にする。
ストレージ資源間で複数の仕事負荷をバランスさせることによって、資源が効率的に利用される。
このシステム100は、容量計画器(capacity planner)102、サービス品質コントローラ104、及び1つ又は複数のハードディスクアレイ等のストレージデバイス(複数可)106を含む。
例えば、システムアドミニストレータがこの入力を提供することができる。
仕事負荷の仕様は、例えば、各仕事負荷によって必要とされる複数のストア(すなわち、仮想化されたストレージ空間)、及び、各仕事負荷によって必要とされる容量(すなわち、ストレージ空間の量)を含むことができる。
これに加えて、要求生成速度に基づく許容可能なI/O要求待ち時間等の仕事負荷の性能目標もシステム100に入力することができる。
容量計画器102は、デバイス106にストアを割り当てることによって、各仕事負荷のストレージをストレージデバイス106に割り当て、また、デバイス106が仕事負荷の集約した要求を満たすのに十分な容量及び帯域幅を確実に有するようにする。
この割り当ては、仕事負荷の変化する要件及びデバイス106の構成の変更を満たすように定期的に変更することができる。
容量計画器102は、容量計画ステップを実行するようにプログラミングされた汎用コンピュータシステムとして実施することができる。
容量計画器によって示されたデバイス106の物理構成は、例えば、システムアドミニストレータが実行することができる。
この米国特許出願の内容は、参照により本明細書に援用される。
この計画器102では、仕事負荷の下でのストレージデバイス106のオペレーションを解析すること、その解析に基づいて新たな設計を生成すること、及び、その新たな設計に既存のシステムを移行させることを含む一連のステップが、繰り返しループで実行される。
これらのタスクをプログラムとして繰り返すことによって、容量計画は、過剰供給されることなく、仕事負荷をサポートする容量計画に収束する。
この米国特許出願の内容は、参照により本明細書に援用される。
この計画器102では、複数のノードを有するデータ構造体が、コンピュータ可読メモリに記憶される。
それらのノードの少なくともいくつかは、各属性を有する物理的なデータストレージデバイス106に対応する。
仕事負荷によって使用される複数のデータストアは、それぞれ、入力として提供される容量要件や帯域幅要件等のデータストレージ要件を有する。
これらのデータストアは、再帰的に階層に割り当てられ、各ノードにおいて、ストアの要件が属性のいずれも上回らないことがチェックされる。
ストアが割り当てられている間、ストアによりよく適合するように階層を変更することができる。
どの属性にも違反しない可能な割り当てを、システムの目標に従って互いに比較することができる。
したがって、別の計画器を選択できることは明らかである。
さらに、この容量計画は、従来の手動による技法に従って実行することもできる。
各仕事負荷は、1つ又は複数のホスト108、及び/又は、1つ又は複数のホスト108で実行されているアプリケーションによって生成された一続きのI/O要求を含む。
例えば、特定の仕事負荷は、ホスト108のうちの単一のホストによって、又は、ホスト108のうちのいくつかで実行されている特定のアプリケーションによって生成された要求のすべてから成ることがある。
別の例として、ホスト又はアプリケーションによって生成された要求は、読み出し要求及び書き込み要求に分割することができる。
この場合、読み出し要求が或る仕事負荷を表し、書き込み要求が別の仕事負荷を表す。
これに応答して、コントローラ104は、ストレージデバイス106と通信して、それらの要求を完了する。
これに加えて、コントローラ104は、容量計画器102からストレージ割り当て情報を受け取ることもできる。
コントローラ104は、このストレージ割り当て情報を使用して、各要求が属する特定の仕事負荷を特定することができる。
コントローラ104が仕事負荷の性能目標を満たすのに使用可能でない場合、コントローラ104は、過負荷アラームを通信すること等によって、容量計画器102に信号で伝えることができる。
これが行われると、容量計画器102は、デバイス106にストアを再割り当てすること、デバイス106を、より多くの容量及び/又は帯域幅を有する他のデバイスと交換すること、又はデバイス106の個数又はデバイス106のコンポーネントの個数を増加させてデバイス106の全体の容量及び/又は帯域幅を増加させること等によって、適切な動作を取ることができる。
この1対の曲線の各曲線は、時間ウィンドウwの期間で平均化されて提供された要求レートの関数としての読み出し待ち時間及び書き込み待ち時間を指定する。
図2A及び図2Bは、仕事負荷の例示の性能要件を示している。
より具体的には、図2Aは、横軸に、毎秒のI/Oの個数による読み出し要求の発行レートを有し、縦軸に、ミリ秒による上限の最大待ち時間(期間wで平均されたもの)を有するグラフを示している。
待ち時間は、所与の要求を処理するのに必要とされる時間である。
この待ち時間は、コントローラ104がホスト108から要求を受信した時と、ストレージデバイス106がその要求を完了した時との間に経過した時間として計測することができる。
図2Aに示すように、読み出し要求レートが毎秒10個のI/O未満である場合、10msの最大待ち時間が認められる。
読み出し要求レートが毎秒10個のI/Oと20個のI/Oとの間である場合、15msの最大待ち時間が認められ、読み出し要求レートが毎秒20個のI/Oと30個のI/Oとの間である場合、20msの最大待ち時間が認められる。
これに加えて、読み出し要求レートが毎秒30個のI/Oと40個のI/Oとの間である場合、25msの最大待ち時間が認められる。
必要ではないが、I/O要求レートが毎秒40個のI/Oを超える場合、待ち時間に対して制限は与えられない。
図2Bに示すように、書き込み要求レートが毎秒10個のI/O未満である場合、20msの最大待ち時間が認められる。
書き込み要求レートが毎秒10個のI/Oと20個のI/Oとの間である場合、30msの最大遅延時間が認められ、書き込み要求レートが毎秒20個のI/Oと30個のI/Oとの間である場合、40msの最大待ち時間が認められる。
これに加えて、書き込み要求レートが毎秒30個のI/Oと40個のI/Oとの間である場合、50msの最大待ち時間が認められる。
図2Aと同様に、I/O要求レートが毎秒40個のI/Oを超える場合、待ち時間に対して制限は与えられない。
読み出し要求についての図2Aに示す性能要件と書き込み要求についての図2Bに示す性能要件とは異なるが、同じ要件が双方に適用される場合があることは明らかであろう。
さらに、待ち時間の制限をより少なく指定することもできるし、より多く指定することもできる。
例えば、図3は、毎秒40個のI/O未満のすべての要求レートに対して、20msの単一の待ち時間制限が適用されるグラフを示している。
ここで、0<r1<…<rnであり、rは要求レートであり、trは読み出し要求の最大待ち時間であり、twは書き込み要求の最大待ち時間である。
rnを超える要求レートについての待ち時間には制限が与えられないので、これは、trn+1=twn+1=∞として表すことができる。
したがって、図2Aの曲線及び図2Bの曲線は、((10IO/s,10ms,20ms),(20IO/s,15ms,30ms),(30IO/s,20ms,40ms),(40IO/s,25ms,50ms))として表すことができる。
各ウィンドウwは、約1秒程度の長さとすることができるが、別のウィンドウの長さを選択することもできる。
したがって、最大待ち時間を超えるかどうかを判断するために、計測された待ち時間は、wの期間にわたって平均化される。
したがって、全I/O要求のうち読み出し要求の割合がfrである仕事負荷が性能要件を満たすには、どの時間ウィンドウwiの平均待ち時間も、前のウィンドウwにわたる平均要求レートがriよりも小さい場合に、fr*tri+(1−fr)twiを超えるべきではない。
この公式は、仕事負荷が読み出しのみである場合には待ち時間の限度がtriであることを意味し、仕事負荷が書き込みのみである場合には待ち時間の限度がtwiであることを意味し、仕事負荷が読み出し/書き込みの混合したものである場合には待ち時間の限度が2つの限度を線形補間したものであることを意味する。
しかしながら、計測された待ち時間をこのように組み合わせる必要はない。
特に、仕事負荷が、観測された読み出し待ち時間又は観測された書き込み待ち時間によって支配される場合には、例えば、要求の調節は、その一方又は他方のみに基づくことができる。
また、待ち時間の目標が読み出し要求及び書き込み要求について同じである場合、それぞれについて観測された待ち時間を区別する必要もない。
例えば、待ち時間は、I/Oサイズの関数又はI/Oサイズの組み合わせとして、且つ、要求が読み出しであるのか、それとも書き込みであるのかで指定することができる。
この関数は、数学関数とすることもできるし、この場合のように、テーブルによって指定することもできる。
読み出し及び書き込みの性能目標は、ここでは、単一の目的関数に組み合わされるが、それら性能目標は別々にしておくこともできる。
例えば、仕事負荷からの読み出し要求及び書き込み要求は、別々の入力キューに入れることができ、別々の待ち時間の限度を各キューに関連付けることができる。
同様に、他の基準に基づいて、要求を別々の入力キューに分離することもできる。
例えば、性能目標が、小さなI/O(例えば、64KB未満)及び大きなI/O(例えば、64KB以上)について別々の待ち時間関数を指定する場合、大きなI/O要求及び小さなI/O要求を別々の入力キューに分離することができ、対応する性能要件をそれらI/O要求に別々に適用することができ、それによって、それらI/O要求を別々の仕事負荷として扱うことができる。
コントローラ104は、入力キュー110、I/Oスケジューラ112、I/Oモニタ114、及びI/Oコントローラ116を含む。
キュー110は、バッファとして構成されたメモリデバイスによって実施することができる一方、スケジューラ112、モニタ114、及びコントローラ116は、汎用若しくは専用のハードウェア及び/又はソフトウェアによって実施することができる。
QoSコントローラ104がない場合、要求は、ホスト108からデバイスキュー118へ直接非知的に配信される。
デバイスキュー118からの要求の削除及びデバイスキュー118内での要求のソートは、デバイス106の制御下で行うことができ、したがって、デバイスキュー118は、QoSコントローラ104から独立して動作する。
例えば、一般のストレージデバイス(デバイス106で使用できる)は、デバイスキュー118の要求の中でそれら要求をソートするための、デバイスの製造者に独自の方式を実施することができる。
したがって、本発明は、商用のストレージデバイスと互換性を有する。
一方、QoSコントローラ104は、デバイスキュー118への要求の流れを制御する。
入力キュー110では、各仕事負荷からの要求は、好ましくは、キュー100のうちの特定の1つに割り当てられる。
I/Oモニタ114及びI/Oコントローラ116からの繰り返される入力に基づいて、スケジューラ112は、デバイスキュー118の目標のキュー深度値、及び、スケジューラ112が維持しようと試みる仕事負荷ごとの待ち時間目標値を保持する。
これは、アーリストデッドラインファースト(EDF(earliest deadline first))スケジューリングを使用して行うことができる。
このEDFスケジューリングでは、仕事負荷Wkからの要求のデッドラインは、その要求の到着時刻arrivalTime(Wk)に、その仕事負荷の待ち時間目標値latencyTarget(Wk)を加えたものとして計算される。
したがって、仕事負荷Wkからの要求のデッドラインは、arrivalTime(Wk)+latencyTarget(Wk)として計算することができる。
この仕事負荷のデッドラインは、その仕事負荷における最も古い保留中の要求と同じであると考えられる。
代替的に、例えば、デバイス106がデバイスキュー118の深度の報告をサポートしていない場合に、スケジューラ112は、モニタ114からのI/O要求の到着及び完了の情報に基づいて現在のデバイスキュー深度を計算することもできる。
好ましくは、キュー深度は、定期的に(例えば、1msごとに)ポーリングされ、また、I/O要求の完了時にもポーリングされる。
仕事負荷からの要求は、指定された状況下でデバイスキュー118へ転送される。
すなわち、デバイスキュー118の現在の深度がI/Oコントローラ116によって指定された目標値よりも小さい場合に、要求をデバイスキュー118へ転送することができる。
この場合、スケジューラ112は、最も早いデッドラインを有する仕事負荷を選択して、その対応するキュー110の最初の要求(すなわち、最も早いデッドラインを有する要求)をデバイスキュー118へ転送する。
スケジューラ112は、デバイスキュー118の現在の深度が目標深度に達するまで、次の最も早いデッドラインを有する仕事負荷を選択するステップ、及び、その仕事負荷の最初の要求をデバイスキュー118へ転送するステップを繰り返す。
このように、デバイスキュー118をその目標深度に維持するために、要求は、入力キュー110において優先順位付けされて、要求のうち最も高い優先順位の要求がデバイスキュー118へ転送される。
また、要求のデッドラインがすでに経過している時も、その要求をデバイスキュー118へ転送することができる。
期限が経過したすべての要求は、たとえ、この要求をデバイスキュー118へ転送することによって、デバイスキュー118の深度がその目標深度を超えさせることになっても、デバイスキュー118へ転送されることが好ましい。
これによって、新たに到着した、小さな待ち時間要件を有する仕事負荷の要求に直ちに対応することができる。
より具体的には、モニタ114は、各仕事負荷についての新たな読み出し要求及び書き込み要求の、QoSコントローラ104への到着レートを監視することができ、また、この情報をI/Oコントローラ116へ報告することもできる。
性能目標が要求レートに基づいて最大待ち時間を指定できることを思い出されたい。
したがって、各仕事負荷の目標待ち時間は、その時点の要求レートに基づいて定期的に求めることができる。
より具体的には、性能目標が((r1,tr1,tw1),(r2,tr2,tw2),…,(rn,trn,twn))として与えられる場合、読み出し要求及び書き込み要求を含む仕事負荷Wkの待ち時間目標値は、次のように計算することができる。
latencyTarget(Wk) = fr*tri+(1−fr)twi,if ri−1?readRate(Wk)+writeRate(Wk)<ri
ここで、readRate(Wk)は仕事負荷Wkの読み出し要求レートであり、writeRate(Wk)は仕事負荷Wkの書き込み要求レートであり、r0=0、rn+1=∞、trn+1=twn+1=∞である。
目標値は、好ましくは、P=0.05秒ごとに定期的に求められて報告される。
ただし、別の期間Pを選択できることは明らかである。
これに加えて、モニタ114は、デバイス106によって報告された各要求の完了時刻も監視する。
モニタ114は、これから、各要求の待ち時間及び各仕事負荷の(wの期間にわたる)平均待ち時間を計算することができる。
この平均待ち時間は、次に、コントローラ116に報告される。
待ち時間の平均値は、好ましくは、P=0.05秒ごとに定期的に計算されて報告される。
ただし、別の期間を選択できることは明らかである。
この制御は、デバイスキュー118の深度を削減すると、デバイス106における待ち時間が削減されることにつながるが、スループットも削減されることにつながるという仮定に基づいている。
逆に言えば、デバイスキュー118の深度を増加させると、待ち時間が増加することにつながり、スループットも増加することにつながる。
この仮定は、ほとんどのディスク及びディスクアレイに当てはまると予想される。
これは、デバイスキュー118に多くの要求を有すると、デバイス106の利用が改善され、したがって、スループットが最大になるからである。
しかしながら、デバイスキュー118にあまりにも多くの要求を有すると、待ち時間が許容できないものとなるおそれがある。
例えば、仕事負荷が小さな待ち時間を要求する場合、デバイスキュー118に多くの要求を有することは、仕事負荷からの次の要求が、キュー118の他の多くの未処理の要求と競合することを意味し、したがって、その要求は、キュー118が有する未処理の要求が少ない場合よりも遅く(大きな待ち時間で)完了することを意味する。
このように、デバイスキュー118をその目標深度に維持することは、待ち時間が過大になることなく、ストレージデバイス106の利用を最大にすることにつながる。
目標キュー深度は、このバランスを維持するように調整される。
いずれかの仕事負荷が、その前の計測された待ち時間よりも小さな新しい目標待ち時間を有すると、そのデバイスキュー118の目標深度は削減される。
目標深度の削減量は、好ましくは、各仕事負荷についての目標待ち時間と計測された待ち時間との差の中で最大の差に比例する。
例えば、2つの仕事負荷W1及びW2を有するシステムにおいて、仕事負荷W1の新たな目標待ち時間が、その計測された値よりも10%小さく、且つ、仕事負荷W2の新たな目標待ち時間が、その計測された目標値よりも5%小さい場合、デバイスキュー118の目標深度は、好ましくは、デバイスキュー118の前の目標深度から10%だけ削減される。
しかしながら、デバイスキュー118の目標値の削減は、別の方法で求めることもできることは明らかである。
例えば、削減量は、仕事負荷の2つ又は3つ以上についての目標値と計測された値との差から統計的に(例えば、平均化することによって)求めることができる。
逆に言えば、新たな目標待ち時間のすべてが、仕事負荷のすべてについて計測された待ち時間よりも長い場合、デバイスキュー118の目標深度は、より大きなスループットを可能にさせるために増加させることができる。
例えば、目標深度は、所定の乗数によって増加させることができる。
例えば、乗数が0.1である場合、目標深度は、その前の値の110%に増加される。
ただし、別の乗数を選択することもできる。
デバイスキュー118の目標深度を増加させると、実際の到達キュー深度がその目標深度によって制限された場合にのみ、スループットが増加すると予想される。
したがって、目標深度を増加させるかどうかは、到達キュー深度が目標深度によって制限されたかどうかに基づいて決定することができる。
これらの条件のいずれも当てはまらない場合には、デバイスキュー118の目標深度は変更しないでおくことができる。
形式的に、上述したフィードバック方式は、以下によって表すことができる。
最初に、目標キュー深度は、初期値(例えば、200エントリー)に設定される。
本発明は、一定の性能分離を提供して、或る仕事負荷が経験する性能が他の仕事負荷の変動による影響をあまり受けず、性能目標が満たされることをより確実にする。
ストレージ資源間で複数の仕事負荷をバランスさせることによって、資源が効率的に利用される。
本発明の範囲は、添付の特許請求の範囲によって画定される。
104・・・QoSコントローラ,
106・・・ストレージ,
108・・・ホスト,
110・・・入力キュー,
112・・・I/Oスケジューラ,
114・・・I/Oモニタ,
116・・・I/Oコントローラ,
Claims (27)
- データストレージのサービス品質制御方法であって、
QoSコントローラ(104)が、複数のワークロードのそれぞれについての複数の要求を、外部から受け入れて、受け入れた要求それぞれに優先順位を付けることと、
QoSコントローラ(104)が、前記複数の要求から、前記優先順位が高い順に選択して、前記データストレージのキュー(118)へ、前記選択した順に要求を転送することと、
QoSコントローラ(104)が、前記キューが保持する要求の数を、保持できる要求の目標数を示す目標キュー深度に維持することと、
ストレージデバイス(106)が、前記要求に応じた処理が完了した場合に、この要求を前記キューから削除することと、
QoSコントローラ(104)が、前記要求それぞれに応じた処理に要する待ち時間の目標値を示し、予め定められた期間に受け入れる要求の数を示す要求レートに応じて定められる各目標待ち時間と、前記要求それぞれに応じた処理に要する各待ち時間値とに基づいて、前記目標キュー深度を調整することと
を含み、
前記各待ち時間値は、前記QoSコントローラが前記要求を外部から受け入れた受入時間と、前記受け入れた要求に応じた前記データストレージにおける処理が完了した完了時間との差に基づいて、前記QoSコントローラにより計算され、
前記目標待ち時間それぞれは、この目標待ち時間が定められる時点の要求レートに対応する予め定められた読み出し要求の最大待ち時間と、この目標待ち時間が定められる時点の要求レートに対応する予め定められた書き込み要求の最大待ち時間と、全要求に対する読み込み要求の割合と、全要求に対する書き込み要求の割合とに基づいて、前記QoSコントローラにより、予め定められた間隔で定期的に定められる
方法。 - 前記優先順位を付けることは、
要求に応じた処理が完了する時間の目標値を示す目標デッドラインを計算すること
を含む請求項1に記載の方法。 - 前記QoSコントローラが、前記目標デッドラインを経過した要求を、前記キューに転送すること
をさらに含む請求項2に記載の方法。 - 前記QoSコントローラが、前記要求の受入時間をモニタすること
をさらに含む請求項2に記載の方法。 - 前記要求の前記目標デッドラインを前記計算することは、
前記目標待ち時間と、前記要求の前記受入時間とに基づいて計算すること
を含む
請求項4に記載の方法。 - 前記ワークロードの要求レートをモニタすること
をさらに含む請求項5に記載の方法。 - 前記キューは、
ストレージデバイスの中に含まれるデバイスキュー(118)である
請求項1に記載の方法。 - 前記QoSコントローラが、前記デバイスキュー(118)への前記要求の転送に先立って、前記要求それぞれを、対応する入力キュー(110)に割り当てる
請求項7に記載の方法。 - 前記計算された待ち時間値は、目標待ち時間を有するワークロード用であり、
前記目標キュー深度を前記調整することは、
前記ワークロードの前記目標待ち時間が前記計算された待ち時間値よりも短いときに、前記目標キュー深度を削減すること
を含む
請求項1に記載の方法。 - 前記QoSコントローラが、前記目標待ち時間と、前記計算された待ち時間との比較値に基づいて、前記目標キュー深度を、比例的に削減する
請求項9に記載の方法。 - 前記計算された待ち時間値は、目標待ち時間を有するワークロード用であり、
ワークロードそれぞれは、
目標待ち時間及び計算された待ち時間値
を有し、
前記目標キュー深度値を前記調整することは、
目標待ち時間それぞれが計算された待ち時間値それぞれよりも長いときに、前記目標キュー深度を増加させること
を含む請求項1に記載の方法。 - 前記要求をキューに転送することの結果として、前記デバイスキューは、前記転送された要求の数を示す到達キュー深度を有し、
前記到達キュー深度が、前記目標キュー深度により制限されるときにのみ、 前記QoSコントローラが、前記目標キュー深度の値を増加させること
をさらに含む請求項7に記載の方法。 - 前記目標キュー深度の値を増加させることは、所定の乗数により前記目標キュー深度を増加させる
請求項12に記載の方法。 - ストレージシステムのサービス品質制御装置であって、
複数のワークロードから要求を受け取る複数の入力キューであって、ワークロードそれぞれは、対応する前記入力キューに割り当てられ、入力キューそれぞれの要求は優先順位が付けられる複数の入力キューと、
ワークロードそれぞれの要求の性能値をモニタするモニタと、
前記入力キューから優先順位の高い順に前記要求を選択して、ストレージデバイスキューへ、前記選択した順に要求を転送するスケジューラであって、前記ストレージデバイスキューが保持する要求の数を、保持できる要求の目標数を示す目標キュー深度に維持するスケジューラと、
前記要求それぞれに応じた処理に要する待ち時間の目標値を示し、予め定められた期間に受け入れる前記要求の数を示す要求レートに応じて定められる各目標待ち時間と、ワークロードそれぞれの前記要求の前記性能値とに基づいて、前記ストレージデバイスキューの前記目標キュー深度を調整するコントローラと
を有し、
前記目標待ち時間それぞれは、この目標待ち時間が定められる時点の要求レートに対応する予め定められた読み出し要求の最大待ち時間と、この目標待ち時間が定められる時点の要求レートに対応する予め定められた書き込み要求の最大待ち時間と、全要求に対する読み込み要求の割合と、全要求に対する書き込み要求の割合とに基づいて、前記QoSコントローラにより、予め定められた間隔で定期的に定められる
装置。 - 前記キューそれぞれの中の前記要求は、要求それぞれに割り当てられた、要求に応じた処理が完了する時間の目標値を示す目標デッドラインに従って優先順位が付けられる
請求項14に記載の装置。 - 要求それぞれの目標デッドラインは、前記要求の受入時間と、この要求の前記目標待ち時間とから決められる
請求項15に記載の装置。 - 前記モニタは、前記要求レートをモニタする
請求項14に記載の装置。 - ワークロードそれぞれの要求への前記性能値は、
前記各要求に応じた処理に要する待ち時間値
を含む
請求項14に記載の装置。 - 前記コントローラは、前記要求それぞれに対する前記目標待ち時間が、いずれの要求に対する待ち時間値よりも短いときに、前記目標キュー深度を削減する
請求項18に記載の装置。 - 前記目標待ち時間と、前記要求に対する待ち時間値との比較値に基づいて、前記計算された待ち時間との比較値に基づいて、前記目標キュー深度が、比例的に削減される
請求項19に記載の装置。 - 前記コントローラは、前記要求それぞれに対する目標待ち時間それぞれが、対応する待ち時間値よりも長いときに、前記目標キュー深度を増加させる
請求項18に記載の装置。 - 前記ストレージデバイスキューは、
到達キュー深度
を有し、
前記コントローラは、前記目標キュー深度により前記到達キュー深度が制限されるときにのみ、前記目標キュー深度値を増加させる
請求項18に記載の装置。 - 前記目標キュー深度は、所定の乗数により増加される
請求項22に記載の装置。 - 前記ワークロードそれぞれは、
1つ以上の対応するデータ記憶
を有し、
記憶領域に前記データ記憶を割り当てるキャパシティプランナー
をさらに有する請求項22に記載の装置。 - 機械により読み取り可能なプログラムストレージデバイスであって、
ストレージシステムの複数のワークロードそれぞれについての複数の要求を、外部から受け入れて、受け入れた要求それぞれに優先順位を付けるステップと、
前記複数の要求から、前記優先順位が高い順に選択して、前記ストレージシステムのキュー(118)へ、前記選択した順に前記要求をキューイングするステップであって、キューイングする要求の数を、保持できる要求の目標数を示す目標キュー深度に維持するステップと、
前記要求それぞれに応じた処理に要する待ち時間の目標値を示す各目標待ち時間と、前記要求それぞれに応じた処理に要する各待ち時間値に応じて、前記目標キュー深度を調整するステップと
を含む方法のステップを、前記機械により実行させるプログラムを記憶し、
前記待ち時間値は、前記要求を外部から受け入れた受入時間と、前記受け入れた要求に応じた処理が完了した完了時間との間の差に基づいて計算され、
前記目標待ち時間それぞれは、この目標待ち時間が定められる時点の要求レートに対応する予め定められた読み出し要求の最大待ち時間と、この目標待ち時間が定められる時点の要求レートに対応する予め定められた書き込み要求の最大待ち時間と、全要求に対する読み込み要求の割合と、全要求に対する書き込み要求の割合とに基づいて、前記QoSコントローラにより、予め定められた間隔で定期的に定められる
プログラムストレージデバイス。 - 前記優先順位付けは、前記要求の受入時間と、前記目標待ち時間から決められ、要求それぞれに割り当てられる、要求に応じた処理が完了する時間の目標値を示す目標デッドラインに従って実行される
請求項26に記載のプログラムストレージデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/400,556 US7917903B2 (en) | 2003-03-27 | 2003-03-27 | Quality of service controller and method for a data storage system |
US10/400,556 | 2003-03-27 | ||
PCT/US2004/009119 WO2004088547A2 (en) | 2003-03-27 | 2004-03-25 | Quality of service controller and method for a data storage system |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006521640A JP2006521640A (ja) | 2006-09-21 |
JP2006521640A5 JP2006521640A5 (ja) | 2007-01-11 |
JP5041805B2 true JP5041805B2 (ja) | 2012-10-03 |
Family
ID=32989240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006509277A Expired - Fee Related JP5041805B2 (ja) | 2003-03-27 | 2004-03-25 | データストレージシステムのサービス品質コントローラ及びサービス品質方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7917903B2 (ja) |
JP (1) | JP5041805B2 (ja) |
WO (1) | WO2004088547A2 (ja) |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7643983B2 (en) * | 2003-03-28 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Data storage system emulation |
US7058764B2 (en) * | 2003-04-14 | 2006-06-06 | Hewlett-Packard Development Company, L.P. | Method of adaptive cache partitioning to increase host I/O performance |
US8423662B1 (en) * | 2003-04-28 | 2013-04-16 | Akamai Technologies, Inc. | Forward request queuing in a distributed edge processing environment |
US20060161753A1 (en) * | 2005-01-18 | 2006-07-20 | Aschoff John G | Method, apparatus and program storage device for providing automatic performance optimization of virtualized storage allocation within a virtualized storage subsystem |
US7363399B2 (en) * | 2005-08-17 | 2008-04-22 | International Business Machines Corporation | Method, apparatus and computer program product providing storage network dynamic tuning of I/O flow with Queue Depth |
US20070156955A1 (en) * | 2005-12-30 | 2007-07-05 | Royer Robert J Jr | Method and apparatus for queuing disk drive access requests |
US20070189509A1 (en) * | 2006-02-13 | 2007-08-16 | Foody Daniel M | Data path identification and analysis for distributed applications |
US20070233449A1 (en) * | 2006-03-31 | 2007-10-04 | Microsoft Corporation | Simulation of hierarchical storage systems |
US8073671B2 (en) * | 2006-03-31 | 2011-12-06 | Microsoft Corporation | Dynamic software performance models |
US7792129B2 (en) | 2006-12-01 | 2010-09-07 | International Business Machines Corporation | Multi-queue packet processing using Patricia tree |
US7870335B2 (en) * | 2007-06-26 | 2011-01-11 | Seagate Technology Llc | Host adaptive seek technique environment |
US7797487B2 (en) * | 2007-06-26 | 2010-09-14 | Seagate Technology Llc | Command queue loading |
US8250197B2 (en) * | 2008-10-28 | 2012-08-21 | Vmware, Inc. | Quality of service management |
US7912951B2 (en) * | 2008-10-28 | 2011-03-22 | Vmware, Inc. | Quality of service management |
US8024498B2 (en) | 2008-12-15 | 2011-09-20 | International Business Machines Corporation | Transitions between ordered and ad hoc I/O request queueing |
US9323473B2 (en) | 2009-01-09 | 2016-04-26 | Hewlett Packard Enterprise Development Lp | Virtual tape library |
US8135924B2 (en) | 2009-01-14 | 2012-03-13 | International Business Machines Corporation | Data storage device driver |
JP5402226B2 (ja) | 2009-05-13 | 2014-01-29 | 富士通株式会社 | 管理装置、情報処理システム、情報処理システムの制御プログラムおよび情報処理システムの制御方法 |
US8341314B2 (en) * | 2009-06-30 | 2012-12-25 | Hewlett-Packard Development Company, L.P. | Managing I/O request in storage system |
GB2473505B (en) * | 2009-09-15 | 2016-09-14 | Advanced Risc Mach Ltd | A data processing apparatus and a method for setting priority levels for transactions |
US8893146B2 (en) * | 2009-11-13 | 2014-11-18 | Hewlett-Packard Development Company, L.P. | Method and system of an I/O stack for controlling flows of workload specific I/O requests |
US9262346B2 (en) * | 2010-06-21 | 2016-02-16 | Hewlett Packard Enterprises Development LP | Prioritizing input/outputs at a host bus adapter |
US8719401B1 (en) * | 2010-07-12 | 2014-05-06 | Vmware, Inc. | Decentralized input/output resource management |
US8417812B1 (en) | 2010-07-12 | 2013-04-09 | Vmware, Inc. | Methods and systems for detecting anomalies during IO accesses |
US8468524B2 (en) * | 2010-10-13 | 2013-06-18 | Lsi Corporation | Inter-virtual machine time profiling of I/O transactions |
RU2533173C1 (ru) | 2010-11-08 | 2014-11-20 | Нек Корпорейшн | Устройство обработки информации |
CN102724103B (zh) * | 2011-03-30 | 2015-04-01 | 国际商业机器公司 | 代理服务器、分层次网络***及分布式工作负载管理方法 |
WO2012170025A1 (en) * | 2011-06-09 | 2012-12-13 | Hewlett-Packard Development Company, L.P. | Regulating power consumption of a mass storage system |
US10877669B1 (en) * | 2011-06-30 | 2020-12-29 | Amazon Technologies, Inc. | System and method for providing a committed throughput level in a data store |
US8909764B2 (en) | 2011-07-28 | 2014-12-09 | Xyratex Technology Limited | Data communication method and apparatus |
WO2013070800A1 (en) * | 2011-11-07 | 2013-05-16 | Nexgen Storage, Inc. | Primary data storage system with quality of service |
US8452901B1 (en) | 2011-12-30 | 2013-05-28 | Emc Corporation | Ordered kernel queue for multipathing events |
US8788658B2 (en) | 2012-02-03 | 2014-07-22 | International Business Machines Corporation | Allocation and balancing of storage resources |
US9244742B2 (en) * | 2012-05-31 | 2016-01-26 | Vmware, Inc. | Distributed demand-based storage quality of service management using resource pooling |
US9292205B2 (en) * | 2012-06-14 | 2016-03-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Methods and systems for adaptive queue depth management |
US9130969B2 (en) | 2012-08-23 | 2015-09-08 | Seagate Technology Llc | Data storage I/O communication method and apparatus |
US9647916B2 (en) * | 2012-10-27 | 2017-05-09 | Arris Enterprises, Inc. | Computing and reporting latency in priority queues |
US9684633B2 (en) | 2013-01-24 | 2017-06-20 | Samsung Electronics Co., Ltd. | Adaptive service controller, system on chip and method of controlling the same |
US9081741B2 (en) | 2013-05-21 | 2015-07-14 | International Business Machines Corporation | Minimizing delay periods when accessing mirrored disks |
US9317382B2 (en) | 2013-05-21 | 2016-04-19 | International Business Machines Corporation | Storage device with error recovery indication |
US10083465B2 (en) * | 2013-09-06 | 2018-09-25 | Facebook, Inc. | Allocating information for content selection among computing resources of an online system |
GB2519294A (en) | 2013-10-15 | 2015-04-22 | Ibm | Storage controller quality of service |
US9699032B2 (en) * | 2013-10-29 | 2017-07-04 | Virtual Instruments Corporation | Storage area network queue depth profiler |
US9465645B1 (en) * | 2014-06-25 | 2016-10-11 | Amazon Technologies, Inc. | Managing backlogged tasks |
US9298518B2 (en) * | 2014-07-09 | 2016-03-29 | International Business Machine Corporation | Safe consolidation and migration |
US10866742B1 (en) * | 2014-08-04 | 2020-12-15 | Nexgen Storage, Inc. | Archiving storage volume snapshots |
US9521089B2 (en) | 2014-08-30 | 2016-12-13 | International Business Machines Corporation | Multi-layer QoS management in a distributed computing environment |
US10366358B1 (en) | 2014-12-19 | 2019-07-30 | Amazon Technologies, Inc. | Backlogged computing work exchange |
WO2016132428A1 (ja) * | 2015-02-16 | 2016-08-25 | 株式会社日立製作所 | ストレージ装置 |
JP2016184310A (ja) | 2015-03-26 | 2016-10-20 | 富士通株式会社 | 情報処理システム、制御装置および情報処理システムの制御方法 |
US9760281B2 (en) * | 2015-03-27 | 2017-09-12 | Intel Corporation | Sequential write stream management |
US9575664B2 (en) * | 2015-04-08 | 2017-02-21 | Prophetstor Data Services, Inc. | Workload-aware I/O scheduler in software-defined hybrid storage system |
US10235104B1 (en) * | 2015-09-30 | 2019-03-19 | EMC IP Holding Company LLC | IO request system and method |
DE202015105354U1 (de) | 2015-10-09 | 2017-01-11 | J.G. Hambrock | Zahnbürste |
US10785295B2 (en) * | 2016-06-30 | 2020-09-22 | Intel Corporation | Fabric encapsulated resilient storage |
US11886922B2 (en) | 2016-09-07 | 2024-01-30 | Pure Storage, Inc. | Scheduling input/output operations for a storage system |
US10735513B2 (en) | 2016-09-08 | 2020-08-04 | Toshiba Memory Corporation | Remote NVMe activation |
US10298442B2 (en) | 2016-09-27 | 2019-05-21 | International Business Machines Corporation | Error recovery process |
US10503544B2 (en) * | 2016-10-17 | 2019-12-10 | Toyota Jidosha Kabushiki Kaisha | Efficient mapping from task graphs to dynamic system platforms |
CN108009006B (zh) * | 2016-11-02 | 2022-02-18 | 华为技术有限公司 | I/o请求的调度方法及装置 |
CN110073321B (zh) | 2016-12-29 | 2020-05-08 | 华为技术有限公司 | 一种存储控制器及io请求处理方法 |
CN109799956B (zh) | 2017-01-05 | 2023-11-17 | 华为技术有限公司 | 一种存储控制器及io请求处理方法 |
US10732895B2 (en) * | 2017-03-22 | 2020-08-04 | Burlywood, Inc. | Drive-level internal quality of service |
US10592123B1 (en) * | 2017-07-13 | 2020-03-17 | EMC IP Holding Company LLC | Policy driven IO scheduler to improve write IO performance in hybrid storage systems |
US10599340B1 (en) * | 2017-07-13 | 2020-03-24 | EMC IP Holding LLC | Policy driven IO scheduler to improve read IO performance in hybrid storage systems |
US10719245B1 (en) | 2017-07-13 | 2020-07-21 | EMC IP Holding Company LLC | Transactional IO scheduler for storage systems with multiple storage devices |
US10346054B1 (en) * | 2017-07-13 | 2019-07-09 | EMC IP Holding Company LLC | Policy driven IO scheduler resilient to storage subsystem performance |
US10509739B1 (en) * | 2017-07-13 | 2019-12-17 | EMC IP Holding Company LLC | Optimized read IO for mix read/write scenario by chunking write IOs |
JP6956956B2 (ja) * | 2017-08-08 | 2021-11-02 | 学校法人慶應義塾 | 細胞生産方法 |
KR102429904B1 (ko) * | 2017-09-08 | 2022-08-05 | 삼성전자주식회사 | PCIe P2P 접속의 밴드위스를 최대화할 수 있는 방법 및 시스템 |
US10528506B2 (en) * | 2017-10-18 | 2020-01-07 | Western Digital Technologies, Inc. | Uniform performance monitor for a data storage device and method of operation |
US11294810B2 (en) * | 2017-12-12 | 2022-04-05 | Advanced Micro Devices, Inc. | Memory request throttling to constrain memory bandwidth utilization |
US12026381B2 (en) | 2018-10-26 | 2024-07-02 | Pure Storage, Inc. | Preserving identities and policies across replication |
US10671302B1 (en) | 2018-10-26 | 2020-06-02 | Pure Storage, Inc. | Applying a rate limit across a plurality of storage systems |
US20200183838A1 (en) * | 2018-12-10 | 2020-06-11 | International Business Machines Corporation | Dynamic cache resize taking into account underlying raid characteristics |
US10802725B2 (en) * | 2019-03-07 | 2020-10-13 | Vmware, Inc. | Management of unmap processing rates in distributed and shared data storage volumes |
US11550631B2 (en) * | 2019-06-17 | 2023-01-10 | Hewlett Packard Enterprise Development Lp | Distribution of quantities of an increased workload portion into buckets representing operations |
CN111444012B (zh) * | 2020-03-03 | 2023-05-30 | 中国科学院计算技术研究所 | 一种保证延迟敏感应用延迟slo的动态调控资源方法及*** |
CN113377277A (zh) * | 2020-03-09 | 2021-09-10 | 伊姆西Ip控股有限责任公司 | 管理存储器的方法、设备和计算机程序产品 |
US20220374149A1 (en) * | 2021-05-21 | 2022-11-24 | Samsung Electronics Co., Ltd. | Low latency multiple storage device system |
US11782851B2 (en) * | 2021-09-01 | 2023-10-10 | Micron Technology, Inc. | Dynamic queue depth adjustment |
CN114489986A (zh) * | 2022-01-25 | 2022-05-13 | 惠州Tcl移动通信有限公司 | 任务调度方法、装置、终端设备及存储介质 |
CN116560842B (zh) * | 2023-05-12 | 2024-04-16 | 无锡众星微***技术有限公司 | 一种sas存储业务中的i/o队列调度方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5239659A (en) * | 1991-06-19 | 1993-08-24 | Storage Technology Corporation | Phantom duplex copy group apparatus for a disk drive array data storge subsystem |
US5459857A (en) * | 1992-05-15 | 1995-10-17 | Storage Technology Corporation | Fault tolerant disk array data storage subsystem |
US5426736A (en) * | 1993-05-26 | 1995-06-20 | Digital Equipment Corporation | Method and apparatus for processing input/output commands in a storage system having a command queue |
JPH0855071A (ja) * | 1994-08-08 | 1996-02-27 | Matsushita Electric Ind Co Ltd | サーバ装置 |
US5680539A (en) * | 1995-07-11 | 1997-10-21 | Dell Usa, L.P. | Disk array system which performs data reconstruction with dynamic load balancing and user-specified disk array bandwidth for reconstruction operation to maintain predictable degradation |
US6078998A (en) * | 1997-02-11 | 2000-06-20 | Matsushita Electric Industrial Co., Ltd. | Real time scheduling of prioritized disk requests |
US6170042B1 (en) * | 1998-02-24 | 2001-01-02 | Seagate Technology Llc | Disc drive data storage system and method for dynamically scheduling queued commands |
US6157963A (en) * | 1998-03-24 | 2000-12-05 | Lsi Logic Corp. | System controller with plurality of memory queues for prioritized scheduling of I/O requests from priority assigned clients |
US6434631B1 (en) * | 1999-10-15 | 2002-08-13 | Lucent Technologies Inc. | Method and system for providing computer storage access with quality of service guarantees |
US6862623B1 (en) * | 2000-04-14 | 2005-03-01 | Microsoft Corporation | Capacity planning for server resources |
US6738386B1 (en) * | 2000-05-11 | 2004-05-18 | Agere Systems Inc. | Controlled latency with dynamically limited queue depth based on history and latency estimation |
JP2002132698A (ja) * | 2000-10-27 | 2002-05-10 | Matsushita Electric Ind Co Ltd | データ転送制御方法およびその装置 |
US6970936B2 (en) * | 2000-12-19 | 2005-11-29 | International Business Machines Corporation | Data processing system and method of communication that employ a request-and-forget protocol |
US7230923B2 (en) * | 2001-03-09 | 2007-06-12 | Vitesse Semiconductor Corporation | Time based packet scheduling and sorting system |
JP4175788B2 (ja) * | 2001-07-05 | 2008-11-05 | 株式会社日立製作所 | ボリューム制御装置 |
US7292580B2 (en) * | 2002-06-10 | 2007-11-06 | Lsi Corporation | Method and system for guaranteeing quality of service in a multi-plane cell switch |
US7783787B1 (en) * | 2002-06-13 | 2010-08-24 | Netapp, Inc. | System and method for reprioritizing high-latency input/output operations |
US7093256B2 (en) * | 2002-12-13 | 2006-08-15 | Equator Technologies, Inc. | Method and apparatus for scheduling real-time and non-real-time access to a shared resource |
-
2003
- 2003-03-27 US US10/400,556 patent/US7917903B2/en active Active
-
2004
- 2004-03-25 JP JP2006509277A patent/JP5041805B2/ja not_active Expired - Fee Related
- 2004-03-25 WO PCT/US2004/009119 patent/WO2004088547A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2004088547A2 (en) | 2004-10-14 |
JP2006521640A (ja) | 2006-09-21 |
US20040194095A1 (en) | 2004-09-30 |
WO2004088547A3 (en) | 2005-01-13 |
US7917903B2 (en) | 2011-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5041805B2 (ja) | データストレージシステムのサービス品質コントローラ及びサービス品質方法 | |
US7643983B2 (en) | Data storage system emulation | |
US6711607B1 (en) | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service | |
US9703285B2 (en) | Fair share scheduling for mixed clusters with multiple resources | |
EP3335119B1 (en) | Multi-priority service instance allocation within cloud computing platforms | |
JP6100712B2 (ja) | 記憶側記憶要求管理 | |
JP2940450B2 (ja) | クラスタ型コンピュータのジョブスケジュール方法及び装置 | |
JP3944154B2 (ja) | マルチスレッド・サーバ内のスレッド・プールを動的に調整する方法およびシステム | |
CA2942665C (en) | Coordinated admission control for network-accessible block storage | |
US8087026B2 (en) | Fair share scheduling based on an individual user's resource usage and the tracking of that usage | |
US20050055694A1 (en) | Dynamic load balancing resource allocation | |
JP7018554B2 (ja) | 適応型リソース割り当て方法及び装置 | |
US9442763B2 (en) | Resource allocation method and resource management platform | |
US6434631B1 (en) | Method and system for providing computer storage access with quality of service guarantees | |
US9104482B2 (en) | Differentiated storage QoS | |
US10394606B2 (en) | Dynamic weight accumulation for fair allocation of resources in a scheduler hierarchy | |
WO2007071505A1 (en) | Load-balancing metrics for adaptive dispatching of long asynchronous network requests | |
US20120221730A1 (en) | Resource control system and resource control method | |
US10250673B1 (en) | Storage workload management using redirected messages | |
US9772798B2 (en) | Method and system for implementing workload management by monitoring disk utilizations | |
CN107430526B (zh) | 用于调度数据处理的方法和节点 | |
Kettimuthu et al. | Differentiated scheduling of response-critical and best-effort wide-area data transfers | |
US20220179687A1 (en) | Information processing apparatus and job scheduling method | |
JP2023032163A (ja) | 情報処理装置およびジョブスケジューリング方法 | |
Dandamudi | The effect of scheduling discipline on sender-initiated and receiver-initiated adaptive load sharing in homogeneous distributed systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061107 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090825 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091120 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100107 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100428 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100513 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20100806 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120611 |
|
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: 20120710 |
|
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: 20150720 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees | ||
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |