(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023043744
(43)【公開日】2023-03-29
(54)【発明の名称】ストレージデバイス、ストレージデバイスの制御方法、及びプログラム
(51)【国際特許分類】
G06F 11/07 20060101AFI20230322BHJP
G06F 3/06 20060101ALI20230322BHJP
G06F 11/34 20060101ALI20230322BHJP
G11B 20/18 20060101ALI20230322BHJP
G06F 11/30 20060101ALI20230322BHJP
【FI】
G06F11/07 193
G06F3/06 304R
G06F11/34 119
G11B20/18 570Z
G11B20/18 572B
G11B20/18 572F
G11B20/18 512A
G06F11/07 140M
G06F11/30 140M
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021151527
(22)【出願日】2021-09-16
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Linux
(71)【出願人】
【識別番号】390040187
【氏名又は名称】株式会社バッファロー
(74)【代理人】
【識別番号】100122275
【弁理士】
【氏名又は名称】竹居 信利
(72)【発明者】
【氏名】山本 恭之
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042KK04
5B042KK13
(57)【要約】
【課題】SMR型のHDDのデータ転送速度の低下による故障の誤認機会を低減できるストレージデバイス、ストレージデバイスの制御方法、及びプログラムを提供する。
【解決手段】所定のタイミングで、ハードディスクドライブの性能を検査し、当該検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、当該性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる対策処理を選択して実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
少なくとも1台のハードディスクドライブを含む複数の記憶装置を備えたストレージデバイスであって、
所定のタイミングで、前記ハードディスクドライブの性能を検査する検査手段と、
前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する実行手段と、を備え、
前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行するストレージデバイス。
【請求項2】
請求項1に記載のストレージデバイスであって、
前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるときには、性能低下状態にあることを通知する通知処理を実行するストレージデバイス。
【請求項3】
請求項2に記載のストレージデバイスであって、
前記通知処理において、SMR型のハードディスクドライブに通電したまま、書き込みを行わない状態で放置したときに、その内部キャッシュの使用率が所定割合だけ低下する時間であると予め実験的に定めた時間だけ待機するようユーザに案内するストレージデバイス。
【請求項4】
少なくとも1台のハードディスクドライブを含む複数の記憶装置に接続されるコンピュータを用い、
検査手段が、所定のタイミングで、前記ハードディスクドライブの性能を検査する工程と、
実行手段が、前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する工程と、を実行し、
前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行するストレージデバイスの制御方法。
【請求項5】
少なくとも1台のハードディスクドライブを含む複数の記憶装置を備えたストレージデバイスを制御するプログラムであって、
所定のタイミングで、前記ハードディスクドライブの性能を検査する検査手段と、
前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する実行手段と、
として機能させ、
前記実行手段として機能させる際には、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行するプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージデバイス、ストレージデバイスの制御方法、及びプログラムに関する。
【背景技術】
【0002】
SMR型(Shingled Magnetic Recording)のハードディスクドライブ(以下、HDDと記載)では、内部キャッシュの使用率が所定値(例えば80%など。ただしHDDごとに異なり得る)よりも高くなると、HDD自体が故障していないにも関わらず、データの読み出しや書き込みの速度(以下、データ転送速度という)が低下する場合がある。
【0003】
一方、NAS(Network Attacked Storage)等のコントローラは、当該NASが備えているHDDのデータ転送速度を監視し、データ転送速度が予め定めた基準よりも低下しているHDDを故障したものと判断する場合がある。例えば特許文献1には、HDDなどの記憶装置に対するデータアクセス要求への応答実績時間に基づいて応答時間平均値等を求め、記憶装置の性能低下を判断する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記従来例のコントローラを備えたNASのHDDとして、上記SMR型のHDDを用いると、当該HDDの内部キャッシュ使用率の上昇によってデータ転送速度が低下したときに、たとえ当該HDDが正常であったとしても、当該コントローラが当該HDDを故障したものと誤って判断する場合がある。
【0006】
NASのコントローラがHDDの内部キャッシュの使用率を直接取得できれば、当該内部キャッシュ使用率を参照してHDDの故障を判断することで、上記の誤った判断はなくなると考えられる。しかし、NASのコントローラは、HDDの内部キャッシュの使用率を取得する手段を備えていないのが一般的であり、HDDの内部キャッシュの使用率を取得できないのが現状である。
【0007】
本発明は上記実情に鑑みて為されたもので、HDDの内部キャッシュの使用率が取得できない状況であっても、SMR型のHDDにおいて内部キャッシュの使用率が上昇したために生じるデータ転送速度の低下による故障の誤認機会を低減できるストレージデバイス、ストレージデバイスの制御方法、及びプログラムを提供することを、その目的の一つとする。
【課題を解決するための手段】
【0008】
上記従来例の問題点を解決する本発明の一態様は、少なくとも1台のハードディスクドライブを含む複数の記憶装置を備えたストレージデバイスであって、所定のタイミングで、前記ハードディスクドライブの性能を検査する検査手段と、前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する実行手段と、を備え、前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行することとしたものである。
【0009】
このようにSMR型のハードディスクドライブについては、それ以外のハードディスクドライブとは異なる対策処理を行うことで、SMR型のハードディスクドライブにおいて内部キャッシュの使用率が上昇したために生じるデータ転送速度の低下による故障の誤認機会を低減できる。
【0010】
またここで前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるときには、性能低下状態にあることを通知する通知処理を実行することとしてもよい。
【0011】
これによりユーザは、SMR型のハードディスクドライブの性能が低下した状態にあることを知ることができる。
【0012】
さらにこの通知処理において、SMR型のハードディスクドライブに通電したまま、書き込みを行わない状態で放置したときに、その内部キャッシュの使用率が所定割合だけ低下する時間であると予め実験的に定めた時間だけ待機するようユーザに案内することとしてもよい。
【0013】
また本発明のもう一つの態様は、ストレージデバイスの制御方法であって、少なくとも1台のハードディスクドライブを含む複数の記憶装置に接続されるコンピュータを用い、検査手段が、所定のタイミングで、前記ハードディスクドライブの性能を検査する工程と、実行手段が、前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する工程と、を実行し、前記実行手段は、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行することとしたものである。
【0014】
これによっても、SMR型のハードディスクドライブにおいて内部キャッシュの使用率が上昇したために生じるデータ転送速度の低下による故障の誤認機会を低減できる。
【0015】
さらに本発明のまたもう一つの態様は、少なくとも1台のハードディスクドライブを含む複数の記憶装置を備えたストレージデバイスを制御するプログラムであって、所定のタイミングで、前記ハードディスクドライブの性能を検査する検査手段と、前記検査手段の前記検査の結果、性能が低下している状態にあると判断されるハードディスクドライブが見出されると、予め定められた対策処理を選択して実行する実行手段と、として機能させ、前記実行手段として機能させる際には、前記性能が低下している状態にあると判断されたハードディスクドライブがSMR型のハードディスクドライブであるか否かにより、互いに異なる前記対策処理を選択して実行することとしたものである。
【発明の効果】
【0016】
本発明によると、SMR型のHDDにおいて内部キャッシュの使用率が上昇したために生じるデータ転送速度の低下による故障の誤認機会を低減できる。
【図面の簡単な説明】
【0017】
【
図1】本発明の実施の形態のストレージデバイス及びホスト装置の構成例を表すブロック図である。
【
図2】本発明の実施の形態のストレージデバイスのコントローラの例を表す機能ブロック図である。
【
図3】本発明の実施の形態のストレージデバイスの動作例を表すフローチャート図である。
【発明を実施するための形態】
【0018】
本発明の実施の形態について図面を参照しながら説明する。本実施の形態に係るストレージデバイス10は、
図1に例示するように、記憶装置としてSMR(Shingled Magnetic Recording)型またはCMR(Conventional Magnetic Recording)型のいずれか一方のタイプのHDD11を複数備えるか、あるいは、SMR型またはCMR型のHDD11を少なくとも一つ備えるとともに、SSDなどの他の記憶装置を併せて備えて、全体で複数の記憶装置を備える。またこのストレージデバイス10は、コントローラ12と、表示部13と、通信部14とを含んで構成され、ネットワークやシリアルインタフェース等の通信手段を介してホスト装置20に接続される。一例としてこのストレージデバイス10は、RAID(Redundant Array of Inexpensive Disks)を構成するNAS等であり、ホスト装置20は、パーソナルコンピュータ等である。
【0019】
本実施の形態においてコントローラ12は、プログラム制御デバイスと、記憶素子などの記憶デバイスとを備える。この記憶デバイスは、その少なくとも一部が不揮発性の記憶デバイスであり、コントローラ12は、当該不揮発性の記憶デバイスに格納されたプログラムに従って所定の処理を実行する。またこの記憶デバイスは、コントローラ12のワークメモリとしても動作する。なお、この記憶デバイスに格納されるプログラムは、コンピュータが読み取り可能でかつ非一時的な記録媒体に格納されて提供されてもよい。
【0020】
本実施の形態の例では、コントローラ12は、通信部14を介してホスト装置20との間でデータを授受し、またホスト装置20から指示を受信してデータの書き込みやデータの読み出し等の一般的なストレージデバイスとしての処理を行う。
【0021】
また本実施の形態のコントローラ12は、RAIDコントローラとしても機能してもよい。RAIDコントローラとして機能するコントローラ12は、例えばHDD11が故障したと判断されるなど、所定の条件を満足する場合に、HDD11の少なくとも一部の使用を中止する等の処理(いわゆるデグレードモード(縮退状態)への移行処理)や、警告の処理等を行う。
【0022】
本実施の形態において特徴的なことの一つは、このコントローラ12が、所定のタイミングで、複数のHDD11のそれぞれについて性能検査処理を実行し、この性能検査処理の結果、いずれかのHDD11の性能が低下している状態にあると判断される場合に、予め定められた対策処理を選択して実行する。ここで対策処理においてコントローラ12は、性能が低下している状態にあると判断されたHDD11がSMR型のHDD11であるか否かにより、互いに異なる対策処理を選択的に実行することとする。このコントローラ12の具体的な動作の例については後に述べる。
【0023】
表示部13は、LEDランプ等であり、コントローラ12から入力される指示に従い、情報の表示出力を行う。通信部14は、ネットワークインタフェースやシリアル通信インタフェース等であり、ネットワークを介して、またはUSB(Universal Serial Bus)等の規格によるシリアル通信インタフェースを介してホスト装置20からデータの書き込み指示を受け入れ、コントローラ12に対して当該指示を出力する。またこの通信部14は、ホスト装置20からデータの読み出し指示を受けて、コントローラ12に対して当該指示を出力し、また、この指示に応じてコントローラ12が出力するデータを、ホスト装置20に対して送出する。
【0024】
次に、コントローラ12の動作例について説明する。本実施の形態の一例に係るコントローラ12は、
図2に例示するように、機能的に、データ処理部121と、検査部122と、対策処理部123とを含んで構成される。
【0025】
データ処理部121は、通信部14を介してホスト装置20からの指示を受信し、HDD11へのデータの書き込みやHDD11からのデータの読み出し等を行う。
【0026】
検査部122は、このストレージデバイス10の起動時などの所定のタイミングで動作し、HDD11の検査を行う。この検査部122は、HDD11などの複数の記憶装置のそれぞれに対して検査を行う。
【0027】
本実施の形態の一例では、この検査部122は、HDD11のデータ転送速度を取得して性能検査処理を行う。具体的にこのデータ転送速度は、linuxなどのオペレーティングシステムで広く利用されているhdparamコマンドにおけるデバイス読み込みの速度の計測処理と同様の処理により取得できるものである。検査部122は、取得したデータ転送速度が予め定めたしきい値を下回る場合に、検査したHDD11が、性能が低下している状態にあると判断して、当該HDD11を特定する情報を対策処理部123に出力する。
【0028】
なお、本実施の形態の一例では、この検査部122は、一度の性能検査処理に限定したものではなく、当該複数回の性能検査処理の結果に基づいて、検査の対象としたHDD11が、性能が低下している状態にあるか否かを判断してもよい。
【0029】
一例として検査部122は、性能検査処理の対象としたHDD11のデータ転送速度が予め定めたしきい値を下回る場合に、当該HDD11に対して再度の性能検査処理を行い、さらにこの再度の性能検査処理においても当該HDD11のデータ転送速度が予め定めたしきい値を下回っている場合に、当該HDD11に対して三度目の性能検査処理を行って、三度に亘り、当該HDD11のデータ転送速度が予め定めたしきい値を下回っているときに、当該HDD11が、性能が低下している状態にあると判断してもよい。この例では、最大三度の性能検査処理のうち、一度でもデータ転送速度が予め定めたしきい値を下回らない場合には、当該HDD11の性能は低下している状態にあるとは判断されない。
【0030】
対策処理部123は、検査部122から性能が低下した状態にあると判断されたHDD11を特定する情報の入力を受け入れると、次の対策処理を実行する。
【0031】
具体的に本実施の形態の一例では、この対策処理部123は、検査部122から受け入れた情報で特定されるHDD11がSMR型のHDDであるか否かを判断する。ここで当該HDD11がSMR型のHDDであると判断した場合、対策処理部123は、当該HDD11が性能低下状態にあることを通知する通知処理(以下、区別のためSMR通知処理と呼ぶ)を行うか、SMR型のHDDでないと判断した場合、対策処理部123は後述する当該HDD11の切り離し処理を行うかのいずれかを選択して実行する。このSMR通知処理の通知処理は例えば表示部13のLEDを所定の態様で点灯・点滅等させることで行われてもよい。なお、選択的に実行する処理は上述の処理に限定したものではなく、例えば、SMR型のHDDでないと判断した場合には、切り離しや通知などの処理をせずに、一般的なストレージデバイスとしての処理(データ処理)を進めてもよい。
【0032】
ここでHDD11がSMR型のHDDであるか否かの判断は、ストレージデバイス10の型番を基に判断してもよい。具体的には、メーカーがSMR型のHDDを搭載したストレージデバイス10について特定の型番を付与している場合には、当該特定の型番を含むSMR型のHDDを搭載したストレージデバイスの一覧をコントローラ12の記憶デバイスに予め格納しておく。そして対策処理部123は、自身を内蔵するストレージデバイス10の型番の情報(これもまたコントローラ12の記憶デバイスに予め格納しておく)を取得し、当該取得した型番の情報が、上記一覧に含まれているか否かを調べることで、HDD11がSMR型のHDDであるか否かを判断する。もっとも、HDD11がSMR型のHDDであるか否かを判断する処理の例はこの例に限られない。
【0033】
例えば対策処理部123は、自身を内蔵するストレージデバイス10の型番の情報を取得し、当該取得した型番の情報が、メーカーがSMR型のHDDを搭載したストレージデバイスに付与する特定の型番に合致するか否か(具体的にはメーカーがSMR型のHDDを搭載したストレージデバイス10については「SMR」で始まる型番を付与している場合には、取得した型番の情報が「SMR」で始まるか、など)により、HDD11がSMR型のHDDであるか否かを判断してもよい。
【0034】
さらに別の例では、コントローラ12の記憶デバイスに予め、当該ストレージデバイス10に搭載されるHDD11がSMR型のHDDであるか否かを表すフラグ情報を格納しておいてもよい。この例では対策処理部123は、当該フラグ情報を読み出して参照し、HDD11がSMR型のHDDであるか否かを判断する。
【0035】
またここではストレージデバイス10の型番の情報を参照することとしたが、この例に限られずhdparmコマンド等で取得されるHDD11自体の識別情報に基づいて判断を行ってもよい。
【0036】
また対策処理部123は、検査部122から受け入れた情報で特定されるHDD11がSMR型のHDDでないと判断したときには、当該HDD11を使用禁止の状態として切り離し、いわゆるデグレードモードでの動作を開始する。この際、対策処理部123は、表示部13のLEDを所定の態様で点灯・点滅等させることでその旨の通知を行ってもよいが、この通知は、SMR通知処理における点灯・点滅の態様とは異ならせて、ユーザが区別可能なものとしておく。
【0037】
[動作]
本実施の形態のストレージデバイス10は、以上の構成を備えており、一例として、次のように動作する。このストレージデバイス10は、起動されると、
図3に例示するように、ストレージデバイス10が備える各HDD11のそれぞれに対して性能検査処理を実行する(S11)。
【0038】
この性能検査処理では、ストレージデバイス10は、取得したデータ転送速度が予め定めたしきい値を下回る場合には最大で所定の回数(例えば3回)までデータ転送速度を取得する処理をリトライし、初回またはリトライ中に取得したデータ転送速度のいずれかが予め定めたしきい値を上回った場合には、性能が低下した状態にないと判断し、初回またはリトライ中に取得したデータ転送速度のすべてが予め定めたしきい値を下回った場合に性能が低下した状態にあると判断する。
【0039】
ストレージデバイス10は、当該判断の結果により性能が低下した状態にあると判断すると(S12:Yes)、さらに当該性能検査処理されたHDD11がSMR型のHDDであるか否かを判断する(S13)。
【0040】
ここでは例えば、ストレージデバイス10自身の型番の情報が、予めSMR型のHDDを内蔵する製品の型番として列挙された一覧に含まれる場合に、性能検査処理を行ったHDD11がSMR型のHDDであると判断する。
【0041】
ストレージデバイス10は、ここで性能検査処理されたHDD11がSMR型のHDDであると判断すると(S13:Yes)、表示部13のLEDを所定の態様で点灯・点滅等させて(例えばLEDを黄色で点滅させることとして)SMR通知処理を行う(S14)。
【0042】
一方、ステップS13において性能検査処理を行ったHDD11がSMR型のHDDでないと判断すると(S13:No)、ストレージデバイス10は、当該HDD11を使用禁止の状態として切り離し、いわゆるデグレードモードでの動作を開始する(S15)。この際、ストレージデバイス10は、表示部13のLEDを、ステップS14における処理とは異なる態様で点灯・点滅等させて(例えばLEDを赤色で点灯したままの状態として)、デグレードモードでの動作を行っている旨の通知を行ってもよい。
【0043】
ストレージデバイス10は、各HDD11についてステップS11からS15の処理を繰り返して行い、すべてのHDD11に対してステップS11からS15の処理を完了すると、起動処理を完了し、以下、通信部14を介してホスト装置20からの指示を受信し、HDD11へのデータの書き込みやHDD11からのデータの読み出し等を行う、一般的なストレージデバイスとしての処理(データ処理)を行う(S16)。
【0044】
このように、本実施の形態によれば、HDDの性能が低下した状態にあると判断されたときに、当該HDDの種類がSMR型であるか否かを判定し、性能が低下した状態にあると判断されたHDDがSMR型のHDDであったときには、当該HDDを切り離すことなく、ユーザに対して、SMR型のハードディスクドライブの性能が低下した状態にあることを通知できる。
【0045】
[性能低下通知の別の例]
また性能低下の通知は、表示部13におけるLEDの点滅等によって行われる例に限られない。例えば表示部13がキャラクタ表示可能なディスプレイを備える場合は、ストレージデバイス10のコントローラ12は、上記ステップS14のSMR通知処理において、SMR型のHDD11を通電した状態としたまま所定の時間だけ待機するようユーザに案内することとしてもよい。
【0046】
ここで案内する所定の時間は、SMR型のHDD11を通電した状態としたままで、当該HDD11に対して書き込みを行わない状態で放置したときに、その内部キャッシュの使用率が所定の割合だけ低下する時間であるとして予め実験的に定めた時間としておく。
【0047】
さらに、このステップS14のSMR通知処理においては、コントローラ12は、ホスト装置20に対して、SMR型のHDD11の性能が低下した状態にあること、または、SMR型のHDD11を通電した状態としたまま上記所定の時間だけ待機するべきことの少なくとも一方を案内する表示を行うよう要求(SMR通知処理の要求)してもよい。
【0048】
ホスト装置20は、この場合、当該SMR通知処理の要求を受けて、ユーザに対して「SMR型のHDD11の性能が低下した状態にある」旨、または「SMR型のHDD11を通電した状態としたまま上記所定の時間だけ待機する」べき旨の少なくとも一方のメッセージ等を表示して、SMR通知処理を実行する。
【0049】
またこのSMR通知処理の案内には、「一定時間HDDへの書き込みをせずに放置し、再起動を行うべき」旨など、具体的な対処の方法の情報が含まれてもよい。
【0050】
[性能低下の記録]
また本実施の形態ではストレージデバイス10は、SMR型HDD11のいずれかについて性能が低下した状態にあると判断したときに、当該HDD11の性能低下の通知(SMR通知処理)を行うだけでなく、当該SMR型HDD11で性能低下があった旨の情報(以下、性能低下情報と呼ぶ)を、コントローラ12の不揮発性の記憶デバイスに記録してもよい。
【0051】
またこの性能低下情報には当該性能低下情報を記録した日時の情報を含んでもよい。この日時の情報は、ストレージデバイス10が図示しないカレンダーICなどを備えていれば、当該カレンダーICから取得してもよいし、ホスト装置20や、ネットワークを介して接続されるネットワークタイムサーバから取得してもよい。
【0052】
このように日時を記録した場合、ストレージデバイス10は、当該記録した日時から所定の時間が経過したときに、その旨の通知(時刻経過通知)を行うこととしてもよい。この時刻経過通知は、表示部13のLEDの点灯や点滅によって行ってもよいし、ホスト装置20に対して情報を表示するよう指示して行うこととしてもよい。またここでの所定の時間も、SMR型のHDD11を通電した状態としたままで、当該HDD11に対して書き込みを行わない状態で放置したときに、その内部キャッシュの使用率が所定の割合(例えば20%)だけ低下する時間であるとして予め実験的に定めた時間、またはそれより長い時間としておく。
【0053】
またこの性能低下を記録する動作は、ホスト装置20にて行ってもよい。この場合、ホスト装置20が、ストレージデバイス10からSMR型HDD11のいずれかについて性能が低下した状態にあると判断した旨の情報(SMR通知処理の要求など)を受け入れると、その旨(性能低下情報)を記録する。この場合も性能低下情報には当該性能低下情報を記録した日時の情報を含んでもよい。
【0054】
このようにホスト装置20が日時の情報を含む性能低下情報を記録する場合は、当該ホスト装置20は、ユーザに対して当該記録した日時から所定の時間が経過したときに、その旨の通知(時刻経過通知)を行うこととしてもよい。さらにこの場合は、当該時刻経過通知を行うまで、ユーザの指示によるストレージデバイス10へのデータ書き込みを制限する処理を行ってもよい。例えば、ホスト装置20は、この性能低下情報を記録してから上記所定の時間が経過するまでの間に、ユーザからデータ書き込みの指示があったときには、ユーザに対して「HDDが性能低下した状態にある」旨の表示を行って、当該指示に従ったデータ書き込みを行わないよう制御する。
【0055】
以上の本実施の形態では、ストレージデバイス10が複数のHDDを備えた場合について説明したが、本発明ではこれに限定したものではなく、複数の記憶装置を備えていればよい。例えば、ストレージデバイス10が、1台のHDDと、1台または複数台のSSDを備えても良い。
【0056】
[ホスト側で処理する例]
さらに、本実施の形態のここまでの説明では、検査部122及び対策処理部123としての動作は、ストレージデバイス10のコントローラ12が行うものとしていたが、本実施の形態はこの例に限られない。
【0057】
例えばホスト装置20が、これらの機能的構成を備えてもよい。この例では、検査部122及び対策処理部123としてホスト装置20を動作させるためのプログラムが、ホスト装置20にインストールされる。
【0058】
そしてホスト装置20は、自身に接続されているディスク装置(ホスト装置20の筐体内に内蔵されていると、ホスト装置20に外付けされているストレージデバイス10内にあるとを問わない)のうちHDD11を対象として、所定のタイミングで(例えばストレージデバイス10の起動時に)、当該HDD11の性能を検査する。本実施の形態の以下の例では、ホスト装置20は、少なくとも1台のHDD11を備えたストレージデバイス10に接続されるものとする。
【0059】
この場合も、検査部122として動作するホスト装置20は、対象としたHDD11のデータ転送速度を、hdparamコマンドなどを用いて取得して性能検査処理を行う。そしてホスト装置20は、取得したデータ転送速度が予め定めたしきい値を下回る場合に、検査したHDD11が、性能が低下している状態にあると判断する。
【0060】
またホスト装置20は、コントローラ12において処理する場合と同様に、一度の性能検査処理ではなく、HDD11を少なくとも一回以上の性能検査処理を行い、当該複数回の性能検査処理の結果に基づいて、検査の対象としたHDD11が、性能が低下している状態にあるか否かを判断してもよい。
【0061】
つまりホスト装置20は、性能検査処理の対象としたHDD11のデータ転送速度が予め定めたしきい値を下回る場合に、当該HDD11に対して再度の性能検査処理を行い、さらにこの再度の性能検査処理においても当該HDD11のデータ転送速度が予め定めたしきい値を下回っている場合に、当該HDD11に対して三度目の性能検査処理を行って、三度に亘り、当該HDD11のデータ転送速度が予め定めたしきい値を下回っているときに、当該HDD11が、性能が低下している状態にあると判断してもよい。この例では、最大三回の性能検査処理のうち、一度でもデータ転送速度が予め定めたしきい値を下回らない場合には、当該HDD11の性能は低下している状態にあるとは判断されない。
【0062】
ホスト装置20は、ストレージデバイス10のHDD11のうち少なくとも一つについて性能が低下している状態にあると判断すると、対策処理部123としての動作を行い、当該性能が低下している状態にあると判断されたHDD11(対象HDDと呼ぶ)がSMR型のHDDであるか否かを判断する。なお、対象HDDがSMR型のHDDであるか否かの判断は、コントローラ12において処理する場合と同様に、ストレージデバイス10の型番の設定などによって行えばよい。またホスト装置20は、ディスク装置ごとに、当該ディスク装置がSMR型のHDDであるか否かを、ディスク装置の型番等によって判断してもよい。
【0063】
例えばホスト装置20は、ストレージデバイス10の型番の情報を取得し(このためにストレージデバイス10は、問い合わせに応じて自己の型番をホスト装置20に出力する機能を有しているものとする)、取得した型番の情報を参照して、ストレージデバイス10のメーカーがSMR型のHDDを搭載したストレージデバイス10について付与する型番であるか否かを、その一覧や所定のパターンに従って判断し、この判断に基づいて対象HDDがSMR型のHDDであるか否かを判断してもよい。
【0064】
そしてここで当該対象HDDがSMR型のHDDであれば、ホスト装置20は、当該対象HDDが性能低下状態にあることを通知する(SMR通知処理)。例えばホスト装置20は、ストレージ部10の表示部13のLEDを所定の態様で点灯・点滅等させる。またホスト装置20は、対象HDDの性能が低下した状態にあること、または、ストレージデバイス10の対象HDDを通電した状態としたまま、所定の時間だけ待機するべきことの少なくとも一方を案内する表示を行ってもよい。
【0065】
ここでの所定の時間も、SMR型のHDD11を通電した状態としたままで、当該HDD11に対して書き込みを行わない状態で放置したときに、その内部キャッシュの使用率が所定の割合だけ低下する時間であるとして予め実験的に定めた時間としておく。
【0066】
一方でホスト装置20は対象HDDがSMR型のHDDでないと判断したときには、当該対象HDDを使用禁止の状態として切り離し、切り離したもの以外に記憶装置がある場合はいわゆるデグレードモードでの動作を行うよう、ストレージデバイス10に対して指示する。この際、ホスト装置20は、ストレージデバイス10の表示部13のLEDを所定の態様で点灯・点滅等させることでその旨の通知を行ってもよい。ただしこのときのこの通知は、SMR通知処理の通知処理における点灯・点滅の態様とは異ならせて、ユーザが区別可能なものとしておく。
【符号の説明】
【0067】
10 ストレージデバイス、11 HDD、12 コントローラ、13 表示部、14 通信部、20 ホスト装置、121 データ処理部、122 検査部、123 対策処理部。