JP2014153969A - 情報処理システム - Google Patents

情報処理システム Download PDF

Info

Publication number
JP2014153969A
JP2014153969A JP2013024000A JP2013024000A JP2014153969A JP 2014153969 A JP2014153969 A JP 2014153969A JP 2013024000 A JP2013024000 A JP 2013024000A JP 2013024000 A JP2013024000 A JP 2013024000A JP 2014153969 A JP2014153969 A JP 2014153969A
Authority
JP
Japan
Prior art keywords
data
read
volatile memory
cache
write
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
JP2013024000A
Other languages
English (en)
Other versions
JP5953245B2 (ja
Inventor
Isamu Kaneko
勇 金子
Tetsuji Tsukito
哲児 月東
Takahiko Shirakawa
孝彦 白川
Yukinori Naruse
幸範 成瀬
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013024000A priority Critical patent/JP5953245B2/ja
Publication of JP2014153969A publication Critical patent/JP2014153969A/ja
Application granted granted Critical
Publication of JP5953245B2 publication Critical patent/JP5953245B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

【課題】
ライト書き換え耐力の弱い不揮発性メモリをリードキャッシュに使用した場合、キャッシュヒット率を高くするためにリードアクセス頻度が低く、書き換え頻度の高いデータをキャッシュするとライト書き込み耐力不足の問題があった。
【解決手段】
リードキャッシュの構成で揮発性メモリとライト書き換え耐力の弱い不揮発性メモリとの間にライト書き換え耐力の強い不揮発性メモリを間に配置し、上位の揮発性メモリと中位のライト書き換え耐力の強い不揮発性メモリのデータのリードアクセス頻度を監視し、リードアクセス頻度のレベルに応じて上位の揮発性メモリ、中位のライト書き換え耐力の強い不揮発性メモリ、下位のライト書き換え耐力の弱い不揮発性メモリと段階的にデータの格納場所を制御する。
【選択図】 図1

Description

不揮発性メモリを使用した情報処理システムにおける最適なデータ制御技術に関する。
様々な種類のコンピュータの多くは外部記憶装置としてHDDを利用しているが、近年では、揮発性メモリとHDDのパフォーマンスギャップが大きくなり、そのギャップを埋める高速デバイスとして不揮発性メモリを間に入れる構成が増えている。不揮発性メモリはメモリセルの密度に応じてライト書き換え耐力と容量単価のトレードオフを有する特徴がある。例えば、SLC(シングルレベルセル)はセル毎に1データビットを格納したもので容量単価は高いがライト書き換え耐力が強い。それに対してMLC(マルチレベルセル)は一つのセルに2、4、8とマルチにデータビットを格納できるため容量単価は安いが格納するデータビットを増やせば増やすほどライト書き換え耐力が弱くなる特徴を持つ。この不揮発性メモリの特徴を有効に利用した例が特許文献1に記載されている。この例ではライト書き換え耐力が強い特徴を持つ不揮発性メモリをライトキャッシュとして使用し、ライト書き換え耐力の弱い不揮発性メモリをリードキャッシュとして使用することを提案している。
特開2012−48361
上記の特許文献1ではライト書き換え耐力の弱い不揮発性メモリをリードキャッシュに使用してライト書き換え耐力の消耗を緩和しているが、キャッシュヒット率を高くするためにはアクセス頻度が低く書き換え頻度の高いデータもライト書き換え耐力の弱いリードキャッシュに書き込むことになり、ライト書き換え耐力不足の懸念を払拭することができない。上位に位置する揮発性メモリの容量を増やしアクセス頻度が低いデータも揮発性メモリに置いておくことでリードキャッシュヒット率を上げることができるが、それではコストアップになってしまう。
また、電源が遮断されると揮発性メモリのデータは消失してしまうので、これまで蓄積したアクセス頻度の高いデータが消失し、電源回復後のキャッシュヒット率は急激に低下する。
リードキャッシュの構成で揮発メモリと不揮発性メモリとの間にライト書き換え耐力の強い不揮発性メモリを間に配置し、上位の揮発性メモリと中位のライト書き換え耐力の強い不揮発性メモリのデータのリードアクセス頻度を監視し、リードアクセス頻度のレベルに応じて上位の揮発メモリ、中位のライト書き換え耐力の強い不揮発性メモリ、下位のライト書き換え耐力の弱い不揮発性メモリと段階的にデータの格納場所を変更する。
この発明によれば、リードアクセス頻度が高く、書き換えが発生しないデータのみをライト書き換え耐力の弱い不揮発性メモリに集約することができるので不揮発性メモリの書き換え耐力の消耗を緩和させることが可能になる。これまで揮発性メモリにあるすべてのデータは電源が遮断されると消失していたが、揮発メモリ内のデータでアクセス頻度の高いデータはライト書き換え耐力の強い不揮発性メモリに移動させるため電源が遮断されても消失することがない。高価な揮発メモリの容量を増やす代わりにライト書き換え耐力の強い不揮発性メモリで代用するためキャッシュヒット率を維持したコストパフォーマンスに優れた情報処理システムを構築することができる。
本発明の実施形態のディスクサブシステムの構成を示す図 実施形態の不揮発性メモリのデータ管理テーブルの構成例 実施形態のリードキャッシュの揮発性メモリのデータ管理テーブルの構成例 実施形態のライトキャッシュの揮発性メモリのデータ管理テーブルの構成例 実施形態の動作の概要を説明する図 実施形態のホストシステムからリード要求に対するフローチャート 実施形態の揮発メモリからリードアクセス頻度の高いデータを不揮発性メモリに移動する処理のフローチャート
以下、図面を参照して、この発明の実施形態を説明する。
図1は本発明の実施形態に係るディスクサブシステム200の構成を示す図である。本ディスクサブシステム200は、ホストシステム100が利用するデータを記録するためにディスクサブシステム200として接続されている。ホストシステム100とディスクサブシステム200との接続形態はLAN(Local Area Network)を介する環境においては複数のホストシステム100が存在しても良い。また、ホストシステム100とディスクサブシステム200とが同一のコンピュータ上に存在してデータバスを介して接続される形態やディスクサブシステム200内のHDD220を外部接続としディスクサブシステム200自身がキャッシュサーバとする形態も考えられる。
図1のようにディスクサブシステム200は制御部210、リードキャッシュ230、ライトキャッシュ240、HDD220(Hard Disk Drive)で構成されている。制御部210はRAM211(Random Access Memory)、プロセッサ212、ROM213(Read Only Memory)で構成されている。RAM211は制御部210のワーク領域として使用し、ROM213には制御プログラムが格納されている。制御部210は本ディスクサブシステム200の動作を制御する中枢部でありホストシステム100が発行するHDD220へのデータの書き込み要求(ライトコマンド)または、読み出し要求(リードコマンド)を効率的に処理する。リードキャッシュ230は揮発性メモリ231と不揮発性メモリ232で構成されている。不揮発性メモリ232は、さらに書き込み耐力の異なる2種類の不揮発性メモリのSLC233とMLC234で構成されている。ここでは、SLC233とMLC234を使用する実施例となっているがライト書き込み耐力の異なる2種類のMLCを使用しても良い。HDD220はホストシステム100のデータを記録する記憶装置である。データ保証するために耐障害性を高めたRAID構成(Redundant Array of Inexpensive Disks)の形態が多い。リードキャッシュ230とライトキャッシュ240はHDD220のキャッシュとして使用する。
図2に実施形態の不揮発性メモリ232のデータ管理テーブル236の構成例を示す。データ管理テーブル236は不揮発性メモリ232に格納されているHDD220のキャッシュデータの格納箇所を管理するためのものである。ここではリードキャッシュ230内のMLC234の管理テーブルは書き換え頻度を考慮して、SLC233の管理テーブル236に集約した。データ管理テーブルはTag301、アドレスLBA(Logical Block Address)302、キャッシュアドレス303、SLC識別子304、MLC識別子305、Status306、リードアクセス頻度307で構成される。
Tag301はHDD220の各HDDの識別子を示す。具体的にはHDD220のHDDの搭載数が16台である場合には識別子は4ビットで表現することができる。アドレスLBA302はHDD220の各HDDのセクタ位置を示す。1台当たりのHDDの容量が2TBの場合には32ビットでアドレスLBA302を表現することができる。キャッシュアドレス303はSLC233とMLC234のキャッシュアドレスを示す。SLC識別子304とMLC識別子305を付加することでキャッシュデータがSLC233とMLC234のどちらに格納されているか特定することができる。
Status306はデータの状態を示す。Usedは使用している状態を示し、Not Usedは未使用の状態を示す。Not Usedは他のキャッシュ領域へデータを移動した場合やデータの書き換えが発生して不要となったデータに対してもセットされる。Not Usedがセットされたデータは後続の新しいデータを書き込むためにいつでも消去することができる。リードアクセス頻度307はキャッシュヒット時に該当データに対して1加算する。この処理によって、リードアクセス頻度307の高いデータの管理ができるようになる。
各キャッシュ領域のStatus306でNot Usedのデータがなく空き領域を確保できない場合にはリードアクセス頻度307のカウンタ値を使用して空き領域を確保することができる。具体的にはリードアクセス頻度307のカウンタ値の小さいデータはリードアクセス頻度の低いデータと判断することができるので優先的に消去し、新しいデータを格納するために領域を空けることができる。
図3に実施形態のリードキャッシュの揮発性メモリのデータ管理テーブル235の構成例を示す。図2の不揮発性メモリのデータ管理テーブル236の構成との相違点はSLC233識別子304とMLC234識別子がない点である。
図4に実施形態のライトキャッシュの揮発性メモリのデータ管理テーブル241の構成例を示す。図2の不揮発性メモリのデータ管理テーブル236の構成との相違点はSLC233識別子304とMLC234識別子がない点とStatus306でライトキャッシュ特有のDirtyとCleanのフラグがあることである。Dirtyはキャッシュ内にデータが格納されているがHDD220に同一のデータが存在しない状態を示し、CleanはHDD220とキャッシュ内に同一のデータが格納されている状態を示す。DirtyからCleanへの変更はホストシステム100からのライト要求に対してHDD220でライト処理が完了した時に行われる。
図5で実施例の動作の概要を説明する。ディスクサブシステム200はホストシステム100との間でリードデータやライトデータのやりとりを行う。制御部210はホストシステム100からのライト要求において、受領したライトデータをライトキャッシュ240に格納した後にHDD220にライト指示を行う。また、ホストシステム100からのリード要求においては各管理テーブル235、236、241を参照しデータの格納箇所を割り出しライトキャッシュ240、リードキャッシュ230からデータを転送する。キャッシュ内にデータがない場合にはHDD220からリードキャッシュ内の揮発性メモリ231に格納してからホストシステム100にデータを転送する。
制御部210はホストシステム100からのライト要求やリード要求の処理を行うたびに各データ管理テーブル235、236、241へのアクセスを行う。本発明では、リードキャッシュ230を揮発性メモリ231とライト書き込み耐力の異なる2つの不揮発性メモリのSLC233とMLC234の3構成とし、管理テーブル236を使用して、各データのリードアクセス頻度307に応じてキャッシュ内でデータを段階的に移動させることでMLC234の書き換え耐力の消耗を緩和させることができる。
図6のフローを用いて、ホストシステム100からのリード要求に対するシーケンスを説明する。まず初めに、ホストシステム100からのリード要求を受領すると、ライトキャッシュ内の揮発性メモリの管理テーブル241を検索する(ステップ401)。具体的にはHDD220に対するホストシステム100からのリード要求のTag301、アドレスLBA302と合致するデータが管理テーブル241に登録されているか検索する。ここで、ステップ402で該当のデータがある場合にはホストシステム100へデータ転送する(ステップ403)。次に、該当のデータの管理テーブルのリードアクセス頻度307を加算する(ステップ404)。
ステップ402で該当のデータがない場合はリードキャッシュ内の揮発性メモリの管理テーブル235を検索する(ステップ405)。ここで、ステップ406で該当のデータがある場合にはホストシステム100へデータ転送する(ステップ403)。次に、該当のデータの管理テーブルのリードアクセス頻度307を加算する(ステップ404)。
ステップ406で該当のデータがない場合はリードキャッシュ内の不揮発性メモリの管理テーブル236を検索する(ステップ407)。SLC識別子304とMLC識別子305を参照してどちらに格納されているか確認する。ここで、ステップ408で該当のデータがある場合にはホストシステム100へデータ転送する(ステップ403)。次に、該当のデータの管理テーブルのリードアクセス頻度307を加算する(ステップ404)。
ステップ408で該当のデータがない場合はHDD220からリードキャッシュ230内の揮発性メモリ231にデータを格納し(ステップ409)、ホストシステム100へデータ転送する(ステップ410)。次にリードキャッシュ内の揮発性メモリ231のデータのStatusをUsedにセットし(ステップ411)、リードアクセス頻度307を加算する(ステップ404)。
次に、図7のフローを用いて、ライトキャッシュ内の揮発性メモリ240とリードキャッシュ内の揮発性メモリ231からリードキャッシュ内の不揮発性メモリ232にデータを移動させる処理について説明する。
まず初めに、ライトキャッシュ内の揮発性メモリの管理テーブル241を検索する(ステップ501)。管理テーブルの検索は一定時間間隔で行う。ステップ502で規定値回数以上の該当のデータがある場合はリードキャッシュ内の不揮発性メモリ232のSLC233にデータを移動し(ステップ503)、管理テーブル236のSLC233の当該データのStatus306をUsedとし、SLC識別子304をセットする(ステップ504)。
次にリードキャッシュ内の揮発性メモリの管理テーブル235を検索する(ステップ505)。ステップ506で規定値回数以上の該当のデータがある場合はリードキャッシュ内の不揮発性メモリ232のSLC233にデータを移動し(ステップ507)、管理テーブル236のSLC233の当該データのStatus306をUsedとし、SLC識別子304をセットし、リードキャッシュ内の揮発性メモリ231の管理テーブル235の当該データのStatus306をNot Usedにセットする(ステップ508)。
次にリードキャッシュ内の不揮発性メモリの管理テーブル236を検索する(ステップ509)。ステップ510で規定回数以上のSLC233のデータがある場合はリードキャッシュ内の不揮発性メモリ232のMLC234にデータを移動する(ステップ511)。次に、管理テーブル236のMLC234のデータのStatus306をUsedとし、MLC識別子305をセットし、管理テーブル236のリードキャッシュのSLC233のデータのStatus306をNot Usedにセットする(ステップ512)。
このようにキャッシュ内のデータのリードアクセス頻度307に応じて揮発性メモリ、SLC234、MLC234と段階的にデータの格納場所を変更することでリードアクセス頻度が高く、データが書き換えられることがないデータは下位のライト書き込み耐力の弱いMLC側に集約することができるためライト書き換え耐力の消耗を緩和させることが可能となる。
100 ホストシステム
200 ディスクサブシステム
210 制御部
211 RAM(Random Access Memory)
212 プロセッサ
213 ROM(Read Only Memory)
220 HDD
230 リードキャッシュ
231 リードキャッシュ内の揮発性メモリ
232 リードキャッシュ内の不揮発性メモリ
233 SLC(シングルレベルセルメモリ)
234 MLC(マルチレベルセルメモリ)
235 リードキャッシュ内の揮発性メモリのデータ管理テーブル
236 リードキャッシュ内不揮発性メモリのデータ管理テーブル
240 ライトキャッシュ
241 ライトキャッシュ内の揮発性メモリのデータ管理テーブル
301 Tag
302 アドレスLBA(Logical Block Address)
303 キャッシュアドレス
304 SLC識別子
305 MLC識別子
306 Status
307 リードアクセス頻度

Claims (2)

  1. ホストと、該ホストのデータを格納する記憶装置と、該記憶装置からの読み出しデータを格納するリードキャッシュと、前記記憶装置及び前記リードキャッシュを制御してホストからの要求を処理する制御部とを有する情報処理システムにおいて、前記リードキャッシュは、前記記憶装置からの読み出しデータが格納される揮発性メモリと、該揮発性メモリのデータがリードアクセス頻度に応じて移動して格納される第1の不揮発性メモリと、該第1の不揮発性メモリよりライト書き換え耐力が低く該第1の不揮発性メモリのデータがリードアクセス頻度に応じて移動して格納される第2の不揮発性メモリから成り、前記リードキャッシュは前記揮発性メモリを管理する第1の管理テーブルと前記第1及び第2の不揮発性メモリを管理する第2の管理テーブルを有し、前記制御部は前記ホストからのリード要求時に前記第1及び第2の管理テーブルを検索し、要求データがあった場合には該当メモリから読み出してホストに転送し、要求データがなかった場合には前記記憶装置から読み出して前記揮発性メモリに格納し、前記ホストに転送する情報処理システム。
  2. 前記第2の管理テーブルは当該テーブルに登録されたデータが前記第1の不揮発性メモリ又は前記第2の不揮発性メモリのいずれに格納されているかを示す識別子を有する請求項1記載の情報処理システム。
JP2013024000A 2013-02-12 2013-02-12 情報処理システム Expired - Fee Related JP5953245B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013024000A JP5953245B2 (ja) 2013-02-12 2013-02-12 情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013024000A JP5953245B2 (ja) 2013-02-12 2013-02-12 情報処理システム

Publications (2)

Publication Number Publication Date
JP2014153969A true JP2014153969A (ja) 2014-08-25
JP5953245B2 JP5953245B2 (ja) 2016-07-20

Family

ID=51575766

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013024000A Expired - Fee Related JP5953245B2 (ja) 2013-02-12 2013-02-12 情報処理システム

Country Status (1)

Country Link
JP (1) JP5953245B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109460183A (zh) * 2017-09-06 2019-03-12 三星电子株式会社 具有页位图的高效事务表
US10255182B2 (en) 2015-02-11 2019-04-09 Samsung Electronics Co., Ltd. Computing apparatus and method for cache management

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100042773A1 (en) * 2008-08-12 2010-02-18 Phison Electronics Corp. Flash memory storage system and data writing method thereof
US20110191523A1 (en) * 2010-02-04 2011-08-04 Jason Caulkins Priority Ordered Multi-Medium Solid-State Storage System and Methods for Use
JP2011204060A (ja) * 2010-03-26 2011-10-13 Nec Corp ディスク装置
WO2012002428A1 (ja) * 2010-07-01 2012-01-05 日本電気株式会社 記憶装置、解放優先順位決定方法およびプログラム
JP2012048361A (ja) * 2010-08-25 2012-03-08 Hitachi Ltd キャッシュを搭載した情報装置及びそれを用いた情報処理装置並びにプログラム
US20120203960A1 (en) * 2008-06-30 2012-08-09 Tetrick R Scott Apparatus and method for multi-level cache utilization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120203960A1 (en) * 2008-06-30 2012-08-09 Tetrick R Scott Apparatus and method for multi-level cache utilization
US20100042773A1 (en) * 2008-08-12 2010-02-18 Phison Electronics Corp. Flash memory storage system and data writing method thereof
US20110191523A1 (en) * 2010-02-04 2011-08-04 Jason Caulkins Priority Ordered Multi-Medium Solid-State Storage System and Methods for Use
JP2011204060A (ja) * 2010-03-26 2011-10-13 Nec Corp ディスク装置
WO2012002428A1 (ja) * 2010-07-01 2012-01-05 日本電気株式会社 記憶装置、解放優先順位決定方法およびプログラム
JP2012048361A (ja) * 2010-08-25 2012-03-08 Hitachi Ltd キャッシュを搭載した情報装置及びそれを用いた情報処理装置並びにプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10255182B2 (en) 2015-02-11 2019-04-09 Samsung Electronics Co., Ltd. Computing apparatus and method for cache management
CN109460183A (zh) * 2017-09-06 2019-03-12 三星电子株式会社 具有页位图的高效事务表
CN109460183B (zh) * 2017-09-06 2023-08-01 三星电子株式会社 具有页位图的高效事务表

Also Published As

Publication number Publication date
JP5953245B2 (ja) 2016-07-20

Similar Documents

Publication Publication Date Title
US10430084B2 (en) Multi-tiered memory with different metadata levels
KR102569783B1 (ko) 비순차적 구역 네임스페이스들
US9229653B2 (en) Write spike performance enhancement in hybrid storage systems
US20180018259A1 (en) Apparatus and method for low power low latency high capacity storage class memory
JP6018696B2 (ja) 半導体ストレージ
KR20210001898A (ko) 존 네임스페이스에 대한 존 형성
US10372382B2 (en) Methods and apparatus for read disturb detection based on logical domain
US9208101B2 (en) Virtual NAND capacity extension in a hybrid drive
CN106548789A (zh) 用于操作叠瓦式磁记录设备的方法和装置
US20170075809A1 (en) Systems and methods for managing cache of a data storage device
TW201011767A (en) NAND error management
CN110674056B (zh) 一种垃圾回收方法及装置
CN104854554A (zh) 储存转换层
JP2009163647A (ja) ディスクアレイ装置
US11016889B1 (en) Storage device with enhanced time to ready performance
US11061598B2 (en) Optimized handling of multiple copies in storage management
JP5953245B2 (ja) 情報処理システム
JP5594647B2 (ja) ストレージ装置及びその制御方法
CN102362263A (zh) Ssd控制器与ssd控制器的操作方法
US9785563B1 (en) Read command processing for data storage system based on previous writes
US11663136B2 (en) Storage capacity recovery source selection
Koltsidas et al. Spatial data management over flash memory
US11132140B1 (en) Processing map metadata updates to reduce client I/O variability and device time to ready (TTR)
Yang et al. Hybrid storage with disk based write cache
CN114730291A (zh) 具有分区的ssd的数据停放

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150831

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160613

R151 Written notification of patent or utility model registration

Ref document number: 5953245

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees