JP6255893B2 - ストレージ制御装置、およびストレージ制御プログラム - Google Patents
ストレージ制御装置、およびストレージ制御プログラム Download PDFInfo
- Publication number
- JP6255893B2 JP6255893B2 JP2013220787A JP2013220787A JP6255893B2 JP 6255893 B2 JP6255893 B2 JP 6255893B2 JP 2013220787 A JP2013220787 A JP 2013220787A JP 2013220787 A JP2013220787 A JP 2013220787A JP 6255893 B2 JP6255893 B2 JP 6255893B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- queue
- data
- write
- data size
- 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; 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
-
- 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
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/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/0661—Format or protocol conversion arrangements
-
- 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/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
[第1の実施形態]
まず、第1の実施形態のストレージ制御装置について図1を用いて説明する。図1は、第1の実施形態のストレージ制御装置の構成の一例を示す図である。
次に、第2の実施形態のストレージシステムと、ストレージディスクアレイ装置のハードウェア構成について図2を用いて説明する。図2は、第2の実施形態のストレージシステムの構成例と、ストレージディスクアレイ装置のハードウェア構成例を示す図である。
ストレージシステム10は、1以上のサーバ11と、サーバ11と通信可能に接続する1以上のストレージディスクアレイ装置20とを含んで構成される。ストレージディスクアレイ装置20は、複数のHDD31(31a,31b,・・・,31n)を収容するDE30と接続する。HDD31は、記憶装置の1つであり、4K対応のHDD(512バイトセクタ Emulation)である。
以上のようなハードウェア構成によって、第2の実施形態のCM21(ストレージディスクアレイ装置20)の処理機能を実現することができる。なお、第1の実施形態に示したストレージ制御装置1も、図示したCM21と同様のハードウェアにより実現することができる。
CM21は、HDD31へのコマンド(たとえば、SCSI(Small Computer System Interface)コマンド)の発行および応答を制御するモジュールとしてドライバ26を有する。ドライバ26は、プロセッサ22が所要のプログラムを実行することで実現する。ドライバ26は、メモリ23上にI/O発行待ちキュー27を用意する。ドライバ26は、キャッシュメモリ23aを介してコマンドを受け取り、I/O発行待ちキュー27にコマンドをキューイングする。ドライバ26は、HDD31へのコマンド発行ができる場合に、I/O発行待ちキュー27からコマンドをデキューしてDE30(HDD31)にコマンドを発行する。また、ドライバ26は、DE30(HDD31)から応答があった場合にキャッシュメモリ23aを介して上位装置に応答する。
図5は、ストレージディスクアレイ装置20がHDD31に4kバイトのライトコマンド(Write(=4k))、4kバイト未満のライトコマンド(Write(≠4k))、およびリードコマンド(Read)を順に発行したことを示す。
コマンド振分処理は、ストレージディスクアレイ装置20が受け付けたコマンドを、通常キュー28またはアンアラインキュー29に振り分けてキューイングする処理である。また、コマンド振分処理は、所定条件が成立した場合に、アンアラインキュー29にキューイングされているアンアラインコマンドをアラインコマンドに変換する。コマンド振分処理は、上位装置からコマンドを受け付けて、ドライバ26が実行する処理である。
ここで、ストレージディスクアレイ装置20が受け付けたコマンドの振分について図7を用いて説明する。図7は、第2の実施形態の通常キューまたはアンアラインキューへのコマンドの振分の一例を示す図である。
再び、コマンド振分処理のフローチャートの説明に戻る。
[ステップS15]ドライバ26は、ステップS14のアラインコマンド構成判定の結果を参照し、アラインコマンドを構成できる場合にステップS16にすすみ、アラインコマンドを構成できない場合にステップS19にすすむ。
[ステップS21]ドライバ26は、コマンド掃き出し処理の実行結果から、疑似リードコマンドの生成の有無を判定する。ドライバ26は、疑似リードコマンドが生成されている場合にステップS22にすすみ、疑似リードコマンドが生成されていない場合にステップS23にすすむ。なお、コマンド掃き出し処理の実行結果から、生成される疑似リードコマンドは、複数のアンアラインコマンドの書込領域と疑似読出領域とが重複する疑似リードコマンドである。リードコマンドを拡張する疑似リードコマンドは、ここでは、生成対象とならない。
[ステップS24]ドライバ26は、アンアラインキュー29からデキューしたアンアラインコマンドを通常キュー28のヘッド(通常キューヘッド)にキューイングし、コマンド振分処理を終了する。これにより、アンアラインコマンドは、通常キュー28からデキューされてHDD31にコマンド発行されることとなる。
コマンド掃き出し処理は、アンアラインコマンドの掃き出しをおこなう処理である。また、コマンド掃き出し処理は、コマンド振分処理のステップS20でドライバ26が実行する処理である。
次に、第2の実施形態のデキュー処理について図12を用いて説明する。図12は、第2の実施形態のデキュー処理のフローチャートを示す図である。
[ステップS41]ドライバ26(プロセッサ22)は、コマンド発行が可能か否かを判定する。たとえば、ドライバ26は、コマンドの発行先がコマンドの受付が可能か否かを判定する。ドライバ26は、コマンド発行ができる場合にステップS42にすすみ、コマンド発行ができない場合にコマンド発行可能な状態の検出を待つ。
[ステップS45]ドライバ26は、通常キュー28からコマンド(アラインコマンド)をデキューする。
応答確認処理は、発行先に発行したコマンドの発行先からの応答を確認する処理である。応答確認処理は、ドライバ26が発行先からの応答を受け付けて、ドライバ26が実行する処理である。
[ステップS54]ドライバ26は、読出データをバッファ(疑似リード専用領域)に退避する。
[ステップS59]ドライバ26は、疑似読出領域に対応する応答を除いて、発行元(上位装置)に応答をおこなう。たとえば、図9に示したリードコマンドを拡張する疑似リードコマンドC23の場合、ドライバ26は、疑似読出領域DR1に対応する応答を除いて、読出領域RRに対応する応答をおこなう。また、図10に示した複数のアンアラインコマンドの書込領域と疑似読出領域とが重複する疑似リードコマンドC26の場合、上位装置からのコマンドではないので対応する応答をおこなわない。
疑似リード設定処理は、疑似リードコマンドの発行の有効/無効を設定する処理である。疑似リード設定処理は、所定のタイミング(たとえば、あらかじめ設定したタイマ周期、あるいはイベントトリガなど)で、ドライバ26が実行する処理である。したがって、ドライバ26は、所定のタイミングで疑似リードコマンドの発行の有効/無効の設定を更新する。
[ステップS76]ドライバ26は、アライン/アンアライン比率を評価する。アライン/アンアライン比率は、着目ディスクにおいてアンアラインコマンドの発行頻度を評価するための情報である。アラインコマンドがアンアラインコマンドと比較して多ければ、アンアラインキュー29へのコマンドの蓄積が少ないと評価できる。一方、アラインコマンドがアンアラインコマンドと比較して少なければ、アンアラインキュー29へのコマンドの蓄積が多いと評価できる。
[ステップS79]ドライバ26は、ヒット率を評価する。ヒット率は、着目ディスクにおいてアンアラインコマンドをアラインコマンドに変換できた頻度を評価するための情報である。ヒット率が高ければ、アンアラインキュー29からのコマンドの掃き出しが多いと評価できる。一方、ヒット率が低ければ、アンアラインキュー29からのコマンドの掃き出しが少ないと評価できる。なお、アンアラインコマンドの発行頻度、言い換えれば、着目ディスクのRMWの実行頻度(この場合ミス率に相当)を用いるものであってもよい。なお、リード/ライト比率、アライン/アンアライン比率、およびヒット率の大小の比較は、あらかじめ定めた閾値、あるいは稼働状態に応じて設定される閾値との比較によりおこなうことができる。
[ステップS81]ドライバ26は、アンアラインキュー29からのコマンドの掃き出しが少ないと評価し、評価値に「1」を加点する。
[ステップS84]ドライバ26は、疑似リードコマンドの発行を無効化、すなわち、疑似リードコマンドの発行の設定を無効にして疑似リード設定処理を終了する。
なお、ここまでで説明したアンアラインキュー29からアンアラインコマンドのデキューをおこなう条件を整理すると以下のようになる。
2 記憶装置
3 メモリ
4 コマンド振分部
5 コマンド発行部
6 第1のキュー
7 第2のキュー
10 ストレージシステム
11 サーバ
20 ストレージディスクアレイ装置
21,21a,21b コントローラモジュール
22 プロセッサ
23 メモリ
23a キャッシュメモリ
24 ディスクアダプタ
25 チャネルアダプタ
26 ドライバ
27 I/O発行待ちキュー
28 通常キュー
29 アンアラインキュー
30 ディスクエンクロージャ
31,31a,31b,…,31n HDD
Claims (11)
- 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、前記第2のデータサイズとバウンダリが一致するライトコマンドを含む第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第2のキューからデキューした前記第1のコマンドを前記第2のコマンドに変換して前記第1のキューの先頭にキューイングするコマンド発行部と、
を備えるストレージ制御装置。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、前記第2のデータサイズとバウンダリが一致するライトコマンドを含む第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第1のコマンドを前記第2のコマンドに変換するコマンド発行部と、を備え、
前記コマンド発行部は、
2以上の前記第1のコマンドの書込領域が同一の物理セクタ内にある場合に、前記2以上の前記第1のコマンドを1つのライトコマンドに変換する、
ストレージ制御装置。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第2のキューからデキューした前記第1のコマンドを前記第2のコマンドに変換するコマンド発行部と、を備え、
前記コマンド発行部は、
前記リードコマンドの読出領域に隣接して、前記第1のコマンドの書込領域を含む疑似読出領域があるときに、前記リードコマンドを、前記疑似読出領域を含む範囲に前記読出領域を拡張したリードコマンドである拡張リードコマンドに変換する、
ストレージ制御装置。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第2のキューからデキューした前記第1のコマンドを前記第2のコマンドに変換するコマンド発行部と、を備え、
前記コマンド発行部は、
2以上の前記第1のコマンドの書込領域が所定範囲にある場合に、前記所定範囲を含む領域を読出領域とするリードコマンドである疑似リードコマンドを生成する、
ストレージ制御装置。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第2のキューからデキューした前記第1のコマンドを前記第2のコマンドに変換するコマンド発行部と、
を備えるストレージ制御装置。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置において、
前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリと、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて、前記メモリに格納するコマンド振分部と、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、受け付けた前記コマンドのうち前記第2のコマンドとして振り分けられたリードコマンドを発行して前記記憶装置から受け付けた応答に含まれる読出データに、前記第2のキューからデキューした前記第1のコマンドの書込データを重畳した重畳データを生成し、前記第1のコマンドを、前記重畳データを書込データとするライトコマンドに変換するコマンド発行部と、
を備えるストレージ制御装置。 - 前記コマンド発行部は、前記物理セクタに書き込まれているデータのすべてを、前記2以上の前記第1のコマンドの書込データで上書きする場合に、前記2以上の前記第1のコマンドを前記第2のコマンドとしてのライトコマンドに変換する、
ことを特徴とする請求項2記載のストレージ制御装置。 - 前記コマンド発行部は、前記第2のキューにおける前記第1のコマンドのキューイング状態を評価し、前記評価にもとづいて前記拡張リードコマンドの変換の有効化と無効化とを切り替えることを特徴とする請求項3記載のストレージ制御装置。
- 前記コマンド発行部は、前記第2のキューにおける前記第1のコマンドのキューイング状態を評価し、前記評価にもとづいて前記疑似リードコマンドの生成の有効化と無効化とを切り替えることを特徴とする請求項4記載のストレージ制御装置。
- 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置のストレージ制御プログラムにおいて、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを、前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリの前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて前記メモリに格納し、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、所定条件成立時に前記第2のキューからデキューした前記第1のコマンドを前記第2のコマンドに変換する、
処理を実行させることを特徴とするストレージ制御プログラム。 - 第1のデータサイズのデータをアクセス単位とするコマンドを受け付けて、前記第1のデータサイズの所定の整数倍である第2のデータサイズのデータをアクセス単位とする記憶装置の入出力制御をおこなうストレージ制御装置のストレージ制御プログラムにおいて、
受け付けた前記コマンドのうちの、前記第2のデータサイズとバウンダリが一致しないライトコマンドである第1のコマンドを、前記コマンドを格納可能な、第1のキューと第2のキューとを備えるメモリの前記第2のキューに振り分け、リードコマンドまたは前記第2のデータサイズとバウンダリが一致するライトコマンドである第2のコマンドを前記第1のキューに振り分けて前記メモリに格納し、
前記第1のコマンドに優先して前記第2のコマンドを前記記憶装置に発行するとともに、受け付けた前記コマンドのうち前記第2のコマンドとして振り分けられたリードコマンドを発行して前記記憶装置から受け付けた応答に含まれる読出データに、前記第2のキューからデキューした前記第1のコマンドの書込データを重畳した重畳データを生成し、前記第1のコマンドを、前記重畳データを書込データとするライトコマンドに変換する、
処理を実行させることを特徴とするストレージ制御プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013220787A JP6255893B2 (ja) | 2013-10-24 | 2013-10-24 | ストレージ制御装置、およびストレージ制御プログラム |
US14/510,157 US9529707B2 (en) | 2013-10-24 | 2014-10-09 | Apparatus and method for reducing read-modify-write cycles by combining unaligned write commands |
EP20140188972 EP2866137A1 (en) | 2013-10-24 | 2014-10-15 | Apparatus, program, and method for controlling storage devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013220787A JP6255893B2 (ja) | 2013-10-24 | 2013-10-24 | ストレージ制御装置、およびストレージ制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015082269A JP2015082269A (ja) | 2015-04-27 |
JP6255893B2 true JP6255893B2 (ja) | 2018-01-10 |
Family
ID=51751943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013220787A Expired - Fee Related JP6255893B2 (ja) | 2013-10-24 | 2013-10-24 | ストレージ制御装置、およびストレージ制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9529707B2 (ja) |
EP (1) | EP2866137A1 (ja) |
JP (1) | JP6255893B2 (ja) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819208B2 (en) | 2010-03-05 | 2014-08-26 | Solidfire, Inc. | Data deletion in a distributed data storage system |
US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
US10133511B2 (en) | 2014-09-12 | 2018-11-20 | Netapp, Inc | Optimized segment cleaning technique |
US10101943B1 (en) * | 2014-09-25 | 2018-10-16 | EMC IP Holding Company LLC | Realigning data in replication system |
US9910621B1 (en) | 2014-09-29 | 2018-03-06 | EMC IP Holding Company LLC | Backlogging I/O metadata utilizing counters to monitor write acknowledgements and no acknowledgements |
US9836229B2 (en) | 2014-11-18 | 2017-12-05 | Netapp, Inc. | N-way merge technique for updating volume metadata in a storage I/O stack |
JP6540363B2 (ja) * | 2015-08-19 | 2019-07-10 | 富士通株式会社 | ストレージ制御装置、ストレージ制御方法、およびストレージ制御プログラム |
US9830103B2 (en) * | 2016-01-05 | 2017-11-28 | Netapp, Inc. | Technique for recovery of trapped storage space in an extent store |
US9922039B1 (en) * | 2016-03-31 | 2018-03-20 | EMC IP Holding Company LLC | Techniques for mitigating effects of small unaligned writes |
US10768823B2 (en) * | 2016-04-12 | 2020-09-08 | Hewlett Packard Enterprise Development Lp | Flow control for unaligned writes in network storage device |
US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
US10762000B2 (en) | 2017-04-10 | 2020-09-01 | Samsung Electronics Co., Ltd. | Techniques to reduce read-modify-write overhead in hybrid DRAM/NAND memory |
WO2019075506A1 (en) * | 2017-10-17 | 2019-04-25 | Metamako General Pty Ltd In Its Capacity As General Partner Of Metamako Technology Lp | SYSTEM FOR REDUCING LATENCY IN NETWORK DEVICES |
US10572260B2 (en) * | 2017-12-29 | 2020-02-25 | Intel Corporation | Spatial and temporal merging of remote atomic operations |
JP2019191909A (ja) | 2018-04-25 | 2019-10-31 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
TWI668704B (zh) | 2018-10-01 | 2019-08-11 | 大陸商深圳大心電子科技有限公司 | 資料處理方法及使用所述方法的儲存控制器 |
KR20200057473A (ko) * | 2018-11-16 | 2020-05-26 | 삼성전자주식회사 | 스토리지 장치 및 이를 포함하는 스토리지 시스템 |
CN111290698B (zh) * | 2018-12-07 | 2022-05-03 | 上海寒武纪信息科技有限公司 | 数据存取方法、数据处理方法、数据存取电路和运算装置 |
US11139042B2 (en) * | 2019-12-19 | 2021-10-05 | Micron Technology, Inc. | Capacitor health check |
US11294824B2 (en) * | 2020-01-03 | 2022-04-05 | Western Digital Technologies, Inc. | System and method for reduced latency of read-modify-write operations |
KR20220106307A (ko) | 2021-01-22 | 2022-07-29 | 삼성전자주식회사 | 스토리지 장치 및 그 구동 방법 |
US11513736B2 (en) | 2021-03-08 | 2022-11-29 | Western Digital Technologies, Inc. | Revised host command generation for unaligned access |
CN115344244A (zh) * | 2021-05-14 | 2022-11-15 | 瑞昱半导体股份有限公司 | 处理程序语言函数的装置及方法 |
US11934695B2 (en) * | 2021-06-23 | 2024-03-19 | Western Digital Technologies, Inc. | Aligned command based firmware architecture for unaligned write handling |
US11656797B2 (en) * | 2021-07-28 | 2023-05-23 | Western Digital Technologies, Inc. | Data storage device executing runt write commands as free commands |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6343343B1 (en) * | 1998-07-31 | 2002-01-29 | International Business Machines Corporation | Disk arrays using non-standard sector sizes |
US6925526B2 (en) * | 2002-10-31 | 2005-08-02 | International Business Machines Corporation | Method and apparatus for servicing mixed block size data access operations in a disk drive data storage device |
US7080200B2 (en) | 2003-08-14 | 2006-07-18 | Hitachi Global Storage Technologies Netherlands B.V. | System and method for handling writes in HDD using 4K block sizes |
US7328317B2 (en) * | 2004-10-21 | 2008-02-05 | International Business Machines Corporation | Memory controller and method for optimized read/modify/write performance |
US8356126B2 (en) * | 2005-02-07 | 2013-01-15 | Dot Hill Systems Corporation | Command-coalescing RAID controller |
JP2010026345A (ja) | 2008-07-23 | 2010-02-04 | Yazaki Corp | 光コネクタ |
JP2010080021A (ja) * | 2008-09-29 | 2010-04-08 | Toshiba Storage Device Corp | 記録制御方法及び記録制御部、並びに記憶装置 |
JP2010211888A (ja) | 2009-03-12 | 2010-09-24 | Toshiba Storage Device Corp | ディスク記憶装置 |
EP2419817A1 (en) * | 2009-10-09 | 2012-02-22 | Hitachi, Ltd. | Storage system and control method thereof, implementing data reallocation in case of load bias |
JP2012104170A (ja) * | 2010-11-08 | 2012-05-31 | Sharp Corp | ハードディスク装置 |
JP2012113789A (ja) | 2010-11-26 | 2012-06-14 | Buffalo Inc | ハードディスクドライブ装置およびその処理装置 |
JP2012221350A (ja) | 2011-04-12 | 2012-11-12 | Ricoh Co Ltd | データ形式変換装置、電子システム、データ形式変換方法及びプログラム |
US9898402B2 (en) * | 2011-07-01 | 2018-02-20 | Micron Technology, Inc. | Unaligned data coalescing |
JP6089844B2 (ja) * | 2013-03-22 | 2017-03-08 | 富士通株式会社 | 制御装置,ストレージ装置,及び制御プログラム |
US9348747B2 (en) * | 2013-10-29 | 2016-05-24 | Seagate Technology Llc | Solid state memory command queue in hybrid device |
-
2013
- 2013-10-24 JP JP2013220787A patent/JP6255893B2/ja not_active Expired - Fee Related
-
2014
- 2014-10-09 US US14/510,157 patent/US9529707B2/en active Active
- 2014-10-15 EP EP20140188972 patent/EP2866137A1/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2015082269A (ja) | 2015-04-27 |
US20150121021A1 (en) | 2015-04-30 |
EP2866137A1 (en) | 2015-04-29 |
US9529707B2 (en) | 2016-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6255893B2 (ja) | ストレージ制御装置、およびストレージ制御プログラム | |
US6799283B1 (en) | Disk array device | |
JP6093095B2 (ja) | ガベージデータを収集するための方法及び記憶装置 | |
US10795599B2 (en) | Data migration method, host and solid state disk | |
US10528424B2 (en) | Selectively de-straddling data pages in non-volatile memory | |
US9400603B2 (en) | Implementing enhanced performance flash memory devices | |
US11436159B2 (en) | Using multi-tiered cache to satisfy input/output requests | |
JP2012128815A (ja) | メモリシステム | |
CN106557428B (zh) | 数据存储设备的映射系统选择 | |
Lee et al. | OSSD: A case for object-based solid state drives | |
US11036427B2 (en) | Using content addressable memory to perform read-modify-write operations in non-volatile random access memory (NVRAM) | |
US11016841B2 (en) | Methods and apparatuses for proactive ECC failure handling | |
CN115686385B (zh) | 一种数据存储方法、装置、计算机设备及存储介质 | |
US9817583B2 (en) | Storage system and method for allocating virtual volumes based on access frequency | |
TWI544401B (zh) | 有效率釋出序列輸人輸出串流的方法、儲存控制器及系統 | |
US10346070B2 (en) | Storage control apparatus and storage control method | |
JP2007501473A (ja) | メインメモリとストレージ装置との間のデータ転送を行うための方法及び装置 | |
US8489802B2 (en) | Recordable memory device which writes data to reformatted user area of nonvolatile semiconductor memory | |
JP7170093B2 (ja) | 記憶デバイスのための改良された先読み能力 | |
US9639417B2 (en) | Storage control apparatus and control method | |
US20230281121A1 (en) | Increased garbage collection granularity for non-volatile memory | |
KR20230144434A (ko) | 호스트 장치의 동작 방법 및 스토리지 장치의 동작 방법 | |
JP4466530B2 (ja) | ディスクアレイ装置及び論理アドレス制御方法並びにプログラム | |
KR100770732B1 (ko) | 플래쉬 메모리를 이용한 ide 및 scsi 방식의 데이터 저장장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160705 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170721 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171006 |
|
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: 20171107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6255893 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |