JPWO2017006675A1 - 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム - Google Patents
情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム Download PDFInfo
- Publication number
- JPWO2017006675A1 JPWO2017006675A1 JP2017527131A JP2017527131A JPWO2017006675A1 JP WO2017006675 A1 JPWO2017006675 A1 JP WO2017006675A1 JP 2017527131 A JP2017527131 A JP 2017527131A JP 2017527131 A JP2017527131 A JP 2017527131A JP WO2017006675 A1 JPWO2017006675 A1 JP WO2017006675A1
- Authority
- JP
- Japan
- Prior art keywords
- data
- storage medium
- storage
- processing
- rearrangement
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1004—Defragmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/7201—Logical to physical mapping or translation of blocks or pages
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)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を備える。
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
を含む。
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
をコンピュータに実行させる。
ホストコンピュータと、
記憶媒体と、
前記ホストコンピュータによる前記記憶媒体へのアクセスを制御する記憶制御装置と、
を備え、
前記記憶制御装置は、
前記ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を有する。
本発明の第1実施形態としての記憶制御装置100について、図1を用いて説明する。記憶制御装置100は、ホストコンピュータによる記憶媒体のアクセスを制御する装置である。
次に、本発明の第2実施形態に係る記憶制御装置を記憶制御部としてホストコンピュータ内に含む情報処理システムについて説明する。本実施形態に係る情報処理システムにおいては、記憶制御部が、ホストコンピュータのOS(Operating System)やアプリケーションプログラム(以下、アプリケーションと称す)の記憶媒体へのアクセス(ReadおよびWrite)における履歴情報から、一連のデータを書き込むWriteアクセスの終了を再配置処理とタイミングを選定して、記憶媒体における物理アドレス空間における記憶領域の断片化状態を推定する。そして、断片化状態があらかじめ定めた状態を超えている場合、断片化状態の領域をまとめて再配置することにより、断片化解消を実現する。
本実施形態の記憶制御方法を説明する前に、その前提となる記憶制御技術を説明する。
上記前提技術の課題を解決するため、第2実施形態乃至第5実施形態においては、SSDの内部で実行される、NANDフラッシュの記憶領域に対する内部処理の1つであるGCにおいて、回収対象のブロックから有効なデータを退避するための処理に伴う負荷を軽減し、SSDのアクセス性能の向上、長寿命化を図るための技術を提供する。
図2は、本実施形態に係る情報処理システム200の構成を示す図である。
図3Aは、本実施形態に係る記憶制御装置としての記憶制御部220の機能構成を示すブロック図である。
図3Bは、本実施形態に係る再配置開始部320の機能構成を示すブロック図である。
図4Aは、本実施形態に係る断片化状態管理テーブル303の構成を示す図である。断片化状態管理テーブル303は、記憶媒体240の現在の総Write量を管理する総Write量管理テーブル410と、格納処理の途中の各データに対してエントリを保持する格納エントリテーブル420と、を有する。
図4Bは、本実施形態に係る更新履歴管理テーブル305の構成を示す図である。
図4Cは、本実施形態に係る格納終了検出テーブル341の構成を示す図である。格納終了検出テーブル341は、タイミング選定部304において、断片化の度合いを評価して再配置を指示するタイミングを選定するために使用される。
図4Dは、本実施形態に係る断片化評価テーブル361の構成を示す図である。断片化評価テーブル361は、断片化評価部306において、タイミング選定部304が選定したタイミングで断片化の度合いを評価するために使用される。
図4Eは、本実施形態に係る再配置評価テーブル371の構成を示す図である。再配置評価テーブル371は、再配置指示部307において、タイミング選定部304が選定したタイミングで再配置を指示するか否かを判定するために使用される。
図5は、本実施形態に係る記憶制御部220を含むホストコンピュータ210のハードウェア構成を示すブロック図である。なお、図5においては、記憶制御部220はホストコンピュータ210のソフトウェア処理として図示するが、記憶制御部220を、ホストコンピュータ210とは独立したワンチップのコンピュータで実現してもよい。
図6は、本実施形態に係る記憶制御部220の処理手順を示すフローチャートである。このフローチャートは、図5のCPU510がRAM540を使用して実行し、図3Aおよび図3Bの機能構成部を実現する。
図7は、本実施形態に係るRead処理(S613)の手順を示すフローチャートである。図7は、図6のステップS613において、例えば、OSからRead要求を受け取り、要求されたデータを返す手順である。
図8Aおよび図8Bは、本実施形態に係るWrite処理(S623)の手順を示すフローチャートである。図8Aおよび図8Bは、例えば、図6のステップS623において、OSからWrite要求を受け取り、Writeキュー311に格納するまでの手順である。
図9Aおよび図9Bは、本実施形態に係る断片化制御処理(S633)の手順を示すフローチャートである。本実施形態に係る断片化制御処理は、各データに対する格納処理の終了を検出し、再配置処理が必要であるか判定を行い、再配置制御部330が再配置処理を開始する手順である。
次に、本発明の第3実施形態に係る記憶制御装置を記憶制御部としてホストコンピュータ内に含む情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態と比べると、記憶制御装置が断片化解消の再配置処理中に、ホストコンピュータ210で動作するソフトウェアやOSによる新たなWrite要求を受けた場合に、再配置処理を中止または中断するか否かを判定する点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
本実施形態に係る記憶制御装置としての記憶制御部1020の機能構成は、図3Aと同様である。しかしながら、本実施形態においては、再配置制御部330が再配置処理中に、ホストコンピュータ1210で動作するソフトウェアやOSによる新たなWrite要求を受けた場合に、再配置処理を中止または中断するか否かを判定する。なお、本実施形態において、再配置開始部320の構成は第2実施形態の構成に限定されず、所定の断片化条件で再配置の開始を指示する構成であればよい。
図10は、本実施形態に係る再配置制御部330の機能構成を示すブロック図である。
例えば、再配置制御部330は、図10に示すWrite要求待機制御部と、再配置処理部として機能するとも考えられる。この場合、Write要求待機制御部と再配置処理部との処理は以下のようになる。
図11Aは、本実施形態に係る再配置評価テーブル1051の構成を示す図である。再配置評価テーブル1051は、再配置処理評価部1005が、現在実行中の再配置処理の効果を評価するために使用される。なお、図11Aにおいて、図4Eと同様の要素には同じ参照番号を付して、説明を省略する。
図11Bは、本実施形態に係る優先処理判定テーブル1061の構成を示す図である。優先処理判定テーブル1061は、優先処理判定部1006が、Writeキュー311の最後の予測処理時刻と、現在実行中の再配置処理の効果とを参照して、現在実行中の再配置処理を維持するか、中止または中断するかを判定するために使用される。なお、優先処理判定テーブル1061には、Writeキュー311の最後の予測処理時刻の算出も示されている。
図12は、本実施形態に係る記憶制御部1020を含むホストコンピュータ1210のハードウェア構成を示すブロック図である。なお、図12において、図5と同様の構成要素には同じ参照番号を付して、説明は省略する。図12においては、第2実施形態において使用されるテーブルやモジュールは、表示を簡略化ないしは省略している。
図13Aおよび図13Bは、本実施形態に係る記憶制御部1020における再配置中のWrite要求に対する処理手順を示すフローチャートである。このフローチャートは、図12のCPU510がRAM1240を使用して実行し、図10の機能構成部を実現する。
次に、本発明の第4実施形態に係る記憶制御装置を記憶制御部としてホストコンピュータ内に含む情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態および第3実施形態と比べると、再配置処理の開始タイミングおよび再配置処理中のWrite要求処理を共に行なう点で異なる。その他の構成および動作は、第2実施形態や第3実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図14は、本実施形態に係る記憶制御装置としての記憶制御部1420の機能構成を示すブロック図である。なお、図14において、図3B、図10と同様の機能構成部には同じ参照番号を付して、説明は省略する。
次に、本発明の第5実施形態に係る記憶制御装置を記憶制御部としてホストコンピュータ内に含む情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態乃至第4実施形態と比べると、断片化が著しいと評価される領域へのWrite処理を代替するためのバッファを有する点で異なる。その他の構成および動作は、第2実施形態から第4実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図15は、本実施形態に係る情報処理システム1500の構成を示す図である。なお、図15において、図2と同様の機能構成部には同じ参照番号を付して、説明を省略する。
次に、本発明の第6実施形態に係る記憶制御装置を記憶制御部としてホストコンピュータ内に含む情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態乃至第5実施形態と比べると、記憶制御部が記憶媒体側にある点、あるいは、ネットワークを介してホストコンピュータの外部にある点で異なる。その他の構成および動作は、第2実施形態から第5実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
図16は、本実施形態に係る記憶制御部1643または1620を含む情報処理システム1600の構成を示す図である。なお、図16において、図2と同様の構成要素には同じ参照番号を付して、説明を省略する。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を備える記憶制御装置。
(付記2)
前記アクセスの性能を向上させる場合は前記Write要求の待機を指示し、前記アクセスの性能を向上させない場合は前記Write要求の実行を指示するWrite要求制御手段を、さらに備える付記1に記載の記憶制御装置。
(付記3)
前記データ再配置処理の完了を待って、待機させた前記Write要求の実行を再開したときの、最後尾にキューイングされたWrite要求が実行されるまでの遅延時間が第1閾値より短い場合に、前記アクセスの性能を向上させると評価する、付記1または2に記載の記憶制御装置。
(付記4)
前記データ再配置処理を中止または一時停止して前記Write要求を実行した場合の前記記憶媒体に対するWriteデータ量が、前記データ再配置処理の完了を待って、待機させた前記Write要求を実行した場合の前記データ再配置処理による前記記憶媒体の内部処理に伴うデータの移動量の削減期待値と、同じまたは少なくなる場合は、前記アクセスの性能を向上させないと評価する、付記1乃至3のいずれか1項に記載の記憶制御装置。
(付記5)
前記内部処理に伴うデータの移動量の削減期待値は、前記データ再配置処理を行なわなかった場合の、一連のデータのデータサイズと、前記一連のデータが断片化している度合いを考慮した前記内部処理により移動する回数との積とする、付記4に記載の記憶制御装置。
(付記6)
前記断片化している度合いは、前記一連のデータのサイズと、Writeアクセスの開始時から終了時までの間に、前記Writeアクセスとは別のWriteアクセスにより前記記憶媒体に対して書き込まれたデータのサイズと、に基づいて、算出される、付記5に記載の記憶制御装置。
(付記7)
前記内部処理は、ガベージコレクションを含む、付記4乃至6のいずれか1項に記載の記憶制御装置。
(付記8)
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
を含む記憶制御方法。
(付記9)
ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
をコンピュータに実行させる記憶制御プログラム。
(付記10)
ホストコンピュータと、
記憶媒体と、
前記ホストコンピュータによる前記記憶媒体へのアクセスを制御する記憶制御装置と、
を備え、
前記記憶制御装置は、
前記ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を有する、情報処理システム。
Claims (10)
- ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を備える記憶制御装置。 - 前記アクセスの性能を向上させる場合は前記Write要求の待機を指示し、前記アクセスの性能を向上させない場合は前記Write要求の実行を指示するWrite要求制御手段を、さらに備える請求項1に記載の記憶制御装置。
- 前記データ再配置処理の完了を待って、待機させた前記Write要求の実行を再開したときの、最後尾にキューイングされたWrite要求が実行されるまでの遅延時間が第1閾値より短い場合に、前記アクセスの性能を向上させると評価する、請求項1または2に記載の記憶制御装置。
- 前記データ再配置処理を中止または一時停止して前記Write要求を実行した場合の前記記憶媒体に対するWriteデータ量が、前記データ再配置処理の完了を待って、待機させた前記Write要求を実行した場合の前記データ再配置処理による前記記憶媒体の内部処理に伴うデータの移動量の削減期待値と、同じまたは少なくなる場合は、前記アクセスの性能を向上させないと評価する、請求項1乃至3のいずれか1項に記載の記憶制御装置。
- 前記内部処理に伴うデータの移動量の削減期待値は、前記データ再配置処理を行なわなかった場合の、一連のデータのデータサイズと、前記一連のデータが断片化している度合いを考慮した前記内部処理により移動する回数との積とする、請求項4に記載の記憶制御装置。
- 前記断片化している度合いは、前記一連のデータのサイズと、Writeアクセスの開始時から終了時までの間に、前記Writeアクセスとは別のWriteアクセスにより前記記憶媒体に対して書き込まれたデータのサイズと、に基づいて、算出される、請求項5に記載の記憶制御装置。
- 前記内部処理は、ガベージコレクションを含む、請求項4乃至6のいずれか1項に記載の記憶制御装置。
- ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
を含む記憶制御方法。 - ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始ステップと、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御ステップと、
をコンピュータに実行させる記憶制御プログラム。 - ホストコンピュータと、
記憶媒体と、
前記ホストコンピュータによる前記記憶媒体へのアクセスを制御する記憶制御装置と、
を備え、
前記記憶制御装置は、
前記ホストコンピュータが記憶媒体にアクセスする際に用いる論理アドレス空間における論理アドレス領域に対応するデータが、前記記憶媒体の内部で使用される物理アドレス空間において、複数の物理アドレス領域に断片化されて記憶されていると判定された断片化データに対して、前記記憶媒体の内部の連続した物理アドレス領域に書き込まれるように再配置するデータ再配置処理を開始する再配置開始手段と、
前記データ再配置処理の処理中に前記ホストコンピュータからWrite要求を受け取ったときに、前記データ再配置処理が前記記憶媒体へのアクセスの性能を向上させるか否かを評価して、前記アクセスの性能を向上させる場合は前記データ再配置処理の継続を指示し、前記アクセスの性能を向上させない場合は前記データ再配置処理の中止または中断を指示する再配置制御手段と、
を有する、情報処理システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015135003 | 2015-07-06 | ||
JP2015135003 | 2015-07-06 | ||
PCT/JP2016/066685 WO2017006675A1 (ja) | 2015-07-06 | 2016-06-03 | 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017006675A1 true JPWO2017006675A1 (ja) | 2018-04-19 |
JP6834955B2 JP6834955B2 (ja) | 2021-02-24 |
Family
ID=57686156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017527131A Active JP6834955B2 (ja) | 2015-07-06 | 2016-06-03 | 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US10592148B2 (ja) |
JP (1) | JP6834955B2 (ja) |
WO (1) | WO2017006675A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6403164B2 (ja) * | 2015-09-11 | 2018-10-10 | 東芝メモリ株式会社 | メモリシステム |
JP2018160195A (ja) * | 2017-03-23 | 2018-10-11 | 東芝メモリ株式会社 | メモリシステムおよび不揮発性メモリの制御方法 |
US10684965B2 (en) * | 2017-11-08 | 2020-06-16 | Advanced Micro Devices, Inc. | Method to reduce write responses to improve bandwidth and efficiency |
KR102426107B1 (ko) * | 2017-12-20 | 2022-07-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US11782637B2 (en) * | 2021-01-05 | 2023-10-10 | Red Hat, Inc. | Prefetching metadata in a storage system |
US11662932B2 (en) * | 2021-06-25 | 2023-05-30 | Western Digital Technologies, Inc. | Tiered storage system with defragmentation based on weighted flash fragmentation factor |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0981424A (ja) * | 1995-09-19 | 1997-03-28 | Nec Eng Ltd | 情報処理装置 |
US5937425A (en) | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
JP2005056245A (ja) | 2003-08-06 | 2005-03-03 | Brother Ind Ltd | ファイルアクセス管理方法、ファイルアクセス管理システム、プログラム |
US7562203B2 (en) * | 2006-09-27 | 2009-07-14 | Network Appliance, Inc. | Storage defragmentation based on modified physical address and unmodified logical address |
US20090254594A1 (en) * | 2008-04-02 | 2009-10-08 | Microsoft Corporation | Techniques to enhance database performance |
US8140740B2 (en) * | 2009-10-29 | 2012-03-20 | Hewlett-Packard Development Company, L.P. | Data defragmentation of solid-state memory |
US8788755B2 (en) * | 2010-07-01 | 2014-07-22 | Infinidat Ltd. | Mass data storage system and method of operating thereof |
US8639900B2 (en) | 2011-05-25 | 2014-01-28 | International Business Machines Corporation | Defragmentation of data storage pools |
-
2016
- 2016-06-03 US US15/742,056 patent/US10592148B2/en active Active
- 2016-06-03 WO PCT/JP2016/066685 patent/WO2017006675A1/ja active Application Filing
- 2016-06-03 JP JP2017527131A patent/JP6834955B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US10592148B2 (en) | 2020-03-17 |
WO2017006675A1 (ja) | 2017-01-12 |
US20180217926A1 (en) | 2018-08-02 |
JP6834955B2 (ja) | 2021-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6691669B2 (ja) | 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム | |
WO2017006675A1 (ja) | 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム | |
US10649890B2 (en) | Information processing system, storage control apparatus, storage control method, and storage control program | |
US8904061B1 (en) | Managing storage operations in a server cache | |
US20160162187A1 (en) | Storage System And Method For Processing Writing Data Of Storage System | |
US9507720B2 (en) | Block storage-based data processing methods, apparatus, and systems | |
US9182912B2 (en) | Method to allow storage cache acceleration when the slow tier is on independent controller | |
EP2665065A2 (en) | Electronic device employing flash memory | |
KR20140006299A (ko) | 낸드 플래시 메모리 기반의 저장부에 데이터 기록을 제어하는 방법 및 장치 | |
KR101017067B1 (ko) | 낸드 플래시 메모리를 위한 지역성 기반의 가비지 컬렉션기법 | |
WO2015039352A1 (zh) | 缓存数据的方法和存储系统 | |
JPWO2013186828A1 (ja) | 計算機システム及び制御方法 | |
CN110658980B (zh) | 数据处理方法及装置、存储系统 | |
WO2016002325A1 (ja) | 情報処理システム、情報処理方法、記憶制御装置およびその制御方法と制御プログラム | |
JP2021135538A (ja) | ストレージ制御装置及びストレージ制御プログラム | |
CN108334457B (zh) | 一种io处理方法及装置 | |
JP4765967B2 (ja) | 情報処理装置及び情報処理方法並びにプログラム | |
CN102622307B (zh) | 硬盘数据的操作方法和硬盘控制器 | |
WO2018008676A1 (ja) | 情報処理システム、キャッシュ容量配分方法、記憶制御装置、記憶制御方法、及び記録媒体 | |
US10007437B2 (en) | Management apparatus, storage system, method, and computer readable medium | |
JP6668785B2 (ja) | 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム | |
KR101426806B1 (ko) | 오브젝트 아이디에 기반하여 저장 매체에서의 영속화를 제어하는 방법, 그 컴퓨터 시스템 및 스토리지 시스템 | |
KR101412885B1 (ko) | 모드 설정 및 구분자를 이용하여 저장 매체에서의 영속화를 제어하는 방법 및 그 스토리지 시스템 | |
WO2017168690A1 (ja) | ストレージ装置、及び方法 | |
JPWO2016051593A1 (ja) | 計算機システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190806 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200317 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200707 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200715 |
|
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: 20210105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6834955 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |