JP2018136893A - ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 - Google Patents

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

Info

Publication number
JP2018136893A
JP2018136893A JP2017032844A JP2017032844A JP2018136893A JP 2018136893 A JP2018136893 A JP 2018136893A JP 2017032844 A JP2017032844 A JP 2017032844A JP 2017032844 A JP2017032844 A JP 2017032844A JP 2018136893 A JP2018136893 A JP 2018136893A
Authority
JP
Japan
Prior art keywords
data management
storage
period
performance
storage device
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
Application number
JP2017032844A
Other languages
English (en)
Inventor
健 飯澤
Takeshi Iizawa
健 飯澤
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 JP2017032844A priority Critical patent/JP2018136893A/ja
Publication of JP2018136893A publication Critical patent/JP2018136893A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】性能の異なる複数の記憶装置におけるデータの再配置を高速化する。【解決手段】記憶部311は、性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、それぞれのデータ管理単位に対するアクセスの特徴を示す特徴量321を記憶する。さらに、記憶部311は、特徴量からそれぞれの記憶装置の性能指標を求めるための性能予測情報322を記憶する。予測部312は、複数のデータ管理単位それぞれについて、第1期間における特徴量321と性能予測情報322とを用いて、第2期間においてデータ管理単位の配置場所を第1期間とは異なる特定の記憶装置に変更した場合の特定の記憶装置の性能指標を求める。決定部313は、それぞれのデータ管理単位について予測部が求めた性能指標に基づいて、第2期間において複数の記憶装置内に配置される複数のデータ管理単位のデータ配置を決定する。【選択図】図3

Description

本発明は、ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法に関する。
近年、性能の異なる複数の記憶装置を含むストレージシステムが利用されるようになっている。性能の異なる複数の記憶装置としては、例えば、高速にデータを転送することができるソリッドステートドライブ(SSD)と、SSDよりもデータ転送速度が低速なハードディスクドライブ(HDD)とが用いられる。
図1は、SSD及びHDDを含むストレージシステムの構成例を示している。図1のストレージシステム101は、ストレージ制御装置111、SSD112、及びHDD113を含む。SSD112及びHDD113は、ストレージ制御装置111によってグループ化され、ストレージシステム101の外部からは単一の仮想ブロックデバイス121として見える。
図2は、図1のストレージシステム101を含む情報処理システムの構成例を示している。図2の情報処理システムは、ストレージシステム101、クライアント端末201、及びサーバ202を含む。クライアント端末201とサーバ202は、通信ネットワーク203を介して通信する。ストレージシステム101は、サーバ202に接続されている。
クライアント端末201は、サーバ202に対してデータを送信し、サーバ202は、受信したデータをストレージシステム101に書き込む。また、クライアント端末201は、サーバ202に対してデータを要求し、サーバ202は、ストレージシステム101から読み出したデータを、クライアント端末201へ送信する。
このとき、ストレージシステム101のストレージ制御装置111は、サーバ202からデータへのアクセス性能を向上させるために階層制御を行う。階層制御では、アクセス履歴に基づいてデータ配置が動的に変更され、アクセス頻度の高いデータは高速の記憶装置に配置され、アクセス頻度の低いデータは低速の記憶装置に配置される。
データセンタにおける性能予測を用いたストレージ管理方法も知られている(例えば、非特許文献1を参照)。
Park et al.,"Romano: Autonomous Storage Management using Performance Prediction in Multi-Tenant Datacenters", Proceedings of the Third ACM Symposium on Cloud Computing, SoCC '12, October 2012
性能の異なる複数の記憶装置を含むストレージシステムにおける階層制御では、一定期間毎に、アクセス頻度等の統計情報に基づいてデータの再配置が行われる。しかし、データ量が増加すると統計情報の計算量が増加し、再配置のための処理時間が長くなる。
1つの側面において、本発明は、性能の異なる複数の記憶装置におけるデータの再配置を高速化することを目的とする。
1つの案では、ストレージ制御装置は、記憶部、予測部、及び決定部を含む。記憶部は、性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、それぞれのデータ管理単位に対するアクセスの特徴を示す特徴量を記憶する。さらに、記憶部は、特徴量からそれぞれの記憶装置の性能指標を求めるための性能予測情報を記憶する。
予測部は、複数のデータ管理単位それぞれについて、第1期間における特徴量と性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を第1期間とは異なる特定の記憶装置に変更した場合の特定の記憶装置の性能指標を求める。
決定部は、それぞれのデータ管理単位について予測部が求めた性能指標に基づいて、第2期間において複数の記憶装置内に配置される複数のデータ管理単位のデータ配置を決定する。
1つの実施形態によれば、性能の異なる複数の記憶装置におけるデータの再配置を高速化することができる。
ストレージシステムの構成図である。 情報処理システムの構成図である。 ストレージ制御装置の機能的構成図である。 ストレージ制御処理のフローチャートである。 ストレージシステムの機能的構成図である。 データ配置情報を示す図である。 記録処理のフローチャートである。 データ再配置処理のフローチャートである。 エクステント毎の性能指標を示す図である。 エクステント毎の性能向上度を示す図である。 3階層の記憶装置を含むストレージシステムの機能的構成図である。 情報処理装置の構成図である。
以下、図面を参照しながら、実施形態を詳細に説明する。
ストレージシステムにおいて、ストレージ制御装置は、各記憶装置の記憶領域を固定サイズの領域に分割して管理する。この固定サイズの領域に格納される固定長のデータは、エクステントと呼ばれ、固定サイズとしては、例えば、データブロックよりも大きく、セグメントよりも小さなサイズが用いられる。固定サイズは、64Mバイトであってもよい。
SSD及びHDDを含むストレージシステムにおける階層制御では、一定期間毎に、所定のルールに基づいてSSDとHDDの間でエクステントを移動させることで、データ配置が動的に変更される。この一定期間は、エポックと呼ばれ、ストレージシステムの構成又は用途に基づいて決定される。エポックは、数分〜数十分であってもよい。このような階層制御は、例えば、以下の手順で行うことができる。
1.ストレージシステムの運用開始前に、ストレージ制御装置は、ワークロードのアクセスパターンを表現する統計情報から、SSD及びHDDの各記憶装置でワークロードを実行した場合の性能を予測する性能モデルを、記憶装置毎に生成する。
2.ストレージシステムの運用中に、ストレージ制御装置は、各エクステントのアクセスパターンを表現する統計情報を、エクステント毎に収集する。
3.エポックの切り替え時に、ストレージ制御装置は、SSD及びHDDそれぞれに配置するエクステントを決定することで、データの再配置を行う。データの再配置は、例えば、以下の手順で行うことができる。
(1)ストレージ制御装置は、切り替え前のエポックにおける各エクステントのアクセスパターンを表現する統計情報を用いて、各記憶装置に配置するすべてのエクステントの統計情報の総和を計算する。
(2)ストレージ制御装置は、計算した統計情報の総和を、次のエポックにおける各記憶装置のアクセスパターンを表現する統計情報として性能モデルに入力することで、次のエポックにおいて予測される各記憶装置の性能を示す性能指標を計算する。
(3)ストレージ制御装置は、SSD及びHDDそれぞれに配置されるエクステントの配置場所のすべての組み合わせに対して、上記(1)及び(2)の処理を繰り返す。そして、ストレージ制御装置は、すべての記憶装置の性能指標の総和をストレージシステムの性能指標として求め、ストレージシステムの性能指標を最適化するエクステントの配置を、次のエポックにおけるデータ配置として選択する。
各記憶装置の性能モデルとしては、例えば、非特許文献1に記載されている性能モデルを用いることができ、アクセスパターンを表現する統計情報としては、例えば、平均アクセス間距離を用いることができる。
平均アクセス間距離は、連続する2つのアクセスのうち、一方のアクセスのアクセス先アドレスと、他方のアクセスのアクセス先アドレスとの差分の平均値を表す。アクセス先アドレスの差分としては、アクセス先の物理アドレスの差分を用いることができる。平均アクセス間距離が大きいほど、アクセスのランダム性が大きいと考えられる。この場合、統計情報の総和として、すべてのエクステントにおける平均アクセス間距離の総和を用いることができる。
また、各記憶装置の性能指標としては、その記憶装置に対するアクセスのレイテンシ(アクセス時間)を用いることができる。この場合、ストレージシステムの性能指標として、SSD及びHDDに対するすべてのアクセスのレイテンシの総和を用いることができる。
SSD及びHDDにN個のエクステントが配置される場合、エクステントの配置場所の組み合わせの総数はN!個である。また、N個のエクステントのうちM個がSSDに配置される場合、SSDに配置されるエクステントを選択する組み合わせの総数はNM個である。
ストレージシステムの性能指標を最適化するエクステントの配置を選択するためには、少なくともNM個の組み合わせについて、上記(1)及び(2)の処理を繰り返すことが望ましい。しかし、N又はMが増加すると、NMの値に比例して計算量が増加するため、データの再配置のための処理時間が長くなる。
図3は、実施形態のストレージ制御装置の機能的構成例を示している。図3のストレージ制御装置301は、記憶部311、予測部312、及び決定部313を含む。
記憶部311は、性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、それぞれのデータ管理単位に対するアクセスの特徴を示す特徴量321を記憶する。さらに、記憶部311は、特徴量からそれぞれの記憶装置の性能指標を求めるための性能予測情報322を記憶する。
予測部312及び決定部313は、特徴量321及び性能予測情報322を用いてストレージ制御処理を行う。
図4は、図3のストレージ制御装置301が行うストレージ制御処理の例を示すフローチャートである。まず、予測部312は、複数のデータ管理単位それぞれについて、第2期間においてデータ管理単位の配置場所を第1期間とは異なる特定の記憶装置に変更した場合の特定の記憶装置の性能指標を求める(ステップ401)。このとき、予測部312は、記憶部311を参照し、第1期間における特徴量321と性能予測情報322とを用いて、特定の記憶装置の性能指標を求める。
次に、決定部313は、それぞれのデータ管理単位について予測部312が求めた性能指標に基づいて、第2期間において複数の記憶装置内に配置される複数のデータ管理単位のデータ配置を決定する(ステップ402)。
図3のストレージ制御装置301によれば、性能の異なる複数の記憶装置におけるデータの再配置を高速化することができる。
図5は、図3のストレージ制御装置301を含むストレージシステムの機能的構成例を示している。図5のストレージシステム501は、ストレージ制御装置301、SSD511、及びHDD512を含む。ストレージ制御装置301は、記憶部311、予測部312、決定部313、生成部521、制御部522、記録部523、及び再配置部524を含む。
記憶部311は、特徴量321、性能予測情報322、性能指標531、データ配置情報532、性能指標533、性能向上度534、及びデータ配置情報535を記憶する。性能予測情報322は、特徴量321からSSD511及びHDD512それぞれの性能指標を求めるための情報である。
データ配置情報532及びデータ配置情報535は、SSD511及びHDD512に配置された複数のデータ管理単位の配置場所を示す。データ管理単位としては、例えば、エクステントを用いることができ、エクステントの配置場所としては、例えば、物理アドレスを用いることができる。
図6は、データ配置情報532の例を示している。図6のデータ配置情報532は、エクステントID、論理アドレス、及び物理アドレスを含む。エクステントIDは、SSD511又はHDD512に配置されるエクステントを示すIDであり、論理アドレス及び物理アドレスは、エクステントの論理アドレス及び物理アドレスを表す。
例えば、論理アドレスは、論理アドレス空間における各エクステントの開始アドレスであってもよく、物理アドレスは、記憶装置のIDと、その記憶装置の物理アドレス空間における各エクステントの開始アドレスとの組み合わせであってもよい。
論理アドレス空間は、ストレージシステム501がサーバに対して公開するアドレス空間であり、論理アドレス空間のサイズは、SSD511の物理アドレス空間のサイズとHDD512の物理アドレス空間のサイズとの総和に等しい。SSD511及びHDD512は、物理アドレスが連続する領域に各エクステントのデータを記憶することができる。
データ配置情報535も、データ配置情報532と同様の情報を含む。データ配置情報532は、サーバから受信したアクセス要求に含まれる論理アドレスを物理アドレスに変換するために用いられ、データ配置情報535は、変更後のデータ配置を一時的に記録するために用いられる。
ストレージシステム501の運用開始前に、生成部521は、SSD511及びHDD512の性能予測情報322を生成する。そして、ストレージシステム501の運用中に、制御部522は、サーバからアクセス要求を受信し、アクセス要求に従ってSSD511又はHDD512にアクセスする。制御部522は、アクセス要求が読み出し要求である場合、SSD511又はHDD512からデータを読み出し、アクセス要求が書き込み要求である場合、SSD511又はHDD512にデータを書き込む。
記録部523は、SSD511及びHDD512が記憶する各エクステントに対するアクセスの特徴を示す特徴量321を生成して、記憶部311に格納する。さらに、記録部523は、各エクステントに対するアクセスに基づいて、そのエクステントが配置されている記憶装置の性能指標531を測定し、記憶部311に格納する。このように、特徴量321及び性能指標531は、エクステント毎に生成される。
予測部312は、次のエポックにおける各エクステントに対して、切り替え前のエポックにおけるアクセスと同じアクセスが発生すると予測する。また、予測部312は、各エクステントに対する記憶装置の性能指標は、そのエクステントの特徴量321のみに依存し、他のエクステントの特徴量321には依存しないと推定する。
そして、予測部312は、エクステント毎に、切り替え前のエポックにおいて生成された特徴量321を用いて、次のエポックにおいてエクステントの配置場所を切り替え前とは異なる記憶装置に変更した場合の変更後の記憶装置の性能指標533を求める。このとき、予測部312は、そのエクステントの特徴量321に対して、変更後の記憶装置の性能予測情報322を適用することで、その記憶装置の性能指標533を求めて、記憶部311に格納する。
決定部313は、エクステント毎に、測定された性能指標531と、求めた性能指標533との差分を求め、求めた差分を性能向上度534として記憶部311に格納する。そして、決定部313は、それぞれのエクステントの性能向上度534に基づいて、次のエポックにおけるデータ配置を決定する。再配置部524は、決定部313が決定したデータ配置に基づいて、複数のエクステントのうち配置場所が変更されるエクステントを変更後の配置場所へ移動させる。
前述したように、SSD511及びHDD512にN個のエクステントが配置される場合、SSD511に配置されるM個のエクステントを選択する組み合わせの総数はNM個である。したがって、それらの組み合わせについてSSD511及びHDD512の性能指標を計算する場合、計算回数は2×NM回となる。
一方、図5のストレージ制御装置301によれば、エクステント毎に配置場所を変更した場合の性能指標533を計算するだけで済むため、性能指標533の計算回数はN回となり、計算量が大幅に削減される。さらに、性能指標531及び性能指標533の差分に基づいて、次のエポックにおけるデータ配置を決定し、そのデータ配置に基づいてエクステントを変更後の配置場所へ移動させることで、SSD511及びHDD512全体の性能を向上させることができる。
例えば、性能予測情報322は、SSD511及びHDD512それぞれの性能モデルを含む。SSD511及びHDD512の性能モデルとしては、線形回帰、回帰木、ニューラルネットワーク等の様々なアルゴリズムを用いることができる。性能モデルとして、非特許文献1に記載されている性能モデルを用いてもよい。
線形回帰は、目的変数を説明変数の線形結合で表すアルゴリズムである。性能モデルとして線形回帰を用いる場合、各記憶装置の性能指標が目的変数となり、アクセスの特徴を示す1つ又は複数の特徴量が説明変数となる。この場合、性能予測情報322は、各記憶装置の線形回帰におけるそれぞれの説明変数の係数を含む。
SSD511及びHDD512それぞれに対するアクセスの特徴を示す特徴量としては、1つのエポックにおけるアクセスパターンを表現する、次のような統計情報を用いることができる。
(a)合計アクセス数
(b)合計アクセス数に対する読み出しアクセス数及び書き込みアクセス数の割合
(c)平均アクセスサイズ
(d)平均アクセス間距離
合計アクセス数は、1つのエポックにおけるアクセスの総数を表し、読み出しアクセス数は、1つのエポックにおける読み出しアクセスの総数を表し、書き込みアクセス数は、1つのエポックにおける書き込みアクセスの総数を表す。
平均アクセスサイズは、1つのエポックにおけるそれぞれのアクセスによって転送されるデータ量の平均値を表す。平均アクセス間距離は、1つのエポックにおいて連続する2つのアクセスのうち、一方のアクセスのアクセス先アドレスと、他方のアクセスのアクセス先アドレスとの差分の平均値を表す。
上記(a)〜(d)の統計情報は一例であり、すべての統計情報を用いる必要はなく、別の統計情報を追加してもよい。また、SSD511の性能モデルとHDD512の性能モデルとで、互いに異なる統計情報を用いてもよい。
SSD511及びHDD512の性能指標としては、1つのエポックにおけるアクセスのレイテンシを示す情報を用いることができる。例えば、1つのエポックにおけるすべてのアクセスの合計レイテンシ、平均レイテンシ、又は最大レイテンシを用いてもよい。例えば、各アクセスのレイテンシは、制御部522が各記憶装置にアクセスしてから、データの読み出し又は書き込みが完了するまでの時間によって表される。
SSD511及びHDD512の性能は、アクセスの特徴を示す特徴量が同じであれば、どのエクステントに対するアクセスについても同じであると考えられる。したがって、各記憶装置の性能モデルは、その記憶装置に配置されるすべてのエクステントに対して共通に適用することが可能である。
生成部521は、ストレージシステム501の運用開始前に、以下の手順でSSD511及びHDD512の性能モデルを生成する。
(P1)生成部521は、訓練用ワークロードに従ってSSD511及びHDD512それぞれにアクセスし、各記憶装置に対するアクセスの特徴を示す特徴量及び性能指標を収集する。訓練用ワークロードとしては、複数のアクセスパターンが用いられ、各アクセスパターンは複数のアクセスの組み合わせを含む。このとき、訓練用ワークロード全体ですべての特徴量が網羅的な値を取るように、アクセスパターン毎に異なるアクセスの組み合わせを用いることが望ましい。
(P2)生成部521は、収集した特徴量及び性能指標を用いて、SSD511及びHDD512それぞれについて、特徴量から性能指標を予測する性能モデルを生成する。例えば、性能モデルとして線形回帰を用いる場合、生成部521は、最小二乗法等を用いて説明変数の係数を決定することができる。
図7は、ストレージシステム501の運用中における記録処理の例を示すフローチャートである。例えば、ストレージ制御装置301は、図7の記録処理をストレージ制御処理の一部として実行する。
まず、制御部522は、サーバからアクセス要求を受信すると、データ配置情報532を参照して、アクセス要求に含まれるアクセス先の論理アドレスを、対応する物理アドレスに変換する(ステップ701)。そして、制御部522は、SSD511及びHDD512のうち、物理アドレスが示す記憶装置が記憶するデータにアクセスする(ステップ702)。
次に、記録部523は、制御部522によるアクセスの結果に基づいて、アクセスされたエクステントの特徴量321及び性能指標531の値を求め、記憶部311内の特徴量321及び性能指標531を求めた値に更新する(ステップ703)。そして、制御部522は、アクセスの成功又は失敗を示すアクセス結果をサーバへ送信する(ステップ704)。アクセス要求が読み出し要求である場合、アクセス結果には、記憶装置から読み出されたデータも含まれる。
図8は、ストレージシステム501の運用中におけるデータ再配置処理の例を示すフローチャートである。例えば、ストレージ制御装置301は、図10のデータ再配置処理をストレージ制御処理の一部として実行する。このデータ再配置処理は、1つのエポックから次のエポックへの切り替えを契機として開始される。
まず、予測部312は、SSD511及びHDD512に配置されているエクステントのうち、1つのエクステントを選択する。そして、予測部312は、選択したエクステントの特徴量321を用いて、そのエクステントの配置場所を別の記憶装置に変更した場合の性能指標533を求める(ステップ801)。
例えば、選択したエクステントがSSD511に配置されている場合、予測部312は、HDD512の性能予測情報322を用いて、そのエクステントをHDD512へ移動させた場合の性能指標533を計算する。一方、選択したエクステントがHDD512に配置されている場合、予測部312は、SSD511の性能予測情報322を用いて、そのエクステントをSSD511へ移動させた場合の性能指標533を計算する。
次に、決定部313は、選択したエクステントの性能指標531及び性能指標533から、性能向上度534を計算する(ステップ802)。そして、予測部312は、次のエクステントを選択して、ステップ801以降の処理を繰り返す。
図9は、エクステント毎の性能指標531及び性能指標533の例を示している。この例では、エクステントの総数は6個であり、エクステント“1”及びエクステント“2”がSSD511に配置されており、エクステント“3”〜エクステント“6”がHDD512に配置されている。性能指標531としては、切り替え前のエポックにおける各エクステントに対するアクセスの合計レイテンシの測定値(実測)が用いられる。また、性能指標533としては、各エクステントに対するアクセスの合計レイテンシの計算値(予測)が用いられる。
例えば、エクステント“1”の合計レイテンシの測定値(実測)は、500msであり、エクステント“1”をHDD512へ移動させた場合の合計レイテンシの計算値(予測)は、3000msである。また、エクステント“3”の合計レイテンシの測定値(実測)は、4000msであり、エクステント“3”をSSD511へ移動させた場合の合計レイテンシの計算値(予測)は、500msである。
この場合、決定部313は、エクステント毎に、HDD512に配置した場合の合計レイテンシから、SSD511に配置した場合の合計レイテンシを減算することで、性能向上度534を計算することができる。例えば、エクステント“1”の性能向上度534は、3000msから500msを減算することで求められ、2500msになる。また、エクステント“3”の性能向上度534は、4000msから500msを減算することで求められ、3500msになる。
計算された性能向上度534は、各エクステントの配置場所をHDD512からSSD511に変更したと仮定した場合に予測される合計レイテンシの減少量を表す。したがって、性能向上度534が比較的大きなエクステントを優先的にSSD511に配置することで、ストレージシステム501全体のアクセス性能が改善される。
SSD511及びHDD512に配置されているすべてのエクステントが選択された場合、決定部313は、それぞれのエクステントの性能向上度534に基づいて、移動対象のエクステントを選択する(ステップ803)。
例えば、あるエクステントの性能向上度534が別のエクステントの性能向上度534よりも大きく、そのエクステントについて求めた性能指標533が示す性能が、性能指標531が示す性能よりも高い場合、そのエクステントが移動対象として選択される。これにより、性能向上度534が比較的大きなエクステントを優先的に移動対象として選択することができる。
そして、決定部313は、移動対象のエクステントの配置場所を変更したデータ配置を、次のエポックにおけるデータ配置に決定し、決定したデータ配置をデータ配置情報535に記録する。これにより、変更後のデータ配置を表す各エクステントの物理アドレスがデータ配置情報535に記録される。
図10は、エクステント毎の性能向上度534の例を示している。横軸は、図9に示した各エクステントのエクステントIDを表し、縦軸は、HDD512に配置した場合の合計レイテンシからSSD511に配置した場合の合計レイテンシを減算することで得られる性能向上度534を表す。
エクステント“1”〜エクステント“5”の性能向上度534は正の値であり、HDD512からSSD511へ移動した場合に、そのエクステントに対するアクセスの性能が向上することを示している。一方、エクステント“6”の性能向上度534は負の値であり、HDD512からSSD511へ移動した場合に、そのエクステントに対するアクセスの性能が低下することを示している。
この場合、決定部313は、性能向上度534が最大のエクステントから順に2個のエクステントを選択し、それらのエクステントの配置場所をSSD511に決定することができる。したがって、エクステント“3”及びエクステント“1”がSSD511に配置され、残りのエクステント“2”及びエクステント“4”〜エクステント“6”はHDD512に配置される。
このうち、エクステント“1”は、既にSSD511に配置されており、エクステント“4”〜エクステント“6”は、既にHDD512に配置されている。そこで、決定部313は、エクステント“2”及びエクステント“3”を移動対象として選択し、エクステント“2”の移動先をHDD512に決定し、エクステント“3”の移動先をSSD511に決定する。これにより、エクステント“2”及びエクステント“3”の物理アドレスが変更されたデータ配置情報535が生成される。
なお、ステップ802において、決定部313は、エクステント毎に、SSD511に配置した場合の合計レイテンシから、HDD512に配置した場合の合計レイテンシを減算することで、性能向上度534を計算してもよい。この場合、計算された性能向上度534は、各エクステントの配置場所をSSD511からHDD512に変更したと仮定した場合に予測される合計レイテンシの減少量を表す。
例えば、エクステント“1”の性能向上度534は、500msから3000msを減算することで求められ、−2500msになる。また、エクステント“3”の性能向上度534は、500msから4000msを減算することで求められ、−3500msになる。したがって、これらのエクステントがSSD511からHDD512へ移動した場合、そのエクステントに対するアクセスの性能が低下することが分かる。
次に、再配置部524は、データ配置情報532及びデータ配置情報535を参照して、配置場所が変更されたエクステントを変更後の配置場所へ移動させる(ステップ804)。さらに、再配置部524は、データ配置情報535をデータ配置情報532に反映させることで、データ配置情報532を更新する。
これにより、切り替え前のエポックにおけるデータ配置が決定されたデータ配置に変更され、次のエポックにおいて予測されるアクセスに対するストレージシステム501のアクセス性能が改善される。
図8のデータ再配置処理によれば、エクステント毎に性能指標533を計算することで、性能指標533の計算量が削減され、エクステント毎の性能向上度534を比較することで、次のエポックにおけるデータ配置が効率よく決定される。したがって、ストレージシステム501の性能を最適化するデータ配置を高速に決定することができる。
ストレージシステムにおける階層制御は、SSD及びHDDのような2階層の記憶装置だけでなく、3階層以上の記憶装置に対しても適用可能である。3階層以上の記憶装置としては、性能の異なる3台以上の記憶装置が用いられる。
図11は、3階層の記憶装置を含むストレージシステムの機能的構成例を示している。図11のストレージシステム1101は、図5のストレージシステム501において、HDD512を、性能の異なる2台のHDDに置き換えた構成を有する。2台のHDDの一方は、Serial Attached Small computer system interface HDD(SAS HDD)1111であり、他方はSerial Advanced Technology Attachment HDD(SATA HDD)1112である。
SAS HDD1111のデータ転送速度は、SSD511よりも低速であるが、SATA HDD1112よりも高速である。したがって、SSD511、SAS HDD1111、及びSATA HDD1112は、データ転送速度の異なる3階層の記憶装置に対応する。
この場合、ストレージ制御装置301は、エポック毎に、SSD511、SAS HDD1111、及びSATA HDD1112の間でエクステントを移動させることで、データ配置を動的に変更する。データ配置情報532及びデータ配置情報535の物理アドレスにおける記憶装置のIDとしては、SSD511、SAS HDD1111、及びSATA HDD1112それぞれを示すIDが用いられる。ストレージシステム1101における記録処理及びデータ再配置処理は、図7及び図8と同様である。
図11のストレージシステム1101によれば、3階層の記憶装置におけるデータの再配置が高速化される。
図3のストレージ制御装置301の構成は一例に過ぎず、ストレージ制御装置301の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。
図1、図5、及び図11のストレージシステムの構成は一例に過ぎず、ストレージシステムの用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、図5及び図11のストレージシステムにおいて、性能予測情報322がストレージシステムの外部で生成される場合は、生成部521を省略することができる。
図5のストレージシステム501は、複数のSSD及び複数のHDDを含んでいてもよい。同様に、図11のストレージシステム1101は、複数のSSD、複数のSAS HDD、及び複数のSATA HDDを含んでいてもよい。
図2の情報処理システムの構成は一例に過ぎず、情報処理システムの用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、情報処理システムは、複数のクライアント端末及び複数のサーバを含んでいてもよい。
図4、図7、及び図8のフローチャートは一例に過ぎず、ストレージ制御装置301の構成又は条件に応じて一部の処理を省略又は変更してもよい。例えば、図8のデータ再配置処理において、予測部312は、すべてのエクステントの代わりに、所定数のエクステントのみについて、性能指標533を計算してもよい。この場合、決定部313は、それらのエクステントのみについて性能向上度534を求めて、移動対象のエクステントを決定することができる。
図7のステップ703において、記録部523は、レイテンシを示す情報以外のデータ転送速度を示す情報を、性能指標531として求めてもよい。同様に、図8のステップ801において、予測部312は、レイテンシを示す情報以外のデータ転送速度を示す情報を、性能指標533として求めてもよい。
図6のデータ配置情報は一例に過ぎず、別の形式のデータ配置情報を用いてもよい。図9の性能指標及び図10の性能向上度は一例に過ぎず、別の性能指標及び性能向上度を用いてもよい。エクステントの代わりに、別のデータ管理単位を用いてもよい。
図12は、図3、図5、及び図11のストレージ制御装置301として用いられる情報処理装置(コンピュータ)の構成例を示している。図12の情報処理装置は、CPU1201、メモリ1202、入力装置1203、出力装置1204、補助記憶装置1205、媒体駆動装置1206、及びネットワーク接続装置1207を備える。これらの構成要素はバス1208により互いに接続されている。
メモリ1202は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。メモリ1202は、図3、図5、及び図11の記憶部311として用いることができる。
CPU1201(プロセッサ)は、例えば、メモリ1202を利用してプログラムを実行することにより、図3、図5、及び図11の予測部312及び決定部313として動作する。CPU1201は、メモリ1202を利用してプログラムを実行することにより、図5及び図11の生成部521、制御部522、記録部523、及び再配置部524としても動作する。
入力装置1203は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示及び情報の入力に用いられる。出力装置1204は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。
補助記憶装置1205は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置1205は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置1205にプログラム及びデータを格納しておき、それらをメモリ1202にロードして使用することができる。補助記憶装置1205は、図3、図5、及び図11の記憶部311として用いることができる。
媒体駆動装置1206は、可搬型記録媒体1209を駆動し、その記録内容にアクセスする。可搬型記録媒体1209は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体1209は、Compact Disk Read Only Memory(CD−ROM)、Digital Versatile Disk(DVD)、Universal Serial Bus(USB)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体1209にプログラム及びデータを格納しておき、それらをメモリ1202にロードして使用することができる。
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ1202、補助記憶装置1205、又は可搬型記録媒体1209のような、物理的な(非一時的な)記録媒体である。
ネットワーク接続装置1207は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、ネットワーク接続装置1207を介して、図5のSSD511及びHDD512、図11のSSD511、SAS HDD1111、及びSATA HDD1112と通信することができる。また、情報処理装置は、ネットワーク接続装置1207を介して、サーバと通信することもできる。
情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置1207を介して受信し、それらをメモリ1202にロードして使用することができる。
なお、情報処理装置が図12のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がオペレータ又はユーザと対話する必要がない場合は、入力装置1203及び出力装置1204を省略してもよい。また、可搬型記録媒体1209を利用しない場合は、媒体駆動装置1206を省略してもよい。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
図1乃至図12を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部と、
前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求める予測部と、
前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する決定部と、
を備えることを特徴とするストレージ制御装置。
(付記2)
前記データ配置に基づいて、前記複数のデータ管理単位のうち配置場所が変更されるデータ管理単位を変更後の配置場所へ移動させる再配置部をさらに備えることを特徴とする付記1記載のストレージ制御装置。
(付記3)
前記決定部は、前記複数のデータ管理単位それぞれについて、前記第1期間において測定された記憶装置の性能を示す性能指標と、前記予測部が求めた前記第2期間における前記特定の記憶装置の性能指標との差分を求め、前記複数のデータ管理単位それぞれの前記差分に基づいて、前記データ配置を決定することを特徴とする付記1又は2記載のストレージ制御装置。
(付記4)
前記決定部は、前記複数のデータ管理単位のうち第1データ管理単位の差分が第2データ管理単位の差分よりも大きく、前記第1データ管理単位について前記予測部が求めた前記特定の記憶装置の性能指標が示す性能が、前記第1データ管理単位について測定された記憶装置の性能よりも高い場合、前記第1データ管理単位の配置場所を前記特定の記憶装置に変更したデータ配置を、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置に決定することを特徴とする付記3記載のストレージ制御装置。
(付記5)
前記複数の記憶装置は、第1記憶装置と、前記第1記憶装置よりもデータ転送速度が低速な第2記憶装置とを含み、前記複数のデータ管理単位のうち1つのデータ管理単位は、前記第1期間において前記第1記憶装置内に配置され、前記第2期間において前記第2記憶装置内に配置されることを特徴とする付記1乃至4のいずれか1項に記載のストレージ制御装置。
(付記6)
前記性能予測情報は、前記複数の記憶装置それぞれの線形回帰モデルを含み、各記憶装置の線形回帰モデルは、各記憶装置の1つ又は複数の特徴量を説明変数として含み、各記憶装置の性能指標を目的変数として含むことを特徴とする付記1乃至5のいずれか1項に記載のストレージ制御装置。
(付記7)
前記複数の記憶装置それぞれの性能指標は、前記複数の記憶装置それぞれのレイテンシを示すことを特徴とする付記1乃至6のいずれか1項に記載のストレージ制御装置。
(付記8)
性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部を参照し、
前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求め、
前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する、
処理をコンピュータに実行させるためのストレージ制御プログラム。
(付記9)
前記コンピュータは、前記データ配置に基づいて、前記複数のデータ管理単位のうち配置場所が変更されるデータ管理単位を変更後の配置場所へ移動させることを特徴とする付記8記載のストレージ制御プログラム。
(付記10)
前記コンピュータは、前記複数のデータ管理単位それぞれについて、前記第1期間において測定された記憶装置の性能を示す性能指標と、前記第2期間における前記特定の記憶装置の性能指標との差分を求め、前記複数のデータ管理単位それぞれの前記差分に基づいて、前記データ配置を決定することを特徴とする付記8又は9記載のストレージ制御プログラム。
(付記11)
前記コンピュータは、前記複数のデータ管理単位のうち第1データ管理単位の差分が第2データ管理単位の差分よりも大きく、前記第1データ管理単位について求めた前記特定の記憶装置の性能指標が示す性能が、前記第1データ管理単位について測定された記憶装置の性能よりも高い場合、前記第1データ管理単位の配置場所を前記特定の記憶装置に変更したデータ配置を、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置に決定することを特徴とする付記10記載のストレージ制御プログラム。
(付記12)
コンピュータが、
性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部を参照し、
前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求め、
前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する、
ことを特徴とするストレージ制御方法。
(付記13)
前記コンピュータは、前記データ配置に基づいて、前記複数のデータ管理単位のうち配置場所が変更されるデータ管理単位を変更後の配置場所へ移動させることを特徴とする付記12記載のストレージ制御方法。
(付記14)
前記コンピュータは、前記複数のデータ管理単位それぞれについて、前記第1期間において測定された記憶装置の性能を示す性能指標と、前記第2期間における前記特定の記憶装置の性能指標との差分を求め、前記複数のデータ管理単位それぞれの前記差分に基づいて、前記データ配置を決定することを特徴とする付記12又は13記載のストレージ制御方法。
(付記15)
前記コンピュータは、前記複数のデータ管理単位のうち第1データ管理単位の差分が第2データ管理単位の差分よりも大きく、前記第1データ管理単位について求めた前記特定の記憶装置の性能指標が示す性能が、前記第1データ管理単位について測定された記憶装置の性能よりも高い場合、前記第1データ管理単位の配置場所を前記特定の記憶装置に変更したデータ配置を、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置に決定することを特徴とする付記14記載のストレージ制御方法。
101、501、1101 ストレージシステム
111、301 ストレージ制御装置
112、511 SSD
111、512 HDD
121 仮想ブロックデバイス
201 クライアント端末
202 サーバ
203 通信ネットワーク
311 記憶部
312 予測部
313 決定部
321 特徴量
322 性能予測情報
521 生成部
522 制御部
523 記録部
524 再配置部
531、533 性能指標
532、535 データ配置情報
534 性能向上度
1111 SAS HDD
1112 SATA HDD
1201 CPU
1202 メモリ
1203 入力装置
1204 出力装置
1205 補助記憶装置
1206 媒体駆動装置
1207 ネットワーク接続装置
1208 バス
1209 可搬型記録媒体

Claims (7)

  1. 性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部と、
    前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求める予測部と、
    前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する決定部と、
    を備えることを特徴とするストレージ制御装置。
  2. 前記データ配置に基づいて、前記複数のデータ管理単位のうち配置場所が変更されるデータ管理単位を変更後の配置場所へ移動させる再配置部をさらに備えることを特徴とする請求項1記載のストレージ制御装置。
  3. 前記決定部は、前記複数のデータ管理単位それぞれについて、前記第1期間において測定された記憶装置の性能を示す性能指標と、前記予測部が求めた前記第2期間における前記特定の記憶装置の性能指標との差分を求め、前記複数のデータ管理単位それぞれの前記差分に基づいて、前記データ配置を決定することを特徴とする請求項1又は2記載のストレージ制御装置。
  4. 前記決定部は、前記複数のデータ管理単位のうち第1データ管理単位の差分が第2データ管理単位の差分よりも大きく、前記第1データ管理単位について前記予測部が求めた前記特定の記憶装置の性能指標が示す性能が、前記第1データ管理単位について測定された記憶装置の性能よりも高い場合、前記第1データ管理単位の配置場所を前記特定の記憶装置に変更したデータ配置を、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置に決定することを特徴とする請求項3記載のストレージ制御装置。
  5. 前記複数の記憶装置は、第1記憶装置と、前記第1記憶装置よりもデータ転送速度が低速な第2記憶装置とを含み、前記複数のデータ管理単位のうち1つのデータ管理単位は、前記第1期間において前記第1記憶装置内に配置され、前記第2期間において前記第2記憶装置内に配置されることを特徴とする請求項1乃至4のいずれか1項に記載のストレージ制御装置。
  6. 性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部を参照し、
    前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求め、
    前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する、
    処理をコンピュータに実行させるためのストレージ制御プログラム。
  7. コンピュータが、
    性能の異なる複数の記憶装置内に複数のデータ管理単位が配置されている第1期間における、前記複数のデータ管理単位それぞれに対するアクセスの特徴を示す特徴量を記憶するとともに、特徴量から前記複数の記憶装置それぞれの性能指標を求めるための性能予測情報を記憶する記憶部を参照し、
    前記複数のデータ管理単位それぞれについて、前記第1期間における特徴量と前記性能予測情報とを用いて、第2期間においてデータ管理単位の配置場所を前記第1期間とは異なる特定の記憶装置に変更した場合の前記特定の記憶装置の性能指標を求め、
    前記複数のデータ管理単位それぞれについて前記予測部が求めた性能指標に基づいて、前記第2期間において前記複数の記憶装置内に配置される前記複数のデータ管理単位のデータ配置を決定する、
    ことを特徴とするストレージ制御方法。
JP2017032844A 2017-02-24 2017-02-24 ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 Pending JP2018136893A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017032844A JP2018136893A (ja) 2017-02-24 2017-02-24 ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017032844A JP2018136893A (ja) 2017-02-24 2017-02-24 ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法

Publications (1)

Publication Number Publication Date
JP2018136893A true JP2018136893A (ja) 2018-08-30

Family

ID=63365653

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017032844A Pending JP2018136893A (ja) 2017-02-24 2017-02-24 ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法

Country Status (1)

Country Link
JP (1) JP2018136893A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020166678A1 (ja) 2019-02-13 2020-08-20 ミヨシ油脂株式会社 化粧料配合剤および化粧料並びにその製造方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020166678A1 (ja) 2019-02-13 2020-08-20 ミヨシ油脂株式会社 化粧料配合剤および化粧料並びにその製造方法

Similar Documents

Publication Publication Date Title
US11073999B2 (en) Extent migration in multi-tier storage systems
CN110301128B (zh) 基于学习的资源管理数据中心云架构的实现方法
US7506101B2 (en) Data migration method and system
JP5218390B2 (ja) 自律制御サーバ、仮想サーバの制御方法及びプログラム
JP5756478B2 (ja) データ・センタにおける電力消費の最適化
US11256595B2 (en) Predictive storage management system
JP7291724B2 (ja) ストレージ・ユニットのエラー・チェックを実施するときを決定するための機械学習モジュールの使用
US10380023B2 (en) Optimizing the management of cache memory
US10664185B2 (en) Backend-aware extent balancing
US8904144B1 (en) Methods and systems for determining at risk index for storage capacity
CN112948279A (zh) 管理存储系统中的访问请求的方法、设备和程序产品
CN110770691A (zh) 混合数据存储阵列
JP2019133291A (ja) 情報処理装置,情報処理システムおよび制御プログラム
US20200285510A1 (en) High precision load distribution among processors
JP5515889B2 (ja) 仮想マシンシステム、自動マイグレーション方法および自動マイグレーションプログラム
US10268714B2 (en) Data processing in distributed computing
JP2018136893A (ja) ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法
JP2014174844A (ja) 性能評価支援プログラム、性能評価支援装置及び性能評価支援方法
US8396999B2 (en) Input/output hot spot tracking
WO2017122263A1 (ja) 管理計算機及び管理方法
JP2018136892A (ja) ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法
JP2021105772A (ja) リソース利用量の予測管理システム、リソース利用量の予測管理方法
US10528447B2 (en) Storage system performance models based on empirical component utilization
JP2009282664A (ja) ストレージデータ管理システム及びストレージデータ管理プログラム
JP2013196333A (ja) ストレージ装置およびストレージ装置における初期化方法