JP2015111334A - ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 - Google Patents
ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 Download PDFInfo
- Publication number
- JP2015111334A JP2015111334A JP2013252971A JP2013252971A JP2015111334A JP 2015111334 A JP2015111334 A JP 2015111334A JP 2013252971 A JP2013252971 A JP 2013252971A JP 2013252971 A JP2013252971 A JP 2013252971A JP 2015111334 A JP2015111334 A JP 2015111334A
- Authority
- JP
- Japan
- Prior art keywords
- write
- solid state
- storage control
- statistical information
- raid
- 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
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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3034—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- 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/0653—Monitoring storage devices or systems
-
- 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- 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/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- 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/26—Using a specific storage system architecture
- G06F2212/261—Storage comprising a plurality of storage devices
- G06F2212/262—Storage comprising a plurality of storage devices configured as RAID
-
- 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- 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/70—Details relating to dynamic memory management
- G06F2212/702—Conservative garbage collection
-
- 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/7208—Multiple device management, e.g. distributing data over multiple flash devices
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)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
1つの側面では、本発明は、ソリッドステートドライブの過負荷によるストレージ装置の性能低下を抑制できるストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法を提供することを目的とする。
[第1の実施形態]
まず、第1の実施形態のストレージ制御装置について図1を用いて説明する。図1は、第1の実施形態のストレージ制御装置の構成の一例を示す図である。
次に、第2の実施形態のストレージシステムと、ディスクアレイ装置のハードウェア構成について図2を用いて説明する。図2は、第2の実施形態のストレージシステムの構成例と、ディスクアレイ装置のハードウェア構成例を示す図である。
以上のようなハードウェア構成によって、第2の実施形態のCM21(ディスクアレイ装置12)の処理機能を実現することができる。なお、第1の実施形態に示したストレージ制御装置1も、図示したCM21と同様のハードウェア構成により実現することができる。
DE30は、複数のSSD31を含む。たとえば、図示するDE30は、SSD311,312,313,・・・,319,・・・を含む。複数のSSD31は、グループを構成する。たとえば、グループ50,51,52は、それぞれRAID5を構成する。グループ50は、SSD311,312,315,316を含む。グループ51は、SSD313,314,317,318を含む。グループ52は、SSD315,316,317,318を含む。SSD31は、SSD311,312,313,314のようにただ1つのグループに属するものであってもよいし、SSD315,316,317,318のように2以上のグループに属するものであってもよい。また、SSD31は、SSD319のようにいずれのグループに属さないものがあってもよい。
[ステップS22]キャッシュ制御部60は、取得した対象CMのライトバックの同時実行数とCM閾値とを比較し、同時実行数がCM閾値を超えるか否かを判定する。CM閾値は、CM単位の過負荷をフロントエンドの過負荷として検出するための閾値である。CM閾値は、あらかじめ設定されるものであってもよいし、システム環境に応じて、あるいは運用や時間に応じて設定変更されるものであってもよい。キャッシュ制御部60は、同時実行数がCM閾値を超えない場合にステップS23にすすむ。一方、キャッシュ制御部60は、同時実行数がCM閾値を超える場合に、フロントエンドの過負荷を検出したとしてステップS25にすすむ。
[ステップS26]キャッシュ制御部60は、フロントエンドの負荷状態を通常状態に設定して、フロントエンド負荷検出処理を終了する。
過負荷ディスク検出処理は、ライトバックに対応するRAIDグループを構成するSSD31の過負荷状態を検出する処理である。過負荷ディスク検出処理は、ライトバックスケジュール処理のステップS13でRAID制御部70により実行される。
[ステップS32]RAID制御部70は、ビジー判定閾値を取得する。ビジー判定閾値は、対象SSDがビジーであるか否かの判定に用いる閾値である。
このようにして、ディスクアレイ装置12は、ライトバックに対応するRAIDグループを構成するSSD31の過負荷状態を検出することができる。
[ステップS45]RAID制御部70は、ライトバックキュー61またはウエイトキュー62からデキューしたデータをRAIDキュー71にエンキューして、ライトバックデキュー処理を終了する。
流量制御処理は、ライトバックの同時実行数(流量)を制御する処理である。流量制御処理は、RAID制御部70により実行される。
[ステップS53]RAID制御部70は、ライトバックの同時実行数と、同時実行数閾値とを比較し、同時実行数が同時実行数閾値より小さい場合にステップS54にすすみ、同時実行数が同時実行数閾値より小さくない場合にステップS62にすすむ。
[ステップS57]RAID制御部70は、ライトバックの同時実行数をインクリメントする。
[ステップS59]RAID制御部70は、ライトバックに対応する書込データのパリティデータを生成する。
[ステップS61]RAID制御部70は、RAIDグループを構成するディスクのそれぞれに対して、書込データまたはパリティデータの書き込みを指示するSCSIコマンドを発行する。発行されたSCSIコマンドは、デバイス制御部80によって対応するSCSIコマンドキュー81にキューイングされる。
このように、RAID制御部70は、ライトバックの発行により同時実行数をインクリメントし、ライトバックの処理完了通知の受信により同時実行数をデクリメントすることでライトバックの同時実行数を管理する。
次に、同時実行数閾値の更新をおこなう第3の実施形態について説明する。第3の実施形態のディスクアレイ装置12は、RAID毎の統計情報にもとづいて同時実行数閾値の更新をおこなう。
ここで、RAID毎統計情報テーブルについて図13を用いて説明する。図13は、第3の実施形態のRAID毎統計情報テーブルの一例を示す図である。
[ステップS73]CM21は、対象RAIDの統計情報テーブルに単位時間毎のライトバック数を記録する。たとえば、CM21は、単位時間「tn1」においてRAIDグループ「#1」のライトバック数「nn1」をRAID毎統計情報テーブル200に記録する。
同時実行数閾値更新処理は、RAID毎統計情報生成処理が生成した統計情報にもとづいて、同時実行数閾値およびSSD同時実行数閾値を更新する処理である。同時実行数閾値更新処理は、CM21が実行する処理である。CM21は、同時実行数閾値およびSSD同時実行数閾値を更新する閾値更新部として機能する。
[ステップS83]CM21は、対象RAIDの統計情報テーブルから統計情報を取得する。
統計情報閾値対応テーブル210は、統計情報として時間積算値と平均値を見出しにして、統計情報にもとづいて適切とされる同時実行数閾値およびSSD同時実行数閾値を定義する。たとえば、時間積算値「VS1」以下、あるいは平均値「VA1」以下のとき、同時実行数閾値「ET1」、およびSSD同時実行数閾値「SET11」であることを示す。したがって、CM21は、統計情報にもとづいて、同時実行数閾値およびSSD同時実行数閾値を適切とされる値に更新することができる。
[ステップS85]CM21は、統計情報閾値対応テーブル210を参照して、対象RAIDの統計情報テーブルから同時実行数閾値を取得し、取得したSSD同時実行数閾値でSSD同時実行数閾値を更新する。
次に、同時実行数閾値およびSSD同時実行数閾値の更新をおこなう第4の実施形態について説明する。第4の実施形態のディスクアレイ装置12は、CM毎の統計情報にもとづいて同時実行数閾値の更新をおこなう。
統計情報テーブルは、統計情報の生成対象となるCM毎に用意される。CM毎統計情報テーブル230は、CM毎に用意される統計情報テーブルの1つである。CM毎統計情報テーブル230は、CM「#1」の単位時間毎の統計情報を記録する。なお、「#1」は、CMを一意に識別可能な識別情報である。
[ステップS92]CM21は、対象CMの統計情報テーブルに単位時間毎のライトバック数を記録する。たとえば、CM21は、単位時間「tn1」においてCM「#1」のライトバック数「nn1」をCM毎統計情報テーブル230に記録する。
[ステップS103]CM21は、統計情報閾値対応テーブルを参照して、対象CMの統計情報テーブルから同時実行数閾値を取得して、取得した同時実行数閾値で同時実行数閾値を更新する。なお、第4の実施形態の統計情報閾値対応テーブルは、図15を用いて説明した第3の実施形態の統計情報閾値対応テーブル210と同様である。
以上の実施の形態に関し、更に以下の付記を開示する。
前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する処理要求制御部と、
前記複数のソリッドステートドライブのそれぞれの負荷を検出するデバイス負荷検出部と、を備え、
前記処理要求制御部は、所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制する、
ことを特徴とするストレージ制御装置。
前記処理要求制御部は、前記所定の負荷を検出した場合に、前記ライトバックの処理要求の発行を抑制することを特徴とする付記1記載のストレージ制御装置。
(付記5) 前記デバイス負荷検出部は、前記ライトバックの処理要求の発行にもとづいて前記ソリッドステートドライブ毎に発行したコマンドの処理遅延の検出にもとづいて、前記ソリッドステートドライブの前記所定の負荷を検出することを特徴とする付記1記載のストレージ制御装置。
(付記8) 前記ライトバックの処理要求の発行に関する統計情報を生成する統計情報生成部と、
前記統計情報にもとづいて前記第1の閾値または前記第2の閾値を更新する閾値更新部と、を備えることを特徴とする付記6記載のストレージ制御装置。
前記制御部負荷検出部は、前記分担制御装置毎の前記ライトバックの処理要求の同時発行数が第3の閾値を超えた場合に、前記所定の負荷を検出したとすることを特徴とする付記2記載のストレージ制御装置。
前記統計情報にもとづいて前記第1の閾値または前記第2の閾値を更新する閾値更新部と、を備えることを特徴とする付記11記載のストレージ制御装置。
コンピュータに、
前記複数のソリッドステートドライブのそれぞれの負荷を検出し、
所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制して、前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する、
処理を実行させることを特徴とするストレージ制御プログラム。
コンピュータが、
前記複数のソリッドステートドライブのそれぞれの負荷を検出し、
所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制して、前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する、
処理を実行することを特徴とするストレージ制御方法。
2a 処理要求制御部
2b デバイス負荷検出部
3 ホスト
4 ストレージ装置
5,50,51,52 グループ
6,31,311,312,313,314,315,316,317,318,319 SSD
7 ライトバックキャッシュ
8,8a,8b ライトバック
9 コマンド
10 ストレージシステム
11,11a,11b ホスト
12 ディスクアレイ装置
20 コントローラエンクロージャ(CE)
21,21a,21b コントローラモジュール(CM)
22 プロセッサ
23 メモリ
24,24a,24b ディスクアダプタ(DA)
25,25a,25b チャネルアダプタ(CA)
30,30a,30b ディスクエンクロージャ(DE)
60 キャッシュ制御部
61 ライトバックキュー
62 ウエイトキュー
70 RAID制御部
71 RAIDキュー
80 デバイス制御部
81,81a,81b,81c,81d SCSIコマンドキュー
200 RAID毎統計情報テーブル
210 統計情報閾値対応テーブル
230 CM毎統計情報テーブル
Claims (12)
- 複数のソリッドステートドライブを含むグループに対してライトバックキャッシュに記憶されたデータのライトバック制御をおこなうストレージ制御装置において、
前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する処理要求制御部と、
前記複数のソリッドステートドライブのそれぞれの負荷を検出するデバイス負荷検出部と、を備え、
前記処理要求制御部は、所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制する、
ことを特徴とするストレージ制御装置。 - 前記処理要求制御部の所定の負荷を検出する制御部負荷検出部を備え、
前記処理要求制御部は、前記所定の負荷を検出した場合に、前記ライトバックの処理要求の発行を抑制することを特徴とする請求項1記載のストレージ制御装置。 - 前記制御部負荷検出部は、前記グループ毎の前記ライトバックの処理要求の同時発行数が第1の閾値を超えた場合に、前記所定の負荷を検出したとすることを特徴とする請求項2記載のストレージ制御装置。
- 前記デバイス負荷検出部は、前記ライトバックの処理要求の発行にもとづいて前記ソリッドステートドライブ毎に発行したコマンドの処理遅延の検出にもとづいて、前記ソリッドステートドライブの前記所定の負荷を検出することを特徴とする請求項1記載のストレージ制御装置。
- 前記デバイス負荷検出部は、前記ソリッドステートドライブ毎に発行した前記コマンドのうち未だ実行されていないコマンドの数が第2の閾値を超えた場合に、前記ソリッドステートドライブの前記所定の負荷を検出することを特徴とする請求項3記載のストレージ制御装置。
- 前記ライトバックの処理要求の発行に関する統計情報を生成する統計情報生成部と、
前記統計情報にもとづいて前記第1の閾値または前記第2の閾値を更新する閾値更新部と、を備えることを特徴とする請求項5記載のストレージ制御装置。 - 前記ストレージ制御装置は、前記ライトバックの処理要求の発行を分担する2以上の分担制御装置を備え、
前記制御部負荷検出部は、前記分担制御装置毎の前記ライトバックの処理要求の同時発行数が第3の閾値を超えた場合に、前記所定の負荷を検出したとすることを特徴とする請求項2記載のストレージ制御装置。 - 前記デバイス負荷検出部は、前記ライトバックの処理要求の発行にもとづいて前記ソリッドステートドライブ毎に発行したコマンドの処理遅延の検出にもとづいて、前記ソリッドステートドライブの前記所定の負荷を検出することを特徴とする請求項7記載のストレージ制御装置。
- 前記デバイス負荷検出部は、前記ソリッドステートドライブ毎に発行した前記コマンドのうち未だ実行されていないコマンドの数が第2の閾値を超えた場合に、前記ソリッドステートドライブの過負荷を検出することを特徴とする請求項8記載のストレージ制御装置。
- 前記ライトバックの処理要求の発行に関する統計情報を生成する統計情報生成部と、
前記統計情報にもとづいて前記第1の閾値または前記第2の閾値を更新する閾値更新部と、を備えることを特徴とする請求項9記載のストレージ制御装置。 - 複数のソリッドステートドライブを含むグループに対してライトバックキャッシュに記憶されたデータのライトバック制御をおこなうストレージ制御装置のストレージ制御プログラムにおいて、
コンピュータに、
前記複数のソリッドステートドライブのそれぞれの負荷を検出し、
所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制して、前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する、
処理を実行させることを特徴とするストレージ制御プログラム。 - 複数のソリッドステートドライブを含むグループに対してライトバックキャッシュに記憶されたデータのライトバック制御をおこなうストレージ制御装置のストレージ制御方法において、
コンピュータが、
前記複数のソリッドステートドライブのそれぞれの負荷を検出し、
所定の負荷を検出したソリッドステートドライブが属する前記グループ内の1または複数のソリッドステートドライブに対する前記ライトバックの処理要求の発行を抑制して、前記グループおよび前記複数のソリッドステートドライブに対するライトバックの処理要求の発行を制御する、
処理を実行することを特徴とするストレージ制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013252971A JP2015111334A (ja) | 2013-12-06 | 2013-12-06 | ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 |
US14/551,181 US9501406B2 (en) | 2013-12-06 | 2014-11-24 | Storage control apparatus and storage control method |
EP14194678.0A EP2884396A1 (en) | 2013-12-06 | 2014-11-25 | Storage control apparatus, storage control program, and storage control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013252971A JP2015111334A (ja) | 2013-12-06 | 2013-12-06 | ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015111334A true JP2015111334A (ja) | 2015-06-18 |
Family
ID=51951714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013252971A Pending JP2015111334A (ja) | 2013-12-06 | 2013-12-06 | ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9501406B2 (ja) |
EP (1) | EP2884396A1 (ja) |
JP (1) | JP2015111334A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017049872A (ja) * | 2015-09-03 | 2017-03-09 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 |
JP2018185584A (ja) * | 2017-04-24 | 2018-11-22 | 富士通株式会社 | ストレージ装置、ストレージ装置の制御プログラムおよびストレージ装置の制御方法 |
US10514849B2 (en) | 2016-09-05 | 2019-12-24 | Toshiba Memory Corporation | Storage system including a plurality of networked storage nodes |
WO2023162465A1 (ja) * | 2022-02-24 | 2023-08-31 | ソニーセミコンダクタソリューションズ株式会社 | ライトバッファ制御回路 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445749B (zh) * | 2015-05-12 | 2021-04-23 | 爱思开海力士有限公司 | 使用独立磁盘冗余阵列的动态自动调谐的最大延迟的减小 |
US11461010B2 (en) | 2015-07-13 | 2022-10-04 | Samsung Electronics Co., Ltd. | Data property-based data placement in a nonvolatile memory device |
US10282324B2 (en) | 2015-07-13 | 2019-05-07 | Samsung Electronics Co., Ltd. | Smart I/O stream detection based on multiple attributes |
TWI611405B (zh) * | 2015-11-25 | 2018-01-11 | 旺宏電子股份有限公司 | 將資料自記憶體寫回儲存裝置的方法及應用其的資料存取系統 |
JP2019074897A (ja) * | 2017-10-16 | 2019-05-16 | 富士通株式会社 | ストレージ制御装置、及びプログラム |
US10852966B1 (en) * | 2017-10-18 | 2020-12-01 | EMC IP Holding Company, LLC | System and method for creating mapped RAID group during expansion of extent pool |
US10852951B1 (en) * | 2017-10-18 | 2020-12-01 | EMC IP Holding Company, LLC | System and method for improving I/O performance by introducing extent pool level I/O credits and user I/O credits throttling on Mapped RAID |
US10418053B1 (en) * | 2018-03-07 | 2019-09-17 | Kabushiki Kaisha Toshiba | Disk-drive with efficient command-reordering |
CN108710686A (zh) * | 2018-05-21 | 2018-10-26 | 北京五八信息技术有限公司 | 一种数据存储方法、装置、存储介质及终端 |
CN111124253B (zh) * | 2018-10-30 | 2023-10-27 | 伊姆西Ip控股有限责任公司 | 管理存储设备的方法、装置和计算机程序产品 |
KR20210123555A (ko) * | 2020-04-03 | 2021-10-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
CN115016740B (zh) * | 2022-07-14 | 2022-11-18 | 杭州优云科技有限公司 | 一种数据恢复方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07121447A (ja) * | 1993-09-27 | 1995-05-12 | Toshiba Corp | 負荷分散ページングシステム |
JP2006285809A (ja) * | 2005-04-04 | 2006-10-19 | Hitachi Ltd | ストリーミング向け性能保証を行うストレージ装置 |
JP2007004270A (ja) * | 2005-06-21 | 2007-01-11 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理方法 |
JP2009054050A (ja) * | 2007-08-28 | 2009-03-12 | Fujitsu Ltd | Raid装置、raid装置の制御部およびraid装置のライトバック制御方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4322068B2 (ja) | 2003-03-07 | 2009-08-26 | 富士通株式会社 | ストレージシステム及びそのデイスク負荷バランス制御方法 |
US8478945B2 (en) | 2010-02-01 | 2013-07-02 | International Business Machines Corporation | Dynamic management of destage tasks in a storage controller |
JP2011192240A (ja) | 2010-03-17 | 2011-09-29 | Sony Corp | 記憶装置および記憶システム |
US8402226B1 (en) | 2010-06-18 | 2013-03-19 | Emc Corporation | Rate proportional cache write-back in a storage server |
JP2012008651A (ja) | 2010-06-22 | 2012-01-12 | Toshiba Corp | 半導体記憶装置、その制御方法および情報処理装置 |
US8589655B2 (en) * | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of I/O in an SSD environment |
JP5535128B2 (ja) | 2010-12-16 | 2014-07-02 | 株式会社東芝 | メモリシステム |
-
2013
- 2013-12-06 JP JP2013252971A patent/JP2015111334A/ja active Pending
-
2014
- 2014-11-24 US US14/551,181 patent/US9501406B2/en not_active Expired - Fee Related
- 2014-11-25 EP EP14194678.0A patent/EP2884396A1/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07121447A (ja) * | 1993-09-27 | 1995-05-12 | Toshiba Corp | 負荷分散ページングシステム |
JP2006285809A (ja) * | 2005-04-04 | 2006-10-19 | Hitachi Ltd | ストリーミング向け性能保証を行うストレージ装置 |
JP2007004270A (ja) * | 2005-06-21 | 2007-01-11 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理方法 |
JP2009054050A (ja) * | 2007-08-28 | 2009-03-12 | Fujitsu Ltd | Raid装置、raid装置の制御部およびraid装置のライトバック制御方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017049872A (ja) * | 2015-09-03 | 2017-03-09 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 |
US10528468B2 (en) | 2015-09-03 | 2020-01-07 | Fujitsu Limited | Storage controlling apparatus, computer-readable recording medium having storage controlling program stored therein, and storage controlling method |
US10514849B2 (en) | 2016-09-05 | 2019-12-24 | Toshiba Memory Corporation | Storage system including a plurality of networked storage nodes |
JP2018185584A (ja) * | 2017-04-24 | 2018-11-22 | 富士通株式会社 | ストレージ装置、ストレージ装置の制御プログラムおよびストレージ装置の制御方法 |
WO2023162465A1 (ja) * | 2022-02-24 | 2023-08-31 | ソニーセミコンダクタソリューションズ株式会社 | ライトバッファ制御回路 |
Also Published As
Publication number | Publication date |
---|---|
US20150161043A1 (en) | 2015-06-11 |
US9501406B2 (en) | 2016-11-22 |
EP2884396A1 (en) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9501406B2 (en) | Storage control apparatus and storage control method | |
US7293136B1 (en) | Management of two-queue request structure for quality of service in disk storage systems | |
JP5958020B2 (ja) | ストレージシステム | |
US11030107B2 (en) | Storage class memory queue depth threshold adjustment | |
US7743216B2 (en) | Predicting accesses to non-requested data | |
US20200174938A1 (en) | Bypass storage class memory read cache based on a queue depth threshold | |
US9081686B2 (en) | Coordinated hypervisor staging of I/O data for storage devices on external cache devices | |
CN105117180B (zh) | 一种数据存储方法和装置以及固态硬盘 | |
US20100274933A1 (en) | Method and apparatus for reducing memory size and bandwidth | |
US20160210060A1 (en) | Dynamic resource allocation within storage devices | |
US7281086B1 (en) | Disk queue management for quality of service | |
JP6111575B2 (ja) | ストレージ装置、内部処理制御方法および内部処理制御プログラム | |
JP2013511081A (ja) | デバイス・アダプタを介して、データをキャッシュから複数のストレージ・デバイスの各々にデステージするための方法、システム及びコンピュータ・プログラム | |
US9658959B2 (en) | Cache resource manager | |
JP2013257801A (ja) | サーバコンピュータおよびドライブ制御装置 | |
US7596670B2 (en) | Restricting access to improve data availability | |
KR20170002866A (ko) | 분산 환경에서 사용자 애플리케이션의 액세스 특성에 따른 적응형 캐시 관리 방법 | |
Wang et al. | Exploration and exploitation for buffer-controlled HDD-Writes for SSD-HDD hybrid storage server | |
CN104679589A (zh) | 系统资源均衡调整方法及装置 | |
JP5949224B2 (ja) | ストレージ制御装置、該プログラム及び該方法 | |
JP6019940B2 (ja) | 情報処理装置、コピー制御プログラム、およびコピー制御方法 | |
JP2017027301A (ja) | ストレージ制御装置、階層化ストレージ制御プログラム、階層化ストレージ制御方法 | |
US9727279B2 (en) | Storage control apparatus controlling issuable number of requests and storage control method thereof | |
JP2017097466A (ja) | ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム | |
US8364893B2 (en) | RAID apparatus, controller of RAID apparatus and write-back control method of the RAID apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170613 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170814 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20171212 |