JP2017228078A - ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム - Google Patents

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

Info

Publication number
JP2017228078A
JP2017228078A JP2016123584A JP2016123584A JP2017228078A JP 2017228078 A JP2017228078 A JP 2017228078A JP 2016123584 A JP2016123584 A JP 2016123584A JP 2016123584 A JP2016123584 A JP 2016123584A JP 2017228078 A JP2017228078 A JP 2017228078A
Authority
JP
Japan
Prior art keywords
storage unit
storage
ssd
unit
spare
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
JP2016123584A
Other languages
English (en)
Other versions
JP6838299B2 (ja
Inventor
和晋 須永
Kazukuni Sunaga
和晋 須永
佑磨 田村
Yuma Tamura
佑磨 田村
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 JP2016123584A priority Critical patent/JP6838299B2/ja
Publication of JP2017228078A publication Critical patent/JP2017228078A/ja
Application granted granted Critical
Publication of JP6838299B2 publication Critical patent/JP6838299B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】予備記憶部の使用時に予備記憶部の性能を確保できるようにする。【解決手段】現用記憶部31a及び予備記憶部31bを含む複数の記憶部31と、これらの記憶部31を制御する制御部100と、を有し、制御部100は、予備記憶部31bにおける使用不可領域の量が所定基準を超えているか否かを判定する第1判定部151と、使用不可領域の量が所定基準を超えていると判定された場合に、予備記憶部13bに初期化を実行させる第1コマンドを、予備記憶部31bに対し発行する。【選択図】図2

Description

本発明は、ストレージ装置、ストレージ制御装置、及びストレージ制御プログラムに関する。
業務で取り扱うデータ量の増大に伴い、ストレージ装置に備えられる記憶デバイス(記憶部)の数が増大するとともに、各記憶デバイスの容量も増大している。記憶デバイスとしては、一般にHDDが用いられるが、近年、HDDに代わって、記憶媒体として不揮発性半導体メモリを採用する記憶デバイス、例えばNAND型フラッシュメモリを採用するSSDが用いられる場合がある。HDDはHard Disk Driveの略称であり、SSDはSolid State Driveの略称である。
SSDに採用されるNAND型フラッシュメモリでは、データの上書き処理ができないなどの制約があるため、データの更新を繰り返し行なっていると、断片的な使用不可領域が徐々に増加する。当該断片的な使用不可領域は、ゴミ領域あるいは無駄領域と称されてもよい。そこで、SSDには、当該ゴミ領域を収集して解放する、ガベージコレクションと称される解放処理を自律的に実行する機能が備えられる場合がある。
一方、ストレージ装置では、複数の記憶デバイス(例えばSSD)を用いてRAID(Redundant Arrays of Inexpensive Disks)が構成される。このとき、RAIDを構成し実際の運用に用いられる記憶デバイスは、現用記憶部あるいはRAID構成メンバSSDと称されてもよい。
また、ストレージ装置における複数の記憶デバイスには、現用記憶部に故障が生じた際にデータのリビルド処理に用いられる、予備の記憶デバイスが含まれる。当該予備の記憶デバイスは予備記憶部と称されてもよい。当該予備記憶部としてのSSDは、以下、HS−SSDと表記される場合がある。HSはHot Spareの略称であり、HS−SSDはホットスペアと称される場合もある。
ストレージ装置における複数の現用記憶部の一つが故障した場合、まず、当該故障した現用記憶部(以下、故障記憶部という)以外の現用記憶部におけるデータに基づき、故障記憶部におけるデータをHS−SSD上に復旧するリビルド処理が実行される。そして、HS−SSD上にリビルドされた復旧データが、故障記憶部と交換された新たな現用記憶部にコピーバックされた後、HS−SSDが解放される。
特開2000−112836号公報 国際公開第2014/196000号パンフレット 特開昭63−225999号公報
ところで、故障記憶部のデータを復旧させるべくHS−SSDを用いてリビルド処理を行なう場合、当該HS−SSDに対するライト処理が行なわれる。その際、HS−SSDにゴミ領域が残っていると、ガベージコレクション処理が実行される場合がある。
このような場合、ライト処理とガベージコレクション処理とが競合するため、ガベージコレクション処理によってゴミ領域を解消する間、HS−SSDのライト性能が低下した状態になる(図4参照)。したがって、迅速に故障記憶部のデータを復旧してデータの冗長性を回復させることができず、ストレージ装置の性能の低下を招くおそれがある。
このため、HS−SSDの使用時つまり故障記憶部の発生時に、HS−SSDのライト性能を確保できるようにすることで、迅速に故障記憶部のデータを復旧できるようにして、ストレージ装置の性能を確保することが望まれている。
一つの側面で、本件明細書に開示の発明は、予備記憶部の使用時に予備記憶部の性能を確保できるようにすることを目的とする。
本件のストレージ制御装置は、現用記憶部及び予備記憶部を含む複数の記憶部と、前記複数の記憶部を制御する制御部と、を有する。前記制御部は、第1判定部及び第1コマンド発行部を有する。前記第1判定部は、前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定する。前記第1コマンド発行部は、前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する。
予備記憶部の使用時に予備記憶部の性能を確保することができる。
本実施形態のストレージ制御装置を含むストレージ装置のハードウェア構成の一例を示すブロック図である。 第1実施形態のストレージ制御装置の機能構成の一例を示すブロック図である。 図2に示すストレージ制御装置の動作を説明するフローチャートである。 ホットスペア(HS−SSD)の使用時における従来のライト性能の一例(ワーストケース)を示す図である。 ホットスペア(HS−SSD)の使用時における、本実施形態で得られるライト性能の一例を示す図である。 第2実施形態のストレージ制御装置の機能構成の一例を示すブロック図である。 図6に示すストレージ制御装置の動作を説明するフローチャートである。 図6に示すストレージ制御装置の具体的な動作例を説明する図である。
以下に、図面を参照し、本願の開示するストレージ装置、ストレージ制御装置、及びストレージ制御プログラムの実施形態について、詳細に説明する。ただし、以下に示す実施形態は、あくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能を含むことができる。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
〔1〕本実施形態の概要
ストレージ装置においては、複数の現用記憶部(RAID構成メンバSSD)を用いてRAIDが構成されるとともに、現用記憶部に故障が生じた際にデータのリビルド処理に用いられる少なくとも一の予備記憶部(HS−SSD)が備えられる場合がある。
このようなストレージ装置の運用中、現用記憶部や予備記憶部を管理制御するストレージ制御装置(制御部)は、以下のようなパトロール処理を実行する。当該パトロール処理では、現用記憶部や予備記憶部に対しVERIFYコマンドあるいはREADコマンドが定期的に発行され、これらのコマンドに対する現用記憶部や予備記憶部からの応答が監視される。これにより、各記憶部(各SSD)の正常性、つまり各記憶部(各SSD)がアクセス可能な状態で接続されていることが確認される。
また、上述のようなストレージ装置において、運用に供していたSSDが保守交換や機器リプレース等のために撤去される際、情報漏えい対策として、当該SSDに格納された情報を初期化する処理が行なわれる場合がある。この場合、ストレージ装置には、例えば、初期化処理をSSDに実行させるSANITIZEコマンド(サニタイズコマンド)が用意される。そして、SSDの撤去時に当該SSDに対しSANITIZEコマンドを発行して初期化処理(サニタイズ処理)を実行させる場合がある。なお、SSDの初期化処理後にSSDのフォーマット処理は不要である。
一方、SSDにおいては、上述したように、ゴミ領域を収集解放するガベージコレクション処理が、SSDの自律動作によって決定されるタイミングで、SSDの自律動作によって実行される場合がある。ガベージコレクション処理の実行中には、上述したように、SSDのアクセス性能(ライト性能)が低下することが知られている(図4参照)。
このため、故障記憶部の発生に伴ってHS−SSD(予備記憶部)を使用する際、リビルド動作やコピーバック動作とガベージコレクション動作とが同時に実行されると、迅速に故障記憶部のデータを復旧してデータの冗長性を回復させることができない。したがって、ストレージ装置の性能の低下を招くおそれがある。
そこで、本実施形態(第1及び第2実施形態)では、HS−SSDの使用時つまり故障記憶部の発生時に、HS−SSDのライト性能を確保可能にすることで、迅速に故障記憶部のデータを復旧できるようにして、ストレージ装置の性能が確保される。その際、本実施形態では、HS−SSDの正常性を確認するパトロール処理が改善され、HS−SSD使用時におけるガベージコレクション処理によるライト性能への影響が低減される。
特に、図2及び図3を参照しながら後述する第1実施形態では、ストレージ装置の通常運用中において、定期的なパトロール処理のタイミングで、HS−SSDの状態が確認される。そして、HS−SSDの状態がガベージコレクション処理を実行されるような状況(例えば、ゴミ領域が多い状況、空き領域の少ない状況)である場合に、第1コマンド(サニタイズコマンド)が発行されHS−SSDの初期化処理が実行される。つまり、HS−SSDは、ストレージ装置の通常運用中にガベージコレクション処理を実行されるような状況になると、サニタイズコマンドによって迅速に初期化され、HS−SSDは最高性能を有する状態に回復する。ここで、サニタイズコマンドによる初期化処理は、HS−SSDについての、処理時間に対する性能回復度合いに優れている。
したがって、第1実施形態では、故障記憶部の発生に伴ってHS−SSDを実際に使用する際にはHS−SSDにおいてガベージコレクション処理を実行する必要がなくなる。これにより、HS−SSDの使用時にHS−SSDのライト性能が確保され迅速に故障記憶部のデータを復旧することができるので、ストレージ装置の性能を確保することができる。
また、過度なサニタイズ処理は、HS−SSD(NAND型フラッシュメモリ)の寿命を縮め、HS−SSDの信頼性の低下を招くことになる。
そこで、図6及び図7を参照しながら後述する第2実施形態では、第1実施形態と同様、ストレージ装置の通常運用中において、定期的なパトロール処理のタイミングで、HS−SSDの状態が確認される。
そして、第2実施形態では、HS−SSDの状態がガベージコレクション処理を実行されるような状況で、且つ、現用記憶部における故障の予兆が有る場合(つまり緊急度の高い場合)に、第1コマンドが発行されHS−SSDの初期化処理が実行され、HS−SSDは最高性能を有する状態に回復する。一方、HS−SSDの状態がガベージコレクション処理を実行されるような状況で、且つ、現用記憶部における故障の予兆が無い場合(つまり緊急度の低い場合)に、第2コマンドが発行される。第2コマンドは、HS−SSDにガベージコレクション処理を実行させるガベージコレクションコマンドである。
したがって、第2実施形態では、ガベージコレクション処理を実行する状況下で故障の予兆が有る緊急度の高い状況でのみ、HS−SSDに対するサニタイズ処理(初期化処理)が実行され、HS−SSDは最高性能を有する状態に回復する。そして、ガベージコレクション処理を実行する状況下で故障の予兆が無い緊急度の低い状況では、HS−SSDに対し、サニタイズ処理が実行されず、ガベージコレクション処理が実行される。
これにより、サニタイズ処理の過度な実行が抑止されHS−SSDの短寿命化を抑止しながら、緊急度の高い場合には、第1実施形態と同様、HS−SSDのライト性能が確保され迅速に故障記憶部のデータを復旧することができる。つまり、第2実施形態によれば、HS−SSDの高信頼性とストレージ装置の高性能とが両立される。
〔2〕本実施形態のストレージ装置のハードウェア構成
まず、図1を参照しながら、本実施形態(第1及び第2実施形態)のストレージ制御装置100を含むストレージ装置1について説明する。なお、図1は、本実施形態のストレージ制御装置100を含むストレージ装置1のハードウェア構成の一例を示すブロック図である。
本ストレージ装置1は、複数の記憶部(記憶デバイス)31を格納されるDE(Drive Enclosure;記憶装置;RAID装置)30を有する。各記憶部31は、後述するごとく、ストレージ制御装置100(100aまたは100b)によって制御され、上位装置であるホスト装置(サーバ)2によってアクセスされる。
本ストレージ装置1は、一以上(図1に示す例では一)のホスト装置2に対して通信可能に接続されている。ホスト装置2とストレージ装置1とは、後述するCA(Communication Adapter)101,102により接続されている。
ホスト装置2は、例えば、サーバ機能をそなえた情報処理装置であり、本ストレージ装置1との間において、NAS(Network Attached Storage)やSAN(Storage Area Network)のコマンドを送受信する。ホスト装置2は、例えば、ストレージ装置1に対してNASにおけるリード/ライト等のストレージアクセスコマンドを送信することにより、ストレージ装置1が提供するボリュームにデータの書込または読出を行なう。
そして、本ストレージ装置1は、ホスト装置2からボリュームに対して行なわれる入出力要求(例えば、書込み要求や読出し要求)に応じて、このボリュームに対応する記憶部31に対して、データの読出(リード)や書込(ライト)等の処理を行なう。なお、ホスト装置2からの入出力要求のことをI/O要求という場合がある。
なお、ストレージ装置1には、管理端末3が通信可能に接続されている。管理端末3は、キーボードやマウス等の入力装置や、表示装置を備える情報処理装置であって、システム管理者等のユーザが各種情報の入力操作を行なう。例えば、ユーザは、管理端末3を介して、各種設定等に係る情報を入力する。入力された情報は、ホスト装置2やストレージ装置1に送信される。
本ストレージ装置1は、図1に示すように、複数(本実施形態では二)のCM(Controller Module)100a,100b及び一以上(図1に示す例では一のみ図示)のDE30をそなえる。
DE30は、二以上の記憶部31を搭載可能であり、これらの記憶部31の記憶領域(実ボリューム,実ストレージ)を、本ストレージ装置1に対して提供する。DE30は、複数段のスロット(図示省略)をそなえ、これらのスロットに、記憶部31を挿入することにより、実ボリューム容量を随時変更することができる。また、複数の記憶部31を用いてRAIDを構成することができる。
例えば、図1に示すDE30において、4つの記憶部31は、後述するメモリ106と比較すると容量の大きいSSDである。4つの記憶部31のうちの3つの記憶部31aは実際の運用に用いられる現用記憶部であり、これら3つの現用記憶部31aによってRAID5(2+1)が構成される。また、4つの記憶部31のうちの残りの一つの記憶部31bは、現用記憶部31aのうちの一つに故障が生じた際にデータのリビルド処理に用いられる予備記憶部である。なお、3つの現用記憶部31aはそれぞれSSD#1〜#3と表記されてもよいし、一つの予備記憶部31bはSSD#4またはHD−SSDと表記されてもよい。
DE30は、CM100aのデバイスアダプタ(Device Adapter:DA)103,103とCM100bのDA103,103とそれぞれ接続されている。そして、DE30には、CM100a,100bのいずれからもアクセスして、データの書込や読出を行なうことができる。すなわち、DE30の各記憶部31に対して、CM100a,100bのそれぞれを接続することにより、記憶部31へのアクセス経路が冗長化されている。
CE(Controller Enclosure)40は、一以上(図1に示す例では二)のCM100a,100bを備える。
CM100a,100bは、ストレージ装置1内の動作を制御するコントローラ(ストレージ制御装置)であり、ホスト装置2から送信されるI/O要求に従って、DE30の記憶部31へのデータアクセス制御等、各種制御を行なう。又、CM100a,100bは互いに同様の構成を有している。以下、CMを示す符号としては、複数のCMのうち1つを特定する場合には符号100a,100bを用い、任意のCMを指すときには符号100を用いる。また、CM100aをCM#1と、CM100bをCM#2と、それぞれ表す場合がある。
CM100a,100bは二重化されており、通常は、CM100a(CM#1)がプライマリとして各種制御を行なう。しかし、プライマリCM100aの故障時には、セカンダリのCM100b(CM#2)がプライマリとしてCM100aの動作を引き継ぐ。
CM100a,100bは、CA101,102を介して、それぞれホスト装置2に接続される。そして、CM100a,100bは、ホスト装置2から送信されるリード/ライト等のI/O要求を受信し、DA103等を介して記憶装置31の制御を行なう。また、CM100a,100bは、PCIe(Peripheral Component Interconnect Express)等の図示しないインタフェースを介して相互に通信可能に接続される。
CM100は、図1に示すように、CA101,102と複数(図1に示す例では二)のDA103,103とをそなえるとともに、CPU(Central Processing Unit)105,メモリ106,フラッシュメモリ107およびIOC(Input Output Controller)108をそなえる。CA101,102,DA103,CPU105,メモリ106,フラッシュメモリ107,IOC108は、例えばPCIeインタフェース104を介して相互に通信可能に接続される。
CA101,102は、ホスト装置2や管理端末3等から送信されたデータを受信したり、CM100から出力するデータをホスト装置2や管理端末3等に送信する。すなわち、CA101,102は、ホスト装置2等の外部装置との間でのデータの入出力を制御する。
CA101は、NASを介してホスト装置2や管理端末3と通信可能に接続するネットワークアダプタであり、例えば、LAN(Local Area Network)インタフェース等である。各CM100は、CA101により図示しない通信回線を介してホスト装置2等とNASにより接続され、I/O要求の受信やデータの送受信等を行なう。図1に示す例においては、CM100a,100bのそれぞれに二つのCA101,101がそなえられている。
CA102は、SANを介してホスト装置2と通信可能に接続するネットワークアダプタであり、例えば、iSCSI(Internet Small Computer System Interface)インタフェースやFC(Fibre Channel)インタフェースである。各CM100は、CA102により図示しない通信回線を介してホスト装置2等とSANにより接続され、I/O要求の受信やデータの送受信等を行なう。図1に示す例においては、CM100a,100bのそれぞれに1つのCA102がそなえられている。
DA103は、DE30や記憶部31等と通信可能に接続するためのインタフェースである。DA103は、DE30の記憶部31が接続され、各CM100は、ホスト装置2から受信したI/O要求に基づき、記憶部31に対するアクセス制御を行なう。
各CM100は、DA103を介して、記憶部31に対するデータの書込や読出を行なう。また、図1に示す例においては、CM100a,100bのそれぞれに二つのDA103,103がそなえられている。そして、CM100a,100bのそれぞれにおいて、各DA103にDE30が接続されている。
これにより、DE30の記憶装置31には、CM100a,100bのいずれからもデータの書込や読出を行なうことができる。
フラッシュメモリ107は、CPU105が実行するプログラムや種々のデータ等を格納する記憶装置である。
メモリ106は、種々のデータやプログラムを一時的に格納する記憶装置であり、後述するキャッシュ領域161やメモリ領域162をそなえる(図2,図6参照)。キャッシュ領域161は、ホスト装置2から受信したデータや、ホスト装置2に対して送信するデータを一時的に格納する。アプリケーション用メモリ領域162は、CPU105がアプリケーションプログラムを実行する際に、データやプログラムを一時的に格納する。
アプリケーションプログラムは、例えば、本実施形態のストレージ制御機能を実現すべくCPU105が実行するストレージ制御プログラム160または160A(図2,図6参照)である。ストレージ制御プログラム160または160Aは、メモリ106あるいはフラッシュメモリ107に保存される。なお、メモリ106は、前述した記憶部31と比較するとアクセス速度は高速であるが容量の小さい、RAM(Random Access Memory)等である。
IOC108は、各CM100内におけるデータ転送を制御する制御装置であり、例えば、メモリ106に格納されたデータをCPU105を介することなく転送させるDMA(Direct Memory Access)転送を実現する。
CPU105は、種々の制御や演算を行なう処理装置であり、例えばマルチコアプロセッサ(マルチCPU)である。CPU105は、メモリ106,フラッシュメモリ107等に格納されたOS(Operating System)やプログラムを実行することにより、種々の機能を実現する。
〔3〕第1実施形態
ついで、図2を参照しながら、第1実施形態のストレージ制御装置(CM)100の機能構成について説明する。なお、図2は、第1実施形態のCM100の機能構成の一例を示すブロック図である。
第1実施形態のCM100において、CPU105は、ストレージ制御プログラム160を実行することで、図2に示すように、第1判定部151及び第1コマンド発行部152として機能する。
なお、ストレージ制御プログラム160は、コンピュータ読取可能な記録媒体であって可搬型の非一時的な記録媒体に記録された形態で提供される。当該記録媒体としては、磁気ディスク,光ディスク,光磁気ディスクなどが挙げられる。また、光ディスクとしては、CD(Compact Disk),DVD(Digital Versatile Disk),ブルーレイディスクなどが挙げられる。CDは、CD−ROM(Read Only Memory),CD−R(Recordable)/RW(ReWritable)などを含む。DVDは、DVD−RAM,DVD−ROM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD(High Definition) DVDなどを含む。
このとき、CPU105は、上述のごとき記録媒体からストレージ制御プログラム160を読み取って内部記憶装置(例えばメモリ106やフラッシュメモリ107)または外付けの記憶装置に格納して用いる。なお、CPU105は、ストレージ制御プログラム160を、ネットワーク(図示略)を介して受信し内部記憶装置または外付けの記憶装置に格納して用いてもよい。
第1判定部151は、上述した定期的なパトロール処理のタイミング(VERIFYコマンド/READコマンドの発行タイミング)で、HS−SSD31bにおける使用不可領域(ゴミ領域)の量が所定基準を超えているか否かを判定する。
本実施形態において、HS−SSD31bは、上述したように、HS−SSD31bの状態に応じて、ゴミ領域の解放処理であるガベージコレクション処理を自律的に実行する機能を有している。
また、HS−SSD31bは、当該HS−SSD31bの状態がゴミ領域の解放処理を実行する状態(ガベージコレクションが実行されるような状況)であるか否かを把握する機能を有している。このとき、HS−SSD31bは、例えば、VERIFYコマンドによって検出されるRAID構成メンバSSDの数以下のHS−SSDのフリースペースの量が第1閾値以下であるか否かを把握している。当該フリースペースの量が第1閾値以下である状況は、ガベージコレクションを実行する状況に相当する一方、当該フリースペースの量が第1閾値を超える状況は、ガベージコレクションを実行しない状況に相当する。第1閾値としては、予め設定されたデフォルト値が用いられてもよいし、ユーザによって設定された値が用いられてもよい。
このとき、第1判定部151は、HS−SSD31bの状態を確認し、HS−SSD31bがガベージコレクションを実行する状態であるか否かを確認する。第1判定部151は、HS−SSD31bがガベージコレクションを実行する状態である場合に、HS−SSD31bにおけるゴミ領域の量が所定基準を超えていると判定する。一方、第1判定部151は、HS−SSD31bがガベージコレクションを実行する状態でない場合に、HS−SSD31bにおけるゴミ領域の量が所定基準を超えていないと判定する。
第1コマンド発行部152は、第1判定部151によってゴミ領域の量が所定基準を超えていると判定された場合に、HS−SSD31bに初期化処理(サニタイズ処理)を実行させるサニタイズコマンドを、HS−SSD31bに対し発行する。
また、第1コマンド発行部152は、第1判定部151によってゴミ領域の量が所定基準を超えていないと判定された場合に、HS−SSD31bに対し何らコマンドを発行しない。つまり、ストレージ制御装置100は、HS−SSD31bが有する前述した自律動作機能に、ガベージコレクション処理を委ねる。
次に、図3に示すフローチャート(ステップS11〜S14)に従って、図2に示すストレージ制御装置100の動作(パトロール処理)について説明する。
ストレージ装置1の運用中、ストレージ制御装置(制御部)100は、パトロール処理を定期的に実行する。つまり、RAID装置30内の全てのSSD31に対し、VERIFYコマンドあるいはREADコマンドが定期的に発行され、これらのコマンドに対するSSD31からの応答が監視される(ステップS11)。これにより、各SSD31の正常性、つまり各SSD31がアクセス可能な状態で接続されていることが確認される。
この後、第1判定部151(制御部100)は、HS−SSD31bの状態を確認するコマンドを、HS−SSD31bに発行する(ステップS12)。当該コマンドは、VERIFYコマンドによって検出されるRAID構成メンバSSD31aの数以下のHS−SSD31bのフリースペースの量が第1閾値以下であるか否かを確認するためのコマンドである。
第1判定部151は、当該コマンドに対するHS−SSD31bからの応答内容を確認することで、HS−SSD31bのフリースペースの量が第1閾値以下であるか否かを確認する(ステップS13)。
HS−SSD31bのフリースペースの量が第1閾値以下である場合つまりガベージコレクションを実行する状況である場合(ステップS13のYESルート)、第1コマンド発行部152は、サニタイズコマンドをHS−SSD31bに対し発行する(ステップS14)。これにより、第1コマンド発行部152は、HS−SSD31bに初期化処理(サニタイズ処理)を実行させる。
一方、HS−SSD31bのフリースペースの量が第1閾値を超える場合つまりガベージコレクションを実行しない状況である場合(ステップS13のNOルートから処理終了)、第1コマンド発行部152は、HS−SSD31bに対し何らコマンドを発行しない。このとき、ガベージコレクション処理は、HS−SSD31bが有する自律動作機能によって実行される。
なお、ガベージコレクション処理が実行されるような状況でないと判断された後(ステップS13のNOルート)に、現用記憶部31aで故障が発生したとする。その際、HS−SSD31bを使用してデータ復旧を行なうことになる。しかし、HS−SSD31bはガベージコレクション処理が実行されるような状況ではないため、ガベージコレクション処理と、データ復旧処理に伴うリビルド動作やコピーバック処理とが競合することはない。また、ガベージコレクション処理が実行されるような状況でないと判断された後に、断片的なゴミ領域が増加してガベージコレクション処理が実行されるような状況になった場合には、HS−SSD31bは、ガベージコレクション処理を自律的に実行する。
上述したように、第1実施形態によれば、ストレージ装置1の通常運用中において、定期的なパトロール処理のタイミングで、HS−SSD31bの状態が確認される。そして、HS−SSD31bの状態がガベージコレクション処理を実行されるような状況(例えば、ゴミ領域の占める割合が所定閾値を超えた状況)である場合に、サニタイズコマンドが発行されHS−SSD31bの初期化処理が実行される。つまり、HS−SSD31bは、ストレージ装置1の通常運用中にガベージコレクション処理を実行されるような状況になると、サニタイズコマンドによって迅速に初期化され、HS−SSD31bは最高性能を有する状態に回復する。
したがって、第1実施形態によれば、故障記憶部の発生に伴ってHS−SSD31bを実際に使用する際には、HS−SSD31bにおいてガベージコレクション処理を実行する必要がなくなる。これにより、HS−SSD31bの使用時に、HS−SSD31bのライト性能が、図4に示す従来例に比較して図5に示すように確保され、迅速に故障記憶部のデータを復旧することができるので、ストレージ装置1の性能を確保することができる。
なお、図4は、HS−SSD31bの使用時における従来のライト性能の一例(ワーストケース)を示す図である。図5は、HS−SSD31bの使用時における、本実施形態で得られるライト性能の一例を示す図である。
〔4〕第2実施形態
ついで、図6を参照しながら、第2実施形態のストレージ制御装置(CM)100の機能構成について説明する。なお、図6は、第2実施形態のCM100の機能構成の一例を示すブロック図である。
第2実施形態のCM100において、CPU105は、ストレージ制御プログラム160Aを実行することで、図6に示すように、第1判定部151,第1コマンド発行部152,第2判定部153及び第1コマンド発行部154として機能する。
なお、ストレージ制御プログラム160Aも、コンピュータ読取可能な記録媒体であって可搬型の非一時的な記録媒体に記録された形態で提供される。当該記録媒体としては、磁気ディスク,光ディスク,光磁気ディスクなどが挙げられる。また、光ディスクとしては、CD,DVD,ブルーレイディスクなどが挙げられる。CDは、CD−ROM,CD−R/RWなどを含む。DVDは、DVD−RAM,DVD−ROM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVDなどを含む。
このとき、CPU105は、上述のごとき記録媒体からストレージ制御プログラム160Aを読み取って内部記憶装置(例えばメモリ106やフラッシュメモリ107)または外付けの記憶装置に格納して用いる。なお、CPU105は、ストレージ制御プログラム160Aを、ネットワーク(図示略)を介して受信し内部記憶装置または外付けの記憶装置に格納して用いてもよい。
第1判定部151は、第1実施形態の第1判定部151と同様にして、定期的なパトロール処理のタイミング(VERIFYコマンド/READコマンドの発行タイミング)で、HS−SSD31bにおけるゴミ領域の量が所定基準を超えているか否かを判定する。
第2判定部153は、RAID構成メンバSSD(現用記憶部)31aにおける故障の予兆の有無を判定する。このとき、第2判定部153は、RAID構成メンバSSD31aから取得されるログ情報に基づき、RAID構成メンバSSD31a毎に算出される統計値に応じて、RAID構成メンバSSD31aにおける故障の予兆の有無を判定する。
特に、第2実施形態において、制御部100(第2判定部153)は、各RAID構成メンバSSD31aに対しログセンスコマンド(ログ情報収集コマンド)を発行し、各RAID構成メンバSSD31aから各種ログ情報を収集する。第2判定部153は、収集した各種ログ情報に基づき、RAID構成メンバSSD31a毎に統計値を算出確認し、算出確認した統計値を第2閾値と比較する。そして、第2判定部153は、算出した統計値が第2閾値を超えた場合、当該統計値に対応するRAID構成メンバSSD31aにおいて故障の予兆が有ると判定する。一方、第2判定部153は、算出した統計値が第2閾値以下の場合、当該統計値に対応するRAID構成メンバSSD31aにおいて故障の予兆が無いと判定する。第2閾値としては、予め設定されたデフォルト値が用いられてもよいし、ユーザによって設定された値が用いられてもよい。
各RAID構成メンバSSD31aから収集される各種ログ情報としては、例えば、各RAID構成メンバSSD31aにおける、ライト量、リード量、ライトエラー数、リードエラー数、SSD寿命情報、余裕容量、稼働時間などが挙げられる。第2判定部153は、各RAID構成メンバSSD31aのリード及びライトエラー情報と内部ログのエラー累積値とを統計的手法により解析することで、RAID構成メンバSSDの故障予兆を検知判定する。
なお、各RAID構成メンバSSD31aについての統計値は、第2判定部153において算出されてもよいし、各RAID構成メンバSSD31aにおいて算出されてもよい。統計値を各RAID構成メンバSSD31aにおいて算出する場合、第2判定部153は、ログセンスコマンドを各RAID構成メンバSSD31aに発行することで、各RAID構成メンバSSD31aによって算出された統計値を収集してもよい。
また、第2判定部153としての機能は、各RAID構成メンバSSD31aに備えられてもよい。この場合、故障の予兆の有無は、各RAID構成メンバSSD31a側で検知判定され、第2判定部153(制御部100)からのコマンドによって確認されるようにしてもよい。
第1コマンド発行部152は、第1判定部151によってゴミ領域の量が所定基準を超えていると判定され且つ第2判定部153によってRAID構成メンバ31aにおける故障の予兆が有ると判定された場合に、サニタイズコマンドをHS−SSD31bに対し発行する。
第2コマンド発行部154は、第1判定部151によってゴミ領域の量が所定基準を超えていると判定され且つ第2判定部153によってRAID構成メンバ31aにおける故障の予兆が無いと判定された場合に、ガベージコレクション処理の実行を指示する第2コマンド(ガベージコレクションコマンド)を、HS−SSD31bに対し発行する。
なお、第1コマンド発行部152は、第1実施形態と同様、第1判定部151によってゴミ領域の量が所定基準を超えていないと判定された場合に、HS−SSD31bに対し何らコマンドを発行しない。つまり、ストレージ制御装置100は、HS−SSD31bが有する前述した自律動作機能に、ガベージコレクション処理を委ねる。
次に、図7に示すフローチャート(ステップS11〜S14,S21〜S23)に従って、図6に示すストレージ制御装置100の動作(パトロール処理)について説明する。
第2実施形態においても、ストレージ装置1の運用中、ストレージ制御装置(制御部)100は、パトロール処理を定期的に実行する。つまり、RAID装置30内の全てのSSD31に対し、VERIFYコマンドあるいはREADコマンドが定期的に発行され、これらのコマンドに対するSSD31からの応答が監視される(ステップS11)。これにより、各SSD31の正常性、つまり各SSD31がアクセス可能な状態で接続されていることが確認される。
この後、第1判定部151(制御部100)は、HS−SSD31bの状態を確認するコマンドを、HS−SSD31bに発行する(ステップS12)。当該コマンドは、VERIFYコマンドによって検出されるRAID構成メンバSSD31aの数以下のHS−SSD31bのフリースペースの量が第1閾値以下であるか否かを確認するためのコマンドである。
第1判定部151は、当該コマンドに対するHS−SSD31からの応答内容を確認することで、HS−SSD31bのフリースペースの量が第1閾値以下であるか否かを確認する(ステップS13)。
HS−SSD31bのフリースペースの量が第1閾値を超える場合つまりガベージコレクションを実行しない状況である場合(ステップS13のNOルートから処理終了)、第1コマンド発行部152は、HS−SSD31bに対し何らコマンドを発行しない。このとき、ガベージコレクション処理は、HS−SSD31bが有する自律動作機能によって実行される。
なお、ガベージコレクション処理が実行されるような状況でないと判断された後(ステップS13のNOルート)に、現用記憶部31aで故障が発生したとする。その際、HS−SSD31bを使用してデータ復旧を行なうことになる。しかし、HS−SSD31bはガベージコレクション処理が実行されるような状況ではないため、ガベージコレクション処理と、データ復旧処理に伴うリビルド動作やコピーバック処理とが競合することはない。また、ガベージコレクション処理が実行されるような状況でないと判断された後に、断片的なゴミ領域が増加してガベージコレクション処理が実行されるような状況になった場合には、HS−SSD31bは、ガベージコレクション処理を自律的に実行する。
一方、HS−SSD31bのフリースペースの量が第1閾値以下である場合つまりガベージコレクションを実行する状況である場合(ステップS13のYESルート)、制御部100は、各RAID構成メンバSSD31aに対しログセンスコマンドを発行する。第2判定部153は、当該ログセンスコマンドに応じて収集された各種ログ情報に基づき、RAID構成メンバSSD31a毎に統計値を算出し確認する(ステップS21)。
そして、第2判定部153は、RAID構成メンバSSD31b毎に確認した統計値と第2閾値とを比較する(ステップS22)。
ステップS22での比較の結果、算出した統計値が第2閾値を超えた場合(YESルート)、第2判定部153は、当該統計値に対応するRAID構成メンバSSD31aにおいて故障の予兆が有ると判定する。この判定結果に応じて、第1コマンド発行部152は、サニタイズコマンドをHS−SSD31bに対し発行する(ステップS14)。これにより、第1コマンド発行部152は、HS−SSD31bに初期化処理(サニタイズ処理)を実行させる。
一方、ステップS22での比較の結果、算出した統計値が第2閾値以下の場合(NOルート)、第2判定部153は、当該統計値に対応するRAID構成メンバSSD31aにおいて故障の予兆が無いと判定する。この判定結果に応じて、第2コマンド発行部154は、ガベージコレクション処理の実行を指示するガベージコレクションコマンドを、HS−SSD31bに対し発行する(ステップS23)。これにより、第2コマンド発行部154は、HS−SSD31bにガベージコレクション処理を実行させる。
次に、図8を参照しながら、図6に示すストレージ制御装置100の、より具体的な動作例(下記手順(1)〜(7))について説明する。
ここで制御対象となるRAID装置(DE)30は、図8に示すように、4本のSSD#1〜SSD#4を含み、これらのうち3本のSSD#1〜SSD#3によってRAID5(2+1)が構成され、残りの1本のSSD#4がHS(ホットスペア)であるものとする。また、ここで、簡便のために、4本のSSD#1〜SSD#4は、同一容量(例えば400GB)を有し、同一モデルのSSDであるとする。
(1) RAID装置30の初期設定に際しSSD#4をHSに設定する際、制御部100は、SSD#4に対しサニタイズコマンドを発行する。これにより、HS−SSD31bとしてのSSD#4は、初期化され、最高性能を有する状態に回復する。
(2) 制御部100は、SSD#1〜SSD#4に対し、定期的に各SSD31にVERIFY処理を実行させるVERIFYコマンドを、定期的に発行する。
(3) 制御部100は、SSD#4の状態がガベージコレクション処理を実行するような状況(例えば、ゴミ領域が多い状況、空き領域の少ない状況)であるか否かを判定する。
(4) 制御部100は、SSD#1〜SSD#3に対し、例えば一日一回、ログセンスコマンドを発行して、ログ情報(例えば、ライト量、リード量、ライトエラー数、リードエラー数、SSD寿命情報、余裕容量、稼働時間など)を収集する。そして、制御部100は、収集したログ情報の統計値を分析し、SSD#1〜SSD#3のそれぞれについて故障予兆の有無の監視を行なう。
(5) 制御部100は、上記手順(3)でSSD#4の状態がガベージコレクション処理を実行するような状況であると判定し、且つ上記手順(4)でSSD#1〜SSD#3に故障予兆が有ると判定した場合に、サニタイズコマンドをSSD#4に対し発行する。これにより、制御部100は、SSD#4に初期化処理(サニタイズ処理)を実行させる。
(6) 制御部100は、上記手順(3)でSSD#4の状態がガベージコレクション処理を実行するような状況であると判定し、且つ上記手順(4)でSSD#1〜SSD#3に故障予兆が無いと判定した場合、ガベージコレクションコマンドを、SSD#4に対し発行する。これにより、制御部100は、SSD#4にガベージコレクション処理を実行させる。
(7) 制御部100は、上記手順(3)でSSD#4の状態がガベージコレクション処理を実行するような状況でないと判定した場合、SSD#4に対し何らコマンドを発行しない。このとき、ガベージコレクション処理は、SSD#4が有する自律動作機能によって実行される。
上述のような手順(1)〜(7)の処理(特に手順(5)の処理)によって、ガベージコレクション処理を実行するような状態のSSD#4は、例えばSSD#1の故障の予兆が検知された段階で(つまりSSD#1で故障が発生する前に)初期化される。したがって、SSD#4は、故障発生前に、図4に示すごとく性能の低下した状態から、最高性能を有する状態(図5参照)に回復する。これにより、制御部100は、所定の時間内に、SSD#1のデータのリビルド等の復旧処理を完了させることができる。
上述したように、第2実施形態によっても、ストレージ装置1の通常運用中において、定期的なパトロール処理のタイミングで、HS−SSD31bの状態が確認される。
そして、第2実施形態では、HS−SSD31bの状態がガベージコレクション処理を実行されるような状況で、且つ、RAID構成メンバSSD31aにおける故障の予兆が有る場合(つまり緊急度の高い場合)に、サニタイズコマンドが発行されHS−SSD13bの初期化処理が実行され、HS−SSD31bは最高性能を有する状態に回復する。
一方、HS−SSD13bの状態がガベージコレクション処理を実行されるような状況で、且つ、RAID構成メンバSSD31aにおける故障の予兆が無い場合(つまり緊急度の低い場合)に、ガベージコレクションコマンドが発行される。
したがって、第2実施形態では、ガベージコレクション処理を実行する状況下で故障の予兆が有る緊急度の高い状況でのみ、HS−SSD31bに対するサニタイズ処理が実行され、HS−SSD31bは最高性能を有する状態に回復する。そして、ガベージコレクション処理を実行する状況下で故障の予兆が無い緊急度の低い状況では、HS−SSD31bに対し、サニタイズ処理が実行されず、ガベージコレクション処理が実行される。
これにより、サニタイズ処理の過度な実行が抑止されHS−SSD31bの短寿命化を抑止しながら、緊急度の高い場合には、第1実施形態と同様、HS−SSD31bのライト性能が確保され(図5参照)、迅速に故障記憶部のデータを復旧することができる。つまり、第2実施形態によれば、HS−SSD31bの高信頼性とストレージ装置1の高性能ととの両立が可能になる。
〔5〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
例えば、上述した実施形態では、記憶部がSSDである場合について説明したが、本発明は、これに限定されるものではなく、SSDと同様のガベージコレクション処理を必要とする記憶デバイスを備えるストレージ装置であれば、本実施形態と同様に適用され、本実施形態と同様の作用効果を得ることができる。
また、上述した実施形態では、RAID5(2+1)を構成する3つの現用記憶部と、1つの予備記憶部とを備えるストレージ装置を対象とする場合について説明したが、本発明は、これらの数やRAID構成に限定されるものではない。
〔6〕付記
以上の各実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
現用記憶部及び予備記憶部を含む複数の記憶部と、
前記複数の記憶部を制御する制御部と、を有し、
前記制御部は、
前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定する第1判定部と、
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する第1コマンド発行部と、を有する、ストレージ装置。
(付記2)
前記制御部は、
前記現用記憶部における故障の予兆の有無を判定する第2判定部をさらに有し、
前記第1コマンド発行部は、前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が有ると判定された場合に、前記第1コマンドを前記予備記憶部に対し発行する、付記1に記載のストレージ装置。
(付記3)
前記制御部は、
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が無いと判定された場合に、前記予備記憶部に前記使用不可領域の解放処理を実行させる第2コマンドを、前記予備記憶部に対し発行する第2コマンド発行部をさらに有する、付記2に記載のストレージ装置。
(付記4)
前記第2判定部は、前記現用記憶部から取得されるログ情報に基づき前記現用記憶部毎に算出される統計値に応じて、前記現用記憶部における故障の予兆の有無を判定する、付記3に記載のストレージ装置。
(付記5)
前記予備記憶部は、前記予備記憶部の状態に応じて前記使用不可領域の解放処理を自律的に実行する機能を有し、
前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態である場合に、前記使用不可領域の量が前記所定基準を超えていると判定する、付記1〜付記4のいずれか一項に記載のストレージ装置。
(付記6)
前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態でない場合に、前記使用不可領域の量が前記所定基準を超えていないと判定する、付記5に記載のストレージ装置。
(付記7)
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていないと判定された場合に、前記制御部は、前記予備記憶部の前記機能に前記使用不可領域の解放処理を委ねる、付記6に記載のストレージ装置。
(付記8)
現用記憶部及び予備記憶部を含む複数の記憶部を制御するストレージ制御装置であって、
前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定する第1判定部と、
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する第1コマンド発行部と、を有する、ストレージ制御装置。
(付記9)
前記現用記憶部における故障の予兆の有無を判定する第2判定部をさらに有し、
前記第1コマンド発行部は、前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が有ると判定された場合に、前記第1コマンドを前記予備記憶部に対し発行する、付記8に記載のストレージ制御装置。
(付記10)
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が無いと判定された場合に、前記予備記憶部に前記使用不可領域の解放処理を実行させる第2コマンドを、前記予備記憶部に対し発行する第2コマンド発行部をさらに有する、付記9に記載のストレージ制御装置。
(付記11)
前記第2判定部は、前記現用記憶部から取得されるログ情報に基づき前記現用記憶部毎に算出される統計値に応じて、前記現用記憶部における故障の予兆の有無を判定する、付記9または付記10に記載のストレージ制御装置。
(付記12)
前記予備記憶部は、前記予備記憶部の状態に応じて前記使用不可領域の解放処理を自律的に実行する機能を有し、
前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態である場合に、前記使用不可領域の量が前記所定基準を超えていると判定する、付記8〜付記11のいずれか一項に記載のストレージ制御装置。
(付記13)
前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態でない場合に、前記使用不可領域の量が前記所定基準を超えていないと判定する、付記12に記載のストレージ制御装置。
(付記14)
前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていないと判定された場合に、前記予備記憶部の前記機能に前記使用不可領域の解放処理を委ねる、付記13に記載のストレージ制御装置。
(付記15)
現用記憶部及び予備記憶部を含む複数の記憶部を制御するコンピュータに、
前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定し、
前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する、
処理を実行させる、ストレージ制御プログラム。
(付記16)
前記現用記憶部における故障の予兆の有無を判定し、
前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記現用記憶部における故障の予兆が有ると判定された場合に、前記第1コマンドを前記予備記憶部に対し発行する、
処理を、前記コンピュータに実行させる、付記15に記載のストレージ制御プログラム。
(付記17)
前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記現用記憶部における故障の予兆が無いと判定された場合に、前記予備記憶部に前記使用不可領域の解放処理を実行させる第2コマンドを、前記予備記憶部に対し発行する、
処理を、前記コンピュータに実行させる、付記16に記載のストレージ制御プログラム。
(付記18)
前記現用記憶部から取得されるログ情報に基づき前記現用記憶部毎に算出される統計値に応じて、前記現用記憶部における故障の予兆の有無を判定する、
処理を、前記コンピュータに実行させる、付記16または付記17に記載のストレージ制御プログラム。
(付記19)
前記予備記憶部は、前記予備記憶部の状態に応じて前記使用不可領域の解放処理を自律的に実行する機能を有し、
前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態である場合に、前記使用不可領域の量が前記所定基準を超えていると判定する、
処理を、前記コンピュータに実行させる、付記15〜付記18のいずれか一項に記載のストレージ制御プログラム。
(付記20)
前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態でない場合に、前記使用不可領域の量が前記所定基準を超えていないと判定する、
処理を、前記コンピュータに実行させる、付記19に記載のストレージ制御プログラム。
1 ストレージ装置
2 ホスト装置(サーバ)
3 管理端末
100,100a,100b CM(ストレージ制御装置,制御部)
101,102 CA
103 DA
104 PCIeインタフェース
105 CPU(処理部,コンピュータ)
151 第1判定部
152 第1アクセス発行部
153 第2判定部
154 )第2アクセス発行部
106 メモリ
160,160A ストレージ制御プログラム
161 キャッシュ領域
162 アプリケーション用メモリ領域
107 フラッシュメモリ
108 IOC
30 DE(記憶装置,RAID装置)
31 記憶部(SSD#1〜SSD#4)
31a 現用記憶部(SSD#1〜SSD#3;RAID構成メンバSSD)
31b 予備記憶部(SSD#4;HS−SSD)
40 CE

Claims (9)

  1. 現用記憶部及び予備記憶部を含む複数の記憶部と、
    前記複数の記憶部を制御する制御部と、を有し、
    前記制御部は、
    前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定する第1判定部と、
    前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する第1コマンド発行部と、を有する、ストレージ装置。
  2. 前記制御部は、
    前記現用記憶部における故障の予兆の有無を判定する第2判定部をさらに有し、
    前記第1コマンド発行部は、前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が有ると判定された場合に、前記第1コマンドを前記予備記憶部に対し発行する、請求項1に記載のストレージ装置。
  3. 前記制御部は、
    前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定され且つ前記第2判定部によって前記現用記憶部における故障の予兆が無いと判定された場合に、前記予備記憶部に前記使用不可領域の解放処理を実行させる第2コマンドを、前記予備記憶部に対し発行する第2コマンド発行部をさらに有する、請求項2に記載のストレージ装置。
  4. 前記第2判定部は、前記現用記憶部から取得されるログ情報に基づき前記現用記憶部毎に算出される統計値に応じて、前記現用記憶部における故障の予兆の有無を判定する、請求項2または請求項3に記載のストレージ装置。
  5. 前記予備記憶部は、前記予備記憶部の状態に応じて前記使用不可領域の解放処理を自律的に実行する機能を有し、
    前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態である場合に、前記使用不可領域の量が前記所定基準を超えていると判定する、請求項1〜請求項4のいずれか一項に記載のストレージ装置。
  6. 前記第1判定部は、前記予備記憶部の状態を確認し、前記予備記憶部の状態が前記使用不可領域の解放処理を実行する状態でない場合に、前記使用不可領域の量が前記所定基準を超えていないと判定する、請求項5に記載のストレージ装置。
  7. 前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていないと判定された場合に、前記制御部は、前記予備記憶部の前記機能に前記使用不可領域の解放処理を委ねる、請求項6に記載のストレージ装置。
  8. 現用記憶部及び予備記憶部を含む複数の記憶部を制御するストレージ制御装置であって、
    前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定する第1判定部と、
    前記第1判定部によって前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する第1コマンド発行部と、を有する、ストレージ制御装置。
  9. 現用記憶部及び予備記憶部を含む複数の記憶部を制御するコンピュータに、
    前記予備記憶部における使用不可領域の量が所定基準を超えているか否かを判定し、
    前記使用不可領域の量が前記所定基準を超えていると判定された場合に、前記予備記憶部に初期化を実行させる第1コマンドを、前記予備記憶部に対し発行する、
    処理を実行させる、ストレージ制御プログラム。
JP2016123584A 2016-06-22 2016-06-22 ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム Active JP6838299B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016123584A JP6838299B2 (ja) 2016-06-22 2016-06-22 ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016123584A JP6838299B2 (ja) 2016-06-22 2016-06-22 ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム

Publications (2)

Publication Number Publication Date
JP2017228078A true JP2017228078A (ja) 2017-12-28
JP6838299B2 JP6838299B2 (ja) 2021-03-03

Family

ID=60891651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016123584A Active JP6838299B2 (ja) 2016-06-22 2016-06-22 ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム

Country Status (1)

Country Link
JP (1) JP6838299B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014041638A1 (ja) * 2012-09-12 2014-03-20 株式会社 東芝 アレイにおける誤り訂正符号ブロック配置位置を管理するストレージ装置、ストレージコントローラ及び方法
JP2015052960A (ja) * 2013-09-09 2015-03-19 富士通株式会社 ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
WO2015194063A1 (ja) * 2014-06-16 2015-12-23 株式会社フィックスターズ メモリ管理方法、メモリ管理のためのプログラムおよびメモリ管理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014041638A1 (ja) * 2012-09-12 2014-03-20 株式会社 東芝 アレイにおける誤り訂正符号ブロック配置位置を管理するストレージ装置、ストレージコントローラ及び方法
JP2015052960A (ja) * 2013-09-09 2015-03-19 富士通株式会社 ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
WO2015194063A1 (ja) * 2014-06-16 2015-12-23 株式会社フィックスターズ メモリ管理方法、メモリ管理のためのプログラムおよびメモリ管理装置

Also Published As

Publication number Publication date
JP6838299B2 (ja) 2021-03-03

Similar Documents

Publication Publication Date Title
US9697087B2 (en) Storage controller to perform rebuilding while copying, and storage system, and control method thereof
US10432233B1 (en) Error correction processing in a storage device
US20140215147A1 (en) Raid storage rebuild processing
US7975168B2 (en) Storage system executing parallel correction write
US7607035B2 (en) Disk array apparatus and method for controlling the same
JP6191346B2 (ja) ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
US20070067666A1 (en) Disk array system and control method thereof
JP2017091456A (ja) 制御装置、制御プログラムおよび制御方法
JP2015099438A (ja) ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム
US9003140B2 (en) Storage system, storage control apparatus, and storage control method
US20140337667A1 (en) Managing errors in a raid
US8782465B1 (en) Managing drive problems in data storage systems by tracking overall retry time
US10606490B2 (en) Storage control device and storage control method for detecting storage device in potential fault state
US8433949B2 (en) Disk array apparatus and physical disk restoration method
JPH09269871A (ja) ディスクアレイ装置におけるデータ再冗長化方式
US10877844B2 (en) Using deletable user data storage space to recover from drive array failure
JP6201674B2 (ja) ストレージ制御装置,プログラム及び制御方法
JP2012018481A (ja) ディスクアレイ装置およびディスクアレイ制御方法
US10409663B2 (en) Storage system and control apparatus
JP6838299B2 (ja) ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム
US8930748B2 (en) Storage apparatus and controller
JP2008041080A (ja) 記憶制御システム、記憶制御システムの制御方法、ポートセレクタ、及びコントローラ
JP5585930B2 (ja) ディスクアレイ装置、及びデータ制御方法
JP2014041523A (ja) データ管理装置、及び、データ管理方法
US10977107B2 (en) Apparatus and method to control a storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190311

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200818

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210125

R150 Certificate of patent or registration of utility model

Ref document number: 6838299

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150