(57)【要約】【課題】寿命までの期間がそれぞれ異なるＳＳＤを、データの種類に応じてきめ細かく有効活用する。【解決手段】寿命が書き換え回数に依存する半導体記憶部（６１）と、半導体記憶部を運用する運用モードを切り替える閾値を記憶する運用モード記憶部（６２）と、半導体記憶部の寿命と半導体記憶部に対する書き換え回数とに基づいて、半導体記憶部の余命を算出する算出部（６３）と、算出された余命と運用モード記憶部に記憶された閾値とを比較する比較部（６４）と、比較部を用いた比較結果に応じて半導体記憶部の運用モードを切り替える運用モード切替部（６５）とを有し、算出された余命が無いとき、運用モード切替部は、運用モードを、半導体記憶部からの読み出し動作のみを許可するリードオンリーモードに切り替える。【選択図】図６
2018180845.tif 000002
【特許請求の範囲】
【請求項１】
寿命が書き換え回数に依存する半導体記憶手段と、
前記半導体記憶手段を運用する運用モードを切り替える閾値を記憶する運用モード記憶手段と、
前記半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する算出手段と、
前記算出された余命と前記運用モード記憶手段に記憶された閾値とを比較する比較手段と、
前記比較手段を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える運用モード切替手段と、を有し、
前記算出された余命が無いとき、前記運用モード切替手段は、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える、情報処理装置。
【請求項２】
前記運用モードは、前記半導体記憶手段からの読み出し動作及び前記半導体記憶手段に対する書き換え動作を許可する通常モードと、前記リードオンリーモードに移行する前段階のリードオンリー準備モードと、をさらに有する、請求項１に記載の情報処理装置。
【請求項３】
前記運用モードが前記リードオンリー準備モードであるとき、前記半導体記憶手段からの読み出し動作及び前記半導体記憶手段に対する書き換え動作を必要とするデータよりも、前記半導体記憶手段からの読み出し動作を必要とするデータを、前記運用モードが前記リードオンリー準備モードである半導体記憶手段に対して優先的に格納する、請求項２に記載の情報処理装置。
【請求項４】
前記運用モードが前記リードオンリーモードである半導体記憶手段に格納されているデータのうち、読み出し動作が行われていない未参照データの割合を算出する未参照率算出手段と、前記未参照データの割合に基づいて前記半導体記憶手段の交換が必要であるか否かを判断する交換時期判断手段と、をさらに含み、
前記未参照データの割合が所定の閾値を超えると、前記交換時期判断手段は、前記運用モードが前記リードオンリーモードである半導体記憶手段の交換が必要であると判断する、請求項１から３の何れか１項に記載の情報処理装置。
【請求項５】
複数の半導体記憶手段のうち、前記運用モードが前記リードオンリーモードである半導体記憶手段の割合を確認するリードオンリーモード率確認手段をさらに含み、前記運用モードが前記リードオンリーモードである半導体記憶手段の割合が、前記複数の半導体記憶手段のうち所定の割合を占めているとき、前記交換時期判断手段は、前記運用モードが前記リードオンリーモードである半導体記憶手段のうち、前記未参照データの割合の降順に、前記運用モードが前記リードオンリーモードである半導体記憶手段の交換が必要であると判断する、請求項４に記載の情報処理装置。
【請求項６】
前記運用モードが前記リードオンリーモードである半導体記憶手段は、同一データを格納しない重複排除が行われたデータを格納する、請求項１から５の何れか１項に記載の情報処理装置。
【請求項７】
前記半導体記憶手段は、複数の階層にわたって階層化されており、前記半導体記憶手段から読み出すデータ及び前記半導体記憶手段に対して書き換えるデータは、前記階層の間で移動する、請求項１から６の何れか１項に記載の情報処理装置。
【請求項８】
寿命が書き換え回数に依存する半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する工程と、
前記算出された余命と前記半導体記憶手段を運用する運用モードを切り替える閾値とを比較する工程と、
前記比較する工程を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える工程と、
前記算出された余命が無いとき、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える工程と、を備える、情報処理方法。
【請求項９】
コンピュータに、
寿命が書き換え回数に依存する半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する処理と、
前記算出された余命と前記半導体記憶手段を運用する運用モードを切り替える閾値とを比較する処理と、
前記比較する処理を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える処理と、
前記算出された余命が無いとき、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える処理と、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
不揮発性の半導体を含む記憶装置をストレージ装置として使用する情報処理装置が知られている。このような情報処理装置の一例として、ＮＡＮＤ型のフラッシュメモリを有するＳＳＤ（Solid State Drive）をストレージ装置として使用する情報処理装置が知られている。
ＳＳＤの普及につれて、高速かつ高価なＳＳＤと、低速かつ大容量のＨＤＤ（Hard Disk Drive）とを組み合わせて階層化ストレージを構成する。そして、高速かつ大容量のストレージサービスを提供することが一般的に行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１９４６６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ストレージサービスを提供する情報処理システムは、ホストコンピュータが複数のストレージ装置を制御する。ストレージ装置は、コントローラと階層化された記憶装置とを有している。階層化された記憶装置は、例えば、ＳＳＤ、ＳＡＳ（Serial Attached Small computer system interface）、ＳＡＴＡ（Serial Advanced Technology Attachment）などの複数種類の記憶メディアを有している。階層化された記憶装置では、このような複数種類の記憶メディアを使用した階層が形成される。そして、階層化された記憶装置では、データの特性に応じて格納する記憶メディアを変えることが行われる。例えば、データベースのように信頼性が必要とされるデータは、高性能の記憶メディアに振り分けられる。また、信頼性よりも容量やコストが重要とされるデータは、大容量の記憶メディアに振り分けられるといった考え方である。
【０００５】
ところで、ＳＳＤなどのＮＡＮＤ型のフラッシュメモリは、書き換え回数に限界値を有している。したがって、ＮＡＮＤ型のフラッシュメモリは、書き換え回数が限界値を超えると、データを書き込むことができなくなってしまう。また、ＮＡＮＤ型のフラッシュメモリは、書き換え回数が限界値を超えると、データを書き込むことはできても、短時間でエラービットが増加してしまう。このため、ＳＳＤのように、フラッシュメモリを記憶媒体とするデバイスは、書き換え回数に依存する寿命を有している。
一方、処理速度が高いＳＳＤの効果を十分発揮させるため、ＳＳＤに対して頻繁にデータの書き換えが行われる傾向がある。しかしながら、階層化された記憶装置を構成する階層間で頻繁にデータの移動を実行すると、ＳＳＤに対して何度も書き換え操作を行うことになる。その結果、ＳＳＤの寿命が短くなるという問題がある。この状況の下、ＳＳＤの書き換え回数を考慮してＳＳＤの寿命をなるべく延ばす様々な技術が検討されている。
【０００６】
特許文献１には、以下に説明する技術が開示されている。情報処理装置は、単位時間当たりに読み出したデータ量と書き込んだデータ量との比率に基づいて、アプリケーションプログラムの性質を判定する。アプリケーションプログラムの性質がデータの読み出しであり、ＳＳＤの余命が第一閾値よりも短い場合、情報処理装置は、このＳＳＤを他のＳＳＤと交換する。アプリケーションプログラムの性質がデータの書き込みであり、ＳＳＤの余命が、第一閾値よりも大きい第二閾値よりも短い場合は、情報処理装置は、このＳＳＤを他のＳＳＤと交換する。
【０００７】
ここで、ストレージ装置に格納される元データが、重複排除データである場合について考える。重複排除データとは、データを小さなブロックに分割し、そのデータのパターンを作成する。そして、コントローラは、同じパターンのブロックがあった場合、パターンの番号だけをＳＳＤに書き込む。そして、データの中身は削除する。すなわち、ＳＳＤは、ブロックに存在するデータのパターンの並び順が登録されているインデックスとなる。
また、類似パターンのブロックがあった場合、ＳＳＤに記憶されている元データのパターンとの間の差分だけを圧縮してＳＳＤに記憶することとしている。このような仕組みに基づいて、ＳＳＤに記憶されるデータそのものの容量を削減するというものである。重複排除データを記憶する重複排除ストレージ装置を採用すれば、容量効率と書き込み性能の大幅な向上を図ることができる。
このような仕組みを有する重複排除記憶装置において、ＳＳＤに記憶される元データのパターンは、そのパターンと異なるパターンのデータの変更や削除が頻繁に行われたとしても、参照し続けられる限り、長く保存しておく必要がある。
特許文献１に記載された技術は、ＳＳＤを交換するか否かの判断を、データの種類に無関係に、単にデータの読み出し又は書き込みの頻度に基づいて行っている。そのため、特許文献１に記載された技術では、重複排除の対象となる元データ（所定のパターンを有するデータ）が記憶されているＳＳＤに対して、読み出し又は書き込みが所定の頻度で行われた場合、未だ寿命に到達していないＳＳＤを交換してしまうことになる。その結果、寿命までの期間がそれぞれ異なるＳＳＤを、データの種類に応じてきめ細かく有効活用することができないという問題がある。
【０００８】
本発明の目的は、上述した課題を鑑み、寿命までの期間がそれぞれ異なるＳＳＤを、データの種類に応じてきめ細かく有効活用するという課題を解決する情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の情報処理装置は、寿命が書き換え回数に依存する半導体記憶手段と、前記半導体記憶手段を運用する運用モードを切り替える閾値を記憶する運用モード記憶手段と、前記半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する算出手段と、前記算出された余命と前記運用モード記憶手段に記憶された閾値とを比較する比較手段と、前記比較手段を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える運用モード切替手段と、を有し、前記算出された余命が無いとき、前記運用モード切替手段は、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える。
【００１０】
また、本発明の情報処理方法は、寿命が書き換え回数に依存する半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する工程と、前記算出された余命と前記半導体記憶手段を運用する運用モードを切り替える閾値とを比較する工程と、前記比較する工程を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える工程と、前記算出された余命が無いとき、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える工程と、を備える。
【００１１】
さらに、本発明のプログラムは、コンピュータに、寿命が書き換え回数に依存する半導体記憶手段の寿命と前記半導体記憶手段に対する書き換え回数とに基づいて、前記半導体記憶手段の余命を算出する処理と、前記算出された余命と前記半導体記憶手段を運用する運用モードを切り替える閾値とを比較する処理と、前記比較する処理を用いた比較結果に応じて前記半導体記憶手段の運用モードを切り替える処理と、前記算出された余命が無いとき、前記運用モードを、前記半導体記憶手段からの読み出し動作のみを許可するリードオンリーモードに切り替える処理と、を実行させる。
【発明の効果】
【００１２】
本発明によれば、寿命までの期間がそれぞれ異なるＳＳＤを、データの種類に応じてきめ細かく有効活用することが可能な情報処理装置、情報処理方法、及びプログラムを提供できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１実施形態における情報処理システムの全体構成図である。
【図２】第１実施形態の情報処理装置（ストレージ装置）の一例を示す概略ブロック図である。
【図３】第１実施形態の情報処理装置（ストレージ装置）の利用モード設定部の動作の一例を示すフローチャートである。
【図４】第１実施形態の情報処理装置（ストレージ装置）のデータ最適配置部の動作の一例を示すフローチャートである。
【図５】第１実施形態の情報処理装置（ストレージ装置）の交換時期判断部の動作の一例を示すフローチャートである。
【図６】本発明の第２実施形態の情報処理装置（ストレージ装置）の一例を示す概略ブロック図である。
【発明を実施するための形態】
【００１４】
本発明の第１実施形態について説明する前に、本実施形態が前提としている技術について若干説明する。
まず、本実施形態の情報処理装置は、データ最適配置機能を有している。データ最適配置機能では、使用頻度の少ないデータを圧縮さらには重複排除することとしている。また、データ再配置機能では、使用頻度の少ないデータを、価格の安い蓄積専用のストレージに記憶することとしている。
また、本実施形態の情報処理装置は、装置内ＩＬＭ（Information Lifecycle Management）機能を有している。装置内ＩＬＭ機能とは、企業のデータ管理における情報ライフサイクル管理のことをいう。具体的には、時間と共に変化する情報をデータの価値に合わせて最適なストレージに記憶するという考え方である。
ストレージ装置に搭載するデバイスは、インタフェースや機構の違いに応じて、ＳＳＤ、ＳＡＳ、ＳＡＴＡなどの種類が存在する。それぞれ性能、信頼性、及び価格が異なる。したがって、ストレージ装置を選択する際には、利用用途に応じてデバイスの種類を選択する必要がある。
【００１５】
ＳＳＤは、不揮発性のＮＡＮＤ型フラッシュメモリを用いた記憶装置である。ＳＳＤは、ＨＤＤと比較して読み込み速度が非常に高速である。したがって、ストレージ装置の中でも特に高いアクセス性能が求められる領域に採用される。ＳＳＤは駆動部品がないので、衝撃に強く、静音性にも優れている。しかしながら、ＳＳＤは、ＨＤＤと比較すると容量単価が割高である。
ＳＡＴＡは、大容量でコストパフォーマンスが非常に高い。ＳＡＴＡは、主にエントリクラスのストレージ装置に採用されている。
ＳＡＳは、ＳＡＴＡと比較して性能や信頼性が高い。ＳＡＳは、幅広い用途のストレージ装置に採用されている。
【００１６】
（第１実施形態）
本発明の第１実施形態を説明する。図１は、本発明の第１実施形態における情報処理システムの全体構成図である。
図１を参照すると、本実施形態の情報処理システム１は、ホストコンピュータ１０、１１と、ストレージ装置１００、１１０、１２０とを有する。
ストレージ装置１００は、コントローラ１５０と、ＳＳＤ１０４と、ＳＡＳ１０５と、ＳＡＴＡ１０６とを有する。ストレージ装置１１０は、コントローラ１６０と、ＳＳＤ１１４と、ＳＡＳ１１５と、ＳＡＴＡ１１６とを有する。ストレージ装置１２０は、コントローラ１７０と、ＳＳＤ１２４と、ＳＡＳ１２５と、ＳＡＴＡ１２６とを有する。
【００１７】
次に、本実施形態の情報処理システムを構成する各部の機能について説明する。
ホストコンピュータ１０、１１は、ストレージ装置１００、１１０、１２０を制御する。ストレージ装置１００のコントローラ１５０は、ＳＳＤ１０４、ＳＡＳ１０５、及びＳＡＴＡ１０６の格納状態を制御する。ストレージ装置１１０のコントローラ１６０は、ＳＳＤ１１４、ＳＡＳ１１５、及びＳＡＴＡ１１６の格納状態を制御する。ストレージ装置１２０のコントローラ１７０は、ＳＳＤ１２４、ＳＡＳ１２５、及びＳＡＴＡ１２６の格納状態を制御する。
ホストコンピュータ１０、１１とストレージ装置１００、１１０、１２０とは、通信回線Ｎを介して互いに通信可能に接続されている。通信回線Ｎは、例えばＬＡＮ（Local Area Network）又はＳＡＮ（Storage Area Network）である。
コントローラ１５０とＳＳＤ１０４、ＳＡＳ１０５、ＳＡＴＡ１０６、コントローラ１６０とＳＳＤ１１４、ＳＡＳ１１５、ＳＡＴＡ１１６、並びにコントローラ１７０とＳＳＤ１２４、ＳＡＳ１２５、ＳＡＴＡ１２６とは、それぞれ、例えば、ＳＡＮを介して通信可能に接続されている。
【００１８】
コントローラ１５０、１６０、１７０は、ホストコンピュータ１０、１１から発せられる読み出し要求又は書き込み要求を受領する。コントローラ１５０、１６０、１７０は、ホストコンピュータ１０、１１から発せられる読み出し要求又は書き込み要求を受領すると、ＳＳＤ１０４、１１４、１２４にアクセスする。コントローラ１５０、１６０、１７０は、ホストコンピュータ１０、１１から発せられる読み出し要求に対応するデータを、ＳＳＤ１０４、１１４、１２４から読み出す。コントローラ１５０、１６０、１７０は、ホストコンピュータ１０、１１から発せられる書き込み要求に対応するデータを、ＳＳＤ１０４、１１４、１２４に書き込む。本実施形態におけるＳＳＤ１０４、１１４、１２４、ＳＡＳ１０５、１１５、１２５、ＳＡＴＡ１０６、１１６、１２６は、上述した階層化されたストレージ装置を構成する。
本実施形態のストレージ装置１００、１１０、１２０は、記憶領域をＳＳＤ、ＳＡＳ、ＳＡＴＡで構成している。そして、ストレージ装置１００、１１０、１２０のコントローラ１５０、１６０、１７０は、ＳＳＤの利用モード（通常モードとして運用するか否か）、ＳＳＤに対するデータの最適配置（どのＳＳＤにデータを配置するか）、ＳＳＤの交換時期の判断（ＳＳＤの交換が必要であるか否か）という処理を実行する。
【００１９】
次に、本実施形態の情報処理装置（ストレージ装置）の概略構成について図２を参照しつつ説明する。図２は、第１実施形態の情報処理装置（ストレージ装置）の一例を示す概略ブロック図である。
図２は、図１のストレージ装置１００の内部構成を詳細に示したものである。なお、図１で示したストレージ装置１１０、１２０もストレージ装置１００と同様な構成を有しているので、ストレージ装置１００についてのみ説明する。
ストレージ装置１００は、データ１０１、１０２、１０３と、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）と、ＳＡＳ１０５（ＳＡＳ１、ＳＡＳ２、ＳＡＳ３）と、ＳＡＴＡ１０６（ＳＡＴＡ１、ＳＡＴＡ２、ＳＡＴＡ３）と、コントローラ１５０とを有する。以下、ＳＳＤ１０４、ＳＡＳ１０５、ＳＡＴＡ１０６を纏めて記憶部ともいう。
【００２０】
コントローラ１５０は、利用モード設定部２０２と、データ最適配置部２０３と、交換時期判断部２０４と、ＳＳＤ運用モード管理表２０１とを有する。
データ１０１、１０２、１０３は、記憶部に対して参照するデータを有する。データ１０１が記憶部に対して参照するデータは、◆、◆、●である。データ１０２が記憶部に対して参照するデータは、◆、●、◆である。データ１０３が記憶部に対して参照するデータは、●、▲、▲である。
ストレージ装置１００は、ＳＳＤ１０４、ＳＡＳ１０５、ＳＡＴＡ１０６といった性能及び容量の異なるディスクを有する。そして、ストレージ装置１００は、ＳＳＤ１０４、ＳＡＳ１０５、ＳＡＴＡ１０６といった３階層のストレージ領域を有する。コントローラ１５０は、ストレージ装置１００を利用するホストコンピュータ１０、１１から転送されたデータ１０１、１０２、１０３に対して、重複排除を行う。そして、コントローラ１５０は、重複排除後の元データを、３階層のストレージ領域に分散して格納する。
【００２１】
図２において、ＳＳＤ１に格納されたデータ◆の参照数は、データ１０１から２、データ１０から２の計４である。ＳＡＳ２に格納されたデータ●の参照数は、データ１０１から１、データ１０２から１、データ１０３から１の計３である。ＳＡＴＡ３に格納されたデータ▲の参照数は、データ１０３から２の計２である。
なお、図２では、記憶部として、ＳＳＤ１〜３、ＳＡＳ１〜３、ＳＡＴＡ１〜３のそれぞれ３台が記載されているが、ＳＳＤ、ＳＡＳ、ＳＡＴＡは、任意の台数とすることができる。また、記憶部に対して参照するデータは、１０１〜１０３の３種類としているが、記憶部に対して参照するデータは、３種類に限定されない。さらに、各データの参照数も任意の数とすることが可能である。
【００２２】
次に、コントローラ１５０が有する利用モード設定部２０２、データ最適配置部２０３、交換時期判断部２０４、ＳＳＤ運用モード管理表２０１について説明する。
利用モード設定部２０２は、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）の書き換え寿命を監視する。また、利用モード設定部２０２は、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）の利用モードを設定する。
すなわち、利用モード設定部２０２は、定期的に各ＳＳＤの書き換え回数を確認している。そして、利用モード設定部２０２は、各ＳＳＤの余命を算出する。さらに、利用モード設定部２０２は、各ＳＳＤの余命に基づいてＳＳＤの運用モードを決定する。そして、利用モード設定部２０２は、決定した運用モードの結果を、ＳＳＤ運用モード管理表２０１に記録する。
【００２３】
データ最適配置部２０３は、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）の利用モードに応じて、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）の動作を変える。
すなわち、データ最適配置部２０３は、定期的に各階層のデータのアクセス状況を分析する。そして、データ最適配置部２０３は、階層間におけるデータの最適配置を行う。また、データ最適配置部２０３は、データをＳＳＤへ移動する必要があると判断する場合、そのデータをどのＳＳＤへ移動するかを決定する。その際、データ最適配置部２０３は、ＳＳＤ運用モード管理表２０１に記載されているＳＳＤの運用モードを参照する。
【００２４】
交換時期判断部２０４は、ＳＳＤ１０４（ＳＳＤ１、ＳＳＤ２、ＳＳＤ３）の交換時期を判断する。本実施形態では、ＳＳＤの寿命が到達した後も、ＳＳＤをＲｅａｄＯｎｌｙモードに切り替えて利用することとしている。そこで、交換時期判断部２０４は、ＲｅａｄＯｎｌｙモードにあるＳＳＤを交換する必要かあるか否かを判断する。交換時期判断部２０４は、交換が必要であると判断したＳＳＤの交換を促す。これにより、交換時期判断部２０４は、階層ストレージのアクセス性能を維持する。
ＳＳＤ運用モード管理表２０１は、ＳＳＤ１〜４の運用モードを管理するテーブルである。利用モード設定部２０２は、ＳＳＤ運用モード管理表２０１を更新する。データ最適配置部２０３と交換時期判断部２０４とは、ＳＳＤ運用モード管理表２０１を参照する。なお、現在、ＳＳＤ運用モード管理表２０１には、ＳＳＤ１が通常運用モードにあり、ＳＳＤ２がＲｅａｄＯｎｌｙ準備モードにあり、ＳＳＤ３と図示しないＳＳＤ４とは、ＲｅａｄＯｎｌｙモードにあることが示されている。
【００２５】
次に、ＳＳＤ運用モード管理表２０１において管理される運用モードについて説明する。ＳＳＤの運用モードとして、本実施形態では、通常運用モードと、ＲｅａｄＯｎｌｙ準備モードと、ＲｅａｄＯｎｌｙモードとが存在する。
通常運用モードでは、コントローラ１５０は、リード率の高いデータやライト率の高いデータなど、データを分析した結果に応じて、通常運用モードに切り替えられたＳＳＤに対してデータを移動して利用する。これにより、階層ストレージのリード性能やライト性能を維持することができる。
【００２６】
ＲｅａｄＯｎｌｙ準備モードでは、コントローラ１５０は、ライト率の高いデータを、極力ＲｅａｄＯｎｌｙ準備モードに切り替えられたＳＳＤに置かないようにする。また、コントローラ１５０は、直近のリード率が高いデータよりも、将来的にリード率が高くなる可能性が高いと見込まれるデータ（例えば、重複排除ストレージの場合、頻繁に参照されている重複排除の元データ）を、ＲｅａｄＯｎｌｙ準備モードに切り替えられたＳＳＤに集中して置くようにする。
【００２７】
ＲｅａｄＯｎｌｙモードでは、コントローラ１５０は、当該ＳＳＤを継続して利用することにする。ただし、コントローラ１５０は、当該ＳＳＤを、データの最適配置の対象外のＳＳＤとする。コントローラ１５０は、ＲｅａｄＯｎｌｙモードに切り替えられたＳＳＤに対するリード率を継続的に監視し、当該ＳＳＤが有効的に利用されているか否かの統計情報を取得する。コントローラ１５０は、統計情報から得たリード率が、所定の閾値より低下した場合、当該ＳＳＤは有効利用されていないと判断し、当該ＳＳＤの交換を促す。さらに、階層ストレージを構成するすべてのＳＳＤのうち、ＲｅａｄＯｎｌｙモードにあるＳＳＤの比率が所定の割合を超えた場合、コントローラ１５は、リード率の低いＳＳＤから順番に交換を促す。
【００２８】
本実施形態では、ＳＳＤの余命に応じて、ＳＳＤの運用モードを切り替えることとしている。これにより、書き換え寿命に到達したＳＳＤであっても、運用モードをＲｅａｄＯｎｌｙモードに切り替えることで継続的に有効利用することができる。そして、ＲｅａｄＯｎｌｙモードに切り替えることで、元データに対する参照が頻繁に行われる重複排除ストレージにおいて、特に顕著な効果を有する。
【００２９】
次に、コントローラ１５０を構成する利用モード設定部２０２の動作について図３を参照しつつ説明する。図３は、本実施形態の情報処理装置（ストレージ装置）の利用モード設定部の動作の一例を示すフローチャートである。利用モード設定部２０２は、ＳＳＤの書き換え寿命を監視して利用モードを設定する。
ステップＳ２０１の処理において、利用モード設定部２０２は、ＳＳＤの寿命と現在の書き換え回数とに基づいて、ＳＳＤの余命を算出する。
ステップＳ２０２の処理において、利用モード設定部２０２は、ステップＳ２０１の処理で算出したＳＳＤの余命とＳＳＤの運用モードを切り替えるモード切替の閾値とを比較する。利用モード設定部２０２は、ＳＳＤの余命とモード切替の閾値とを比較して、モード切替が必要であるか否かを判断する。
【００３０】
ここで、モード切替の閾値とは、ＳＳＤに対する書き換え回数やＳＳＤのデバイスの仕様などに基づいて、予め定められた値である。モード切替の閾値は、コントローラ１５０の図示しない記憶部に格納されている。
本実施形態では、切り替えを行うモードの一例として、通常運用モード、ＲｅａｄＯｎｌｙ準備モード、及びＲｅａｄＯｎｌｙモードを挙げている。通常運用モードとは、ＳＳＤから読み出しを行い、ＳＳＤに対して書き込みを行うモードである。ＲｅａｄＯｎｌｙ準備モードとは、ＲｅａｄＯｎｌｙモードに移行する直前の段階である。ＲａｄＯｎｌｙ準備モードでは、ＳＳＤを通常運用モードで使用することはできない。ＳＳＤが寿命が短い（余命が短い）場合、ＳＳＤはＲｅａｄＯｎｌｙ準備モードに移行する。ＲｅａｄＯｎｌｙモードとは、ＳＳＤから読み出す動作のみが可能なモードである。
【００３１】
ステップＳ２０３の処理において、利用モード設定部２０２は、ＳＳＤの余命とモード切替の閾値とを比較する。利用モード設定部２０２は、ＳＳＤの余命がモード切替の閾値よりも長い（ステップＳ２０３：余命長い）と判断すると、ステップＳ２０４の処理へ移行する。利用モード設定部２０２は、ＳＳＤの余命がモード切替の閾値よりも短い（ステップＳ２０３：余命短い）と判断すると、ステップＳ２０５の処理へ移行する。利用モード設定部２０２は、余命が無い（ＳＳＤが寿命に到達した）（ステップＳ２０３：寿命到達）と判断すると、ステップＳ２０６の処理へ移行する。
【００３２】
利用モード設定部２０２は、ＳＳＤの余命はモード切替の閾値よりも長いと判断したステップＳ２０４の処理において、ＳＳＤを通常モードとして運用する。本実施形態では、ＳＳＤに対して既に実施された書き換え回数は、ＳＳＤの寿命に対応する書き換え回数の８０％に対応する閾値であると仮定する。この閾値以下であれば、まだ余命が長いと判断し、ＳＳＤを通常モードとして運用し続ける。
利用モード設定部２０２は、ＳＳＤの余命はモード切替の閾値よりも短いと判断したステップＳ２０５の処理において、ＳＳＤをＲｅａｄＯｎｌｙ準備モードに切り替えて運用する。要するに、利用モード設定部２０２は、ＳＳＤの余命が、上記したＳＳＤの寿命に対応する書き換え回数の８０％に対応する閾値を超えた場合は余命が短いと判断する。そして、利用モード設定部２０２は、ＳＳＤの運用モードを、ＲｅａｄＯｎｌｙ準備モードに切り替える。そして、後述するデータ最適配置部２０３は、運用モードが切り替えられたＳＳＤに対して、ＲｅａｄＯｎｌｙ準備モードに対応したデータ移動ポリシーを適用する。これにより、データの最適な配置が行われる。
【００３３】
利用モード設定部２０２は、ＳＳＤが寿命に到達したと判断したステップＳ２０６の処理において、ＳＳＤをＲｅａｄＯｎｌｙモードに切り替えて運用する。要するに、ＳＳＤの書き換え回数が、寿命ぎりぎりに到達した場合、利用モード設定部２０２は、そのＳＳＤへの書き込みを禁止する。利用モード設定部２０２は、書き込みが禁止されたＳＳＤの運用モードをＲｅａｄＯｎｌｙモードに切り替える。ＲｅａｄＯｎｌｙモードに切り替えられたＳＳＤは、読み取り専用領域として利用し続けられる。そして処理を終了する。
このように、利用モード設定部２０２は、ＳＳＤの余命とモード切替の閾値とを比較して、ＳＳＤの運用モードを切り替える。そして、利用モード設定部２０２は、新たに切り替えられたＳＳＤの運用モードを用いて、ＳＳＤ運用モード管理表２０１を更新する。
【００３４】
次に、コントローラ１５０を構成するデータ最適配置部２０３の動作について図４を参照しつつ説明する。図４は、本実施形態の情報処理装置（ストレージ装置）のデータ最適配置部の動作の一例を示すフローチャートである。データ最適配置部２０３は、ＳＳＤの運用モードに応じてＳＳＤに対するデータの配置を最適化する。具体的には、データ分析の結果と、ＳＳＤの運用モードとに基づいて、ＳＳＤの運用モードに応じたデータ移動ポリーを採用する。
ステップＳ３０１の処理において、データ最適配置部２０３は、階層ストレージを構成する各ＳＳＤの運用モードを、ＳＳＤ運用モード管理表２０１を参照して確認する。データ最適配置部２０３は、ＳＳＤ運用モード管理表２０１にアクセスする。
ステップＳ３０２の処理において、データ最適配置部２０３は、各ＳＳＤの運用モードの確認を行う。データ最適配置部２０３は、ＳＳＤの運用モードが通常モードである（ステップＳ３０２：通常モード）と判断すると、ステップＳ３０３の処理へ移行する。データ最適配置部２０３は、ＳＳＤの運用モードがＲｅａｄＯｎｌｙ準備モードである（ステップＳ３０２：ＲｅａｄＯｎｌｙ準備モード）と判断すると、ステップＳ３０４の処理へ移行する。データ最適配置部２０３は、ＳＳＤの運用モードがＲｅａｄＯｎｌｙモードである（ステップＳ３０２：ＲｅａｄＯｎｌｙモード）と判断すると、ステップＳ３０５の処理へ移行する。
【００３５】
データ最適配置部２０３は、ＳＳＤの運用モードが通常モードであると判断したステップＳ３０３の処理において、リード率やライト率が高いデータをＳＳＤへ配置する。すなわち、データ最適配置部２０３は、階層ストレージのリード・ライト性能を最大限発揮するために、通常運用モードにあるＳＳＤに対して、リード率又はライト率が高いデータを配置するように処理する。これは、ストレージ（ＳＳＤ）のリード・ライト性能を維持するために行われる一般的な手法である。
データ最適配置部２０３は、ＳＳＤの運用モードがＲｅａｄＯｎｌｙ準備モードであると判断したステップＳ３０４の処理において、ストレージ使用率が高いデータを、ＲｅａｄＯｎｌｙ準備モードであると判断したＳＳＤに配置しないようにする。そして、リード率（読み出し率）が高く、かつ、頻繁に参照されているデータを、優先的に、ＲｅａｄＯｎｌｙ準備モードであると判断したＳＳＤに配置する。すなわち、データ最適配置部２０３は、運用モードがＲｅａｄＯｎｌｙ準備モードであるＳＳＤに対して、ライト率の高いデータを配置しないようにする。データ最適配置部２０３は、運用モードがＲｅａｄＯｎｌｙ準備モードであるＳＳＤに対して、リード率が高く、かつ、参照数が多く、将来的にも長期間参照し続けられるデータを配置するようにする。
データ最適配置部２０３は、ＳＳＤの運用モードがＲｅａｄＯｎｌｙモードであると判断したステップＳ３０５の処理において、当該ＳＳＤに対するデータ配置ができないようにする。当該ＳＳＤはＲｅａｄＯｎｌｙモードであるため、書き込み禁止となる。すなわち、データ最適配置部２０３は、運用モードがＲｅａｄＯｎｌｙモードであるＳＳＤに対する書き込みを禁止する。したがって、運用モードがＲｅａｄＯｎｌｙモードであるＳＳＤは、データの移動先として除外されることになる。そして処理を終了する。
【００３６】
次に、コントローラ１５０を構成する交換時期判断部２０４の動作について図５を参照しつつ説明する。図５は、本実施形態の情報処理装置（ストレージ装置）の交換時期判断部の動作の一例を示すフローチャートである。
ステップＳ４０１の処理において、交換時期判断部２０４は、運用モードがＲｅａｄＯｎｌｙモードであるＳＳＤに格納されているデータブロックに対する参照数を確認する。交換時期判断部２０４は、ＳＳＤに格納されているデータブロックのうち、参照されていないデータブロックの割合（以下、未参照の割合という。）を計算する。
運用モードがＲｅａｄＯｎｌｙモードのＳＳＤを継続して利用する場合、当該ＳＳＤに格納されているデータ以外のデータの更新や削除などに伴い、当該ＳＳＤに格納されているデータの参照数が減る場合がある。当該ＳＳＤにおいて、データの参照数が少ないブロックが多ければ多いほど、当該ＳＳＤの有効性は低くなる。すなわち、未参照の割合が大きくなる。以下、この状態を、有効データブロックの割合が少ない状態をいう。
ステップＳ４０２の処理において、交換時期判断部２０４は、ステップＳ４０１の処理において計算した未参照の割合と、参照数などに応じてＳＳＤが交換時期に到達しているか否かを判断するための予め定められた閾値とを比較する。交換時期判断部２０４は、未参照の割合が予め定められた閾値を超える（ステップＳ４０２：閾値を超える）と判断すると、ステップＳ４０２の処理へ移行する。交換時期判断部２０４は、未参照の割合が予め定められた閾値以内である（ステップＳ４０２：閾値以内）と判断すると、ステップＳ４０４の処理へ移行する。
【００３７】
ここで、予め定められた閾値とは、ＳＳＤに対する参照回数やＳＳＤのデバイスの仕様などに基づいて、予め定められた値である。ＳＳＤが交換時期に到達しているか否かを判断するための予め定められた閾値は、コントローラ１５０の図示しない記憶部に格納されている。
交換時期判断部２０４は、未参照の割合が予め定められた閾値を超えていると判断したステップＳ４０３の処理において、ＳＳＤに格納されている有効データブロックの割合が少ないと判断する。例えば、当該ＳＳＤにおいて参照されないブロック数が、当該ＳＳＤの全体の５０％を超える場合、交換時期判断部２０４は、そのＳＳＤは、今後有効利用されないと判断する。そして、交換時期判断部２０４は、当該ＳＳＤの交換が必要であると判断する。
交換時期判断部２０４は、未参照の割合が予め定められた閾値以内でると判断したステップＳ４０４の処理において、ＳＳＤに格納されている有効データブロックの割合が多いと判断する。そして、交換時期判断部２０４は、ＳＳＤまだ有効に利用することができると判断する。
【００３８】
ステップＳ４０５の処理において、交換時期判断部２０４は、複数のＳＳＤの運用モードがＲｅａｄＯｎｌｙモードにある状態で、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の、全ＳＳＤに対して占める割合を確認する。
ステップＳ４０６の処理において、交換時期判断部２０４は、ステップＳ４０５の処理において確認したＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合と、予め定められた閾値とを比較する。交換時期判断部２０４は、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が予め定められた閾値以内である（ステップＳ４０６：閾値以内）と判断すると、ステップＳ４０７の処理へ移行する。交換時期判断部２０４は、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が予め定められた閾値を超える（ステップＳ４０６：閾値をこえる）と判断すると、ステップＳ４０８の処理へ移行する。
【００３９】
ここで、予め定められた閾値とは、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が多くなると、階層ストレージ全体として書き込み性能が悪くなることを考慮して定められた値である。例えば、階層ストレージを構成する複数のＳＳＤのうち、例えば、全ＳＳＤの総容量の５０％といった所定量のＳＳＤの運用モードがＲｅａｄＯｎｌｙモードにある場合を考える。この場合、交換時期判断部２０４は、階層ストレージ全体の性能、特に、ＳＳＤに対する書き込み性能に悪影響を与えると判断する。ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が階層ストレージ全体として書き込み性能が悪くなることを考慮して定められたられた閾値は、コントローラ１５０の図示しない記憶部に格納されている。
交換時期判断部２０４は、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が予め定められた閾値以内であると判断したステップＳ４０７の処理において、ＳＳＤの交換は不要であると判断する。そして、交換時期判断部２０４は、ＳＳＤを継続して利用すると判断する。
交換時期判断部２０４は、ＲｅａｄＯｎｌｙモードにあるＳＳＤの容量の割合が予め定められた閾値を超えると判断したステップＳ４０８の処理において、ＲｅａｄＯｎｌｙモードにあるＳＳＤの領域の容量は、階層ストレージ全体の性能に影響すると判断する。交換時期判断部２０４は、運用モードがＲｅａｄＯｎｌｙモードにあるＳＳＤの有効データが少ない順（未参照の割合が大きい順）にＳＳＤの交換が必要であると判断する。
【００４０】
ＳＳＤの信頼性に関する種々の統計データを予め取得しておき、この統計データと実際の生データとに基づいてＳＳＤの寿命を予測し、ＳＳＤが寿命に到達した場合には、当該ＳＳＤに対する書き込みを禁止することは通常行われている。
しかしながら、この通常行われている技術では、単に、寿命に到達したＳＳＤに対する書き込みを禁止しているだけで、当該寿命に到達したＳＳＤは有効活用されずに廃棄されることになる。
これに対して、本実施形態における情報処理装置では、ＳＳＤの余命期間に応じて、ＳＳＤの運用モードを切り替えることとしている。具体的には、余命が未だ長いＳＳＤは通常運用モードとして運用する。また、一定の書き換え回数を超えており余命が短いＳＳＤはＲｅａｄＯｎｌｙ準備モードとして運用する。さらに、寿命に到達したＳＳＤは、書き込みを禁止し、ＲｅａｄＯｎｌｙモードとして運用する。
【００４１】
要するに、ＳＳＤに対する書き込み寿命が到達した場合であっても、当該ＳＳＤを継続して利用することとしている。そして、処理対象のデータを、運用モードが切り替えられたそれぞれのＳＳＤに対して配置している。したがって、高価なＳＳＤが寿命に到達した場合であっても直ちに廃棄するのではなく、運用モードを切り替えることで有効活用し続けることとしている。これにより、ＳＳＤの利用期間を延長することができる。
このように、本実施形態では、ＳＳＤが寿命を超えた場合であっても、ＳＳＤの運用モードを限定することとしている。そして、取り扱うデータの種類に応じて、寿命までの期間がそれぞれ異なるＳＳＤを有効活用することとしている。したがって、ＳＳＤの寿命を考慮した最適なデータ配置を実現することができる。そして、寿命までの期間がそれぞれ異なるＳＳＤを、データの種類に応じてきめ細かく有効活用することができるのである。
【００４２】
（第２実施形態）
次に、本発明の第２実施形態を説明する。図６は、本発明の第２実施形態の情報処理装置（ストレージ装置）の一例を示す概略ブロック図である。
図６を参照すると、本実施形態の情報処理装置６０は、半導体記憶部６１と、運用モード記憶部６２と、算出部６３と、比較部６４と、運用モード切替部６５とを有する。
半導体記憶部６１は、寿命が書き換え回数に依存する。運用モード記憶部６２は、半導体記憶部６１を運用する運用モードを切り替える閾値を記憶する。算出部６３は、半導体記憶部６１の寿命と半導体記憶部６１に対する書き換え回数とに基づいて、半導体記憶部６１の余命を算出する。比較部６４は、算出部６３で算出された余命と運用モード記憶部６２に記憶された閾値とを比較する。運用モード切替部６５は、比較部６４を用いた比較結果に応じて半導体記憶部６１の運用モードを切り替える。そして、運用モード切替部６５は、算出部６３で算出された余命が無いとき、運用モードを、半導体記憶部６１からの読み出し動作のみを許可するリードオンリーモードに切り替える。
【００４３】
本実施形態では、階層化ストレージにおける装置内ＩＬＭ機能を一例とする階層化ストレージを有する情報処理システムにおいて、ＳＳＤの書き換え寿命が近くなった場合、リード率の高いデータよりも今後もリードされる可能性が高いと見込まれるデータを、そのＳＳＤに集中的に配置する。今後もリードされる可能性が高いと見込まれるデータの一例として、重複排除ストレージにおける、頻繁に参照される重複排除の元データが挙げられる。これにより、ＳＳＤの書き換え寿命を超えた場合であっても、直ちにＳＳＤを交換する必要がない。また、ＳＳＤを長期間有効に使用し続けることができる。
さらに、ＳＳＤの書き換え寿命を超えて、運用モードをＲｅａｄＯｎｌｙモードとして使用を継続する場合のＳＳＤの交換時期を、ＳＳＤに対する個別の利用状況だけでなく、階層ストレージ全体に対する利用状況を考慮して判断することとしている。
【００４４】
なお、情報処理装置６０の図示しない記憶部に格納されているコンピュータプログラムは、記録媒体で提供されてもよく、また、インターネット等のネットワークを介して提供されてもよい。記録媒体は、コンピュータ使用可能媒体又はコンピュータ可読媒体であって、磁気、光、電子、電磁気、赤外線などを用いて情報の記録又は読み取りが可能な媒体を含む。そのような媒体として、例えば、半導体メモリ、半導体または固体の記憶装置、磁気テープ、取外し可能なコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ（Random Access Memory））、読出し専用メモリ（ＲＯＭ（Read Only Memory））、磁気ディスク、光ディスク、光磁気ディスクなどがある。
【００４５】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００４６】
１    情報処理システム
１０、１１    ホストコンピュータ
６０    情報処理装置
６１    半導体記憶部
６２    運用モード記憶部
６３    算出部
６４    比較部
６５    運用モード切替部
１００、１１０、１２０    ストレージ装置
１０１、１０２、１０３    データ
１０４、１１４、１２４    ＳＳＤ
１０５、１１５、１２５    ＳＡＳ
１０６、１１６、１２６    ＳＡＴＡ
２０１    ＳＳＤ運用モード管理表
２０２    利用モード設定部
２０３    データ最適配置部
２０４    交換時期判断部
【図１】
2018180845.tif 000003
【図２】
2018180845.tif 000004
【図３】
2018180845.tif 000005
【図４】
2018180845.tif 000006
【図５】
2018180845.tif 000007
【図６】
2018180845.tif 000008