説明

データ記憶装置、データ移行方法、及び、プログラム

【課題】 ホスト装置との処理に適切なリソースを確保し、さらに、データに移行にもリソースを確保する。
【解決手段】 本発明のデータ記憶装置は、装置の負荷の状態を判定する負荷判定部と、負荷の状態に基づき係数を設定する係数設定部と、第1のデータ処理に必要なリソース量と係数とに基づき第1のデータ処理の抑制比率を算定する比率算定部と、比率算定部が算定した抑制比率に基づき、第2のデータ処理に対し第1のデータ処理を抑制する処理抑制部とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ記憶装置に関し、特に、データ記憶装置におけるデータの移行に関する。
【背景技術】
【0002】
ネットワークなどを介して各種の装置が接続した情報処理システムにおいて、各種のデータは、データ記憶装置に保存される。そして、データを管理する装置は、データの使用状態の変化、例えば、データライスサイクルマネージメントに基づき、データを記憶しているデータ記憶装置に、データの移動を依頼する。その依頼に対応し、データ記憶装置は、他のデータ記憶装置へデータを送信、又は、他のデータ記憶装置からデータを受信する(以下、受信と送信をまとめて移行と称す)。
【0003】
また、データ記憶装置を入れ替える場合にも、データの移行が、発生する。
【0004】
このようなデータの移行は、情報処理システムに含まれる他の装置の処理への影響を考慮して、移行の計画が立てられる。例えば、データの移行を管理する装置は、データ移行に先立ち、データの移行元の装置及び移行先の装置の性能を確認する(例えば、特許文献1を参照)。そして、所定の時間帯、例えば一般的に動作の少ない深夜帯にデータ移動が終わるように、データ移行の開始時間が、設定される。(例えば、特許文献2を参照。)
しかし、情報処理システムは、必ずしも予定通りに動作するとは限らない。従って、データの移行を管理する装置は、データの移行中においても、データの移行元及び移行先の装置の状態を確認して、移動計画を変更する(例えば、特許文献3を参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−049573
【特許文献2】特開2007−072988
【特許文献3】特開2007−286709
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、データ記憶装置は、ホスト装置からのデータのアクセス(access、以下、IO(input and output)とも称する)及びデータ記憶装置間のデータの移行に、同じインターフェースポート(interface port、以下、ポートと称す)を使用する。
【0007】
しかし、特許文献1乃至特許文献3に記載のデータ記憶装置は、ホスト装置とのアクセスとデータ移行処理とを分けて考慮していない。そのため、ホスト装置からの処理が多くなると、データ記憶装置は、データの移行に必要な時間を確保できないという問題点があった。
【0008】
また、特許文献1乃至特許文献3に記載のデータ記憶装置は、データの移行処理が多くなり、ホスト装置からの処理にデータ記憶装置のリソース(resource、資源)を割り振ることができず、ホスト装置の処理を遅らせ、性能を低下させてしまう問題点があった。
【0009】
本発明の目的は、上記問題点を解決し、ホスト装置の処理及びデータ移行の処理に適切なリソースを配分するデータ記憶装置、データ移行方法、及び、プログラムを提供することにある。
【課題を解決するための手段】
【0010】
本発明のデータ記憶装置は、装置の負荷の状態を判定する負荷判定部と、前記負荷の状態に基づき係数を設定する係数設定部と、第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する比率算定部と、前記比率算定部が算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理抑制部とを含む。
【0011】
本発明のデータ移行方法は、装置の負荷の状態を判定し、前記負荷の状態に基づき係数を設定し、第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定し、算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する。
【0012】
本発明のプログラムは、装置の負荷の状態を判定する処理と、前記負荷の状態に基づき係数を設定する処理と、第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する処理と、算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理とをコンピュータに実行させる。
【発明の効果】
【0013】
本発明によれば、ホスト装置との処理に適切なリソースを確保し、さらに、データの移行にもリソースを確保することができる。
【図面の簡単な説明】
【0014】
【図1】本発明における第1の実施の形態に係るデータ記憶装置を含む情報処理システムの一例を示すブロック図である。
【図2】第1の実施の形態に係るライト命令のデータの流れを示す図である。
【図3】第1の実施の形態に係るリード命令のデータの流れを示す図である。
【図4】第1の実施の形態に係るリード命令のデータの流れを示す図である。
【図5】第1の実施の形態に係るデータ移行のデータの流れを示す図である。
【図6】第1の実施の形態に係るデータ記憶装置の構成の一例を示すブロック図である。
【図7】第1の実施の形態に係る制御部の構成の一例を示すブロック図である。
【図8】第1の実施の形態に係る負荷の一例を示す図である。
【図9】第1の実施の形態に係る制御部の動作の一例を示すフロー図である。
【図10】第1の実施の形態に係る負荷レベルの一例を示す図である。
【図11】第1の実施の形態に係る係数の一例を示す図である。
【図12】第1の実施の形態に係るデータ記憶装置の動作の一例を示すフロー図である。
【図13】第1の実施の形態に係るデータ記憶装置の別の構成の一例を示すブロック図である。
【図14】第2の実施の形態に係るデータ記憶装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【0015】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0016】
まず、本実施の形態の説明で使用する用語について整理する。
【0017】
「スループット(throughput)」とは、処理量又は効率のことである。スループットは、いろいろな値を用いてあらわすことができるが、本実施の形態の説明では、説明の便宜のため、単位時間(例えば1秒)当たりのホスト装置とデータ記憶装置とのデータ送受信のデータ量とする。スループットが高い場合、データ量が、多いこととなる。その結果、データ記憶装置の入出力、例えばネットワークインタフェース又はバスの使用率が、高くなる。
【0018】
「IOPS(Input Output Per Second:秒当たりの入出力回数)」とは、単位時間(1秒)当たりに、ホスト装置がデータ記憶装置にアクセス(IO)する回数である。IOPSが高い場合は、ホスト装置との処理が多いため、データ記憶装置の処理部が含む構成、例えばCPU(central process unit)のビジー率(busy rate)が高くなる。
【0019】
「データ処理」とは、一般的なデータ処理のことであるが、本実施の形態の説明では、装置間のデータの移行処理を用いて説明する。複数のデータ処理が、同時又は並行して行われる場合、データ処理を区別するため、例えば、「主となるデータ処理」及び「副となるデータ処理」、又は、「第1のデータ処理」及び「第2のデータ処理」と称す。「主となるデータ処理」及び「副となるデータ処理」は、2つ以上のデータ処理を区別するための呼称のため、データ処理の内容を区別するものではない。ただし、本実施の形態の説明を分かりやすくするため、ホスト装置とデータ記憶装置とのデータ処理を「主となるデータ処理」、データ記憶装置間のデータ処理を「副となるデータ処理」と称すこととする。
【0020】
(第1の実施の形態)
図1は、第1の実施の形態に係るデータ記憶装置1を含む情報処理システム5の構成の一例を示すブロック図である。
【0021】
情報処理システム5は、データ記憶装置1と、データ記憶装置2と、ホスト装置3と、中継装置4とを含む。
【0022】
本実施の形態に係るデータ記憶装置1は、移行後のデータを記憶する装置である。つまり、データ記憶装置1は、データ記憶装置2が記憶している移行前のデータの受付と、ホスト装置3からのアクセスを受け付ける。
【0023】
データ記憶装置2は、移行する元データを記憶し、データ記憶装置1に送信する装置である。なお、データ記憶装置2は、データ記憶装置1と同じ構成である必要はなく、データ記憶装置1と異なる構成の装置でもよい。そのため、データ記憶装置2の詳細な説明は省略する。
【0024】
ホスト装置3は、必要に応じ、中継装置4を介してデータ記憶装置1に命令を送り、データを送信又は受信する。ホスト装置3は、情報処理システム5の処理の主体となるコンピュータなどの装置である。そのため、ホスト装置3の詳細な説明は、省略する。
【0025】
中継装置4は、一般的なデータを中継する装置(ルータ、ブリッジ、ハブ、又は、スイッチ)であり、ホスト装置3とデータ記憶装置1、又は、データ記憶装置1とデータ記憶装置2とのデータの送受信を中継する。中継装置4も一般的な中継のための装置でよく、詳細な説明は、省略する。
【0026】
次に、情報処理システム5のデータの流れについて図1乃至図5を参照して説明する。
【0027】
まず、ホスト装置3がデータを書き込む動作のデータの流れについて説明する。
【0028】
図2は、ホスト装置3がデータ書き込む動作のデータの流れを矢印付き線で示した図である。
【0029】
既に説明しているとおり、移行後のデータは、データ記憶装置1が記憶する。つまり、ホスト装置3は、データを新たに書き込む場合、データ記憶装置1にデータを書き込む。そのため、ホスト装置3がデータを書き込む場合、図2に示すように、ホスト装置3は、データを、中継装置4を介して、データ記憶装置1に送る。データ記憶装置1は、受け取ったデータを記憶する。
【0030】
次に、ホスト装置3がデータを読み出す動作のデータの流れについて説明する。
【0031】
図3は、移行済みのデータを読み出す場合のデータの流れを矢印付き線で示した図である。
【0032】
データがデータ記憶装置1に移行済みのため、ホスト装置3は、読み出すデータを、中継装置4を介してデータ記憶装置1から読み出す。
【0033】
図4は、移行前のデータを読み出す動作のデータの流れを矢印付き線で示した図である。
【0034】
移行前のデータは、データ記憶装置2に記憶されている。そのため、ホスト装置3から読み出しを依頼されたデータ記憶装置1は、依頼されたデータを、中継装置4を介して、データ記憶装置2から読み出す。データ記憶装置1は、読み出したデータを記憶する。この動作に基づき、データの移行も、終了する。そして、その後、データ記憶装置1は、読み出したデータを、中継装置4を介してホスト装置3に送る。
【0035】
次に、移行時のデータの流れについて説明する。
【0036】
図5は、移行時のデータの流れを矢印付き線で示した図である。
【0037】
データ記憶装置1は、移行データを、中継装置4を介してデータ記憶装置2から読み出す。データ記憶装置1は、読み出したデータを記憶する。
【0038】
データ記憶装置1は、ホスト装置3からのアクセスとデータ移行動作とを同時又は並行して行う場合、図2乃至図4に示す動作と、図5に示す動作とを同時又は並行して行う。
【0039】
次に、本実施の形態に係るデータ記憶装置1の構成及び動作について図面を参照して説明する。
【0040】
図6は、本実施の形態に係るデータ記憶装置1の構成の一例を示すブロック図である。
【0041】
データ記憶装置1は、制御部11と、記憶部12と、入出力部13とを含む。
【0042】
制御部11は、データ記憶装置1の各部を制御して、データ記憶装置1の動作を制御する。さらに、制御部11は、後ほど詳細に説明するように、ホスト装置3からのアクセスの動作と、データ記憶装置2とのデータ移行の動作との抑制を制御する。
【0043】
記憶部12は、制御部11の指示に基づき、データ記憶装置1が受け取ったデータを記憶する。また、記憶部12は、制御部11の指示に基づき、記憶しているデータを出力する。そのため、記憶部12は、1つ又は複数の情報記憶装置を含んでいる。なお、記憶部12は、情報記憶装置として、磁気ディスク装置、光磁気ディスク装置、半導体記憶装置など、データを記憶及び読み出すことができれば、どのような装置を含んでもよい。このように記憶部12は、一般的な情報記憶装置と同様に動作すればよく、動作の詳細な説明は、省略する。
【0044】
入出力部13は、制御部11に指示に基づき、中継装置4を介して、外部の装置、例えばホスト装置3又はデータ記憶装置2とのデータ送受信を行う。入出力部13は、ネットワーク又はバスに接続しデータを送受信する一般的な装置の入出力に関する構成と同様に動作すればよく、動作の詳細な説明は、省略する。
【0045】
図7は、本実施の形態に係るデータ記憶装置1の制御部11の構成の一例を示すブロック図である。
【0046】
制御部11は、負荷判定部111と、係数設定部112と、比率算定部113と、情報保持部114と、容量取得部115と、処理抑制部116と、計時部117とを含んでいる。
【0047】
負荷判定部111は、データ記憶装置1の負荷の状態を判定する。この判定の動作については、後ほど説明する。
【0048】
係数設定部112は、負荷判定部111の判定した負荷の状態に基づき、係数(以下、αを称すこともある)を設定する。
【0049】
比率算定部113は、処理に必要なリソースの量と、係数設定部112が設定した係数(α)とに基づき、データ処理のリソースの抑制比率を算定する。処理に必要なリソースの量は、図示しない構成から取り寄せても良いが、本実施の形態に係る比率算定部113は、処理に必要なリソースの量を、情報保持部114が保持する情報と、容量取得部115が取得した情報とに基づき求める。
【0050】
なお、本実施の形態に係るデータ記憶装置1は、副となるデータ処理と、主となるデータ処理との、どちらか、又は、両方のリソースを抑制しても良い。ただし、以下では、説明の便宜のため、副となるデータ処理(データの移行に関する処理)のリソース(命令を発行する時間)を抑制するとして説明する。また、副となるデータ処理を第1のデータ処理、主となるデータ処理を第2のデータ処理と称すこともある。
【0051】
情報保持部114は、データ記憶装置1のデータの処理能力に関係する情報、例えば、データ記憶装置1が接続しているネットワーク又はバスを介したデータ移行に使用できる最大転送容量(以下、MaxTP(Maximum TransPort capacity)と称す)を保持している。なお、
容量取得部115は、移行するデータに関する情報、例えば、移行するデータの残り容量(以下、RD(Rest Data volume)と称す)を取得し、保持する。
【0052】
処理抑制部116は、比率算定部113の算定した比率に基づき、データ記憶装置2からのデータの移行に関する命令の処理のリソース(一例として本実施の形態では、処理の時間を用いる)を抑制する。処理抑制部116は、抑制する時間(抑制時間)か否かを判定するために、計時部117が計時した時間を使用する。なお、データ記憶装置1が、主となるデータ処理も抑制する場合、処理抑制部116は、主となるデータ処理も抑制する。
【0053】
また、本実施の形態に係る処理抑制部116は、命令に関する情報、例えば、データの移行において指定された終了時間も保持する。だたし、データの移行の終了時間を保持する構成を処理抑制部116としたのは、一例であり、例えば、比率算定部113が保持しても良い。
【0054】
計時部117は、処理抑制部116の指示に基づき、処理抑制部116が処理に用いる時間を計測する。
【0055】
なお、データの移行に関しては、データの送信元の装置、又は、データの受信先の装置のどちらが主体となって動作、つまり、命令を発行してもよいが、本実施の形態の説明では、説明の便宜のため、データ記憶装置1が命令を送信するとして説明する。
【0056】
次の、本実施の形態に係るデータ記憶装置1の制御部11の動作について図面を参照して説明する。
【0057】
データ記憶装置1は、データの移行を開始する場合、既に説明したとおり、移行するデータの読み出し命令(リード命令)をデータ記憶装置2に送信する。ただし、本実施の形態に係るデータ記憶装置1は、データ移行に関する読み出し命令の送信を、データ記憶装置1の負荷及び残り容量などに基づき、以下に説明するように所定の比率の時間について抑制する。
【0058】
ここで、データ記憶装置1は、負荷の状態を、いろいろな条件に基づき判定することができる。本実施の形態に係るデータ記憶装置1は、説明の便宜のため、スループット及びIOPSに基づき負荷を判定する。
【0059】
図8は、負荷201と、スループット202及びIOPS203との関係の一例を示す図である。
【0060】
スループット202及びIOPS203が低いほど、負荷201は、低く、スループット202及びIOPS203が高いほど、負荷201は、高くなる。
【0061】
なお、図8は例示であり、負荷201は、4段階ではなく、3段階以下、又は、5段階以上に分けても良い。また、スループット202及びIOPS203も、2段階ではなく、3段階以上に分けても良い。
【0062】
図9は、制御部11が抑制時間を設定する動作の一例を示すフロー図である。
【0063】
制御部11の負荷判定部111は、入出力部13又は図示しないモニタ部から、現在のスループットの状態(例えば、スループット割合)及びIOPSの状態(例えば、IOPS割合)を受け取る(ステップ1001)。なお、負荷判定部111は、現状の状態として、所定の時間範囲の平均値を取得しても良い。
【0064】
スループット及びIOPSの状態を受け取った負荷判定部111は、データ記憶装置1の負荷の状態を示す負荷レベルを判定する。
【0065】
図10は、負荷判定部111の判定の一例を示す図である。負荷判定部111は、スループット割合212とIOPS割合214との組合せに基づき負荷レベル211を判定する。例えば、スループット割合212が50%、IOPS割合214が50%の場合、負荷判定部111は、データ記憶装置1の負荷レベル211を「3(中高負荷)」と判定する。
【0066】
なお、図10において、負荷レベルの判定は、5段階(0(抑制なし)、1(低負荷)、2(中負荷)、3(中高負荷)、4(高負荷))であるが、本発明では、5段階に限定されない。負荷レベルの判定は、4段階以下でも、6段階以上でも良い。
【0067】
なお、図10は、スループット割合212とバス使用率213との関係、及び、IOPS割合214とCPUビジー率215との関係も示している。
【0068】
図9を用いた説明に戻る。
【0069】
負荷判定部111は、判定した負荷レベル211を係数設定部112に送る。
【0070】
係数設定部112は、受け取った負荷レベル211に基づき、抑制の比率を求めるときに用いる係数(α)を設定する(ステップ1002)。
【0071】
図11は、係数設定部112が設定する係数(α)の一例を示す図である。係数設定部112は、負荷レベル211に基づき係数222を設定する。例えば、負荷レベル211が「3(中高負荷)」の場合、係数設定部112は、係数を「0.75」と設定する。
【0072】
図9を用いた説明に戻る。
【0073】
係数設定部112は、設定した係数(α)を比率算定部113に送る。
【0074】
係数(α)を受け取った比率算定部113は、係数(α)と、情報保持部114が保持しているデータ記憶装置1の性能に関する情報と、容量取得部115が取得した残りデータの情報とに基づき、副となるデータ処理、つまり、データ移行の抑制の比率を求める(ステップ1003)。
【0075】
比率算定部113の算出は、いろいろな手法を用いることができる。本実施の形態の説明では、一例として、次の手法を用いる。
【0076】
比率算定部113は、データ記憶装置1の性能(処理能力)として、情報保持装置114からデータ移行の最大転送容量(MaxTP)を受け取る。また、比率算定部113は、容量取得部115から移行するデータの残り容量(RD)を受け取る。さらに、比率算定部113は、処理抑制部116からデータ移行の残り時間(RT(Rest Time))を受け取る。そして、比率算定部113は、次に示す式を用いて、抑制比率を求める。
【0077】
抑制比率=α*(1.0−(RD/MaxTP)/RT) (1)
ここで、式(1)を説明する。
【0078】
なお、繰り返しになるが、式(1)の各変数は、次のとおりである。
【0079】
α:係数設定部112が設定した係数
RD:残りデータ量
MaxTP:最大転送容量
RT:データ移行の残り時間。
【0080】
最も内側のカッコ内「RD/MaxTP」は、残りデータ量を最大転送容量で割った値である。この値は、残りデータの移行に必要な時間である。つまり、この値は、データ移行に必要なリソース量(時間)である。
【0081】
次に、外側のカッコ内の後半は、残りデータの移行時間を残り時間(RT)で割った値であり、データ移行の残り時間に対し、データ移行の処理に割り当てる時間(つまりリソース)の比率となる。
【0082】
外側のカッコ内、つまり、割り当てる時間の比率を「1」から引いた値は、データ移行に割り当てなくても良い、つまり、この値は、データの移行のための命令(副となるデータ処理)の抑制時間の比率となる。本実施の形態に係るデータ記憶装置1は、この比率の時間を、すべてホスト装置3とアクセスに割り当て、データ移行の命令を抑制してもよい。しかし、ホスト装置3とのアクセスが少ない場合、この比率の時間全てにおいて、データ移行を抑制することは、入出力の空き時間を増やすこととなる。
【0083】
そこで、本実施の形態に係るデータ記憶装置1は、カッコ内で求めた比率に、データ記憶装置1の負荷レベル211に基づき求めた係数(α)を掛ける。係数(α)を用い、データ記憶装置1は、負荷レベル211が低い場合、抑制の比率を低くする。その結果、データ記憶装置1は、負荷が低い場合、データ移行の命令の抑制時間を少なくし、データ移行の処理に比率を高める。
【0084】
比率算定部113は、式(1)を用いて求めた比率を処理抑制部116に送る。
【0085】
処理抑制部116は、比率算出部113で算出された比率に従って、所定の時間、例えば1秒又は1分でのデータ移行の命令を抑制する時間(抑制時間)を求める(ステップ1004)。そして、処理抑制部116は、計時部117を用いて時間を確認し、抑制時間の間、データ移行の命令を抑制する。
【0086】
次に、抑制時間設定後のデータ記憶装置1の動作について説明する。
【0087】
図12は、データ記憶装置1が主となるデータ処理と副となるデータ処理とを行う場合の動作の一例を示すフロー図である。
【0088】
データ記憶装置1は、制御部11において既に説明した抑制時間を設定後、制御部11の制御の下に、データ移行動作(副となるデータ処理)を開始する。
【0089】
そしてデータ記憶装置1は、図示しない計時部(計時部117を兼用しても良い)を用いて所定の時間が経過したかどうかを判定する(ステップ1101)。
【0090】
所定の時間が経過した場合(ステップ1101でyes)、データ記憶装置1は、図9に示すフローの実行に基づき、抑制時間を再度設定する(ステップ1102)。これは、時間の経過に従い、データ記憶装置1及びホスト装置3の動作状態が変更となっている場合もあるためである。
【0091】
続いて、データ記憶装置1は、データ移行が完了したか否かを判定する(ステップ1103)。
【0092】
移行が完了した場合(ステップ1103でyes)、データ記憶装置1は、データ移行動作を終了する。
【0093】
移行が完了していない場合(ステップ1103でno)、データ記憶装置1は、抑制時間か否かを判定する(ステップ1104)。
【0094】
抑制時間でない場合(ステップ1104でno)、データ記憶装置1は、データ移行処理の待ち状態か否かを判定する(ステップ1105)。
【0095】
待ち状態で無い場合(ステップ1105でno)、データ記憶装置1は、データの移行のための命令の発行などデータ移行処理を行う(ステップ1106)。所定の処理後、データ記憶装置1は、ステップ1101に戻り、動作を継続する。
【0096】
抑制時間の場合(ステップ1104でyes)、又は、移行処理での待ち状態の場合(ステップ1105でyes)、データ記憶装置1は、ホスト装置3とのアクセス処理中か否かを判定する(ステップ1107)。
【0097】
ホスト装置3との処理中でない場合(ステップ1107でno)、データ記憶装置1は、ステップ1101に戻り、動作を継続する。
【0098】
ホスト装置3との処理中の場合(ステップ1107でyes)、データ記憶装置1は、ホスト装置3との所定の処理を行う(ステップ1108)。その後、データ記憶装置1は、ステップ1101に戻り、動作を継続する。
【0099】
なお、本実施の形態に係るデータ記憶装置1は、データ移行の処理(例えば、命令の処理)を抑制したが、これに限られるわけではない。
【0100】
例えば、本実施に形態に係るデータ記憶装置1は、データ移行に用いる帯域を抑制してもよい。
【0101】
なお、本実施の形態に係るデータ記憶装置1の構成は、これまでの説明に限られるわけではない。
【0102】
データ記憶装置1は、いくつかの構成をまとめた構成、例えば、比率算出部113と処理抑制部116とを1つの構成としても良い。さらに、データ記憶装置1の比率算定部113は、情報保持部114及び容量取得部115を含んでも良い。
【0103】
また、データ記憶装置1は、1つ又は複数の構成を、ネットワーク又はバスなどを介して接続した別の装置としてもよい。例えば、データ記憶装置1は、ディスクアレイ装置のように、制御部11及び入出力部13を含む制御装置と、記憶部12を含むディスク装置とを含んでも良い。
【0104】
図13は、第1の実施の形態に係る別の構成のデータ記憶装置6の一例を示すブロック図である。
【0105】
図13において図2と同じ構成は、同じ番号を付し、詳細な説明は、省略する。
【0106】
入出力部13は、図2に示すデータ記憶装置1の入出力部13と同様である。
【0107】
また、記憶部12は、ネットワークを介して接続する別装置として、図13では省略した。
【0108】
制御部14は、負荷判定部111と、係数設定部112と、比率算定部118と、処理抑制部119と含む。
【0109】
負荷判定部111と係数設定部112は、図2に示すデータ記憶装置1の負荷判定部111と係数設定部112と同様のため詳細な説明は、省略する。
【0110】
比率算定部118は、図2に示したデータ記憶装置1の比率算定部113に加え、情報保持部114及び容量取得部115の機能を含んでいる。
【0111】
処理抑制部119は、図2に示したデータ記憶装置1の処理抑制部116に加え計時部117の機能を含んでいる。
【0112】
このように構成したデータ記憶装置6は、データ記憶装置1と同様に動作し、図示しない記憶部12に対するデータの移行を行うことができる。
【0113】
なお、データ記憶装置6は、本実施の形態の最小構成となっている。
【0114】
このように、第1の実施の形態に係るデータ記憶装置1は、主となるデータ処理(ホスト装置に対して処理)のリソースを確保しながら、副となるデータ処理(データ移行の処理)にリソースを確保できる効果を得ることができる。
【0115】
その理由は、第1の実施の形態に係るデータ記憶装置は、第1のデータ処理(副となるデータ処理)に必要なリソース(例えば、時間)量を求め、求めたリソース量を確保する。そして、データ記憶装置は、確保した以外のリソースにおいて、第1のデータ処理(副となるデータ処理)を抑制し、第2のデータ処理(主となるデータ処理)を行う。そのため、第1の実施の形態に係るデータ記憶装置は、第1のデータ処理(副となるデータ処理)に必要なリソース量を確保し、さらに、第2のデータ処理(主となるデータ処理)にもリソース量を割り振ることができるためである。
【0116】
また、第1の実施の形態に係るデータ記憶装置は、第1のデータ処理(副となるデータ処理)のリソース量を基にリソースの抑制を設定しているため、第1のデータ処理(副となるデータ処理)の過剰な抑制を防ぐこともできるためである。
【0117】
(第1の実施例)
次に具体的な数値を使用した実施例について説明する。
【0118】
まず、本実施例の前提を整理しておく。
【0119】
移動するデータ量:1000[GByte](1[TB])
移行の最大転送容量(MaxTP):10[MByte/s](0.01[GB/s])
負荷レベル及び係数(α)の判定:図10及び図11を使用
データ移行完了時間:100,000[秒]
判定時の残り時間RT=70,000[秒](つまり、開始から30,000[秒]での判定)
判定時の残り容量RD=350[GByte]
スループット割合=30[%]
IOPS割合=45[%]
続いて、図9のフロー図に沿って本実施例の動作を説明する。
【0120】
負荷判定部111は、図10に基づき、負荷レベル211として、スループット割合212=30%及びIOPS割合214=45%に対応するの「2(中負荷)」を判定する(ステップ1001)。
【0121】
係数設定部112は、図11に基づき、係数222に、「2(中負荷)」に対応する「0.5」を設定する(ステップ1002)。
【0122】
比率算定部113は、上記の前提及び係数(α)を式(1)に適用して抑制比率を求める(ステップ1003)。
【0123】
抑制比率=α*(1.0−(RD/MaxTP)/RT)
=0.5*(1.0−(350/0.01)/70000)
=0.475
処理抑制部116は、この抑制比率に基づき、データ移行の命令を抑制する。例えば、所定の時間として1分(60秒)を考えると、データ記憶装置1は、「60*0.475=28.5[秒]」の間を抑制期間としてデータ移行を抑制し、ホスト装置3のアクセスを処理する。また、データ記憶装置1は、残りの「31.5秒」の間、データ移行を処理する。
【0124】
このように、第1の実施例に係るデータ記憶装置は、主となるデータ処理(ホスト装置に対して処理)と、副となるデータ処理(データ移行の処理)とにリソース(処理時間)を確保できる効果を得ることができる。
【0125】
その理由は、第1の実施例に係るデータ処理装置は、第1のデータ処理(副となるデータ処理)に必要なリソース量を求め、確保する。そして、データ処理装置は、確保した以外のリソースにおいて、第1のデータ処理(副となるデータ処理)を抑制する。そのため、データ記憶装置は、抑制している間、第2のデータ処理(主となるデータ処理)を行い、抑制が解かれると、第1のデータ処理(副となるデータ処理)を行うためである。
【0126】
(第2の実施の形態)
第1の実施の形態に係るデータ記憶装置1は、各構成をコンピュータで実行するプログラムとして実現しても良い。
【0127】
さらに、第1の実施の形態に係るデータ記憶装置1の各構成は、コンピュータで実行するプログラムを記憶する記録媒体を含んでも良い。
【0128】
図14は、第2の実施に形態に係るデータ記憶装置7の構成の一例を示す図である。
【0129】
データ記憶装置7は、制御部15と、記憶部12と、入出力部13とを含んでいる
記憶部12及び入出力部13は、第1の実施の形態に係るデータ記憶装置1と同じため詳細な説明は、省略する。
【0130】
制御部15は、CPU121と、記憶部122とを含む。
【0131】
記憶部122は、プログラム124を含む記憶媒体123を含む。
【0132】
CPU121は、プログラム124に基づき、第1の実施の形態に係る制御部11と同様の動作を行う。また、記憶部122は、CPU121のワークエリアとして動作しても良い。
【0133】
なお、データ記憶装置7のホスト装置3との処理とデータ移行の処理とがCPU121上で動作する複数のタスクとして動作している場合、データ記憶装置7は、抑制として、タスクの数又は割り振るCPU121の処理時間を抑制しても良い。
【0134】
このように第2の実施の形態に係るデータ記憶装置7は、第1の実施の形態に係るデータ記憶装置1と同様の効果を得ることができる。
【0135】
その理由は、第2の実施の形態に係るデータ記憶装置7の制御部15は、プログラム124に基づいて第1の実施の形態のデータ記憶装置1の制御部11と同様の動作を行うことができるためである。
【0136】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0137】
(付記)
(付記1)
装置の負荷の状態を判定する負荷判定部と、
前記負荷の状態に基づき係数を設定する係数設定部と、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する比率算定部と、
前記比率算定部が算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理抑制部と
を含むデータ記憶装置。
(付記2)
前記比率算定部が、前記第1のデータ処理の残りデータ量と、データの処理能力とに基づき前記抑制比率を算定することを特徴とする付記1に記載のデータ記憶装置。
(付記3)
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のための命令の発行を抑制することを特徴とする付記1又は付記2に記載のデータ記憶装置。
(付記4)
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のための通信帯域を抑制することを特徴とする付記1又は付記3のいずれかに記載のデータ記憶装置。
(付記5)
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のためのタスク又はCPUのリソースを抑制することを特徴とする付記1乃至付記4のいずれかに記載のデータ記憶装置。
(付記6)
前記第2のデータ処理がホスト装置とのデータ処理であり、前記第1のデータ処理が他のデータ記憶装置とのデータ移行処理であることを特徴とする付記1乃至付記5のいずれかに記載のデータ記憶装置。
(付記7)
前記負荷判定部が、前記ホスト装置とのスループット及びIOPS(秒当たりの入出力回数)に基づき前記負荷を判定することを特徴とする付記1乃至付記6のいずれかに記載のデータ記憶装置。
(付記8)
装置の負荷の状態を判定し、
前記負荷の状態に基づき係数を設定し、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定し、
算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する
データ移行方法。
(付記9)
前記第1のデータ処理を残りのデータ量と、データの処理能力とに基づき前記抑制比率を算定することを特徴とする付記8に記載のデータ移行方法。
(付記10)
前記第1のデータ処理の抑制として、前記第1のデータ処理のための命令の発行を抑制することを特徴とする付記8又は付記9に記載のデータ移行方法。
(付記11)
前記第1のデータ処理の抑制として、前記第1のデータ処理のための通信帯域を抑制することを特徴とする付記8乃至付記10のいずれかに記載のデータ移行方法。
(付記12)
前記第1のデータ処理の抑制として、前記第1のデータ処理のためのタスク又はCPUのリソースを抑制することを特徴とする付記8乃至付記11のいずれかに記載のデータ移行方法。
(付記13)
前記第2のデータ処理がホスト装置とのデータ処理であり、前記第1のデータ処理が他のデータ記憶装置とのデータ移行処理であることを特徴とする付記8乃至付記12のいずれかに記載のデータ移行方法。
(付記14)
前記装置の負荷の状態の判定が、前記ホスト装置とのスループット及びIOPS(秒当たりの入出力回数)に基づき前記負荷を判定することを特徴とする付記8乃至付記13のいずれかに記載のデータ移行方法。
(付記15)
装置の負荷の状態を判定する処理と、
前記負荷の状態に基づき係数を設定する処理と、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する処理と、
算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理とを
コンピュータに実行させるプログラム。
(付記16)
前記第1のデータ処理の残りデータ量と、データの処理能力とに基づき前記抑制比率を算定することを特徴とする付記15に記載のプログラム。
(付記17)
前記第1のデータ処理の抑制の処理として、前記第1のデータ処理のための命令の発行を抑制することを特徴とする付記15又は付記16に記載のプログラム。
(付記18)
前記第1のデータ処理の抑制する処理として、前記第1のデータ処理のための通信帯域を抑制することを特徴とする付記15又は付記17のいずれかに記載のプログラム。
(付記19)
前記第1のデータ処理の抑制する処理として、前記第2のデータ処理のためのタスク又はCPUのリソースを抑制することを特徴とする付記15乃至付記18のいずれかに記載のプログラム。
(付記20)
前記第1のデータ処理がホスト装置とのデータ処理であり、前記第2のデータ処理が他のデータ記憶装置とのデータ移行処理であることを特徴とする付記15乃至付記19のいずれかに記載のプログラム。
(付記21)
前記装置の負荷の状態を判定する処理が、前記ホスト装置とのスループット及びIOPS(秒当たりの入出力回数)に基づき前記負荷を判定することを特徴とする付記15乃至付記20のいずれかに記載のプログラム。
【符号の説明】
【0138】
1 データ記憶装置
2 データ記憶装置
3 ホスト装置
4 中継装置
5 情報処理システム
6 データ記憶装置
7 データ記憶装置
11 制御部
12 記憶部
13 入出力部
14 制御部
15 制御部
111 負荷判定部
112 係数設定部
113 比率算定部
114 情報保持部
115 容量取得部
116 処理抑制部
117 計時部
118 比率算定部
119 処理抑制部
121 CPU
122 記憶部
123 記憶媒体
124 プログラム
201 負荷
202 スループット
203 IOPS
211 負荷レベル
212 スループット割合
213 バス使用率
214 IOPS割合
215 CPUビジー率
222 係数

【特許請求の範囲】
【請求項1】
装置の負荷の状態を判定する負荷判定部と、
前記負荷の状態に基づき係数を設定する係数設定部と、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する比率算定部と、
前記比率算定部が算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理抑制部と
を含むデータ記憶装置。
【請求項2】
前記比率算定部が、前記第1のデータ処理の残りデータ量と、データの処理能力とに基づき前記抑制比率を算定することを特徴とする請求項1に記載のデータ記憶装置。
【請求項3】
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のための命令の発行を抑制することを特徴とする請求項1又は請求項2に記載のデータ記憶装置。
【請求項4】
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のための通信帯域を抑制することを特徴とする請求項1又は請求項3のいずれかに記載のデータ記憶装置。
【請求項5】
前記処理抑制部が、前記第1のデータ処理の抑制として、前記第1のデータ処理のためのタスク又はCPUのリソースを抑制することを特徴とする請求項1乃至請求項4のいずれかに記載のデータ記憶装置。
【請求項6】
前記第2のデータ処理がホスト装置とのデータ処理であり、前記第1のデータ処理が他のデータ記憶装置とのデータ移行処理であることを特徴とする請求項1乃至請求項5のいずれかに記載のデータ記憶装置。
【請求項7】
前記負荷判定部が、前記ホスト装置とのスループット及びIOPS(秒当たりの入出力回数)に基づき前記負荷を判定することを特徴とする請求項1乃至請求項6のいずれかに記載のデータ記憶装置。
【請求項8】
装置の負荷の状態を判定し、
前記負荷の状態に基づき係数を設定し、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定し、
算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する
データ移行方法。
【請求項9】
前記第1のデータ処理を残りのデータ量と、データの処理能力とに基づき前記抑制比率を算定することを特徴とする請求項8に記載のデータ移行方法。
【請求項10】
装置の負荷の状態を判定する処理と、
前記負荷の状態に基づき係数を設定する処理と、
第1のデータ処理に必要なリソース量と前記係数とに基づき前記第1のデータ処理の抑制比率を算定する処理と、
算定した前記抑制比率に基づき、第2のデータ処理に対し前記第1のデータ処理を抑制する処理とを
コンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−133436(P2012−133436A)
【公開日】平成24年7月12日(2012.7.12)
【国際特許分類】
【出願番号】特願2010−282728(P2010−282728)
【出願日】平成22年12月20日(2010.12.20)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】