JP7044403B2 - Storage system, storage control method and storage control program - Google Patents

Storage system, storage control method and storage control program Download PDF

Info

Publication number
JP7044403B2
JP7044403B2 JP2020086424A JP2020086424A JP7044403B2 JP 7044403 B2 JP7044403 B2 JP 7044403B2 JP 2020086424 A JP2020086424 A JP 2020086424A JP 2020086424 A JP2020086424 A JP 2020086424A JP 7044403 B2 JP7044403 B2 JP 7044403B2
Authority
JP
Japan
Prior art keywords
storage
storage area
data
mode
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020086424A
Other languages
Japanese (ja)
Other versions
JP2021182178A (en
Inventor
勝彦 廣瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Platforms Ltd
Original Assignee
NEC Platforms Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2020086424A priority Critical patent/JP7044403B2/en
Publication of JP2021182178A publication Critical patent/JP2021182178A/en
Application granted granted Critical
Publication of JP7044403B2 publication Critical patent/JP7044403B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本開示はストレージシステム、ストレージ制御方法およびストレージ制御プログラムに関する。 The present disclosure relates to storage systems, storage control methods and storage control programs.

ソリッドステートドライブ(SSD)等のストレージシステムにおいて、読み出し処理を高速化するため、リード・キャッシュ用のメモリを用いることが知られている。しかしリード・キャッシュ用のメモリは高価であり、大容量化が難しい。
またSSDに用いられるフラッシュメモリは、書き込み可能容量に制限が有り、書き込み可能容量を超えて書き込まれたデータは劣化による読み込みエラーが発生し易く、書き込まれたデータの信頼性が低下する。
In a storage system such as a solid state drive (SSD), it is known to use a memory for read cache in order to speed up the read process. However, the memory for read cache is expensive, and it is difficult to increase the capacity.
Further, the flash memory used for the SSD has a limited writable capacity, and data written in excess of the writable capacity is liable to cause a read error due to deterioration, and the reliability of the written data is lowered.

そこで特許文献1には、書き込み回数が上限以上となったドライブを、これよりも読み出し速度が低いドライブに格納されるホットデータのキャッシュとして転用するストレージシステムが開示されている。
また特許文献2には、データディスク装置の二次キャッシュとして機能し、冗長構成を有する2つのSSDを備える情報記憶装置が開示されている。この特許文献2に記載の情報記憶装置は、書き込み回数が閾値以上に達したSSDを検知した場合、もう一方のSSDのデータをスペアディスク装置にコピーし、かつ書き込み要求にかかるデータを、バッファメモリを介してスペアディスク装置に複製する。
Therefore, Patent Document 1 discloses a storage system in which a drive having a write count of more than the upper limit is diverted as a cache of hot data stored in a drive having a read speed lower than this.
Further, Patent Document 2 discloses an information storage device that functions as a secondary cache of a data disk device and includes two SSDs having a redundant configuration. When the information storage device described in Patent Document 2 detects an SSD whose write count has reached the threshold value or more, the data of the other SSD is copied to the spare disk device, and the data related to the write request is stored in the buffer memory. Duplicate to a spare disk device via.

特開2019-113891号公報Japanese Unexamined Patent Publication No. 2019-113891 特開2015-185133号公報JP-A-2015-185133

しかし特許文献1に記載のストレージシステムでは、書き込み回数が上限以上となったドライブは、もはやデータストレージとして使用することができない。また他のドライブの書き込み回数が上限以上となった場合は、その後に書き込まれたデータの信頼性が確保できないという問題がある。
また特許文献2に記載の情報記憶装置では、二次キャッシュとして機能するSSDに加えて、バッファメモリおよびスペアディスク装置が必要となり、回路構成が複雑かつ大規模となるという問題がある。
However, in the storage system described in Patent Document 1, a drive whose number of writes exceeds the upper limit can no longer be used as data storage. Further, when the number of writes of other drives exceeds the upper limit, there is a problem that the reliability of the data written after that cannot be ensured.
Further, the information storage device described in Patent Document 2 requires a buffer memory and a spare disk device in addition to the SSD functioning as a secondary cache, and has a problem that the circuit configuration becomes complicated and large-scale.

本開示の目的は、上述した課題に鑑み、処理性能の改善およびデータ信頼性低下の防止を簡易な構成で実現するストレージシステム、ストレージ制御方法およびストレージ制御プログラムを提供することにある。 An object of the present disclosure is to provide a storage system, a storage control method, and a storage control program that realize improvement of processing performance and prevention of deterioration of data reliability with a simple configuration in view of the above-mentioned problems.

本開示の一態様にかかるストレージシステムは、第1データを記憶する第1記憶領域および第2データを記憶する第2記憶領域を有する記憶部と、前記第1記憶領域および前記第2記憶領域に対して、データの読み出しおよび書き込みを、モードに応じて制御する記憶制御部とを備える。前記記憶制御部は、前記第1記憶領域の累積書き込み量が予め定められた第1閾値未満である第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが前記第1データから検出されたことに応じて、前記ホットデータの複製を前記第2記憶領域に記憶させる。また前記記憶制御部は、前記第1記憶領域の累積書き込み量が前記第1閾値以上である第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第2記憶領域に記憶させる。 The storage system according to one aspect of the present disclosure includes a storage unit having a first storage area for storing the first data and a second storage area for storing the second data, and the first storage area and the second storage area. On the other hand, it is provided with a storage control unit that controls reading and writing of data according to the mode. The storage control unit is hot data in which the number of reads within a predetermined time is equal to or greater than a predetermined second threshold value in the first mode in which the cumulative write amount of the first storage area is less than a predetermined first threshold value. Is detected in the first data, and a copy of the hot data is stored in the second storage area. Further, the storage control unit receives the data write request to the first storage area in the second mode in which the cumulative write amount of the first storage area is equal to or greater than the first threshold value. The requested data is stored in the second storage area.

本開示の一態様にかかるストレージ制御方法は、記憶部の第1記憶領域の累積書き込み量が予め定められた第1閾値未満である場合、モードを第1モードに設定し、前記記憶部の第1記憶領域の累積書き込み量が前記第1閾値以上である場合、モードを第2モードに設定し、前記第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが、前記第1記憶領域に記憶される第1データから検出されたことに応じて、前記ホットデータの複製を記憶部の第2記憶領域に記憶させ、前記第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第2記憶領域に記憶させる。 In the storage control method according to one aspect of the present disclosure, when the cumulative write amount of the first storage area of the storage unit is less than a predetermined first threshold value, the mode is set to the first mode, and the storage unit is the first. When the cumulative write amount of one storage area is equal to or greater than the first threshold value, the mode is set to the second mode, and in the first mode, the number of reads within a predetermined time is equal to or greater than a predetermined second threshold value. When the data is detected from the first data stored in the first storage area, the duplicate of the hot data is stored in the second storage area of the storage unit, and in the second mode, the first In response to receiving a request to write data to the storage area, the data related to the write request is stored in the second storage area.

本開示の一態様にかかるストレージ制御プログラムは、ストレージ制御方法をコンピュータに実行させる。前記ストレージ制御方法は、記憶部の第1記憶領域の累積書き込み量が予め定められた第1閾値未満である場合、モードを第1モードに設定し、前記記憶部の第1記憶領域の累積書き込み量が前記第1閾値以上である場合、モードを第2モードに設定し、前記第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが、前記第1記憶領域に記憶される第1データから検出されたことに応じて、前記ホットデータの複製を記憶部の第2記憶領域に記憶させ、前記第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第2記憶領域に記憶させる。 The storage control program according to one aspect of the present disclosure causes a computer to execute a storage control method. In the storage control method, when the cumulative write amount of the first storage area of the storage unit is less than a predetermined first threshold value, the mode is set to the first mode, and the cumulative write of the first storage area of the storage unit is performed. When the amount is equal to or greater than the first threshold value, the mode is set to the second mode, and in the first mode, the hot data in which the number of readings within a predetermined time is equal to or greater than the predetermined second threshold value is the first. In response to the detection from the first data stored in the storage area, the duplicate of the hot data is stored in the second storage area of the storage unit, and in the second mode, the data to the first storage area is stored. In response to receiving the write request, the data related to the write request is stored in the second storage area.

本開示により、処理性能の改善およびデータ信頼性低下の防止を簡易な構成で実現するストレージシステム、ストレージ制御方法およびストレージ制御プログラムを提供することができる。 INDUSTRIAL APPLICABILITY According to the present disclosure, it is possible to provide a storage system, a storage control method, and a storage control program that realize improvement of processing performance and prevention of deterioration of data reliability with a simple configuration.

実施形態1にかかるストレージシステム(ストレージ装置)の構成を示すブロック図である。It is a block diagram which shows the structure of the storage system (storage apparatus) which concerns on Embodiment 1. FIG. 実施形態1にかかるストレージ装置の処理の一例を示すフローチャートである。It is a flowchart which shows an example of the processing of the storage apparatus which concerns on Embodiment 1. FIG. 実施形態2にかかるストレージ装置の構成の一例をホスト装置とともに示すブロック図である。It is a block diagram which shows an example of the structure of the storage apparatus which concerns on Embodiment 2 together with a host apparatus. 実施形態2にかかるストレージ装置のハードウェア構成の一例を示す概略構成図である。It is a schematic block diagram which shows an example of the hardware configuration of the storage apparatus which concerns on Embodiment 2. FIG. 実施形態2にかかるアドレス対照テーブルの一例を示す図である。It is a figure which shows an example of the address control table which concerns on Embodiment 2. FIG. 実施形態2にかかる読み出し頻度管理テーブルの一例を示す図である。It is a figure which shows an example of the read frequency management table which concerns on Embodiment 2. 実施形態2にかかる書き込み量管理テーブルの一例を示す図である。It is a figure which shows an example of the write amount management table which concerns on Embodiment 2. FIG. 実施形態2にかかるストレージ装置の書き込み処理の一例を示すフローチャートである。It is a flowchart which shows an example of the writing process of the storage apparatus which concerns on Embodiment 2. FIG. 実施形態2にかかるストレージ装置の第2モードにおける書き込み処理を説明するための図である。It is a figure for demonstrating the writing process in the 2nd mode of the storage apparatus which concerns on Embodiment 2. FIG. 実施形態2にかかるストレージ装置の読み出し処理の一例を示すフローチャートである。It is a flowchart which shows an example of the read process of the storage apparatus which concerns on Embodiment 2. 実施形態2にかかるストレージ装置の読み出し処理の一例を示すフローチャートである。It is a flowchart which shows an example of the read process of the storage apparatus which concerns on Embodiment 2. 実施形態2にかかる第1記憶領域および第2記憶領域の第1モードにおける任意の時点での記憶状態を模式的に示す図である。It is a figure which shows typically the storage state at an arbitrary time point in the 1st mode of the 1st storage area and the 2nd storage area which concerns on Embodiment 2. FIG. 実施形態3にかかるストレージ装置の構成の一例をホスト装置とともに示すブロック図である。It is a block diagram which shows an example of the structure of the storage apparatus which concerns on Embodiment 3 together with a host apparatus. 実施形態3にかかるストレージ装置の第2モードにおける読み出し処理の一例を示すフローチャートである。It is a flowchart which shows an example of the read process in the 2nd mode of the storage apparatus which concerns on Embodiment 3. FIG.

以下、実施形態を通じて本開示を説明するが、特許請求の範囲にかかる開示を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。 Hereinafter, the present disclosure will be described through embodiments, but the disclosure relating to the scope of claims is not limited to the following embodiments. Moreover, not all of the configurations described in the embodiments are indispensable as means for solving the problem. In each drawing, the same elements are designated by the same reference numerals, and duplicate explanations are omitted as necessary.

<実施形態1>
まず図1~2を参照して、本開示の実施形態1について説明する。図1は、実施形態1にかかるストレージシステム(以下、ストレージ装置と呼ぶ)1の構成を示すブロック図である。ストレージ装置1は、記憶部12と、記憶制御部15とを備える。
<Embodiment 1>
First, Embodiment 1 of the present disclosure will be described with reference to FIGS. 1 and 2. FIG. 1 is a block diagram showing a configuration of a storage system (hereinafter, referred to as a storage device) 1 according to the first embodiment. The storage device 1 includes a storage unit 12 and a storage control unit 15.

記憶部12は、第1記憶領域13および第2記憶領域14を有する記憶媒体である。ここで第1記憶領域13は、第1データを記憶する記憶領域であり、第2記憶領域14は、第2データを記憶する記憶領域である。
記憶制御部15は、第1記憶領域13および第2記憶領域14に対して、データの読み出しおよび書き込みを、モード(制御モード)に応じて制御する。
The storage unit 12 is a storage medium having a first storage area 13 and a second storage area 14. Here, the first storage area 13 is a storage area for storing the first data, and the second storage area 14 is a storage area for storing the second data.
The storage control unit 15 controls reading and writing of data to the first storage area 13 and the second storage area 14 according to the mode (control mode).

図2は、実施形態1にかかるストレージ装置1の処理の一例を示すフローチャートである。
まずステップS10において、ストレージ装置1の記憶制御部15は、外部からの書き込み要求を取得する。
次にステップS11において、記憶制御部15は、第1記憶領域13の累積書き込み量が予め定められた第1閾値未満であるか否かを判定する。記憶制御部15は、累積書き込み量が第1閾値未満であると判定する場合(ステップS11でYes)、処理をステップS12に進め、そうでない場合(ステップS11でNo)、処理をステップS16に進める。
FIG. 2 is a flowchart showing an example of processing of the storage device 1 according to the first embodiment.
First, in step S10, the storage control unit 15 of the storage device 1 acquires a write request from the outside.
Next, in step S11, the storage control unit 15 determines whether or not the cumulative write amount of the first storage area 13 is less than a predetermined first threshold value. If the storage control unit 15 determines that the cumulative write amount is less than the first threshold value (Yes in step S11), the process proceeds to step S12, and if not (No in step S11), the process proceeds to step S16. ..

ステップS12において、記憶制御部15は、制御モードを第1モードに設定する。すなわち、第1モードは、第1記憶領域13の累積書き込み量が第1閾値未満である場合の記憶制御部15による制御モードである。
次にステップS13において、記憶制御部15は、書き込み要求にかかるデータ(書き込み対象データと呼ぶ)を、記憶部12の第1記憶領域13に格納する。
In step S12, the storage control unit 15 sets the control mode to the first mode. That is, the first mode is a control mode by the storage control unit 15 when the cumulative write amount of the first storage area 13 is less than the first threshold value.
Next, in step S13, the storage control unit 15 stores the data related to the write request (referred to as write target data) in the first storage area 13 of the storage unit 12.

次にステップS14において、記憶制御部15は、第1記憶領域13に記憶される第1データからホットデータが検出されたか否かを判定する。ここでホットデータは、読み出し頻度が予め定められた第2閾値以上であるデータである。また読み出し頻度は、所定時間内の読み出し回数である。記憶制御部15は、ホットデータが検出された場合(ステップS14でYes)、処理をステップS15に進め、そうでない場合(ステップS14でNo)、処理を終了する。 Next, in step S14, the storage control unit 15 determines whether or not hot data is detected from the first data stored in the first storage area 13. Here, the hot data is data whose read frequency is equal to or higher than a predetermined second threshold value. The read frequency is the number of reads within a predetermined time. If hot data is detected (Yes in step S14), the storage control unit 15 advances the process to step S15, and if not (No in step S14), the storage control unit 15 ends the process.

ステップS15において、記憶制御部15は、検出されたホットデータを第2記憶領域14に複製する。 In step S15, the storage control unit 15 replicates the detected hot data in the second storage area 14.

またステップS16において、記憶制御部15は、制御モードを第2モードに設定する。すなわち、第2モードは、第1記憶領域13の累積書き込み量が第1閾値以上である場合の記憶制御部15による制御モードである。
次にステップS17において、記憶制御部15は、書き込み要求にかかる書き込み対象データを、記憶部12の第2記憶領域14に格納する。そして記憶制御部15は、処理を終了する。
Further, in step S16, the storage control unit 15 sets the control mode to the second mode. That is, the second mode is a control mode by the storage control unit 15 when the cumulative write amount of the first storage area 13 is equal to or greater than the first threshold value.
Next, in step S17, the storage control unit 15 stores the write target data related to the write request in the second storage area 14 of the storage unit 12. Then, the memory control unit 15 ends the process.

このように実施形態1によれば、ストレージ装置1の記憶制御部15は、第1モードにおいて、ホットデータが第1記憶領域13の第1データから検出されたことに応じて、ホットデータの複製を第2記憶領域14に記憶させる。これにより第2記憶領域14は、第1記憶領域13のキャッシュとして機能することが可能となり、読み出し処理を高速化できる。そして記憶制御部15は、第2モードにおいて、第1記憶領域13へのデータの書き込み要求を受信したことに応じて、書き込み対象データを第2記憶領域14に記憶させる。このように、第1記憶領域13のキャッシュとして機能する第2記憶領域14が、累積書き込み量超えが生じた場合には信頼性確保のためのデータの格納先としても機能する。したがってストレージ装置1は、簡易な構成で、処理性能の改善およびデータ信頼性低下の防止を実現することができる。 As described above, according to the first embodiment, the storage control unit 15 of the storage device 1 duplicates the hot data in response to the detection of the hot data from the first data in the first storage area 13 in the first mode. Is stored in the second storage area 14. As a result, the second storage area 14 can function as a cache of the first storage area 13, and the read processing can be speeded up. Then, in the second mode, the storage control unit 15 stores the data to be written in the second storage area 14 in response to receiving the request to write the data to the first storage area 13. In this way, the second storage area 14, which functions as a cache of the first storage area 13, also functions as a storage destination of data for ensuring reliability when the cumulative write amount is exceeded. Therefore, the storage device 1 can improve the processing performance and prevent the deterioration of data reliability with a simple configuration.

<実施形態2>
次に図3~12を用いて、本開示の実施形態2について説明する。図3は、実施形態2にかかるストレージ装置2の構成の一例をホスト装置4とともに示すブロック図である。ここでホスト装置4は、ストレージ装置2に対してデータの入出力が可能なコンピュータ等の装置である。ホスト装置4は、ストレージ装置2に対して、データの読み出しまたは書き込み要求を送信し、ストレージ装置2からデータを取得し、またはデータをストレージ装置2に記憶させる。
<Embodiment 2>
Next, Embodiment 2 of the present disclosure will be described with reference to FIGS. 3 to 12. FIG. 3 is a block diagram showing an example of the configuration of the storage device 2 according to the second embodiment together with the host device 4. Here, the host device 4 is a device such as a computer capable of inputting / outputting data to / from the storage device 2. The host device 4 transmits a data read / write request to the storage device 2, acquires data from the storage device 2, or stores the data in the storage device 2.

ストレージ装置2は、ホスト装置4からの要求に応じて、データの読み出し処理または書き込み処理を行う記憶装置である。本図に示すように、ストレージ装置2は、通信部21と、記憶部22と、記憶制御部25と、監視部27とを備える。 The storage device 2 is a storage device that performs data read processing or data write processing in response to a request from the host device 4. As shown in this figure, the storage device 2 includes a communication unit 21, a storage unit 22, a storage control unit 25, and a monitoring unit 27.

通信部21は、ホスト装置4と通信可能に接続され、ホスト装置4との間でデータの送受信を行う。 The communication unit 21 is communicably connected to the host device 4 and transmits / receives data to / from the host device 4.

記憶部22は、ホスト装置4からの書き込み要求にかかる書き込み対象データを記憶する、ソリッドステートドライブ(SSD)等の不揮発性記憶媒体である。記憶部22は、パーティション分割により互いに論理的に区別された第1記憶領域23および第2記憶領域24の2つの記憶領域を有する。 The storage unit 22 is a non-volatile storage medium such as a solid state drive (SSD) that stores write target data related to a write request from the host device 4. The storage unit 22 has two storage areas, a first storage area 23 and a second storage area 24, which are logically separated from each other by partitioning.

第1記憶領域23は、書き込み要求によりホスト装置4から指定されたデータを保存するためのメインのデータ領域である。実施形態2では第1記憶領域23は、書き込み要求によりホスト装置4から指定されたデータを第1データとして記憶する。 The first storage area 23 is a main data area for storing data designated by the host device 4 in response to a write request. In the second embodiment, the first storage area 23 stores the data designated by the host device 4 by the write request as the first data.

第2記憶領域24は、ストレージ装置2の読み出し処理性能を改善し、かつ記憶部22が記憶するデータの信頼性低下を防止するために使用される付加的なデータ領域である。第2記憶領域24は、第1記憶領域23に記憶される第1データの少なくとも一部を保存する。実施形態2では第2記憶領域24は、第1データに含まれる少なくとも一部のデータを複製し、当該複製を第2データとして一時的に記憶する。 The second storage area 24 is an additional data area used for improving the read processing performance of the storage device 2 and preventing the reliability of the data stored in the storage unit 22 from deteriorating. The second storage area 24 stores at least a part of the first data stored in the first storage area 23. In the second embodiment, the second storage area 24 duplicates at least a part of the data included in the first data, and temporarily stores the duplicate as the second data.

記憶制御部25は、ストレージ装置2の各構成要素に接続される。記憶制御部25は、ホスト装置4からの読み出しまたは書き込み要求を、通信部21を介して取得したことに応じて、第1記憶領域23および第2記憶領域24に対して、制御モードに応じた読み出しまたは書き込み処理を実行する。本実施形態2では記憶制御部25は、後述するアドレス対照テーブルを用いて、第1記憶領域23および第2記憶領域24に対して当該処理を実行する。 The storage control unit 25 is connected to each component of the storage device 2. The storage control unit 25 corresponds to the control mode for the first storage area 23 and the second storage area 24 in response to the acquisition of the read or write request from the host device 4 via the communication unit 21. Perform a read or write process. In the second embodiment, the storage control unit 25 executes the processing for the first storage area 23 and the second storage area 24 by using the address control table described later.

監視部27は、記憶部22の使用状況を監視し、管理する。そして監視部27は、記憶制御部25に監視結果にかかる情報を供給する。監視部27は、データ使用状況監視部28と、累積書込量監視部29とを有する。 The monitoring unit 27 monitors and manages the usage status of the storage unit 22. Then, the monitoring unit 27 supplies the storage control unit 25 with information related to the monitoring result. The monitoring unit 27 has a data usage status monitoring unit 28 and a cumulative write amount monitoring unit 29.

データ使用状況監視部28は、記憶部22の第1記憶領域23および第2記憶領域24に記憶されるデータの使用状況を監視し、管理する。ここでデータの使用状況は、データの読み出し頻度を含み、データ使用状況監視部28は、後述する読み出し頻度管理テーブルを用いて、当該データの読み出し頻度に関する情報を管理する。 The data usage status monitoring unit 28 monitors and manages the usage status of the data stored in the first storage area 23 and the second storage area 24 of the storage unit 22. Here, the data usage status includes the data read frequency, and the data usage status monitoring unit 28 manages information regarding the data read frequency by using the read frequency management table described later.

累積書込量監視部29は、記憶部22を構成する記憶素子の累積書き込み量を監視し、管理する。ここで累積書き込み量は、各記憶領域を構成する記憶素子に書き込まれた累積の書き込みデータのサイズであるが、当該記憶素子に対する累積の書き込み回数であってもよい。本実施形態2では累積書込量監視部29は、後述する書き込み量管理テーブルを用いて、各記憶領域を構成する記憶素子の累積書き込み量に関する情報を管理する。 The cumulative write amount monitoring unit 29 monitors and manages the cumulative write amount of the storage elements constituting the storage unit 22. Here, the cumulative write amount is the size of the cumulative write data written to the storage elements constituting each storage area, but may be the cumulative number of writes to the storage element. In the second embodiment, the cumulative write amount monitoring unit 29 manages information regarding the cumulative write amount of the storage elements constituting each storage area by using the write amount management table described later.

図4は、実施形態2にかかるストレージ装置2のハードウェア構成の一例を示す概略構成図である。本実施形態2でストレージ装置2は、SSDである。ストレージ装置2は、インターフェイス200、インターフェイスコントローラ205、バッファメモリ210、第1および第2記憶素子群230,240、記憶素子制御部270、データ使用状況監視部280および記憶素子使用状況監視部290を備える。 FIG. 4 is a schematic configuration diagram showing an example of the hardware configuration of the storage device 2 according to the second embodiment. In the second embodiment, the storage device 2 is an SSD. The storage device 2 includes an interface 200, an interface controller 205, a buffer memory 210, first and second storage element groups 230 and 240, a storage element control unit 270, a data usage status monitoring unit 280, and a storage element usage status monitoring unit 290. ..

インターフェイス200は、Serial Advanced Technology Attachment(SATA)インターフェイスまたはPeripheral Component Interconnect Express(PCIe)インターフェイス等のストレージインターフェイスである。インターフェイス200は、ストレージ装置2をホスト装置4に通信可能に接続させる。 Interface 200 is a storage interface such as a Serial Advanced Technology Attachment (SATA) interface or a Peripheral Component Interconnect Express (PCIe) interface. The interface 200 connects the storage device 2 to the host device 4 so as to be communicable.

インターフェイスコントローラ205は、通信用コントローラである。インターフェイスコントローラ205は、インターフェイス200を介してホスト装置4、およびストレージ装置2のバッファメモリ210、第1記憶素子群230、第2記憶素子群240および記憶素子制御部270に電気的に接続される。インターフェイス200およびインターフェイスコントローラ205は、図3に示す通信部21として機能する。 The interface controller 205 is a communication controller. The interface controller 205 is electrically connected to the buffer memory 210, the first storage element group 230, the second storage element group 240, and the storage element control unit 270 of the host device 4 and the storage device 2 via the interface 200. The interface 200 and the interface controller 205 function as the communication unit 21 shown in FIG.

バッファメモリ210は、書き込みまたは読み込み処理に必要なデータを一時的に記憶する記憶媒体である。バッファメモリ210は、Dynamic Random Access Memory(DRAM)またはStatic Random Access Memory(SRAM)等の記憶素子で構成されていてよい。 The buffer memory 210 is a storage medium that temporarily stores data necessary for writing or reading processing. The buffer memory 210 may be composed of a storage element such as a Dynamic Random Access Memory (DRAM) or a Static Random Access Memory (SRAM).

第1記憶素子群230および第2記憶素子群240は、図3に示す記憶部22として機能する。
第1記憶素子群230は、NAND型フラッシュメモリである第1記憶素子を複数有する。本図では一例として、第1記憶素子群230は、直列に接続されたn個の第1記憶素子のセット(たとえば230-1~230-n)がk個並列に接続される構成を有する(nおよびkは自然数)。第1記憶素子群230は、図3に示す第1記憶領域23として機能する。
The first storage element group 230 and the second storage element group 240 function as the storage unit 22 shown in FIG.
The first storage element group 230 has a plurality of first storage elements which are NAND flash memories. As an example in this figure, the first storage element group 230 has a configuration in which k sets of n first storage elements (for example, 230-1 to 230-n) connected in series are connected in parallel (for example, 230-1 to 230-n). n and k are natural numbers). The first storage element group 230 functions as the first storage area 23 shown in FIG.

第2記憶素子群240は、NAND型フラッシュメモリである第2記憶素子を複数有する。第2記憶素子は、第1記憶素子と同様の構成を有してよい。本図では一例として、第2記憶素子群240は、n個の第2記憶素子240-1~240-nが直列に接続される構成を有する。第2記憶素子群240は、図3に示す第2記憶領域24として機能する。 The second storage element group 240 has a plurality of second storage elements which are NAND flash memories. The second storage element may have the same configuration as the first storage element. As an example in this figure, the second storage element group 240 has a configuration in which n second storage elements 240-1 to 240-n are connected in series. The second storage element group 240 functions as the second storage area 24 shown in FIG.

記憶素子制御部270は、第1記憶素子群230および第2記憶素子群240の記憶素子の使用を制御し、使用状況を管理するメモリコントローラである。記憶素子制御部270は、ストレージ装置2の各構成要素に電気的に接続され、図3に示す記憶制御部25として機能する。 The storage element control unit 270 is a memory controller that controls the use of the storage elements of the first storage element group 230 and the second storage element group 240 and manages the usage status. The storage element control unit 270 is electrically connected to each component of the storage device 2 and functions as the storage control unit 25 shown in FIG.

データ使用状況監視部280は、第1記憶素子群230および第2記憶素子群240に含まれる記憶素子に書き込まれているデータの使用状況およびデータのアクセス頻度に関する情報を監視および解析するコンポーネントである。データ使用状況監視部280は、図3に示す監視部27のデータ使用状況監視部28として機能する。 The data usage status monitoring unit 280 is a component that monitors and analyzes information regarding the usage status of data written in the storage elements included in the first storage element group 230 and the second storage element group 240 and the access frequency of the data. .. The data usage status monitoring unit 280 functions as the data usage status monitoring unit 28 of the monitoring unit 27 shown in FIG.

記憶素子使用状況監視部290は、記憶素子制御部270と連携して動作し、第1記憶素子群230および第2記憶素子群240に含まれる記憶素子の書き込み量を監視および管理するコンポーネントである。記憶素子使用状況監視部290は、一例として、Self-Monitoring, Analysis and Reporting Technology(S.M.A.R.T.)機能を実装していてよい。記憶素子使用状況監視部290は、図3に示す監視部27の累積書込量監視部29として機能する。 The storage element usage status monitoring unit 290 operates in cooperation with the storage element control unit 270, and is a component that monitors and manages the writing amount of the storage elements included in the first storage element group 230 and the second storage element group 240. .. As an example, the storage element usage status monitoring unit 290 may be equipped with a Self-Monitoring, Analysis and Reporting Technology (S.M.A.R.T.) Function. The storage element usage status monitoring unit 290 functions as a cumulative write amount monitoring unit 29 of the monitoring unit 27 shown in FIG.

なお、第1記憶領域23および第2記憶領域24はそれぞれ、第1記憶素子群230および第2記憶素子群240で構成されるとしたが、NAND型フラッシュメモリである記憶素子内部のデータ消去の最少単位であるブロック単位で構成されていてもよい。 Although it is assumed that the first storage area 23 and the second storage area 24 are composed of the first storage element group 230 and the second storage element group 240, respectively, data erasure inside the storage element which is a NAND flash memory is erased. It may be composed of block units, which are the minimum units.

次に図5~7を用いて、ストレージ装置2の各種処理に用いられる各種テーブルについて説明する。図5は、実施形態2にかかる記憶制御部25が読み出しおよび書き込み処理において用いるアドレス対照テーブルの一例を示す図である。アドレス対照テーブルは、データ格納先の第1記憶領域23におけるアドレス情報(第1記憶領域アドレス)と、当該データの複製先または複製の格納先の第2記憶領域24におけるアドレス情報(第2記憶領域アドレス)とを関連付けるテーブルである。たとえば本図に示すように、第1記憶領域アドレス「A001」は、第2記憶領域アドレス「B001」に関連付けられる。すなわちこれは、第1記憶領域23の「A001」に記憶されるデータの複製が、第2記憶領域24の「B001」に記憶されていることを示す。一方、第1記憶領域アドレス「A002」には、関連付けられた第2記憶領域アドレスがない。すなわちこれは、第1記憶領域23の「A002」に記憶されるデータの複製が、第2記憶領域24のどこにも記憶されていないことを示す。 Next, various tables used for various processes of the storage device 2 will be described with reference to FIGS. 5 to 7. FIG. 5 is a diagram showing an example of an address control table used by the storage control unit 25 according to the second embodiment in the read / write process. The address control table includes address information (first storage area address) in the first storage area 23 of the data storage destination and address information (second storage area) in the second storage area 24 of the data duplication destination or the duplication storage destination. It is a table that associates with (address). For example, as shown in this figure, the first storage area address "A001" is associated with the second storage area address "B001". That is, this indicates that the duplicate of the data stored in the "A001" of the first storage area 23 is stored in the "B001" of the second storage area 24. On the other hand, the first storage area address "A002" does not have an associated second storage area address. That is, this indicates that the duplicate of the data stored in "A002" of the first storage area 23 is not stored anywhere in the second storage area 24.

これにより記憶制御部25は、特に読み出し要求にかかるデータ(読み出し対象データと呼ぶ)の格納先の第1記憶領域アドレスを用いて、読み出し対象データが第2記憶領域24にもあるか否かを確認し、その格納場所を取得できる。 As a result, the storage control unit 25 uses the first storage area address of the storage destination of the data related to the read request (referred to as the read target data) to determine whether or not the read target data is also in the second storage area 24. You can check and get its storage location.

なお本図に示すように、アドレス対照テーブルは、付加情報を有してもよい。たとえば付加情報は、第2記憶領域アドレスにデータが書き込まれた日時を含んでよい。また付加情報は、書き込み要求にかかる書き込み処理が行われたことにより、またはウェアレベリングが行われたことによりアドレス対照テーブルが更新された場合の更新日時を含んでよい。 As shown in this figure, the address control table may have additional information. For example, the additional information may include the date and time when the data was written to the second storage area address. Further, the additional information may include the update date and time when the address control table is updated due to the write processing related to the write request or the wear leveling.

図6は、実施形態2にかかるデータ使用状況監視部28が管理する読み出し頻度管理テーブルの一例を示す図である。読み出し頻度管理テーブルは、第1記憶領域アドレスと、データの読み出し頻度とを関連付けるテーブルである。本図に示すように、たとえば格納先が第1記憶領域アドレス「A001」であるデータの読み出し頻度は、「10」回であり、格納先が第1記憶領域アドレス「A002」であるデータの読み出し頻度は、「0」回である。
なおデータ使用状況監視部28は、第2記憶領域24からデータが読み出されたことに応じて、読み出された第2記憶領域アドレスに関連付けられた第1記憶領域アドレスのデータの読み出し頻度をインクリメントする。またデータ使用状況監視部28は、第1記憶領域23からデータが消去されたことに応じて、消去された第1記憶領域アドレスのデータの読み出し頻度を「0」に更新してよい。またデータ使用状況監視部28は、第1記憶領域アドレスが割り当てなおされた場合に、直前の第1記憶領域アドレスのデータの読み出し頻度を、新たな第1記憶領域アドレスのデータの読み出し頻度として引き継いでよい。
FIG. 6 is a diagram showing an example of a read frequency management table managed by the data usage status monitoring unit 28 according to the second embodiment. The read frequency management table is a table that associates the first storage area address with the data read frequency. As shown in this figure, for example, the frequency of reading the data whose storage destination is the first storage area address "A001" is "10" times, and the reading frequency of the data whose storage destination is the first storage area address "A002" is read. The frequency is "0" times.
The data usage status monitoring unit 28 determines the frequency of reading the data of the first storage area address associated with the read second storage area address in response to the data being read from the second storage area 24. Increment. Further, the data usage status monitoring unit 28 may update the read frequency of the data of the erased first storage area address to "0" in response to the data being erased from the first storage area 23. Further, when the first storage area address is reassigned, the data usage status monitoring unit 28 inherits the read frequency of the data of the immediately preceding first storage area address as the read frequency of the data of the new first storage area address. It's fine.

図7は、実施形態2にかかる累積書込量監視部29が管理する書き込み量管理テーブルの一例を示す図である。書き込み量管理テーブルは、記憶領域の種別と累積書き込み量とを関連付けるテーブルである。本図では書き込み量管理テーブルは、これに加えて、素子識別情報(素子ID)と、アドレス情報と、個別累積書き込み量とを関連付けてよい。 FIG. 7 is a diagram showing an example of a write amount management table managed by the cumulative write amount monitoring unit 29 according to the second embodiment. The write amount management table is a table that associates the type of storage area with the cumulative write amount. In this figure, the write amount management table may additionally associate the element identification information (element ID), the address information, and the individual cumulative write amount.

素子IDは、第1記憶領域23および第2記憶領域24として機能する第1記憶素子群230および第2記憶素子群240を構成する記憶素子を識別する識別情報である。
アドレス情報は、記憶領域が第1記憶領域23の場合は、第1記憶領域アドレスであり、記憶領域が第2記憶領域24の場合は、第2記憶領域アドレスを示す。
個別累積書き込み量は、記憶素子ごとの累積書き込み量を示す。
The element ID is identification information that identifies the storage elements constituting the first storage element group 230 and the second storage element group 240 that function as the first storage area 23 and the second storage area 24.
The address information is the first storage area address when the storage area is the first storage area 23, and indicates the second storage area address when the storage area is the second storage area 24.
The individual cumulative write amount indicates the cumulative write amount for each storage element.

累積書込量監視部29は、書き込み処理が実行されたことに応じて、個別累積書き込み量を更新し、個別累積書き込み量の合計を、その記憶領域を構成する記憶素子の累積書き込み量として、書き込み量管理テーブルを更新してよい。 The cumulative write amount monitoring unit 29 updates the individual cumulative write amount according to the execution of the write process, and sets the total of the individual cumulative write amounts as the cumulative write amount of the storage elements constituting the storage area. The write amount management table may be updated.

次に図8~9を用いて、ストレージ装置2の書き込み処理について説明する。図8は、実施形態2にかかるストレージ装置2の書き込み処理の一例を示すフローチャートである。なお、初期の制御モードは第1モードとする。 Next, the writing process of the storage device 2 will be described with reference to FIGS. 8 to 9. FIG. 8 is a flowchart showing an example of the writing process of the storage device 2 according to the second embodiment. The initial control mode is the first mode.

まずステップS20において、ストレージ装置2の通信部21は、ホスト装置4から第1記憶領域23へのデータの書き込み要求を受信する。通信部21は、当該書き込み要求先の第1記憶領域アドレスを含む情報を記憶制御部25に供給する。このとき通信部21は、書き込み要求によりホスト装置4から指定されたデータを書き込み対象データとして図4に示すバッファメモリ210に一時保存してよい。 First, in step S20, the communication unit 21 of the storage device 2 receives a data write request from the host device 4 to the first storage area 23. The communication unit 21 supplies information including the first storage area address of the write request destination to the storage control unit 25. At this time, the communication unit 21 may temporarily store the data designated by the host device 4 in response to the write request in the buffer memory 210 shown in FIG. 4 as the data to be written.

次にステップS21において、記憶制御部25は、累積書込量監視部29の書き込み量管理テーブルを参照し、第1記憶領域23の累積書き込み量が第1閾値未満であるか否かを判定する。本実施形態2で第1閾値は、第1記憶領域23の書き込み可能容量であってもよく、予め定められた任意の値であってもよい。記憶制御部25は、累積書き込み量が第1閾値未満であると判定する場合(ステップS21でYes)、処理をステップS22に進め、そうでない場合(ステップS21でNo)、処理をステップS26に進める。 Next, in step S21, the storage control unit 25 refers to the write amount management table of the cumulative write amount monitoring unit 29, and determines whether or not the cumulative write amount of the first storage area 23 is less than the first threshold value. .. In the second embodiment, the first threshold value may be the writable capacity of the first storage area 23, or may be any predetermined value. If the storage control unit 25 determines that the cumulative write amount is less than the first threshold value (Yes in step S21), the process proceeds to step S22, and if not (No in step S21), the process proceeds to step S26. ..

次にステップS22において、記憶制御部25は、制御モードを第1モードに引き続き設定する。 Next, in step S22, the storage control unit 25 continues to set the control mode to the first mode.

次にステップS23において、記憶制御部25は、書き込み対象データを第1記憶領域23における書き込み要求先の第1記憶領域アドレスに格納する。 Next, in step S23, the storage control unit 25 stores the write target data in the first storage area address of the write request destination in the first storage area 23.

ステップS26において、記憶制御部25は、ステップS21で累積書き込み量が第1閾値未満であると判定しなかったことに応じて、制御モードを第2モードに設定する。 In step S26, the storage control unit 25 sets the control mode to the second mode according to the fact that the cumulative write amount is not determined to be less than the first threshold value in step S21.

次にステップS27において、記憶制御部25は、書き込み対象データを第1記憶領域23および第2記憶領域24に格納する。このとき記憶制御部25は、書き込み要求先の第1記憶領域アドレスに書き込み対象データを格納するとともに、第1記憶領域アドレスに対応する第2記憶領域アドレスを割り当て、割り当てた第2記憶領域アドレスに書き込み対象データを複製してよい。 Next, in step S27, the storage control unit 25 stores the data to be written in the first storage area 23 and the second storage area 24. At this time, the storage control unit 25 stores the data to be written in the first storage area address of the write request destination, allocates the second storage area address corresponding to the first storage area address, and assigns the second storage area address to the allocated second storage area address. The data to be written may be duplicated.

そしてステップS28において、ストレージ装置2は、関連する各種テーブルを更新する。たとえば記憶制御部25は、第1モードにおいて、累積書込量監視部29に対して書き込み量管理テーブルを更新するように要求する。また記憶制御部25は、第2モードにおいて、アドレス対照テーブルを更新し、かつ累積書込量監視部29に対して書き込み量管理テーブルを更新するように要求する。そして累積書込量監視部29は、記憶制御部25の要求を受けて、書き込み量管理テーブルを更新する。 Then, in step S28, the storage device 2 updates various related tables. For example, the storage control unit 25 requests the cumulative write amount monitoring unit 29 to update the write amount management table in the first mode. Further, the storage control unit 25 updates the address control table in the second mode, and requests the cumulative write amount monitoring unit 29 to update the write amount management table. Then, the cumulative write amount monitoring unit 29 updates the write amount management table in response to the request of the storage control unit 25.

このように、記憶制御部25は、第1モードにおいて、第1記憶領域23へのデータの書き込み要求を受信したことに応じて、書き込み対象データを第1記憶領域23に記憶させる。また記憶制御部25は、第2モードにおいて、第1記憶領域23へのデータの書き込み要求を受信したことに応じて、書き込み対象データを第1記憶領域23および第2記憶領域24に記憶させる。これにより、第2記憶領域24は、累積書き込み量超えが生じた後に発行されたWriteコマンドにかかるデータの冗長的な記憶領域として機能し、当該コマンドの信頼性低下を防止することができる。 As described above, in the first mode, the storage control unit 25 stores the data to be written in the first storage area 23 in response to receiving the request to write the data to the first storage area 23. Further, in the second mode, the storage control unit 25 stores the data to be written in the first storage area 23 and the second storage area 24 in response to receiving the data write request to the first storage area 23. As a result, the second storage area 24 functions as a redundant storage area for data related to the Write command issued after the cumulative write amount is exceeded, and the reliability of the command can be prevented from deteriorating.

なおステップS21に代えて、記憶制御部25は、第1記憶領域23を構成する第1記憶素子のうち、個別累積書き込み量が所定閾値未満である第1記憶素子があるか否かを判定してもよい。この場合、記憶制御部25は、個別累積書き込み量が所定閾値未満であると判定するとき、処理をステップS22に進め、そうでないとき、処理をステップS26に進めてよい。 Instead of step S21, the storage control unit 25 determines whether or not there is a first storage element having an individual cumulative write amount of less than a predetermined threshold among the first storage elements constituting the first storage area 23. You may. In this case, when the storage control unit 25 determines that the individual cumulative write amount is less than the predetermined threshold value, the process may proceed to step S22, and when not, the process may proceed to step S26.

ここで記憶制御部25は、ステップS27に示す処理に並行して、第2記憶領域24にすでに記憶されるデータの一部を選択的に消去してよい。図9は、実施形態2にかかるストレージ装置2の第2モードにおける書き込み処理を説明するための図である。本図は、第2記憶領域24の記憶状態を模式的に示しており、選択的消去処理の前後の第2記憶領域24をそれぞれ、「24a」および「24b」と表記している。たとえば本図に示す第2記憶領域アドレス「B001」、「B002」および「B003」にはそれぞれ、「Data-1」、「Data-2」および「Data-3」のデータが格納されているとする。ここで第2記憶領域アドレス「B001」の「Data-1」および「B002」の「Data-2」は、書き込まれた日時が古く、かつこの時点での読み出し頻度が後述する第2閾値以下であるデータであるとする。この場合、記憶制御部25は、アドレス対照テーブルおよびデータ使用状況監視部28の読み出し頻度管理テーブルを参照し、第2記憶領域24から「Data-1」および「Data-2」を消去してよい。そして記憶制御部25は、第2記憶領域24における残りのデータに対して、第2記憶領域アドレスを割り当てなおしてよい。その後、記憶制御部25は、アドレス対照テーブルを更新する。 Here, the storage control unit 25 may selectively erase a part of the data already stored in the second storage area 24 in parallel with the process shown in step S27. FIG. 9 is a diagram for explaining a write process in the second mode of the storage device 2 according to the second embodiment. This figure schematically shows the storage state of the second storage area 24, and the second storage area 24 before and after the selective erasing process is described as “24a” and “24b”, respectively. For example, it is assumed that the data of "Data-1", "Data-2" and "Data-3" are stored in the second storage area addresses "B001", "B002" and "B003" shown in this figure, respectively. do. Here, "Data-1" of the second storage area address "B001" and "Data-2" of "B002" have an old writing date and time, and the reading frequency at this point is equal to or less than the second threshold value described later. Suppose it is some data. In this case, the storage control unit 25 may refer to the address control table and the read frequency management table of the data usage status monitoring unit 28, and delete "Data-1" and "Data-2" from the second storage area 24. .. Then, the storage control unit 25 may reassign the second storage area address to the remaining data in the second storage area 24. After that, the storage control unit 25 updates the address control table.

このように記憶制御部25は、第2モードにおいて第2記憶領域24に記憶されるデータを、書き込まれた時期および読み出し頻度の少なくとも1つに基づいて選択的に消去して、第2記憶領域24に記憶されるデータの整理を行う。なお本整理処理は、第2モードにおける任意の時点で行われてもよい。また本整理処理は、第1モードにおいても任意の時点で行われてもよい。 In this way, the storage control unit 25 selectively erases the data stored in the second storage area 24 in the second mode based on at least one of the writing time and the reading frequency, and the second storage area 25. The data stored in 24 is organized. The main rearranging process may be performed at any time in the second mode. Further, this rearranging process may be performed at any time in the first mode.

これによりストレージ装置2は、第2記憶領域24のデータ量を最低限に抑えつつ、読み出し処理を高速化または格納データの信頼性の確保に資することができる。特に、第2モードにおいては、第2記憶領域24は新規の書き込み要求が行われるごとに新規データを格納するため第2記憶領域24のデータ量が急激に増大する。したがって第2モードにおいては、第2記憶領域24のデータ量を最低限に抑えつつ、格納データの信頼性を所定量確保するという効果が顕著に得られる。
なお実施形態2では、本整理処理において第2記憶領域24から消去されたデータは、第1記憶領域23にオリジナルのデータとして格納されているため、消去による不利益は少ない。
As a result, the storage device 2 can contribute to speeding up the reading process or ensuring the reliability of the stored data while minimizing the amount of data in the second storage area 24. In particular, in the second mode, the second storage area 24 stores new data each time a new write request is made, so that the amount of data in the second storage area 24 rapidly increases. Therefore, in the second mode, the effect of ensuring the reliability of the stored data in a predetermined amount while minimizing the amount of data in the second storage area 24 can be remarkably obtained.
In the second embodiment, the data erased from the second storage area 24 in the main rearranging process is stored as the original data in the first storage area 23, so that the disadvantage due to the erasure is small.

次に図10~12を用いて、ストレージ装置2の読み出し処理について説明する。図10および図11は、実施形態2にかかるストレージ装置2の読み出し処理の一例を示すフローチャートである。 Next, the read process of the storage device 2 will be described with reference to FIGS. 10 to 12. 10 and 11 are flowcharts showing an example of the read process of the storage device 2 according to the second embodiment.

まずステップS30において、ストレージ装置2の通信部21は、ホスト装置4から第1記憶領域23へのデータの読み出し要求を受信する。通信部21は、当該読み出し要求先の第1記憶領域アドレスを含む情報を記憶制御部25に供給する。 First, in step S30, the communication unit 21 of the storage device 2 receives a data read request from the host device 4 to the first storage area 23. The communication unit 21 supplies information including the first storage area address of the read request destination to the storage control unit 25.

そしてステップS31において、記憶制御部25は、データ使用状況監視部28に対して、読み出し頻度管理テーブルを更新するように要求する。これによりデータ使用状況監視部28は、読み出し頻度管理テーブルにおいて、読み出し要求先の第1記憶領域アドレスに関連付けられたデータの読み出し頻度をインクリメントする。 Then, in step S31, the storage control unit 25 requests the data usage status monitoring unit 28 to update the read frequency management table. As a result, the data usage status monitoring unit 28 increments the read frequency of the data associated with the first storage area address of the read request destination in the read frequency management table.

次にステップS32において、記憶制御部25は、制御モードが第1モードであるか否かを判定する。記憶制御部25は、制御モードが第1モードであると判定した場合(ステップS32でYes)、処理をステップS33に進め、そうでない場合(ステップS32でNo)、処理をステップS39に進める。 Next, in step S32, the storage control unit 25 determines whether or not the control mode is the first mode. If the memory control unit 25 determines that the control mode is the first mode (Yes in step S32), the process proceeds to step S33, and if not (No in step S32), the process proceeds to step S39.

ステップS33において、記憶制御部25は、第2記憶領域24に読み出し対象データが記憶されているか否かを判定する。このとき記憶制御部25は、アドレス対照テーブルを参照し、読み出し要求先の第1記憶領域アドレスに関連付けられた第2記憶領域アドレスがあるか否かを判定することにより、第2記憶領域24に読み出し対象データが記憶されているか否かを判定してよい。記憶制御部25は、第2記憶領域24に読み出し対象データが記憶されていると判定した場合(ステップS33でYes)、処理をステップS37に進め、そうでない場合(ステップS33でNo)、処理をステップS34に進める。 In step S33, the storage control unit 25 determines whether or not the data to be read is stored in the second storage area 24. At this time, the storage control unit 25 refers to the address control table and determines whether or not there is a second storage area address associated with the first storage area address of the read request destination, thereby setting the second storage area 24. It may be determined whether or not the data to be read is stored. If the storage control unit 25 determines that the data to be read is stored in the second storage area 24 (Yes in step S33), the process proceeds to step S37, and if not (No in step S33), the process is performed. Proceed to step S34.

ステップS34において、記憶制御部25は、第1記憶領域23から読み出し対象データを取得する。記憶制御部25は図4に示すバッファメモリ210に読み出し対象データを一時保存してよい。 In step S34, the storage control unit 25 acquires the data to be read from the first storage area 23. The storage control unit 25 may temporarily store the data to be read in the buffer memory 210 shown in FIG.

ステップS35において、記憶制御部25は、読み出し対象データの読み出し頻度が第2閾値未満であるか否かを判定する。このとき記憶制御部25は、データ使用状況監視部28の読み出し頻度管理テーブルを参照し、読み出し対象データの読み出し頻度に関する情報を取得してよい。記憶制御部25は、読み出し対象データの読み出し頻度が第2閾値未満であると判定した場合(ステップS35でYes)、処理をステップS38に進め、そうでない場合(ステップS35でNo)、処理をステップS36に進める。 In step S35, the storage control unit 25 determines whether or not the read frequency of the read target data is less than the second threshold value. At this time, the storage control unit 25 may refer to the read frequency management table of the data usage status monitoring unit 28 and acquire information regarding the read frequency of the data to be read. If the storage control unit 25 determines that the read frequency of the data to be read is less than the second threshold value (Yes in step S35), the process proceeds to step S38, and if not (No in step S35), the process is stepped. Proceed to S36.

ステップS36において、記憶制御部25は、第1記憶領域23に記憶されている読み出し対象データをホットデータとして、第2記憶領域24の新規に割り当てた第2記憶領域アドレスに複製する。そして記憶制御部25は、アドレス対照テーブルを更新する。そして記憶制御部25は、処理をステップS38に進める。 In step S36, the storage control unit 25 duplicates the read target data stored in the first storage area 23 as hot data to the newly assigned second storage area address of the second storage area 24. Then, the storage control unit 25 updates the address control table. Then, the memory control unit 25 advances the process to step S38.

一方ステップS37において、記憶制御部25は、第2記憶領域24から読み出し対象データを取得する。記憶制御部25は図4に示すバッファメモリ210に読み出し対象データを一時保存してよい。そして記憶制御部25は、処理をステップS38に進める。 On the other hand, in step S37, the storage control unit 25 acquires the data to be read from the second storage area 24. The storage control unit 25 may temporarily store the data to be read in the buffer memory 210 shown in FIG. Then, the memory control unit 25 advances the process to step S38.

ステップS38において、記憶制御部25は、通信部21を介してホスト装置4に読み出し対象データを出力する。 In step S38, the storage control unit 25 outputs the data to be read to the host device 4 via the communication unit 21.

またステップS39において、記憶制御部25は、制御モードが第2モードであると判定したことに応じて(ステップS32でNo)、ステップS33と同様に、第2記憶領域24に読み出し対象データが記憶されているか否かを判定する。記憶制御部25は、第2記憶領域24に読み出し対象データが記憶されていると判定した場合(ステップS39でYes)、処理をステップS41に進め、そうでない場合(ステップS39でNo)、処理をステップS40に進める。 Further, in step S39, the storage control unit 25 stores the data to be read in the second storage area 24 in the same manner as in step S33 according to the determination that the control mode is the second mode (No in step S32). Determine if it has been done. If the storage control unit 25 determines that the data to be read is stored in the second storage area 24 (Yes in step S39), the process proceeds to step S41, and if not (No in step S39), the process is performed. Proceed to step S40.

ステップS40において、記憶制御部25は、ステップS34と同様に、第1記憶領域23から読み出し対象データを取得する。そして記憶制御部25は、処理をステップS42に進める。 In step S40, the storage control unit 25 acquires the data to be read from the first storage area 23, as in step S34. Then, the memory control unit 25 advances the process to step S42.

またステップS41において、記憶制御部25は、ステップS37と同様に、第2記憶領域24から読み出し対象データを取得する。そして記憶制御部25は、処理をステップS42に進める。 Further, in step S41, the storage control unit 25 acquires the data to be read from the second storage area 24 as in step S37. Then, the memory control unit 25 advances the process to step S42.

そしてステップS42において、記憶制御部25は、ステップS38と同様に、通信部21を介してホスト装置4に読み出し対象データを出力する。 Then, in step S42, the storage control unit 25 outputs the data to be read to the host device 4 via the communication unit 21 in the same manner as in step S38.

このように、記憶制御部25は、第1モードにおいて、第1記憶領域23に記憶される第1データからホットデータが検出されたことに応じて、ホットデータの複製を第2記憶領域24に記憶させる。そして記憶制御部25は、第1モードにおいて、データの読み出し要求を受信したことに応じて、読み出し対象データを第2記憶領域24から優先的に出力する。これにより、ストレージ装置2は、第2記憶領域24を第1記憶領域23のリード・キャッシュとして機能させ、読み出し処理を高速化することができる。なお本実施形態2では、記憶制御部25は、第2モードにおいても、読み出し対象データを第2記憶領域24から優先的に出力し、読み出し処理を高速化することができる。 As described above, in the first mode, the storage control unit 25 copies the hot data to the second storage area 24 in response to the detection of the hot data from the first data stored in the first storage area 23. Remember. Then, in the first mode, the storage control unit 25 preferentially outputs the data to be read from the second storage area 24 in response to receiving the data read request. As a result, the storage device 2 can make the second storage area 24 function as a read cache of the first storage area 23, and can speed up the read process. In the second embodiment, the storage control unit 25 can preferentially output the read target data from the second storage area 24 even in the second mode to speed up the read process.

図12は、実施形態2にかかる第1記憶領域23および第2記憶領域24の第1モードにおける任意の時点での記憶状態を模式的に示す図である。 FIG. 12 is a diagram schematically showing a storage state at an arbitrary time point in the first mode of the first storage area 23 and the second storage area 24 according to the second embodiment.

ここで図12に示すように、記憶部22の第1記憶領域23において、第1記憶領域アドレス「A001」、「A002」および「A003」にはそれぞれ、「Data-1」、「Data-2」および「Data-3」のデータが格納されている。ここで第1記憶領域アドレス「A001」の「Data-1」は、読み出し時点で読み出し頻度が第2閾値以上のホットデータであり、「A002」の「Data-2」および「A003」の「Data-3」は、読み出し時点で読み出し頻度が第2閾値未満のコールドデータであるとする。この場合、ホットデータである「Data-1」は、読み出し処理により、第2記憶領域24の第2記憶領域アドレス「B001」に複製され、コールドデータは第2記憶領域24に複製されない。 Here, as shown in FIG. 12, in the first storage area 23 of the storage unit 22, the first storage area addresses "A001", "A002", and "A003" have "Data-1" and "Data-2", respectively. "And" Data-3 "data are stored. Here, "Data-1" of the first storage area address "A001" is hot data whose read frequency is equal to or higher than the second threshold value at the time of reading, and is "Data-2" of "A002" and "Data-1" of "A003". -3 ”is assumed to be cold data whose read frequency is less than the second threshold value at the time of reading. In this case, the hot data "Data-1" is duplicated in the second storage area address "B001" of the second storage area 24 by the read process, and the cold data is not duplicated in the second storage area 24.

なお記憶制御部25は、データ使用状況監視部28の読み出し頻度管理テーブルを参照し、データの読み出し頻度に基づいて、第2記憶領域24におけるデータに対して、第2記憶領域アドレスを割り当てなおしてよい。一例として、記憶制御部25は、読み出し頻度が高い順に第2記憶領域アドレスを割り当てなおしてよい。
なお本処理は、第1モードにおける任意の時点で行われてもよい。また本処理は、第2モードにおいても任意の時点で行われてよい。
The storage control unit 25 refers to the read frequency management table of the data usage status monitoring unit 28, and reassigns the second storage area address to the data in the second storage area 24 based on the data read frequency. good. As an example, the storage control unit 25 may reassign the second storage area address in descending order of read frequency.
This process may be performed at any time in the first mode. Further, this process may be performed at any time even in the second mode.

このように実施形態2によれば、第1記憶領域23のキャッシュとして機能する第2記憶領域24が、累積書き込み量超えが生じた場合の信頼性確保のためのデータの格納先としても機能する。したがってストレージ装置2は、簡易な構成で、処理性能の改善およびデータ信頼性低下の防止を実現することができる。これにより、ストレージ装置2の低コスト化を実現することができる。
なお、データ使用状況監視部28および累積書込量監視部29は、汎用の機能を転用することで容易に実装することができる。
As described above, according to the second embodiment, the second storage area 24, which functions as a cache of the first storage area 23, also functions as a storage destination of data for ensuring reliability when the cumulative write amount is exceeded. .. Therefore, the storage device 2 can improve the processing performance and prevent the deterioration of data reliability with a simple configuration. As a result, the cost of the storage device 2 can be reduced.
The data usage status monitoring unit 28 and the cumulative write amount monitoring unit 29 can be easily implemented by diverting general-purpose functions.

<実施形態3>
次に図13~14を用いて、本開示の実施形態3について説明する。実施形態3は、ストレージ装置が読み込みエラー発生時により信頼性の高いデータに訂正することに特徴を有する。
図13は、実施形態3にかかるストレージ装置3の構成の一例をホスト装置4とともに示すブロック図である。実施形態3にかかるストレージ装置3は、実施形態2にかかるストレージ装置2と基本的に同様の構成および機能を有する。ただし実施形態3にかかるストレージ装置3は、記憶制御部25に代えて記憶制御部35を備える点で実施形態2にかかるストレージ装置2と相違する。
<Embodiment 3>
Next, Embodiment 3 of the present disclosure will be described with reference to FIGS. 13 to 14. The third embodiment is characterized in that the storage device corrects the data to be more reliable when a read error occurs.
FIG. 13 is a block diagram showing an example of the configuration of the storage device 3 according to the third embodiment together with the host device 4. The storage device 3 according to the third embodiment has basically the same configuration and function as the storage device 2 according to the second embodiment. However, the storage device 3 according to the third embodiment is different from the storage device 2 according to the second embodiment in that the storage control unit 35 is provided in place of the storage control unit 25.

記憶制御部35は、記憶制御部25の構成および機能に加えて、訂正部36を有する。
訂正部36は、第2モードにおいて、データの読み出し要求に対する読み込みエラーが発生したことに応じて、読み出し対象データが第2記憶領域24に記憶される場合に、読み出し対象データを第2記憶領域24から取得する。そして訂正部36は、読み出し対象データを、通信部21を介してホスト装置4に出力する。
The memory control unit 35 has a correction unit 36 in addition to the configuration and function of the memory control unit 25.
When the read target data is stored in the second storage area 24 in response to the occurrence of a read error in response to the data read request in the second mode, the correction unit 36 stores the read target data in the second storage area 24. Get from. Then, the correction unit 36 outputs the read target data to the host device 4 via the communication unit 21.

図14は、実施形態3にかかるストレージ装置3の第2モードにおける読み出し処理の一例を示すフローチャートである。ストレージ装置3は、読み出しが要求されたことに応じて、図10~11のステップS39~42に代えて、ステップS50~57に示す読み出し処理を実行する。 FIG. 14 is a flowchart showing an example of read processing in the second mode of the storage device 3 according to the third embodiment. The storage device 3 executes the read process shown in steps S50 to 57 instead of steps S39 to 42 in FIGS. 10 to 11 in response to the request for read.

まずステップS50において、記憶制御部35は、図10に示すステップS32で制御モードが第2モードであると判定した場合(ステップS32でNo)、第1記憶領域23から読み出し対象データを読み込み、取得する。記憶制御部35は、取得したデータを図4に示すバッファメモリ210に一時保存する。 First, in step S50, when the storage control unit 35 determines in step S32 shown in FIG. 10 that the control mode is the second mode (No in step S32), the storage control unit 35 reads the data to be read from the first storage area 23 and acquires the data. do. The storage control unit 35 temporarily stores the acquired data in the buffer memory 210 shown in FIG.

次にステップS51において、記憶制御部35は、読み込みエラーが発生したか否かを判定する。記憶制御部35は、読み込みエラーが発生したと判定する場合(ステップS51でYes)、処理をステップS52に進め、そうでない場合(ステップS51でNo)、処理をステップS57に進める。 Next, in step S51, the storage control unit 35 determines whether or not a read error has occurred. If the storage control unit 35 determines that a read error has occurred (Yes in step S51), the process proceeds to step S52, and if not (No in step S51), the process proceeds to step S57.

ステップS52において、記憶制御部35の訂正部36は、第1記憶領域23から取得した読み出し対象データをバッファメモリ210から破棄する。 In step S52, the correction unit 36 of the storage control unit 35 discards the read target data acquired from the first storage area 23 from the buffer memory 210.

そしてステップS53において、記憶制御部35の訂正部36は、アドレス対照テーブルを用いて、第2記憶領域24に読み出し対象データが記憶されているか否かを判定する。訂正部36は、第2記憶領域24に読み出し対象データが記憶されていると判定した場合(ステップS53でYes)、処理をステップS54に進め、そうでない場合(ステップS53でNo)、処理をステップS56に進める。 Then, in step S53, the correction unit 36 of the storage control unit 35 uses the address control table to determine whether or not the data to be read is stored in the second storage area 24. If the correction unit 36 determines that the data to be read is stored in the second storage area 24 (Yes in step S53), the process proceeds to step S54, and if not (No in step S53), the process is stepped. Proceed to S56.

ステップS54において、記憶制御部35の訂正部36は、第2記憶領域24から読み出し対象データを読み込み、取得する。記憶制御部35の訂正部36は、取得したデータをバッファメモリ210に一時保存する。 In step S54, the correction unit 36 of the storage control unit 35 reads and acquires the data to be read from the second storage area 24. The correction unit 36 of the storage control unit 35 temporarily stores the acquired data in the buffer memory 210.

次にステップS55において、記憶制御部35の訂正部36は、読み込みエラーが発生したか否かを判定する。訂正部36は、読み込みエラーが発生したと判定する場合(ステップS55でYes)、処理をステップS56に進め、そうでない場合(ステップS55でNo)、処理をステップS57に進める。 Next, in step S55, the correction unit 36 of the storage control unit 35 determines whether or not a reading error has occurred. If the correction unit 36 determines that a read error has occurred (Yes in step S55), the process proceeds to step S56, and if not (No in step S55), the process proceeds to step S57.

ステップS56において、記憶制御部35の訂正部36は、第2記憶領域24から取得した読み出し対象データをバッファメモリ210から破棄し、通信部21を介してホスト装置4にデータエラーが発生したことを通知する。 In step S56, the correction unit 36 of the storage control unit 35 discards the read target data acquired from the second storage area 24 from the buffer memory 210, and indicates that a data error has occurred in the host device 4 via the communication unit 21. Notice.

一方ステップS57において、記憶制御部35は、通信部21を介してホスト装置4に読み出し対象データを出力する。 On the other hand, in step S57, the storage control unit 35 outputs the data to be read to the host device 4 via the communication unit 21.

このように実施形態3によれば、ストレージ装置3は、第2モードにおいて、読み出しエラーが発生した場合に、第2記憶領域24に記憶された、より劣化の少ないデータを出力する。これにより第2記憶領域は、累積書き込み量超えが生じた場合のデータの信頼性を確保することができる。 As described above, according to the third embodiment, the storage device 3 outputs the data stored in the second storage area 24 with less deterioration when a read error occurs in the second mode. As a result, the second storage area can ensure the reliability of the data when the cumulative write amount is exceeded.

なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。 The present disclosure is not limited to the above embodiment, and can be appropriately modified without departing from the spirit.

また、上述の実施形態では、本開示をハードウェアの構成として説明したが、本開示は、これに限定されるものではない。本開示は、任意の処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。プロセッサとしては、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)、DSP(Digital Signal Processor)およびASIC(Application Specific Integrated Circuit)等が用いられてもよい。また、これらのうち複数個を並列に用いてもよい。 Further, in the above-described embodiment, the present disclosure has been described as a hardware configuration, but the present disclosure is not limited thereto. The present disclosure can also be realized by causing a processor to execute a computer program. As the processor, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an FPGA (Field-Programmable Gate Array), a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), or the like may be used. Further, a plurality of these may be used in parallel.

上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、DVD(Digital Versatile Disc)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。 In the above example, the program can be stored and supplied to the computer using various types of non-transitory computer readable medium. Non-temporary computer-readable media include various types of tangible storage media. Examples of non-temporary computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs. Includes CD-R / W, DVD (Digital Versatile Disc), semiconductor memory (eg, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)). The program may also be supplied to the computer by various types of transient computer readable medium. Examples of temporary computer readable media include electrical, optical, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

1,2,3 ストレージシステム(ストレージ装置)
4 ホスト装置
12,22 記憶部
13,23 第1記憶領域
14,24 第2記憶領域
15,25,35 記憶制御部
21 通信部
27 監視部
28 データ使用状況監視部
29 累積書込量監視部
36 訂正部
200 インターフェイス
205 インターフェイスコントローラ
210 バッファメモリ
230 第1記憶素子群
240 第2記憶素子群
270 記憶素子制御部
280 データ使用状況監視部
290 記憶素子使用状況監視部
1,2,3 storage system (storage device)
4 Host device 12,22 Storage unit 13,23 First storage area 14,24 Second storage area 15,25,35 Storage control unit 21 Communication unit 27 Monitoring unit 28 Data usage status monitoring unit 29 Cumulative write amount monitoring unit 36 Correction unit 200 Interface 205 Interface controller 210 Buffer memory 230 1st storage element group 240 2nd storage element group 270 Storage element control unit 280 Data usage status monitoring unit 290 Storage element usage status monitoring unit

Claims (10)

第1データを記憶する第1記憶領域および第2データを記憶する第2記憶領域を有する記憶部と、
前記第1記憶領域および前記第2記憶領域に対して、データの読み出しおよび書き込みを、モードに応じて制御する記憶制御部と
を備え、
前記記憶制御部は、
前記第1記憶領域の累積書き込み量が予め定められた第1閾値未満である第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが前記第1データから検出されたことに応じて、前記ホットデータの複製を前記第2記憶領域に記憶させ、
前記第1記憶領域の累積書き込み量が前記第1閾値以上である第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第2記憶領域に記憶させ
前記第2モードにおいて、データの読み出し要求に対する読み込みエラーが発生したことに応じて、前記読み出し要求にかかるデータが前記第2記憶領域に記憶される場合に、前記読み出し要求にかかるデータを前記第2記憶領域から出力する
ストレージシステム。
A storage unit having a first storage area for storing the first data and a second storage area for storing the second data, and a storage unit.
The first storage area and the second storage area are provided with a storage control unit that controls reading and writing of data according to a mode.
The memory control unit
In the first mode in which the cumulative write amount of the first storage area is less than the predetermined first threshold value, the hot data in which the number of reads within the predetermined time is equal to or more than the predetermined second threshold value is obtained from the first data. Depending on what is detected, a copy of the hot data is stored in the second storage area.
In the second mode in which the cumulative write amount of the first storage area is equal to or greater than the first threshold value, the data related to the write request is transferred to the first storage area in response to the receipt of the data write request to the first storage area. 2 Store in the storage area
In the second mode, when the data related to the read request is stored in the second storage area in response to the occurrence of a read error for the data read request, the data related to the read request is stored in the second storage area. Output from storage area
Storage system.
第1データを記憶する第1記憶領域および第2データを記憶する第2記憶領域を有する記憶部と、 A storage unit having a first storage area for storing the first data and a second storage area for storing the second data, and a storage unit.
前記第1記憶領域および前記第2記憶領域に対して、データの読み出しおよび書き込みを、モードに応じて制御する記憶制御部と A storage control unit that controls reading and writing of data to the first storage area and the second storage area according to a mode.
を備え、 Equipped with
前記記憶制御部は、 The memory control unit
前記第1記憶領域の累積書き込み量が予め定められた第1閾値未満である第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが前記第1データから検出されたことに応じて、前記ホットデータの複製を前記第2記憶領域に記憶させ、 In the first mode in which the cumulative write amount of the first storage area is less than the predetermined first threshold value, the hot data in which the number of reads within the predetermined time is equal to or more than the predetermined second threshold value is obtained from the first data. Depending on what is detected, a copy of the hot data is stored in the second storage area.
前記第1モードから、前記第1記憶領域の累積書き込み量が前記第1閾値以上である第2モードになった場合、前記第1記憶領域へのデータの書き込み要求にかかるデータの格納先に、前記第2記憶領域を追加する When the cumulative write amount of the first storage area changes from the first mode to the second mode in which the cumulative write amount of the first storage area is equal to or greater than the first threshold value, the data storage destination for the data write request to the first storage area is set. Add the second storage area
ストレージシステム。 Storage system.
前記記憶制御部は、前記第1モードまたは前記第2モードにおいて、データの読み出し要求を受信したことに応じて、前記読み出し要求にかかるデータを前記第2記憶領域から優先的に出力する In the first mode or the second mode, the storage control unit preferentially outputs the data related to the read request from the second storage area in response to receiving the data read request.
請求項2に記載のストレージシステム。 The storage system according to claim 2.
前記第1記憶領域および前記第2記憶領域は、互いに論理的に区別された記憶領域である
請求項1から3のいずれか一項に記載のストレージシステム。
The storage system according to any one of claims 1 to 3, wherein the first storage area and the second storage area are storage areas that are logically distinguished from each other.
前記記憶制御部は、前記第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第1記憶領域および前記第2記憶領域に記憶させる
請求項1から4のいずれか一項に記載のストレージシステム。
In the second mode, the storage control unit sends the data related to the write request to the first storage area and the second storage area in response to receiving the data write request to the first storage area. The storage system according to any one of claims 1 to 4 to be stored.
前記記憶制御部は、前記第2モードにおいて、前記第2記憶領域に記憶されるデータを、書き込まれた時期または所定時間内の読み出し回数に基づいて選択的に消去する
請求項1から5のいずれか一項に記載のストレージシステム。
Any of claims 1 to 5, wherein the storage control unit selectively erases the data stored in the second storage area in the second mode based on the writing time or the number of readings within a predetermined time. The storage system described in one item.
前記第1記憶領域に記憶されるデータの使用状況を監視するデータ使用状況監視部と、
前記記憶部の記憶素子の累積書き込み量を監視する累積書込量監視部と
をさらに備える
請求項1から6のいずれか一項に記載のストレージシステム。
A data usage monitoring unit that monitors the usage status of data stored in the first storage area, and a data usage monitoring unit.
The storage system according to any one of claims 1 to 6, further comprising a cumulative write amount monitoring unit that monitors the cumulative write amount of the storage element of the storage unit.
記憶部の第1記憶領域の累積書き込み量が予め定められた第1閾値未満である場合、モードを第1モードに設定し、
前記記憶部の第1記憶領域の累積書き込み量が前記第1閾値以上である場合、モードを第2モードに設定し、
前記第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが、前記第1記憶領域に記憶される第1データから検出されたことに応じて、前記ホットデータの複製を記憶部の第2記憶領域に記憶させ、
前記第2モードにおいて、前記第1記憶領域へのデータの書き込み要求を受信したことに応じて、前記書き込み要求にかかるデータを前記第2記憶領域に記憶させ
前記第2モードにおいて、データの読み出し要求に対する読み込みエラーが発生したことに応じて、前記読み出し要求にかかるデータが前記第2記憶領域に記憶される場合に、前記読み出し要求にかかるデータを前記第2記憶領域から出力する
ストレージ制御方法。
When the cumulative write amount of the first storage area of the storage unit is less than the predetermined first threshold value, the mode is set to the first mode, and the mode is set to the first mode.
When the cumulative write amount of the first storage area of the storage unit is equal to or greater than the first threshold value, the mode is set to the second mode.
In the first mode, the hot data in which the number of times of reading within a predetermined time is equal to or more than a predetermined second threshold value is detected from the first data stored in the first storage area. Data duplication is stored in the second storage area of the storage unit,
In the second mode, in response to receiving a request to write data to the first storage area, the data related to the write request is stored in the second storage area .
In the second mode, when the data related to the read request is stored in the second storage area in response to the occurrence of a read error for the data read request, the data related to the read request is stored in the second storage area. Output from storage area
Storage control method.
記憶部の第1記憶領域の累積書き込み量が予め定められた第1閾値未満である場合、モードを第1モードに設定し、 When the cumulative write amount of the first storage area of the storage unit is less than the predetermined first threshold value, the mode is set to the first mode, and the mode is set to the first mode.
前記記憶部の第1記憶領域の累積書き込み量が前記第1閾値以上である場合、モードを第2モードに設定し、 When the cumulative write amount of the first storage area of the storage unit is equal to or greater than the first threshold value, the mode is set to the second mode.
前記第1モードにおいて、所定時間内の読み出し回数が予め定められた第2閾値以上であるホットデータが、前記第1記憶領域に記憶される第1データから検出されたことに応じて、前記ホットデータの複製を記憶部の第2記憶領域に記憶させ、 In the first mode, the hot data in which the number of times of reading within a predetermined time is equal to or more than a predetermined second threshold value is detected from the first data stored in the first storage area. Data duplication is stored in the second storage area of the storage unit,
前記第1モードから前記第2モードになった場合、前記第1記憶領域へのデータの書き込み要求にかかるデータの格納先に、前記第2記憶領域を追加する When the mode is changed from the first mode to the second mode, the second storage area is added to the storage destination of the data related to the request for writing the data to the first storage area.
ストレージ制御方法。 Storage control method.
請求項8又は9に記載のストレージ制御方法を、コンピュータに実行させるストレージ制御プログラム。 A storage control program that causes a computer to execute the storage control method according to claim 8 or 9.
JP2020086424A 2020-05-18 2020-05-18 Storage system, storage control method and storage control program Active JP7044403B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020086424A JP7044403B2 (en) 2020-05-18 2020-05-18 Storage system, storage control method and storage control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020086424A JP7044403B2 (en) 2020-05-18 2020-05-18 Storage system, storage control method and storage control program

Publications (2)

Publication Number Publication Date
JP2021182178A JP2021182178A (en) 2021-11-25
JP7044403B2 true JP7044403B2 (en) 2022-03-30

Family

ID=78607072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020086424A Active JP7044403B2 (en) 2020-05-18 2020-05-18 Storage system, storage control method and storage control program

Country Status (1)

Country Link
JP (1) JP7044403B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016162397A (en) 2015-03-05 2016-09-05 富士通株式会社 Storage control device, control system and control program
JP2019159639A (en) 2018-03-12 2019-09-19 株式会社日立製作所 Storage system, data management method and data management program
JP2019179455A (en) 2018-03-30 2019-10-17 東芝メモリ株式会社 Storage device and computer system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016162397A (en) 2015-03-05 2016-09-05 富士通株式会社 Storage control device, control system and control program
JP2019159639A (en) 2018-03-12 2019-09-19 株式会社日立製作所 Storage system, data management method and data management program
JP2019179455A (en) 2018-03-30 2019-10-17 東芝メモリ株式会社 Storage device and computer system

Also Published As

Publication number Publication date
JP2021182178A (en) 2021-11-25

Similar Documents

Publication Publication Date Title
US11693463B2 (en) Memory system and controller
US20190129842A1 (en) Memory system having persistent garbage collection
US8312203B2 (en) Semiconductor storage device and method of controlling a semiconductor storage device by allocating a physical block composed of plural pages to a group of logical addresses
US8458417B2 (en) Garbage collection in a storage device
US10372619B2 (en) Data backup method, data recovery method and storage controller
US20100088461A1 (en) Solid state storage system using global wear leveling and method of controlling the solid state storage system
US8370680B2 (en) Solid state storage system for controlling reserved area and method of controlling the same
US8214698B2 (en) Solid state storage system with improved data merging efficiency and control method thereof
US20140075099A1 (en) Control method and memory system of non-volatile semiconductor memory
KR101468432B1 (en) Flash memory refresh techniques triggered by controlled scrub data reads
US20210216218A1 (en) System and method for facilitating improved utilization of nand flash based on page-wise operation
JPWO2009004674A1 (en) Storage device, disk device, write determination method, control device
KR20130069364A (en) Non-volatile semiconductor memory device and method of controlling the same
TW201303584A (en) Memory storage device, memory controller thereof, and method for identifying valid data
US9858003B2 (en) Storage system that reliably stores lower page data
US10509583B1 (en) Memory management method and storage controller
US20150277787A1 (en) Memory controller, memory system, and memory control method
JP7044403B2 (en) Storage system, storage control method and storage control program
KR20120070408A (en) Methods of non-volitile memory device for controlling block
KR20190073125A (en) Memory system and operating method thereof
US20230089246A1 (en) Memory system
CN111143230B (en) Data merging method, memory storage device and memory control circuit unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210908

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220310

R150 Certificate of patent or registration of utility model

Ref document number: 7044403

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150