JP4856932B2 - 記憶システム及びデータ移動方法 - Google Patents

記憶システム及びデータ移動方法 Download PDF

Info

Publication number
JP4856932B2
JP4856932B2 JP2005334028A JP2005334028A JP4856932B2 JP 4856932 B2 JP4856932 B2 JP 4856932B2 JP 2005334028 A JP2005334028 A JP 2005334028A JP 2005334028 A JP2005334028 A JP 2005334028A JP 4856932 B2 JP4856932 B2 JP 4856932B2
Authority
JP
Japan
Prior art keywords
volume
data
level
moved
relative
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
JP2005334028A
Other languages
English (en)
Other versions
JP2007140919A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005334028A priority Critical patent/JP4856932B2/ja
Priority to US11/330,219 priority patent/US7702865B2/en
Publication of JP2007140919A publication Critical patent/JP2007140919A/ja
Application granted granted Critical
Publication of JP4856932B2 publication Critical patent/JP4856932B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

本発明は、記憶システム及びデータ移動方法に関し、例えばストレージ装置として階層ストレージ装置を用いた記憶システムに適用して好適なものである。
近年、SATA(Serial AT Attachment)のような低コストストレージデバイスを装着した大容量のストレージ装置が市場に投入され、ストレージ資源の価格、品質等の特性が多様化しつつある。こうした低価格のストレージ装置の登場により、市場では、従来のオンラインデータへの適用のみでなく、アーカイブ等のコンプライアンス市場向けに新たなストレージソリューションが生み出されつつある。このため、複数のSAN(Storage Area Network)環境を統合し、異種多様なストレージ資源を効率的に有効活用することが急務となっている。
また、近年、データライフサイクル管理(DLCM:Data Lifecycle Management)が注目を浴びてきており、時間と共に変化するデータの価値に応じてデータを最適なストレージ資源に再配置すると共に、ライフサイクルの各フェーズにおいて、ストレージ装置内のボリュームレベルでのデータ移動を支援することがストレージ管理コストを低減する上で重要視されている。
データ移動時の最適なボリュームの割り当て方法として、従来、例えば下記特許文献1において、各ボリュームの実際の性能(例えばデータ入出力要求に対する応答速度)と、各アプリケーションが要求するボリュームの性能とを管理し、データ移動時に移動先のボリュームとして、そのアプリケーションに最適なボリュームを割り当てる方法が提案されている。また下記特許文献2では、アプリケーションが利用するボリュームの稼働統計情報を取得し、これをユーザに提供する方法が提案されており、この技術を利用することによって、この稼働統計情報に基づいてユーザがデータの移動先のボリュームを選択することが可能となる。
特開2004−334561号公報 特開2002−305415号公報
ところが、かかる従来技術によると、アプリケーションとデータ個々の関係を管理しながら、データの移動を行なうことはできるものの、アプリケーションが管理するデータ間の相関関係を考慮した場合には、データ移動先のボリュームとして最適なボリュームを割り当てられない場合も生ずる問題があった。
すなわち、アプリケーションがデータの種類ごとに異なるボリュームを使用する場合、かかるボリュームとして常に単一の性能が要求されるわけではなく、ボリュームごとにその使用内容に応じた要求レベルを満たせば良いことが多い。例えば、データベースアプリケーションの場合、ログデータを保存するボリュームについては、アクセス速度が高速でかつ信頼性が高いことが必要であるために、当該ボリュームに要求される性能は高いが、データを保存するボリュームについては、アクセス速度等はさほど要求されないが容量が必要となることが多いため大容量であれば良く、当該ボリュームに要求される性能は低い。
しかしながら、上述のように従来ではアプリケーションが管理するデータ間の相関関係を考慮していないため、従来技術によりデータを移動(マイグレーション)した場合、ログデータを保存するボリュームとして性能の高いボリュームが割り当て、データを格納するボリュームとして性能は低いが大容量のボリュームが割り当てられないケースも生じる。
またウェブ(Web)アプリケーションシステムでアクセス頻度の異なる複数のファイルが同一ボリューム内に格納されている場合において、アクセス頻度が高いファイル及びアクセス頻度が低いファイルをそれぞれ異なるボリュームに移動させる場合、アクセス頻度が高いファイルは、アクセス頻度が低いファイルよりも性能が高いボリュームに移動される必要があるが、従来技術によると、これが保障されない。
このように従来の技術では、アプリケーションが管理するデータ間の相関関係を考慮したデータ移動が必要な場合であっても、そのようなデータ移動を行い得ず、結果的に最適なデータ移動を行ない得ない問題があった。
本発明は以上の点を考慮してなされたもので、アプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行い得る記憶システム及びデータ移動方法を提案しようとするものである。
かかる課題を解決するため本発明においては、データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置とを有する記憶システムにおいて、前記ストレージ装置は、前記ボリュームごとの稼働情報を収集して前記管理装置に送信するコントローラを備え、前記管理装置は、必要時、前記ボリュームごとの稼働情報に基づいて、移動対象の各前記データをそれぞれ他の前記ボリュームに移動させるように前記ストレージ装置を制御する制御部を備え、前記管理装置の前記制御部は、前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出すると共に、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させるように、前記ストレージ装置を制御するようにした。
この結果、この記憶システムでは、移動対象のデータを、当該データを格納する前記ボリュームに要求するデータ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
また本発明においては、データを記憶する複数のボリューム間で前記データを移動させるデータ移動方法において、前記ボリュームごとの稼働情報を収集する第1のステップと、前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出する第2のステップと、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、必要時、移動対象の前記データを、当該データを格納する前記ボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させる第3のステップとを設けるようにした。
この結果、このデータ移動方法によれば、移動対象のデータを、当該データを格納する前記ボリュームに要求するデータ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
また本発明においては、データ移動方法において、関連する移動元のボリュームに格納されたデータに対して要求される性能を求め、前記要求される性能から関連するボリュームの相対関係を求め、求めた前記相対関係に基づいて移動先のボリュームを決定し、決定されたボリュームへデータを移行するようにした。
この結果、このデータ移動方法によれば、移動対象のデータを、当該データを格納する前記ボリュームに要求する性能データ要求レベルに応じたボリューム許容レベルのボリュームに移動させることができる。
本発明によれば、アプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行い得る記憶システム及びデータ移動方法を実現できる。
以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態による記憶システムの構成
図1において、1は全体として本実施の形態による記憶システムを示す。この記憶システム1は、複数の業務ホスト2と、少なくとも1つの管理ホスト3と、階層ストレージ装置4とがネットワーク5を介して相互に接続され、階層ストレージ装置4に1又は複数の外部ストレージ装置6が接続されることにより構成されている。
業務ホスト2は、ユーザが業務を実行するためのサーバであり、CPU(Central Processing Unit)やメモリを備えて構成される。業務ホスト2が備えるCPUにより各種制御プログラムやアプリケーションが実行されることによって、各種機能が発揮される。
業務ホスト2は、ネットワーク5を介して階層ストレージ装置4との間でデータの入出力を行うことができる。ネットワーク5としては、例えばLAN、SAN、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。このネットワーク5を介した業務ホスト2及び階層ストレージ装置4間の通信は、例えばネットワーク5がSANである場合にはファイバーチャネルプロトコルに従って行われ、ネットワーク5がLANである場合にはTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。
管理ホスト3は、ネットワーク5に接続された階層ストレージ装置4を管理・監視するためのサーバであり、CPU10及びメモリ11等を備えて構成される。メモリ11には、各種制御プログラムやアプリケーションソフトウェアが格納され、これら制御プログラムやアプリケーションソフトウェアがCPU10により実行されることによって、階層ストレージ装置4の管理・監視のための制御処理を含む各種処理が実行される。後述のテーブル作成プログラム12、稼働情報取得プログラム13、データ要求レベル監視プログラム14及びマイグレーション管理プログラム15も、このメモリ11に格納されて保持される。
また管理ホスト3は、ハードディスク装置などからなるローカルディスク装置20を備えており、このローカルディスク装置20に各種データが格納される。後述のデータ要求レベル管理テーブル21や、ボリューム許容レベル管理テーブル22もこのローカルディスク装置20に格納されて保持される。
階層ストレージ装置4は、複数のディスクデバイス(図示せず)を備える記憶デバイス部30と、この記憶デバイス部30を制御するコントロール部31とから構成される。
記憶デバイス部30のディスクデバイスとしては、例えばSCSI(Small Computer System Interface)ディスク等の高価なディスクや、SATA(Serial AT Attachment)ディスクや光ディスク等の安価なディスクを適用することができる。この場合、かかる高価なディスクと安価なディスクとが混在していても良い。
記憶デバイス部30の各ディスクデバイスは、コントロール部31によりRAID方式で運用される。1又は複数のディスクデバイスによって1つのRAIDグループが構成され、各RAIDグループが提供する物理的な記憶領域上に、それぞれ1又は複数の論理的なボリュームVOLが設定される。そしてデータは、このボリューム内に所定大きさのブロック(以下、これを論理ブロックと呼ぶ)単位で記憶される。
各論理ボリュームVOLには、それぞれ固有の識別子(以下、これをLU(Logical Unit number)と呼ぶ)が付与される。本実施の形態の場合、データの入出力は、このLUと、各論理ブロックにそれぞれ付与されるその論理ブロックに固有の番号(LBA:Logical Block Address)とを組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
コントロール部31は、接続された外部ストレージ装置6内のボリュームVOLを仮想化(図1の点線で示されたボリュームVOL)して業務ホスト2に提供することにより、自ストレージ装置内のボリュームVOL及び外部ストレージ装置6内のボリュームVOLを一元管理する。これにより業務ホスト2は、ボリュームVOLが階層ストレージ装置4内及び外部ストレージ装置6内のいずれにあるかを意識することなく、これらボリュームVOLにアクセスすることができる。またコントロール部31は、外部ストレージ装置6の接続や切り離しを任意に行なうことができ、さらにボリュームVOL間のデータ移動を実行させることもできる。
外部ストレージ装置6は、例えばディスクアレイ装置などから構成される。外部ストレージ装置6内には複数の記憶デバイス(以下ではディスクデバイスとする)が配置される。このディスクデバイスとしては、一般的には階層ストレージ装置4内のディスデバイスに比べて性能が劣るものが利用される。そして、1又は複数のディスクデバイスから構成される各RAIDグループが提供する記憶領域上にそれぞれ1又は複数のボリュームVOLが設定され、これらボリュームVOLが上述のように階層ストレージ装置4により仮想化されて業務ホスト2に提供される。
(2)記憶システム1におけるデータマイグレーション機能
次に、この記憶システム1に搭載されたデータマイグレーション機能について説明する。図2は、管理ホスト3のローカルディスク装置20に格納されるデータ要求レベル管理テーブル21を示している。
この実施の形態の場合、階層ストレージ装置4のコントローラ31は、既存技術を用いて自装置内に設定された各ボリュームVOL(仮想化した外部ストレージ装置6内のボリュームVOLも含む)の1秒当たりの入出力回数や、データ入出力要求に対する応答時間などの各ボリュームVOLの稼働状況を表す各種情報(以下、これを稼働情報と呼ぶ)を常時収集し、これら収集したボリュームVOLごとの稼働情報を順次管理ホスト3に送信するように構築されている。またこの際コントローラ31は、未だ使用されていない初期状態にあるボリュームVOLについては、当該ボリュームを提供するRAIDグループを構成するディスクデバイスのスペックから算出される1秒当たりの入出力回数や、データ入出力要求に対する応答時間などの理論値を稼働情報として管理ホスト3に送信する。
そして管理ホスト3は、階層ストレージ装置4から送信されるボリュームVOLごとの稼働情報に基づいて、アプリケーションがデータの保存先として使用するボリュームVOLに要求するデータごとのデータ要求レベルをこのデータ要求レベル管理テーブル21を用いて管理する。ここで、データ要求レベルとは、アプリケーションがそのデータを格納するボリュームVOLに要求する応答性能レベルをいう。
データ要求レベル管理テーブル21は、図2に示すように、「アプリケーション名」フィールド40、「データ名」フィールド41、「統計情報」フィールド42、「要求レベル」フィールド43及び「使用ボリューム」フィールド44から構成される。
このうち「アプリケーション名」フィールド40及び「データ名」フィールド41には、それぞれ対応するアプリケーションの識別情報及び対応するデータのデータ名(例えばファイル名)が格納され、「使用ボリューム」フィールド44には、そのデータが現在格納されているボリュームVOLの識別情報(例えばLUN)が格納される。
また「統計情報」フィールド42は、データ読出し回数や、データ書込み回数など、各データについてのデータ要求レベルを算出する際に使用する特定項目(以下、これを要求レベル決定項目と呼ぶ)の実測値をそれぞれ格納するための幾つかのフィールド42A,42B,‥‥,42nから構成される。そして階層ストレージ装置4から送信されてきたボリュームVOLごとの稼働情報のうち、対応するデータが格納されているボリュームVOLの稼働情報に基づき得られる対応する数値が、これらのフィールド42A,42B,‥‥,42nにそれぞれ格納される。
具体的には、「統計情報」フィールド42内には、「データ読出し回数」フィールド42A、「データ書込み回数」フィールド42B及び「応答時間」フィールド42nなどが設けられており、例えば「データ読出し回数」フィールド42Aに、そのデータの1秒当たりの読出し回数(対応するボリュームVOLからのデータ読出し回数)が格納される。また「データ書込み回数」フィールド42Bには、そのデータの1秒当たりの書込み回数(対応するボリュームVOLへのデータ書込み回数)が格納され、「応答時間」フィールド42nには、そのデータへのアクセスに対する応答時間(対応するボリュームVOLのデータ入出力要求に対する応答時間)の平均値が格納されることとなる。
さらに「要求レベル」フィールド43には、そのデータの保存先として使用するボリュームVOLに要求するデータ要求レベルが格納される。このデータ要求レベルは、「統計情報」フィールド42内の各フィールド42A,42B,‥‥,42nにそれぞれ格納された数値をそれぞれEr1,Er2,……,Ernとして、次式
Figure 0004856932
により算出される。
なお、この(1)式において、Cr1,Cr2,……,Crnは、それぞれ要求レベル決定項目間のばらつきを補正するための重み付け値であり、通常はいずれも「1」に設定される。また、階層ストレージ装置4から送信されるボリュームVOLごとの稼働情報に基づき得られた数値のうち、一般的に性能が高いほど値が小さくなるものについては、その逆数を「統計情報」フィールド42内の対応するフィールド42A,42B,‥‥,42nに格納し、当該逆数を(1)式の演算に用いるようにする。
一方、図3は、管理ホスト3のローカルディスク装置20に格納されるボリューム許容レベル管理テーブル22を示している。管理ホスト3は、階層ストレージ装置4から送信されるボリュームVOLごとの稼働情報に基づいて、階層ストレージ装置4内及び外部ストレージ装置6内に設定されたすべてのボリュームVOLごとのボリューム許容レベルを算出し、算出したボリュームVOLごとのボリューム許容レベルをこのボリューム許容レベル管理テーブル22を用いて管理する。ここで、ボリューム許容レベルとは、データ入出力要求に対するそのボリュームVOLの応答性能レベルをいう。
ボリューム許容レベル管理テーブル22は、図3に示すように、「ボリューム番号」フィールド50及び「ボリューム許容レベル」フィールド51から構成される。このうち「ボリューム番号」フィールド50には、階層ストレージ装置4内及び外部ストレージ装置6内に設定されたすべてのボリュームVOLについて、そのボリューム番号がそれぞれ格納される。
また「ボリューム許容レベル」フィールド51には、対応するボリュームVOLのボリューム許容レベルが格納される。このボリューム許容レベルは、階層ストレージ装置4から送信されるボリュームVOLごとの稼動情報のうちの、そのボリュームVOLの稼働情報に基づき得られる特定項目(以下、これを許容レベル決定項目と呼ぶ)の数値をそれぞれEr1,Er2,……,Ernとして、次式
Figure 0004856932
により算出される。
なお、この(2)式において、Ca1,Ca2,……,Canは、それぞれ許容レベル決定項目間のばらつきを補正するための重み付け値であり、通常はいずれも「1」に設定される。また、階層ストレージ装置4からのボリュームVOLごとの稼働情報に基づき得られる数値のうち、一般的に性能が高いほど値が小さくなるものについては、その逆数を(2)式の演算に用いるようにする。
許容レベル決定項目としては、そのボリュームVOLを提供するディスクデバイスの1秒当たりの回転数や、そのデータ入出力要求に対する応答時間、残理論最大入出力回数などが適用される。残理論最大入出力回数は、図4に示すように、RAIDグループ60を構成する複数のディスクデバイス61が提供する記憶領域上に複数のボリュームVOLが設定されている場合にのみ利用されるもので、そのRAIDグループ60が対応可能な単位時間当たりの論理的な最大入出力回数から、かかる記憶領域上に設定された各ボリュームVOLにおいて現在使用されている統計的な単位時間当たりのデータ入出力回数を引いた回数として計算することができる。
例えばこの図4に示すように、それぞれ1秒当たりの回転数が1000回転の3つのディスクデバイス61からRAIDグループ60が構成されており、このRAIDグループ60が提供する記憶領域上に、1秒当たりのデータ入出力回数が200回の第1のボリューム(「論理ボリューム1」)VOLと、1秒当たりのデータ入出力回数が100回の第2のボリューム(「論理ボリューム2」)VOLとが設定されている場合、残理論最大入出力回数Nは、次式
Figure 0004856932
のように計算される。
図5は、上述のデータ要求レベル管理テーブル21(図2)及びボリューム許容レベル管理テーブル22(図3)の作成手順を示すフローチャートである。管理ホスト3のCPU10(図1)は、階層ストレージ装置4から送信されるボリュームVOLごとの稼働情報と、メモリ11(図1)に格納されたテーブル作成プログラム12(図1)とに基づき、この図5に示すテーブル作成処理手順RT1に従って、かかるデータ要求レベル管理テーブル21及びボリューム許容レベル管理テーブル22を作成する。
すなわちCPU10は、一定時間ごとにこのテーブル作成処理手順RT1を開始し、まず、階層ストレージ装置4内のボリュームVOL(仮想化された外部ストレージ装置6内のボリュームVOLも含む)に格納されているすべてのデータのデータ名及び対応するすべてのアプリケーションのアプリケーション名を取得する(SP1)。
具体的には、CPU10は、業務ホスト2にそれぞれに搭載されたアプリケーションのうち、階層ストレージ装置4内のいずれかのボリュームVOL(仮想化された外部ストレージ装置6内のボリュームVOLも含む)を使用するアプリケーションのアプリケーション名と、そのアプリケーションが使用するボリュームVOLに格納されるデータのデータ名とを予め各業務ホスト2に問い合わせ、かくして得られたアプリケーション名及びデータ名を図示しない所定のテーブル(以下、これをアプリケーション名等管理テーブルと呼ぶ)に格納して管理している。
そしてCPU10は、かかるテーブル作成処理手順RT1のステップSP1において、このアプリケーション名等管理テーブルを検索することにより、階層ストレージ装置4内のボリュームVOLに格納されているすべてのデータのデータ名及び対応するすべてのアプリケーション名を取得する。
続いてCPU10は、稼働情報取得プログラム13(図1)に基づいて、階層ストレージ装置4に対して、ボリュームVOLごとの稼働情報の転送要求(以下、これをボリューム稼働情報転送要求)を発行する。この結果、このボリューム稼働情報転送要求を受信した階層ストレージ装置4のコントローラ31は、仮想化しているボリュームVOLについては対応する外部ストレージ装置6に問い合わせるようにして、仮想化していない自ストレージ装置内に設定されたボリュームVOLについては記憶している情報を読み出すようにして、既存技術により得られたボリュームVOLごとの稼働情報を取得し、これを管理ホスト3に送信する。これによりこれらボリュームVOLごとの稼働情報をCPU10が取得することができる(SP2)。
この後CPU10は、上述のようにして得られたボリュームVOLごとの稼働情報に基づいて、上述のようにデータごとのデータ要求レベルを算出する。そしてCPU10は、この算出結果に基づいてデータ要求レベル管理テーブル21を作成し、これをローカルディスク装置20内に格納する(SP3)。
次いで、CPU10は、階層ストレージ装置4から送信されてきたボリュームVOLごとの稼働情報の中から必要な情報を抽出し(SP4)、抽出したこれらの情報に基づいて、上述のようにしてボリュームVOLごとのボリューム許容レベルをそれぞれ算出する。そしてCPU10は、この算出結果に基づいてボリューム許容レベル管理テーブル22を作成し、これをローカルディスク装置20内に格納する(SP5)。
なお、CPU10は、データ要求レベル管理テーブル21を作成し、これをローカルディスク装置20に格納する際に(SP3)、データ同士の関連情報についても記録する。具体的には、CPU10は、同じアプリケーションが管理するデータ同士(これらのデータはそれぞれ異なるボリュームに格納されているものとする)は関連があると判断して、その情報(以下、これをデータ関連情報と呼ぶ)をデータ要求レベル管理テーブル21と対応付けてローカルディスク装置20に格納する。
このようなデータ間の関連は、アプリケーションと、当該アプリケーションが管理するデータを格納するボリュームVOLとが予め設定により関連付けられている場合には、直ちに検出することができる。例えば図6のようにアプリケーションと、そのアプリケーションが使用するボリュームVOLとが予め関連付けられている場合、「app1」というアプリケーションが使用している「0:3C」というボリューム番号のボリュームVOLに格納されたデータと、「5:44」というボリューム番号のボリュームVOLに格納されたデータとは関連があり、「app2」というアプリケーションが使用している「0:32」というボリューム番号のボリュームVOLに格納されたデータと、「1:12」というボリューム番号のボリュームVOLに格納されたデータとは関連があることが分かる。
そこでCPU10は、データ要求レベル管理テーブル21の作成後、各業務ホスト2対してアプリケーションとボリュームVOLとを関連付ける設定がなされていか否かを問い合わせ、1つのアプリケーションに複数のボリュームVOLを関連付ける設定がなされていた場合には、これらのボリュームVOLにそれぞれ格納されたデータ間に関連があるというデータ関連情報をローカルディスク装置20に格納する。
また、例えば1つのアプリケーションがある処理を行なうために、幾つかのボリュームVOL(データ)に順番にアクセスしてゆくようなアクセスパターンがスケジュールされている場合には、そのスケジュール情報を取得することにより、関連のあるデータを検出することができる。
例えば、図7に示すようなスケジュールが立てられている場合、「app1」というアプリケーションが、「8:00」に「0:3C」というボリューム番号のボリュームVOLにアクセスした後、「8:30」に「5:44」というボリューム番号のボリュームVOLにアクセスすることがスケジュールされているため、これら2つのボリュームVOLにそれぞれ格納されたデータ間に関連があると判断でき、また「app2」というアプリケーションが、「12:00」に「0:32」というボリューム番号のボリュームVOLにアクセスした後、「12:05」に「1:22」というボリューム番号のボリュームVOLにアクセスすることがスケジュールされているため、これら2つのボリュームVOLにそれぞれ格納されたデータ間に関連があると判断できる。
そこでCPU10は、データ要求レベル管理テーブル21の作成後、各業務ホスト2対して、いずれかのアプリケーションについて、対応するボリュームVOLに対するアクセスパターンがスケジュールされていか否かを問い合わせ、かかるスケジュールが設定されていた場合には、対応するボリュームVOLにそれぞれ格納されたデータ間に関連があるというデータ関連情報をローカルディスク装置20に格納する。
さらに、データ間の関連は、ボリュームVOLに対するアクセスパターンから統計的に検出することもできる。例えば各ボリュームVOLに対するアクセスパターンとして、図8に示すような測定結果が得られた場合、この測定結果から「0:3C」というボリューム番号のボリュームVOLにアクセスした後、その1秒以内に「5:44」というボリューム番号のボリュームVOLにアクセスするパターンが短時間内で5回もあったことが分かる。これは、あるアプリケーションが何らかの処理を実行するために、「0:3C」というボリューム番号のボリュームVOL及び「5:44」というボリューム番号のボリュームVOLに順番にアクセスしているものと考えられ、従って、これら2つのボリュームVOLにそれぞれ格納されたデータ間に関連があると判断することができる。
そこでCPU10は、データ要求レベル管理テーブル21の作成後、ボリュームアクセスの統計情報(以下、これをボリュームアクセス統計情報と呼ぶ)の転送要求を階層ストレージ装置4に発行する。
この場合、階層ストレージ装置4のコントローラ31は、いつどのボリュームVOLにアクセスがあり、そのとき読み書きされたデータ量(データ書込み量(I/O write 量)やデータ読出し量(I/O read 量))がどれぐらいであったかといった統計情報を例えば1時間分だけ保持している。そして、コントローラ31は、上述のボリュームアクセスログ情報の転送要求が与えられると、かかる保持した1時間分の統計情報をボリュームアクセス統計情報として管理ホスト3に送信する。
かくして管理ホスト3のCPU10は、このログ情報と、テーブル作成プログラム12(図1)とに基づき、図9に示す関連データ検出処理手順RT2に従って、関連のあるデータを検出する関連データ検出処理を実行する。
すなわち、CPU10は、図5について上述したテーブル作成処理手順RT1のステップSP3に進むと、データ要求レベル管理テーブル21を作成する一方、これと並行してこの関連データ検出処理手順RT2を開始し、階層ストレージ装置4に対してボリュームアクセス統計情報の転送要求を発行することにより、当該ボリュームアクセス統計情報を取得する(SP10)。
続いてCPU10は、ボリュームアクセス統計情報に基づき、データの入出力が行なわれたと認められるボリューム(以下、これを対象ボリュームと呼ぶ)VOLを1つ任意に選択し(SP11)、その対象ボリュームVOLにアクセスした後1秒以内にアクセスするというアクセスパターンが5回以上連続して発生したボリュームVOLを検索する(SP12)。
CPU10は、この後このようなボリュームVOLが存在するか否かを判断し(SP13)、この判断において否定結果を得ると(SP13:NO)、ステップSP15に進み、これに対して肯定結果を得ると(SP13:YES)、そのボリュームVOLに格納されたデータは対象ボリュームVOLに格納されたデータと関連があると判断して、このデータ関連情報をローカルディスク装置20に記録する(SP14)。
この後CPU10は、ボリュームアクセス統計情報に基づき、データの入出力が行なわれたと認められるすべてのボリュームVOLについて同様の処理(SP11〜SP14)を行なったか否かを判断し(SP15)、否定結果を得ると(SP15:NO)、データの入出力が行なわれたと認められる残りのボリュームVOLについても同様の処理を実行する。そしてCPU10は、やがてかかるステップSP15の判断において肯定結果を得ると(SP15:YES)、この関連データ検出処理を終了する。
一方、管理ホスト3のCPU10は、この後要求レベル監視プログラム14(図1)に基づき、図10に示す要求レベル監視処理手順RT3に従って、データごとのデータ要求レベルの変動を監視する。
すなわちCPU10は、図5について上述したテーブル作成処理手順RT1を終了すると、この後この要求レベル監視処理手順RT3を一定時間(例えば1時間)ごとを実行し、まず、稼働情報取得プログラム13(図1)に基づいて、階層ストレージ装置4にボリューム稼働情報転送要求を発行することにより、ボリュームVOLごとの稼働情報を取得する(SP20)。
続いてCPU10は、このボリュームVOLごとの稼働情報の中から、データが格納されているボリューム(アプリケーションが使用しているボリューム)VOLごとの稼働情報を抽出し(SP21)、この後この抽出した稼働情報に基づいて、データの保存先として使用されているボリュームVOLごとのデータ要求レベルをそれぞれ計算する(SP22)。なお、ここでは1つのボリュームVOLに1種類のデータが格納されることを想定しているため、このボリュームVOLごとのデータ要求レベルが、ボリュームVOLに格納されたデータごとのデータ要求レベルとなる。
次いでCPU10は、この計算により得られたデータごとのデータ要求レベルと、データ要求レベル管理テーブル21に格納された対応するデータ要求レベルとをそれぞれ比較し、いずれかのデータ要求レベルに変動が生じているか否かを判断する(SP23)。
CPU10は、この判断において否定結果を得ると(SP23:NO)、この要求レベル監視処理を終了し、これに対して肯定結果を得ると(SP23:YES)、データ要求レベル管理テーブル21における対応するエントリの「要求レベル」フィールド43(図2)に格納されている値をステップSP22において計算した現在のデータ要求レベルの値に変更する(SP24)。
またCPU10は、この後マイグレーション管理プログラム15(図1)を起動して、データ要求レベルに変動が生じたデータを格納しているボリュームVOLのボリューム番号を格納した、後述のマイグレーション管理処理を実行すべき旨の通知(以下、これをマイグレーション管理処理実行通知と呼ぶ)を当該マイグレーション管理プログラム15に送信する(SP25)。そしてCPU10は、この後この要求レベル監視処理を終了する。
他方、CPU10は、上述のようにデータ要求レベル管理テーブル21を更新した場合、マイグレーション管理プログラム15(図1)に基づき、図11に示すマイグレーション管理処理手順RT4に従って、データ要求レベルに変動があったデータと、これと関連のあるデータとをそれぞれ現在のボリュームVOLから他のボリュームVOLに移動させる。この際CPU10は、データ要求レベルの高いデータほどボリューム許容レベルが高いボリュームVOLに移動するように制御する。
すなわちCPU10は、要求レベル監視プログラム14からのマイグレーション管理処理実行通知を受信すると、マイグレーション管理処理を開始し、まず、マイグレーション管理処理実行通知に含まれるデータ要求レベルの変動が生じたデータを格納しているボリュームVOLのボリューム番号と、ローカルディスク装置20に格納されているデータ関連情報とに基づいて、移動対象のデータ(データ要求レベルに変動が生じたデータ及びこれに関連するデータ)ごとの現在のデータ要求レベルをデータ要求レベル管理テーブル21から読み出す(SP30)。
続いてCPU10は、階層ストレージ装置4内又は外部ストレージ装置6内に設定されたボリュームVOLであって、データが格納されていない各ボリューム(以下、これを空きボリュームと呼ぶ)VOLのボリューム許容レベルをボリューム許容レベル管理テーブル22からそれぞれ読み出す(SP31)。
次いでCPU10は、移動対象のデータの中からデータ要求レベルが最上位のデータを、当該データが現在格納されているボリュームVOLの容量と同じ又はそれ以上の容量を有する空きボリュームVOLのうち、ボリューム許容レベルが最上位の空きボリュームVOLに移動させる。またCPU10は、これに付随して、各データの格納位置を管理するための図示しないデータ管理テーブルを更新するなどの各種処理を実行する(SP32)。
なお、以下においては、このようなデータ移動処理と、当該データ移動に付随する各種処理とを含めたデータ移動のための一連の処理をマイグレーション処理と呼ぶものとする。また移動対象の各データのうち、データ要求レベルが最上位のデータの当該データ要求レベルを最上位データ要求レベルと呼び、ボリューム許容レベルが最上位の空きボリュームVOLの当該ボリューム許容レベルを最上位ボリューム許容レベルと呼ぶものとする。
続いてCPU10は、かかるデータ移動に応じてデータ要求レベル管理テーブル21を更新する(SP33)。具体的には、CPU10は、データ要求レベル管理テーブル21における対応するエントリの「使用ボリューム」フィールド44に格納されているボリューム番号を、データ移動後の新たなボリュームVOLのボリューム番号に書き換える。
その後CPU10は、移動対象のデータであって、移動が行われていない未処理のデータが存在するか否かを判断する(SP34)。そしてCPU10は、この判断において否定結果を得ると(SP34:NO)、このマイグレーション管理処理を終了する。
これに対してCPU10は、かかる判断において肯定結果を得ると(SP34:YES)、移動対象のデータであって、未処理のデータの中からデータ要求レベルが最も高いデータを選択する(SP35)。
この後CPU10は、選択したデータの移動先となるボリュームVOLが存在するか否かを、ボリューム許容レベル管理テーブル22に基づいて判断する(SP36)。
具体的にCPU10は、まず、最上位データ要求レベルを「100」とした場合における、そのデータのデータ要求レベルの相対値(以下、これを相対データ要求レベルと呼ぶ)を算出する。例えば最上位データ要求レベルが「120」であり、移動対象のデータのデータ要求レベルが「60」であった場合、この移動対象のデータの相対データ要求レベルLr´は、次式
Figure 0004856932
のように「50」と算出される。
またCPU10は、これと並行して最上位ボリューム許容レベルを「100」とした場合における、ボリューム許容レベル管理テーブル22に登録されている各空きボリュームVOLのボリューム許容レベルの相対値(以下、これを相対ボリューム許容レベルと呼ぶ)をそれぞれ算出する。例えば最上位ボリューム許容レベルが「80」であり、その空きボリュームVOLのボリューム許容レベルが「50」であった場合、この空きボリュームVOLの相対ボリューム許容レベルLa´は次式
Figure 0004856932
のように「62.5」と算出される。
そしてCPU10は、このようにして算出した移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが高く、かつそのデータが現在格納されているボリュームVOLの容量と同じ又はそれ以上の容量を有する空きボリュームVOLが存在するか否かを判断する(SP36)。
CPU10は、この判断において肯定結果を得ると(SP36:YES)、かかる移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが高く、かつそのデータが現在格納されているボリュームVOLの容量と同じ又はそれ以上の容量を有する空きボリュームVOLの中から1つの空きボリュームVOLを移動先のボリュームVOLとして選択する(SP37)。
この際CPU10は、かかる条件を満たす空きボリュームVOLが複数存在する場合には、最も相対ボリューム許容レベルが高い空きボリュームVOLを移動先のボリュームVOLとして選定する。またこのような最も相対ボリューム許容レベルが高い空きボリュームVOLが複数存在する場合には、デバイス番号が最も小さいディスクデバイスにより提供されるボリュームVOLを移動先のボリュームVOLとして選択する。
そしてCPU10は、この後移動対象のデータをこのステップSP37において選択した空きボリュームVOLに移動させるマイグレーション処理を実行し(SP38)、この後ステップSP33に戻って、データ要求レベル管理テーブル21及びボリューム許容レベル管理テーブル22を更新する(SP33)。さらにCPU10は、この後他の移動対象のデータについても同様の処理を繰り返す。
これに対してCPU10は、ステップSP36の判断において否定結果を得ると(SP36:NO)、移動対象のデータの相対データ要求レベルよりも相対ボリューム許容レベルが低く、かつ移動対象のボリュームVOLの容量と同じ又はそれ以上の容量を有する空きボリュームVOLが存在するか否かを判断する(SP39)。
そしてCPU10は、この判断において肯定結果を得ると(SP39:YES)、かかる条件を満たす空きボリュームVOLの中から1つの空きボリュームVOLを移動先のボリュームVOLとして選択する(SP40)。この際CPU10は、かかる条件を満たす空きボリュームVOLが複数存在する場合、その中で相対ボリューム許容レベルが最も高い空きボリュームVOLを移動先のボリュームVOLとして選定する。またこのような最も相対ボリューム許容レベルが高い空きボリュームVOLが複数存在する場合には、デバイス番号が最も小さいディスクデバイスにより提供されるボリュームVOLを移動先のボリュームVOLとして選択する。
この後移動対象のデータをこの選択した空きボリュームVOLに移動させるマイグレーション処理を実行し(SP41)、この後ステップSP33に戻ってデータ要求レベル管理テーブル21を更新する(SP33)。さらにCPU10は、この後他の移動対象のデータについても同様の処理を繰り返す。
一方、CPU10は、かかるステップSP39の判断において否定結果を得ると(SP39:NO)、そのデータについてマイグレーション処理を実行しないことを決定し(SP42)、この後これに応じたエラー報告をディスプレイに表示し、及び又はエラー報告を管理者に送信した後(SP43)、このマイグレーション管理処理を終了する。
(3)本実施の形態の効果
以上の構成において、管理ホストは、各アプリケーションのデータのデータ要求レベル及び各ボリュームVOLのボリューム許容レベルを管理すると共に、各データのデータ要求レベルを監視し、いずれかのデータのデータ要求レベルに変動があった場合に、当該データ要求レベルに変動があったデータ及びこれに関連するデータを、それぞれデータのデータ要求レベル(相対データ要求レベル)の高いものから順番にボリューム許容レベル(相対ボリューム許容レベル)が高い空きボリュームVOLに移動させる。
従って、この記憶システム1では、データマイグレーション管理処理の後も、関連のあるデータ間において、データ要求レベルが高いデータほどボリューム許容レベルの高いボリュームVOLに格納されるという相関関係を維持することができ、かくしてアプリケーションが管理するデータ間の相関関係を考慮した最適なデータ移動を行うことができる。
(4)他の実施の形態
なお上述の実施の形態においては、本発明を図1のように構成された記憶システム1に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成を有する記憶システムに広く適用することができる。
また上述の実施の形態においては、図11について上述したマイグレーション管理処理において、移動対象のデータ(データ要求レベルに変動があったデータ及びこれに関連するデータ)の移動先の空きボリュームVOLをすべて管理ホスト3が決定して、これら移動対象のデータを適当な空きボリュームVOLに移動させるようにした場合について述べたが、本発明はこれに限らず、移動対象のデータについて計算したデータ要求レベル(又は相対データ要求レベル)と、各空きボリュームVOLについてそれぞれ計算したボリューム許容レベル(又は相対ボリューム許容レベル)とに基づいて、例えば図12に示すように、一部又は全部の移動対象のデータについて、当該データの移動先となり得るボリュームVOLの候補を管理ホスト3のディスプレイ等に可視表示し、この可視表示された候補の中から移動先の空きボリュームVOLをユーザ(管理者)が自由に選択できるようにしても良い。なお、この図12の例は、最上位データ要求レベルのデータの移動先の空きボリュームVOLが決定した後に、関連するデータの移動先となり得る空きボリュームVOLの候補を表示した表示例である。
さらに上述の実施の形態においては、図11について上述したマイグレーション管理処理の処理対象を、データ要求レベルに変動のあったデータ及びこれに関連するデータに限定するようにした場合について述べたが、本発明はこれに限らず、各ボリュームVOLにそれぞれ格納されたすべてのデータを対象とするようにしても良い。この場合においては、関連のあるデータ間において、データ要求レベルの高いデータほどボリューム許容レベルが高い空きボリュームVOLに移動させるようにすれば良い。
さらに上述の実施の形態においては、図11について上述したマイグレーション管理処理を、いずれかのボリュームVOLに格納されたデータのデータ要求レベルに変動があったときに行なうようにした場合について述べたが、本発明はこれに限らず、他のタイミング、例えば階層ストレージ装置4に新たな外部ストレージ装置6が接続されたときに同様のマイグレーション管理処理を実行するようにしても良い。この場合、そのとき各アプリケーションによりそれぞれ管理されているデータがこのマイグレーション管理処理の処理対象となる。
本発明は、種々の構成の記憶システムに広く適用することができる。
本実施の形態による記憶システムの構成を示すブロック図である。 データ要求レベル管理テーブルの説明に供する概念図である。 ボリューム許容レベル管理テーブルの説明に供する概念図である。 残理論最大入出力回数の説明に供する概念図である。 テーブル作成処理手順を示すフローチャートである。 データ間関連情報の説明に供する概念図である。 データ間関連情報の説明に供する概念図である。 データ間関連情報の説明に供する概念図である。 関連データ検出処理手順を示すフローチャートである。 要求レベル監視処理手順を示すフローチャートである。 マイグレーション管理処理手順を示すフローチャートである。 他の実施の形態の説明に供する概念図である。
符号の説明
1……記憶システム、2……業務ホスト、3……管理ホスト、4……階層ストレージ装置、5……ネットワーク、6……外部ストレージ装置、10……CPU、11……メモリ、12……テーブル作成プログラム、13……稼働情報取得プログラム、14……データ要求レベル監視プログラム、15……マイグレーション管理プログラム、20……ローカルディスク装置、21……データ要求レベル管理テーブル、22……ボリューム許容レベル管理テーブル、VOL……ボリューム。

Claims (17)

  1. データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置を有する記憶システムにおいて、
    前記ストレージ装置は、
    前記複数のボリュームに含まれる第1のボリュームにアクセスがあったときにアクセスされる可能性の高い第2のボリュームの情報を含む前記ボリュームごとの稼働情報を収集して前記管理装置に送信するコントローラを備え、
    前記管理装置は、
    前記ボリュームごとの稼働情報に基づいて、移動対象の各前記データをそれぞれ他の前記ボリュームに移動させるように前記ストレージ装置を制御する制御部を備え、
    前記管理装置の前記制御部は、
    前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記第1のボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出すると共に、算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、前記第1のボリュームに格納されている移動対象の前記データを、当該データを格納する前記第1のボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させ、前記第2のボリュームに格納されているデータを、前記第2のボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させるように、前記ストレージ装置を制御する
    ことを特徴とする記憶システム。
  2. 前記移動対象のデータは、
    前記データ要求レベルに変動があった前記データ及び当該データと関連のある前記データである
    ことを特徴とする請求項1に記載の記憶システム。
  3. 前記関連のあるデータは、
    同じアプリケーションにより使用される前記データである
    ことを特徴とする請求項2に記載の記憶システム。
  4. 前記管理装置の前記制御部は、
    前記アプリケーション及び前記ボリュームを関連付ける設定、前記アプリケーションの前記ボリュームへのアクセスパターンの設定、及び又は前記アプリケーションの前記ボリュームに対するアクセスパターンの統計情報に基づいて、関連のある前記データを検出する
    ことを特徴とする請求項3に記載の記憶システム。
  5. 前記管理装置の前記制御部は、
    移動対象の各前記データ間の相対的な前記データ要求レベルでなる相対データ要求レベルをそれぞれ算出すると共に、当該移動対象の前記データがそれぞれ格納された各前記ボリュームの相対的な前記ボリューム許容レベルでなる相対ボリューム許容レベルをそれぞれ算出し、前記相対データ要求レベルが高い前記データほど前記相対ボリューム許容レベルが高い前記ボリュームに移動させるように、前記ストレージ装置を制御する
    ことを特徴とする請求項1に記載の記憶システム。
  6. 前記管理装置の前記制御部は、
    移動先の前記ボリュームとして、まず、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが高い前記ボリュームを選択し、当該ボリュームが存在しないときに、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが低い前記ボリュームを選択する
    ことを特徴とする請求項5に記載の記憶システム。
  7. 前記管理装置の前記制御部は、
    移動対象の前記データを格納する前記ボリュームに要求される前記データ要求レベルと、各前記ボリュームの前記ボリューム許容レベルとに基づいて、一部又は全部の移動対象の前記データについて、当該データの移動先の前記ボリュームの候補を、ユーザが選択できるように可視表示する
    ことを特徴とする請求項1に記載の記憶システム。
  8. データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置を有する記憶システム内のデータ移動方法において、
    前記ストレージ装置内のコントローラが、
    前記複数のボリュームに含まれる第1のボリュームにアクセスがあったときにアクセスされる可能性の高い第2のボリュームの情報を含む前記ボリュームごとの稼働情報を収集する第1のステップと、
    前記管理装置内の制御部が、
    前記ボリュームごとの稼働情報に基づいて、移動対象の前記データを格納する前記ボリュームに要求する性能レベルでなるデータ要求レベルと、前記ストレージ装置内に設定された各前記ボリュームの性能レベルでなるボリューム許容レベルとをそれぞれ算出する第2のステップと、
    前記管理装置内の制御部が、
    算出した前記データ要求レベル及び各前記ボリューム許容レベルに基づいて、前記第1のボリュームに格納されている移動対象の前記データを、当該データを格納する前記第1のボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させ、前記第2のボリュームに格納されているデータを、前記第2のボリュームに要求する前記データ要求レベルに応じた前記ボリューム許容レベルの他の前記ボリュームに移動させる第3のステップと
    を備えることを特徴とするデータ移動方法。
  9. 前記移動対象のデータは、
    前記データ要求レベルに変動があった前記データ及び当該データと関連のある前記データである
    ことを特徴とする請求項8に記載のデータ移動方法。
  10. 前記関連のあるデータは、同じアプリケーションにより使用される前記データである
    ことを特徴とする請求項9に記載のデータ移動方法。
  11. 前記管理装置の前記制御部が、
    前記アプリケーション及び前記ボリュームを関連付ける設定、前記アプリケーションの前記ボリュームへのアクセスパターンの設定、及び又は前記アプリケーションの前記ボリュームに対するアクセスパターンの統計情報に基づいて、関連のある前記データを検出する第4のステップと
    を備えたことを特徴とする請求項10に記載のデータ移動方法。
  12. 前記第3のステップでは、
    移動対象の各前記データ間の相対的な前記データ要求レベルでなる相対データ要求レベルをそれぞれ算出すると共に、当該移動対象の前記データがそれぞれ格納された各前記ボリュームの相対的な前記ボリューム許容レベルでなる相対ボリューム許容レベルをそれぞれ算出し、前記相対データ要求レベルが高い前記データほど相前記対ボリューム許容レベルが高い前記ボリュームに移動させる
    ことを特徴とする請求項8に記載のデータ移動方法。
  13. 前記第3のステップでは、
    移動先の前記ボリュームとして、まず、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが高い前記ボリュームを選択し、当該ボリュームが存在しないときに、移動対象の前記データを格納する前記ボリュームに要求される前記相対データ要求レベルよりも前記相対ボリューム許容レベルが低い前記ボリュームを選択する
    ことを特徴とする請求項12に記載のデータ移動方法。
  14. 前記第3のステップでは、
    移動対象の前記データを格納する前記ボリュームに要求される前記データ要求レベルと、各前記ボリュームの前記ボリューム許容レベルとに基づいて、一部又は全部の移動対象の前記データについて、当該データの移動先の前記ボリュームの候補を、ユーザが選択できるように可視表示する
    ことを特徴とする請求項8に記載のデータ移動方法。
  15. データを記憶する複数のボリュームが設定されたストレージ装置と、前記ストレージ装置を管理する管理装置を有する記憶システム内のデータ移動方法において、
    前記管理装置の制御部が、
    移動元のボリュームに格納されたデータに対してアクセス頻度に関する要求性能を求める第1のステップと
    前記移動元のボリュームがアクセスされた後にアクセスされる可能性の高い他のボリュームを求める第2のステップと、
    前記移動元のボリュームの要求性能を満たす移動先ボリュームを決定し、決定されたボリュームへ前記移動元のボリュームのデータと前記他のボリュームのデータ移動する第3のステップと
    を備えたことを特徴とするデータ移動方法。
  16. 前記第1のステップにおいて、
    前記移動元のボリュームは、
    複数のボリュームから収集した稼働情報に基づいて決定される
    ことを特徴とする請求項15に記載のデータ移動方法。
  17. 前記第3のステップにおいて、
    前記移動先のボリュームの決定は、関連する移動元ボリュームの中から一の移動元ボリュームに対する移動先のボリュームを決定し、他の移動元のボリュームに格納されたデータに対して要求される性能が前記一の移動元ボリュームに格納されたデータに対して要求される性能よりも高い場合、前記一の移動元ボリュームに対して決定された前記移動先のボリュームの性能以上のボリュームを他の移動元ボリュームの移動先とする
    ことを特徴とする請求項15に記載のデータ移動方法。
JP2005334028A 2005-11-18 2005-11-18 記憶システム及びデータ移動方法 Expired - Fee Related JP4856932B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005334028A JP4856932B2 (ja) 2005-11-18 2005-11-18 記憶システム及びデータ移動方法
US11/330,219 US7702865B2 (en) 2005-11-18 2006-01-12 Storage system and data migration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005334028A JP4856932B2 (ja) 2005-11-18 2005-11-18 記憶システム及びデータ移動方法

Publications (2)

Publication Number Publication Date
JP2007140919A JP2007140919A (ja) 2007-06-07
JP4856932B2 true JP4856932B2 (ja) 2012-01-18

Family

ID=38054822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005334028A Expired - Fee Related JP4856932B2 (ja) 2005-11-18 2005-11-18 記憶システム及びデータ移動方法

Country Status (2)

Country Link
US (1) US7702865B2 (ja)
JP (1) JP4856932B2 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8423739B2 (en) * 2008-02-06 2013-04-16 International Business Machines Corporation Apparatus, system, and method for relocating logical array hot spots
US8914340B2 (en) * 2008-02-06 2014-12-16 International Business Machines Corporation Apparatus, system, and method for relocating storage pool hot spots
US20090300283A1 (en) * 2008-05-29 2009-12-03 Yutaka Kudo Method and apparatus for dissolving hot spots in storage systems
US8055835B2 (en) * 2008-06-23 2011-11-08 International Business Machines Corporation Apparatus, system, and method for migrating wear spots
US8442059B1 (en) 2008-09-30 2013-05-14 Gridiron Systems, Inc. Storage proxy with virtual ports configuration
US8160070B2 (en) * 2008-09-30 2012-04-17 Gridiron Systems, Inc. Fibre channel proxy
US8417895B1 (en) 2008-09-30 2013-04-09 Violin Memory Inc. System for maintaining coherency during offline changes to storage media
US8838850B2 (en) * 2008-11-17 2014-09-16 Violin Memory, Inc. Cluster control protocol
US8443150B1 (en) 2008-11-04 2013-05-14 Violin Memory Inc. Efficient reloading of data into cache resource
US8775741B1 (en) 2009-01-13 2014-07-08 Violin Memory Inc. Using temporal access patterns for determining prefetch suitability
US8788758B1 (en) 2008-11-04 2014-07-22 Violin Memory Inc Least profitability used caching scheme
US8214608B2 (en) * 2008-11-04 2012-07-03 Gridiron Systems, Inc. Behavioral monitoring of storage access patterns
US8214599B2 (en) * 2008-11-04 2012-07-03 Gridiron Systems, Inc. Storage device prefetch system using directed graph clusters
US8285961B2 (en) * 2008-11-13 2012-10-09 Grid Iron Systems, Inc. Dynamic performance virtualization for disk access
JP4705982B2 (ja) * 2008-12-11 2011-06-22 株式会社日立製作所 情報処理システム、情報処理方法、及び管理装置
US8650362B2 (en) 2009-04-17 2014-02-11 Violin Memory Inc. System for increasing utilization of storage media
US8667366B1 (en) 2009-04-17 2014-03-04 Violin Memory, Inc. Efficient use of physical address space for data overflow and validation
US8713252B1 (en) 2009-05-06 2014-04-29 Violin Memory, Inc. Transactional consistency scheme
US8402198B1 (en) 2009-06-03 2013-03-19 Violin Memory, Inc. Mapping engine for a storage device
US9069676B2 (en) 2009-06-03 2015-06-30 Violin Memory, Inc. Mapping engine for a storage device
US8880835B2 (en) * 2009-07-07 2014-11-04 International Business Machines Corporation Adjusting location of tiered storage residence based on usage patterns
US8402246B1 (en) 2009-08-28 2013-03-19 Violin Memory, Inc. Alignment adjustment in a tiered storage system
US8458719B2 (en) * 2009-12-17 2013-06-04 International Business Machines Corporation Storage management in a data processing system
US8832384B1 (en) 2010-07-29 2014-09-09 Violin Memory, Inc. Reassembling abstracted memory accesses for prefetching
US8959288B1 (en) 2010-07-29 2015-02-17 Violin Memory, Inc. Identifying invalid cache data
WO2012056494A2 (en) * 2010-10-26 2012-05-03 Hitachi, Ltd. Storage system and its operation method
US9348515B2 (en) * 2011-01-17 2016-05-24 Hitachi, Ltd. Computer system, management computer and storage management method for managing data configuration based on statistical information
US8478911B2 (en) * 2011-01-31 2013-07-02 Lsi Corporation Methods and systems for migrating data between storage tiers
US8346990B2 (en) * 2011-01-31 2013-01-01 Lsi Corporation Methods and systems for tracking data activity levels
US8972689B1 (en) 2011-02-02 2015-03-03 Violin Memory, Inc. Apparatus, method and system for using real-time performance feedback for modeling and improving access to solid state media
US8635416B1 (en) 2011-03-02 2014-01-21 Violin Memory Inc. Apparatus, method and system for using shadow drives for alternative drive commands
US9703500B2 (en) 2012-04-25 2017-07-11 International Business Machines Corporation Reducing power consumption by migration of data within a tiered storage system
JP5926373B2 (ja) 2012-05-07 2016-05-25 株式会社日立製作所 計算機システム、ストレージ管理計算機及びストレージ管理方法
JP5893745B2 (ja) * 2012-09-24 2016-03-23 株式会社日立製作所 ストレージ装置が有する階層型プール内のデータの配置を制御する計算機及び方法
US20150347311A1 (en) * 2013-01-09 2015-12-03 Hitachi, Ltd. Storage hierarchical management system
WO2014203397A1 (ja) * 2013-06-21 2014-12-24 株式会社日立製作所 計算機システム、メタデータ管理方法及びプログラム
US20150039825A1 (en) * 2013-08-02 2015-02-05 Seagate Technology Llc Federated Tiering Management
US9916097B1 (en) * 2015-06-26 2018-03-13 EMC IP Holding Company LLC Auotmated storage tiering based on storage pool state and service level objectives
US10606501B2 (en) * 2015-12-04 2020-03-31 International Business Machines Corporation Management of paging in compressed storage
JP6165909B1 (ja) * 2016-03-16 2017-07-19 株式会社東芝 階層化ストレージシステム、ストレージコントローラ、及び階層化制御方法
US9927980B1 (en) * 2016-03-31 2018-03-27 EMC IP Holding Company LLC Accessing point in time versions of a logical device in connection with I/O operations
CN108664496B (zh) * 2017-03-29 2022-03-25 腾讯科技(深圳)有限公司 数据迁移方法及装置
US10474545B1 (en) * 2017-10-31 2019-11-12 EMC IP Holding Company LLC Storage system with distributed input-output sequencing
US10795598B1 (en) 2017-12-07 2020-10-06 Pure Storage, Inc. Volume migration for storage systems synchronously replicating a dataset
CN116974454A (zh) * 2022-04-21 2023-10-31 戴尔产品有限公司 用于数据处理的方法、电子设备和计算机程序产品

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58203558A (ja) * 1982-05-21 1983-11-28 Hitachi Ltd 計算機・記憶装置へのフアイル割り当て方式
JP3967993B2 (ja) * 2002-10-21 2007-08-29 株式会社日立製作所 ストレージ使用容量表示方法
JP3859674B2 (ja) * 2002-11-25 2006-12-20 富士通株式会社 省電力制御システムおよび省電力制御方法
JP2004280690A (ja) * 2003-03-18 2004-10-07 Hitachi Ltd 情報処理システム及びシステム設定方法
JP4343578B2 (ja) * 2003-05-08 2009-10-14 株式会社日立製作所 ストレージ運用管理システム
JP4391265B2 (ja) * 2004-02-26 2009-12-24 株式会社日立製作所 ストレージサブシステムおよび性能チューニング方法
JP4634136B2 (ja) * 2004-12-24 2011-02-16 株式会社日立製作所 記憶制御システム

Also Published As

Publication number Publication date
JP2007140919A (ja) 2007-06-07
US20070118710A1 (en) 2007-05-24
US7702865B2 (en) 2010-04-20

Similar Documents

Publication Publication Date Title
JP4856932B2 (ja) 記憶システム及びデータ移動方法
US10452299B2 (en) Storage system having a thin provisioning function
JP4749255B2 (ja) 複数種類の記憶デバイスを備えたストレージシステムの制御装置
JP5070315B2 (ja) ストレージ装置及びストレージ装置におけるデータ階層管理方法
JP5079841B2 (ja) ThinProvisioningに従う仮想的な論理ボリュームに対するデータのライトを制御する方法及びストレージ装置
US9747036B2 (en) Tiered storage device providing for migration of prioritized application specific data responsive to frequently referenced data
US8819362B1 (en) Managing replication and reservations
JP4889985B2 (ja) ストレージ階層を考慮したボリュームグループを管理する方法
US8166270B2 (en) Storage control apparatus, data management system and data management method for determining storage heirarchy based on a user policy
JP4838878B2 (ja) データ管理プログラム、データ管理装置、およびデータ管理方法
US6895483B2 (en) Method and apparatus for data relocation between storage subsystems
US8706961B2 (en) Storage apparatus and data management method
US8316180B2 (en) Method and system for rebuilding data in a distributed RAID system
US7506101B2 (en) Data migration method and system
JP4837445B2 (ja) 記憶システム並びに管理装置及び方法
JP4733461B2 (ja) 計算機システム、管理計算機及び論理記憶領域の管理方法
JP5046725B2 (ja) ボリューム割り当て管理装置
US9612758B1 (en) Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data
US20110320754A1 (en) Management system for storage system and method for managing storage system
JP2009140356A (ja) 管理装置及び管理方法
WO2013046331A1 (ja) 計算機システム、及び情報管理方法
JP2005242690A (ja) ストレージサブシステムおよび性能チューニング方法
JP2012505439A (ja) ストレージ装置及びその制御方法
JP5000234B2 (ja) 制御装置
JP2008146212A (ja) 共有ディレクトリの設定情報を変更する方法、及びファイルサーバ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080707

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110613

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111031

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees