(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024131189
(43)【公開日】2024-09-30
(54)【発明の名称】ストレージ制御プログラム,ストレージ制御装置及びストレージ制御方法
(51)【国際特許分類】
G06F 3/06 20060101AFI20240920BHJP
G06F 13/10 20060101ALI20240920BHJP
【FI】
G06F3/06 301J
G06F3/06 301W
G06F3/06 301A
G06F13/10 340A
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023041298
(22)【出願日】2023-03-15
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110003649
【氏名又は名称】弁理士法人真田特許事務所
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】古屋 昌徳
(72)【発明者】
【氏名】伊藤 佳治
(72)【発明者】
【氏名】窪田 遼
(72)【発明者】
【氏名】金井 秀行
(57)【要約】
【課題】ストレージの利用効率を向上させる。
【解決手段】書き込み処理に係るデータブロックについて、複数種類のストレージ装置に格納した場合の複数種類のストレージ装置それぞれにおける所定期間のデータ増加量(4)~(7)に基づき、圧縮除去率(8)及び重複排除率(9)を算出し、算出した圧縮除去率(8)及び重複排除率(9)に基づき、複数種類のストレージ装置からデータブロックの格納先を選択して、格納先のストレージ装置にデータブロックを書き込む。
【選択図】
図3
【特許請求の範囲】
【請求項1】
複数種類のストレージ装置にデータを格納するコンピュータに、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出し、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む、
処理を実行させる、ストレージ制御プログラム。
【請求項2】
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置における前記データ増加量とに基づき、前記圧縮除去率を算出する、
処理を前記コンピュータに実行させる、請求項1に記載の制御プログラム。
【請求項3】
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置における前記データ増加量とに基づき、前記重複排除率を算出する、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【請求項4】
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【請求項5】
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【請求項6】
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【請求項7】
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【請求項8】
複数種類のストレージ装置にデータを格納するストレージ制御装置であって、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出する算出部と、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む書き込み処理部と、
を備える、ストレージ制御装置。
【請求項9】
複数種類のストレージ装置にデータを格納するコンピュータが、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出し、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む、
処理を実行する、ストレージ制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージ制御プログラム,ストレージ制御装置及びストレージ制御方法に関する。
【背景技術】
【0002】
複数のストレージを仮想的に統合して1つの大きなストレージプールを構成する「ストレージ仮想化」という技術がある。
【0003】
ストレージ仮想化では、利用頻度の高いデータを高速なストレージへ、利用頻度の低いデータを安価で低速なストレージに保存することで、ストレージ利用効率を最適化する「自動階層化」という技術が用いられる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2012/117658号
【特許文献2】特開2019-79448号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ストレージ装置にはアクセス速度以外にも様々な特性があり、それぞれ最適な用途が異なる。ストレージ仮想化では、それらの特性を使い分けられず、データ特性に合わせてデータを自動的に最適配置することができないおそれがある。
【0006】
1つの側面では、ストレージの利用効率を向上させることを目的とする。
【課題を解決するための手段】
【0007】
1つの側面では、ストレージ制御プログラムは、複数種類のストレージ装置にデータを格納するコンピュータに、書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出し、算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む、処理を実行させる。
【発明の効果】
【0008】
1つの側面では、ストレージの利用効率を向上させることができる。
【図面の簡単な説明】
【0009】
【
図1】実施形態におけるストレージシステムの構成例を模式的に示すブロック図である。
【
図2】
図1に示したサーバにおけるソフトウェア構成例を模式的に示すブロック図である。
【
図3】実施形態におけるフォルダ情報テーブルを例示する図である。
【
図4】実施形態における圧縮・重複排除の閾値テーブルを例示する図である。
【
図5】実施形態におけるデータ書き込み処理を説明するフローチャートである。
【
図6】実施形態における測定処理を説明するフローチャートである。
【
図7】実施形態におけるデータ読み出し処理を説明するフローチャートである。
【
図8】変形例におけるストレージシステムの構成例を模式的に示すブロック図である。
【
図9】変形例におけるフォルダ情報テーブルを例示する図である。
【
図10】変形例におけるアクセス頻度の閾値テーブルを例示する図である。
【
図11】変形例におけるデータ書き込み処理を説明するフローチャートである。
【
図12】実施形態及び変形例におけるサーバのハードウェア構成例を模式的に示すブロック図である。
【発明を実施するための形態】
【0010】
〔A〕実施形態
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【0011】
図1は、実施形態におけるストレージシステムの構成例を模式的に示すブロック図である。
【0012】
ストレージシステム100は、複数(
図1に示す例では2つ)のサーバ1,複数(
図1に示す例では3つ)のクライアント2(別言すれば、クライアントA~C),複数(
図1に示す例では4つ)の物理ストレージ3(別言すれば、物理ストレージA~D)及び複数(
図1に示す例では4つ)のスイッチ4を備える。
【0013】
各クライアント2は、サーバ1を介して、複数の物理ストレージ3へのデータの読み書き指示を発行する。
【0014】
各スイッチ4は、複数のクライアント2と複数のサーバ1との間の通信、及び、複数のサーバ1と複数の物理ストレージ3との間の通信を中継する。
【0015】
複数の物理ストレージ3のうち、物理ストレージAは圧縮・重複排除機能を有しないストレージであり、物理ストレージBは圧縮機能のみを有するストレージであり、物理ストレージCは重複排除機能のみを有するストレージであり、物理ストレージDは圧縮・重複排除機能を有するストレージである。なお、ストレージシステム100に配置する物理ストレージ3の数及び種類は種々変更することができる。
【0016】
サーバ1は、ストレージ制御装置の一例であり、サーバ機能を備えたコンピュータである。
図1に示す例においてはストレージシステム100が2つのサーバ1を備えることとしているが、ストレージシステム100が備えるサーバ1の数は種々変更することができる。
【0017】
サーバ1は、ストレージ仮想化ソフトウェア10としての機能を備える。ストレージ仮想化ソフトウェア10はクライアントに対してファイルストレージとして動作する。ストレージ仮想化ソフトウェア10は、
図2を用いて後述するように、測定処理部111,算出部112,書き込み処理部113及び読み出し処理部114として機能する。サーバ1とストレージ仮想化ソフトウェア10は、単一のアプライアンスであってもよい。
【0018】
なお、サーバ1のハードウェア構成例については、
図12を用いて後述する。
【0019】
ストレージ仮想化ソフトウェア10やスイッチ4は、冗長化及び性能向上のために複数配置することができる。上記のように2台に限定されているわけではなく、さらに増やすことができる。逆に1台でも良い。
【0020】
本実施形態では、フォルダ単位でアクセス頻度、圧縮・重複排除率を測定/判定するが、これに限定されるものではない。すなわち、ファイル単位でアクセス頻度、圧縮・重複排除率が測定/判定されてもよい。以下、フォルダとファイルとを合わせてデータブロックと称する場合がある。
【0021】
図2は、
図1に示したサーバにおけるソフトウェア構成例を模式的に示すブロック図である。
【0022】
図2に示すように、サーバ1のストレージ仮想化ソフトウェア10は、測定処理部111,算出部112,書き込み処理部113及び読み出し処理部114として機能する。
【0023】
測定処理部111は、ストレージ3からデータ量増分を取得して、フォルダ情報テーブル101(
図3を用いて後述)を更新する。
【0024】
算出部112は、フォルダ毎のデータ量増分に基づき、圧縮除去率及び重複排除率を算出して、フォルダ情報テーブル101を更新する。
【0025】
別言すれば、算出部112は、書き込み処理に係るデータブロックについて、複数種類のストレージ3に格納した場合の複数種類のストレージ3それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出する。
【0026】
書き込み処理部113は、Network File System(NFS)やServer Message Block (SMB)等のプロトコルでクライアント2からWrite命令が発行されると、圧縮除去率及び重複排除率に基づき、いずれかのストレージ3にフォルダを保存する。
【0027】
別言すれば、書き込み処理部113は、算出した圧縮除去率及び重複排除率に基づき、複数種類のストレージ3からデータブロックの格納先を選択して、格納先のストレージ3にデータブロックを書き込む。
【0028】
読み出し処理部114は、NFSやSMB等のプロトコルでクライアント2からRead命令が発行されると、当該フォルダが格納されているストレージ3からフォルダを読み出す。
【0029】
図3は、実施形態におけるフォルダ情報テーブル101を例示する図である。
【0030】
図3に示すように、フォルダ情報テーブル101には、フォルダ名,作成日,ストレージA~D増分,圧縮除去率,重複排除率が対応付けられている。
【0031】
フォルダ名は、フォルダ毎に一意の名前が付与される。作成日は、各フォルダが付与された年月日が付与される。測定状況は、測定処理部111による各ストレージ3のデータ増分が「測定中」であるか「測定済」であるかの別が登録される。
【0032】
ストレージA~D増分は、測定処理部111によって測定された各ストレージA~Dにおけるフォルダそれぞれについてのデータ増分が登録される。
【0033】
圧縮除去率は、算出部112によってストレージA増分及びストレージB増分に基づいて算出される。
図3に示すように、ストレージA増分,ストレージB増分,圧縮除去率の列番号をそれぞれ(4), (5), (8)とするとき、圧縮除去率は(8) = (1 - (5) / (4)) x 100 [%]で算出される。
【0034】
別言すれば、算出部112は、圧縮除去機能及び重複排除機能を有しないストレージ3におけるデータ増加量と、圧縮除去機能を有し重複排除機能を有しないストレージ3における前記データ増加量とに基づき、圧縮除去率を算出する。
【0035】
重複排除率は、算出部112によってストレージA増分及びストレージC増分に基づいて算出される。
図3に示すように、ストレージA増分,ストレージC増分,重複排除率の列番号をそれぞれ(4), (6), (9)とするとき、重複排除率は(9) = (1 - (6) / (4)) x 100 [%]で算出される。
【0036】
別言すれば、算出部112は、圧縮除去機能及び重複排除機能を有しないストレージ3におけるデータ増加量と、圧縮除去機能を有さず重複排除機能を有するストレージ3におけるデータ増加量とに基づき、重複排除率を算出する。
【0037】
1回の書込みだけをもとに圧縮除去率、重複排除率を計算するのはその書き込みだけの傾向に左右されるため、その後フォルダに格納されていくデータの傾向を見誤る可能性がある。したがって、一定期間(1か月など)測定を継続し、その間書き込まれたデータ全体での圧縮除去率、重複排除率が計算されてよい。
【0038】
図3に示す例では、フォルダ/ccc、/dddは測定済であり、/cccは圧縮・重複排除ともに有効、/dddは重複排除のみ有効と判定される。
【0039】
図4は、実施形態における圧縮・重複排除の閾値テーブルを例示する図である。
【0040】
図4に示すように、圧縮・重複排除の閾値テーブル102には、圧縮除去率閾値及び重複排除率閾値が登録されている。
【0041】
図4に示す例では、圧縮除去率閾値及び重複排除率閾値がいずれも、20%に設定されている。なお、圧縮除去率閾値及び重複排除率閾値がいずれも種々変更できる。
【0042】
圧縮除去率が閾値未満で、且つ、重複排除率が閾値未満場合は、圧縮・重複排除機能がないストレージAにフォルダが格納される。
【0043】
圧縮除去率が閾値以上で、且つ、重複排除率が閾値未満場合は、圧縮機能があるストレージBにフォルダが格納される。
【0044】
圧縮除去率が閾値未満で、且つ、重複排除率が閾値以上場合は、重複排除機能があるストレージCにフォルダが格納される。
【0045】
圧縮除去率が閾値以上で、且つ、重複排除率が閾値以上場合は、圧縮・重複排除機能があるストレージDにフォルダが格納される。
【0046】
実施形態におけるデータ書き込み処理を、
図5に示すフローチャート(ステップS1~S11)に従って説明する。
【0047】
書き込み処理部113は、クライアント2からデータ書き込み指示が発行されると、データ書き込み指示に係るフォルダの拡張子を判定する(ステップS1)。
【0048】
拡張子が圧縮済メディアである場合には(ステップS1の「圧縮済メディア」ルート参照)、書き込み処理部113は、圧縮・重複排除が無効なストレージAにフォルダを格納し(ステップS2)、処理結果をクライアント2に応答してデータ書き込み処理は終了する。
【0049】
一方、拡張子が圧縮済メディアでない場合には(ステップS1の「その他」ルート参照)、書き込み処理部113は、フォルダの圧縮・重複排除率が測定済みであるかを判定する(ステップS3)。
【0050】
フォルダの圧縮・重複排除率が測定済みでなく測定中である場合には(ステップS3のNoルート参照)、書き込み処理部113は、ストレージA~D全てフォルダを格納し(ステップS4)、処理結果をクライアント2に応答してデータ書き込み処理は終了する。また、クライアント2への応答とは非同期に、
図6を用いて後述する測定処理が実施される(ステップS5)。
【0051】
一方、フォルダの圧縮・重複排除率が測定済みである場合には(ステップS3のYesルート参照)、書き込み処理部113は、フォルダの圧縮除去率を判定する(ステップS6)。
【0052】
フォルダの圧縮除去率が20%未満である場合には(ステップS6の「20%未満」ルート参照)、書き込み処理部113は、フォルダの重複排除率を判定する(ステップS7の「20%未満」ルート参照)、処理はステップS2へ進む。
【0053】
一方、フォルダの重複排除率が20%以上である場合には(ステップS7の「20%以上」ルート参照)、書き込み処理部113は、重複排除が有効なストレージCにフォルダを格納し(ステップS8)、処理結果をクライアント2に応答してデータ書き込み処理は終了する。
【0054】
ステップS6において、フォルダの圧縮除去率が20%以上である場合には(ステップS6の「20%以上」ルート参照)、書き込み処理部113は、フォルダの重複排除率を判定する(ステップS9)。
【0055】
フォルダの重複排除率が20%未満である場合には(ステップS9の「20%未満」ルート参照)、書き込み処理部113は、圧縮が有効なストレージBにフォルダを格納し(ステップS10)、処理結果をクライアント2に応答してデータ書き込み処理は終了する。
【0056】
一方、フォルダの重複排除率が20%以上である場合には(ステップS9の「20%以上」ルート参照)、書き込み処理部113は、圧縮・重複排除機能が有効なストレージDにフォルダを格納し(ステップS11)、処理結果をクライアント2に応答してデータ書き込み処理は終了する。
【0057】
次に、実施形態における測定処理を、
図6に示すフローチャート(ステップS21~S25)に従って説明する。
【0058】
測定処理部111は、ストレージA~Dからデータ量増分を測定し、フォルダ情報テーブル101を更新する(ステップS21)。
【0059】
算出部112は、圧縮除去率及び重複排除率を計算し、フォルダ情報テーブル101を更新する(ステップS22)。
【0060】
書き込み処理部113は、重複して書き込んだデータのうち、1つを除いて削除する(ステップS23)。どのデータを残すかは、その時点の圧縮除去率、重複排除率がそれぞれ閾値を超えるかにより決定されてよい。
【0061】
測定処理部111は、フォルダ作成後、一定期間経過したかを判定する(ステップS24)。
【0062】
一定時間経過していない場合には(ステップS24のNoルート参照)、測定処理は終了する。
【0063】
一方、一定期間経過した場合には(ステップS24のYesルート参照)、測定状況を「測定済」に変更し(ステップS25)、測定処理は終了する。
【0064】
次に、実施形態におけるデータ読み出し処理を、
図7に示すフローチャート(ステップS31~S34)に従って説明する。
【0065】
読み出し処理部114は、クライアント2からデータ読み出し指示が発行されると、データの格納先の物理ストレージ3の情報を取得する(ステップS31)。
【0066】
読み出し処理部114は、データの格納先が複数あるかを判定する(ステップS32)。
【0067】
データの格納先が複数ない場合には(ステップS32のNoルート参照)、読み出し処理部114は、データの格納先からデータを読み出し(ステップS33)、クライアント2に読み出し結果を応答してデータ読み出し処理は終了する。
【0068】
一方、データの格納先が複数ある場合には(ステップS32のYesルート参照)、読み出し処理部114は、データの格納先の物理ストレージ3から例えばラウンドロビン方式でデータを読み出し(ステップS34)、クライアント2に読み出し結果を応答してデータ読み出し処理は終了する。
【0069】
〔B〕変形例
変形例においては、従来のデバイス性能に基づくストレージ自動階層化を、上述した実施形態と組み合わせて実行する。
【0070】
図8は、変形例におけるストレージシステム100aの構成例を模式的に示すブロック図である。
【0071】
図8に示すストレージシステム100aは、
図1に示した実施形態におけるストレージシステム100における構成に加えて、高速デバイスである物理ストレージ3(別言すれば、物理ストレージE)を備える。物理ストレージEは、圧縮・重複排除機能を有してもよいし有しなくてもよい。
【0072】
測定処理部111は、データ書き込み処理に係るフォルダへのアクセス回数をカウントする。
【0073】
算出部112は、一定間隔で、カウントされたアクセス回数に基づきアクセス頻度を算出する。
【0074】
書き込み処理部113は、アクセス頻度が閾値以上である場合に、フォルダを高速デバイスであるストレージEに格納する。
【0075】
図9は、変形例におけるフォルダ情報テーブル101aを例示する図である。
【0076】
図9に示すフォルダ情報テーブル101aは、
図3に示したフォルダ情報テーブル101と比較して、アクセス回数及びアクセス頻度[IOPS]を含む。アクセス頻度[IOPS]は、アクセス頻度[IOPS] =アクセス回数/測定期間[S]で算出されてよい。
【0077】
図10は、変形例におけるアクセス頻度の閾値テーブル103を例示する図である。
【0078】
図10に示す例において、アクセス頻度の閾値テーブル103のアクセス頻度の閾値には、1000が登録されている。
【0079】
書き込み処理部113は、書き込み対象のフォルダのアクセス頻度が1000以上である場合に、フォルダを高速デバイスであるストレージEに格納する。一方、書き込み処理部113は、書き込み対象のフォルダのアクセス頻度が1000未満である場合に、上述した実施形態におけるデータ書き込み処理によって、ストレージA~Dにフォルダを格納する。
【0080】
変形例におけるデータ書き込み処理を、
図11に示すフローチャート(ステップS41~S45)に従って説明する。
【0081】
測定処理部111は、データ書き込み指示に係るフォルダのアクセス回数をカウントアップして、フォルダ情報テーブル101aに登録する(ステップS41)。
【0082】
算出部112は、一定間隔でアクセス回数からアクセス頻度を算出し、フォルダ情報テーブル101aからアクセス回数をクリアする(ステップS42)。
【0083】
書き込み処理部113は、アクセス頻度が閾値以上であるかを判定する(ステップS43)。
【0084】
アクセス頻度が閾値未満である場合には(ステップS43のNoルート参照)、
図5に示した実施形態におけるデータ書き込み処理が実行される(ステップS44)。
【0085】
一方、アクセス頻度が閾値未満である場合には(ステップS43のYesルート参照)、書き込み処理部113は、高速デバイスであるストレージEにフォルダを格納し(ステップS45)、クライアント2に書き込み結果を応答してデータ書き込み処理は終了する。
【0086】
〔C〕ハードウェア構成例
図12は、実施形態及び変形例におけるサーバ1のハードウェア構成例を模式的に示すブロック図である。
【0087】
図12に示すように、サーバ1は、CPU(Central Processing Unit)11,メモリ部12,表示制御部13,記憶装置14,入力Interface(IF)15,外部記録媒体処理部16及び通信IF17を備える。
【0088】
メモリ部12は、記憶部の一例であり、例示的に、Read Only Memory(ROM)及びRandom Access Memory(RAM)などである。メモリ部12のROMには、Basic Input/Output System(BIOS)等のプログラムが書き込まれてよい。メモリ部12のソフトウェアプログラムは、CPU11に適宜に読み込まれて実行されてよい。また、メモリ部12のRAMは、一時記録メモリあるいはワーキングメモリとして利用されてよい。
【0089】
表示制御部13は、表示装置131と接続され、表示装置131を制御する。表示装置131は、液晶ディスプレイやOrganic Light-Emitting Diode(OLED)ディスプレイ,Cathode Ray Tube(CRT),電子ペーパーディスプレイ等であり、オペレータ等に対する各種情報を表示する。表示装置131は、入力装置と組み合わされたものでもよく、例えば、タッチパネルでもよい。表示装置131は、サーバ1のユーザに対する種々の情報を表示する。
【0090】
記憶装置14は、高IO性能の記憶装置であり、例えば、Dynamic Random Access Memory(DRAM)やSSD(Solid State Drive),Storage Class Memory(SCM),HDD(Hard Disk Drive)が用いられてよい。
【0091】
入力IF15は、マウス151やキーボード152等の入力装置と接続され、マウス151やキーボード152等の入力装置を制御してよい。マウス151やキーボード152は、入力装置の一例であり、これらの入力装置を介して、オペレータが各種の入力操作を行う。
【0092】
外部記録媒体処理部16は、記録媒体160が装着可能に構成される。外部記録媒体処理部16は、記録媒体160が装着された状態において、記録媒体160に記録されている情報を読み取り可能に構成される。本例では、記録媒体160は、可搬性を有する。例えば、記録媒体160は、フレキシブルディスク、光ディスク、磁気ディスク、光磁気ディスク、又は、半導体メモリ等である。
【0093】
通信IF17は、外部装置との通信を可能にするためのインタフェースである。
【0094】
CPU11は、プロセッサの一例であり、
図2を用いて上述した測定処理部111,算出部112,書き込み処理部113及び読み出し処理部114としての機能等により、種々の制御や演算を行う処理装置である。CPU11は、メモリ部12に読み込まれたOperating System(OS)やプログラムを実行することにより、種々の機能を実現する。なお、CPU11は、複数のCPUを含むマルチプロセッサであってもよいし、複数のCPUコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
【0095】
サーバ1全体の動作を制御するための装置は、CPU11に限定されず、例えば、MPUやDSP,ASIC,PLD,FPGAのいずれか1つであってもよい。また、サーバ1全体の動作を制御するための装置は、CPU,MPU,DSP,ASIC,PLD及びFPGAのうちの2種類以上の組み合わせであってもよい。なお、MPUはMicro Processing Unitの略称であり、DSPはDigital Signal Processorの略称であり、ASICはApplication Specific Integrated Circuitの略称である。また、PLDはProgrammable Logic Deviceの略称であり、FPGAはField Programmable Gate Arrayの略称である。
【0096】
〔D〕効果
上述した実施形態におけるストレージ制御プログラム,ストレージ制御装置及びストレージ制御方法によれば、例えば以下の作用効果を奏することができる。
【0097】
算出部112は、書き込み処理に係るデータブロックについて、複数種類のストレージ3に格納した場合の複数種類のストレージ3それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出する。書き込み処理部113は、算出した圧縮除去率及び重複排除率に基づき、複数種類のストレージ3からデータブロックの格納先を選択して、格納先のストレージ3にデータブロックを書き込む。
【0098】
これにより、ストレージの利用効率を向上させることができる。
【0099】
算出部112は、圧縮除去機能及び重複排除機能を有しないストレージ3におけるデータ増加量と、圧縮除去機能を有し重複排除機能を有しないストレージ3における前記データ増加量とに基づき、圧縮除去率を算出する。
【0100】
これにより、圧縮除去率の算出を正確に行うことができる。
【0101】
算出部112は、圧縮除去機能及び重複排除機能を有しないストレージ3におけるデータ増加量と、圧縮除去機能を有さず重複排除機能を有するストレージ3におけるデータ増加量とに基づき、重複排除率を算出する。
【0102】
これにより、重複排除率の算出を正確に行うことができる。
【0103】
書き込み処理部113は、圧縮除去率が閾値未満であり、且つ、重複排除率が閾値未満である場合に、圧縮除去機能及び重複排除機能を有しないストレージ3にデータブロックを書き込む。
【0104】
これにより、圧縮除去機能及び重複排除機能を有しないストレージ3を効率的に利用できる。
【0105】
書き込み処理部113は、圧縮除去率が閾値以上であり、且つ、重複排除率が閾値未満である場合に、圧縮除去機能を有し重複排除機能を有しないストレージ3にデータブロックを書き込む。
【0106】
これにより、圧縮除去機能を有し重複排除機能を有しないストレージ3を効率的に利用できる。
【0107】
書き込み処理部113は、圧縮除去率が閾値未満であり、且つ、重複排除率が閾値以上である場合に、圧縮除去機能を有さず重複排除機能を有するストレージ3にデータブロックを書き込む。
【0108】
これにより、圧縮除去機能を有さず重複排除機能を有するストレージ3を効率的に利用できる。
【0109】
書き込み処理部113は、圧縮除去率が閾値以上であり、且つ、重複排除率が閾値以上である場合に、圧縮除去機能及び重複排除機能を有するストレージ3にデータブロックを書き込む。
【0110】
これにより、圧縮除去機能及び重複排除機能を有するストレージ3を効率的に利用できる。
【0111】
〔E〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【0112】
〔F〕付記
以上の実施形態に関し、更に以下の付記を開示する。
【0113】
(付記1)
複数種類のストレージ装置にデータを格納するコンピュータに、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出し、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む、
処理を実行させる、ストレージ制御プログラム。
【0114】
(付記2)
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置における前記データ増加量とに基づき、前記圧縮除去率を算出する、
処理を前記コンピュータに実行させる、請求項1に記載の制御プログラム。
【0115】
(付記3)
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置における前記データ増加量とに基づき、前記重複排除率を算出する、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【0116】
(付記4)
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【0117】
(付記5)
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【0118】
(付記6)
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【0119】
(付記7)
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータに実行させる、請求項1又は2に記載の制御プログラム。
【0120】
(付記8)
複数種類のストレージ装置にデータを格納するストレージ制御装置であって、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出する算出部と、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む書き込み処理部と、
を備える、ストレージ制御装置。
【0121】
(付記9)
前記算出部は、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置における前記データ増加量とに基づき、前記圧縮除去率を算出する、
処理を前記コンピュータに実行させる、付記8に記載のストレージ制御装置。
【0122】
(付記10)
前記算出部は、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置における前記データ増加量とに基づき、前記重複排除率を算出する、
付記8又は9に記載のストレージ制御装置。
【0123】
(付記11)
前記書き込み処理部は、前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
付記8又は9に記載のストレージ制御装置。
【0124】
(付記12)
前記書き込み処理部は、前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
付記8又は9に記載のストレージ制御装置。
【0125】
(付記13)
前記書き込み処理部は、前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置に前記データブロックを書き込む、
付記8又は9に記載のストレージ制御装置。
【0126】
(付記14)
前記書き込み処理部は、前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有するストレージ装置に前記データブロックを書き込む、
付記8又は9に記載のストレージ制御装置。
【0127】
(付記15)
複数種類のストレージ装置にデータを格納するコンピュータが、
書き込み処理に係るデータブロックについて、前記複数種類のストレージ装置に格納した場合の前記複数種類のストレージ装置それぞれにおける所定期間のデータ増加量に基づき、圧縮除去率及び重複排除率を算出し、
算出した前記圧縮除去率及び前記重複排除率に基づき、前記複数種類のストレージ装置から前記データブロックの格納先を選択して、前記格納先のストレージ装置に前記データブロックを書き込む、
処理を実行する、ストレージ制御方法。
【0128】
(付記16)
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置における前記データ増加量とに基づき、前記圧縮除去率を算出する、
処理を前記コンピュータが実行する、付記15に記載の制御方法。
【0129】
(付記17)
前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置における前記データ増加量と、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置における前記データ増加量とに基づき、前記重複排除率を算出する、
処理を前記コンピュータが実行する、付記15又は16に記載の制御方法。
【0130】
(付記18)
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータが実行する、付記15又は16に記載の制御方法。
【0131】
(付記19)
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値未満である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有し重複排除機能を有しないストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータが実行する、付記15又は16に記載の制御方法。
【0132】
(付記20)
前記圧縮除去率が閾値未満であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能を有さず重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータが実行する、付記15又は16に記載の制御方法。
【0133】
(付記21)
前記圧縮除去率が閾値以上であり、且つ、前記重複排除率が閾値以上である場合に、前記複数種類のストレージ装置のうち圧縮除去機能及び重複排除機能を有するストレージ装置に前記データブロックを書き込む、
処理を前記コンピュータが実行する、付記15又は16に記載の制御方法。
【符号の説明】
【0134】
1 :サーバ
2 :クライアント
3 :物理ストレージ
4 :スイッチ
10 :ストレージ仮想化ソフトウェア
11 :CPU
12 :メモリ部
13 :表示制御部
14 :記憶装置
15 :入力IF
16 :外部記録媒体処理部
17 :通信IF
100,100a:ストレージシステム
101,101a:フォルダ情報テーブル
102 :閾値テーブル
103 :閾値テーブル
111 :測定処理部
112 :算出部
113 :書き込み処理部
114 :読み出し処理部
131 :表示装置
151 :マウス
152 :キーボード
160 :記録媒体