Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6443170B2 - 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法 - Google Patents
[go: Go Back, main page]

JP6443170B2 - 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法 - Google Patents

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

Info

Publication number
JP6443170B2
JP6443170B2 JP2015064729A JP2015064729A JP6443170B2 JP 6443170 B2 JP6443170 B2 JP 6443170B2 JP 2015064729 A JP2015064729 A JP 2015064729A JP 2015064729 A JP2015064729 A JP 2015064729A JP 6443170 B2 JP6443170 B2 JP 6443170B2
Authority
JP
Japan
Prior art keywords
storage device
unit
data
parameter
ssd
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
Application number
JP2015064729A
Other languages
English (en)
Other versions
JP2016184326A (ja
Inventor
和一 大江
和一 大江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015064729A priority Critical patent/JP6443170B2/ja
Priority to US15/065,953 priority patent/US10725710B2/en
Publication of JP2016184326A publication Critical patent/JP2016184326A/ja
Application granted granted Critical
Publication of JP6443170B2 publication Critical patent/JP6443170B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems

Landscapes

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

Description

本発明は、階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法に関する。
ストレージシステムのコストパフォーマンスを向上させる目的で、SSD(Solid State Drive)とHDD(Hard Disk Drive)とを組み合わせた階層ストレージシステムが知られている。階層ストレージシステムにおいては、一定期間にアクセス頻度の高いデータをSSDに置くことでデータアクセスの高速化を実現する。
ファイル共有ストレージへのアクセスパターンにおいては、記憶領域の狭い範囲に数分から数十分IO(Input Output)が集中し、時間と共に別の領域に移動する特徴があるため、長い期間の頻度でデータを移動する従来型の階層ストレージシステムは有効でない。
そこで、近年においては、階層ストレージシステムにおいて、短い時間でIO集中が発生した領域をその都度捉えてSSDに移動するOTF−AST(On-The-Fly-Automated Storage Tiering)がさらに知られている。
図9はOTF−ASTを説明するための図である。図9に示す制御装置110は、SSD120とHDD130とに接続され、ストレージシステムを構成する。
OTF−ASTにおいては、図示しないサーバから認識される1つのストレージボリュームであるLUNを、予め決められたサイズ(例えば1GByte)で分割した1単位であるサブLUN(subLUN)単位で管理する。
制御装置110は、分析・構成変更エンジン111と階層ドライバ112とを備える。分析・構成変更エンジン111は、どのサブLUNをSSDに移動すべきかの判断を行なう。階層ドライバ112は、SSD120とHDD130との間におけるサブLUNの移動と、SSD120もしくはHDD130へのユーザIOの振り分けを行なう。
階層ドライバ112は、HDD130とSSD120との間における、サブLUN単位でのデータの移動(転送)を制御する。
図9に示すように、階層ドライバ112は、ディスパッチャ112a,階層テーブル112bおよび一時バッファ112cを有する。
ディスパッチャ112aは、階層テーブル112bを参照して、HDDドライバ114およびSSDドライバ113に対して、サブLUN単位でのデータの移動(転送)の指示を行なう。ディスパッチャ112aは、例えば、デバイス間のデータコピーを非同期で実行するkcopydの機能を用いてSSD120とHDD130との間でサブLUNの移動を行なう。
階層テーブル112bは、SSD120とHDD130との関連を示すテーブルである。一時バッファ112cは、IO要求を一時的に格納する。
SSDドライバ113は、階層ドライバ112の指示に基づいてSSD120へのアクセスを制御する。HDDドライバ114は、階層ドライバ112の指示に基づいてHDD130へのアクセスを制御する。
ここで、分析・構成変更エンジン111の動作について説明する。分析・構成変更エンジン111は、ログプール111a,ワークロード分析部111bおよび移動指示部111cを備える。ログプール111aは、例えば1分間隔でサブLUNごとのIO数の集計・蓄積を行なう。ログプール111aは、例えば、blktraceを用いてSSD120やHDD130についてトレースされたIOの情報を収集する。
ワークロード分析部111bは、ログプール111aに蓄えられた集計データから、直近の1個のデータを取り出して移動判定を行なう。具体的には、ワークロード分析部111bは以下の処理を行なう。
(処理1)ログプール111aから直前に登録されたデータを1つ取り出す。
(処理2)IO数が多い順にサブLUNの並べ替えを行ない、上位n個までのサブLUNを抽出して、それらのIO数を合計する。
(処理3)上記処理2のIO数の合計値が全IO数のm%未満である場合には、他サブLUNとの負荷の差が十分に大きくなく、サブLUNをSSD120に移動するメリットがないとみなし、後述する処理6へ移行する。
(処理4)上記処理2で抽出したサブLUNのうち、c回連続して抽出されたサブLUNをSSD120へ移動させるサブLUNと判定する。このようなサブLUNにおいては高負荷が持続するものと期待できるからである。
(処理5)上記処理2で抽出したサブLUNをワークロード分析部111b内で一時保存させる。さらに、以前に保存したサブLUNのデータの内、c回前のデータは廃棄する。
(処理6)例えば1分間スリープした後に、処理1へ戻る。
特開2014−164510号公報 特表2013−543996号公報 特開2013−246773号公報 特開2013−168162号公報
大江和一、外2名、"On-The-Fly-Automated Storage Tiering (OTF-AST)の提案"、平成26年3月7日、情報処理学会研究報告、Vol.2014-OS-128 No.6
上記処理1〜6において、n,m,cの各値は、HDD130とSSD120との間で移動するサブLUNの数と移動タイミングを定めるためのチューニングパラメータであり、OTF−ASTにおいて生じる負荷(ワークロード)に応じて最適値が異なる。
従来のストレージシステムにおいては、直前の数日間でのワークロード分析結果に基づいてn,m,cの各値を求め、これらのn,m,cの各値を用いてOTF−AST制御を行なっている。すなわち、直前の数日間と同じアクセスパターンが続くことを前提にOTF−ASTの制御を行なっている。
従って、ワークロードの変化やユーザからのアクセスパターンの変化に応じた効率的なOTF−AST制御を行なうことができず、階層ストレージシステムとしての性能を十分に発揮することができないという課題がある。
1つの側面では、本発明は、階層ストレージシステムにおいて、ワークロードの変化に応じて効果的に性能を引き出すことができるようにすることを目的とする。
このため、この階層ストレージ装置は、第1の記憶装置と、前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と、前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する収集部と、前記収集部が収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する第1特定部と、前記第1特定部が特定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる移動処理部と、前記収集部が収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する第2特定部と、前記収集部によって収集された前記アクセス情報に基づき、前記第2特定部によって前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する計数部と、前記計数部によって計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1特定部が用いる前記第1のパラメータを前記推パラメータを用いて更新する更新部とを備える。
一実施形態によれば、階層ストレージ装置において記憶装置を効率よく動作させることができ、装置性能を向上させることができる。
実施形態の一例としての階層ストレージ装置の構成を示す図である。 (a),(b)は実施形態の一例としての階層ストレージ装置における階層管理部11の処理を説明するための図である。 実施形態の一例としての階層ストレージ装置におけるSSDへの移動候補抽出を説明するための図である。 実施形態の一例としての階層ストレージ装置におけるSSDへの移動判定手法を説明するための図である。 実施形態の一例としての階層ストレージ装置におけるHDDへの移動判定手法を説明するための図である。 実施形態の一例としての階層ストレージ装置におけるHDDへの移動判定手法を説明するための図である。 実施形態の一例としての階層ストレージ装置における性能推定部によって集計される情報例を示す図である。 階層ストレージ制御装置のハードウェア構成例を示す図である。 OTF−ASTを説明するための図である。
以下、図面を参照して本階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
図1は実施形態の一例としての階層ストレージ装置1の構成を示す図である。図1に示すように、階層ストレージ装置(ストレージ装置)1は、階層ストレージ制御装置10,SSD20,及びHDD30をそなえる。
階層ストレージ制御装置10は、図示しない、入力装置やネットワークを介したホスト装置からのユーザIOに応じて、SSD20及びHDD30への種々のアクセスを行なうことができる。例えば、階層ストレージ制御装置10は、SSD20及びHDD30へのリード又はライト等のアクセスを行なうことができる。階層ストレージ制御装置10としては、PC(Personal Computer)やサーバ,又はコントローラモジュール(CM;Controller Module)等の情報処理装置が挙げられる。
また、本実施形態に係る階層ストレージ制御装置10は、ユーザIOのアクセス頻度に応じて、アクセス頻度が低い領域をHDD30に配置する一方、アクセス頻度が高い領域をSSD20に配置する、動的階層制御を行なうことができる。
HDD(第1の記憶装置)30は、種々のデータやプログラム等を格納する記憶装置の一例であり、SSD(第2の記憶装置)20は、HDD30とは異なる性能の(例えばより高速な)記憶装置の一例である。本実施形態において、互いに異なる記憶装置(以下、便宜上、第1及び第2の記憶装置と表記する場合がある)として、HDD30等の磁気ディスク装置,SSD20等の半導体ドライブ装置をそれぞれ例に挙げているが、これに限定されるものではない。第1及び第2の記憶装置として、互いに性能差(例えばリード/ライトの速度差)のある種々の記憶装置が用いられればよい。
SSD20及びHDD30は、階層ストレージ装置1におけるストレージボリュームを構成する。
以下、ホスト装置等から認識される1つのストレージボリュームをLUN(Logical Unit Number)という。さらに、LUNを予め決められたサイズ(例えば1GByte)で分割した1単位(単位領域)をサブLUN(sub LUN)という。なお、サブLUNをセグメントという場合もある。サブLUNにはLBA(Logical Block Addressing)が小さい順に識別情報であるサブLUN IDが採番され、設定される。例えば、300GBの容量があるLUNを1GB単位で分割すると300個のサブLUNを持つことになり、1つのサブLUNのサイズは1GBである(図2(a),(b)参照)。以下、サブLUNのサイズが1GBである例について示す。本例においては、サブLUN IDは1から始まって300で終了するものとする。このサブLUN IDを用いることで個々のサブLUNを特定することができる。
SSD20及びHDD30の各々は、ストレージボリューム上のサブLUN(単位領域)のデータを格納可能な記憶領域を含む。階層ストレージ制御装置10は、サブLUN単位で、SSD20−HDD30間の領域移動を制御する。
なお、図1では、階層ストレージ装置1がそれぞれ1つのSSD20及びHDD30をそなえるものとしているが、これに限定されるものではなく、それぞれ複数のSSD20及びHDD30をそなえてもよい。
[1]階層ストレージ制御装置の説明
次に、階層ストレージ制御装置10の詳細について説明する。
階層ストレージ制御装置10は、一例として、図1に示すように、階層管理部11,階層ドライバ12,SSDドライバ13,パラメータ評価部15及びHDDドライバ14をそなえる。なお、例えば、階層管理部11は、ユーザ空間で実行されるプログラムとして実現され、階層ドライバ12,SSDドライバ13,及びHDDドライバ14は、OS(Operating System)空間で実行されるプログラムとして実現される。
階層ストレージ制御装置10は、短い時間でIO集中が発生した領域をその都度捉えてSSD20に移動するOTF−ASTを実現する。
本実施形態においては、階層ストレージ制御装置10は、例えば、Linux(登録商標) device−mapperの機能を用いるものとする。device−mapperがストレージボリュームをサブLUN単位で監視し、高負荷となったサブLUNのデータをHDD30からSSD20へ移動することで高負荷領域へのIOを処理する。
例えば、階層ストレージ制御装置10のユーザ空間で実行されるアプリケーションがデータ格納先の変更要求としてコピー指示を発行すると、OS空間で実行される階層ドライバ12は、コピー指示を受け取ると、格納先を変更するため、デバイス間のデータコピーを非同期で実行するkcopydに、SSD20−HDD30間のコピー(移動)を指示する。すなわち、HDD30とSSD20との間におけるサブLUNの移動は、kcopydによって実現される。
なお、kcopydによる移動中、ユーザからIO要求が発行されると、階層ドライバ12は、メモリ等の図示しないペンディングキューにIO要求を格納し、移動完了まで待ち合わせを行なう。なお、device−mapperおよびkcopydはコンピュータプログラムとして実装されている。
階層管理部11は、サブLUNに対するデータアクセスを分析することで、HDD30からSSD20へデータを移動させるサブLUNを特定(移動候補抽出)する。また、階層管理部11は、SSD20からHDD30に対して、または、HDD30からSSD20に対して、サブLUNのデータを移動させる。
階層管理部11は、例えばblktraceを用いて、SSD20又は/及びHDD30についてトレースされたIOの情報に基づいて、領域移動を行なうサブLUNを判定し、判定したサブLUNのデータの移動を階層ドライバ12に指示する。ここで、blktraceは、ブロックIOレベルでのIOをトレースするコマンドである。階層管理部11は、blktraceに代えて、ディスクIOの利用状況を確認するコマンドであるiostatを用いてもよい。なお、blktrace及びiostatはOS空間で実行される。
階層管理部11は、図1に示すように、データ収集部(収集部)11a,第1ワークロード分析部11bおよび移動指示部11cとしての機能をそなえる。
階層管理部11は、例えば、Linux上においてはログプール(Log Pool),ワークロード分析およびサブLUN移動指示の3つのコンポーネントを有する分割・構成変更エンジンとして実装される。そして、これらのログプール,ワークロード分析およびサブLUN移動指示の各コンポーネントが、図1に示すデータ収集部11a,第1ワークロード分析部11bおよびサブLUN移動指示部11cとしての機能をそれぞれ実現する。
データ収集部(収集部)11aは、blktraceを用いてSSD20又は/HDD30についてトレースされたIOの情報を所定間隔(例えば1分間隔)で収集する。データ収集部11aは、IOトレースにより、例えばtimestampやLBA(Logical Block Addressing ),r/w(read/write),length等の情報を採取する。LBAからはサブLUN IDを求めることができる。
そして、データ収集部11aは、収集した情報に基づいて、サブLUNごとのIO数を集計する。
データ収集部11aは、一定時間間隔(t)ごとにサブLUN単位でIO数を集計する。例えば、階層管理部11が1分間隔でサブLUNの移動判定を行なう場合には、この一定時間間隔(t)は1分に設定される。
図2(a),(b)は実施形態の一例としての階層ストレージ装置1における階層管理部11の処理を説明するための図である。
図2(a)はデータサイズが300GBのLUNを例示している。図2(b)は図2(a)に示すLUNを1GB単位で分割して形成された300個のサブLUN(サブLUN ID=1〜300)のそれぞれに発生したIO数を1分毎に集計した例を示す。
例えば、図2(a),(b)に示す例において、サブLUN ID=2で特定されるサブLUNには、10:01台に760回のIOアクセスが発生したことを示す。
データ収集部11aは、図2(b)に示すような集計結果を図示しないデータベース等に書き込む。データ収集部11aによって収集されたこれらの情報は、後述する第1ワークロード分析部11b,第2ワークロード分析部151a,151b,151cおよび性能推定部152a,152b,152cによって用いられる。
なお、データ収集部11aが収集し集計する情報はIO数に限定されるものではなく、他の情報を収集してもよい。例えば、データ収集部11aは、全セグメントを対象にした(全セグメントの)合計IO数及び平均レスポンス等も集計し、タイムスタンプとともにデータベースに書き込んでもよい。また、データ収集部11aは、各セグメント又は/及び全セグメントへのIOのリードライト比(rw比)を集計し、上述した情報に含めてもよい。
このように、データ収集部11aは、SSD20又はHDD30で使用される領域を所
定の大きさで分割した複数の単位領域について、入力されたIOアクセス要求に関する情報を収集する収集部の一例である。
第1ワークロード分析部(第1特定部)11bは、データ収集部11aによって収集されたサブLUNごとのIO数に基づき、SSD20又はHDD30にデータを移動するサブLUNを選択し、選択したセグメントに関する情報を移動指示部11cに渡す。
以下に、第1ワークロード分析部11bによるサブLUNの選択手法(移動判定アルゴリズム)の一例を説明する。
第1ワークロード分析部11bは、サブLUNの移動判定を行なうに際して、最大サブLUN数(n),IO割合(m),IO集中継続数(c),timeout(o)およびiops閾値(i)をパラメータ(入力情報)として用いる。
最大サブLUN数(n)は、SSD20とHDD30との間で同時に移動を行なうサブLUNの数である。この最大サブLUN数(n)としては、一定時間間隔(t)内に移動可能なサブLUN数が目安として設定される。例えば、t=1分で1つのサブLUNの移動に3秒かかる場合には、最大サブLUN数(n)には20前後を設定することが望ましい。
IO割合(m)は、SSD20移動可否の判断に用いられる値であり、全IOに示す割合を指す。IO数が多い順に最大サブLUN数(n)までのサブLUNの合計IO数がIO割合(m)を超えると、その最大サブLUN数(n)までに入ったサブLUN群がSSD20への移動候補として扱われる。
IO割合(m)は、値を大きく設定すると、サブLUN移動後の性能向上効果は大きくなるがサブLUN移動が生じ難くなる。また、逆にIO割合(m)の値を小さくすると、サブLUN移動後の性能向上効果は小さくなるがサブLUN移動頻度は上昇する。IO割合(m)としては、例えば、60%程度とすることが望ましい。
IO集中継続数(c)は、IO割合(m)で抽出したサブLUNのIO集中が何分継続するのかを判断するために用いられる値である。すなわち、IO集中継続数(c)は、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報を表す。
例えば、3分以上IO集中が継続したサブLUNをSSD20への移動対象とする場合には、c=3に設定し、同一サブLUNがIO割合(m)の条件を連続して3回満たすかを監視し、条件を満たした場合に対象のサブLUNをSSD20に移動する。
timeout(o)は、SSD20からHDD30にサブLUNを移動させる、すなわち、SSD20からサブLUNを落とす条件の判断に用いられる。SSD20に移動したサブLUNに関して、IO割合(m)を用いて抽出するSSD移動候補にo回連続して入らない場合に、SSD20から落とされる。
iops閾値(i)は、本移動判定アルゴリズムを適用するか否かの判断を行なう足切り(カットオフ)のための閾値である。LUN全体に発生する負荷が低い状態では、本移動判定アルゴリズムを適用して階層移動を行なっても大きな効果は望めない。そこで、LUN全体iopsがiを下回った場合には本移動判定アルゴリズムを適用しない。
例えば、i=50とすると、LUN全体のiopsが50未満の場合は次のデータを受け取るまで階層移動に関する処理は行なわない。
以下に、第1ワークロード分析部11bによるSSD20への移動判定アルゴリズムを説明する。
まず、第1ワークロード分析部11bによるSSD20への移動候補抽出手法について示す。
第1ワークロード分析部11bは、サブLUN単位のIO数が入力された1つのデータを用いてSSD20への移動候補を抽出する。
図3は実施形態の一例としての階層ストレージ装置1におけるSSD20への移動候補抽出を説明するための図である。
この図3においては、LUNのサイズが300GBであり、サブLUNのサイズが1GBであり、パラメータとしてi=50(iops)、n=20(サブLUN)、m=60(%)が設定された例を示す。
本手法においては、移動判定アルゴリズムを動作させる環境上で1−2分で移動可能な範囲に入ったIO数が多いサブLUNを抽出し、隣接サブLUNでグルーピングした上で、あらかじめ決めておいたIO集中(m=60%)以上となるとSSD20への移動候補とする。
隣接サブLUNでグルーピングを行なうのは、IO集中が発生したサブLUNの周囲に近い将来負荷が移動する可能性が高いからである。
本アルゴリズムは、SSD20移動による効果を厳密に判断するのではなく、移動によって効果が出る可能性が高いケースを抽出して投機的に動かす方式である。
次に、図3を参照しながら、本移動判定アルゴリズムの具体的な手順を説明する。本移動判定アルゴリズムは、以下のステップ1〜4の処理を備える。
[ステップ1]データ収集部11aがある時間サブLUN単位のIO数情報を獲得したら、第1ワークロード分析部11bは、LUN全体のIO数を計算し、その値をtで除算することで、LUN全体のiopsを求める。図3においては、i=50の場合の例を示している。
LUN全体のiopsの値がiを下回っていたら、このデータでの処理を終了し、次のデータ待ちを行なう。図3に示す例では、LUN全体のiopsがi(=50)以上であるので、ステップ2に進む。
[ステップ2]獲得したデータに関して、IO数が多い順にサブLUNをソートし、最大サブLUN数(n)までのサブLUNでカットオフを行なう。図3においては、n=20の場合の例を示しており、サブLUN ID=66を先頭とするサブLUN ID=68までの上位20個のサブLUNを残して、サブLUN ID=114以降のサブLUNのカットオフを行なう。
[ステップ3]残ったサブLUN群の中から隣接サブLUNでグルーピングを行なう。さらに、各グループの合計IO数順にソートする。図3に示す例では、ステップ3において、ステップ2でカットオフした上位20のサブLUNを隣接サブLUNでグルーピングし、グループの合計IO数でソートしておく。
[ステップ4]サブLUNグループのIO数を加算していき、サブLUNグループでカットオフを行なう。図3に示す例においては、IO数の多い順にサブLUNグループのIO数を加算していき、全IOの60%(=m)を超えたところで、カットオフを行なっている。
次に、図4を参照しながら、第1ワークロード分析部11bによるSSD20への移動判定について説明する。
図4は実施形態の一例としての階層ストレージ装置1におけるSSDへの移動判定手法を説明するための図である。この図4においては、LUNのサイズが300GBであり、サブLUNのサイズが1GBであり、パラメータとしてt=60(秒)、c=3(回)が設定された例を示す。
第1ワークロード分析部11bは、上述の如くSSD0への移動候補となったあるサブLUNグループがc回連続して移動候補となった場合に、SSD20に移動させる対象として決定する。
図4に示す例においては、ある時刻TでSSD20への移動候補となったサブLUN ID=65,66,67,68が、次のデータが得られる時刻T+60、さらにその次の時刻T+120でも移動候補に入っている。すなわち、時刻T+120の時点でc=3回連続となり、SSD20への移動が行なわれることになる。
時刻T,T+60,T+120でサブLUN IDは必ずしも一致しないが、重複したサブLUN IDが存在すれば同一サブLUNグループへの負荷とみなす。さらに、SSD20へ移動判定が行なわれたサブLUNグループは、その後のデータで新たなサブLUNがサブLUNグループに加わると即座にSSD20への移動を行なう。
図4に示す例においては、時刻T+120でサブLUN ID=65〜68がSSD20への移動判定となるが、時刻T+180でサブLUN ID=69が新たにサブLUNグループに加わり、即座にSSD20への移動が実行される。
次に、図5,図6を参照しながら、第1ワークロード分析部11bによるHDD30への移動判定について説明する。
図5および図6は実施形態の一例としての階層ストレージ装置1におけるHDDへの移動判定手法を説明するための図である。これらの図5および図6においては、LUNのサイズが300GBであり、サブLUNのサイズが1GBであり、パラメータとしてt=60(秒)、o=10(回)が設定された例を示す。
HDD30への移動は、サブLUNグループへの負荷が完全に収束したタイミングで行なう必要がある。
SSD20へ移動済みになったサブLUNグループに対しても、新しいサブLUN単位のIO数データを得るたびに、IO割合(m)までのサブLUNに含まれるかどうかを監視する。timeout(o)回連続してIO割合(m)に入らなかったサブLUNはHDD30へ移動させる。
図5においては、SSD20に移動となったサブLUNグループの一部のサブLUNをHDD30へ移動する例を示している。サブLUN ID=65,66のサブLUNは、10回連続してIO割合(m)までのサブLUNに含まれなかったので、HDD30に移動させる。
また、図6においては、サブLUN ID=65〜69によって構成されるサブLUNグループは、10回連続してIO割合(m)までのサブLUNに含まれなかったので、HDD30に移動させる。
以下、サブLUNの移動判定に用いられる、上述した最大サブLUN数(n),IO割合(m),IO集中継続数(c),timeout(o)およびiops閾値(i)の各パラメータの組み合わせをパラメータセットという。また、特に、第1ワークロード分析部11bがサブLUNの移動判定に用いるパラメータセットを第1パラメータセットという場合がある。
上述の如く、第1ワークロード分析部11bは、データ収集部11aが収集したIO数(アクセス情報)に基づき第1のパラメータ(第1パラメータセット)を用いて、HDD30における、SSD20へデータを移動させる移動対象領域(サブLUN)を特定する第1特定部(11b)として機能する。
移動指示部11cは、第1ワークロード分析部11bからの指示に基づいて、階層ドライバ12に、選択されたサブLUNのデータの、HDD30からSSD20への移動、又は、SSD20からHDD30への移動を指示する。このとき、移動指示部11cは、選択されたサブLUNのストレージボリューム上のオフセットをHDD30上のオフセットに変換してサブLUNごとにデータの移動を指示してもよい。例えば、HDD30のセクターサイズが512Bである場合に、ボリューム上のオフセットが1GBであれば、HDD30上でのオフセットは1×1024×1024×1024/512=2097152となる。
このように、移動指示部11cは、第1ワークロード分析部11bが特定したHDD30における移動対象領域のデータをSSD20に移動させる移動処理部として機能する。
パラメータ評価部15は、データ収集部11aによって収集された統計データを用いて、複数のパラメータセット(パラメータ)の評価を行ない、その評価結果に基づき、最適なパラメータセットを決定する。
パラメータ評価部15は、第1ワークロード分析部11bがサブLUNの移動判定に用いたパラメータセット(第1パラメータセット:第1のパラメータ)を含む複数のパラメータセットについて評価を行なう。具体的には、パラメータ評価部15は、これらの複数のパラメータセットを、上述した第1ワークロード分析部11bと同様のサブLUNの移動判定手法にそれぞれ適用することで、各パラメータセット毎に移動させるサブLUNを決定する。
図1に示す例においては、パラメータ評価部15は、第2ワークロード分析部151a,151b,151c,性能推定部152a,152b,152cおよびパラメータ判定部153を備える。
第2ワークロード分析部151a,151b,151cは、互いに異なるパラメータセットを、上述した第1ワークロード分析部11bと同様のサブLUNの移動判定手法(移動判定アルゴリズム)に適用することで、SSD20とHDD30との間で移動させるサブLUNをそれぞれ決定(特定)する。
第2ワークロード分析部151a,151b,151cには、それぞれデータ収集部11aによって採取されたサブLUNごとのIO数が入力される。
第2ワークロード分析部151aは第1ワークロード分析部11bと同じ第1パラメータセットを前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させる候補のサブLUNを決定する。
第2ワークロード分析部151bは、第2ワークロード分析部151aとは異なるパラメータセット(第2パラメータセット)を前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させる候補のサブLUNを決定する。
第2ワークロード分析部151cは、第2ワークロード分析部151aおよび第2ワークロード分析部151bとは異なるパラメータセット(第3パラメータセット)を前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させる候補のサブLUNを決定する。
すなわち、第2ワークロード分析部151a,151b,151cは、データ収集部11aが収集したアクセス情報に基づき複数のパラメータ(第1〜第3パラメータセット)をそれぞれ用いて、これらのパラメータ毎に、HDD30とSSD20との間でデータを移動させる候補のサブLUN(移動対象領域候補)を特定する。
また、第2ワークロード分析部151a,151b,151cは、それぞれSSD20に移動するサブLUNを示す情報(サブLUN ID)を定期的に(例えば毎分)出力する。
第2ワークロード分析部151aによって決定された移動対象のサブLUNのサブLUN IDが性能推定部152aに通知される。同様に、第2ワークロード分析部151bによって決定された移動対象のサブLUNのサブLUN IDが性能推定部152bに通知され、第2ワークロード分析部151cによって決定された移動対象のサブLUNのサブLUN IDが性能推定部152cに通知される。
そして、性能推定部152a,152b,152cにおいて、第2ワークロード分析部151a,151b,151cにおいてそれぞれ決定されたサブLUNに対する評価が行なわれる。
図1に示す例においては、上述の如く第1パラメータセットを含む3種類のパラメータセットをそれぞれ上述した移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させるサブLUNを決定する。
例えば、第1パラメータセットに含まれる複数のパラメータのうち、あるパラメータ(例えばIO集中継続数(c))の値を第1パラメータセットよりも大きい値としたものを第2パラメータセットとして用いる。また、第1パラメータセットに含まれる複数のパラメータのうち、あるパラメータ(例えばIO集中継続数(c))の値を第1パラメータセットよりも小さい値としたものを第3パラメータセットとして用いる。これらの第2パラメータセットおよび第3パラメータセットにおける他のパラメータは第1パラメータと同一のものを用いることができる。
例えば、階層ストレージ装置1において性能向上を図るためには、長時間負荷が集中したサブLUNを選んでSSD20に移動することが有効である。
そこで、サブLUNに発生した負荷集中の継続時間をキーにSSD20への移動判定を行なう。例えば、3分負荷集中したサブLUNはさらに長時間負荷が集中することを期待してSSD20への移動を指示する。この基準値として用いる“3分”を長くするもしくは短くするためにパラメータIO集中継続数(c)が用いられる。
基準値を3分よりも長くすることで、短時間で終わってしまう負荷SSD20に移動してしまうリスクは減少する。しかしながらSSD20移動判断までの時間が長くなってしまい、その分、性能向上効果が小さくなる。従って、基準値として最適な値を決定することが重要である。
以下、第2ワークロード分析部を示す符号としては、複数の第2ワークロード分析部のうち1つを特定する必要があるときには符号151a〜151cを用いるが、任意の第2ワークロード分析部を指すときには符号151を用いる。
第2ワークロード分析部151は、評価を行なうパラメータセットの数と同数備えられる。
なお、上記においては、パラメータセットのうちIO集中継続数(c)を変更して評価を行なう例について示したが、これに限定されるものではなく種々変形して実施することができる。例えば、IO集中継続数(c)に代えて、IO割合(m)や最大サブLUN数(n)を変更してもよい。また、パラメータセットを構成するパラメータのうち2つ以上のパラメータを変更してもよく、また、最大サブLUN数(n),IO割合(m),IO集中継続数(c)以外のパラメータを変更してもよい。
さらに、上述した例においては、第1〜第3の3つのパラメータセットの評価を行なう例について示したが、これに限定されるものではなく4つ以上のパラメータを評価してもよい。評価するパラメータセットを増やす場合には、これらのパラメータセットに合わせて4つ以上の第2ワークロード分析部151を備えることで対応できる。
例えば、最大サブLUN数(n),IO割合(m)およびIO集中継続数(c)の3つのパラメータについて、それぞれ第1パラメータセットを基準に、低減・維持・増加させることで、3×3×3=27種類のパラメータセットの評価を同時に行なうことができる。このような場合には、27個の第2ワークロード分析部151を備える。
性能推定部152a,152b,152cは、各ワークロード分析部151からSSD20へ移動させるサブLUNとして通知されるサブLUNのそれぞれについて、当該サブLUNをSSD20へ移動させた場合のIO性能をそれぞれ推定する。
なお、以下、性能推定部を示す符号としては、複数の性能推定部のうち1つを特定する必要があるときには符号152a,152b,152cを用いるが、任意の性能推定部を指すときには符号152を用いる。
性能推定部152aには、第2ワークロード分析部151aがSSD20に移動させるサブLUNとして決定したサブLUNを特定する情報(サブLUN ID)が入力される。同様に、性能推定部152bには、第2ワークロード分析部151bがSSD20に移動させるサブLUNとして決定したサブLUNのサブLUN IDが入力される。また、性能推定部152cには、第2ワークロード分析部151cがSSD20に移動させるサブLUNとして決定したサブLUNのサブLUN IDが入力される。
また、性能推定部152a,152b,152cには、それぞれデータ収集部11aによって採取されたサブLUNごとのIO数が入力される。
性能推定部152は、データ収集部11aから入力されたサブLUN毎のIO数を用いて、第2ワークロード分析部151から通知された各サブLUN毎に、それぞれのIO数を集計(計数)する。
仮に第2ワークロード分析部151から通知された各サブLUNをSSD20に移動させた場合には、当該サブLUNへのIOはSSD20においてヒット(SSDヒット)することになる。性能推定部152は、このように第2ワークロード分析部151から通知された各サブLUNをSSD20に移動させた場合にSSD20において生じるSSDヒット数を推定(計数)する。
性能推定部152は、データ収集部11aによって一定時間間隔(t:例えば、t=1分)で収集されるサブLUN単位のIO数と、第2ワークロード分析部151から通知されるSSD20に移動させる各サブLUNのサブLUN IDとを照らし合わせることで、当該サブLUNをSSD20に移動させた場合に、各時刻毎にどのサブLUNがSSDヒットとなるかを知ることができ、また、そのSSDヒット数がいくつになるかを算出することができる。
図7は実施形態の一例としての階層ストレージ装置1における性能推定部152によって集計される情報例を示す図である。この図7においては、サブLUN(サブLUN ID=1〜300)のそれぞれに発生したIO数を1分毎に集計した例を示す。
この図7に示す例において、時刻10:00に第2ワークロード分析部151がサブLUN ID=2のサブLUNをSSD20へ移動すると決定する。ここで、図7に示すように、サブLUN ID=2のサブLUNには10:00台に720回のIOが発生している。
移動指示部111cが、このサブLUN ID=2のサブLUNをSSD20に移動させた場合には、このIO数はSSDヒットする回数とみなすことができる。
また、たとえ10:01台においては、このサブLUN ID=2のサブLUNをSSD20へ移動させる移動指示が発行されない場合であっても、このサブLUN ID=2のサブLUNは既にSSD20に移動済み(SSDアップ済み)である。従って、10:01台に発生した760回のIOもSSDヒットする回数とみなすことができる。
性能推定部152a〜152cは、それぞれ各時刻帯におけるSSDヒットとみなされるIO数を累計する。これにより、パラメータセットごと(第1パラメータセット〜第3パラメータセット)にSSDヒットとみなされるIO数の累積値が求められる。
性能推定部152a〜152cは、算出したパラメータセットごとのSSDヒットとみなされるIO数の累積値をメモリ10b(図6参照)等の記憶領域に格納する。メモリ10b等に格納されたこれらのIO数の累積値は、後述するパラメータ判定部153によって読み出される。すなわち、性能推定部152は、算出したパラメータセットごとのSSDヒットとみなされるIO数の累積値をパラメータ判定部153に通知する。
なお、性能推定部152はSSDヒットとみなされるIO数の累積値をパラメータ判定部153に出力すると同時に、それまでの累積値をリセットして新たな蓄積を行なう。
上述の如く、パラメータ評価部15においては、第1ワークロード分析部11bによる移動候補のサブLUNの決定と並行して、複数種類のパラメータセットを用いてSSD20とHDD30との間におけるデータ移動候補のサブLUNを仮想的に決定し、その性能シミュレーションを行なう。
パラメータ判定部153は、性能推定部152によって算出されたパラメータセットごとのSSDヒットとみなされるIO数の累積値を、メモリ10b等の記憶領域から所定間隔毎(例えば1時間毎)に読み出す。
そして、パラメータ判定部153は、これらのSSDヒットとみなされるIO数の累積値を比較し、これらうち、SSDヒットとみなされるIO数の累積値が最大のパラメータセットを、推奨パラメータセットとして決定する。
階層ストレージ装置1においては、SSDヒットとみなされるIO数が多いほど、IO要求に対する応答性能が高く、装置性能を効率的に引き出すことができる。
パラメータ判定部153は、決定した推奨パラメータセットを用いて、階層管理部11の第1ワークロード分析部11bが使用する第1パラメータセットを更新する。これにより、第1ワークロード分析部11bにおいて、SSDヒット率が高くなることが期待できるパラメータセットが設定され、装置性能を効率的に引き出すことができる。
パラメータ判定部153は、決定した推奨パラメータセットを第1ワークロード分析部11bに通知して、第1パラメータセットの変更を指示する。
第1ワークロード分析部11bは、通知された推奨パラメータセットと第1パラメータセットとを比較し、推奨パラメータセットと第1パラメータセットとが異なる場合に、第1パラメータセットを推奨パラメータセットを用いて更新する。
階層ドライバ12は、IOマップ部12a,階層テーブル12bおよび一時バッファ12cをそなえる。
IOマップ部12aは、ユーザからのストレージボリュームに対するIO要求を階層テーブル12bを用いてSSDドライバ13又はHDDドライバ14に振り分け、SSDドライバ13又はHDDドライバ14からのIOレスポンスをユーザに返す。
一時バッファ12cは、IO要求を一時的に格納する保持部であり、図示しないメモリ等により実現される。IOマップ部12aは、階層移動中のサブLUNに対してIO要求が発行されると、当該サブLUNのデータの移動が完了するまで、当該IO要求を一時バッファ12cに格納し、IO要求を保留する。データの移動が完了すると、IOマップ部12aは、一時バッファ12cから当該IO要求を読み出して、SSDドライバ13又はHDDドライバ14への振り分けを再開する。
階層テーブル12bは、IOマップ部12aによるIO要求の振り分けによる階層制御に用いられるテーブルであり、例えば図示しないメモリ等により実現される。
階層テーブル12bは、例えば、SSD20にデータが移動されたセグメントごとに、SSDオフセットと、HDDオフセットと、状態とを対応させて記憶するテーブルである。なお、階層テーブル12bは公知であり、その詳細な説明は省略する。
IOマップ部12aは、上述した階層テーブル12bを参照することで、IO要求をSSDドライバ13又はHDDドライバ14のいずれに振り分けるかを判定することができるとともに、IO要求がセグメント移動中であるか否かを判定することができる。
図1の説明に戻り、階層ドライバ12は、移動指示部11cからサブLUN移動指示(セグメント移動指示)を受け取ると、HDD30又はSSD20の移動対象の単位領域に記憶されたデータをSSD20又はHDD30に移動する移動処理を実行する。具体的には、階層ドライバ12は、階層テーブル12bにより、サブLUN移動指示で指定されたサブLUNのデータをSSD20−HDD30間で移動する。
なお、この階層ドライバ12によるSSD20−HDD30間のデータ移動は、既知の手法により実現することができ、その説明は省略する。
SSDドライバ13は、階層ドライバ12の指示に基づいてSSD20へのアクセスを制御する。HDDドライバ14は、階層ドライバ12の指示に基づいてHDD30へのアクセスを制御する。
[2]ハードウェア構成例
次に、図8を参照して、図1に示す階層ストレージ制御装置10のハードウェア構成について説明する。図8は図1に示す階層ストレージ制御装置10のハードウェア構成例を示す図である。
階層ストレージ制御装置10は、図8に示すように、CPU(Central Processing Unit)10a,メモリ10b,記憶部10c,インタフェース部10d,入出力部10e,記録媒体10f,及び読取部10gをそなえる。
CPU10aは、対応する各ブロック10b〜10gと接続され、種々の制御や演算を
行なう演算処理装置(プロセッサ)である。CPU10aは、メモリ10b,記憶部10c,記録媒体10fや10h,又は図示しないROM(Read Only Memory)等に格納されたプログラムを実行することにより、階層ストレージ制御装置10における種々の機能を実現する。
メモリ10bは、種々のデータやプログラムを格納する記憶装置である。CPU10aは、プログラムを実行する際に、メモリ10bにデータやプログラムを格納し展開する。なお、メモリ10bとしては、例えばRAM(Random Access Memory)等の揮発性メモリが挙げられる。
記憶部10cは、種々のデータやプログラム等を格納するハードウェアである。記憶部10cとしては、例えばHDD等の磁気ディスク装置,SSD等の半導体ドライブ装置,フラッシュメモリ等の不揮発性メモリ等の各種デバイスが挙げられる。なお、記憶部10cとして複数のデバイスが用いられてもよく、これらのデバイスでRAID(Redundant Arrays of Inexpensive Disks)が構成されてもよい。また、記憶部10cは、図1に示
すSSD20及びHDD30を含んでもよい。
インタフェース部10dは、有線又は無線による、ネットワーク(図示省略)や他の情報処理装置との間の接続及び通信の制御等を行なうものである。インタフェース部10dとしては、例えば、LAN(Local Area Network),ファイバチャネル(Fibre Channel
;FC),インフィニバンド(InfiniBand)等に準拠したアダプタが挙げられる。
入出力部10eは、マウスやキーボード等の入力装置及びディスプレイやプリンタ等の出力装置の少なくとも一方を含むことができる。例えば、入出力部10eは、階層ストレージ制御装置10の使用者又は管理者等による種々の作業に用いられる。
記録媒体10fは、例えばフラッシュメモリやROM等の記憶装置であり、種々のデータやプログラムを記録することができる。読取部10gは、コンピュータ読取可能な記録媒体10hに記録されたデータやプログラムを読み出す装置である。記録媒体10f及び10hの少なくとも一方には、本実施形態に係る階層ストレージ制御装置10の各種機能の全部もしくは一部を実現する制御プログラムが格納されてもよい。例えば、CPU10aは、記録媒体10fから読み出したプログラム、又は、読取部10gを介して記録媒体10hから読み出したプログラムを、メモリ10b等の記憶装置に展開して実行することができる。これにより、コンピュータ(CPU10a,情報処理装置,各種端末を含む)は、上述した階層ストレージ制御装置10の機能を実現することができる。
なお、記録媒体10hとしては、例えばフレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク等の光ディスクや、USB(Universal Serial Bus)メモリやSDカード等のフラッシュメモリが挙げられる。なお、CDとしては、CD−ROM、CD−R(CD-Recordable)、CD−RW(CD-Rewritable)等が挙げられる。また、DVDとしては、DVD−ROM、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等が挙げられる。
なお、上述した各ブロック10a〜10g間はバスで相互に通信可能に接続される。例えばCPU10aと記憶部10cとの間は、ディスクインタフェースを介して接続される。また、階層ストレージ制御装置10の上述したハードウェア構成は例示である。従って、階層ストレージ制御装置10内でのハードウェアの増減(例えば任意のブロックの追加や省略),分割,任意の組み合わせでの統合,バスの追加又は省略等は適宜行なわれてもよい。
[3]動作
上述の如く構成された実施形態の一例としての階層ストレージ制御装置10における処理を説明する。
(1)階層管理部11における処理
図示しないホスト装置等からLUNに対するIOアクセス要求が行なわれると、階層管理部11において以下に示す処理が行なわれる。
すなわち、階層管理部11のデータ収集部11aが、blktraceを用いて所定間隔(本実施形態では1分間隔)でIOトレースを採取する。データ収集部11aは、このIOトレースにより収集した情報に基づき、サブLUNごとのIO数を毎分単位で集計する(図2(b)参照)。
第1ワークロード分析部11bは、データ収集部11aによって収集されたサブLUNごとのIO数に基づき、SSD20又はHDD30にデータを移動するサブLUNを選択する。
第1ワークロード分析部11bは、上述した移動判定アルゴリズムにおいて、最大サブLUN数(n),IO割合(m),IO集中継続数(c),timeout(o)およびiops閾値(i)が設定された第1パラメータセットを用いることで、サブLUNの移動判定を行なう。
第1ワークロード分析部11bは、移動判定アルゴリズムによって選択したサブLUNを特定するサブLUN IDを移動指示部11cに渡す。
移動指示部11cは、第1ワークロード分析部11bからの指示に基づいて、階層ドライバ12に、選択されたサブLUNのデータの、HDD30からSSD20への移動、又は、SSD20からHDD30への移動を指示する。
(2)パラメータ評価部15における処理
データ収集部11aによって収集されたサブLUNごとのIO数の情報は、パラメータ評価部15も受け渡される。そして、上述した階層管理部11における処理と並行して、このパラメータ評価部15において複数のパラメータセットの評価が行なわれる。
データ収集部11aによって収集されたサブLUNごとのIO数の情報は、各第2ワークロード分析部151(151a,151b,151c)にそれぞれ入力される(図2(b)の矢印A1参照)。
第2ワークロード分析部151aは第1ワークロード分析部11bと同じ第1パラメータセットを前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させるサブLUNを決定する。第2ワークロード分析部151aは決定した移動対象のサブLUNのサブLUN IDを性能推定部152aに通知する。
性能推定部152aは、データ収集部11aから入力されたサブLUN毎のIO数を用いて(図2(b)の矢印A2参照)、第2ワークロード分析部151aから通知されたサブLUN毎に、それぞれのIO数を集計する。
性能推定部152aは、算出したパラメータセットごとのSSDヒットとみなされるIO数の累積値をメモリ10b(図8参照)等の記憶領域に格納する。
第2ワークロード分析部151bは、第2ワークロード分析部151aとは異なる第2パラメータセットを前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させるサブLUNを決定する。 第2ワークロード分析部151bは決定した移動対象のサブLUNのサブLUN IDを性能推定部152bに通知する。
性能推定部152bは、データ収集部11から入力されたサブLUN毎のIO数を用いて(図2(b)の矢印A2参照)、第2ワークロード分析部151bから通知されたサブLUN毎に、それぞれのIO数を集計する。
性能推定部152bは、算出したパラメータセットごとのSSDヒットとみなされるIO数の累積値をメモリ10b(図8参照)等の記憶領域に格納する。
第2ワークロード分析部151cは、第2ワークロード分析部151aおよび第2ワークロード分析部151bとは異なる第3パラメータセットを前記移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させるサブLUNを決定する。第2ワークロード分析部151cは決定した移動対象のサブLUNのサブLUN IDを
性能推定部152cに通知する。
性能推定部152cは、データ収集部11から入力されたサブLUN毎のIO数を用いて(図2(b)の矢印A2参照)、第2ワークロード分析部151cから通知されたサブLUN毎に、それぞれのIO数を集計する。
性能推定部152cは、算出したパラメータセットごとのSSDヒットとみなされるIO数の累積値をメモリ10b(図6参照)等の記憶領域に格納する。
パラメータ判定部153は、性能推定部152a,152b,152cによってそれぞれ算出されたパラメータセットごとのSSDヒットとみなされるIO数の累積値を、メモリ10b等の記憶領域から所定間隔毎(例えば1時間毎)に読み出す。
そして、パラメータ判定部153は、これらのSSDヒットとみなされるIO数の累積値を比較し、これらうち、SSDヒットとみなされるIO数の累積値が最大のパラメータセットを、推奨パラメータセットとして決定する。
パラメータ判定部153は、決定した推奨パラメータセットを用いて、階層管理部11の第1ワークロード分析部11bが使用する第1パラメータセットを更新する。これにより、第1ワークロード分析部11bにおいて、SSDヒット率が高くなることが期待できるパラメータセットが設定され、装置性能を効率的に引き出すことができる。
パラメータ判定部153は、決定した推奨パラメータセットを第1ワークロード分析部11bに通知して、第1パラメータセットの変更を指示する。
第1ワークロード分析部11bは、通知された推奨パラメータセットと第1パラメータセットとを比較し、推奨パラメータセットと第1パラメータセットとが異なる場合に、第1パラメータセットを推奨パラメータセットを用いて更新する。
[4]効果
実施形態の一例としての階層ストレージ装置1によれば、階層管理部11における、第1ワークロード分析部11bによるSSD20又はHDD30にデータを移動するサブLUNの選択、および移動指示部11cによる、階層ドライバ12に対するサブLUNのデータの移動指示と並行して、パラメータ評価部15が複数のパラメータセットの評価を行なう。
すなわち、複数の第2ワークロード分析部151によって、第1ワークロード分析部11bによって用いられる第1パラメータセットを含む複数種類のパラメータセットをそれぞれ移動判定アルゴリズムに適用することで、SSD20とHDD30との間で移動させるサブLUNを決定する。
そして、複数の性能推定部152が、各パラメータセットを用いて決定された移動対象のサブLUNについて、データ収集部11から入力されたサブLUN毎のIO数を用いて、パラメータセットごとのSSDヒットとみなされるIO数の累積値をそれぞれ算出する。
パラメータ判定部153は、これらのSSDヒットとみなされるIO数の累積値を比較し、これらうち、SSDヒットとみなされるIO数の累積値が最大のパラメータセットを、推奨パラメータセットとして決定する。そして、第1ワークロード分析部11bが用いる第1パラメータセットを、この推奨パラメータセットで更新する。
これにより、第1ワークロード分析部11bが、SSDヒット率が高くなるサブLUNが選択されるようなパラメータセット(推奨パラメータセット)を用いる。従って、SSD20を効率良く動作させることができ、階層ストレージ装置1の性能を向上させることができる。また、ワークロードの状態に応じたOTF−ASTの動作が可能となる。
[5]その他
そして、上述した実施形態に関わらず、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、一実施形態において、SSD20及びHDD30を用いた階層ストレージ装置1について説明したが、これに限定されるものではなく、例えばキャッシュメモリと主記憶装置とを用いた階層記憶システムにも同様に適用することができる。すなわち、本発明は、不揮発性記憶装置の階層記憶システムだけでなく、揮発性記憶装置を含む階層記憶システムにも同様に適用することができる。
また、一実施形態に係る階層ストレージ装置1は、SSD20及びHDD30の他に、速度差のある記憶装置にも適用することが可能である。例えばHDDと、HDDよりも大容量だが低速なテープドライブ等の磁気記録装置とを用いた階層ストレージ装置等にも適用することが可能である。
さらに、一実施形態において、階層ストレージ制御装置10の動作を1つのSSD20及び1つのHDD30に着目して説明したが、複数のSSD20及び複数のHDD30が階層ストレージ装置1及び1Aにそなえられる場合も同様である。
また、上述した実施形態においては、階層ストレージ制御装置10がLinux device−mapper等の機能を用いる例を示したが、これに限定されるものではない。例えば、他のボリューム管理用ドライバや他のOSの機能を用いてもよく、種々変形して実施することができる。
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
[6]付記
(付記1)
第1の記憶装置と、
前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と、
前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する収集部と、
前記収集部が収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する第1特定部と、
前記第1特定部が特定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる移動処理部と、
前記収集部が収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する第2特定部と、
前記収集部によって収集された前記アクセス情報に基づき、前記第2特定部によって前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する計数部と、
前記計数部によって計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1特定部が用いる前記第1のパラメータを前記推パラメータを用いて更新する更新部と
を備えることを特徴とする、階層ストレージ装置。
(付記2)
前記パラメータが、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報であることを特徴とする、付記1記載の階層ストレージ装置。
(付記3)
前記パラメータが、前記第1の記憶装置と前記第2の記憶装置との間でデータを同時に移動させる前記移動対象領域の上限数を表す同時最大移動数であることを特徴とする、付記1又は2記載の階層ストレージ装置。
(付記4)
前記パラメータが、各単位領域に発生したデータアクセス数の合計に占める割合を表すデータアクセス率であることを特徴とする、付記1〜3のいずれか1項に記載の階層ストレージ装置。
(付記5)
第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続される階層ストレージ制御装置であって、
前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する収集部と、
前記収集部が収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する第1特定部と、
前記第1特定部が特定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる移動処理部と、
前記収集部が収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する第2特定部と、
前記収集部によって収集された前記アクセス情報に基づき、前記第2特定部によって前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する計数部と、
前記計数部によって計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1特定部が用いる前記第1のパラメータを前記推パラメータを用いて更新する更新部と
を備えることを特徴とする、階層ストレージ制御装置。
(付記6)
前記パラメータが、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報であることを特徴とする、付記5記載の階層ストレージ制御装置。
(付記7)
前記パラメータが、前記第1の記憶装置と前記第2の記憶装置との間でデータを同時に移動させる前記移動対象領域の上限数を表す同時最大移動数であることを特徴とする、付記5又は6記載の階層ストレージ制御装置。
(付記8)
前記パラメータが、各単位領域に発生したデータアクセス数の合計に占める割合を表すデータアクセス率であることを特徴とする、付記5〜7のいずれか1項に記載の階層ストレージ制御装置。
(付記9)
第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続されるコンピュータに、
前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集し、
収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定し、
定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させ、
収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメー
タ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定し、
収集された前記アクセス情報に基づき、前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数し、
計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1のパラメータを前記推パラメータを用いて更新する
処理を実行させることを特徴とする、階層ストレージ制御プログラム。
(付記10)
前記パラメータが、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報であることを特徴とする、付記9記載の階層ストレージ制御プログラム。
(付記11)
前記パラメータが、前記第1の記憶装置と前記第2の記憶装置との間でデータを同時に移動させる前記移動対象領域の上限数を表す同時最大移動数であることを特徴とする、付記9又は10記載の階層ストレージ制御プログラム。
(付記12)
前記パラメータが、各単位領域に発生したデータアクセス数の合計に占める割合を表すデータアクセス率であることを特徴とする、付記9〜11のいずれか1項に記載の階層ストレージ制御プログラム。
(付記13)
第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続される階層ストレージ制御装置において、
前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する処理と、
収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する処理と、
定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる処理と
収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する処理と、
収集された前記アクセス情報に基づき、前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する処理と、
計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1のパラメータを前記推パラメータを用いて更新する処理と
を実行させることを特徴とする、階層ストレージ制御方法。
(付記14)
前記パラメータが、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報であることを特徴とする、付記13記載の階層ストレージ制御方法。
(付記15)
前記パラメータが、前記第1の記憶装置と前記第2の記憶装置との間でデータを同時に移動させる前記移動対象領域の上限数を表す同時最大移動数であることを特徴とする、付記13又は14記載の階層ストレージ制御方法。
(付記16)
前記パラメータが、各単位領域に発生したデータアクセス数の合計に占める割合を表すデータアクセス率であることを特徴とする、付記13〜15のいずれか1項に記載の階層ストレージ制御方法。
1,1A 階層ストレージ装置(ストレージ装置)
10,10A 階層ストレージ制御装置(ストレージ制御装置)
10a CPU
10b メモリ
10c 記憶部
10d インタフェース部
10e 入出力部
10f,10h 記録媒体
10g 読取部
11 階層管理部
11a データ収集部(収集部)
11b ワークロード分析部
11c 移動指示部
12 階層ドライバ
12a IOマップ部
12b 階層テーブル
12c 一時バッファ
13 SSDドライバ
14 HDDドライバ
15 パラメータ評価部
151a,151b,151c ワークロード分析部
152a,152b,152c 性能推定部
153 パラメータ判定部
100 階層ストレージ制御装置
20 SSD
30 HDD

Claims (7)

  1. 第1の記憶装置と、
    前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と、
    前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する収集部と、
    前記収集部が収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する第1特定部と、
    前記第1特定部が特定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる移動処理部と、
    前記収集部が収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する第2特定部と、
    前記収集部によって収集された前記アクセス情報に基づき、前記第2特定部によって前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する計数部と、
    前記計数部によって計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1特定部が用いる前記第1のパラメータを前記推パラメータを用いて更新する更新部と
    を備えることを特徴とする、階層ストレージ装置。
  2. 前記パラメータが、前記単位領域のIO集中が継続して発生した時間を表す継続時間情報であることを特徴とする、請求項1記載の階層ストレージ装置。
  3. 前記パラメータが、前記第1の記憶装置と前記第2の記憶装置との間でデータを同時に移動させる前記移動対象領域の上限数を表す同時最大移動数であることを特徴とする、請求項1又は2記載の階層ストレージ装置。
  4. 前記パラメータが、各単位領域に発生したデータアクセス数の合計に占める割合を表すデータアクセス率であることを特徴とする、請求項1〜3のいずれか1項に記載の階層ストレージ装置。
  5. 第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続される階層ストレージ制御装置であって、
    前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する収集部と、
    前記収集部が収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する第1特定部と、
    前記第1特定部が特定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる移動処理部と、
    前記収集部が収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する第2特定部と、
    前記収集部によって収集された前記アクセス情報に基づき、前記第2特定部によって前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する計数部と、
    前記計数部によって計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1特定部が用いる前記第1のパラメータを前記推パラメータを用いて更新する更新部と
    を備えることを特徴とする、階層ストレージ制御装置。
  6. 第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続されるコンピュータに、
    前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集し、
    収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定し、
    定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させ、
    収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定し、
    収集された前記アクセス情報に基づき、前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数し、
    計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1のパラメータを前記推パラメータを用いて更新する
    処理を実行させることを特徴とする、階層ストレージ制御プログラム。
  7. 第1の記憶装置と前記第1の記憶装置よりも高いデータアクセス性能を有する第2の記憶装置と接続される階層ストレージ制御装置において、
    前記第1の記憶装置に含まれる複数の単位領域の各々に関するアクセス情報を収集する処理と、
    収集した前記アクセス情報に基づき第1のパラメータを用いて、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域を特定する処理と、
    定した前記第1の記憶装置における前記移動対象領域のデータを前記第2の記憶装置に移動させる処理と
    収集した前記アクセス情報に基づき複数のパラメータをそれぞれ用いて、前記パラメータ毎に、前記第1の記憶装置と前記第2の記憶装置との間でデータを移動させる移動対象領域候補を特定する処理と、
    収集された前記アクセス情報に基づき、前記複数のパラメータ毎に特定された前記移動対象領域候補のそれぞれに対するデータアクセスの発生数を計数する処理と、
    計数された前記データアクセスの発生数が最も多い前記パラメータを推奨パラメータとして決定し、前記第1のパラメータを前記推パラメータを用いて更新する処理と
    を実行させることを特徴とする、階層ストレージ制御方法。
JP2015064729A 2015-03-26 2015-03-26 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法 Expired - Fee Related JP6443170B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015064729A JP6443170B2 (ja) 2015-03-26 2015-03-26 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法
US15/065,953 US10725710B2 (en) 2015-03-26 2016-03-10 Hierarchical storage device, hierarchical storage control device, computer-readable recording medium having hierarchical storage control program recorded thereon, and hierarchical storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015064729A JP6443170B2 (ja) 2015-03-26 2015-03-26 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法

Publications (2)

Publication Number Publication Date
JP2016184326A JP2016184326A (ja) 2016-10-20
JP6443170B2 true JP6443170B2 (ja) 2018-12-26

Family

ID=56974123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015064729A Expired - Fee Related JP6443170B2 (ja) 2015-03-26 2015-03-26 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法

Country Status (2)

Country Link
US (1) US10725710B2 (ja)
JP (1) JP6443170B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105900061B (zh) * 2014-10-22 2018-01-16 华为技术有限公司 对象存储系统中的业务流控制方法、控制器和系统
JP6955142B2 (ja) * 2017-03-17 2021-10-27 富士通株式会社 情報処理装置、ストレージ制御方法およびストレージ制御プログラム
CN114610232A (zh) 2020-04-28 2022-06-10 华为技术有限公司 一种存储系统、内存管理方法和管理节点
CN113535089B (zh) * 2020-05-22 2024-05-17 长江存储科技有限责任公司 用于ssd的映射表的刷新方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491810A (en) * 1994-03-01 1996-02-13 International Business Machines Corporation Method and system for automated data storage system space allocation utilizing prioritized data set parameters
JP2003296152A (ja) * 2002-03-29 2003-10-17 Toshiba Corp Hsmシステムおよび同システムのマイグレーション制御方法
US7065611B2 (en) * 2004-06-29 2006-06-20 Hitachi, Ltd. Method for controlling storage policy according to volume activity
JP2007310569A (ja) * 2006-05-17 2007-11-29 Hitachi Ltd 情報配置決定方法の評価方法及び評価プログラム
US20090138530A1 (en) * 2007-11-26 2009-05-28 Inventec Corporation Data management method for logical volume manager
JP2010257094A (ja) * 2009-04-23 2010-11-11 Hitachi Ltd 階層ストレージ管理システムにおける移動候補ファイルの抽出方法
JP5241671B2 (ja) 2009-10-05 2013-07-17 株式会社日立製作所 記憶装置のデータ移行制御方法
US8918439B2 (en) * 2010-06-17 2014-12-23 International Business Machines Corporation Data lifecycle management within a cloud computing environment
WO2012131749A1 (en) 2011-03-25 2012-10-04 Hitachi, Ltd. Storage system and storage area allocation method
US9183219B1 (en) * 2011-04-18 2015-11-10 American Megatrends, Inc. Data migration between multiple tiers in a storage system using policy based ILM for QOS
JP5716537B2 (ja) * 2011-05-20 2015-05-13 日本電気株式会社 記憶媒体制御装置、記憶装置、記憶媒体制御方法、プログラム
JP2013246773A (ja) 2012-05-29 2013-12-09 Hitachi Ltd 計算機システム及びデータ管理方法
US8688878B1 (en) * 2012-06-29 2014-04-01 Emc Corporation Data storage system modeling
JP6118401B2 (ja) * 2012-10-12 2017-04-19 株式会社日立製作所 ストレージ装置及びデータ管理方法
JP6065642B2 (ja) 2013-02-25 2017-01-25 富士通株式会社 ストレージ制御プログラム、ストレージ制御装置、ストレージシステム、及びストレージ制御方法
JP5501504B2 (ja) 2013-04-01 2014-05-21 株式会社日立製作所 記憶装置のデータ移行制御方法
US9639435B2 (en) * 2013-11-11 2017-05-02 Hitachi, Ltd. Management computer and management method of computer system
CN103631538B (zh) * 2013-12-05 2017-04-05 华为技术有限公司 冷热数据识别门限值计算方法、装置和系统
US9665288B1 (en) * 2013-12-26 2017-05-30 EMC IP Holding Company LLC Techniques for determining workload skew
GB2528333A (en) * 2014-07-15 2016-01-20 Ibm Device and method for determining a number of storage devices for each of a plurality of storage tiers and an assignment of data to be stored in the plurality
US10127234B1 (en) * 2015-03-27 2018-11-13 Amazon Technologies, Inc. Proactive optimizations at multi-tier file systems

Also Published As

Publication number Publication date
US10725710B2 (en) 2020-07-28
JP2016184326A (ja) 2016-10-20
US20160283136A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
JP4749255B2 (ja) 複数種類の記憶デバイスを備えたストレージシステムの制御装置
US8914598B2 (en) Distributed storage resource scheduler and load balancer
JP4749140B2 (ja) データマイグレーション方法及びシステム
JP6065642B2 (ja) ストレージ制御プログラム、ストレージ制御装置、ストレージシステム、及びストレージ制御方法
JP6476932B2 (ja) ストレージ装置,制御プログラム,ストレージシステム及びデータ転送方法
US20090228669A1 (en) Storage Device Optimization Using File Characteristics
US20130024650A1 (en) Dynamic storage tiering
JP6299169B2 (ja) ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラム
JP2015210718A (ja) 記憶制御装置、ストレージシステム、および記憶制御プログラム
JP4699837B2 (ja) ストレージシステム、管理計算機及びデータ移動方法
JP6443170B2 (ja) 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法
WO2013046331A1 (ja) 計算機システム、及び情報管理方法
US20200089425A1 (en) Information processing apparatus and non-transitory computer-readable recording medium having stored therein information processing program
JP6260384B2 (ja) ストレージ制御装置,制御プログラム,及び制御方法
WO2016107390A1 (zh) 一种管理磁盘文件的方法和装置
US20170315924A1 (en) Dynamically Sizing a Hierarchical Tree Based on Activity
US20170322747A1 (en) Information processing apparatus and method for deduplication
US20140297944A1 (en) Recording medium, system and method
US20180341423A1 (en) Storage control device and information processing system
US8819366B2 (en) Data processing device, non-transitory computer readable medium and method for controlling data processing device
JP2018106462A (ja) 情報処理装置、ストレージ制御プログラムおよびストレージ制御方法
US9313263B2 (en) Assignment of applications in a virtual machine environment based on data access pattern
JP2014232348A (ja) ストレージシステム、情報処理装置の制御プログラム、およびストレージシステムの制御方法
JP6880711B2 (ja) 情報処理装置、ストレージ制御プログラムおよびストレージ制御方法
Oe et al. On-the-fly automated storage tiering with caching and both proactive and observational migration

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181018

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: 20181030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181112

R150 Certificate of patent or registration of utility model

Ref document number: 6443170

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees