JP6006431B2 - ストレージシステムおよびデータ記憶方法 - Google Patents
ストレージシステムおよびデータ記憶方法 Download PDFInfo
- Publication number
- JP6006431B2 JP6006431B2 JP2015541380A JP2015541380A JP6006431B2 JP 6006431 B2 JP6006431 B2 JP 6006431B2 JP 2015541380 A JP2015541380 A JP 2015541380A JP 2015541380 A JP2015541380 A JP 2015541380A JP 6006431 B2 JP6006431 B2 JP 6006431B2
- Authority
- JP
- Japan
- Prior art keywords
- logical
- capacity
- write
- storage
- usable
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7204—Capacity control, e.g. partitioning, end-of-life degradation
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)
- Microelectronics & Electronic Packaging (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
各物理記憶領域は、記憶されているデータの書換のためにデータが消去された場合に、書換回数が増え、且つ、空き物理記憶領域とされる。
媒体コントローラは、複数の論理記憶領域のうちのライト先論理記憶領域にいずれの物理記憶領域も割り当てられていない又はそのライト先論理記憶領域に割り当てられている物理記憶領域にライト対象データを記憶可能な空きが無い場合に、複数の物理記憶領域のうちのいずれかの空き物理記憶領域をライト先論理記憶領域に割り当て、割り当てた空き物理記憶領域にライト対象データを書き込む。
複数の論理記憶領域は、論理記憶容量のうちの使用可能容量と複数の物理記憶領域の書換頻度との関係に基づいて決定された使用可能論理領域群を含む。論理記憶容量は、複数の論理記憶領域の総容量である。使用可能領域群は、複数の論理記憶領域のうちライト先論理記憶領域とされ得る1以上の論理記憶領域である。使用可能容量は、複数の論理記憶領域のうちライト先論理記憶領域とされ得る1以上の論理記憶領域である使用可能論理領域群の容量である。
図1は、ストレージシステムの構成例を示す。
ストレージシステムは、ホスト計算機11と、管理計算機12と、ストレージ装置10とを備える。ホスト計算機11とストレージ装置10とは、例えば、SAN(Storage Area Network)13等の通信ネットワークを通じて接続されている。管理計算機12とストレージ装置10とは、例えば、所定の通信線15を通じて接続されている。
FMPK40は、FMPKコントローラ50と、複数のFMチップ51とを備える。
FMチップ51は、例えばNAND型のFMチップであり、FMコントローラ70と、複数のブロック71とを有する。そして、ブロック71は、複数のページ72で構成されている。FMチップ51は、その特性上、ページ単位でデータのリードおよびライトを行う必要がある。そして、FMチップ51は、その特性上、ブロック単位でデータの消去を行う必要がある。
次に、本実施例で示す3つのパターンの概要を述べる。
RAIDグループ101は、複数のFMPK40によって構成される。例えば、4つのFMPK40を用いて「3D+1P」のRAID5のRAIDグループ101を構成した場合、そのRAIDグループ101は、3つのFMPK40を合計した記憶容量を提供する(1つのFMPK40の記憶容量はパリティ分となる)。
ストレージコントローラ20は、RAIDグループ101を構成する際、管理計算機12に図5に示すようなGUI900を表示する。GUI900は、RAIDグループ101の使用可能容量を入力する入力領域901と、書換回数の増加率を表示する表示領域902とを有する。
ストレージコントローラ20は、RAIDグループ101によって構成された記憶領域を分割し、複数のLDEV110を構成することができる。例えば、ストレージコントローラ20は、図6に示すように、「3D+1P」のRAID5のRAIDグループ101によって構成された記憶領域を分割し、2つのLDEV(第1LDEV110、第2LDEV110)を構成する。ストレージコントローラ20は、LDEV110を構成する際、LDEV110の総記憶容量を指定することができる。ストレージコントローラ20は、LDEV110の「使用可能容量」をホスト計算機11に提供する。つまり、ホスト計算機11からは、LDEV110の「使用可能容量」が、LDEVの容量として見える。
仮想ボリュームは、シンプロビジョニングに従う仮想的な論理ボリュームであり、複数の仮想的な記憶領域(仮想チャンク)151で構成されている。ストレージコントローラ20は、図7に示すように、複数のRAIDグループ(第1RAIDグループ101及び第2RAIDグループ101)の記憶領域をまとめてプール100を構成する。プール100は、複数のチャンクから構成される。チャンクは、プール100に属するRAIDグループの記憶領域の内の使用可能容量の或る部分の領域と対応付けられている。つまり、チャンクは、余剰容量として確保された記憶領域には対応付けられない。
図8は、ストレージコントローラ20の有する機能およびデータの例を示す。
ストレージコントローラ20は、機能として、ライトI/Oプログラム211と、リードI/Oプログラム212とを有する。これらプログラムは、メモリ32上の所定のプログラム領域201に格納され、プロセッサ31により実行される。
ドライブ管理テーブル220は、ストレージ装置10の備える各ドライブの情報を有する。ドライブ管理テーブル220は、データ項目として、ドライブ番号221と、ドライブ種別222と、最大容量223と、使用可能容量224とを有する。
ドライブ種別222は、ドライブ番号221に対応するドライブの種別を示す情報である。
最大容量223は、ドライブ番号221に対応するドライブが提供可能な最大の論理容量を示す情報である。最大容量223は、基本的に、ドライブの有する記憶媒体の物理的な記憶容量に基づいて、不変的に決定される情報である。
使用可能容量224は、ドライブ番号221に対応するドライブにおいて使用可能な論理容量を示す情報である。使用可能容量は、後述する余剰容量の設定に基づいて変化し得る情報である。
プール管理テーブル240は、プール100の情報を有する。プール100は、RAIDグループ101によって構成される論理的な記憶領域(以下「RAID領域」という)の1以上の集合体として構成される。プール100は、後述する仮想ボリューム120を生成する場合に使用される。したがって、仮想ボリューム120を生成しない場合、プール管理テーブル240は、プール番号241を管理しなくてもよい。
RAIDグループ番号242は、RAIDグループ101を一意に識別可能な情報である。
RAIDレベル243は、RAIDグループ番号242に対応するRAIDグループのレベルを示す情報である。
RAID構成244は、RAIDグループ番号242に対応するRAIDグループの構成を示す情報である。
ドライブ番号245、最大容量246および使用可能容量247は、上記で説明したとおりの情報である。
チャンク管理テーブル300は、チャンクの情報を有する。チャンクとは、RAID領域の一部の領域を示す。チャンクは、仮想ボリューム120を生成する場合に使用される。
チャンク番号302は、RAID領域内でチャンクを一意に識別可能な情報である。
サイズ303は、チャンク番号302に対応するチャンクのサイズを示す情報である。
仮想ボリューム管理テーブル260は、仮想ボリューム120の情報を有する。仮想ボリューム管理テーブル260は、データ項目として、仮想ボリューム番号261と、プール番号262と、最大仮想容量263と、仮想チャンク番号264と、RAIDグループ番号265と、チャンク番号266と、書換頻度267とを有する。
プール番号262は、上記で説明したとおりの情報である。
最大仮想容量263は、仮想ボリューム番号261に対応する仮想ボリューム120に設定された最大容量を示す情報である。
仮想チャンク番号264は、仮想ボリューム番号261に対応する仮想ボリューム120を構成するチャンクを一意に識別可能な情報である。
RAIDグループ番号265、チャンク番号266および書換頻度267は、上記で説明したとおりの情報である。
ドライブ個別管理テーブル320は、ドライブ(例えば、FMPK40)の情報を有する。つまり、ドライブ個別管理テーブル320は、ドライブ毎に構成される。ドライブ個別管理テーブル320は、データ項目として、ドライブ番号321と、最大容量322と、使用可能容量323と、LBA(Logial Block Address)324と、LBA長325と、チャンク番号326とを有する。
LBA324は、ドライブ番号321に対応するドライブの記憶領域を構成する論理ブロックの先頭アドレスを示す情報である。
LBA長325は、LBA324に対応する論理ブロックのサイズ(長さ)を示す情報である。
チャンク番号326は、上記で説明したとおりの情報である。
図14は、FMPK40の有する機能およびデータの例を示す。
論理物理変換テーブル520は、データ項目として、LBA561と、論理ページ番号562と、論理ページサイズ563と、ステータス564と、ブロック番号565と、ページ番号566とを有する。
論理ページ番号562は、LBA561に対応する論理ページを一意に識別可能な情報である。
論理ページサイズ563は、論理ページ番号562に対応する論理ページのサイズを示す情報である。
ページ番号566は、論理ページ番号561に対応する物理的なページを一意に識別可能な情報である。
本処理は、図4に示すRAIDグループに余剰容量を設定した場合に対応する。
図16は、RAIDグループ作成処理の一例を示すフローチャートである。
本処理は、図6に示すLDEVに余剰容量を設定した場合に対応する。
図17は、LDEVの作成に関する処理例を示すフローチャートである。
FMPKコントローラ50は、必要な余剰容量を確保可能であるか否かを判定する(S231)。書換頻度「高」の場合に必要な余剰容量は、FMPK40に確保する使用可能容量の所定の割合(例えば30%)としてもよいし、ストレージコントローラ20から指定されてもよい。
本処理は、図7に示す仮想ボリュームに対するライト要求に基づいて余剰容量を設定する場合に対応する。
図19は、仮想ボリューム作成処理の一例を示すフローチャートである。
ストレージコントローラ20は、仮想ボリュームの容量および書換頻度の設定情報を受信する(S302)。
ストレージコントローラ20は、仮想ボリューム管理テーブル260に、新たに仮想ボリュームを登録し(S303)、当該処理を終了する(END)。
ストレージコントローラ20は、ホスト計算機11から仮想ボリュームに対するライト要求を受けると、先頭LBA、LBA長および書換頻度を含むチャンク割当コマンドを生成し、FMPK40へ送信する(S311)。ここで、書換頻度は、ライト要求を受けた仮想ボリュームの設定に対応する。
FMPKコントローラ50は、必要な余剰容量を確保可能であるか否かを判定する(S401)。書換頻度「高」の場合に必要な余剰容量は、チャンクのサイズの所定の割合(例えば30%)としてもよいし、ストレージコントローラ20から指定されてもよい。
ストレージコントローラ20は、仮想ボリュームを生成する。しかし、ストレージコントローラ20は、その仮想ボリュームに予め書換頻度を設定しない。そして、ストレージコントローラ20は、仮想ボリュームの仮想チャンク151に割り当てられたチャンク152毎に、ライト頻度を測定する。ストレージコントローラ20は、チャンク管理テーブル300において、測定したライト頻度が閾値を超えているチャンク152における書換頻度305を「高」とし、測定したライト頻度が閾値以下のチャンク152における書換頻度305を「低」とする。ストレージコントローラ20は、書換頻度305が「高」のチャンクの増加に従って、余剰容量を増加させる。
Claims (9)
- それぞれ書換回数に上限がある複数の物理記憶領域と、前記複数の物理記憶領域に対するデータのI/O(Input/Output)を制御する第1プロセッサとを有する記憶媒体と、
前記記憶媒体に接続された第2プロセッサとを備え、
各物理記憶領域は、記憶されているデータの書換のためにデータが消去された場合に、書換回数が増え、且つ、空き物理記憶領域とされ、
前記第2プロセッサは、
論理ボリュームをリード要求またはライト要求送信元に提供し、
前記論理ボリュームを構成する複数の論理記憶領域の総容量である論理記憶容量と、前記複数の論理記憶領域のうちのライト先とされ得る1以上の論理記憶領域である使用可能論理領域群の容量である使用可能容量と、を管理し、
前記論理ボリュームに対するライト頻度を測定し、
前記測定したライト頻度と所定の閾値とを比較し、
少なくとも前記比較した結果に基づき前記論理記憶容量のうちの前記使用可能容量を変化させ、
前記第1プロセッサは、
前記第2プロセッサから送信される前記使用可能容量を設定する設定コマンドに基づいて、前記複数の論理記憶領域から前記使用可能論理領域群を決定し、
前記複数の論理記憶領域と前記使用可能論理領域群とを対応付けて管理し、
前記使用可能論理記憶領域群のうちのライト先論理記憶領域に対していずれの物理記憶領域も割り当てられていない場合、又は、前記ライト先論理記憶領域に対して割り当てられている物理記憶領域にライト対象データを記憶可能な空きが無い場合、前記複数の物理記憶領域のうちのいずれかの空き物理記憶領域を前記ライト先論理記憶領域に対して割り当て、
前記割り当てた空き物理記憶領域に対して前記ライト対象データを書き込む
ストレージシステム。 - 前記測定したライト頻度が前記所定の閾値以上の場合、前記論理記憶容量のうちの前記使用可能容量を減少させ、
前記測定したライト頻度が前記所定の閾値以下の場合、前記論理記憶容量のうちの前記使用可能容量を増加させる
請求項1に記載のストレージシステム。 - 前記設定コマンドには、前記論理記憶容量に対する前記使用可能容量の割合が含まれており、
前記第1プロセッサは、前記設定コマンドに含まれる割合に従って、前記使用可能論理領域群を決定する
請求項1に記載のストレージシステム。 - 前記第2プロセッサは、
前記論理ボリュームの容量の入力を受領すると、
前記入力された論理ボリュームの容量を使用可能容量とした場合の、物理記憶領域の書換回数の最大値に関する情報を算出し、
前記算出した情報を出力する
請求項1に記載のストレージシステム。 - 前記第2プロセッサを管理する管理計算機をさらに備え、
前記管理計算機は、
前記論理ボリュームの容量の入力を受領すると、
前記入力された論理ボリュームの容量を使用可能容量とした場合の、物理記憶領域の書換回数の最大値に関する情報を算出し、
前記算出した情報を出力する
請求項1に記載のストレージシステム。 - それぞれ書換回数に上限がある複数の物理記憶領域と、前記複数の物理記憶領域に対するデータのI/O(Input/Output)を制御する第1プロセッサとを有する記憶媒体と、
前記記憶媒体に接続された第2プロセッサとを備え、
各物理記憶領域は、記憶されているデータの書換のためにデータが消去された場合に、書換回数が増え、且つ、空き物理記憶領域とされ、
前記第2プロセッサは、
Thin Provisioningに従う仮想ボリュームをリード要求またはライト要求送信元に提供し、
前記仮想ボリュームに割り当て可能な複数の論理記憶領域の総容量である論理記憶容量と、前記複数の論理記憶領域のうちのライト先とされ得る1以上の論理記憶領域である使用可能論理領域群の容量である使用可能容量と、を管理し、
前記仮想ボリュームに対するライト頻度を測定し、
前記測定したライト頻度と所定の閾値とを比較し、
少なくとも前記比較した結果に基づき前記論理記憶容量のうちの前記使用可能容量を変化させ、
前記第1プロセッサは、
前記第2プロセッサから送信される割当コマンドに基づいて、前記複数の論理記憶領域から前記使用可能論理領域群を決定し、
前記複数の論理記憶領域と前記使用可能論理領域群とを対応付けて管理し、
前記使用可能論理記憶領域群のうちのライト先論理記憶領域に対していずれの物理記憶領域も割り当てられていない場合、又は、前記ライト先論理記憶領域に対して割り当てられている物理記憶領域にライト対象データを記憶可能な空きが無い場合、前記複数の物理記憶領域のうちのいずれかの空き物理記憶領域を前記ライト先論理記憶領域に対して割り当て、
前記割り当てた空き物理記憶領域に対して前記ライト対象データを書き込む
ストレージシステム。 - 前記測定したライト頻度が前記所定の閾値以上の場合、前記論理記憶容量のうちの前記使用可能容量を減少させ、
前記測定したライト頻度が前記所定の閾値以下の場合、前記論理記憶容量のうちの前記使用可能容量を増加させる
請求項6に記載のストレージシステム。 - 前記割当コマンドには、前記仮想ボリュームに対するライト頻度に関する情報が含まれており、
前記第1プロセッサは、前記割当コマンドに含まれるライト頻度に関する情報に従って、前記使用可能論理領域群を決定する
請求項6に記載のストレージシステム。 - それぞれ書換回数に上限がある複数の物理記憶領域と、前記複数の物理記憶領域に対するデータのI/O(Input/Output)を制御する第1プロセッサとを有する記憶媒体と、
前記記憶媒体に接続された第2プロセッサと
を備えたストレージ装置において、
各物理記憶領域は、記憶されているデータの書換のためにデータが消去された場合に、書換回数が増え、且つ、空き物理記憶領域とされ、
前記第2プロセッサが、
論理ボリュームをリード要求またはライト要求送信元に提供し、
前記論理ボリュームを構成する複数の論理記憶領域の総容量である論理記憶容量と、前記複数の論理記憶領域のうちのライト先とされ得る1以上の論理記憶領域である使用可能論理領域群の容量である使用可能容量と、を管理し、
前記論理ボリュームに対するライト頻度を測定し、
前記測定したライト頻度と所定の閾値とを比較し、
少なくとも前記比較した結果に基づき前記論理記憶容量のうちの前記使用可能容量を変化させ、
前記第1プロセッサが、
前記第2プロセッサから送信される設定コマンドに基づいて、前記複数の論理記憶領域から前記使用可能論理領域群を決定し、
前記複数の論理記憶領域と前記使用可能論理領域群とを対応付けて管理し、
前記使用可能論理記憶領域群のうちのライト先論理記憶領域に対していずれの物理記憶領域も割り当てられていない場合、又は、前記ライト先論理記憶領域に対して割り当てられている物理記憶領域にライト対象データを記憶可能な空きが無い場合、前記複数の物理記憶領域のうちのいずれかの空き物理記憶領域を前記ライト先論理記憶領域に対して割り当て、
前記割り当てた空き物理記憶領域に対して前記ライト対象データを書き込む
データ記憶方法。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2013/077590 WO2015052811A1 (ja) | 2013-10-10 | 2013-10-10 | ストレージシステムおよびデータ記憶方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP6006431B2 true JP6006431B2 (ja) | 2016-10-12 |
| JPWO2015052811A1 JPWO2015052811A1 (ja) | 2017-03-09 |
Family
ID=52812658
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015541380A Expired - Fee Related JP6006431B2 (ja) | 2013-10-10 | 2013-10-10 | ストレージシステムおよびデータ記憶方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US9817768B2 (ja) |
| JP (1) | JP6006431B2 (ja) |
| WO (1) | WO2015052811A1 (ja) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10445229B1 (en) | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
| US9652376B2 (en) | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
| US11249652B1 (en) | 2013-01-28 | 2022-02-15 | Radian Memory Systems, Inc. | Maintenance of nonvolatile memory on host selected namespaces by a common memory controller |
| US9654411B2 (en) | 2013-08-27 | 2017-05-16 | Vmware, Inc. | Virtual machine deployment and management engine |
| US9823881B2 (en) * | 2013-12-23 | 2017-11-21 | Vmware, Inc. | Ensuring storage availability for virtual machines |
| US9542118B1 (en) | 2014-09-09 | 2017-01-10 | Radian Memory Systems, Inc. | Expositive flash memory control |
| US9921910B2 (en) * | 2015-02-19 | 2018-03-20 | Netapp, Inc. | Virtual chunk service based data recovery in a distributed data storage system |
| WO2016181528A1 (ja) * | 2015-05-13 | 2016-11-17 | 株式会社日立製作所 | ストレージ装置 |
| US20170116080A1 (en) * | 2015-05-29 | 2017-04-27 | International Business Machines Corporation | Requesting avoidance/preference of which dispersed storage units to use on a write or retrieval request |
| US10552058B1 (en) | 2015-07-17 | 2020-02-04 | Radian Memory Systems, Inc. | Techniques for delegating data processing to a cooperative memory controller |
| JP6403162B2 (ja) | 2015-07-23 | 2018-10-10 | 東芝メモリ株式会社 | メモリシステム |
| US20170177224A1 (en) * | 2015-12-21 | 2017-06-22 | Oracle International Corporation | Dynamic storage transitions employing tiered range volumes |
| WO2018116392A1 (ja) * | 2016-12-21 | 2018-06-28 | 株式会社日立製作所 | 情報処理システム、及び、情報処理方法 |
| JP6681512B2 (ja) | 2017-02-20 | 2020-04-15 | 株式会社日立製作所 | ストレージシステム及び記憶制御方法 |
| KR102513941B1 (ko) | 2018-06-19 | 2023-03-27 | 현대자동차주식회사 | 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법 |
| US11137915B2 (en) * | 2019-06-27 | 2021-10-05 | International Business Machines Corporation | Dynamic logical storage capacity adjustment for storage drives |
| US11175984B1 (en) | 2019-12-09 | 2021-11-16 | Radian Memory Systems, Inc. | Erasure coding techniques for flash memory |
| US12066985B2 (en) | 2020-05-01 | 2024-08-20 | EMC IP Holding Company LLC | Token-based offload data transfer with synchronous replication |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005196609A (ja) * | 2004-01-09 | 2005-07-21 | Matsushita Electric Ind Co Ltd | 情報記録フォーマットおよび情報記録媒体 |
| US20090287878A1 (en) * | 2008-05-14 | 2009-11-19 | Hitachi, Ltd. | Storage apparatus using flash memory |
| JP2012058770A (ja) * | 2010-09-03 | 2012-03-22 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
| WO2013046464A1 (ja) * | 2011-09-30 | 2013-04-04 | 株式会社日立製作所 | 不揮発半導体記憶媒体を有するストレージシステム |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5216463B2 (ja) | 2008-07-30 | 2013-06-19 | 株式会社日立製作所 | ストレージ装置、その記憶領域管理方法及びフラッシュメモリパッケージ |
| US8412909B2 (en) * | 2009-04-08 | 2013-04-02 | Samsung Electronics Co., Ltd. | Defining and changing spare space and user space in a storage apparatus |
| US8214580B2 (en) * | 2009-10-23 | 2012-07-03 | International Business Machines Corporation | Solid state drive with adjustable drive life and capacity |
-
2013
- 2013-10-10 JP JP2015541380A patent/JP6006431B2/ja not_active Expired - Fee Related
- 2013-10-10 US US14/773,116 patent/US9817768B2/en active Active
- 2013-10-10 WO PCT/JP2013/077590 patent/WO2015052811A1/ja not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005196609A (ja) * | 2004-01-09 | 2005-07-21 | Matsushita Electric Ind Co Ltd | 情報記録フォーマットおよび情報記録媒体 |
| US20080046675A1 (en) * | 2004-01-09 | 2008-02-21 | Takanori Okada | Information Recording Medium |
| US20090287878A1 (en) * | 2008-05-14 | 2009-11-19 | Hitachi, Ltd. | Storage apparatus using flash memory |
| JP2009301525A (ja) * | 2008-05-14 | 2009-12-24 | Hitachi Ltd | フラッシュメモリを用いたストレージ装置 |
| JP2012058770A (ja) * | 2010-09-03 | 2012-03-22 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
| WO2013046464A1 (ja) * | 2011-09-30 | 2013-04-04 | 株式会社日立製作所 | 不揮発半導体記憶媒体を有するストレージシステム |
Also Published As
| Publication number | Publication date |
|---|---|
| US9817768B2 (en) | 2017-11-14 |
| JPWO2015052811A1 (ja) | 2017-03-09 |
| WO2015052811A1 (ja) | 2015-04-16 |
| US20160019159A1 (en) | 2016-01-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6006431B2 (ja) | ストレージシステムおよびデータ記憶方法 | |
| US11474702B2 (en) | Storage device that writes data from a host during garbage collection | |
| JP6073471B2 (ja) | ストレージ装置 | |
| US10162536B2 (en) | Storage apparatus and storage control method | |
| US9323667B2 (en) | System and method for managing trim operations in a flash memory system using mapping tables and block status tables | |
| US8832371B2 (en) | Storage system with multiple flash memory packages and data control method therefor | |
| JP6062060B2 (ja) | ストレージ装置、ストレージシステム、及びストレージ装置制御方法 | |
| US10360144B2 (en) | Storage apparatus and non-volatile memory device including a controller to selectively compress data based on an update frequency level | |
| US10628088B2 (en) | Computer system | |
| JP6007332B2 (ja) | ストレージシステム及びデータライト方法 | |
| JP2019086970A (ja) | メモリシステムおよび制御方法 | |
| US10049042B2 (en) | Storage device, semiconductor memory device, and method for controlling same | |
| US20160004459A1 (en) | Storage system and storage control method | |
| JP2018142240A (ja) | メモリシステム | |
| JP2017162260A (ja) | メモリ制御装置、ストレージ装置、ストレージ装置の制御プログラム、及び、ストレージ装置の制御方法 | |
| JPWO2018142622A1 (ja) | 計算機 | |
| CN104360956B (zh) | 一种数据拷贝方法及装置 | |
| US10915441B2 (en) | Storage system having non-volatile memory device | |
| JPWO2018150561A1 (ja) | ストレージシステム及び記憶制御方法 | |
| JP6276208B2 (ja) | メモリシステム及びプログラム | |
| JP6313242B2 (ja) | メモリシステム及びプログラム | |
| WO2018002999A1 (ja) | 記憶デバイス及びストレージ装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150617 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160607 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160729 |
|
| 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: 20160823 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160908 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6006431 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |