JP2018181207A - ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム - Google Patents

ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム Download PDF

Info

Publication number
JP2018181207A
JP2018181207A JP2017083903A JP2017083903A JP2018181207A JP 2018181207 A JP2018181207 A JP 2018181207A JP 2017083903 A JP2017083903 A JP 2017083903A JP 2017083903 A JP2017083903 A JP 2017083903A JP 2018181207 A JP2018181207 A JP 2018181207A
Authority
JP
Japan
Prior art keywords
data
meta
address
storage
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.)
Pending
Application number
JP2017083903A
Other languages
English (en)
Inventor
直浩 武田
Naohiro Takeda
直浩 武田
典秀 久保田
Norihide Kubota
典秀 久保田
與志仁 紺田
Yoshihito Konta
與志仁 紺田
祐輔 倉澤
Yusuke Kurasawa
祐輔 倉澤
利夫 菊池
Toshio Kikuchi
利夫 菊池
勇至 田中
Yuji Tanaka
勇至 田中
真理乃 梶山
Marino Kajiyama
真理乃 梶山
悠介 鈴木
Yusuke Suzuki
悠介 鈴木
祥成 篠▲崎▼
Yoshinari Shinozaki
祥成 篠▲崎▼
岳志 渡辺
Takashi Watanabe
岳志 渡辺
紀之 矢須
Noriyuki Yasu
紀之 矢須
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017083903A priority Critical patent/JP2018181207A/ja
Priority to US15/952,292 priority patent/US20180307615A1/en
Publication of JP2018181207A publication Critical patent/JP2018181207A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)

Abstract

【課題】ユーザデータユニットが無効であるか否かの判定にかかる処理の負荷を低減すること。
【解決手段】論物メタ管理部24aが、データの論理アドレスと物理アドレスを対応付け、論理アドレスから物理アドレスへの変換に用いられる論物メタの情報を管理する。そして、データ処理管理部25が、ユーザデータユニットをストレージ3に追記及びまとめ書きを行うとともに、データが更新された場合に更新前データを含むユーザデータユニットの参照論理アドレスを無効化することなく保持する。
【選択図】図8

Description

本発明は、ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラムに関する。
昨今、ストレージ装置の記憶媒体は、HDD(Hard Disk Drive)からよりアクセススピードの速いSSD(Solid State Drive)等のフラッシュメモリに移行している。SSDでは、メモリセルへの上書きを直接行うことはできず、例えば1MB(メガバイト)の大きさのブロックの単位でデータの消去が行われた後にデータの書き込みが行われる。
このため、ブロック内の一部のデータを更新する場合には、ブロック内の他のデータを退避し、ブロックを消去した後に、退避したデータと更新データを書き込むことが行われるため、ブロックの大きさに較べて小さいデータを更新する処理が遅い。また、SSDには書き込み回数の上限がある。このため、SSDでは、ブロックの大きさに較べて小さいデータの更新をできるだけ避けることが望ましい。そこで、ブロック内の一部のデータを更新する場合に、ブロック内の他のデータと更新データを新たなブロックに書き込むことが行われる。
なお、フラッシュメモリにおいて、物理的な単位領域内の管理情報格納領域に格納された論理アドレスの延べ数である使用度と、有効な論理アドレスの数である重複度との差が既定値を超える物理的な単位領域を初期状態に戻す再生処理を実行する技術がある。この技術によれば、フラッシュメモリの長寿命化を図りながら、フラッシュメモリを有効活用することがきる。
また、選択された1以上のコピー元物理領域内の1以上の生存データを、選択されたコピー先物理領域の空き領域の先頭からシーケンシャルに、ストリップ単位又はストライプ単位に書き込む技術がある。この技術において、書込み対象データのサイズがストリップ単位又はストライプ単位の書込みに必要なサイズに満たない場合、書込み対象データに対してパディングを行うことで、ガベージコレクション(GC:Garbage Collection)性能を向上することができる。
特開2009−87021号公報 国際公開第2016/181481号
ブロックのような物理領域の一部のデータを更新する場合に、物理領域の他のデータと更新データを新たな物理領域に書き込むこととすると、更新前のデータを記憶する古い物理領域に対してGCを行う必要がある。しかしながら、ある物理領域が無効であるか否かを判定するためには、論理アドレスを物理アドレスに変換する変換情報を全て調査して、当該物理領域を参照している論理領域が存在するかを判定する必要があり、判定処理の負荷が大きいという問題がある。
本発明は、1つの側面では、物理領域が無効であるか否かの判定にかかる処理の負荷を低減することを目的とする。
1つの態様では、ストレージ制御装置は、書き込み回数に制限を有する記憶媒体を用いる記憶装置を制御する。ストレージ制御装置は、変換情報管理部と書込処理部とを有する。変換情報管理部は、ストレージ装置を使用する情報処理装置がデータの識別に用いる論理アドレスと記憶媒体に該データが記憶された位置を示す物理アドレスとを対応付けるアドレス変換情報を管理する。書込処理部は、データを記憶媒体に追記及びまとめ書きを行うとともに、該データが更新された場合に、更新前のデータに対応付けられた参照論理アドレスを更新前のデータとともに記憶媒体上に維持する。
1つの側面では、本発明は、物理領域が無効であるか否かの判定にかかる処理の負荷を低減することができる。
図1は、実施例に係るストレージ装置の記憶構成を示す図である。 図2は、RAIDユニットのフォーマットを示す図である。 図3は、参照メタのフォーマットを示す図である。 図4は、論物メタのフォーマットを示す図である。 図5は、実施例に係るメタメタ方式を説明するための図である。 図6は、メタアドレスのフォーマットを示す図である。 図7は、ドライブグループにおけるRAIDユニットの配置例を示す図である。 図8は、実施例に係る情報処理システムの構成を示す図である。 図9は、プール単位でのGCポーリングを説明するための図である。 図10は、有効なデータの追記書きを説明するための図である。 図11は、RU管理テーブルのフォーマットを示す図である。 図12は、参照メタを用いたデータ有効性の判定方法を説明するための図である。 図13は、機能部間の関係を示す図である。 図14は、GCポーリングのフローを示すフローチャートである。 図15は、無効データ率を算出する処理のシーケンスを示す図である。 図16は、ユーザデータユニットの有効チェック処理のフローを示すフローチャートである。 図17は、論物メタの有効チェック処理のフローを示すフローチャートである。 図18は、実施例に係るストレージ制御プログラムを実行するストレージ制御装置のハードウェア構成を示す図である。
以下に、本願の開示するストレージ制御装置、ストレージ制御方法及びストレージ制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
まず、実施例に係るストレージ装置のデータ管理方法について図1〜図7を用いて説明する。図1は、実施例に係るストレージ装置の記憶構成を示す図である。図1に示すように、実施例に係るストレージ装置は、RAID(Redundant Arrays of Inexpensive Disks)6ベースのプール3aとして複数のSSD3dを管理する。また、実施例に係るストレージ装置は、複数のプール3aを有する。
プール3aには、仮想化プールと階層化プールがある。仮想化プールは1つのティア3bを有し、階層化プールは2つ以上のティア3bを有する。ティア3bは、1つ以上のドライブグループ3cを有する。ドライブグループ3cは、SSD3dのグループであり、6〜24台のSSD3dを有する。例えば、1つのストライプを記憶する6台のSSD3dのうち、3台はデータ記憶用に用いられ、2台はパリティ記憶用に用いられ、1台はホットスペア用に用いられる。なお、ドライブグループ3cは、25台以上のSSD3dを有してよい。
実施例に係るストレージ装置は、RAIDユニットの単位でデータを管理する。シン・プロビジョニングの物理割当の単位は、一般に固定サイズのチャンク単位で行われ、1チャンクは1RAIDユニットに該当する。以降の説明では、チャンクをRAIDユニットと呼称する。RAIDユニットは、プール3aから割り当てられる24MBの連続な物理領域である。実施例に係るストレージ装置は、データをRAIDユニット単位でメインメモリ上にバッファリングし、追記型でSSD3dに書き込む。
図2は、RAIDユニットのフォーマットを示す図である。図2に示すように、RAIDユニットには、複数のユーザデータユニット(データログとも呼ばれる。)が含まれる。ユーザデータユニットには、参照メタと圧縮データが含まれる。参照メタは、SSD3dに書き込まれるデータの管理データである。
圧縮データは、SSD3dに書き込まれるデータが圧縮されたものである。データの大きさは最大8KB(キロバイト)である。圧縮率を50%とすると、実施例に係るストレージ装置は、1つのRAIDユニットに、例えば24MB÷4.5KB≒5461個のデータユニットが溜まると、RAIDユニットをSSD3dに書き込む。
図3は、参照メタのフォーマットを示す図である。図3(a)に示すように、参照メタには、SB(Super Block)と最大60個の参照先の参照LUN(Logical Unit Number:論理ユニット番号)/LBA(Logical Block Address:論理ブロックアドレス)情報を書き込むことができる記憶容量の領域が確保されている。SBのサイズは32B(バイト)であり、参照メタのサイズは512B(バイト)である。各参照LUN/LBA情報のサイズは8B(バイト)である。参照メタは、重複排除により新しい参照先ができると、参照先が追加となり、参照メタが更新される。ただし、データの更新により参照先がなくなった場合にも参照LUN/LBA情報は削除されないで保持される。無効になった参照LUN/LBA情報はガベージコレクションにより回収される。
図3(b)に示すように、SBには、4BのHeader Lengthと、20BのHash Valueと、2BのNext Offset Block Countが含まれる。Header Lengthは、参照メタの長さである。Hash Valueは、データのハッシュ値であり、重複排除のために用いられる。Next Offset Block Countは、次に格納する参照LUN/LBA情報の位置である。なお、Reservedは、将来の拡張用である。
図3(c)に示すように、参照LUN/LBA情報には、2BのLUNと、6BのLBAが含まれる。
また、実施例に係るストレージ装置は、論物変換情報である論物メタを用いてデータの論理アドレスと物理アドレスの対応関係を管理する。図4は、論物メタのフォーマットを示す図である。実施例に係るストレージ装置は、8KBのデータ毎に、図4に示した情報を管理する。
図4に示すように、論物メタの大きさは32Bである。論物メタには、2BのLUNと、6BのLBAがデータの論理アドレスとして含まれる。また、論物メタには、2BのCompression Byte Countが、圧縮されたデータのバイト数として含まれる。
また、論物メタには、2BのNode Noと、1BのStorage Pool Noと、4BのRAID Unit Noと、2BのRAID Unit Offset LBAが物理アドレスとして含まれる。
Node Noは、データユニットを記憶するRAIDユニットが属するプール3aを担当するストレージ制御装置を識別するための番号である。なお、ストレージ制御装置については後述する。Storage Pool Noは、データユニットを記憶するRAIDユニットが属するプール3aを識別するための番号である。RAID Unit Noは、データユニットを記憶するRAIDユニットを識別するための番号である。RAID Unit Offset LBAは、データユニットのRAIDユニット内でのアドレスである。
実施例に係るストレージ装置は、RAIDユニットの単位で論物メタを管理する。実施例に係るストレージ装置は、論物メタをRAIDユニット単位でメインメモリ上にバッファリングし、バッファに例えば786432エントリ溜まると、論物メタを追記型でSSD3dにまとめ書きする。このため、実施例に係るストレージ装置は、論物メタがある場所を示す情報をメタメタ方式で管理する。
図5は、実施例に係るメタメタ方式を説明するための図である。図5(d)に示すように、(1)、(2)、(3)、・・・で表されるデータユニットは、RAIDユニットの単位でSSD3dにまとめ書きされる。そして、図5(c)に示すように、データユニットの位置を示す論物メタも、RAIDユニットの単位でSSD3dにまとめ書きされる。
そして、実施例に係るストレージ装置は、図5(a)に示すように、論物メタの位置をLUN/LBA毎にメタアドレスを用いてメインメモリ上で管理する。ただし、図5(b)に示すように、メインメモリから溢れたメタアドレス情報は、外部キャッシュ(2次キャッシュ)される。ここで、外部キャッシュとは、SSD3dでのキャッシュである。
図6は、メタアドレスのフォーマットを示す図である。図6に示すように、メタアドレスの大きさは8Bである。メタアドレスには、Storage Pool Noと、RAID Unit Offset LBAと、RAID Unit Noとが含まれる。メタアドレスは、論物データのSSD3dでの格納位置を示す物理アドレスである。
Storage Pool Noは、論物メタを記憶するRAIDユニットが属するプール3aを識別するための番号である。RAID Unit Offset LBAは、論物メタのRAIDユニット内のアドレスである。RAID Unit Noは、論物メタを記憶するRAIDユニットを識別するための番号である。
512個のメタアドレスがメタアドレスページ(4KB)として管理され、メタアドレスページの単位でメインメモリ上にキャッシングされる。また、メタアドレス情報は、RAIDユニットの単位で例えばSSD3dの先頭から記憶される。
図7は、ドライブグループ3cにおけるRAIDユニットの配置例を示す図である。図7に示すように、メタアドレスを記憶するRAIDユニットは、先頭に配置される。図7では、番号が「0」〜「12」のRAIDユニットが、メタアドレスを記憶するRAIDユニットである。メタアドレスの更新があった場合は、メタアドレスを記憶するRAIDユニットは上書き保存される。
論物メタを記憶するRAIDユニット及びユーザデータユニットを記憶するRAIDユニットは、それぞれのバッファがいっぱいになると順番にドライブグループに書き出される。図7では、ドライブグループにおいて、番号が「13」、「17」、「27」、「40」、「51」、「63」及び「70」のRAIDユニットが、論物メタを記憶するRAIDユニットであり、その他のRAIDユニットが、ユーザデータユニットを記憶するRAIDユニットである。
実施例に係るストレージ装置は、メタメタ方式によって最低限の情報をメインメモリに保持し、論物メタとデータユニットをSSD3dに追記及びまとめ書きすることでSSD3dへの書き込み回数を削減することができる。
次に、実施例に係る情報処理システムの構成について説明する。図8は、実施例に係る情報処理システムの構成を示す図である。図8に示すように、実施例に係る情報処理システム1は、ストレージ装置1aとサーバ1bとを有する。ストレージ装置1aは、サーバ1bが使用するデータを記憶する装置である。サーバ1bは、情報処理などの業務を行う情報処理装置である。ストレージ装置1aとサーバ1bとの間は、FC(Fibre Channel)及びiSCSI(Internet Small Computer System Interface)で接続される。
ストレージ装置1aは、ストレージ装置1aを制御するストレージ制御装置2とデータを記憶するストレージ(記憶装置)3とを有する。ここで、ストレージ3は、複数台の記憶装置(SSD)3dの集まりである。
なお、図8では、ストレージ装置1aは、ストレージ制御装置#0及びストレージ制御装置#1で表される2台のストレージ制御装置2を有するが、ストレージ装置1aは、3台以上のストレージ制御装置2を有してよい。また、図8では、情報処理システム1は、1台のサーバ1bを有するが、情報処理システム1は、2台以上のサーバ1bを有してよい。
ストレージ制御装置2は、ストレージ3を分担して管理し、1つ以上のプール3aを担当する。ストレージ制御装置2は、上位接続部21と、I/O制御部22と、重複管理部23と、メタ管理部24と、データ処理管理部25と、デバイス管理部26とを有する。
上位接続部21は、FCドライバ及びiSCSIドライバとI/O制御部22との間の情報の受け渡しを行う。I/O制御部22は、キャッシュメモリ上のデータを管理する。重複管理部23は、データ重複排除/復元の制御を行うことで、ストレージ装置1a内に格納されているユニークなデータを管理する。
メタ管理部24は、メタアドレス及び論物メタを管理する。また、メタ管理部24は、メタアドレス及び論物メタを用いて、仮想ボリュームにおけるデータの識別に用いる論理アドレスとSSD3dにおけるデータが記憶された位置を示す物理アドレスの変換処理を行う。
メタ管理部24は、論物メタ管理部24aとメタアドレス管理部24bとを有する。論物メタ管理部24aは、論理アドレスと物理アドレスとを対応付けるアドレス変換情報に関連する論物メタを管理する。論物メタ管理部24aは、論物メタのSSD3dへの書き込み、及び、論物メタのSSD3dからの読み出しをデータ処理管理部25に依頼する。論物メタ管理部24aは、メタアドレスを用いて論物メタの記憶場所を特定する。
メタアドレス管理部24bは、メタアドレスを管理する。メタアドレス管理部24bは、メタアドレスの外部キャッシュ(2次キャッシュ)への書き込み、及び、外部キャッシュからのメタアドレスの読み出しをデバイス管理部26に依頼する。
データ処理管理部25は、ユーザデータを連続的なユーザデータユニットで管理し、RAIDユニットの単位でSSD3dに追記及びまとめ書きを行う。また、データ処理管理部25は、データの圧縮解凍、参照メタの生成を行う。ただし、データ処理管理部25は、データが更新された場合に、古いデータに対応するユーザデータユニットに含まれる参照メタの更新を行うことなく、参照メタを維持する。
また、データ処理管理部25は、論物メタをRAIDユニットの単位でSSD3dに追記及びまとめ書きを行う。論物メタの書き込みでは、1小ブロック(512B)に論物メタの16エントリが追記書きされるため、データ処理管理部25は、同一小ブロック内にLUNとLBAが同じものが存在しないように管理する。
データ処理管理部25は、同一小ブロックにLUNとLBAが同じものが存在しないように管理することで、RAIDユニット番号とRAIDユニット内LBAにより、LUNとLBAを検索することができる。なお、データの消去単位である1MBのブロックと区別するため、ここでは512Bのブロックを小ブロックと呼ぶ。
また、メタ管理部24から論物メタの読み出しを要求されると、データ処理管理部25は、メタ管理部24に指定された小ブロックから対象のLUNとLBAを検索して応答する。
データ処理管理部25は、メインメモリ上のバッファであるライトバッファにライトデータを溜め、一定の閾値を超えるとSSD3dに書き出す。データ処理管理部25は、プール3aの物理スペースを管理し、RAIDユニットの配置を行う。デバイス管理部26は、RAIDユニットのストレージ3への書き込みを行う。
データ処理管理部25は、プール3a単位でガベージコレクション(GC:Garbage Collection)をポーリングする。図9は、プール3a単位でのGCポーリングを説明するための図である。図9では、プール#0、プール#1、プール#2で表される3つのプール3aに対して、それぞれ対応するGCポーリングであるGCポーリング#1、GCポーリング#2、GCポーリング#3が行われる。また、図9では、各プール3aはティア3bを1つ有する。各ティア3bは複数のドライブグループ3cを有し、各ドライブグループ3cは複数のRAIDユニットを有する。
データ処理管理部25は、ユーザデータユニットと論物メタを対象としてGCを行う。データ処理管理部25は、プール3a毎に例えば100ms間隔でGCをポーリングする。また、データ処理管理部25は、各RAIDユニットに対してスレッドを生成することで、複数のRAIDユニットに対して並列にGCを行う。生成されるスレッドの数を以下では多重度と呼ぶ。ポーリング間隔は、GCによるI/O性能への影響を最小限にするように決められる。多重度は、I/O性能への影響と領域枯渇とのバランスに基づいて決められる。
データ処理管理部25は、RAIDユニットのデータをリードバッファに読み込み、ユーザデータユニット又は論物メタ毎にデータが有効か否かをチェックして、有効なデータのみをライトバッファに追記書きし、ストレージ3にまとめ書きする。ここで、有効なデータとは使用中のデータであり、無効なデータとは使用されていないデータである。
図10は、有効なデータの追記書きを説明するための図である。図10では、RAIDユニットは、ユーザデータユニット用のRAIDユニットである。図10に示すように、データ処理管理部25は、RU#0で表されるRAIDユニットをリードバッファに読み込み、ユーザデータユニット毎にデータが有効か否かをチェックし、有効なデータのみをライトバッファに追記書きする。
データ処理管理部25は、RAIDユニットがユーザデータユニット用であるか論物メタ用であるかを、RU管理テーブルを用いて管理する。図11(a)は、RU管理テーブルのフォーマットを示す。図11(a)に示すように、RU管理テーブルでは、RAIDユニット毎の情報が4BのRAID Unit Management Listとして管理される。
図11(b)は、RAID Unit Management Listのフォーマットを示す。図11(b)に示すように、RAID Unit Management Listには、1BのUsage、1BのStatus、1BのNodeが含まれる。
Usageは、RAIDユニットがユーザデータユニット用であるか論物メタ用であるかGC管轄外であるかを示す。デフォルト値は「GC管轄外」であり、RAIDユニットがユーザデータユニット用に獲得された時に、「ユーザデータユニット」が設定され、RAIDユニットが論物メタ用に獲得された時に、「論物メタ」に設定される。また、RAIDユニットが解放されると「GC管轄外」に設定される。
Statusは、RAIDユニットの割り当て状態を示し、「未割当」、「割当済」、「書込み済」、「GC中」がある。デフォルト値は「未割当」である。「未割当」は、RAIDユニットの解放時に設定される。「割当済」は、RAIDユニットの獲得時に設定される。「書込み済」は、RAIDユニットのライト時に設定される。「GC中」は、GC開始時に設定される。
Nodeは、RAIDユニットを担当するストレージ制御装置2を識別するための番号である。Nodeは、RAIDユニットの獲得時に設定される。
また、データ処理管理部25は、他のストレージ制御装置2のデータ処理管理部25と通信を行う。また、データ処理管理部25は、RAIDユニットに含まれるユーザデータユニットが有効であるか否かを参照メタを用いて判定することにより無効データ率を計算する。そして、データ処理管理部25は、無効データ率が閾値(例えば50%)以上のRAIDユニットに対してGCを行う。
図12は、参照メタを用いたデータ有効性の判定方法を説明するための図である。図12は、(1)、(2)、(3)、(4)で表されるデータがストレージ3に記憶された状態で、(2)で表されるデータが(5)で表されるデータで上書きされた場合を示す。また、(3)と(4)のユーザデータユニットは同じである。実線の太い矢印は、参照論理アドレスが指す先を示す。ここで、参照論理アドレスとは、参照メタに含まれる論理アドレスである。
図12に示すように、(2)は(5)で上書きされて無効となっているが、データを無効化する無効化ライトが行われないため、かって(2)を参照していた参照論理アドレスの情報が(2)の参照メタに残されている。したがって、データ処理管理部25は、全ての参照論理アドレスについて論物メタで対応付けられた物理アドレスが全て(2)の物理アドレスと異なれば(2)は無効であると判定できる。
図12では、(2)のメタアドレスは(5)のメタアドレスで上書きされているため、(2)の参照論理アドレスに論物メタで対応付けられる物理アドレスは(5)のユーザデータユニットの物理アドレスであり、(2)のユーザデータユニットの物理アドレスと異なる。したがって、データ処理管理部25は、(2)を無効であると判定する。
図13は、機能部間の関係を示す図である。図13に示すように、重複管理部23とメタ管理部24との間では、論物メタの取得と更新が行われる。重複管理部23とデータ処理管理部25との間では、ユーザデータユニットのライトバック(writeback)とステージング(staging)が行われる。ここで、ライトバックとは、ストレージ3へのデータの書き込みであり、ステージングとは、ストレージ3からのデータの読み出しである。
メタ管理部24とデータ処理管理部25との間では、論物メタのライト(Write)とリード(Read)、ユーザデータユニット及び論物メタが有効か無効かの判定が行われる。データ処理管理部25とデバイス管理部26との間では、追記データのストレージリードとストレージライトが行われる。メタ管理部24とデバイス管理部26との間では、外部キャッシュのストレージリードとストレージライトが行われる。デバイス管理部26とストレージ3との間では、ストレージリードとストレージライトが行われる。
次に、GCポーリングのフローについて説明する。図14は、GCポーリングのフローを示すフローチャートである。図14に示すように、データ処理管理部25は、初期化(ステップS1)の後、1つのプール3aのティア3b毎、DG(ドライブグループ)3c毎、RU(RAIDユニット)毎にGCパトロールを起動する(ステップS2)ことで、ポーリングを繰り返す。
データ処理管理部25は、ユーザデータユニット用のRAIDユニットについては、多重度の数のパトロールスレッドを生成して並列にGCの処理を行う。一方、論物メタ用のRAIDユニットについては、データ処理管理部25は、1つのパトロールスレッドを生成してGCの処理を行う。なお、データ処理管理部25は、ユーザデータユニット用のRAIDユニットに対するパトロールスレッドと論物メタ用のRAIDユニットに対するパトロールスレッドが同時に動作しないように排他制御する。
そして、データ処理管理部25は、全ティア3bに対する処理を終了すると、ポーリング間隔が100msとなるようにGCをスリープする(ステップS3)。なお、図14の処理は、各プール3aについて行われる。
パトロールスレッドは、RAIDユニットの無効データ率を計算し、無効データ率が閾値以上のRAIDユニットについてGC処理を行う。ここで、GC処理とは、RAIDユニットをリードバッファに読み込んで有効データだけをライトバッファに書き込む等の処理である。
次に、無効データ率を算出する処理のシーケンスについて説明する。図15は、無効データ率を算出する処理のシーケンスを示す図である。なお、図15において、ノードは、ストレージ制御装置2である。また、リソース部30は、上位接続部21とI/O制御部22の間に位置し、SSD3dのノードへの割り当て等を行う。
図15に示すように、データ処理管理部25は、リードバッファを獲得する(ステップt1)。そして、データ処理管理部25は、RU(RAIDユニット)のリードをデバイス管理部26に依頼し(ステップt2)、応答としてRUを受け取る(ステップt3)。そして、データ処理管理部25は、ユーザデータユニットを1つ選択し、選択したユーザデータユニットの参照メタに含まれる参照LUN/LBA情報を指定してリソース部30に担当ノードの取得を依頼し(ステップt4)、応答として担当ノードを取る(ステップt5)。
そして、データ処理管理部25は、担当ノードが自ノードの場合、I/O排他ロックの取得をメタ管理部24に依頼し(ステップt6)、応答を受け取る(ステップt7)。そして、データ処理管理部25は、ユーザデータユニットの有効チェックをメタ管理部24に依頼し(ステップt8)、チェック結果を受け取る(ステップt9)。
一方、担当ノードが自ノードでない場合、データ処理管理部25は、担当ノードに対してノード間通信によりI/O排他ロックの取得を依頼し(ステップt10)、担当ノードのデータ処理管理部25が担当ノードのメタ管理部24にI/O排他ロックの取得を依頼する(ステップt11)。そして、担当ノードのメタ管理部24が応答し(ステップt12)、担当ノードのデータ処理管理部25が依頼元のノードに応答する(ステップt13)。
そして、データ処理管理部25は、担当ノードに対してノード間通信によりユーザデータユニットの有効チェックを依頼し(ステップt14)、担当ノードのデータ処理管理部25が担当ノードのメタ管理部24にユーザデータユニットの有効チェックを依頼する(ステップt15)。そして、担当ノードのメタ管理部24が応答し(ステップt16)、担当ノードのデータ処理管理部25が依頼元のノードに応答する(ステップt17)。
そして、データ処理管理部25は、担当ノードが自ノードの場合、メタ管理部24にI/O排他ロックの解放を依頼し(ステップt18)、メタ管理部24から応答を受け取る(ステップt19)。一方、担当ノードが自ノードでない場合、データ処理管理部25は、担当ノードに対してノード間通信によりI/O排他ロックの解放を依頼し(ステップt20)、担当ノードのデータ処理管理部25が担当ノードのメタ管理部24にI/O排他ロックの解放を依頼する(ステップt21)。そして、担当ノードのメタ管理部24が応答し(ステップt22)、担当ノードのデータ処理管理部25が依頼元のノードに応答する(ステップt23)。
データ処理管理部25は、ステップt4〜ステップt23の処理を参照メタのエントリ数分繰り返す。そして、データ処理管理部25は、無効データ率を更新する(ステップt24)。なお、1つのユーザデータユニットについて、参照メタに含まれる参照LUN/LBA情報が全て無効である場合にユーザデータユニットは無効であり、参照メタに含まれる参照LUN/LBA情報のうち1つでも有効である場合には、ユーザデータユニットは有効である。そして、データ処理管理部25は、ステップt4〜ステップt24の処理を5461回繰り返す。
このように、データ処理管理部25は、参照メタに含まれる全ての論理アドレスについてメタ管理部24にユーザデータユニットの有効チェックを依頼することで、各ユーザデータユニットの有効性を判定することができる。
次に、ユーザデータユニットの有効チェック処理のフローについて説明する。図16は、ユーザデータユニットの有効チェック処理のフローを示すフローチャートである。なお、論物メタの情報の一部は、メインメモリ上にキャッシュされている。図16に示すように、データ処理管理部25は、ステップS11〜ステップS17の処理を参照メタのエントリ分繰り返す。
すなわち、データ処理管理部25は、ユーザデータユニットの参照LUN/LBA情報からキャッシュ上の論物メタを検索し、論物メタがあるか否かを判定する(ステップS11)。そして、データ処理管理部25は、論物メタがある場合には、ステップS15に進む。
一方、キャッシュ上に論物メタがない場合には、データ処理管理部25は、参照LUN/LBA情報に参照論理アドレスからメタアドレスを取得し(ステップS12)、メタアドレスは有効か否かを判定する(ステップS13)。そして、メタアドレスが有効でない場合には、データ処理管理部25は、ステップS17に進む。
一方、メタアドレスが有効である場合には、データ処理管理部25は、メタアドレスから論物メタを取得し(ステップS14)、論物メタに含まれる物理アドレスとユーザデータユニットの物理アドレスが同一であるか否かを判定する(ステップS15)。
そして、データ処理管理部25は、論物メタに含まれる物理アドレスとユーザデータユニットの物理アドレスが同一である場合には、有効と判定し(ステップS16)、同一でない場合には、無効と判定する(ステップS17)。なお、データ処理管理部25は、参照メタのエントリ分の全ての参照論理アドレスについて無効と判定した場合に、ユーザデータユニットを無効と判定し、参照論理アドレスのうち1つでも有効と判定した場合には、ユーザデータユニットを有効と判定する。
このように、データ処理管理部25は、参照論理アドレスを用いてユーザデータユニットの有効チェックを行うことで、ユーザデータユニットの有効チェックの処理負荷を低減することができる。
次に、論物メタの有効チェック処理のフローについて説明する。図17は、論物メタの有効チェック処理のフローを示すフローチャートである。図17に示すように、データ処理管理部25は、論物メタに含まれるLUNとLBAに対応するメタアドレスを取得し(ステップS21)、有効なメタアドレスを取得したか否かを判定する(ステップS22)。
そして、有効なメタアドレスを取得した場合には、データ処理管理部25は、メタアドレスと論物メタの物理アドレスが一致するか否かを判定する(ステップS23)。そして、データ処理管理部25は、両者が一致する場合には、論物メタを有効と判定する(ステップS24)。
一方、両者が一致しない場合、あるいは、ステップS22において有効なメタアドレスを取得しなかった場合には、データ処理管理部25は、論物メタを無効と判定する(ステップS25)。
このように、データ処理管理部25は、メタアドレスを用いて論物データの有効チェックを行うことで、無効になった論物メタを特定することができる。
上述してきたように、実施例では、論物メタ管理部24aが、データの論理アドレスと物理アドレスを対応付ける論物メタの情報を管理する。そして、データ処理管理部25が、ユーザデータユニットをストレージ3に追記及びまとめ書きを行うとともに、データが更新された場合に更新前データを含むユーザデータユニットの参照論理アドレスを無効化することなく保持する。したがって、ストレージ制御装置2は、参照論理アドレスを用いてユーザデータユニットの有効チェック処理の負荷を低減することができる。
また、実施例では、データ処理管理部25は、ユーザデータユニットに含まれる参照論理アドレスに論物メタにより対応付けられた物理アドレスとユーザデータユニットの物理アドレスが一致するか否かを判定する。そして、データ処理管理部25は、両者が一致する場合には、ユーザデータユニットは有効であると判定し、一致しない場合には、ユーザデータユニットは無効であると判定する。したがって、ストレージ制御装置2は、参照論理アドレスを用いてユーザデータユニットの有効チェックを行うことができる。
また、実施例では、メタアドレス管理部24bが、メタアドレスを管理する。そして、データ処理管理部25は、論物メタの物理アドレスと、論物メタに含まれる論理アドレスに対応付けられたメタアドレスが一致するか否かを判定する。そして、データ処理管理部25は、両者が一致する場合には、論物メタを有効であると判定し、一致しない場合には、論物メタを無効であると判定する。したがって、ストレージ制御装置2は、論物メタについても有効であるか否かを判定することができる。
また、実施例では、論物メタに含まれる論理アドレスに対応付けられるメタアドレスがない場合には、論物メタを無効であると判定する。したがって、ストレージ制御装置2は、削除されたデータに関する論物メタを無効と判定することができる。
また、実施例では、データ処理管理部25は、ユーザデータユニットについて自装置が担当するユーザデータユニットであるか否かを判定し、自装置が担当するユーザデータユニットでない場合には、該ユーザデータユニットを担当するストレージ制御装置にユーザデータユニットの有効チェックを依頼する。したがって、ストレージ制御装置2は、担当外のユーザデータユニットについても有効チェックを行うことができる。
なお、実施例では、ストレージ制御装置2について説明したが、ストレージ制御装置2が有する構成をソフトウェアによって実現することで、同様の機能を有するストレージ制御プログラムを得ることができる。そこで、ストレージ制御プログラムを実行するストレージ制御装置2のハードウェア構成について説明する。
図18は、実施例に係るストレージ制御プログラムを実行するストレージ制御装置2のハードウェア構成を示す図である。図18に示すように、ストレージ制御装置2は、メモリ41と、プロセッサ42と、ホストI/F43と、通信I/F44と、接続I/F45とを有する。
メモリ41は、プログラムやプログラムの実行途中結果などを記憶するRAM(Random Access Memory)である。プロセッサ42は、メモリ41からプログラムを読み出して実行する処理装置である。
ホストI/F43は、サーバ1bとのインタフェースである。通信I/F44は、他のストレージ制御装置2と通信するためのインタフェースである。接続I/F45は、ストレージ3とのインタフェースである。
そして、プロセッサ42において実行されるストレージ制御プログラムは、可搬記録媒体51に記憶され、メモリ41に読み込まれる。あるいは、ストレージ制御プログラムは、通信インタフェース44を介して接続されたコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてメモリ41に読み込まれる。
また、実施例では、SSD3dを不揮発性記憶媒体として用いる場合について説明したが、本発明はこれに限定されるものではなく、SSD3dと同様なデバイス特性を有する他の不揮発性記憶媒体を用いる場合にも同様に適用することができる。
1 情報処理システム
1a ストレージ装置
1b サーバ
2 ストレージ制御装置
3 ストレージ
3a プール
3b ティア
3c ドライブグループ
3d SSD
21 上位接続部
22 I/O制御部
23 重複管理部
24 メタ管理部
24a 論物メタ管理部
24b メタアドレス管理部
25 データ処理管理部
26 デバイス管理部
30 リソース部
41 メモリ
42 プロセッサ
43 ホストI/F
44 通信I/F
45 接続I/F
51 可搬記録媒体

Claims (7)

  1. 書き込み回数に制限を有する記憶媒体を用いる記憶装置を制御するストレージ制御装置において、
    前記記憶装置を使用する情報処理装置がデータの識別に用いる論理アドレスと前記記憶媒体に該データが記憶された位置を示す物理アドレスとを対応付けるアドレス変換情報を管理する変換情報管理部と、
    データを前記記憶媒体に追記及びまとめ書きを行うとともに、該データが更新された場合に、更新前のデータに対応付けられた参照論理アドレスを前記更新前のデータとともに前記記憶媒体上に維持する書込処理部と
    を有することを特徴とするストレージ制御装置。
  2. 前記書込処理部は、参照論理アドレスに前記アドレス変換情報によって対応付けられた物理アドレスが該データの物理アドレスと一致しない場合に、該データは無効データであってガベージコレクションの対象であると判定することを特徴とする請求項1に記載のストレージ制御装置。
  3. 前記変換情報管理部により管理されるアドレス変換情報が前記記憶媒体に追記及びまとめ書きされた位置を示す物理アドレスをメタアドレスとして前記論理アドレスと対応付けて管理する変換情報位置管理部をさらに有し、
    前記書込処理部は、前記アドレス変換情報を前記記憶媒体に追記及びまとめ書きし、該アドレス変換情報が前記記憶媒体に追記及びまとめ書きされた位置を示す物理アドレスと、該アドレス変換情報に含まれる論理アドレスに対応付けられたメタアドレスが一致しない場合に、該アドレス変換情報は無効であってガベージコレクションの対象であると判定することを特徴とする請求項2に記載のストレージ制御装置。
  4. 前記書込処理部は、前記アドレス変換情報に含まれる論理アドレスに対応付けられるメタアドレスがない場合には、該アドレス変換情報は無効であってガベージコレクションの対象であると判定することを特徴とする請求項3に記載のストレージ制御装置。
  5. 前記書込処理部は、自装置が担当するデータであるか否かを判定し、自装置が担当するデータでない場合には、該データを担当するストレージ制御装置に該データが有効であるか否かの判定を依頼し、有効でないとの応答を受け取ると、ガベージコレクションの対象であると判定することを特徴とする請求項2、3又は4に記載のストレージ制御装置。
  6. 書き込み回数に制限を有する記憶媒体を用いる記憶装置を制御するストレージ制御装置によるストレージ制御方法において、
    前記記憶装置を使用する情報処理装置がデータの識別に用いる論理アドレスと前記記憶媒体に該データが記憶された位置を示す物理アドレスとを対応付けるアドレス変換情報を管理し、
    データを前記記憶媒体に追記及びまとめ書きを行うとともに、該データが更新された場合に、更新前のデータに対応付けられた参照論理アドレスを前記更新前のデータとともに前記記憶媒体上に維持する
    ことを特徴とするストレージ制御方法。
  7. 書き込み回数に制限を有する記憶媒体を用いる記憶装置を制御するストレージ制御装置が有するコンピュータにより実行されるストレージ制御プログラムにおいて、
    前記記憶装置を使用する情報処理装置がデータの識別に用いる論理アドレスと前記記憶媒体に該データが記憶された位置を示す物理アドレスとを対応付けるアドレス変換情報を管理し、
    データを前記記憶媒体に追記及びまとめ書きを行うとともに、該データが更新された場合に、更新前のデータに対応付けられた参照論理アドレスを前記更新前のデータとともに前記記憶媒体上に維持する
    処理を前記コンピュータに実行させることを特徴とするストレージ制御プログラム。
JP2017083903A 2017-04-20 2017-04-20 ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム Pending JP2018181207A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017083903A JP2018181207A (ja) 2017-04-20 2017-04-20 ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム
US15/952,292 US20180307615A1 (en) 2017-04-20 2018-04-13 Storage control apparatus and storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017083903A JP2018181207A (ja) 2017-04-20 2017-04-20 ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム

Publications (1)

Publication Number Publication Date
JP2018181207A true JP2018181207A (ja) 2018-11-15

Family

ID=63853915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017083903A Pending JP2018181207A (ja) 2017-04-20 2017-04-20 ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム

Country Status (2)

Country Link
US (1) US20180307615A1 (ja)
JP (1) JP2018181207A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6897248B2 (ja) * 2017-04-06 2021-06-30 富士通株式会社 更新反映プログラム、更新反映方法及び更新反映装置
KR102585883B1 (ko) * 2018-09-18 2023-10-10 에스케이하이닉스 주식회사 메모리 시스템의 동작 방법 및 메모리 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5026213B2 (ja) * 2007-09-28 2012-09-12 株式会社日立製作所 ストレージ装置及びデータ重複排除方法
WO2016181481A1 (ja) * 2015-05-12 2016-11-17 株式会社日立製作所 ストレージシステムおよび記憶制御方法
US9804787B2 (en) * 2015-11-03 2017-10-31 Samsung Electronics Co., Ltd. Mitigating GC effect in a raid configuration
TWI579693B (zh) * 2016-04-29 2017-04-21 群聯電子股份有限公司 映射表載入方法、記憶體控制電路單元與記憶體儲存裝置

Also Published As

Publication number Publication date
US20180307615A1 (en) 2018-10-25

Similar Documents

Publication Publication Date Title
US10866743B2 (en) Storage control device using index indicating order of additional writing of data, storage control method using index indicating order of additional writing of data, and recording medium recording program using index indicating order of additional writing of data
US8788755B2 (en) Mass data storage system and method of operating thereof
US20140189203A1 (en) Storage apparatus and storage control method
US20140195725A1 (en) Method and system for data storage
CN108604165B (zh) 存储装置
JP5816303B2 (ja) フラッシュメモリを含むストレージシステム、及び記憶制御方法
JP6677740B2 (ja) ストレージシステム
US20160274792A1 (en) Storage apparatus, method, and program
JPWO2015008356A1 (ja) ストレージコントローラ、ストレージ装置、ストレージシステム
WO2015162758A1 (ja) ストレージシステム
US11086562B2 (en) Computer system having data amount reduction function and storage control method
JP5944502B2 (ja) 計算機システム及び制御方法
US8935304B2 (en) Efficient garbage collection in a compressed journal file
US20180307440A1 (en) Storage control apparatus and storage control method
US20190243758A1 (en) Storage control device and storage control method
US9720608B2 (en) Storage system
JP2020071583A (ja) データ管理装置、データ管理方法、及びデータ管理プログラム
US11288006B2 (en) Storage system and volume copying method where changes to address conversion table is rolled back
JP2020112972A (ja) ストレージ制御装置およびストレージ制御プログラム
JP2018181207A (ja) ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム
US20180307419A1 (en) Storage control apparatus and storage control method
US10853257B1 (en) Zero detection within sub-track compression domains
US10740250B2 (en) Storage apparatus
US11144445B1 (en) Use of compression domains that are more granular than storage allocation units
US11579786B2 (en) Architecture utilizing a middle map between logical to physical address mapping to support metadata updates for dynamic block relocation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190423

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191015