JP2013084177A - 制御方法及びプログラム、並びにコンピュータ - Google Patents

制御方法及びプログラム、並びにコンピュータ Download PDF

Info

Publication number
JP2013084177A
JP2013084177A JP2011224672A JP2011224672A JP2013084177A JP 2013084177 A JP2013084177 A JP 2013084177A JP 2011224672 A JP2011224672 A JP 2011224672A JP 2011224672 A JP2011224672 A JP 2011224672A JP 2013084177 A JP2013084177 A JP 2013084177A
Authority
JP
Japan
Prior art keywords
busy rate
per unit
unit time
value
accesses
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
JP2011224672A
Other languages
English (en)
Other versions
JP5853569B2 (ja
Inventor
Kazuichi Oe
和一 大江
Kazutaka Ogiwara
一隆 荻原
Yasuo Noguchi
泰生 野口
Tatsuo Kumano
達夫 熊野
Masatoshi Tamura
雅寿 田村
Munenori Maeda
宗則 前田
Takeshi Iizawa
健 飯澤
Toshihiro Ozawa
年弘 小沢
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011224672A priority Critical patent/JP5853569B2/ja
Priority to US13/618,466 priority patent/US8667186B2/en
Publication of JP2013084177A publication Critical patent/JP2013084177A/ja
Application granted granted Critical
Publication of JP5853569B2 publication Critical patent/JP5853569B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】IOの発生状況によらず、IOの帯域保証を可能にする。
【解決手段】第1及び第2記憶領域を備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1モニタ結果を取得し、第1モニタ結果からビジー率についての第1指標の値を設定し直す事象が発生したか判断する。発生したと判断されると、第2記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1アクセス数より小さい第2アクセス数を通知する。その後、ビジー率及び単位時間あたりのアクセス数の第2モニタ結果を取得し、少なくとも第2モニタ結果に基づき第1指標の値を更新する。また、第2モニタ結果に基づき、単位時間あたりの指定された第3アクセス数に対応するビジー率と、単位時間あたりの第4アクセス数に対応するビジー率との和が、更新した第1指標の値となるように、単位時間あたりの第4アクセス数を算出し制御部に通知する。
【選択図】図5

Description

本技術は、記憶装置に対するIO(Input and Output)制御技術に関する。
記憶装置等の性能保証を行う方法については様々な提案がなされている。このような提案においては、何れもIOPS(Input and Output per Second)やスループットを使用している。
ところで、記憶装置のビジー(Busy)率とは、記憶装置の忙しさを表す指標であって、たとえば、IOキューにIO要求が滞留する時間の割合により求められる。従って、記憶装置のビジー率が100%(0以上1以下の数値として取り扱う場合には「1」)のときは、これ以上性能を出すことが出来ないことを意味する。より具体的には、記憶装置のビジー率が100%となると、常にIOキューにIO要求がたまっていて、常に何らかのIOを実行中であることを表しており、これ以上IO性能を上げることが難しい状態にある。また、IOPSとは、たとえば、単位時間あたりの、ブロック単位で数えるアクセス数(IO数)により求められる。
ここで、記憶装置へのアクセスを行う場合に、同じIOPSを確保しようとしても、IOが発生する、記憶装置におけるディスク上の位置及び範囲、read命令及びwrite命令の割合、IOサイズの分布の態様が異なる態様に変化すると、記憶装置のビジー率は同じ値とならず、変動してしまう。例えば、IOが発生する、記憶装置上の範囲の違いに関して考察すると、記憶領域全域にIOが発生することが支配的な場合と、記憶領域の一部にIOが発生することが支配的な場合とでは、データ転送以外のオーバーヘッド時間(例えばシーク時間など)が、前者の方が大きくなるため、同じIOPSであっても前者の方がよりビジー率が高くなる傾向にある。すなわち、IOの発生状況によっては、IOPSやスループットといった指標値によるIOの帯域保証が出来たり出来なかったりすることを意味する。
特開2001−43032号公報 特表2005−524886号公報 特開2003−140836号公報
従って、本技術の目的は、一側面において、IOの発生状況によらず、IOの帯域保証を可能にするための技術を提供することである。
本技術に係る制御方法は、(A)第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得するステップと、(B)取得した第1のモニタ結果から、ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断するステップと、(C)イベントが発生したと判断された場合には、第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知するステップと、(D)記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得するステップと、(E)少なくとも取得した第2のモニタ結果に基づき、第1の指標の値を更新するステップと、(F)取得した第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した第1の指標の値となるように、単位時間あたりの第4のアクセス数を算出するステップと、(G)第4のアクセス数を、制御部に対して通知するステップとを含む。
IOの発生状況によらず、IOの帯域保証が可能になる。
図1は、IOPSとビジー率及びサービスタイムとの関係の違いを表す図である。 図2は、図1の測定結果の測定条件を説明するための図である。 図3は、IOPSとビジー率の関係を模式的に示す図である。 図4は、IOPSとビジー率の関係を模式的に示す図である。 図5は、第1の実施の形態におけるコンピュータの構成を示す図である。 図6は、第1の実施の形態における処理プログラムの処理フローを示す図である。 図7は、カーネルから取得されるモニタ結果の一例を示す図である。 図8は、処理フローを説明するための図である。 図9は、第1の実施の形態における処理プログラムの処理フローを示す図である。 図10は、ディスクドライバの処理フローを示す図である。 図11は、目標ビジー率の更新処理の処理フローを示す図である。 図12は、第2の実施の形態におけるコンピュータの構成を示す図である。 図13は、第2の実施の形態における処理プログラムの処理フローを示す図である。 図14は、コンピュータの機能ブロック図である。
[実施の形態1]
上でも述べたように、IOが発生する、記憶装置におけるディスク上の位置及び範囲、read命令及びwrite命令の割合、IOサイズの分布などの態様(以下、ワークロードと呼ぶ)によって、IOPSとIOビジー率の関係は変動する。例えば、あるワークロードAのみ負荷した場合と、あるワークロードBのみ負荷した場合と、ワークロードA+Bを負荷した場合とについて、IOPSとIOビジー率(以下、略してビジー率と呼ぶ)との関係を計測すると、図1のような結果を得た。なお、図2に示すように、1台のディスク装置(容量2Tバイト)のうち、離れた500Gバイトの2つの領域に対して、ワークロードAについてのIOと、ワークロードBについてのIOとが行われるものとする。また、図1には、1IOあたりの平均実行時間であるサービスタイムとIOPSとの関係も示されている。すなわち、図1においては、左縦軸はビジー率(%)を表し、右縦軸はサービスタイム(ms)を表し、横軸はIOPSを表す。
このように、どのワークロードについても、IOPSが増加してビジー率が100%付近になると、点線で囲んだ部分で分かるように、サービスタイムが急激に増加する。すなわち、点線で囲んだ部分では、1IOPSが変化すると、サービスタイムが大きく変動する。一方、それ以外の部分では、IOPSに比例してビジー率が増減することが分かる。このようにIOPSに比例してビジー率が増減する部分については、IOPSとビジー率との関係からIOPSによる帯域保証を行うことが可能となる。
図3に、図1をより簡略的に表す。図3で分かるように、ワークロード1乃至3のいずれについても、IOPSに対してビジー率が線形である部分Bと、IOPSに対してビジー率が非線形である部分Aとの境界に、比例限界ビジー率x乃至zが存在している。但し、実際のワークロードは時間経過と共に変動してゆき、ある時にはワークロード1であり、ある時にはワークロード3であり、さらにある時にはワークロード2であり、比例限界ビジー率は、x乃至zで変動する。また、比例限界ビジー率が予め分かるわけではない。さらに、ここでは3つのワークロードを示したが、ワークロードは多数存在しており、いずれのワークロードが負荷されているのかは、結果として分かるだけで事前に分かるわけではない。従って、ある時点でIOPSに対してビジー率が線形である状態であったとしても、時間経過に応じてワークロードが変化すると、不意に比例限界ビジー率を超えてビジー率が100%に張り付く状態になる可能性がある。そうすると、IOPSによる帯域保証は困難になる。
具体的には、図4に示すように、ポイント1乃至5(矩形で囲まれた数字)が観測される。すなわち、第1の時点でIOPSとビジー率との組み合わせ(ポイント1)が得られた後に、第2の時点でIOPSとビジー率との組み合わせ(ポイント2)が得られると、ワークロード3における線形区間にあることが分かる。但し、次の第3の時点においては、IOPSと100%のビジー率との組み合わせ(ポイント3)が得られるので、ワークロード3から他のワークロード(ここではワークロード2)に遷移したことが分かる。ここで、IOPSを下げるように制御した後、第4の時点において、IOPSとビジー率との組み合わせ(ポイント4)が得られる。さらに時間が経過して、第5の時点においては、IOPSとビジー率との組み合わせ(ポイント5)が得られ、IOPSとビジー率との関係からしてワークロード2から他のワークロード(ここではワークロード1)へ遷移したことが分かる。
このように離散的に状態のデータが得られるだけで、ビジー率が100%となっていれば、比例限界ビジー率を超えていることが分かるが、比例限界ビジー率そのものが分かるわけではない。IOPSに対してビジー率が線形である線形区間であれば、IOPSによる帯域保証を行うことができるが、比例限界ビジー率が分からなければ、線形区間を正確には把握できない。そこで、本実施の形態では、0<目標ビジー率≦比例限界ビジー率を満たすように目標ビジー率を設定して、記憶装置全体に対して発行されるIOが目標ビジー率以下となるように制御を行うものとする。但し、比例限界ビジー率がワークロードによって変化するので、ワークロードの変化が検出されれば、比例限界ビジー率を算出し直し、目標ビジー率も設定し直す。
以下、このような目標ビジー率設定及び帯域保証のための制御技術について具体的に説明する。
本技術の第1の実施の形態に係るコンピュータの構成を図5に示す。図5に示すコンピュータ100は、例えばハードディスク(名前はhda)である記憶装置200と接続されており、カーネル内に記憶装置200内のパーティションA(名前はhda1)のためのディスクドライバAと、記憶装置200内のパーティションB(名前はhda2)のためのディスクドライバBとを実行している。また、コンピュータ100は、アプリケーションA及びBを実行しており、アプリケーションAが記憶装置200のパーティションAにディスクドライバAを介してアクセスし、アプリケーションBが記憶装置200のパーティションBにディスクドライバBを介してアクセスするものとする。
また、コンピュータ100は、以下で詳細に述べる帯域制御のための処理を実施するデーモン(daemon)である処理プログラム110も実行している。
本実施の形態では、以下で詳細に説明するように、現在のIO状況に応じた記憶装置200のビジー率とIOPSとから、IO帯域保証するには現状のビジー率からして、どのような態様で帯域制御を行うべきであるかを、処理プログラム110で決定して、ディスクドライバに対して指示を行う。なお、以下では、説明を分かりやすくするため、アプリケーションAについてIO帯域保証を行うことを想定する。
次に、図6乃至図11を用いて、図1に示した処理プログラム110の処理について説明する。なお、アプリケーションA及びBと処理プログラム110とディスクドライバA及びBとは、コンピュータ100のプロセッサにより実行されて、以下で述べるような機能を実現する。
まず、処理プログラム110は、例えば1分毎など周期的に、カーネルから記憶装置200の最新IOPS及びビジー率を含むモニタ結果を取得して、メインメモリなどの記憶装置に格納する(図6:ステップS1)。
例えばLinux(登録商標)であれば、”iostat −x”コマンドをカーネルに出力して、例えば図7のようなデータを取得する。
図7に示すようなデータにおいて、r/sの値とw/sの値との和がIOPSを表しており、%utilの値がビジー率を表している。
次に、処理プログラム110は、ステップS1で取得したモニタ結果を含む直近10回のモニタ結果においてビジー率100%が所定回数(例えば3回など予め設定する)以上発生しているか判断する(ステップS3)。このような条件を満たす場合には、ワークロードが変化して目標ビジー率を更新すべきイベントが発生したものと判断する。一方、このような条件を満たしていない場合には、端子Aを介して図9のステップS20に移行する。
目標ビジー率を更新するイベントが発生したと判断された場合には、処理プログラム110は、ビジー率100%となっているモニタ結果のIOPSの値Cから、1IOPSあたりのビジー率cを、100/Cで算出し、メインメモリなどの記憶装置に格納する(ステップS5)。なお、Cは複数の値が得られるが、例えば平均値や最小値であっても良い。なお、この段階で直近10回分のモニタ結果をクリアするようにしても良い。
ここで図8を用いて、本処理フローで計算される値を説明する。点線は直前のワークロードについて、IOPSとビジー率の関係を表したものであり、このワークロードを前提として帯域保証の制御が行われていたものとする。但し、その後、IOPSがCである場合にビジー率が100%となるポイント11が所定回数検出されると、上で述べたようにワークロードが変化して目標ビジー率を更新すべきイベントが発生したと判断される。この時、ステップS5では、非線形区間を直線として表した場合の直線pの傾きcを算出したことになる。なお、比例限界ビジー率に対応する点qは、実際には得られない。
次に、処理プログラム110は、非帯域保証側の上限IOPSを、現在値よりZ%引き下げるように、デバイスドライバBに対して指示する(ステップS7)。デバイスドライバの処理については後に説明するが、デバイスドライバは、アプリケーションからのIOを、処理プログラム110から通知されたIOPS値以下になるように、制御する。
比例限界ビジー率に対応する点qは実際には得られないが、点qよりも低いビジー率となるようにIOPSを設定する。そのため、点qよりビジー率が十分に低くなる点12を得るために、実験的に決定されるZ%(例えば20%)だけ、現在値より低い値をデバイスドライバBに通知する。
その後、処理プログラム110は、最新IOPS及びビジー率を含むモニタ結果を取得して、メインメモリなどの記憶装置に格納する(ステップS9)。このようにすれば、図8における点12におけるモニタ結果が得られる。そして、処理プログラム110は、ビジー率/最新IOPSにより、線形区間における1IOPSあたりのビジー率dを算出し、メインメモリなどの記憶装置に格納する(ステップS11)。図8において、直線rの傾きdが算出される。
その後、処理プログラム110は、現在の目標ビジー率X1、1IOPSあたりのビジー率c及びdから新たな目標ビジー率X2を算出し、メインメモリなどの記憶装置に格納する(ステップS13)。具体的には以下の式で算出される。
X2=X1−(c−d)×C×y
(c−d)×Cは、図8における点11と直線rをIOPS=Cまで延長した際における点sとの長さ(=ビジー率の差)を表している。本実施の形態では、(c−d)×Cに対して係数y(0以上1以下の実数)を設定することで、現在の目標ビジー率X1の引き下げ幅ΔXが算出される。yについても、実験的に適切な値を設定するが、大きな値を設定すると、実際の比例限界ビジー率より大きく下回った値が目標ビジー率として設定されてしまう。一方、yに小さな値を設定すると、実際の比例限界ビジー率よりも大きな値が目標ビジー率として設定されるので、直ぐに目標ビジー率を更新しなければならなくなる。ここでは例えば、y=0.5を設定する。なお、この段階で直近10回分のモニタ結果をクリアするようにしても良い。
処理は端子Bを介して図9の処理に移行して、処理プログラム110は、dに対して、アプリケーションAについての帯域保証IOPSを乗じることで、帯域保証側のビジー率を算出し、メインメモリなどの記憶装置に格納する(ステップS15)。帯域保証IOPSの値は、例えばアプリケーションA又はアプリケーションAのユーザから指示されるものとする。
なお、帯域保証IOPSの値が大きすぎる場合も生じ得る。例えばビジー率を%で表す場合には帯域保証側のビジー率が100を超えたり、ビジー率を0乃至1までの値で表す場合には帯域保証側のビジー率が1を超えたりする場合もあり得る。また、他のアプリケーションが記憶装置200を使用できなくなるのは問題である。そのため、閾値を予め設定しておき、帯域保証側のビジー率がその閾値を超えてしまうか判断し、閾値を超えてしまう場合には、IOPSの保証不可ということで以下の処理を行わないようにしても良いし、帯域保証IOPSの値を下げるように要求するようにしても良い。また、自動的に帯域保証IOPS値を保証できる範囲に下げるようにしてもよい。
ここでは、例えばd=0.7[%/IOPS]であるものとし、帯域保証IOPSの値が100であるとすると、帯域保証IOPSの値を実現するためには、0.7×100=70%のビジー率となることが分かる。すなわち、アプリケーションAの要求に従ってIOPS値を保証しようとすると、ビジー率70%を確保することになる。
その後、処理プログラム110は、(新たな目標ビジー率−帯域保証側のビジー率)/dにより、非帯域保証側の上限IOPSを算出し、メインメモリなどの記憶装置に格納する(ステップS17)。
すなわち、帯域保証側のビジー率と非帯域保証側のビジー率との和が、新たな目標ビジー率と一致するように非帯域保証側のビジー率を設定する。そして、線形区間においては、1IOSPあたりのビジー率はdであるから、非帯域保証側のビジー率をdで除すれば、非帯域保証側の上限IOPSが得られる。
例えば、新たな目標ビジー率が91で、ステップS15で帯域保証側のビジー率として70が得られ、d=0.7であれば、(91−70)/0.7=30が、非帯域保証側の上限IOPSとして算出される。
そして、処理プログラム110は、非帯域保証側のデバイスドライバBに対して、非帯域保証側の上限IOPSを通知する(ステップS19)。デバイスドライバBは、この通知に応じて、以下に述べるような処理を実施する。
その後、処理プログラム110は、コンピュータ100のシャットダウン、処理プログラム110の停止など処理終了のイベントが発生したか判断する(ステップS20)。処理終了ではない場合には端子Cを介して図6のステップS1に戻る。一方、処理終了のイベントが発生した場合には、処理を終了する。
以上のような処理を実施することによって、現在のIO発生状況に応じたビジー率を考慮して、IO性能保証を実施することができるようになる。特に、ワークロードが変化してしまうような場合にも対処できる。
なお、ディスクドライバでは、図10に示すような処理を実施する。上で述べた例では、ディスクドライバBが図10に示すような処理を実施する。ディスクドライバは、処理プログラム110からIOPSの通知を受信したか判断する(ステップS21)。受信していない場合には、現在の処理状態を維持し、ステップS27に移行する。一方、処理プログラム110からIOPSの通知を受信した場合には、ディスクドライバは、通知されたIOPSで、自らが使用可能なIOPSの値を更新する(ステップS23)。上で述べた例では、30IOPSがディスクドライバBに通知されるので、ディスクドライバBの使用可能IOPSの値を30IOPSに変更する。
そして、ディスクドライバは、使用可能IOPSに応じて、IOの制限を実施する(ステップS25)。例えば、毎秒43のIOを処理した後は、IOをブロックすることで最大でもIOPSが43になるように制限する。これによって全体のIOPSが、目標ビジー率に対応するIOPS以下となるように制御される。以上の処理を処理終了になるまで繰り返す(ステップS27)。
以上のような処理を実施することによって、非帯域保証側のパーティションについてはIOが制限され、帯域保証側のパーティションについては制限無くIOが処理されて、結果として、指定された帯域保証IOPSが実現されるようになる。
なお、図6及び図9の処理フローでは、新たな目標ビジー率は従前の値からΔX減ずる処理しか行われていないので、例えば以下のような処理を実施して目標ビジー率を初期値に戻す。
具体的には、処理プログラム110は、最新のIOPS及びビジー率を含むモニタ結果を取得し、例えばメインメモリなどの記憶装置に格納する(図11:ステップS31)。そして、処理プログラム110は、ビジー率/IOPSにより、1IOPSあたりの最新ビジー率を算出し、メインメモリなどの記憶装置に格納する(ステップS33)。また、処理プログラム110は、過去所定回数(例えば10回)分の1IOPSあたりのビジー率の平均値を算出し、メインメモリなどの記憶装置に格納する(ステップS35)。メインメモリなどの記憶装置に格納されている過去所定回数分のモニタ結果を用いて1IOPSあたりのビジー率の平均値を算出する。
そうすると、処理プログラム110は、1IOPSあたりの最新ビジー率が、ステップS35で算出された平均値から所定レベル以上乖離しているか判断する(ステップS37)。例えば、N%(例えば20%)乖離しているか又は差がN以上(例えば10)となっているかを判断する。所定レベル以上乖離している場合には、処理プログラム110は、目標ビジー率Xを初期値に設定する(ステップS39)。例えば図8のような観測がなされている場合には、例えばX=95(1が上限であればX=0.95)と設定する。さらに、過去10回分のモニタ結果をクリアする。
1IOPSあたりの最新ビジー率が所定レベル以上平均値から乖離していない場合、又はステップS39の後に、処理プログラム110は、処理終了のイベントが発生したか判断する(ステップS41)。処理終了のイベントが発生していなければステップS31に戻る。一方、処理終了のイベントが発生していれば処理を終了する。
このように、1IOPSあたりのビジー率が大幅に変動した場合には再度目標ビジー率を調整すべく、目標ビジー率を初期化する。
[実施の形態2]
第1の実施の形態では、記憶装置200にパーティションが2つあり、帯域保証すべきアプリケーションAがパーティションAにアクセスし、帯域保証しなくても良いアプリケーションBがパーティションBにアクセスする例を説明したが、帯域保証すべきアプリケーションが複数の場合もある。本実施の形態では、複数のアプリケーションについて帯域保証する場合について説明する。
図12に、本実施の形態に係るコンピュータの構成を示す。図12に示すコンピュータ300は、例えばハードディスク(名前はhda)である記憶装置400と接続されており、カーネル内に記憶装置400内のパーティションA(名前はhda1)のためのディスクドライバAと、記憶装置400内のパーティションB(名前はhda2)のためのディスクドライバBと、記憶装置400内のパーティションC(名前はhda3)のためのディスクドライバCとを実行している。また、コンピュータ300は、アプリケーションA乃至Cを実行しており、アプリケーションAが記憶装置400のパーティションAにディスクドライバAを介してアクセスし、アプリケーションBが記憶装置400のパーティションBにディスクドライバBを介してアクセスし、アプリケーションCが記憶装置400のパーティションCにディスクドライバCを介してアクセスするものとする。
また、コンピュータ300は、以下で詳細に述べる帯域制御のための処理を実施するデーモン(daemon)である処理プログラム310も実行している。
本実施の形態では、以下で詳細に説明するように、現在のアクセス状況に応じた記憶装置400のビジー率とIOPSとから、IO性能保証するには現状のビジー率からして、どのような態様で帯域制御を行うべきであるかを、処理プログラム310で決定して、ディスクドライバに対して指示を行う。本実施の形態では、アプリケーションA及びBについてIO帯域保証を行うことを想定する。
次に、図13を用いて、図12に示した処理プログラム310の処理について説明する。但し、第1の実施の形態について説明した図6の処理は同様であるから、ここでは説明を省略する。すなわち、端子Bで図13の処理に移行して、処理プログラム310は、dに対して各帯域保証IOPSを乗じることで、各帯域保証側のビジー率を算出し、メインメモリなどの記憶装置に格納する(ステップS51)。dに対してアプリケーションAの帯域保証IOPSを乗じてアプリケーションAについてのビジー率を算出すると共に、dに対してアプリケーションBの帯域保証IOPSを乗じてアプリケーションBについてのビジー率を算出する。なお、帯域保証IOPSの値は、例えばアプリケーション又はアプリケーションのユーザから指示されるものとする。また、帯域保証IOPSの値が大きすぎる場合の対処については第1の実施の形態と同様である。
ここで例えばd=0.7[%/IOPS]であるものとし、アプリケーションAの帯域保証IOPSの値が60で、アプリケーションBの帯域保証IOPSの値が40であるとすると、アプリケーションAについての帯域保証IOPSの値を実現するためには、0.7×60=42%のビジー率となり、アプリケーションBについての帯域保証IOPSの値を実現するためには、0.7×40=28%のビジー率となることが分かる。すなわち、アプリケーションAの要求に従ってIOPS値を保証しようとすると、ビジー率42%を確保することになり、アプリケーションBの要求に従ってIOPS値を保証しようとすると、ビジー率28%を確保することになる。
その後、処理プログラム310は、(新たな目標ビジー率−各帯域保証側のビジー率)/dにより、非帯域保証側の上限IOPSを算出し、メインメモリなどの記憶装置に格納する(ステップS53)。
すなわち、各帯域保証側のビジー率と非帯域保証側のビジー率との和が、新たな目標ビジー率と一致するように非帯域保証側のビジー率を設定する。そして、線形区間においては、1IOSPあたりのビジー率はdであるから、非帯域保証側のビジー率をdで除すれば、非帯域保証側の上限IOPSが得られる。
例えば、新たな目標ビジー率が91で、ステップS51で帯域保証側のビジー率として42及び28が得られ、d=0.7であれば、(90−(42+28))/0.7=30が、非帯域保証側の上限IOPSとして算出される。
そして、処理プログラム310は、非帯域保証側のデバイスドライバCに対して、非帯域保証側の上限IOPSを通知する(ステップS55)。デバイスドライバCは、この通知に応じて、図10の処理を実施する。
また、処理プログラム310は、各帯域保証側のデバイスドライバに対して、帯域保証IOPSを通知する(ステップS57)。デバイスドライバA及びBは、この通知に応じて、図10の処理を実施する。
その後、処理プログラム310は、コンピュータ300のシャットダウン、処理プログラム310の停止など処理終了のイベントが発生したか判断する(ステップS59)。処理終了ではない場合には端子Cを介して図6のステップS1に戻る。一方、処理終了のイベントが発生した場合には、処理を終了する。
以上のような処理を実施することによって、現在のIO発生状況に応じたビジー率を考慮して、複数の帯域保証すべきアプリケーションが存在する場合であっても帯域保証を実施することができるようになる。特に、ワークロードが変化してしまうような場合にも対処できる。
また、IOPS非保証パーティションが1つのみであるが、IOPS非保証パーティションが複数存在している場合にも、各パーティションのディスクドライバに通知することになる。その際、IOPS非保証パーティションがどのような値にIOPSを制限するかについては、様々なバリエーションが考えられるが、例えば、均等にしても良いし、何らかの優先順位付けを行って、傾斜配分してもよい。
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、ディスクドライバがアプリケーションを識別できる場合には、複数のアプリケーションでパーティションを共用する場合にも、上で述べたような方式でIOPS非保証アプリケーションの上限IOPSを算出すれば、帯域保証を行うことができるようになる。
また、複数の記憶装置が存在する場合には、記憶装置毎に処理を行えばよい。
なお、上で述べたコンピュータ100及び300は、コンピュータ装置であって、図14に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると以下のようになる。
本技術の実施の形態に係る制御方法は、(A)第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得するステップと、(B)取得した第1のモニタ結果から、ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断するステップと、(C)イベントが発生したと判断された場合には、第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知するステップと、(D)記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得するステップと、(E)少なくとも取得した第2のモニタ結果に基づき、第1の指標の値を更新するステップと、(F)取得した第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した第1の指標の値となるように、単位時間あたりの第4のアクセス数を算出するステップと、(G)第4のアクセス数を、制御部に対して通知するステップとを含む。
これによれば、たとえIOの発生状況が変化して現在の制御態様を続けられない状況になっても、現在のIOの発生状況に応じた態様で、単位時間あたりアクセス数を少なくとも非帯域保証側の制御部で制御するので、動的にIOの帯域保証が可能となる。
また、本実施の形態に係る制御方法において、第1の記憶領域が複数の記憶領域を含み、当該複数の記憶領域の各々について単位時間あたりの第3のアクセス数が指定されている場合もある。このような場合、本制御方法は、(H)複数の記憶領域の各々について、当該記憶領域にアクセスするアプリケーションの単位時間あたりのアクセス数を、単位時間あたりの第3のアクセス数に制限するように、複数の記憶領域の各々の制御部に指示するステップをさらに含むようにしても良い。このようにすれば、3以上の記憶領域が記憶装置に含まれる場合にも対処できる。
また、上で述べた判断するステップが、ビジー率が上限値に達する回数が所定回数に達したか否かを判断するステップを含むようにしても良い。
さらに、上で述べた更新するステップが、ビジー率の上限値を当該ビジー率が上限値に達した場合の単位時間あたりのアクセス数で除することにより得られる値と、前記第2のモニタ結果に含まれる前記ビジー率を前記第2のモニタ結果に含まれる単位時間あたりのアクセス数で除することにより得られる値との差に対して、ビジー率が上限に達した場合の単位時間あたりのアクセス数及び所定の係数を乗ずることで得られる値だけ、第1の指標の値を下げるステップを含むようにしても良い。所定の係数を調整することで、第1の指標の値の理論的な上限値(実施の形態における比例限界ビジー率)に近づけることができるようになる。但し、他の手法を用いて第1の指標値を更新しても良い。
また、本実施の形態に係る制御方法は、(I)記憶装置のビジー率及び単位時間あたりのアクセス数の第3のモニタ結果を取得するステップと、(J)取得した第3のモニタ結果から算出される、ビジー率についての第2の指標の値と、当該第2の指標の過去の値の平均値との差が所定値以上である場合には、第1の指標の値を初期値に戻すステップとをさらに含むようにしてもよい。より適切な第1の指標の値を設定することができるようになる。
なお、上記制御方法をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得する処理と、
取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断する処理と、
前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知する処理と、
前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得する処理と、
少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新する処理と、
取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出する処理と、
前記第4のアクセス数を、前記制御部に対して通知する処理と、
を、コンピュータに実行させるためのプログラム。
(付記2)
前記第1の記憶領域が複数の記憶領域を含み、当該複数の記憶領域の各々について単位時間あたりの第3のアクセス数が指定されており、
前記複数の記憶領域の各々について、当該記憶領域にアクセスするアプリケーションの単位時間あたりのアクセス数を、前記単位時間あたりの第3のアクセス数に制限するように、前記複数の記憶領域の各々の制御部に指示する処理
を、さらに前記コンピュータに実行させるための付記1記載のプログラム。
(付記3)
前記判断する処理が、
前記ビジー率が上限値に達する回数が所定回数に達したか否かを判断する処理
を含む付記1又は2記載のプログラム。
(付記4)
前記更新する処理が、
前記ビジー率の上限値を当該ビジー率が上限値に達した場合の単位時間あたりのアクセス数で除することにより得られる値と、前記第2のモニタ結果に含まれる前記ビジー率を前記第2のモニタ結果に含まれる単位時間あたりのアクセス数で除することにより得られる値との差に対して、前記ビジー率が上限に達した場合の単位時間あたりのアクセス数及び所定の係数を乗ずることで得られる値を、前記第1の指標の値から引く処理
を含む付記1乃至3のいずれか1つ記載のプログラム。
(付記5)
前記記憶装置のビジー率及び単位時間あたりのアクセス数の第3のモニタ結果を取得する処理と、
取得した前記第3のモニタ結果から算出される、前記ビジー率についての第2の指標の値と、当該第2の指標の過去の値の平均値との差が所定値以上である場合には、前記第1の指標の値を初期値に戻す処理と、
を、さらに前記コンピュータに実行させるための付記4記載のプログラム。
(付記6)
第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得する処理と、
取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断する処理と、
前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知する処理と、
前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得する処理と、
少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新する処理と、
取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出する処理と、
前記第4のアクセス数を、前記制御部に対して通知する処理と、
を、コンピュータが実行する制御方法。
(付記7)
第1の記憶領域と第2の記憶領域とを備える記憶装置と、
前記記憶装置における前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部と、
処理部とを有し、
前記処理部が、
前記記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得し、
取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断し、
前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知し、
前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得し、
少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新し、
取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出し、
前記第4のアクセス数を、前記制御部に対して通知する
コンピュータ。
100,300 コンピュータ
110,310 処理プログラム

Claims (7)

  1. 第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得する処理と、
    取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断する処理と、
    前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知する処理と、
    前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得する処理と、
    少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新する処理と、
    取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出する処理と、
    前記第4のアクセス数を、前記制御部に対して通知する処理と、
    を、コンピュータに実行させるためのプログラム。
  2. 前記第1の記憶領域が複数の記憶領域を含み、当該複数の記憶領域の各々について単位時間あたりの第3のアクセス数が指定されており、
    前記複数の記憶領域の各々について、当該記憶領域にアクセスするアプリケーションの単位時間あたりのアクセス数を、前記単位時間あたりの第3のアクセス数に制限するように、前記複数の記憶領域の各々の制御部に指示する処理
    を、さらに前記コンピュータに実行させるための請求項1記載のプログラム。
  3. 前記判断する処理が、
    前記ビジー率が上限値に達する回数が所定回数に達したか否かを判断する処理
    を含む請求項1又は2記載のプログラム。
  4. 前記更新する処理が、
    前記ビジー率の上限値を当該ビジー率が上限値に達した場合の単位時間あたりのアクセス数で除することにより得られる値と、前記第2のモニタ結果に含まれる前記ビジー率を前記第2のモニタ結果に含まれる単位時間あたりのアクセス数で除することにより得られる値との差に対して、前記ビジー率が上限に達した場合の単位時間あたりのアクセス数及び所定の係数を乗ずることで得られる値を、前記第1の指標の値から引く処理
    を含む請求項1乃至3のいずれか1つ記載のプログラム。
  5. 前記記憶装置のビジー率及び単位時間あたりのアクセス数の第3のモニタ結果を取得する処理と、
    取得した前記第3のモニタ結果から算出される、前記ビジー率についての第2の指標の値と、当該第2の指標の過去の値の平均値との差が所定値以上である場合には、前記第1の指標の値を初期値に戻す処理と、
    を、さらに前記コンピュータに実行させるための請求項4記載のプログラム。
  6. 第1の記憶領域と第2の記憶領域とを備える記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得する処理と、
    取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断する処理と、
    前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知する処理と、
    前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得する処理と、
    少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新する処理と、
    取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出する処理と、
    前記第4のアクセス数を、前記制御部に対して通知する処理と、
    を、コンピュータが実行する制御方法。
  7. 第1の記憶領域と第2の記憶領域とを備える記憶装置と、
    前記記憶装置における前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部と、
    処理部とを有し、
    前記処理部が、
    前記記憶装置のビジー率及び単位時間あたりのアクセス数の第1のモニタ結果を取得し、
    取得した前記第1のモニタ結果から、前記ビジー率についての第1の指標の値を設定し直すイベントが発生したか判断し、
    前記イベントが発生したと判断された場合には、前記第2の記憶領域についての単位時間あたりのアクセス数を、通知されたアクセス数以下に制御する制御部に対して、直前に通知された第1のアクセス数より小さい第2のアクセス数を通知し、
    前記記憶装置のビジー率及び単位時間あたりのアクセス数の第2のモニタ結果を取得し、
    少なくとも取得した前記第2のモニタ結果に基づき、前記第1の指標の値を更新し、
    取得した前記第2のモニタ結果に基づき、単位時間あたりの指定された第3のアクセス数に対応するビジー率と、単位時間あたりの第4のアクセス数に対応するビジー率との和が、更新した前記第1の指標の値となるように、前記単位時間あたりの第4のアクセス数を算出し、
    前記第4のアクセス数を、前記制御部に対して通知する
    コンピュータ。
JP2011224672A 2011-10-12 2011-10-12 制御方法及びプログラム、並びにコンピュータ Expired - Fee Related JP5853569B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011224672A JP5853569B2 (ja) 2011-10-12 2011-10-12 制御方法及びプログラム、並びにコンピュータ
US13/618,466 US8667186B2 (en) 2011-10-12 2012-09-14 IO control method and program and computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011224672A JP5853569B2 (ja) 2011-10-12 2011-10-12 制御方法及びプログラム、並びにコンピュータ

Publications (2)

Publication Number Publication Date
JP2013084177A true JP2013084177A (ja) 2013-05-09
JP5853569B2 JP5853569B2 (ja) 2016-02-09

Family

ID=48086773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011224672A Expired - Fee Related JP5853569B2 (ja) 2011-10-12 2011-10-12 制御方法及びプログラム、並びにコンピュータ

Country Status (2)

Country Link
US (1) US8667186B2 (ja)
JP (1) JP5853569B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015084143A (ja) * 2013-10-25 2015-04-30 富士通株式会社 ストレージ装置、ストレージ装置の制御方法およびストレージ装置制御プログラム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US20150205526A1 (en) * 2014-01-18 2015-07-23 International Business Machines Corporation Queuing latency feedback mechanism to improve i/o performance
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
US11610603B2 (en) * 2021-04-02 2023-03-21 Seagate Technology Llc Intelligent region utilization in a data storage device
CN116302720A (zh) * 2021-12-14 2023-06-23 富联精密电子(天津)有限公司 槽位绑定方法、系统、终端设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242441A (ja) * 1999-02-19 2000-09-08 Toshiba Corp ディスク制御方法およびその制御装置
JP2002108567A (ja) * 2000-09-28 2002-04-12 Hitachi Ltd 記憶制御装置
US20060143315A1 (en) * 2002-12-27 2006-06-29 Storage Technology Corporation System and method for quality of service management in a partitioned storage device or subsystem
JP2008293081A (ja) * 2007-05-22 2008-12-04 Kyocera Mita Corp 電子機器
JP2009087175A (ja) * 2007-10-02 2009-04-23 Hitachi Ltd ストレージ装置、処理制御装置、及び記憶システム
JP2009217475A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd ストレージシステム,ストレージ装置,ストレージシステムの制御方法および制御プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3440219B2 (ja) 1999-08-02 2003-08-25 富士通株式会社 入出力装置及びディスク・タイムシェアリング方法
US6772285B2 (en) * 2000-11-30 2004-08-03 Emc Corporation System and method for identifying busy disk storage units
JP2002182859A (ja) * 2000-12-12 2002-06-28 Hitachi Ltd ストレージシステムおよびその利用方法
JP2003140836A (ja) 2001-10-30 2003-05-16 Hitachi Ltd ストレージシステムの管理方法およびストレージシステム管理プログラムならびに記憶媒体およびストレージシステム
US7171668B2 (en) 2001-12-17 2007-01-30 International Business Machines Corporation Automatic data interpretation and implementation using performance capacity management framework over many servers
US7984324B2 (en) * 2008-03-27 2011-07-19 Emc Corporation Systems and methods for managing stalled storage devices
US20090300283A1 (en) * 2008-05-29 2009-12-03 Yutaka Kudo Method and apparatus for dissolving hot spots in storage systems
JP5471822B2 (ja) 2010-05-20 2014-04-16 富士通株式会社 入出力制御プログラム、情報処理装置および入出力制御方法
JP2012221340A (ja) * 2011-04-12 2012-11-12 Fujitsu Ltd 制御方法及びプログラム、並びにコンピュータ

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242441A (ja) * 1999-02-19 2000-09-08 Toshiba Corp ディスク制御方法およびその制御装置
JP2002108567A (ja) * 2000-09-28 2002-04-12 Hitachi Ltd 記憶制御装置
US20060143315A1 (en) * 2002-12-27 2006-06-29 Storage Technology Corporation System and method for quality of service management in a partitioned storage device or subsystem
JP2008293081A (ja) * 2007-05-22 2008-12-04 Kyocera Mita Corp 電子機器
JP2009087175A (ja) * 2007-10-02 2009-04-23 Hitachi Ltd ストレージ装置、処理制御装置、及び記憶システム
JP2009217475A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd ストレージシステム,ストレージ装置,ストレージシステムの制御方法および制御プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015084143A (ja) * 2013-10-25 2015-04-30 富士通株式会社 ストレージ装置、ストレージ装置の制御方法およびストレージ装置制御プログラム

Also Published As

Publication number Publication date
US8667186B2 (en) 2014-03-04
US20130097341A1 (en) 2013-04-18
JP5853569B2 (ja) 2016-02-09

Similar Documents

Publication Publication Date Title
JP5853569B2 (ja) 制御方法及びプログラム、並びにコンピュータ
US10439900B2 (en) Quality of service policy based load adaption
US20200127900A1 (en) Rule-based performance class access management for storage cluster performance guarantees
US9686352B2 (en) Saturation detection and admission control for storage devices
US20130227145A1 (en) Slice server rebalancing
US9342245B2 (en) Method and system for allocating a resource of a storage device to a storage optimization operation
US20180300066A1 (en) Method and device for managing disk pool
US20160364167A1 (en) Storage management device, storage management method, and computer-readable recording medium
JP2012221340A (ja) 制御方法及びプログラム、並びにコンピュータ
KR102469927B1 (ko) 분할 메모리 관리장치 및 방법
US8458399B2 (en) Methods and structure for determining cache size in a storage system
JP5471822B2 (ja) 入出力制御プログラム、情報処理装置および入出力制御方法
JP6394313B2 (ja) ストレージ管理装置、ストレージ管理方法及びストレージ管理プログラム
JP2015191324A (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
US9135064B2 (en) Fine grained adaptive throttling of background processes
JP2016115130A (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
US11550631B2 (en) Distribution of quantities of an increased workload portion into buckets representing operations
JP6323101B2 (ja) 配置制御プログラム、方法及び装置
JP2017194931A (ja) ストレージ管理装置、ストレージ装置管理方法及びストレージ装置管理プログラム
JP2019021185A (ja) 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム
US11436052B2 (en) Shared resource operational metric
JP6207193B2 (ja) サーバ数調整システムおよび方法ならびにプログラム
JP6984576B2 (ja) リソース決定装置、方法及びプログラム
JP6848278B2 (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
CN110727518A (zh) 一种数据处理方法及相关设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140603

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151123

R150 Certificate of patent or registration of utility model

Ref document number: 5853569

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees