JP2018169980A - Storage device, control method thereof, and program - Google Patents

Storage device, control method thereof, and program Download PDF

Info

Publication number
JP2018169980A
JP2018169980A JP2017069250A JP2017069250A JP2018169980A JP 2018169980 A JP2018169980 A JP 2018169980A JP 2017069250 A JP2017069250 A JP 2017069250A JP 2017069250 A JP2017069250 A JP 2017069250A JP 2018169980 A JP2018169980 A JP 2018169980A
Authority
JP
Japan
Prior art keywords
ssd
ssds
data
life
storage apparatus
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
JP2017069250A
Other languages
Japanese (ja)
Other versions
JP6536614B2 (en
Inventor
滋 菅沼
Shigeru Suganuma
滋 菅沼
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2017069250A priority Critical patent/JP6536614B2/en
Publication of JP2018169980A publication Critical patent/JP2018169980A/en
Application granted granted Critical
Publication of JP6536614B2 publication Critical patent/JP6536614B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a storage device configured to extend service life of the whole of a storage system including multiple SSDs.SOLUTION: A storage device includes a life estimation unit and a data exchange unit. The life estimation unit estimates service life of SSDs on the basis of information on an alternative sector in each of the SSDs and data write cycle for each of the SSDs. The data exchange unit exchanges data stored in a first SSD of the SSDs having an estimated life value smaller than a predetermined value, for data stored in a second SSD of the SSDs different from the first SSD. The data exchange unit calculates life reduction value in each of the SSDs when the data stored in the first SSD is stored in each of SSDs excluding the first SSD, and selects the second SSD on the basis of the life reduction value.SELECTED DRAWING: Figure 1

Description

本発明は、ストレージ装置、ストレージ装置の制御方法及びプログラムに関する。特に、複数の記憶媒体を有するストレージ装置、ストレージ装置の制御方法及びプログラムに関する。   The present invention relates to a storage apparatus, a storage apparatus control method, and a program. In particular, the present invention relates to a storage apparatus having a plurality of storage media, a storage apparatus control method, and a program.

近年、SSD(Solid State Drive)と称される記憶媒体が広く用いられている(特許文献1〜4)。   In recent years, a storage medium called SSD (Solid State Drive) has been widely used (Patent Documents 1 to 4).

特許文献1は、複数のSSDそれぞれにおける書き込み回数を監視し、書き込み回数がSSD間で極端に偏る場合、データスワップを行い、書き込み回数の平準化を図る技術を開示している。   Patent Document 1 discloses a technique for monitoring the number of times of writing in each of a plurality of SSDs, and performing data swapping when the number of times of writing is extremely biased between SSDs, and leveling the number of times of writing.

特許文献2は、SSDへの書き込み回数が予め定めた回数よりも多い場合、データの一部をスペアディスク(スペアの記憶デバイス)に退避させる技術を開示している。   Patent Document 2 discloses a technique for saving a part of data to a spare disk (spare storage device) when the number of writes to the SSD is greater than a predetermined number.

特許文献3は、SSDに書き込み領域を割り当てる際、SSDの特性がSLC(Single-Level-Cell)かMLC(Multi-Level-Cell)であるかを考慮し、SSDに対する書き込み頻度の高い場合はSLCを割り当て、書き込み頻度が低い場合にはMLCを割り当てる技術を開示している。   Patent Document 3 considers whether the SSD characteristics are SLC (Single-Level-Cell) or MLC (Multi-Level-Cell) when allocating a write area to the SSD. A technique for allocating MLC and allocating MLC when the writing frequency is low is disclosed.

特許文献4は、複数の記憶媒体間の劣化を平準化するための技術を開示する。特許文献4には、第1論理記憶領域に割り当てられた記憶デバイスと異なる記憶デバイスを割り当てられ第1論理記憶領域の推定データより小さい推定データ量を有する第2論理記憶領域を選択し、第1論理記憶領域に格納された第1データを第2論理記憶領域に移動させる、と記載されている。   Patent Document 4 discloses a technique for leveling deterioration between a plurality of storage media. In Patent Document 4, a second logical storage area that is assigned a storage device different from the storage device assigned to the first logical storage area and has an estimated data amount smaller than the estimated data of the first logical storage area is selected. It is described that the first data stored in the logical storage area is moved to the second logical storage area.

特許文献5は、コンパクトフラッシュ(登録商標)に関する技術を開示している。特許文献5は、代替セクタ数が閾値を超える場合は商品販売データをメモリに記憶させ、商品販売データの登録終了に応答して、メモリに記憶した複数の商品販売データを一括してコンパクトフラッシュ(登録商標)カードに書込む技術を開示する。   Patent Document 5 discloses a technology related to CompactFlash (registered trademark). In Patent Document 5, when the number of alternative sectors exceeds a threshold, product sales data is stored in a memory, and in response to the end of registration of product sales data, a plurality of product sales data stored in the memory are collectively stored in a compact flash ( Disclosure of technology for writing on a registered trademark card.

特許第5242264号公報Japanese Patent No. 5242264 特開2010−55247号公報JP 2010-55247 A 特許第5192352号公報Japanese Patent No. 5192352 国際公開第2014/141411号International Publication No. 2014/141411 特開2006−155532号公報JP 2006-155532 A

なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。   Each disclosure of the above prior art document is incorporated herein by reference. The following analysis was made by the present inventors.

SSDへの書き込み回数は、SSDの寿命に影響を与える。そのため、上述のように、SSDの書き込みに関する種々の技術が存在する。しかし、SSDの寿命は書き込み回数にだけ依存して定まるものではなく、SSDへのデータ書き込みを抑制したとしてもSSDの寿命を保証することはできない。   The number of writes to the SSD affects the life of the SSD. Therefore, as described above, there are various techniques related to SSD writing. However, the life of the SSD is not determined depending only on the number of times of writing, and even if data writing to the SSD is suppressed, the life of the SSD cannot be guaranteed.

その理由は、実際のSSDが寿命を迎えるのは、代替セクタの枯渇が主要因として考えられるからである。つまり、SSDへの書き込み回数はSSDの寿命を推測する方法の1つであって、代替セクタの存在を考慮していなければ不十分である。例えば、特許文献1には、代替セクタの使用量を観測する言及がない。   The reason is that the actual SSD reaches the end of its life because the depletion of alternative sectors is considered as the main factor. That is, the number of times of writing to the SSD is one of methods for estimating the life of the SSD, and is insufficient unless the existence of the alternative sector is taken into consideration. For example, Patent Document 1 does not mention observing the usage amount of alternative sectors.

また、SSDの内部制御回路は、SSDの読み書きが失敗した場合、代替セクタへの切り替えによって状態回復を図る。SSDの読み書き失敗は、書き込み回数によって確率的に発生し得るが、その発生頻度は、周辺環境やSSD素体の特性によって変化する。例えば、周辺温度が高い場合、書き込みエラーが発生する可能性が高くなる。また、個々のNANDフラッシュの特性がSLCかMLCかによって、エラー耐性が異なることも考慮すべきである。   The SSD internal control circuit recovers the state by switching to the alternative sector when the reading / writing of the SSD fails. An SSD read / write failure may occur probabilistically depending on the number of writes, but the frequency of occurrence varies depending on the surrounding environment and the characteristics of the SSD element. For example, when the ambient temperature is high, there is a high possibility that a write error will occur. It should also be considered that the error tolerance differs depending on whether the characteristics of the individual NAND flash are SLC or MLC.

特許文献3には、記憶素子の特性に応じて(SLCかMLCかに応じて)、書き換え頻度の高い領域を割り当てるか、低い領域を割り当てるかを選択する方法が開示されている。しかし、当該文献に開示された技術においても、実際の代替セクタの使用量の多寡は検証されていない。そのため、書き込み回数が少なくても、代替セクタの使用量が多いSSDが存在する場合、書き込み時に代替セクタを消費する可能性が高くなる。その結果、SSD間のデータスワップ時の書き込みで、かえってSSD寿命が短くなる可能性もある。   Patent Document 3 discloses a method of selecting whether to assign a region with a high rewrite frequency or a region with a low rewrite frequency according to the characteristics of the storage element (depending on whether it is SLC or MLC). However, even in the technology disclosed in this document, the actual amount of use of alternative sectors has not been verified. Therefore, even if the number of times of writing is small, there is a high possibility that the alternative sector will be consumed at the time of writing if there is an SSD with a large usage amount of the alternative sector. As a result, there is a possibility that the SSD life may be shortened by writing at the time of data swap between SSDs.

本発明は、複数のSSDからなるストレージシステム全体の寿命を長くする、ストレージ装置、ストレージ装置の制御方法及びプログラムを提供することを目的とする。   An object of the present invention is to provide a storage apparatus, a storage apparatus control method, and a program that extend the life of the entire storage system including a plurality of SSDs.

本発明の第1の視点によれば、複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する、寿命推定部と、前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する、データ交換部と、を備え、前記データ交換部は、前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、ストレージ装置が提供される。   According to the first aspect of the present invention, the lifetime value of each SSD is estimated based on the information regarding the alternative sector in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs. A life estimation unit, data stored in a first SSD whose estimated life value is smaller than a predetermined value among the plurality of SSDs, and a first one of the plurality of SSDs different from the first SSD. A data exchange unit for exchanging data stored in the SSD of the second SSD, wherein the data exchange unit converts the data stored in the first SSD to the first of the plurality of SSDs. A storage apparatus is provided that calculates a life shortening amount in each SSD when stored in each of the SSDs excluding the SSD, and selects the second SSD based on the life shortening amount. It is.

本発明の第2の視点によれば、複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定するステップと、前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換するステップと、を含み、前記データを交換するステップは、前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、ストレージ装置の制御方法が提供される。   According to the second aspect of the present invention, the step of estimating the lifetime value of each SSD based on the information regarding the alternative sector in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs. And the data stored in the first SSD having the estimated lifetime value smaller than a predetermined value among the plurality of SSDs, and the second SSD different from the first SSD among the plurality of SSDs. And exchanging data stored in the first SSD of the plurality of SSDs except for the first SSD. And calculating a life shortening amount in each SSD when stored in each of the storage devices, and selecting the second SSD based on the life shortening amount. Your method is provided.

本発明の第3の視点によれば、ストレージ装置に搭載されたコンピュータに実行させるプログラムであって、複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する処理と、前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する処理と、を前記コンピュータに実行させ、前記データを交換する処理は、前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、プログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
According to a third aspect of the present invention, there is provided a program to be executed by a computer installed in a storage apparatus, wherein information relating to an alternative sector in each of a plurality of SSDs (Solid State Drives) and data for each of the plurality of SSDs are stored. A process of estimating the life value of each SSD based on the number of times of writing; data stored in a first SSD having the estimated life value smaller than a predetermined value among the plurality of SSDs; Processing for exchanging data stored in a second SSD different from the first SSD in the SSD is executed by the computer, and the processing for exchanging the data is stored in the first SSD. The life reduction amount of each SSD when the obtained data is stored in each of the plurality of SSDs excluding the first SSD is calculated. While, selecting the second of the SSD based on the lifetime-reducing amount, a program is provided.
This program can be recorded on a computer-readable storage medium. The storage medium may be non-transient such as a semiconductor memory, a hard disk, a magnetic recording medium, an optical recording medium, or the like. The present invention can also be embodied as a computer program product.

本発明の各視点によれば、複数のSSDからなるストレージシステム全体の寿命を長くすることに寄与する、ストレージ装置、ストレージ装置の制御方法及びプログラム、が提供される。   According to each aspect of the present invention, a storage apparatus, a storage apparatus control method, and a program that contribute to extending the life of the entire storage system including a plurality of SSDs are provided.

一実施形態の概要を説明するための図である。It is a figure for demonstrating the outline | summary of one Embodiment. 第1の実施形態に係るストレージ装置の概略構成の一例を示す図である。It is a figure which shows an example of schematic structure of the storage apparatus which concerns on 1st Embodiment. 第1の実施形態に係るデバイスコントローラの処理構成の一例を示す図である。It is a figure which shows an example of a process structure of the device controller which concerns on 1st Embodiment. 第1の実施形態に係るストレージ装置の動作を説明するための図である。It is a figure for demonstrating operation | movement of the storage apparatus which concerns on 1st Embodiment. 第1の実施形態に係るストレージ装置の概略構成の他の一例を示す図である。It is a figure which shows another example of schematic structure of the storage apparatus which concerns on 1st Embodiment.

初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、各図におけるブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。   First, an outline of one embodiment will be described. Note that the reference numerals of the drawings attached to the outline are attached to the respective elements for convenience as an example for facilitating understanding, and the description of the outline is not intended to be any limitation. In addition, the connection lines between the blocks in each drawing include both bidirectional and unidirectional directions. The unidirectional arrow schematically shows the main signal (data) flow and does not exclude bidirectionality.

一実施形態に係るストレージ装置10は、寿命推定部201と、データ交換部202と、を備える(図1参照)。寿命推定部201は、複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する。データ交換部202は、複数のSSDのうち推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、複数のSSDのうち第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する。さらに、データ交換部202は、第1のSSDに格納されたデータを、複数のSSDのうち第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、寿命短縮量に基づき前記第2のSSDを選択する。   The storage apparatus 10 according to an embodiment includes a life estimation unit 201 and a data exchange unit 202 (see FIG. 1). The life estimation unit 201 estimates the life value of each SSD based on information on alternative sectors in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs. The data exchange unit 202 includes data stored in a first SSD whose estimated life value is smaller than a predetermined value among a plurality of SSDs, and a second SSD different from the first SSD among the plurality of SSDs. Exchange data stored in Further, the data exchanging unit 202 calculates the life shortening amount in each SSD when the data stored in the first SSD is stored in each of the SSDs excluding the first SSD among the plurality of SSDs. The second SSD is selected based on the shortening amount.

上述のように、SSDの寿命は代替セクタの枯渇によるものと考えられるが、SSDの寿命を延ばす(SSDを延命)ためには書き込み回数の少ない領域への割り当ても必要になる。そこで、ストレージ装置10は、SSDの代替セクタに関する情報(例えば、代替セクタの使用量)と書き込み回数を共に観測し、これらの情報を用いた演算結果から、SSDの寿命低下を予測する。ストレージ装置10は、特定のSSDの寿命が短くなっていると判断した場合には、他の寿命が長いSSDとの間でデータスワップを行う。その結果、SSDを搭載したストレージシステム全体の寿命が長くなる。また、ストレージシステム全体の寿命が長くなることで、システム全体の信頼性を向上させることができる。   As described above, the life of the SSD is considered to be due to the exhaustion of the alternative sector. However, in order to extend the life of the SSD (extend the life of the SSD), it is also necessary to allocate to an area where the number of writings is small. Therefore, the storage apparatus 10 observes both information relating to the alternative sector of the SSD (for example, the usage amount of the alternative sector) and the number of times of writing, and predicts a decrease in the life of the SSD from the calculation result using the information. When the storage device 10 determines that the life of a specific SSD is short, the storage device 10 performs data swap with another SSD having a long life. As a result, the life of the entire storage system equipped with the SSD is extended. In addition, since the life of the entire storage system is extended, the reliability of the entire system can be improved.

以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。   Hereinafter, specific embodiments will be described in more detail with reference to the drawings. In addition, in each embodiment, the same code | symbol is attached | subjected to the same component and the description is abbreviate | omitted.

[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
[First Embodiment]
The first embodiment will be described in more detail with reference to the drawings.

図2は、第1の実施形態に係るストレージ装置1の概略構成の一例を示す図である。図2を参照すると、ストレージ装置1は、ストレージコントローラ11と、複数のSSD12〜15と、を含んで構成される。   FIG. 2 is a diagram illustrating an example of a schematic configuration of the storage apparatus 1 according to the first embodiment. Referring to FIG. 2, the storage apparatus 1 includes a storage controller 11 and a plurality of SSDs 12-15.

ストレージコントローラ11は、ストレージ装置1の全体を制御する手段である。SSD12〜15のそれぞれは、データを保持する記憶デバイスである。ストレージコントローラ11は、SSD12〜15を制御するデバイスコントローラ111を備えている(デバイスコントローラ111が実装されている)。   The storage controller 11 is means for controlling the entire storage apparatus 1. Each of the SSDs 12 to 15 is a storage device that holds data. The storage controller 11 includes a device controller 111 that controls the SSDs 12 to 15 (the device controller 111 is mounted).

デバイスコントローラ111は、各SSDに対応するデバイスインターフェイス112〜115を介して、SSD12〜15に接続されている。また、ストレージコントローラ11は、デバイスインターフェイス112〜115及びSSD12〜15に対応する書き込み回数カウンタ1121〜1151を備えている。   The device controller 111 is connected to the SSDs 12 to 15 via device interfaces 112 to 115 corresponding to the respective SSDs. The storage controller 11 also includes write number counters 1121 to 1151 corresponding to the device interfaces 112 to 115 and the SSDs 12 to 15.

書き込み回数カウンタ1121〜1151は、対応するSSD12〜15に対する書き込み回数を監視する手段である。より具体的には、書き込み回数カウンタ1121〜1151は、複数のSSD12〜15それぞれに対応して設置され、対応するSSDへのデータの累計書き込み回数を計測する。   The write count counters 1121-1115 are means for monitoring the number of writes to the corresponding SSDs 12-15. More specifically, the write count counters 1121 to 1151 are installed corresponding to the plurality of SSDs 12 to 15, respectively, and measure the cumulative number of times of writing data to the corresponding SSD.

また、SSD12〜15のそれぞれには、代替セクタ121〜151が実装されている。代替セクタ121〜151は、必要に応じて消費される。図2では、灰色で塗りつぶされた領域が代替セクタ使用領域1211〜1511であって、代替セクタの消費分である。   In addition, alternative sectors 121 to 151 are mounted on the SSDs 12 to 15, respectively. The alternative sectors 121 to 151 are consumed as necessary. In FIG. 2, the grayed out areas are the alternative sector use areas 1211 to 1511, which are consumed by the alternative sectors.

各SSD12〜15の記憶領域は、SSD12〜15の間でRAID(Redundant Arrays of Inexpensive Disks)構成されている。つまり、ストレージ装置1は、複数のSSD12〜15を用いて、RAIDを構成すべく(RAIDを構成するための)、データおよび冗長符号を分散格納する機能を備える。また、ストライピンググループ21は、データ領域212〜215で構成される。   The storage areas of the SSDs 12 to 15 are configured by RAID (Redundant Arrays of Inexpensive Disks) between the SSDs 12 to 15. That is, the storage apparatus 1 has a function of distributing and storing data and redundant codes in order to configure a RAID (for configuring a RAID) using a plurality of SSDs 12 to 15. The striping group 21 is composed of data areas 212 to 215.

なお、図2では、ストレージ装置1と接続されるホストや当該ホストとのインターフェイスの図示は省略している。   In FIG. 2, the host connected to the storage apparatus 1 and the interface with the host are not shown.

図3は、デバイスコントローラ111の処理構成の一例を示す図である。図3を参照すると、デバイスコントローラ111は、寿命推定部101と、データ交換部102と、を含んで構成される。なお、デバイスコントローラ111は、ストレージ装置1に搭載されたコンピュータに、上記寿命推定部101、データ交換部102を含む処理モジュールを実行させるプログラムにより実現することができる。   FIG. 3 is a diagram illustrating an example of a processing configuration of the device controller 111. Referring to FIG. 3, the device controller 111 includes a life estimation unit 101 and a data exchange unit 102. The device controller 111 can be realized by a program that causes a computer installed in the storage apparatus 1 to execute processing modules including the life estimation unit 101 and the data exchange unit 102.

寿命推定部101は、複数のSSD12〜15それぞれにおける代替セクタに関する情報と、複数のSSD12〜15それぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する手段である。寿命推定部101は、各SSDにおける代替セクタの消費量と書き込み回数の組み合わせに基づき、各SSDに関する寿命パラメータを作成する。   The life estimation unit 101 is a means for estimating the life value of each SSD based on the information regarding the alternative sector in each of the plurality of SSDs 12 to 15 and the number of times data is written to each of the plurality of SSDs 12 to 15. The life estimation unit 101 creates a lifespan parameter for each SSD based on the combination of the consumption of alternative sectors and the number of writes in each SSD.

データ交換部102は、複数のSSD12〜15のうち推定された寿命値(寿命パラメータ)が所定の値よりも小さい第1のSSDに格納されたデータと、複数のSSD12〜15のうち第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する手段である。データ交換の際、データ交換部102は、第1のSSDに格納されたデータを、複数のSSD12〜15のうち第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、当該算出された寿命短縮量に基づき第2のSSDを選択する。   The data exchange unit 102 includes data stored in a first SSD whose estimated life value (lifetime parameter) is smaller than a predetermined value among the plurality of SSDs 12 to 15, and the first of the plurality of SSDs 12 to 15. This is means for exchanging data stored in a second SSD different from the SSD. At the time of data exchange, the data exchange unit 102 calculates the life reduction amount in each SSD when the data stored in the first SSD is stored in each of the SSDs 12 to 15 excluding the first SSD. While calculating, the second SSD is selected based on the calculated life reduction amount.

つまり、データ交換部102は、寿命悪化が見込まれるSSDから余命が長いと推定されるSDDに書き込み処理をスワップする(SSD間でデータを移動する)。このようなデバイスコントローラ111の処理により、SSD間の見込み寿命が平準化され、ストレージシステム全体の寿命を長くすることができる。   That is, the data exchanging unit 102 swaps the writing process to the SSD whose life expectancy is long from the SSD whose lifetime is expected to deteriorate (data is moved between the SSDs). By such processing of the device controller 111, the expected lifetime between SSDs is leveled, and the lifetime of the entire storage system can be extended.

なお、データ交換部102は、データスワップをRAIDのストライピングごとに行う。より具体的には、データ交換部102は、上述の第1及び第2のSSD間でデータ交換する際のデータの入れ替え単位を、RAIDを構成するストライピンググループのサイズを基準とする。例えば、データ交換部102は、ブロック単位でSSD間でデータを交換し、1つのブロックよりも小さいデータ同士をSSD間で交換することはない。例えば、図2の例では、同じストライピンググループ21に属するデータ領域212〜215の間でデータスワップ(SSD間のデータの移動)が行われる。   The data exchanging unit 102 performs data swap for each RAID striping. More specifically, the data exchange unit 102 uses the data exchange unit when exchanging data between the first and second SSDs as described above as a reference for the size of the striping group constituting the RAID. For example, the data exchange unit 102 exchanges data between SSDs in units of blocks, and does not exchange data smaller than one block between SSDs. For example, in the example of FIG. 2, data swap (data movement between SSDs) is performed between the data areas 212 to 215 belonging to the same striping group 21.

また、データ交換部102は、SSD間でデータ交換する際、RAIDを構成する情報を書き換える。具体的には、データ交換部102は、複数のSSD12〜15を連携する情報のうち、データとその格納先のSSDを示す情報をSSD間のデータ移動の際に更新する。その結果、ホストに対してはSSD間のデータの移動は隠蔽される。換言するならば、SSD間のデータの移動はストレージコントローラ11(デバイスコントローラ111)側により隠ぺいされ、ホストが意識することはない。   In addition, when exchanging data between SSDs, the data exchange unit 102 rewrites information constituting the RAID. Specifically, the data exchange unit 102 updates information indicating data and an SSD of the storage destination among the information that links the plurality of SSDs 12 to 15 at the time of data movement between the SSDs. As a result, the movement of data between SSDs is hidden from the host. In other words, the movement of data between SSDs is hidden by the storage controller 11 (device controller 111) side, and the host is not aware of it.

寿命推定部101は、以下の式(1)により、各SSDの寿命パラメータを作成する。
Lt_SSDx=α-β*Wcountx-γ*Ssectorx*CapAll/(SsecCap*Wcountx) ・・・(1)
The life estimation unit 101 creates a life parameter for each SSD according to the following equation (1).
Lt_SSD x = α-β * Wcount x -γ * Ssector x * CapAll / (SsecCap * Wcount x ) (1)

なお、式(1)において、サフィックスxはSSDの番号(識別子)を示す。Lt_SSDは、各SSDの寿命の推測値を示す。Wcountは、各SSDへの書き込み回数を示す。Ssectorは、代替セクタの使用量を示す。つまり、Ssectorは、SSDでのエラー(代替)が発生したセクタ数と等価である。CapAllは、代替セクタを除くSSDの総記憶容量を示す。SsecCapは、各SSDの代替セクタ総容量を示す。α、β及びγはSSDの種類ごとのパラメータを示す。より具体的には、αはSSD寿命の基準値、βは書き込み回数による劣化係数、γは代替セクタ使用量での寿命の短縮係数である。 In equation (1), the suffix x indicates the SSD number (identifier). Lt_SSD x indicates an estimated value of the life of each SSD. Wcount x indicates the number of writes to each SSD. Sector x indicates the usage amount of the alternative sector. In other words, Sector x is equivalent to the number of sectors in which an error (substitution) has occurred in SSD. CapAll indicates the total storage capacity of the SSD excluding the alternative sector. SsecCap indicates the total capacity of alternative sectors of each SSD. α, β, and γ indicate parameters for each type of SSD. More specifically, α is a reference value of the SSD life, β is a deterioration coefficient depending on the number of times of writing, and γ is a life shortening coefficient in the alternative sector usage amount.

上述の式(1)において、右辺の第二項は、書き込み回数による寿命の減少量を示す。また、右辺の第三項は、代替セクタの使用量が代替セクタの総容量に比べて大きい場合、及び、代替セクタの総容量が総記憶容量に比べて小さい場合、各SSDの寿命が短くなっていることを示す。   In the above equation (1), the second term on the right side indicates the amount of decrease in the lifetime due to the number of writings. The third term on the right side shows that the life of each SSD is shortened when the usage amount of the alternative sector is larger than the total capacity of the alternative sector and when the total capacity of the alternative sector is smaller than the total storage capacity. Indicates that

寿命推定部101は、上記の式(1)を用いて各SSDに関する寿命の推定値(寿命パラメータ)を算出する。なお、上記の式(1)の計算に必要なパラメータのうち、Wcountは書き込み回数カウンタ1121〜1151により得られる。また、Ssectorは、代替セクタの使用量であるから、デバイスコントローラ111自身(寿命推定部101自身)が把握している情報である。他の情報、例えば、CapAll、SsecCap、α、β及びγ、は各SSDの仕様により定まる値である。従って、事前にこれらの情報をデバイスコントローラ111に入力しておけばよい。 The lifetime estimation unit 101 calculates an estimated value (lifetime parameter) of the lifetime for each SSD using the above equation (1). Of the parameters necessary for the calculation of the above formula (1), Wcount x is obtained by the write count counters 1121-1115. In addition, Sector x is information used by the device controller 111 itself (life estimation unit 101 itself) since it is the usage amount of the alternative sector. Other information, for example, CapAll, SsecCap, α, β, and γ are values determined by the specifications of each SSD. Therefore, these pieces of information may be input to the device controller 111 in advance.

データ交換部102は、寿命推定部101により算出された寿命の推定値Lt_SSDに対して閾値処理を行い、当該推定値が所定の閾値よりも小さい場合には、データスワップを行う。あるいは、データ交換部102は、推定した寿命値が他のSSDと比較して小さい場合には余命が短いと判断し、データスワップを行うことで寿命悪化を回避してもよい。 The data exchange unit 102 performs threshold processing on the estimated life value Lt_SSD x calculated by the life estimation unit 101, and performs data swap if the estimated value is smaller than a predetermined threshold value. Alternatively, the data exchange unit 102 may determine that the life expectancy is short when the estimated lifetime value is smaller than that of other SSDs, and avoid the deterioration of the lifetime by performing data swap.

なお、データ交換部102によるデータスワップを行うか否かを判断は、複数のSSDのうちいずれか1つのSSDに所定のサイズよりも大きいデータが書き込まれるタイミングとする。例えば、1ブロックよりも大きいデータがSSDに書き込まれる際に、上記データスワップの実行要否が判定される。あるいは、1ブロックよりも大きいデータがSSDに書き込まれる際に、寿命推定部101により各SSDの寿命が推定され、その後、データ交換部102によりデータスワップの実行要否が判定されてもよい。   Whether or not to perform data swap by the data exchange unit 102 is determined at a timing when data larger than a predetermined size is written to any one of the plurality of SSDs. For example, when data larger than one block is written to the SSD, it is determined whether or not the data swap is necessary. Alternatively, when data larger than one block is written to the SSD, the life estimation unit 101 may estimate the life of each SSD, and then the data exchange unit 102 may determine whether or not to perform data swap.

データ交換部102は、スワップする領域サイズから、寿命の変更差分を求める。つまり、データ交換部102は、データスワップした後の各SSDの寿命を予測する。スワップ後の予測寿命をLt_SSD’と表記すると、当該予測寿命Lt_SSD’は下記の式(2)により算出される。 The data exchange unit 102 obtains a life change difference from the area size to be swapped. That is, the data exchange unit 102 predicts the life of each SSD after data swap. When the predicted life after swap is expressed as Lt_SSD x ′, the predicted life Lt_SSD x ′ is calculated by the following equation (2).

Lt_SSDx'=α-β*(Wcountx+SWsizex/Block)-γ*Ssectorx*CapAll*(Wcountx+SWsizex/Block)/(SsecCap*Wcountx^2)) ・・・(2) Lt_SSD x '= α-β * (Wcount x + SWsize x / Block) -γ * Ssector x * CapAll * (Wcount x + SWsize x / Block) / (SsecCap * Wcount x ^ 2)) (2)

上記式(2)において、SWsizeは、SSDの領域のうち更新頻度の高い領域でのサイズを示す。SWsizeは、データスワップで置き換えられるデータのサイズである。また、BlockはSSDの種類ごとの書き込み更新単位を示す。Blockは、SSDの最小書き換え単位とする。つまり、データ交換部102は、SSD間でデータ交換する際のデータの入れ替え単位を、RAIDを構成するストライピンググループのサイズ(Block)を基準とする。換言すれば、ブロック単位でデータが入れ替えられ、1つのブロックよりも小さいサイズのデータ同士を入れ替えることはない。なお、SWsize/Blockを計算することで、データスワップ時の書き換え回数が求まる。 In the above formula (2), SWsize x indicates the size in the region with high update frequency in the SSD region. SWsize x is the size of data to be replaced by data swap. Block indicates a write update unit for each SSD type. Block is the minimum rewrite unit of SSD. That is, the data exchange unit 102 uses the size (Block) of the striping group constituting the RAID as a reference for the data exchange unit when exchanging data between SSDs. In other words, data is exchanged in units of blocks, and data having a size smaller than one block is not exchanged. Note that the number of rewrites at the time of data swap can be obtained by calculating SWsize x / Block.

ここで、代替セクタの消費量Ssectorも、書き換え処理によって増加すると予測される。当該増加量は、書き換え回数Wcountの増加量の形で示される。データスワップ後の書き換え回数をWcount’とすると、当該書き換え回数は下記の式(3)により求まる。
Wcountx’= Wcountx+SWsizex/Block ・・・(3)
Here, the consumption amount Sector x of the alternative sector is also predicted to increase due to the rewriting process. The increase amount is shown in the form of an increase amount of the rewrite count Wcount x . Assuming that the number of rewrites after data swap is Wcount x ′, the number of rewrites is obtained by the following equation (3).
Wcount x '= Wcount x + SWsize x / Block (3)

代替セクタの増加量は、元の書き換え回数との比率であらわされるから、増加比率δは以下の式(4)により求まる。
δ=Wcountx’/Wcountx=(Wcountx+SWsizex/Block)/Wcountx ・・・(4)
Since the increase amount of the alternative sector is expressed as a ratio to the original number of rewrites, the increase ratio δ is obtained by the following equation (4).
δ = Wcount x '/ Wcount x = (Wcount x + SWsize x / Block) / Wcount x (4)

式(1)における右辺の第二項の書き換え回数を式(3)におけるWcount’で置き換え、式(1)における右辺の第三項に式(4)の増加比率δを乗じて整理すると、式(2)が得られる。但し、厳密には、右辺の第三項の分母を書き換え回数Wcount’により置き換えるのが好ましいが、代替セクタの消費量が少なく見積もられるため、式(1)における右辺の第三項の分母は不変としている。 When the number of rewrites of the second term on the right side in equation (1) is replaced with Wcount x ′ in equation (3), and the third term on the right side in equation (1) is multiplied by the increase ratio δ in equation (4), Equation (2) is obtained. However, strictly speaking, it is preferable to replace the denominator of the third term on the right side by the number of rewrites Wcount x ′. However, since the consumption of the alternative sector is estimated to be small, the denominator of the third term on the right side in Equation (1) is It is immutable.

データスワップの実行が決定されると、データ交換部102は、式(1)と式(2)を用いて、データ移動先の候補となる各SSDの寿命の短縮量を計算する。   When execution of the data swap is determined, the data exchange unit 102 calculates the amount of shortening of the lifetime of each SSD that is a candidate for the data movement destination using the equations (1) and (2).

ここで、SSDの寿命の短縮量が小さいということは、元のSSDの寿命が長く、寿命の変化量が小さいということと等価である。そこで、データ交換部102は、下記の式(5)に示すように、元の寿命の推定値Lt_SSDよりデータスワップ後の寿命Lt_SSD’を減算することで、寿命の短縮量を算出する。 Here, a small reduction in the life of the SSD is equivalent to a long life of the original SSD and a small change in the life. Therefore, the data exchange unit 102 calculates a life shortening amount by subtracting the life span Lt_SSD x ′ after the data swap from the original life span estimated value Lt_SSD x as shown in the following equation (5).

Lt_SSDx-Lt_SSDx'
=(β+γ*Ssectorx*CapAll/(SsecCap*Wcountx^2))*SWsizex/Block) ・・・(5)
Lt_SSD x -Lt_SSD x '
= (β + γ * Ssector x * CapAll / (SsecCap * Wcount x ^ 2)) * SWsize x / Block) (5)

上記式(5)の値が寿命の短縮量であるから、データ交換部は、上記値が最も小さくなるSSDをスワップ対象として選択する。   Since the value of the above formula (5) is the shortening amount of the lifetime, the data exchange unit selects the SSD having the smallest value as the swap target.

次に、図4を参照しつつ、第1の実施形態に係るストレージ装置1の動作を説明する。図4において、各SSD12〜15のそれぞれの代替セクタ121〜151は、灰色領域の容量が消費されているものとする(代替セクタ121〜151は、代替セクタ使用領域1211〜1511の大きさが使用されている)。また、各SSD12〜15に対する書き込み回数(書き込み回数カウンタ1121〜1151が保持するカウント値)は、N1、N2、N3、N4とする。   Next, the operation of the storage apparatus 1 according to the first embodiment will be described with reference to FIG. In FIG. 4, it is assumed that the capacity of the gray area is consumed in the alternative sectors 121 to 151 of the SSDs 12 to 15 (the size of the alternative sector usage areas 1211 to 1511 is used for the alternative sectors 121 to 151). Have been). Further, the number of writes to the SSDs 12 to 15 (count values held by the write number counters 1121 to 1151) is N1, N2, N3, and N4.

上記書き込み回数の大小関係は、下記の式(6)のとおりとする。   The magnitude relationship of the number of times of writing is as shown in the following formula (6).

N4>N3>N2>N1 ・・・(6) N4> N3> N2> N1 (6)

デバイスコントローラ111は、各SSDの代替セクタ使用領域1211〜1511のサイズと各書き込み回数カウンタ1121〜1151の値により、各SSDの予測寿命を算出する。具体的には、デバイスコントローラ111は、SSD12〜15のそれぞれについて式(1)を適用し、下記の式(7)〜(10)により各SSDの予測寿命を算出する。   The device controller 111 calculates the expected life of each SSD based on the size of the alternative sector use area 1211 to 1511 of each SSD and the value of each write count counter 1121 to 1151. Specifically, the device controller 111 applies the formula (1) to each of the SSDs 12 to 15 and calculates the predicted life of each SSD by the following formulas (7) to (10).

Lt_SSD12=α-β*N1-γ*Ssector12*CapAll/(SsecCap*N1) ・・・(7)
Lt_SSD13=α-β*N2-γ*Ssector13*CapAll/(SsecCap*N2) ・・・(8)
Lt_SSD14=α-β*N3-γ*Ssector14*CapAll/(SsecCap*N3) ・・・(9)
Lt_SSD15=α-β*N4-γ*Ssector15*CapAll/(SsecCap*N4) ・・・(10)
Lt_SSD 12 = α-β * N1-γ * Ssector 12 * CapAll / (SsecCap * N1) (7)
Lt_SSD 13 = α-β * N2-γ * Ssector 13 * CapAll / (SsecCap * N2) (8)
Lt_SSD 14 = α-β * N3-γ * Ssector 14 * CapAll / (SsecCap * N3) (9)
Lt_SSD 15 = α-β * N4-γ * Ssector 15 * CapAll / (SsecCap * N4) (10)

なお、SSDがすべて同一種類であるとすると、α、β及びγは固定値となる。また、上記の式(7)〜(10)では、各SSDを示す符号をサフィックスxとしている。   If SSDs are all the same type, α, β, and γ are fixed values. In the above formulas (7) to (10), a code indicating each SSD is a suffix x.

上記(7)〜(10)による計算の結果、SSD12の予測寿命値Lt_SSD12が最も小さく、かつ、当該予測寿命値が所定の閾値よりも小さい場合、デバイスコントローラ111は、SSD12に格納されたデータのスワップを決定する。 When the predicted life value Lt_SSD 12 of the SSD 12 is the smallest and the predicted life value is smaller than a predetermined threshold as a result of the calculations according to the above (7) to (10), the device controller 111 stores the data stored in the SSD 12 Determine the swap.

デバイスコントローラ111は、SSD12のデータをスワップする際の相手先となるSSDを下記の式(11)〜(13)により求める。   The device controller 111 obtains an SSD as a counterpart when swapping the data of the SSD 12 by the following equations (11) to (13).

Lt_SSD13 - Lt_SSD13'
= (β+γ*Ssector13*CapAll/(SsecCap*N2^2))*SWsizex/Block) ・・・(11)
Lt_SSD14 - Lt_SSD14'
= (β+γ*Ssector14*CapAll/(SsecCap*N3^2))*SWsizex/Block) ・・・(12)
Lt_SSD15 - Lt_SSD15'
= (β+γ*Ssector15*CapAll/(SsecCap*N4^2))*SWsizex/Block) ・・・(13)
Lt_SSD 13 -Lt_SSD 13 '
= (β + γ * Ssector 13 * CapAll / (SsecCap * N2 ^ 2)) * SWsize x / Block) (11)
Lt_SSD 14 -Lt_SSD 14 '
= (β + γ * Ssector 14 * CapAll / (SsecCap * N3 ^ 2)) * SWsize x / Block) (12)
Lt_SSD 15 -Lt_SSD 15 '
= (β + γ * Ssector 15 * CapAll / (SsecCap * N4 ^ 2)) * SWsize x / Block) (13)

式(11)〜(13)を確認すると、データスワップ後のSSDの寿命の短縮量は、代替セクタの消費量が多い物ほど大きくなる。具体的には、式(11)により計算されるSSD13の寿命短縮量が最も小さく、式(12)により計算されるSSD14の寿命短縮量が最も大きくなる。   When the equations (11) to (13) are confirmed, the amount of reduction in the life of the SSD after the data swap increases as the consumption amount of the alternative sector increases. Specifically, the life shortening amount of the SSD 13 calculated by the equation (11) is the smallest, and the life shortening amount of the SSD 14 calculated by the equation (12) is the largest.

デバイスコントローラ111は、SSDの寿命短縮量が最も小さいSSDをデータスワップの相手先として選出する。上記の例ではSSD13がデータスワップの相手となる。   The device controller 111 selects the SSD having the smallest SSD life reduction amount as the data swap partner. In the above example, the SSD 13 is a data swap partner.

このように、デバイスコントローラ111は、データスワップの相手(データの移動先)とするSSDは、書き込み回数に加え、代替セクタの消費量を少ないものを選出する。図4の例では、デバイスコントローラ111は、SSD12の寿命が短くなっていると判断した場合には、SSD12とSSD13との間でデータスワップを実施する。   As described above, the device controller 111 selects an SSD that is a data swap partner (data transfer destination) that consumes less alternative sectors in addition to the number of writes. In the example of FIG. 4, when the device controller 111 determines that the life of the SSD 12 is short, the device controller 111 performs data swap between the SSD 12 and the SSD 13.

上記実施形態にて説明したストレージ装置1の構成や動作は例示であって、システムの構成を限定する趣旨ではない。例えば、各SSDがRAIDを構成しておらず、図4のデータ領域212〜215が互いに独立していてもよい(図5参照)。このような場合であっても、データ領域の書き込み単位が定まっていれば、データスワップは可能である。   The configuration and operation of the storage apparatus 1 described in the above embodiment are merely examples, and are not intended to limit the system configuration. For example, each SSD may not constitute a RAID, and the data areas 212 to 215 in FIG. 4 may be independent from each other (see FIG. 5). Even in such a case, data swap is possible if the unit of writing in the data area is determined.

以上のように、第1の実施形態に係るストレージ装置1では、SSDの代替セクタの使用量を監視することで、実際のSSDの寿命をより正確に予測する。代替セクタの枯渇がSSDの寿命そのものに影響するため、書き込み回数の観測より直接的にSSDの状態を確認できるためである。   As described above, the storage apparatus 1 according to the first embodiment predicts the actual life span of the SSD more accurately by monitoring the usage amount of the alternative sector of the SSD. This is because the depletion of the alternative sector affects the life of the SSD itself, so that the state of the SSD can be confirmed directly from the observation of the number of times of writing.

上記の説明により、本発明の産業上の利用可能性は明らかであるが、本発明は、複数の記憶媒体を含むディスクアレイ装置等に好適に適用可能である。ディスクアレイ装置に適用することで、当該装置の長寿命化が実現できる。即ち、SSD単体の寿命は、SSD内部でのウェアレベリングや、代替セクタの大容量化などで増加傾向にあり、これに装置全体での延命効果を付加すれば、SSDの寿命を装置寿命程度まで伸ばすことが可能となり、SSDの交換を減らすことが可能になる。   From the above description, the industrial applicability of the present invention is clear, but the present invention can be suitably applied to a disk array device including a plurality of storage media. By applying it to a disk array device, the life of the device can be extended. In other words, the life span of a single SSD tends to increase due to wear leveling inside the SSD and the capacity of alternative sectors, etc. If the life extension effect of the entire device is added to this, the life span of the SSD can be reduced to the device life. It becomes possible to extend, and it becomes possible to reduce the exchange of SSD.

上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
上述の第1の視点に係るストレージ装置のとおりである。
[付記2]
前記寿命推定部は、
前記代替セクタに関する情報として、代替セクタの総容量と代替セクタの使用量を用いる、付記1のストレージ装置。
[付記3]
前記データ交換部は、
前記複数のSSDのうちいずれか1つのSSDに所定のサイズよりも大きいデータが書き込まれる際に、前記第1のSSDと前記第2のSSDの間でデータを交換するか否かを判定する、付記1又は2のストレージ装置。
[付記4]
前記データ交換部は、
前記寿命短縮量を算出したSDDのうち、前記寿命短縮量が最も小さいSSDを前記第2のSSDに選択する、付記1乃至3のいずれか一に記載のストレージ装置。
[付記5]
前記複数のSSDを用いて、RAID(Redundant Arrays of Inexpensive Disks)を構成すべく、データ及び冗長符号を分散格納する機能を備える、付記1乃至4のいずれか一に記載のストレージ装置。
[付記6]
前記データ交換部は、前記第1及び第2のSSD間でデータ交換する際のデータの入れ替え単位を、RAIDを構成するストライピンググループのサイズを基準とする、付記5のストレージ装置。
[付記7]
前記データ交換部は、
前記第1及び第2のSSD間でデータ交換する際、RAIDを構成する情報を書き換える、付記6のストレージ装置。
[付記8]
前記複数のSSDそれぞれに対応し、対応するSSDに対するデータの累計書き込み回数を計測する、複数の書き込み回数カウンタをさらに備える、付記1乃至7のいずれか一に記載のストレージ装置。
[付記9]
上述の第2の視点に係るストレージ装置の制御方法のとおりである。
[付記10]
上述の第3の視点に係るプログラムのとおりである。
[付記11]
複数のSSDを内蔵するストレージ装置であって、
当該SSD内部の代替セクタの総容量と、使用済み代替セクタの容量を確認する手段を有し、また、当該SSD毎の累計の書き込み回数を計測する機能を有し、
当該SSD毎の前記代替セクタ総容量と使用済み代替セクタ容量、及び累計書き込み回数を元に当該SSD毎の寿命を予測し、
かつ、
当該SSD毎に、ストレージ装置内で定められた、ある一定容量のデータ単位を書き込んだ場合、各々のSSDの寿命の短縮量を予測し、
前記書き込み後の予測寿命の短縮量が最も小さいSSDを選択する機能を有し、
最も予測寿命の短いSSDが、ストレージ装置内で定められた閾値より予測寿命が短くなった場合、前記最も予測寿命の短いSSDのデータと、前記予測寿命の短縮量が最も小さいSSDのデータとを入れ替える機能を有することを特徴とする、ストレージ装置。
[付記12]
複数のSSDを内蔵するストレージ装置であって、
当該SSD内部の代替セクタの総容量と、使用済み代替セクタの容量を確認する手段を有し、
また、当該SSD毎の累計の書き込み回数を計測する機能を有し、
当該SSD毎の前記代替セクタ総容量と使用済み代替セクタ容量、及び累計書き込み回数を元に当該SSD毎の寿命を予測し、
かつ、
当該SSD毎に、ストレージ装置内で定められた、ある一定容量のデータ単位を書き込んだ場合、各々のSSDの寿命の変化を予測し、
前記書き込み後の予測寿命の短縮量が最も小さいSSDを選択する機能を有し、
最も予測寿命の短いSSDが、ストレージ装置内で定められた閾値より予測寿命が短くなった場合、前記最も予測寿命の短いSSDのデータと、前記予測寿命の短縮量が最も小さいSSDのデータとを入れ替える機能を有することを特徴とする、ストレージ制御方式。
[付記13]
前記付記11に記載されたストレージ装置であって、
RAIDと呼ばれる冗長記録を行うディスクアレイ装置の機能を有し、
前記付記11のデータの入れ替えを行う際、データの入れ替え単位を、RAIDを構成するストライピンググループのサイズを基準にすることを特徴とした、ディスクアレイ装置。
[付記14]
前記付記13に記載されたディスクアレイ装置であって、
データを入れ替える際に、RAIDを構成する情報を同時に書き換えることにより、
データ入れ替えの前後で、RAIDの再構築手順に変化がないように制御することを特徴とする、ディスクアレイ装置。
なお、付記9の形態及び付記10の形態は、付記1の形態と同様に、付記2の形態〜付記8の形態に展開することが可能である。
A part or all of the above embodiments can be described as in the following supplementary notes, but is not limited thereto.
[Appendix 1]
This is the same as the storage apparatus according to the first aspect described above.
[Appendix 2]
The life estimation unit is
The storage device according to appendix 1, wherein the information regarding the alternative sector uses a total capacity of the alternative sector and a usage amount of the alternative sector.
[Appendix 3]
The data exchange unit
Determining whether to exchange data between the first SSD and the second SSD when data larger than a predetermined size is written to any one of the plurality of SSDs; The storage device according to appendix 1 or 2.
[Appendix 4]
The data exchange unit
The storage apparatus according to any one of appendices 1 to 3, wherein an SSD having the smallest life shortening amount is selected as the second SSD among the SDDs for which the life shortening amount has been calculated.
[Appendix 5]
The storage apparatus according to any one of appendices 1 to 4, comprising a function of distributing and storing data and redundant codes so as to form a RAID (Redundant Array of Inexpensive Disks) using the plurality of SSDs.
[Appendix 6]
The storage device according to appendix 5, wherein the data exchanging unit is based on the size of the striping group that constitutes the RAID as a data exchanging unit when exchanging data between the first and second SSDs.
[Appendix 7]
The data exchange unit
The storage device according to appendix 6, wherein information constituting the RAID is rewritten when data is exchanged between the first and second SSDs.
[Appendix 8]
The storage apparatus according to any one of appendices 1 to 7, further comprising a plurality of write count counters that correspond to each of the plurality of SSDs and that measure a cumulative write count of data to the corresponding SSD.
[Appendix 9]
This is the same as the storage apparatus control method according to the second aspect described above.
[Appendix 10]
It is as the program which concerns on the above-mentioned 3rd viewpoint.
[Appendix 11]
A storage device incorporating a plurality of SSDs,
A means for confirming the total capacity of the alternative sector in the SSD and the capacity of the used alternative sector, and a function of measuring the cumulative number of writes for each SSD;
Predicting the life of each SSD based on the total capacity of the alternative sectors for each SSD, the capacity of used alternative sectors, and the cumulative number of writes;
And,
For each SSD, when a data unit of a certain capacity defined in the storage device is written, the amount of shortening of the life of each SSD is predicted,
A function of selecting the SSD having the smallest amount of shortened predicted life after writing,
If the SSD with the shortest predicted life becomes shorter than the threshold determined in the storage device, the SSD data with the shortest predicted life and the SSD data with the shortest predicted life reduction amount are obtained. A storage device having a replacement function.
[Appendix 12]
A storage device incorporating a plurality of SSDs,
Means for confirming the total capacity of the alternative sectors in the SSD and the capacity of the used alternative sectors;
In addition, it has a function of measuring the cumulative number of writes for each SSD,
Predicting the life of each SSD based on the total capacity of the alternative sectors for each SSD, the capacity of used alternative sectors, and the cumulative number of writes;
And,
For each SSD, when a data unit of a certain capacity defined in the storage device is written, the life change of each SSD is predicted,
A function of selecting the SSD having the smallest amount of shortened predicted life after writing,
If the SSD with the shortest predicted life becomes shorter than the threshold determined in the storage device, the SSD data with the shortest predicted life and the SSD data with the shortest predicted life reduction amount are obtained. A storage control system characterized by having a function of replacing.
[Appendix 13]
The storage device described in the appendix 11,
It has the function of a disk array device that performs redundant recording called RAID,
The disk array device according to claim 11, wherein when the data is replaced as described in Appendix 11, the data replacement unit is based on the size of the striping group constituting the RAID.
[Appendix 14]
The disk array device according to appendix 13, wherein
When the data is replaced, by simultaneously rewriting the information constituting the RAID,
A disk array device that performs control so that there is no change in a RAID reconstruction procedure before and after data replacement.
Note that the form of Supplementary Note 9 and the form of Supplementary Note 10 can be developed into the form of Supplementary Note 2 to the form of Supplementary Note 8, similarly to the form of Supplementary Note 1.

なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。   Each disclosure of the cited patent documents and the like cited above is incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiments and examples can be changed and adjusted based on the basic technical concept. In addition, various combinations or selections of various disclosed elements (including each element in each claim, each element in each embodiment or example, each element in each drawing, etc.) within the scope of the entire disclosure of the present invention. Is possible. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea. In particular, with respect to the numerical ranges described in this document, any numerical value or small range included in the range should be construed as being specifically described even if there is no specific description.

1、10 ストレージ装置
11 ストレージコントローラ
12〜15 SSD
21 ストライピンググループ
101、201 寿命推定部
102、202 データ交換部
111 デバイスコントローラ
112〜115 デバイスインターフェイス
121〜151 代替セクタ
212〜215 データ領域
1121〜1151 書き込み回数カウンタ
1211〜1511 代替セクタ使用済み領域
1, 10 Storage device 11 Storage controller 12-15 SSD
21 Striping group 101, 201 Life estimation unit 102, 202 Data exchange unit 111 Device controller 112-115 Device interface 121-151 Alternate sector 212-215 Data area 1121-1151 Write frequency counter 1211-1511 Alternate sector used area

Claims (10)

複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する、寿命推定部と、
前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する、データ交換部と、
を備え、
前記データ交換部は、前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、ストレージ装置。
A life estimation unit that estimates a life value of each SSD based on information on alternative sectors in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs;
Among the plurality of SSDs, the data stored in the first SSD whose estimated lifetime value is smaller than a predetermined value and the second SSD among the plurality of SSDs different from the first SSD A data exchange unit for exchanging data with
With
The data exchange unit calculates a life reduction amount in each SSD when the data stored in the first SSD is stored in each of the plurality of SSDs excluding the first SSD, and A storage apparatus that selects the second SSD based on the life shortening amount.
前記寿命推定部は、
前記代替セクタに関する情報として、代替セクタの総容量と代替セクタの使用量を用いる、請求項1のストレージ装置。
The life estimation unit is
The storage apparatus according to claim 1, wherein the information regarding the alternative sector uses a total capacity of the alternative sector and a usage amount of the alternative sector.
前記データ交換部は、
前記複数のSSDのうちいずれか1つのSSDに所定のサイズよりも大きいデータが書き込まれる際に、前記第1のSSDと前記第2のSSDの間でデータを交換するか否かを判定する、請求項1又は2のストレージ装置。
The data exchange unit
Determining whether to exchange data between the first SSD and the second SSD when data larger than a predetermined size is written to any one of the plurality of SSDs; The storage apparatus according to claim 1 or 2.
前記データ交換部は、
前記寿命短縮量を算出したSDDのうち、前記寿命短縮量が最も小さいSSDを前記第2のSSDに選択する、請求項1乃至3のいずれか一項に記載のストレージ装置。
The data exchange unit
The storage apparatus according to any one of claims 1 to 3, wherein an SSD having the smallest life shortening amount is selected as the second SSD among the SDDs for which the life shortening amount has been calculated.
前記複数のSSDを用いて、RAID(Redundant Arrays of Inexpensive Disks)を構成すべく、データ及び冗長符号を分散格納する機能を備える、請求項1乃至4のいずれか一項に記載のストレージ装置。   The storage apparatus according to any one of claims 1 to 4, further comprising a function of distributing and storing data and redundant codes so as to form a RAID (Redundant Array of Inexpensive Disks) using the plurality of SSDs. 前記データ交換部は、前記第1及び第2のSSD間でデータ交換する際のデータの入れ替え単位を、RAIDを構成するストライピンググループのサイズを基準とする、請求項5のストレージ装置。   6. The storage apparatus according to claim 5, wherein the data exchange unit uses a size of a striping group constituting the RAID as a reference for a data exchange unit when exchanging data between the first and second SSDs. 前記データ交換部は、
前記第1及び第2のSSD間でデータ交換する際、RAIDを構成する情報を書き換える、請求項6のストレージ装置。
The data exchange unit
The storage apparatus according to claim 6, wherein when the data is exchanged between the first and second SSDs, information constituting the RAID is rewritten.
前記複数のSSDそれぞれに対応し、対応するSSDに対するデータの累計書き込み回数を計測する、複数の書き込み回数カウンタをさらに備える、請求項1乃至7のいずれか一項に記載のストレージ装置。   The storage apparatus according to claim 1, further comprising a plurality of write count counters corresponding to each of the plurality of SSDs and measuring a cumulative write count of data with respect to the corresponding SSD. 複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定するステップと、
前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換するステップと、
を含み、
前記データを交換するステップは、
前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、ストレージ装置の制御方法。
Estimating a life value of each SSD based on information on alternative sectors in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs;
Among the plurality of SSDs, the data stored in the first SSD whose estimated lifetime value is smaller than a predetermined value and the second SSD among the plurality of SSDs different from the first SSD Exchanging data with
Including
Exchanging the data comprises:
When the data stored in the first SSD is stored in each of the SSDs excluding the first SSD among the plurality of SSDs, a life reduction amount in each SSD is calculated, and based on the life reduction amount A storage apparatus control method for selecting the second SSD.
ストレージ装置に搭載されたコンピュータに実行させるプログラムであって、
複数のSSD(Solid State Drive)それぞれにおける代替セクタに関する情報と、前記複数のSSDそれぞれに対するデータの書き込み回数と、に基づき各SSDの寿命値を推定する処理と、
前記複数のSSDのうち前記推定された寿命値が所定の値よりも小さい第1のSSDに格納されたデータと、前記複数のSSDのうち前記第1のSSDとは異なる第2のSSDに格納されたデータと、を交換する処理と、
を前記コンピュータに実行させ、
前記データを交換する処理は、
前記第1のSSDに格納されたデータを、前記複数のSSDのうち前記第1のSSDを除くSSDのそれぞれに格納した場合の各SSDにおける寿命短縮量を算出すると共に、前記寿命短縮量に基づき前記第2のSSDを選択する、プログラム。
A program to be executed by a computer installed in a storage device,
A process of estimating a life value of each SSD based on information on alternative sectors in each of a plurality of SSDs (Solid State Drives) and the number of times data is written to each of the plurality of SSDs;
Among the plurality of SSDs, the data stored in the first SSD whose estimated lifetime value is smaller than a predetermined value and the second SSD among the plurality of SSDs different from the first SSD The process of exchanging data with
To the computer,
The process of exchanging the data includes
When the data stored in the first SSD is stored in each of the SSDs excluding the first SSD among the plurality of SSDs, a life reduction amount in each SSD is calculated, and based on the life reduction amount A program for selecting the second SSD.
JP2017069250A 2017-03-30 2017-03-30 Storage device, storage device control method and program Active JP6536614B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017069250A JP6536614B2 (en) 2017-03-30 2017-03-30 Storage device, storage device control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017069250A JP6536614B2 (en) 2017-03-30 2017-03-30 Storage device, storage device control method and program

Publications (2)

Publication Number Publication Date
JP2018169980A true JP2018169980A (en) 2018-11-01
JP6536614B2 JP6536614B2 (en) 2019-07-03

Family

ID=64020419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017069250A Active JP6536614B2 (en) 2017-03-30 2017-03-30 Storage device, storage device control method and program

Country Status (1)

Country Link
JP (1) JP6536614B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181805A (en) * 1998-12-16 2000-06-30 Hagiwara Sys-Com:Kk Storage device
JP2008046923A (en) * 2006-08-17 2008-02-28 Toshiba Corp Method of controlling semiconductor memory card system
JP2009230660A (en) * 2008-03-25 2009-10-08 Nec Infrontia Corp Apparatus for monitoring life of flash memory storage
JP2015505078A (en) * 2012-02-08 2015-02-16 株式会社日立製作所 Storage device having a plurality of nonvolatile semiconductor storage media, placing hot data in long-life storage medium, and placing cold data in short-life storage medium, and storage control method
WO2015181923A1 (en) * 2014-05-29 2015-12-03 富士通株式会社 Information processing device, control method, and control program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181805A (en) * 1998-12-16 2000-06-30 Hagiwara Sys-Com:Kk Storage device
JP2008046923A (en) * 2006-08-17 2008-02-28 Toshiba Corp Method of controlling semiconductor memory card system
JP2009230660A (en) * 2008-03-25 2009-10-08 Nec Infrontia Corp Apparatus for monitoring life of flash memory storage
JP2015505078A (en) * 2012-02-08 2015-02-16 株式会社日立製作所 Storage device having a plurality of nonvolatile semiconductor storage media, placing hot data in long-life storage medium, and placing cold data in short-life storage medium, and storage control method
WO2015181923A1 (en) * 2014-05-29 2015-12-03 富士通株式会社 Information processing device, control method, and control program

Also Published As

Publication number Publication date
JP6536614B2 (en) 2019-07-03

Similar Documents

Publication Publication Date Title
US9864525B2 (en) Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning
US9891844B2 (en) Variable bit encoding per NAND flash cell to improve device endurance and extend life of flash-based storage devices
US9298534B2 (en) Memory system and constructing method of logical block
JP6381529B2 (en) Storage apparatus and storage control method
US9910748B2 (en) Rebuilding process for storage array
JP6063995B2 (en) At least semi-autonomous modules and methods in a memory system
KR101952001B1 (en) Electronic system with storage drive life estimation mechanism and method of operation thereof
US9423970B2 (en) Method and system for predicting block failure in a non-volatile memory
JP5894192B2 (en) Control arrangement and method for accessing block oriented non-volatile memory
JP5002719B1 (en) Information processing device, external storage device, host device, relay device, control program, and information processing device control method
CN110245093A (en) The adaptive excess configuration of workload in solid state storage drive array
JP5342014B2 (en) Storage system having multiple flash packages
KR101556870B1 (en) Adaptive mapping of logical addresses to memory devices in solid state drives
CN111445942A (en) Non-volatile memory read threshold optimization based on retention drift history
JP2011070346A (en) Memory system
Peleato et al. BER-based wear leveling and bad block management for NAND flash
JP2017199043A (en) Storage device, system, method and program
JP6536614B2 (en) Storage device, storage device control method and program
JP5949816B2 (en) Cache control device and control method therefor, storage device, and computer program
US11733909B2 (en) Secure-erase prediction for data storage devices
JP4645538B2 (en) Recording apparatus and life information calculation method
JP5535113B2 (en) Memory system
JP2021125147A (en) Storage device and data processing method of storage device
CN117519574A (en) Memory management method, memory controller and memory storage device
JP2018049455A (en) Control apparatus, information processing method, and program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190411

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190520

R150 Certificate of patent or registration of utility model

Ref document number: 6536614

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150