JP6554990B2 - ストレージ制御装置およびストレージ制御プログラム - Google Patents

ストレージ制御装置およびストレージ制御プログラム Download PDF

Info

Publication number
JP6554990B2
JP6554990B2 JP2015158692A JP2015158692A JP6554990B2 JP 6554990 B2 JP6554990 B2 JP 6554990B2 JP 2015158692 A JP2015158692 A JP 2015158692A JP 2015158692 A JP2015158692 A JP 2015158692A JP 6554990 B2 JP6554990 B2 JP 6554990B2
Authority
JP
Japan
Prior art keywords
capacity
amount
storage
expansion
user
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.)
Active
Application number
JP2015158692A
Other languages
English (en)
Other versions
JP2017037501A (ja
Inventor
和晋 須永
和晋 須永
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 JP2015158692A priority Critical patent/JP6554990B2/ja
Priority to US15/189,304 priority patent/US10133517B2/en
Publication of JP2017037501A publication Critical patent/JP2017037501A/ja
Application granted granted Critical
Publication of JP6554990B2 publication Critical patent/JP6554990B2/ja
Active 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Description

本発明はストレージ制御装置およびストレージ制御プログラムに関する。
現在、データの保存にストレージ装置が利用されている。ストレージ装置は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの記憶装置を複数搭載して大容量の記憶領域を利用可能とする。ストレージ装置は、記憶装置に対するデータの書き込みや読み出しのアクセス制御を行うストレージ制御装置に接続される。ストレージ装置は、ストレージ制御装置を内蔵することもある。
ここで、例えばSSDのように内蔵の記憶素子への書き込み回数に制限がある記憶装置が存在する。このような記憶装置では、ウェアレベリング(wear leveling)と呼ばれる製品寿命を延ばす制御が行われることがある。ウェアレベリングでは、記憶装置の物理的な記憶領域の一部をウェアレベリング用の余裕容量として確保する。そして、記憶装置は、ユーザに割り当てられた特定の記憶領域に対して書き込みが集中しないよう、余裕容量を用いて書き込みを分散させる。これにより、記憶素子毎の被書き込み回数の平準化を図れ、記憶装置の製品寿命を延ばせる。なお、余裕容量として確保された記憶領域は、例えば記憶装置のファームウェアによりユーザからは隠蔽される。
例えば、フラッシュメモリを搭載したストレージ装置において、フラッシュメモリの消去回数の制約を考慮した代替領域容量の設定を設け、フラッシュメモリから構成される記憶領域の耐用年数を向上させる提案がある。また、論理ボリュームデータの完全消去時、フラッシュメモリのチップ消去機能を用いて完全消去することで、データ上書きを複数回行う消去方法を実施するよりもデータの書き換え回数増加を抑制し、フラッシュメモリドライブの耐久寿命を延ばす提案もある。更に、フラッシュメモリについて、予備領域の有効セクタ数と使用済および使用中のセクタ数の比率を基に、寿命までの書換可能回数を算出する方法が考えられている。
特開2009−301525号公報 特開2008−70935号公報 特開平11−73378号公報
上記のように、記憶装置(例えばSSD)には、ウェアレベリング用の余裕容量を備えるものがある。そこで、余裕容量からユーザ容量を拡張することが考えられる。ところが、余裕容量のサイズは、記憶装置の保証期間内における総書き込み可能データ量(TBW:Total Bytes Witten)に影響する。具体的には、ユーザ容量に対し、余裕容量が大きいほどTBWも増加し、余裕容量が小さいほどTBWも低下する。このため、記憶装置に対して実際に発生する書き込み量によっては、記憶装置に対する累積の書き込み量がTBWを上回る可能性がある。累積の書き込み量がTBWを上回ると、記憶装置におけるデータ保存の信頼性が低下するおそれがあるという問題がある。
1つの側面では、本発明は、データ保存の信頼性を維持できるストレージ制御装置およびストレージ制御プログラムを提供することを目的とする。
1つの態様では、記憶装置に対するアクセスを制御するストレージ制御装置が提供される。このストレージ制御装置は記憶部と制御部とを有する。記憶部は、記憶装置の余裕容量およびユーザに割り当てるユーザ容量に対する記憶装置の保証期間内の総書き込み可能データ量の関係を示す管理情報を記憶する。制御部は、現状のユーザ容量と余裕容量とを記憶装置から取得し、所定のタイミングで、記憶装置のデータの累積書き込み量と稼働時間とから保証期間内の最大書き込み量を予測し、余裕容量を用いてユーザ容量を拡張する際に、管理情報に基づいて、拡張後の総書き込み可能データ量が最大書き込み量を下回らないよう拡張量を制限し、制限した拡張量に基づいてユーザ容量を拡張する。
また、1つの態様では、記憶装置に対するアクセスを制御するコンピュータによって実行されるストレージ制御プログラムが提供される。このストレージ制御プログラムは、コンピュータに、記憶装置における現状の余裕容量およびユーザに割り当てられているユーザ容量を記憶装置から取得し、所定のタイミングで、記憶装置のデータの累積書き込み量と稼働時間とから記憶装置の保証期間内の最大書き込み量を予測し、余裕容量を用いてユーザ容量を拡張する際に、余裕容量およびユーザ容量に対する保証期間内の総書き込み可能データ量の関係を示す管理情報に基づいて、拡張後の総書き込み可能データ量が最大書き込み量を下回らないよう拡張量を制限し、制限した拡張量に基づいてユーザ容量を拡張する、処理を実行させる。
1つの側面では、データ保存の信頼性を維持できる。
第1の実施の形態のストレージ制御装置を示す図である。 第2の実施の形態の情報処理システムを示す図である。 ストレージ装置のハードウェア例を示す図である。 管理サーバのハードウェア例を示す図である。 CMの機能例を示す図である。 RAID管理テーブルの例を示す図である。 TBW管理テーブルの例を示す図である。 SSDのユーザ容量とTBWとの相関の例を示す図である。 拡張量上限管理テーブルの例を示す図である。 テーブル作成処理の例を示すフローチャートである。 拡張量上限の決定処理の例を示すフローチャートである。 拡張処理の例を示すフローチャートである。 ユーザ容量拡張の具体例を示す図である。 論理容量の追加例を示す図である。
以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態のストレージ制御装置を示す図である。ストレージ制御装置1は、記憶装置2に対するデータアクセスを制御する。記憶装置2は、書き込み回数に上限がある記憶装置であり、例えばSSDである。ストレージ制御装置1は、コントローラモジュールまたは単にコントローラと呼ばれることもある。
記憶装置2の記憶領域の全容量は、余裕容量およびユーザ容量(何れもバイトなどのデータ量の単位で表わされる量)を含む。余裕容量は、記憶装置2におけるウェアレベリング用の記憶容量である。余裕容量として、初期段階では、予め定められたサイズの記憶領域が確保されている。ユーザ容量は、ユーザによるデータ格納が可能な領域としてユーザに割り当て済の記憶容量である。
通常、余裕容量以外の空き容量が記憶装置2にあれば、当該空き容量の一部をユーザ容量として割り当て、ユーザ容量を拡張できる。しかし、空き容量が不足すると、当該空き容量のみからは十分な容量をユーザ容量に割けなくなる。そこで、ストレージ制御装置1では、余裕容量からもユーザ容量を割り当てる機能を提供する。
ストレージ制御装置1は、記憶部1aおよび制御部1bを有する。記憶部1aは、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、フラッシュメモリなどの不揮発性記憶装置でもよい。制御部1bは、例えばプロセッサである。プロセッサは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。また、制御部1bは、マルチプロセッサであってもよい。
記憶部1aは、記憶装置2のうちユーザに割り当てるユーザ容量および余裕容量に対する記憶装置2の保証期間内の総書き込み可能データ量(TBW)の関係を示す管理情報T1を記憶する。管理情報T1は、余裕容量からユーザ容量を割り当てる場合における、ユーザ容量とTBWとの相関関係を示す情報である。TBWは、記憶装置2の製品としての保証期間内において保証される書き込み可能な総データ量である。
図1では、管理情報T1の内容をグラフにより図示している。グラフの原点は、余裕容量からユーザ容量に割り当てられている記憶容量が“0”であることを示す。例えば、当該グラフの横軸には、ユーザ容量として、“A0”、“A1”、“A2”、“A3”(A0<A1<A2<A3)が示されている。“A0”は、余裕容量を用いた拡張を行う前のユーザ容量である(余裕容量が最大の状態)。“A1”、“A2”、“A3”は、余裕容量の一部を割いて拡張した後のユーザ容量の値である。すなわち、ユーザ容量が“A1”、“A2”、“A3”と大きくなるほど、余裕容量が小さくなる。
図1のグラフの縦軸には、TBWの値(例えば、バイトなどのデータ量の単位で表わされる量)として、“B0”、“B1”、“B2”、“B3”(B0>B1>B2>B3)が示されている。“B0”は、ユーザ容量が“A0”である場合のTBWである。管理情報T1によれば、余裕容量を用いてユーザ容量を拡張する際の拡張量が大きいほど、TBWが低下することが分かる。
制御部1bは、現状のユーザ容量と余裕容量とを記憶装置2から取得する。これにより、制御部1bは、記憶装置2の容量構成が現在どのようになっているかを確認する。制御部1bは、所定のタイミングで、記憶装置2のデータの累積書き込み量と稼働時間とから記憶装置2に対する保証期間内の最大書き込み量を予測する。所定のタイミングは、例えば、1日1回などの周期的なタイミングでもよいし、ユーザ容量に格納済のデータ量の当該ユーザ容量に対する割合に応じたタイミング(例えば、80%使用済となったタイミングなど)でもよい。制御部1bは、例えば累積書き込み量、稼働時間および保証期間(例えば、5年や10年など)の情報を記憶装置2から取得することができる。そして、制御部1bは、次の式(1)により保証期間内の最大書き込み量を予測する。
最大書き込み量=累積書き込み量×(保証期間/稼働時間) ・・・(1)
制御部1bは、余裕容量を用いてユーザ容量を拡張する際に、記憶部1aに記憶された管理情報T1に基づいて、拡張後の総書き込み可能データ量(TBW)が最大書き込み量を下回らないように拡張量を制限する。
例えば、現状のユーザ容量が“A0”であり、式(1)により予測される最大書き込み量が“B2”である場合を考える。この場合、ユーザ容量“A1”でのTBWは、“B1”である。B1>B2である。すなわち、TBWが保証期間内に予測される最大書き込み量を上回っている。よって、ユーザ容量を“A1”まで拡張することは許容される(この場合、拡張量は“A1−A0”(“A1”と“A0”との差分)である。
一方、ユーザ容量“A3”でのTBWは、“B3”である。B3<B2である。すなわち、TBWが保証期間内に予測される最大書き込み量を下回っている。よって、ユーザ容量を“A3”まで拡張することは許容されない。
この場合、余裕容量を用いた拡張が許容されるのは、ユーザ容量“A2”までである。ユーザ容量が“A2”であれば、上記の予測される最大書き込み量“B2”と、TBW“B2”とが一致し、TBWが保証期間内に予測される最大書き込み量を下回らないからである。すなわち、余裕容量を用いてユーザ容量を拡張する際に許容される拡張量の上限を、“A2−A0”とすれば、TBWが保証期間内に予測される最大書き込み量を下回ることはない。このため、制御部1bは、余裕容量を用いてユーザ容量を拡張する場合の拡張量を“A2−A0”以下に制限する。
これにより、データ保存の信頼性を維持できる。具体的には、記憶装置2において、ウェアレベリング用の余裕容量によりユーザ容量を拡張する際、余裕容量減少に伴うTBW低下が問題となる。余裕容量を用いて際限なくユーザ容量を拡張すると、TBWが低下して、記憶装置2の記憶素子に対する書き込み回数が当該記憶素子の許容回数上限を超過するおそれがあるからである。許容回数上限を超えた書き込みが生じると、当該記憶素子を用いて記憶しているデータが消失したり、当該記憶素子に対して正常な書き込みを行えなかったりする可能性が増す。このため、記憶装置2に対するデータ保存の信頼性が低下する。
そこで、ストレージ制御装置1は、ウェアレベリング用の余裕容量によりユーザ容量を拡張する際、余裕容量減少に伴うTBW低下を考慮し、TBWが保証期間内の予測される最大書き込み量を下回らないよう拡張量を制限する。このようにすれば、ユーザ容量の拡張後の運用において、記憶装置2の記憶素子に対する書き込み回数が当該記憶素子の許容回数上限を超過する可能性を低減できる。このため、上記のようなデータの消失や、記憶素子に対する書き込みが行えなくなる可能性を低減でき、記憶装置2によるデータ保存の信頼性を保つことができる。
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムを示す図である。第2の実施の形態の情報処理システムは、ストレージ装置10、管理サーバ20および業務サーバ30を含む。ストレージ装置10および業務サーバ30は、SAN(Storage Area Network)5に接続されている。SAN5は、ストレージ装置10に対する高速アクセスに適したネットワークである。ストレージ装置10、管理サーバ20および業務サーバ30は、LAN(Local Area Network)6に接続されている。LAN6は、管理サーバ20により、ストレージ装置10や業務サーバ30の運用管理に用いられるネットワークである。
ストレージ装置10は、複数のSSDを内蔵し、業務サーバ30の処理に用いられるデータを記憶する。ストレージ装置10は、データの書き込みコマンドを業務サーバ30から受信すると、内蔵のSSDにデータを書き込む。ストレージ装置10は、書き込み結果を業務サーバ30に送信する。ストレージ装置10は、データの読み出しコマンドを業務サーバ30から受信すると、内蔵のSSDからデータを読み出し、読み出したデータを業務サーバ30に送信する。ストレージ装置10は、SSDと併せてHDDを内蔵してもよい。
管理サーバ20は、ストレージ装置10の運用管理を行うサーバコンピュータである。管理サーバ20は、例えば、LAN6を介してストレージ装置10に対する動作制御の設定を行う。管理サーバ20は、ストレージ装置10により実行されるプログラム(例えば、ファームウェアのプログラム)を、LAN6を介してストレージ装置10に送信することもある。
業務サーバ30は、ストレージ装置10に格納されたデータにアクセスするサーバコンピュータである。業務サーバ30は、業務用のアプリケーションのプログラムを実行し、業務処理サービスをユーザに提供する。
図3は、ストレージ装置のハードウェア例を示す図である。ストレージ装置10は、CM(Controller Module)100およびDE(Drive Enclosure)200を有する。CM100は、業務サーバ30からの要求に応じたDE200に対するデータアクセスを制御する。CM100は、DE200が内蔵する複数のSSD(またはHDD)を組み合わせて論理ボリュームを作成し、ユーザに割り当てる。また、CM100は、管理サーバ20のWebブラウザに運用管理用のGUI(Graphical User Interface)を提供する。例えば、システムの管理者は、管理サーバ20のWebブラウザが表示するGUIを操作して、ユーザに割り当てる論理ボリュームのサイズの拡張をCM100に指示できる。CM100は、第1の実施の形態のストレージ制御装置1の一例である。
CM100は、プロセッサ101、RAM102、NVRAM(Non-Volatile RAM)103、CA(Channel Adapter)104、NA(Network Adapter)105、DI(Drive Interface)106および読み取り装置107を有する。
プロセッサ101は、CM100の情報処理を制御する。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU、DSP、ASICまたはFPGAなどである。プロセッサ101は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組み合わせであってもよい。
RAM102は、CM100の主記憶装置である。RAM102は、プロセッサ101に実行させるファームウェアのプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、プロセッサ101による処理に用いる各種データを記憶する。
NVRAM103は、CM100の補助記憶装置である。NVRAM103は、例えば、不揮発性の半導体メモリである。NVRAM103は、ファームウェアのプログラムや各種データなどを記憶する。
CA104は、SAN5を介して業務サーバ30と通信するためのインタフェースである。例えば、CA104として、iSCSI(Internet Small Computer System Interface)や、ファイバチャネル(FC:Fibre Channel)などのインタフェースを用いることができる。
NA105は、LAN6を介して管理サーバ20と通信するためのインタフェースである。例えば、NA105として、イーサネット(登録商標)のインタフェースを用いることができる。
DI106は、DE200と通信するためのインタフェースである。例えば、DI106として、SAS(Serial Attached SCSI)などのインタフェースを用いることができる。
読み取り装置107は、可搬型の記録媒体11に記録されたプログラムやデータを読み取る装置である。記録媒体11として、例えば、フラッシュメモリなどの不揮発性の半導体メモリを使用することができる。読み取り装置107は、例えば、プロセッサ101からの命令に従って、記録媒体11から読み取ったプログラムやデータを、RAM102やNVRAM103に格納することもできる。
DE200は、SSD211,212,213,・・・およびSSD221,222,223,・・・を有する。SSD211,212,213,・・・は、ユーザに対して割り当て済(既にユーザ容量として利用中)の記憶装置である。SSD221,222,223,・・・は、ユーザに対して未割り当ての記憶装置である。SSD221,222,223,・・・は、SSD211,212,213,・・・に対して追加または代替して用いられるスペアの記憶装置である。
ここで、CM100は、DEが内蔵する複数のSSDを組み合わせて、RAID(Redundant Arrays of Inexpensive Disks)の技術により論理ボリュームを作成し、ユーザに提供する。ある論理ボリュームを形成するSSDの集合をRAIDグループと称することがある。1つのRAIDグループには、業務サーバ30からのアクセス対象となる1つ以上の論理ボリュームが含まれる。論理ボリュームには論理ボリュームを識別する論理ユニット番号(LUN:Logical Unit Number)が割り当てられる。例えば、業務サーバ30は、LUNおよび論理ボリュームのLBA(Logical Block Address)を指定して、ストレージ装置10に対するデータアクセスを行える。この場合、RAIDグループから割り当てられた論理ボリュームのサイズが、ユーザ容量ということになる。また、以下の説明では、各RAIDグループには、余裕容量以外の空き容量(ユーザ容量として割り当てられていない記憶領域)が存在していないものとする。
図4は、管理サーバのハードウェア例を示す図である。管理サーバ20は、プロセッサ21、RAM22、HDD23、画像信号処理部24、入力信号処理部25、読み取り装置26およびNA27を有する。各ユニットは管理サーバ20のバスに接続されている。なお、業務サーバ30も管理サーバ20と同様のハードウェアにより実現できる。
プロセッサ21は、管理サーバ20の情報処理を制御する。プロセッサ21は、マルチプロセッサであってもよい。プロセッサ21は、例えばCPU、DSP、ASICまたはFPGAなどである。プロセッサ21は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組み合わせであってもよい。
RAM22は、管理サーバ20の主記憶装置である。RAM22は、プロセッサ21に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM22は、プロセッサ21による処理に用いる各種データを記憶する。
HDD23は、管理サーバ20の補助記憶装置である。HDD23は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD23は、OSのプログラム、アプリケーションプログラム、および各種データを記憶する。管理サーバ20は、フラッシュメモリやSSDなどの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
画像信号処理部24は、プロセッサ21からの命令に従って、管理サーバ20に接続されたディスプレイ7に画像を出力する。ディスプレイ7としては、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどを用いることができる。
入力信号処理部25は、管理サーバ20に接続された入力デバイス8から入力信号を取得し、プロセッサ21に出力する。入力デバイス8としては、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
読み取り装置26は、記録媒体9に記録されたプログラムやデータを読み取る装置である。記録媒体9として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)を使用できる。また、記録媒体9として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。読み取り装置26は、例えば、プロセッサ21からの命令に従って、記録媒体9から読み取ったプログラムやデータをRAM22またはHDD23に格納する。プロセッサ21は、記録媒体9から読み取ったプログラムやデータ(例えば、ストレージ装置10のファームウェアのプログラムやデータ)をストレージ装置10に送信することもできる。
NA27は、LAN6を介して他の装置と通信を行う。NA27は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
図5は、CMの機能例を示す図である。CM100は、記憶部110、収集部120、予測部130および拡張処理部140を有する。記憶部110は、例えば、RAM102またはNVRAM103に確保された記憶領域として実現される。収集部120、予測部130および拡張処理部140は、例えば、RAM102に記憶されたプログラムを、プロセッサ101が実行することで実現される。
記憶部110は、RAID管理テーブル、TBW管理テーブルおよび拡張量上限管理テーブルを記憶する。RAID管理テーブルは、各RAIDグループに属するSSDのユーザ容量などを管理するための情報である。TBW管理テーブルは、各SSDのユーザ容量とTBWとの対応関係を管理するための情報である。拡張量上限管理テーブルは、SSDのウェアレベリング用の余裕容量から拡張できる論理ボリュームの拡張量の上限をRAIDグループ毎に管理するための情報である。記憶部110は、SSD毎の保証期間の情報も記憶する。
収集部120は、SSDに関する各種のスペック情報を各SSDから収集し、記憶部110に格納する。例えば、スペック情報は、SSDにおける現状のユーザ容量、余裕容量のサイズを含む。また、例えば、スペック情報は、SSDにおけるユーザ容量および余裕容量とTBWとの対応関係の情報を含む。更に、スペック情報は、SSDの保証期間の情報を含む。
予測部130は、保証期間内における最大書き込み量をSSD毎に予測する。具体的には、所定のタイミングで、各SSDに対してlog senseコマンドを発行する。これにより、収集部120は、運用開始からの累積書き込み量と運用開始からの総稼働時間を取得する。累積書き込み量は、該当のSSDに書き込みされたデータ量の総計である。予測部130は、取得した情報をSSDの識別情報に対応付けて記憶部110に格納する。そして、予測部130は、各SSDの保証期間内における最大書き込み量を、式(1)を用いて算出する。予測部130は、各SSDの保証期間内における最大書き込み量の予測結果を、SSDの識別情報に対応付けて、記憶部110に格納する。
拡張処理部140は、予測部130による予測結果および記憶部110に記憶されたTBW管理テーブルに基づいて、ユーザ容量の拡張量の上限をRAIDグループ毎に求める。拡張処理部140は、求めた拡張量の上限を、RAIDグループの識別情報に対応付けて拡張量上限管理テーブルに登録する。
ここで、RAIDグループには複数のSSDが属するため、各SSDで、保証期間内の最大書き込み量の予測結果が異なっていることも考えられる。その場合、拡張処理部140は、RAIDグループに属する複数のSSDのうち、保証期間内に予測される最大書き込み量が最も大きなSSDによって、当該RAIDグループにおけるユーザ容量の拡張量の上限を決定する。
なお、拡張処理部140は、単一のSSDにおけるユーザ容量の拡張量(SSDにおいて物理的にユーザ容量として拡張される拡張量であり、単に拡張量という場合こちらを指す)を論理ボリュームの論理容量の拡張量(論理拡張量と称する)を基に決定する。具体的には、論理拡張量がXである場合を考える。この場合、例えば、2つのSSDのストライピングと1つのSSDのパリティの組合せ(計3つのSSD)によるRAID5構成ではSSD1つ当たりの拡張量はX/2である。あるいは、3つのSSDのストライピングによるRAID0構成ではSSD1つ当たりの拡張量はX/3である。
拡張処理部140は、あるRAIDグループにおけるユーザ容量について拡張量の上限に対する問い合わせを管理サーバ20から受け付けると、記憶部110に記憶された拡張量上限管理テーブルを参照して、当該上限を応答する。
拡張処理部140は、応答した上限の範囲内での拡張指示を管理サーバ20から受け付けると、該当のRAIDグループに属する各SSDについて余裕容量を基にユーザ容量の拡張を行う。
図6は、RAID管理テーブルの例を示す図である。RAID管理テーブル111は、記憶部110に格納される。RAID管理テーブル111は、RAIDグループID(IDentifier)、ドライブID、RAID種別、ユーザ容量、論理容量、余裕容量およびTBWの項目を含む。
RAIDグループIDの項目には、RAIDグループの識別情報が登録される。ドライブIDの項目には、ドライブを識別する情報が登録される。RAID種別の項目には、RAIDの種別を識別する情報が登録される。ユーザ容量の項目には、ドライブIDの項目に登録されるSSDに割り当てられているユーザ容量が登録される。論理容量の項目には、RAIDグループの論理ボリュームの容量を示す情報が登録される。余裕容量の項目には、ドライブIDの項目に登録されるSSDの余裕容量を示す情報が登録される。TBWの項目には、TBWを示す情報が登録される。
例えば、RAID管理テーブル111には、RAIDグループIDが“G1”、ドライブIDが“D1”、RAID種別が“RAID5”、ユーザ容量が“400GB(ギガバイト)”、論理容量が“800GB”、余裕容量が“112GB”およびTBWが“7.3PB”という情報が登録される。
これは、ドライブID“D1”のSSDがRAIDグループID“G1”のRAIDグループに属し、当該RAIDグループのRAID種別が“RAID5”であり、論理容量が“800GB”であることを示す。なお、当該RAIDグループの論理容量に含まれない400GBは、パリティデータの容量である。また、ドライブID“D1”のSSDのユーザ容量が“400GB”、余裕容量が“112GB”であり、TBWが“7.3PB”であることを示す。
ここで、RAIDグループ“G1”に属するSSDは、SSD211,212,213である。SSD211のドライブIDは“D1”である。SSD212のドライブIDは“D2”である。SSD213のドライブIDは“D3”である。
通常、同じRAIDグループに属する各SSDは、共通のベンダの共通の機種のものが用いられることが多い。このため、余裕容量やTBWは、同じになる。
収集部120は、RAIDグループが作成されると、当該RAIDグループに属する各SSDからRAID管理テーブル111に含まれる各項目の情報を収集し、当該RAIDグループに関するレコードを生成して、RAID管理テーブル111に登録する。なお、収集部120は、スペアのSSDに関する情報も当該SSDから収集して、RAID管理テーブル111に登録してもよい。例えば、RAID管理テーブル111では、RAIDグループID“スペアSP1”のレコードが、スペアのSSDに関するレコードである。
図7は、TBW管理テーブルの例を示す図である。TBW管理テーブル112,112a,112b,・・・は、記憶部110に格納される。TBW管理テーブル112,112a,112b,・・・は、SSD毎に設けられる。TBW管理テーブル112,112a,112b,・・・に含まれる項目は同じなので、図7ではTBW管理テーブル112について説明し、TBW管理テーブル112a,112b,・・・の説明を省略する。
TBW管理テーブル112は、ドライブID、ユーザ容量およびTBWの項目を含む。ドライブIDの項目には、ドライブを識別する情報が登録される。ユーザ容量の項目には、ユーザ容量を示す情報が登録される。TBWの項目には、TBWを示す情報が登録される。ここで、TBW管理テーブル112におけるユーザ容量の最小値は、余裕容量からユーザ容量への割り当てを行っていない状態(余裕容量がフルサイズ)を示す。TBW管理テーブル112(TBW管理テーブル112a,112b,・・・も同様)は、余裕容量からユーザ容量へ割く容量を増やすほどユーザ容量を増やせるが、TBWが低下していくことを表わしている。
例えば、TBW管理テーブル112には、ドライブIDが“D1”、ユーザ容量が“400GB”、TBWが“7.3PB”という情報が登録される。これは、ドライブID“D1”のSSD211について、ユーザ容量が“400GB”の場合、TBWが“7.3PB(ペタバイト)”であることを示す。
また、例えば、TBW管理テーブル112には、ドライブIDが“D1”、ユーザ容量が“480GB”、TBWが“0.88PB”という情報が登録される。これは、ドライブID“D1”のSSD211について、ユーザ容量が“480GB”の場合(すなわち、ユーザ容量が400GBの場合に対して余裕容量を80GB減らした場合)、TBWが“0.88PB”であることを示す。
図8は、SSDのユーザ容量とTBWとの相関の例を示す図である。グラフ50は、TBW管理テーブル112をグラフ化したものである。グラフ50の横軸はユーザ容量(単位はGB)である。グラフ50の縦軸はTBW(単位はPB)である。
点P1は、ユーザ容量400GB(余裕容量112GB)の場合のTBW7.3PBをプロットしたものである。点P2は、ユーザ容量480GB(余裕容量32GB)の場合のTBW0.88PBをプロットしたものである。
グラフ50で示されるように、SSD211では、全体容量512GBに対して、ユーザ容量400GB、余裕容量112GBのとき、TBWが7.3PBとなる。そして、余裕容量112GBからユーザ容量へ割り当てる容量が増加するほど(余裕容量が減少するほど)、TBWが低下する。ユーザ容量の増加分(すなわち、余裕容量の減少分)とTBWとの関係は、ほぼ比例関係にある(比例定数は負の値)。
図9は、拡張量上限管理テーブルの例を示す図である。拡張量上限管理テーブル113は、記憶部110に記憶される。拡張量上限管理テーブル113は、RAIDグループIDおよびSSD当たりの拡張量上限の項目を含む。
RAIDグループIDの項目には、RAIDグループの識別情報が登録される。SSD当たりの拡張量上限の項目には、RAIDグループに属するSSD当たり、余裕容量からユーザ容量に割いてよい拡張量の上限を示す情報が登録される。
例えば、拡張量上限管理テーブル113には、RAIDグループIDが“G1”、SSD当たりの拡張量上限が“80GB”という情報が登録される。これは、RAIDグループID“G1”で示されるRAIDグループに属する各SSDについて、余裕容量から最大80GBをユーザ容量として割り当てることが許容されていることを示す。すなわち、RAIDグループID“G1”では、余裕容量からユーザ容量として割り当て可能な最大容量が、SSD当たり80GBまでに制限されていることになる。
なお、各SSDがRAIDを組んでいない場合、拡張量上限管理テーブル113には、SSDの識別情報に対応付けて、SSD毎に拡張量上限の情報が登録されることになる。
図10は、テーブル作成処理の例を示すフローチャートである。以下、図10に示す処理をステップ番号に沿って説明する。図10の処理は、後述する図11,12の処理の前に実行される。
(S11)収集部120は、RAIDグループの新規作成を検出する。収集部120は、当該RAIDグループのRAIDグループID、RAID種別および論理容量を取得する。
(S12)収集部120は、作成されたRAIDグループに属する各SSDのドライブID、ユーザ容量、余裕容量およびTBWを、各SSDから収集する。
(S13)収集部120は、ステップS11,S12で取得した情報を、RAID管理テーブル111に登録する。
(S14)収集部120は、ステップS11で検出したRAIDグループに属する各SSDから、(余裕容量を用いて拡張した)ユーザ容量とTBWとの関係を示す情報を収集する。例えば、SSDは、自SSDが備える所定のメモリに、当該ユーザ容量とTBWとの関係を示す情報を予め保持している。
(S15)収集部120は、ステップS14で収集したユーザ容量とTBWの関係を示す情報を登録したTBW管理テーブルをSSD毎に作成する。収集部120は、作成したTBW管理テーブルを記憶部110に格納する。そして、処理を終了する。
図11は、拡張量上限の決定処理の例を示すフローチャートである。以下、図11に示す処理をステップ番号に沿って説明する。図11の処理は、所定のタイミング(例えば、1日1回の周期など)で実行される。
(S21)予測部130は、RAID管理テーブル111を参照し、RAIDグループを1つ選択する。
(S22)予測部130は、記憶部110を参照し、ステップS21で選択したRAIDグループの論理容量の使用率を確認する。例えば、予測部130は、RAIDグループID“G1”の場合、ユーザにより利用可能な論理容量800GBに対して、データ保存に利用済の容量の割合が論理容量の使用率である。
(S23)予測部130は、論理容量の使用率が閾値以上であるか否かを判定する。例えば、閾値は80%である。使用率が閾値以上の場合、処理をステップS24に進める。使用率が閾値以上でない場合、処理を終了する。なお、RAIDを用いずに1つのSSDに対してデータを保存している場合、予測部130は、当該SSDにおけるユーザ容量の使用率が閾値以上であるか否かによって、ステップS23の判定を行う(閾値以上の場合、処理をステップS24に進め、閾値以上でない場合、処理を終了する)。
(S24)予測部130は、ステップS21で選択したRAIDグループに属する各SSDにlog senseコマンドを発行する。例えば、RAIDグループ“G1”の場合、予測部130は、SSD211,212,213に対してlog senseコマンドを発行する。
(S25)予測部130は、ステップS24のlog senseコマンドに対する応答として、各SSDから累積書き込み量と稼働時間を取得する。
(S26)予測部130は、各SSDの保証期間内における最大書き込み量を式(1)に基づいて予測する。予測部130は、保証期間の情報を、選択したSSDから取得できる。ただし、該当のSSDの保証期間の情報を記憶部110に予め格納している場合には、当該保証期間の情報を記憶部110から取得してもよい。例えば、SSD211に対するこれまでの累積書き込み量をX、SSD211の保証期間をT1、SSD211の稼働時間をT2とすれば、SSD211に対して予測される保証期間内の最大書き込み量Yは、式(1)により、Y=X×T1/T2と算出できる。予測部130は、SSD212,213についても、同様に、保証期間内の最大書き込み量を算出できる。
(S27)拡張処理部140は、ステップS26で予測された各SSDの最大書き込み量に基づいて、該当のRAIDグループに属するSSDのうち、当該最大書き込み量が最大のSSDを選択する。
(S28)拡張処理部140は、ステップS27で選択したSSDのTBW管理テーブルに基づいて、余裕容量からユーザ容量を拡張する際の拡張量の上限を算出する。例えば、ステップS27でSSD211が選択されており、SSD211に対して予測される最大書き込み量Yが0.8PBの場合を考える。このとき、拡張処理部140は、SSD211に対応するTBW管理テーブル112を参照し、TBWがY=0.8PBよりも大きくなるユーザ容量の最大値を特定する。TBW管理テーブル112によれば、当該ユーザ容量の最大値は、480GBである。このため、拡張処理部140は、SSD211において余裕容量からユーザ容量を拡張する際の拡張量の上限を480GB(拡張後のユーザ容量の最大値)−400GB(現状のユーザ容量)=80GBと算出する。拡張処理部140は、ステップS21で選択したRAIDグループのRAIDグループIDに対応付けて、算出した拡張量上限を、拡張量上限管理テーブル113に登録する。
上記のように、拡張処理部140は、RAIDグループに属する各SSDのうち、保証期間内に予測される最大書き込み量が最大のSSDを選択して、当該RAIDグループに属する各SSDの拡張量上限を決定する。なぜなら、RAIDを構成する各SSDでは、均一の容量をユーザ容量として割り当てることになり、この場合、予測される最大書き込み量が最大のSSDにより拡張量上限を決定することで、RAIDグループに属する何れかのSSDで累積書き込み量がTBWを上回るリスクを減らせるからである。
また、ステップS23で、論理容量の使用率に対する判定を行う理由は、当該使用率が高いほど、ユーザ容量が不足している可能性が高く、今後、ユーザがユーザ容量の拡張を希望する可能性が高いと判断できるからである。ユーザが拡張を希望する前に、拡張量の上限を予め定めておくことで、ユーザが拡張を希望する際に、迅速に拡張量の上限を提供できる。
なお、図11の手順は、RAID管理テーブル111に登録されている全てのRAIDグループ(RAIDグループに属していないスペアを除く)に対して実行される。また、図11の処理は、RAIDグループに属する各SSDの保証期間が異なる場合でも適用可能である。
図12は、拡張処理の例を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
(S31)拡張処理部140は、あるRAIDグループに対するユーザ容量の拡張要求を管理サーバ20から受信する。拡張要求には、RAIDグループを指定する情報が含まれている。
(S32)拡張処理部140は、記憶部110に記憶された拡張量上限管理テーブル113を参照して、指定されたRAIDグループに対する拡張量上限を取得する。拡張処理部140は、該当のRAIDグループの各SSDに対する拡張量上限を管理サーバ20に応答する。
(S33)拡張処理部140は、管理サーバ20から拡張指示を受信する。拡張指示には、ユーザが希望する拡張量が含まれる。指示された拡張量が、拡張量上限よりも大きい場合、拡張処理部140は、管理サーバ20にエラーを送信してもよい。すなわち、拡張処理部140は、ユーザから指定された拡張量が上限値以下であれば拡張を許可し、また、ユーザから指定された拡張量が上限値よりも大きければ拡張を許可しない。
(S34)拡張処理部140は、ユーザ容量の拡張を実行する。例えば、拡張処理部140は、該当のRAIDグループに属する各SSDに対し、余裕容量の一部をユーザ容量に割り当てる旨の拡張指示を送信する。これにより、各SSDのユーザ容量が拡張され、RAIDグループの論理容量が拡張される。そして、処理を終了する。
なお、ステップS32で取得される拡張量上限は、1つのSSD当たりの物理的な拡張量の上限である。このため、ステップS32において、拡張処理部140は、管理サーバ20に応答する上限値として、論理ボリュームにおける論理容量に換算した上限値(論理拡張量の上限)を応答してもよい。例えば、拡張量上限管理テーブル113によれば、RAIDグループID“G1”のRAIDグループについて、1つのSSD当たりの物理的な拡張量の上限は、80GBである。また、当該RAIDグループのRAID種別はRAID5である。よって、論理容量に換算すると、160GBが論理拡張量の上限となる。この場合、ステップS33の管理サーバ20による管理指示には、ユーザが希望する論理拡張量が含まれることになる。このとき、指示された論理拡張量が、論理拡張量上限(160GB)よりも大きい場合に、拡張処理部140は、管理サーバ20にエラーを送信してもよい。
図13は、ユーザ容量拡張の具体例を示す図である。図13では、1つのRAIDグループに属するSSD211,212,213におけるユーザ容量の拡張処理の具体例を説明する。当該RAIDグループのRAID種別はRAID5である。前述のように、SSD211,212,213の総容量は512GBである。また、当該RAIDグループの論理容量は800GBであり、SSD211,212,213それぞれのユーザ容量は400GB、余裕容量は112GBである。そして、SSD211,212,213の保証期間は5年であるとする。また、SSD211,212,213は、3年間の累積書き込み量が、何れも0.5PB程度であるとする。
予測部130は、SSD211,212,213にlog senseコマンドを発行し、SSD211,212,213から書き込み累積量と稼働時間を取得する。
予測部130は、SSD211,212,213それぞれに対して、保証期間内に予測される最大書き込み量を算出する。この場合、SSD211について、保証期間内に予測される最大書き込み量は、0.5PB×5年/3年=0.83PB程度である。同様に、予測部130は、SSD212,213についても保証期間内に予測される最大書き込み量を算出する。
拡張処理部140は、SSD211,212,213のうち、保証期間内に予測される最大書き込み量が最大のSSDを選択する。例えば、SSD211,212,213のうち、保証期間内に予測される最大書き込み量が最大のSSDは、SSD211であるとする。この場合、拡張処理部140は、SSD211を選択する。
すると、拡張処理部140は、SSD211対して保証期間内に予測される最大書き込み量0.83PBを基に、拡張量上限を決定する。SSD211に対応するTBW管理テーブル112によれば、TBWが0.83PBを下回らない最大のユーザ容量は480GBである。このため、拡張処理部140は、80GB(480GB−400GB)を、該当のRAIDグループに属するSSD1つ当たりの拡張量上限と決定する。
このため、当該RAIDグループでは、余裕容量を用いてユーザ容量を最大まで拡張すると、SSD211,212,213の1つ当たりのユーザ容量は480GBということになる。すると、論理容量は、480×2=960となり、拡張前の800GBに対して160GBが拡張されたことになる。また、拡張後のSSD211,212,213それぞれの余裕容量は32GBである。
このように、CM100は、SSDのウェアレベリング用の余裕容量によりユーザ容量を拡張する際に、余裕容量減少に伴うTBW低下を考慮して、TBWが保証期間内に予測される最大書き込み量を下回らないよう拡張量を制限する。これにより、データ保存の信頼性を維持することができる。
図14は、論理容量の追加例を示す図である。CM100は、管理サーバ20から第2の実施の形態で説明した上限を超えた論理容量の追加指示を受け付けることも考えられる。例えば、CM100は、SSD211,212,213で構成されるRAIDグループにおいて、拡張量上限80GB(論理容量換算で160GB)を超えた容量の論理容量の追加指示を受け付ける場合である。図14では、480GBの論理容量の追加指示を受け付けた場合を例示している。この場合、第2の実施の形態で例示したように、追加分のうち、例えば、80GBについて、SSD211,212,213の余裕容量を用いて確保する。そして、追加分のうち残りの400GBについて、スペアのSSD221から確保することもできる。
このように、CM100は、SSD211,212,213の余裕容量から確保可能な容量と、スペアのSSD221の容量とを合わせて、新たな論理容量(480GB)を確保した論理ボリュームを作成することもできる。こうして、SSD211,212,213の余裕容量を利用可能とすることで、各SSDの余分な余裕容量を削減し、各SSDの利用効率を向上することもできる。これにより、ある論理容量を確保するためのSSDの所要数を削減できる。
第2の実施の形態では、DE200にSSDが搭載されている場合を示した。これに限らず、書き込み回数に上限がある記憶装置であれば、第2の実施の形態を実現できる。
なお、第1の実施の形態の情報処理は、制御部1bとして用いられるプロセッサに、プログラムを実行させることで実現できる。第2の実施の形態の情報処理は、プロセッサ101にプログラムを実行させることで実現できる。ストレージ制御装置1およびCM100は、メモリとプロセッサとを含むコンピュータを備えていると考えることもできる。プログラムは、コンピュータ読み取り可能な記録媒体に記録できる。
例えば、プログラムを記録した記録媒体(例えば、記録媒体9,11)を配布することで、プログラムを流通させることができる。コンピュータは、他のコンピュータ(例えば、管理サーバ20)から、当該プログラムをダウンロードすることもできる。コンピュータは、例えば、ダウンロードしたプログラム、または、記録媒体から読み出したプログラムを、RAM102やNVRAM103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。
1 ストレージ制御装置
1a 記憶部
1b 制御部
2 記憶装置
T1 管理情報

Claims (6)

  1. 記憶装置に対するアクセスを制御するストレージ制御装置であって、
    前記記憶装置の余裕容量およびユーザに割り当てるユーザ容量に対する前記記憶装置の保証期間内の総書き込み可能データ量の関係を示す管理情報を記憶する記憶部と、
    現状の前記ユーザ容量と前記余裕容量とを前記記憶装置から取得し、所定のタイミングで、前記記憶装置のデータの累積書き込み量と稼働時間とから前記保証期間内の最大書き込み量を予測し、前記余裕容量を用いて前記ユーザ容量を拡張する際に、前記管理情報に基づいて、拡張後の前記総書き込み可能データ量が前記最大書き込み量を下回らないよう拡張量を制限し、制限した拡張量に基づいて前記ユーザ容量を拡張する制御部と、
    を有するストレージ制御装置。
  2. 前記制御部は、前記管理情報に基づいて、拡張後の前記総書き込み可能データ量が、前記保証期間内に予測される前記最大書き込み量以上となる拡張量の上限値を求め、前記上限値以下での拡張の場合、前記ユーザ容量の拡張を実行する、請求項1記載のストレージ制御装置。
  3. 前記制御部は、複数の記憶装置それぞれのユーザ容量を用いて作成された論理記憶領域を、前記複数の記憶装置それぞれの前記余裕容量を用いて拡張する際に、前記複数の記憶装置それぞれに対して予測される前記最大書き込み量のうちの最大値に基づいて、前記複数の記憶装置それぞれの前記ユーザ容量の拡張量を制限する、請求項1または2記載のストレージ制御装置。
  4. 前記所定のタイミングは、前記ユーザ容量の使用率が閾値以上になったタイミングである、請求項1乃至3の何れか1つに記載のストレージ制御装置。
  5. 前記余裕容量は、ウェアレベリングに用いられる記憶容量である、請求項1乃至4の何れか1つに記載のストレージ制御装置。
  6. 記憶装置に対するアクセスを制御するコンピュータに、
    前記記憶装置における現状の余裕容量およびユーザに割り当てられているユーザ容量を前記記憶装置から取得し、所定のタイミングで、前記記憶装置のデータの累積書き込み量と稼働時間とから前記記憶装置の保証期間内の最大書き込み量を予測し、
    前記余裕容量を用いて前記ユーザ容量を拡張する際に、前記余裕容量および前記ユーザ容量に対する前記保証期間内の総書き込み可能データ量の関係を示す管理情報に基づいて、拡張後の前記総書き込み可能データ量が前記最大書き込み量を下回らないよう拡張量を制限し、制限した拡張量に基づいて前記ユーザ容量を拡張する、
    処理を実行させるストレージ制御プログラム。
JP2015158692A 2015-08-11 2015-08-11 ストレージ制御装置およびストレージ制御プログラム Active JP6554990B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015158692A JP6554990B2 (ja) 2015-08-11 2015-08-11 ストレージ制御装置およびストレージ制御プログラム
US15/189,304 US10133517B2 (en) 2015-08-11 2016-06-22 Storage control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015158692A JP6554990B2 (ja) 2015-08-11 2015-08-11 ストレージ制御装置およびストレージ制御プログラム

Publications (2)

Publication Number Publication Date
JP2017037501A JP2017037501A (ja) 2017-02-16
JP6554990B2 true JP6554990B2 (ja) 2019-08-07

Family

ID=57995409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015158692A Active JP6554990B2 (ja) 2015-08-11 2015-08-11 ストレージ制御装置およびストレージ制御プログラム

Country Status (2)

Country Link
US (1) US10133517B2 (ja)
JP (1) JP6554990B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170220282A1 (en) * 2016-01-29 2017-08-03 Dell Products L.P. Dynamic capacity expansion of raid volumes
CN107203329B (zh) * 2016-03-17 2020-12-01 伊姆西Ip控股有限责任公司 存储管理方法及设备
WO2018167890A1 (ja) * 2017-03-15 2018-09-20 株式会社日立製作所 計算機システム及び管理方法
US11132133B2 (en) * 2018-03-08 2021-09-28 Toshiba Memory Corporation Workload-adaptive overprovisioning in solid state storage drive arrays

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3557511B2 (ja) 1997-08-27 2004-08-25 沖電気工業株式会社 半導体ディスク装置の寿命算出方法
JP4890033B2 (ja) * 2006-01-19 2012-03-07 株式会社日立製作所 記憶装置システム及び記憶制御方法
JP4749255B2 (ja) * 2006-07-03 2011-08-17 株式会社日立製作所 複数種類の記憶デバイスを備えたストレージシステムの制御装置
JP4452261B2 (ja) 2006-09-12 2010-04-21 株式会社日立製作所 ストレージシステムの論理ボリューム管理方法、論理ボリューム管理プログラム、及びストレージシステム
US7526623B1 (en) * 2006-09-28 2009-04-28 Emc Corporation Optimizing reclamation of data space
JP5075761B2 (ja) 2008-05-14 2012-11-21 株式会社日立製作所 フラッシュメモリを用いたストレージ装置
DE112010003345B4 (de) * 2009-08-21 2017-07-27 International Business Machines Corporation Datenspeichersystem und Verfahren für das Betreiben eines Datenspeichersystems
CN102640120B (zh) * 2010-01-28 2014-12-10 株式会社日立制作所 计算增设/减设的存储容量的管理系统
WO2012140710A1 (ja) * 2011-04-14 2012-10-18 パナソニック株式会社 ブート制御装置、ブートシステム及びブート制御方法
WO2012148828A2 (en) * 2011-04-26 2012-11-01 Lsi Corporation Variable over-provisioning for non-volatile storage
JP5768118B2 (ja) * 2013-12-11 2015-08-26 株式会社日立製作所 複数のフラッシュパッケージを有するストレージシステム

Also Published As

Publication number Publication date
JP2017037501A (ja) 2017-02-16
US20170046070A1 (en) 2017-02-16
US10133517B2 (en) 2018-11-20

Similar Documents

Publication Publication Date Title
US10956063B2 (en) Virtual storage system
JP6279620B2 (ja) ストレージ装置
JP5844473B2 (ja) 複数の不揮発性の半導体記憶媒体を有し、ホットデータを長寿命記憶媒体に配置しコールドデータを短寿命記憶媒体に配置するストレージ装置、及び、記憶制御方法
JP5075761B2 (ja) フラッシュメモリを用いたストレージ装置
US8832371B2 (en) Storage system with multiple flash memory packages and data control method therefor
US7415573B2 (en) Storage system and storage control method
JP6216897B2 (ja) ストレージシステム
JP5706531B2 (ja) 計算機システム、及び情報管理方法
JP6459644B2 (ja) ストレージ制御装置、制御システム及び制御プログラム
US10866741B2 (en) Extending SSD longevity
JP2007041904A (ja) ストレージ装置、ディスクキャッシュ制御方法及びディスクキャッシュの容量割当方法
JP2008015769A (ja) ストレージシステム及び書き込み分散方法
JP6017032B2 (ja) ストレージシステム及びストレージ制御方法
JP6320439B2 (ja) メモリ制御装置、ストレージ装置、ストレージ装置の制御プログラム、及び、ストレージ装置の制御方法
JP6554990B2 (ja) ストレージ制御装置およびストレージ制御プログラム
JP6011153B2 (ja) ストレージシステム、ストレージ制御方法およびストレージ制御プログラム
JP5594647B2 (ja) ストレージ装置及びその制御方法
JP2017199043A (ja) ストレージ装置とシステム及び方法とプログラム
JPWO2018142622A1 (ja) 計算機
US9218131B2 (en) Method and apparatus to change tiers
JP5768118B2 (ja) 複数のフラッシュパッケージを有するストレージシステム
JP7373018B2 (ja) 仮想ストレージシステム
JP5638022B2 (ja) ディスクアレイ装置
JP2015201231A (ja) 複数のフラッシュパッケージを有するストレージシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190425

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190425

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190425

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190624

R150 Certificate of patent or registration of utility model

Ref document number: 6554990

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150