JP2013210847A - ストレージシステム、ストレージ制御方法およびストレージ制御プログラム - Google Patents
ストレージシステム、ストレージ制御方法およびストレージ制御プログラム Download PDFInfo
- Publication number
- JP2013210847A JP2013210847A JP2012080651A JP2012080651A JP2013210847A JP 2013210847 A JP2013210847 A JP 2013210847A JP 2012080651 A JP2012080651 A JP 2012080651A JP 2012080651 A JP2012080651 A JP 2012080651A JP 2013210847 A JP2013210847 A JP 2013210847A
- Authority
- JP
- Japan
- Prior art keywords
- command
- control unit
- storage device
- storage
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
【解決手段】ストレージシステム1は、コマンドのリオーダリング機能を備える記憶装置10と、記憶装置10に対するアクセスを制御するストレージ制御装置20とを有する。ストレージ制御装置20は、例えば、記憶装置10に発行したコマンドのタイムアウトが発生してから所定期間において、記憶装置10に発行するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限して、発行したコマンドの実行順序が後回しになりにくくする。
【選択図】図1
Description
〔第1の実施の形態〕
図1は、第1の実施の形態に係るストレージシステムの構成例およびその動作例を示す図である。図1に示すストレージシステム1は、記憶装置10と、この記憶装置10に対するアクセスを制御するストレージ制御装置20とを備える。
図1の第1の動作例では、ストレージ制御装置20の送信部21は、読み出しコマンドC1,C2,C3を、この順序で記憶装置10に発行する。読み出しコマンドC1,C2,C3は、それぞれ、記憶装置10に記憶されたデータD1,D2,D3を読み出すためのものである。
ここで、記憶装置10のリオーダリング処理では、一般的に、ランダムアクセスのコマンドよりシーケンシャルアクセスのコマンドの方が優先的に実行される傾向がある。また、ランダムアクセスのコマンドは、シーケンシャルアクセスのコマンドより、アクセスされるデータサイズが小さいことが多い。
図2は、第2の実施の形態に係るストレージシステムの構成例を示す図である。図2に示すストレージシステム100は、CM(Controller Module)200およびDE(Drive Enclosure)300を含む。また、CM200にはホスト装置400が接続されている。
CM200は、CPU(Central Processing Unit)201によって装置全体が制御されている。CPU201には、RAM(Random Access Memory)202および複数の周辺機器が、バス209を介して接続されている。RAM202は、CM200の主記憶装置として使用され、CPU201に実行させるプログラムの少なくとも一部や、このプログラムによる処理に必要な各種データを一時的に記憶する。
コントローラ301は、HDD300a全体を制御する制御回路であり、例えばCPUなどを備える。RAM302は、コントローラ301が実行する処理に必要な各種のデータなどを記憶する。磁気ディスクドライブ303は、1つまたは複数の磁気ディスクを備え、コントローラ301による制御の下で磁気ディスクに対するデータの書き込みや磁気ディスクからのデータの読み出しを行う。
RAID制御部220は、DE300内のHDDごとにコマンドの実行状態を示すステータスが登録されたディスク管理テーブル250を参照可能になっている。RAID制御部220は、ディスク管理テーブル250を参照し、アクセス対象のRAIDグループに属する各HDDのステータスに応じて、コマンドの実行遅延が生じにくくなるように、ディスク制御部230からのコマンドの発行のさせ方を調整する。なお、ディスク管理テーブル250は、例えば、CM200のRAM202に一時的に記録される。
キュー制御部311は、コマンドキュー312に蓄積されたコマンドのうち、シンプルキューに設定されたコマンドの実行順を、それらのコマンドに応じた処理が短時間に完了するように適正化する。キュー制御部311は、基本的に、アクセス領域のLBA(Logical Block Address)が近いコマンドを連続して実行させることで、磁気ヘッドのシーク時間や磁気ディスクの回転待ち時間を短縮させる。
上記のようにコマンドのリオーダリングが行われることで、実行順が早まるコマンドと、実行順が遅くなるコマンドとが生じる。一般的に、RAID制御部220に対してシーケンシャルアクセスとランダムアクセスとが混在して要求された場合、上記のようなリオーダリング機能を有するHDDでは、ランダムアクセスよりシーケンシャルアクセスの方が優先的に実行される傾向がある。また、シーケンシャルアクセスが要求された場合より、ランダムアクセスが要求された場合の方が、HDDに発行されるコマンドによって指定されるアクセスの範囲が小さいことが多い。
この図6では、ステージングを実行するために、ディスク#0〜#3という4つのHDDが属するRAIDグループに対して、データの読み出しが要求された場合の例を挙げて説明する。また、例として、読み出し要求の対象とされたRAIDグループのRAIDレベルはRAID−5であり、ストライプデプスは、ブロック数「0x80」であるものとする。ここで言う「ブロック」とは、1つのLBAが指し示すHDD上の領域である。また、「ストライプデプス」とは、RAIDグループに属する各HDDにおいて1ストライプに対応する領域の大きさである。なお、“0x”は、16進数で表記されていることを示す。
「NORMAL」は、「HIGH」、「TIMEOUT」、「HIGH|TIMEOUT」のいずれでもない状態を示す。すなわち、「NORMAL」は、対応するHDDにおいて特に負荷が高くなく、コマンドの実行遅延量も特に大きくない通常状態を示す。
[ステップS12]RAID制御部220は、読み出しが要求されたデータが格納されているRAIDグループを判別する。ここでは例として、読み出しが要求されたデータが格納されているRAIDグループは、ディスク#0〜#3という4つのHDDが属し、RAIDレベルがRAID−5であるものとする。
まず、図8は、第2のコマンド発行制御について説明するための図である。
図8の例では、ホストI/O制御部210は、RAID制御部220に対してデータ#10の読み出しを要求する。読み出しを要求されたデータ#10は、3つの分割データ#10〜#12に分割されており、分割データ#10,#11,#12がそれぞれディスク#0,#1,#2の同一ストライプ番号の領域に記録されているものとする。また、ディスク#3における分割データ#10〜#12と同一ストライプ番号の領域には、分割データ#10〜#12を基に算出されたパリティ#10が記録されている。
[ステップS21]コマンド発行制御部222は、アクセス先のRAIDグループに属するHDDのうち、ステータスが「NORMAL」である各HDDから分割データおよびパリティを読み出すためのACBを、HDDごとに生成する。このとき、コマンド発行制御部222は、各ACBに、キューモードとしてシンプルキューを設定する。コマンド発行制御部222は、設定したACBをディスク制御部230に受け渡し、コマンドの発行を依頼する。
図10の例では、ホストI/O制御部210は、RAID制御部220に対してデータ#20の読み出しを要求する。読み出しを要求されたデータ#20は、6つの分割データ#20〜#25に分割されているものとする。そして、分割データ#20,#21,#22がそれぞれディスク#0,#1,#2の同一ストライプ番号の領域に記録され、分割データ#23,#24,#25がそれぞれディスク#3,#0,#1の同一ストライプ番号の領域に記録されているものとする。また、ディスク#3における分割データ#20〜#22と同一ストライプ番号の領域には、分割データ#20〜#22を基に算出されたパリティ#20が記録され、ディスク#2における分割データ#23〜#25と同一ストライプ番号の領域には、分割データ#23〜#25を基に算出されたパリティ#21が記録されている。
[ステップS31]コマンド発行制御部222は、アクセス先のRAIDグループに属するHDDのそれぞれから読み出すデータの中に、ストライプデプスより大きいサイズのデータがあるかを判定する。ストライプデプスより大きいサイズの読み出しデータがない場合には、ステップS32の処理が実行される。一方、ストライプデプスより大きいサイズの読み出しデータがある場合には、ステップS33の処理が実行される。
図13では例として、ホストI/O制御部210からRAID制御部220に対して、読み出し要求#1,#2,#3という3回の読み出し要求が順に行われたものとする。また、図13では例として、アクセス先のRAIDグループに属するディスク#0〜#3のうち、ディスク#0,#1のステータスが「HIGH」であり、ディスク#2,#3のステータスが「NORMAL」であるものとする。
[ステップS41]コマンド発行制御部222は、アクセス先のRAIDグループに属するHDDのそれぞれから読み出すデータの中に、ストライプデプスより大きいサイズのデータがあるかを判定する。ストライプデプスより大きいサイズの読み出しデータがない場合には、ステップS43の処理が実行される。一方、ストライプデプスより大きいサイズの読み出しデータが1つでもある場合には、ステップS42の処理が実行される。
[ステップS52]状態監視部231は、RAID管理テーブル240を参照して、アクセス先のHDDが属するRAIDグループを判別する。状態監視部231は、判別したRAIDグループに属する全HDDのコマンドキュー312に蓄積された未実行コマンドの数を判別し、これらの未実行コマンド数の平均値を計算する。
[ステップS53]ステップS51またはステップS52で「Yes」と判定された場合、アクセス先のHDDの負荷が過多になっていると判定される。このとき、状態監視部231は、ディスク管理テーブル250に登録された、アクセス先のHDDのステータスを、「HIGH」に更新する。なお、登録されているステータスが「TIMEOUT」の場合には、「HIGH|TIMEOUT」に更新される。また、登録されているステータスが「HIGH」または「HIGH|TIMEOUT」の場合には、そのまま維持される。
[ステップS57]状態監視部231は、ステップS56でコマンドが発行されてからの経過時間をカウントし、コマンド発行から所定時間内にHDDから応答があったかを判定する。所定時間内に応答があった場合には、ステップS60の処理が実行される。一方、所定時間内に応答がなかった場合には、ステップS58の処理が実行される。
[ステップS62]状態監視部231は、ディスク管理テーブル250に登録された、アクセス先のHDDのステータスを、「NORMAL」に更新する。ただし、登録されているステータスが「HIGH|TIMEOUT」の場合、状態監視部231は、ステータスを「HIGH」に更新する。
[ステップS71]RAID制御部220の状態判定部221は、アクセス対象のRAIDグループについて、コマンド発行制御部222が第3のコマンド発行制御(ステップS17)の実行を開始してから所定時間が経過したかを判定する。ここで言う経過時間とは、コマンド発行制御部222が、コマンド発行制御の種別を第3以外のコマンド発行制御から第3のコマンド発行制御に変更してからの経過時間を指す。実行開始から所定時間が経過した場合には、ステップS72の処理が実行される。一方、実行開始から所定時間が経過していない場合には、ステップS17の処理が実行される。
以下の第3の実施の形態は、第2の実施の形態のコマンド発行制御部222が、RAIDグループ単位でコマンド発行制御を行う代わりに、HDD単位でコマンド発行制御を行うように変形したものである。
[ステップS11a]RAID制御部220は、ホストI/O制御部210から読み出し要求を受け付ける。次のステップS12a以降の処理は、読み出しが要求されたデータが格納されているHDDごとに実行される。
以上の第3の実施の形態によれば、HDDからの読み出し速度の低下幅を抑制しながら、コマンドのタイムアウトの発生確率を低下させることができる。
(付記1) 記憶装置と、
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限する制御を行うコマンド発行制御部と、
前記コマンド発行制御部によって前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する送信部と、
を有することを特徴とするストレージシステム。
前記未実行のコマンドの数が前記しきい値以上であると判定した場合には、送信するコマンドによって前記記憶装置が実行するアクセスがシーケンシャルアクセスかランダムアクセスかを判定し、
ランダムアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドを受信順に実行させるモードを設定し、シーケンシャルアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドの実行順の変更を許容するモードを設定する、
ことを特徴とする付記4記載のストレージシステム。
複数の記憶装置と、
データが異なる記憶装置に冗長化されるように前記複数の記憶装置へのデータの書き込みを制御する書き込み制御部と、
を有し、
前記コマンド発行制御部は、前記複数の記憶装置の少なくとも1つが、送信されたコマンドのタイムアウトが発生してから所定時間が経過していないタイムアウト状態にある場合に、前記複数の記憶装置のうち少なくとも前記タイムアウト状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを、前記所定サイズ以下に制限する、
ことを特徴とする付記1記載のストレージシステム。
前記複数の記憶装置のそれぞれに送信されたコマンドのうち各記憶装置において未実行のコマンドの数に基づいて、前記複数の記憶装置が高負荷状態であるか否かを記憶装置ごとに判定し、
前記複数の記憶装置の少なくとも1つが前記高負荷状態にある場合には、前記複数の記憶装置のうち少なくとも前記高負荷状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止する、
ことを特徴とする付記8記載のストレージシステム。
前記コマンド発行制御部は、前記複数の記憶装置に対してデータ読み出しを指示する読み出しコマンドが送信される際に、前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数以下である場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止するとともに、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置からのデータの読み出しを抑止し、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置から読み出すべきデータを、他のいずれかの記憶装置から読み出したパリティを用いて復元する、
ことを特徴とする付記9記載のストレージシステム。
前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数より多い場合には、前記複数の記憶装置の中に前記高負荷状態にある記憶装置があるかを判定し、
前記高負荷状態にある記憶装置が1台もない場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限し、
前記高負荷状態にある記憶装置がある場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止する、
ことを特徴とする付記10記載のストレージシステム。
前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数より多く、かつ、前記高負荷状態にある記憶装置がある場合には、送信する読み出しコマンドによって送信先の記憶装置が実行するアクセスがシーケンシャルアクセスかランダムアクセスかを判定し、
ランダムアクセスと判定した場合に、前記複数の記憶装置に送信するコマンドに、送信先の記憶装置にコマンドを受信順に実行させるモードを設定し、シーケンシャルアクセスと判定した場合に、前記複数の記憶装置に送信するコマンドに、送信先の記憶装置にコマンドの実行順の変更を許容するモードを設定する、
ことを特徴とする付記11記載のストレージシステム。
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限し、
前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する、
ことを特徴とするストレージ制御方法。
ランダムアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドを受信順に実行させるモードを設定し、シーケンシャルアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドの実行順の変更を許容するモードを設定する、
ことを特徴とする付記16記載のストレージ制御方法。
前記複数の記憶装置に対するアクセスを制御するとともに、データが異なる記憶装置に冗長化されるように前記複数の記憶装置へのデータの書き込みを制御し、
前記複数の記憶装置の少なくとも1つが、送信されたコマンドのタイムアウトが発生してから所定時間が経過していないタイムアウト状態にある場合に、前記複数の記憶装置のうち少なくとも前記タイムアウト状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを、前記所定サイズ以下に制限する、
処理を含むことを特徴とする付記13記載のストレージ制御方法。
前記複数の記憶装置の少なくとも1つが前記高負荷状態にある場合、前記複数の記憶装置のうち少なくとも前記高負荷状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止する、
ことを特徴とする付記18記載のストレージ制御方法。
コンピュータに、
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限し、
前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する、
処理を実行させることを特徴とするストレージ制御プログラム。
10 記憶装置
11 コマンドキュー
20 ストレージ制御装置
21 送信部
22 コマンド発行制御部
Claims (14)
- 記憶装置と、
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限する制御を行うコマンド発行制御部と、
前記コマンド発行制御部によって前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する送信部と、
を有することを特徴とするストレージシステム。 - 前記コマンド発行制御部は、前記記憶装置に送信されたコマンドのタイムアウトが発生してから所定期間において、前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限することを特徴とする請求項1記載のストレージシステム。
- 前記コマンド発行制御部は、前記記憶装置に送信されたコマンドのうち前記記憶装置において未実行のコマンドの数に基づいて、前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限するか否かを決定することを特徴とする請求項2記載のストレージシステム。
- 前記コマンド発行制御部は、前記未実行のコマンドの数が所定のしきい値以上であると判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置に受信順にコマンドを実行させるモードを設定することを特徴とする請求項3記載のストレージシステム。
- 前記コマンド発行制御部は、
前記未実行のコマンドの数が前記しきい値以上であると判定した場合には、送信するコマンドによって前記記憶装置が実行するアクセスがシーケンシャルアクセスかランダムアクセスかを判定し、
ランダムアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドを受信順に実行させるモードを設定し、シーケンシャルアクセスと判定した場合には、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドの実行順の変更を許容するモードを設定する、
ことを特徴とする請求項4記載のストレージシステム。 - 前記コマンド発行制御部は、前記記憶装置に送信するコマンドに、前記記憶装置にコマンドを受信順に実行させるモードに設定する制御を開始した後、一定時間は、前記記憶装置に発行するコマンドに当該モードを設定する制御を継続することを特徴とする請求項4記載のストレージシステム。
- 前記コマンド発行制御部は、前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限する制御を開始した後、一定時間は、前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限する制御を継続することを特徴とする請求項1〜6のいずれか1項に記載のストレージシステム。
- 前記ストレージシステムは、
複数の記憶装置と、
データが異なる記憶装置に冗長化されるように前記複数の記憶装置へのデータの書き込みを制御する書き込み制御部と、
を有し、
前記コマンド発行制御部は、前記複数の記憶装置の少なくとも1つが、送信されたコマンドのタイムアウトが発生してから所定時間が経過していないタイムアウト状態にある場合に、前記複数の記憶装置のうち少なくとも前記タイムアウト状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを、前記所定サイズ以下に制限する、
ことを特徴とする請求項1記載のストレージシステム。 - 前記コマンド発行制御部は、
前記複数の記憶装置のそれぞれに送信されたコマンドのうち各記憶装置において未実行のコマンドの数に基づいて、前記複数の記憶装置が高負荷状態であるか否かを記憶装置ごとに判定し、
前記複数の記憶装置の少なくとも1つが前記高負荷状態にある場合には、前記複数の記憶装置のうち少なくとも前記高負荷状態にある記憶装置に対して送信するコマンドに含める前記書き込みデータサイズまたは前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止する、
ことを特徴とする請求項8記載のストレージシステム。 - 前記書き込み制御部は、前記複数の記憶装置へのデータの書き込みを、パリティを用いることでデータが異なる記憶装置に冗長化されるように制御し、
前記コマンド発行制御部は、前記複数の記憶装置に対してデータ読み出しを指示する読み出しコマンドが送信される際に、前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数以下である場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止するとともに、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置からのデータの読み出しを抑止し、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置から読み出すべきデータを、他のいずれかの記憶装置から読み出したパリティを用いて復元する、
ことを特徴とする請求項9記載のストレージシステム。 - 前記コマンド発行制御部は、
前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数より多い場合には、前記複数の記憶装置の中に前記高負荷状態にある記憶装置があるかを判定し、
前記高負荷状態にある記憶装置が1台もない場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限し、
前記高負荷状態にある記憶装置がある場合には、前記複数の記憶装置に対して送信する読み出しコマンドに含める前記読み出しデータサイズを前記所定サイズ以下に制限する制御の実行を抑止する、
ことを特徴とする請求項10記載のストレージシステム。 - 前記コマンド発行制御部は、
前記複数の記憶装置のうち、前記タイムアウト状態または前記高負荷状態のいずれかの状態にある記憶装置が、1ストライプに含まれるパリティの数より多く、かつ、前記高負荷状態にある記憶装置がある場合には、送信する読み出しコマンドによって送信先の記憶装置が実行するアクセスがシーケンシャルアクセスかランダムアクセスかを判定し、
ランダムアクセスと判定した場合に、前記複数の記憶装置に送信するコマンドに、送信先の記憶装置にコマンドを受信順に実行させるモードを設定し、シーケンシャルアクセスと判定した場合に、前記複数の記憶装置に送信するコマンドに、送信先の記憶装置にコマンドの実行順の変更を許容するモードを設定する、
ことを特徴とする請求項11記載のストレージシステム。 - 記憶装置に対するアクセスを制御する制御装置におけるストレージ制御方法であって、
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限し、
前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する、
ことを特徴とするストレージ制御方法。 - 記憶装置に対するアクセスを制御するためのストレージ制御プログラムにおいて、
コンピュータに、
前記記憶装置に対してデータ書き込みまたはデータ読み出しを指示するコマンドに含める書き込みデータサイズまたは読み出しデータサイズを、所定サイズ以下に制限し、
前記書き込みデータサイズまたは前記読み出しデータサイズが制限されたコマンドを前記記憶装置に送信する、
処理を実行させることを特徴とするストレージ制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012080651A JP5958020B2 (ja) | 2012-03-30 | 2012-03-30 | ストレージシステム |
US13/845,238 US20130262762A1 (en) | 2012-03-30 | 2013-03-18 | Storage system and storage control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012080651A JP5958020B2 (ja) | 2012-03-30 | 2012-03-30 | ストレージシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013210847A true JP2013210847A (ja) | 2013-10-10 |
JP5958020B2 JP5958020B2 (ja) | 2016-07-27 |
Family
ID=49236640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012080651A Expired - Fee Related JP5958020B2 (ja) | 2012-03-30 | 2012-03-30 | ストレージシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20130262762A1 (ja) |
JP (1) | JP5958020B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016212513A (ja) * | 2015-04-30 | 2016-12-15 | 富士通株式会社 | ストレージシステム、制御装置および制御プログラム |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819208B2 (en) | 2010-03-05 | 2014-08-26 | Solidfire, Inc. | Data deletion in a distributed data storage system |
US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
US9378075B2 (en) * | 2013-05-15 | 2016-06-28 | Amazon Technologies, Inc. | Reducing interference through controlled data access |
EP2843537B1 (en) * | 2013-08-30 | 2019-03-27 | Fujitsu Limited | Method and systems for simulating a workload of a storage system |
US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
US10395334B2 (en) * | 2014-04-11 | 2019-08-27 | Sony Corporation | Three-dimensional deposition device and three-dimensional deposition method |
JP2016057876A (ja) * | 2014-09-10 | 2016-04-21 | 富士通株式会社 | 情報処理装置、入出力制御プログラム、及び入出力制御方法 |
US9600205B1 (en) * | 2014-09-22 | 2017-03-21 | Western Digital Technologies, Inc. | Power aware power safe write buffer |
US9569118B2 (en) * | 2014-12-30 | 2017-02-14 | International Business Machines Corporation | Promoting consistent response times in a data storage system having multiple data retrieval mechanisms |
US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
US10365958B2 (en) * | 2016-09-13 | 2019-07-30 | Hewlett Packard Enterprise Development Lp | Storage drive management to fail a storage drive based on adjustable failure criteria |
US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
KR20180092435A (ko) * | 2017-02-09 | 2018-08-20 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
KR102293069B1 (ko) * | 2017-09-08 | 2021-08-27 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치, 제어기, 그리고 스토리지 장치의 동작 방법 |
KR20190032809A (ko) * | 2017-09-20 | 2019-03-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
KR102327878B1 (ko) * | 2017-11-07 | 2021-11-17 | 삼성전자주식회사 | 반도체 장치 및 반도체 시스템 |
US10963189B1 (en) * | 2018-11-18 | 2021-03-30 | Pure Storage, Inc. | Coalescing write operations in a cloud-based storage system |
JP2020115250A (ja) * | 2019-01-17 | 2020-07-30 | キオクシア株式会社 | ストレージ装置およびコマンド処理方法 |
US11561706B2 (en) | 2019-11-20 | 2023-01-24 | International Business Machines Corporation | Storage allocation enhancement of microservices based on phases of a microservice run |
US11893280B2 (en) * | 2021-08-27 | 2024-02-06 | Micron Technology, Inc. | Concurrent command limiter for a memory system |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07319627A (ja) * | 1994-05-24 | 1995-12-08 | Mitsubishi Electric Corp | 外部記憶装置 |
JP2000003309A (ja) * | 1998-06-15 | 2000-01-07 | Fujitsu Ltd | 記憶装置 |
JP2000298553A (ja) * | 1999-04-15 | 2000-10-24 | Toshiba Corp | コンピュータシステム及びそのi/o装置の制御方法 |
JP2001043032A (ja) * | 1999-08-02 | 2001-02-16 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2001043028A (ja) * | 1999-07-29 | 2001-02-16 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2001147886A (ja) * | 1999-11-19 | 2001-05-29 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2002023962A (ja) * | 2000-07-07 | 2002-01-25 | Fujitsu Ltd | ディスク装置及び制御方法 |
JP2005182658A (ja) * | 2003-12-22 | 2005-07-07 | Sony Corp | データ記録再生装置及びデータ記録再生方法 |
JP2006309579A (ja) * | 2005-04-28 | 2006-11-09 | Hitachi Ltd | 記憶制御装置及びストレージシステム |
WO2009107213A1 (ja) * | 2008-02-28 | 2009-09-03 | 富士通株式会社 | ストレージ装置、ストレージ制御装置、データ転送集積回路、および、ストレージ制御方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442752A (en) * | 1992-01-24 | 1995-08-15 | International Business Machines Corporation | Data storage method for DASD arrays using striping based on file length |
US7606944B2 (en) * | 2007-05-10 | 2009-10-20 | Dot Hill Systems Corporation | Dynamic input/output optimization within a storage controller |
US8495238B1 (en) * | 2008-05-28 | 2013-07-23 | Google Inc. | Facilitating self-tuning traffic shaping without a central traffic manager |
US20100070656A1 (en) * | 2008-09-12 | 2010-03-18 | Atto Technology, Inc. | System and method for enhanced load balancing in a storage system |
-
2012
- 2012-03-30 JP JP2012080651A patent/JP5958020B2/ja not_active Expired - Fee Related
-
2013
- 2013-03-18 US US13/845,238 patent/US20130262762A1/en not_active Abandoned
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07319627A (ja) * | 1994-05-24 | 1995-12-08 | Mitsubishi Electric Corp | 外部記憶装置 |
JP2000003309A (ja) * | 1998-06-15 | 2000-01-07 | Fujitsu Ltd | 記憶装置 |
JP2000298553A (ja) * | 1999-04-15 | 2000-10-24 | Toshiba Corp | コンピュータシステム及びそのi/o装置の制御方法 |
JP2001043028A (ja) * | 1999-07-29 | 2001-02-16 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2001043032A (ja) * | 1999-08-02 | 2001-02-16 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2001147886A (ja) * | 1999-11-19 | 2001-05-29 | Fujitsu Ltd | ディスク・タイムシェアリング装置及び方法 |
JP2002023962A (ja) * | 2000-07-07 | 2002-01-25 | Fujitsu Ltd | ディスク装置及び制御方法 |
JP2005182658A (ja) * | 2003-12-22 | 2005-07-07 | Sony Corp | データ記録再生装置及びデータ記録再生方法 |
JP2006309579A (ja) * | 2005-04-28 | 2006-11-09 | Hitachi Ltd | 記憶制御装置及びストレージシステム |
WO2009107213A1 (ja) * | 2008-02-28 | 2009-09-03 | 富士通株式会社 | ストレージ装置、ストレージ制御装置、データ転送集積回路、および、ストレージ制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016212513A (ja) * | 2015-04-30 | 2016-12-15 | 富士通株式会社 | ストレージシステム、制御装置および制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5958020B2 (ja) | 2016-07-27 |
US20130262762A1 (en) | 2013-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5958020B2 (ja) | ストレージシステム | |
US7730257B2 (en) | Method and computer program product to increase I/O write performance in a redundant array | |
US7975168B2 (en) | Storage system executing parallel correction write | |
JP5807458B2 (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
US8060707B2 (en) | Minimization of read response time | |
US8019937B2 (en) | Applying storage device commit-cached-data-to-media functionality to improve data security in systems that allow storage devices to cache writes | |
JP6111575B2 (ja) | ストレージ装置、内部処理制御方法および内部処理制御プログラム | |
US10031808B2 (en) | Raid 10 reads optimized for solid state drives | |
US20100199039A1 (en) | Systems and Methods for Optimizing Host Reads and Cache Destages in a Raid System | |
KR20050013938A (ko) | 하드 디스크 드라이브에서의 자율적인 데이터 스크럽시스템 및 방법 | |
US20170185520A1 (en) | Information processing apparatus and cache control method | |
JP2006146833A (ja) | ディスク装置の整合性検査支援方法およびディスクアレイ装置の整合性検査方法 | |
US9632945B2 (en) | Destage grouping for sequential fast write tracks | |
JP2017041076A (ja) | ストレージ制御装置、ストレージ制御方法、およびストレージ制御プログラム | |
US8769195B2 (en) | Storage apparatus and storage apparatus control method | |
US9298397B2 (en) | Nonvolatile storage thresholding for ultra-SSD, SSD, and HDD drive intermix | |
JP6721821B2 (ja) | ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム | |
JP5505329B2 (ja) | ディスクアレイ装置及びその制御方法 | |
US8549244B2 (en) | Device and method of copying data between disks having equal or different rotational rates | |
JP4430092B2 (ja) | Raid装置、raid装置の制御部およびraid装置のライトバック制御方法 | |
JP6481490B2 (ja) | ストレージシステム、制御装置および制御プログラム | |
US11232036B2 (en) | Managing write access to data storage devices for spontaneous de-staging of cache | |
JP6107761B2 (ja) | ディスクアレイ装置およびディスクアレイ装置の制御方法 | |
JP5691227B2 (ja) | ストレージ装置及びその制御方法 | |
JP2012194867A (ja) | ストレージ装置および制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151014 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151020 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151218 |
|
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: 20160524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160606 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5958020 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |