JP6190898B2 - サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法 - Google Patents

サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法 Download PDF

Info

Publication number
JP6190898B2
JP6190898B2 JP2015561328A JP2015561328A JP6190898B2 JP 6190898 B2 JP6190898 B2 JP 6190898B2 JP 2015561328 A JP2015561328 A JP 2015561328A JP 2015561328 A JP2015561328 A JP 2015561328A JP 6190898 B2 JP6190898 B2 JP 6190898B2
Authority
JP
Japan
Prior art keywords
virtual
storage
storage area
virtual machine
server
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.)
Active
Application number
JP2015561328A
Other languages
English (en)
Other versions
JP2016511474A (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
Publication of JP2016511474A publication Critical patent/JP2016511474A/ja
Application granted granted Critical
Publication of JP6190898B2 publication Critical patent/JP6190898B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • 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/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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]
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本実施例は、計算機システム及びストレージシステムに関し、特に、重複排除、QoS(Quality of Service)、記憶媒体階層化といった機能に関する。
関連技術において、プールグループを使用したページベースでのデータ格納階層管理を行う方法および装置が存在する。そのような関連技術のシステムは、階層ストレージシステムを含むことが可能である。階層ストレージシステム内において、関連技術は、ブロックレベルのデータの重複排除のために重複排除技術も利用することができる。システムは、ストレージシステムへのIOの数をストレージ性能に基づいて制御する、ストレージI/O(Input/Output)制御機能を含むことができる。ストレージシステムは、ストレージ階層化機能を、ストレージシステム内で自動化することができる。
異なるタイプの記憶媒体を、ストレージシステムに実装することが可能である。例えば、ストレージシステムは、SSD(Solid State Drive)、高性能HDD(Hard Disk Drive)、及び大容量低性能HDDを実装し得る。例えば、高性能HDDは、SAS(Serial Attached SCSI)HDDを含み、大容量低性能HDDはSATA(Serial ATA)HDDを含む。
ストレージシステムのストレージ階層化機能は、ワークロードに基づいて自動的にデータを最適な記憶媒体に移動し、コストパフォーマンスを改善し得る。高頻度でアクセスされる「ホット」データは、SSDのような高性能な記憶媒体に格納される。低頻度アクセスの「コールド」データは、SATAに格納される。
ストレージシステムは、リモートコピー、圧縮、重複排除等の機能を有することが可能である。重複排除機能は、同一データの複数回の発生を検出し、同一のデータをポインタに置き換え、格納されるデータ量を削減する。
ストレージシステムは、サーバで実行されるQoS(Quality of Service)機能である、ストレージI/O制御機能を含むことができる。当該機能は、I/O(入力及び出力)コマンドの応答時間を監視する。応答時間が増加した場合(つまり性能が低下した場合)、当該機能はHDD性能のボトルネックが発生したと仮定して、I/Oの数を減少させることで応答時間の低下を避ける。
ストレージシステムにおけるストレージ階層化機能は、他の機能と共にはうまく動作しない場合がある。例えば、双方の機能が同一データに適用された場合に、それら機能の効果が得られない場合がある。
本開示の態様は、サーバに接続されるシステムを含んでよく、当該システムは、ストレージシステムと、管理サーバとを含んでもよい。前記ストレージシステムは、第1記憶デバイスと、前記第1記憶デバイスより高性能の第2記憶デバイスと、を含む複数の記憶デバイスと、複数の仮想記憶領域を有する仮想ボリュームを管理する、コントローラと、を含んでよい。前記第1記憶デバイスにおける第1記憶領域又は前記第2記憶デバイスにおける第2記憶領域が、前記複数の仮想記憶領域それぞれに対するアクセス頻度情報に従って、前記複数の仮想記憶領域に割り当てられる。前記管理サーバは、プロセッサを含んでよく、前記プロセッサは、前記サーバ上で実行されるアクセス制限についての通知を受信し、前記サーバが前記仮想ボリュームを使用する場合に、前記サーバ上で実行される前記アクセス制限のキャンセルを指示する。
本開示の態様は、サーバに接続されたシステムによる方法をさらに含んでよい。前記方法は、第1記憶デバイスと前記第1記憶デバイスより高性能の第2記憶デバイスとを含む複数の記憶デバイスを含むストレージシステムが、複数の仮想記憶領域を有し前記第1記憶デバイスにおける第1記憶領域又は前記第2記憶デバイスにおける第2記憶領域が前記複数の仮想記憶領域それぞれに対するアクセス頻度情報に従って前記複数の仮想記憶領域に割り当てられる仮想ボリュームを、管理し、管理サーバにおいて、前記サーバ上で実行されるアクセス制限についての通知を受信し、前記サーバが前記仮想ボリュームを使用する場合に、前記サーバ上で実行される前記アクセス制限のキャンセルを指示してよい。
本開示の態様は、サーバに接続されたシステムのための計算機プログラムさらに含んでよい。前記計算機プログラムは、第1記憶デバイスと前記第1記憶デバイスより高性能の第2記憶デバイスとを含む複数の記憶デバイスを含むストレージシステムが、複数の仮想記憶領域を有し前記第1記憶デバイスにおける第1記憶領域又は前記第2記憶デバイスにおける第2記憶領域が前記複数の仮想記憶領域それぞれに対するアクセス頻度情報に従って前記複数の仮想記憶領域に割り当てられる仮想ボリュームを、管理するためのコードと、管理サーバにおいて、前記サーバ上で実行されるアクセス制限についての通知を受信し、前記サーバが前記仮想ボリュームを使用する場合に、前記サーバ上で実行される前記アクセス制限のキャンセルを指示するためのコードと、を含んでよい。コードは、下記のように、計算機読み取り可能な記憶媒体又は計算機読み取り可能な信号媒体に格納された実行可能な命令の形式であってもよい。
サーバから見た実施例1に係る計算機システムの図を示す。 ストレージシステムから見た実施例1に係る計算機システムの図である。 ストレージシステムにおいて実行されるストレージ階層化機能及びサーバにおいて実行されるストレージI/O制御機能を示す図面例である。 ストレージ階層化及びストレージI/O制御によって引き起こされる問題の一例を示している。 実施例1を示す図を示す。 実施例1に係るサーバプログラム及びサーバ制御情報を示す図である。 実施例1に係る、サーバ制御情報におけるI/O制御テーブルの一例を示す。 実施例1に係る、ストレージプログラム及びストレージ制御情報を示す図である。 実施例1に係る、ストレージ制御情報におけるボリュームテーブルの一例である。 実施例1に係る、ストレージ制御情報におけるページテーブルの一例である。 実施例1に係る、制御確認プログラム及びキャンセルプログラムのフロー図例を示す。 実施例1に係る他の方法を示す。 実施例1に係る、ページの現在のIOPS並びに通知された設定値及び制御されたIOPSに基づいて、適切なページIOPSを推定する例を示す。 ストレージ階層化と重複排除とによって引き起こされる問題の例を示す図である。 実施例2に係る、ピン止めされたデータの重複排除の実行を避ける重複排除プログラムの例である。 実施例2に係る、重複排除ドメインテーブルの例を示す。 実施例2に係るデステージ重複排除プログラムの例を示し、デステージ重複排除プログラムは、重複排除ドメインテーブルを使用し、データが重複排除可能であるか否か確認する。 実施例2に係る、サーバライトプログラム及びストレージライトプログラムの例を示す。
以下の詳細な説明において、図面及び本願の実施例の詳細を説明する。図面において重複する要素の符号及び説明は説明の明確化のために省略される。以下の説明において使用される用語は一例であって、何の限定も意図するものではない。例えば、「自動的」との用語の使用は、本願の実際の実装における当業者の所望の実装に依存して、完全自動の実装、又は、実装のいくつかの点に対して実行されるユーザ又は管理者の制御を含む半自動の実装を含むことができる。
ストレージ階層化とストレージI/O制御が同一データに適用される場合、問題が発生し得る。ストレージ階層化は、コールドデータをSATAに移動する。SATAに格納されているデータに対するI/Oの数が増加すると、SATAは、ボトルネックになり得る。そのため、ストレージI/O制御は、サーバによって発行されるI/Oの数を減少させる。しかし、ストレージシステムは、サーバがストレージに対するI/Oの数を制御していることを認識しない場合がある。そのため、ストレージシステムは、サーバが発行しようとするI/Oの数が実際には多いということを認識できず、データに対してわずかなI/Oしか存在しないと判定し、データをSAS又はSSDに移動することなく、むしろ、SATAにデータを残したままにしてしまう。この問題については、図4においてさらに詳細に説明する。
ストレージ階層化と重複排除が同一データに適用される場合、他の問題が発生し得る。当該構成において、重複排除はSSDとSATAとに格納されているデータの重複排除する場合がある。重複排除処理の時に、SATAのデータが維持され、SSDのデータが削除される場合、これまでより高い性能のSSDにアクセスしていたワークロードのアクセス先は、突然、より低い性能のSATAに変更される。そのため、サーバは、予期しない性能低下を検出し得る。
さらに、ストレージ階層化は、特定の記憶媒体におけるデータをピン止めしてデータを移動しないようにする、ピン止めオプションを実装している場合がある。例えば、他のアクセスが阻害されないように、SATAにおいてデータがピン止めされ得る。他のユースケースとして、I/Oの数が多いが、I/Oの優先度が低い場合がある。例えば、ログの書き込みである。そのような場合、ワークロードはシーケンシャルアクセスでありSATAの性能は十分であり、ピン止め状態を維持することができる。
データがSSDに格納されているデータと重複排除され、SSDのデータが維持される場合、SSDへのアクセスはSATAに格納されていたデータに対するアクセスによって阻害され得る。この問題については、図13においてさらに詳細に説明する。
いくつかの実施例が図面を参照して説明される。以下に説明するいずれの実施例も請求範囲に記載された本願を限定するものではなく、実施例において説明される全ての要素及び要素の組み合わせが、本願発明の課題を解決ための手段として必ずしも必須であるというわけではない。
以下の説明において、処理は、いくつかの場合において、動作する「プログラム」を主語として説明される。プログラムがプロセッサによって実行される場合、所定の処理が実行される。したがって、処理の主語はプロセッサである。動作するプログラムが主語として開示されている処理は、プログラムを実行するプロセッサ又はプロセッサを含む装置(例えば、制御デバイス、コントローラ又はストレージシステム)によって実行される処理でもある。さらに、プロセッサがプログラムを実行するときに実行される処理は、プロセッサに代えて又は加えて、ハードウェア回路によって実行することが可能である。
実施例1において、ストレージ階層化及びストレージI/O制御から起こり得る問題を解決する方法が、以下に説明される。
図1は、サーバから見た実施例1に係る計算機システムの図を示す。計算機システムは、サーバ100及びストレージシステム200を含むことができる。サーバは、OS(Operating System)101、プロセッサ102、DRAM(Dynamic Random Access Memory)103、サーバ制御情報104、アプリケーション105、サーバプログラム106、及びストレージI/F(InterFace)108を含むことができる。サーバ100は、OS及びデータベースのようなアプリケーションを実行することによってサービスを提供する。ストレージシステム200は、ストレージI/F202を有する。データベースシステムによって処理されるデータは、ストレージシステム200に格納される。サーバ100はストレージシステム200にネットワーク110を介して接続される。OS101、サーバプログラム106及びアプリケーション105は、メモリに格納され、DRAM103にロードされることができる。DRAM103及びプロセッサ102は、協働してサーバコントローラとして機能することができ、サーバ100の機能の制御を容易化する。メモリは、計算機読み取り可能な記憶媒体の形態であってもよく、下記のような計算機読み取り可能な信号媒体に代えられてもよい。
実施例における計算機プログラムは、計算機読み取り可能な記憶媒体又は計算機読み取り可能な信号媒体のような、計算機読み取り可能な媒体に格納することができる。計算機読み取り可能な記憶媒体は、光ディスク、磁気ディスク、読み取り専用メモリ、ランダムアクセスメモリ、半導体記憶デバイス若しくはドライブ、又は電子情報を格納するのに適した他のタイプの非一時的媒体のような、有体の媒体を含むことができ、また、これらに限定されない。計算機読み取り可能な信号媒体は、搬送波のような媒体を含むことができる。
図2は、ストレージシステムから見た実施例1に係る計算機システムの図を示す。ストレージシステム200は、キャッシュユニット201、ストレージI/F202、プロセッサ203、ディスクI/F204、ボリューム205、HDD206、ストレージ制御情報207、及びストレージプログラム208を有する。ストレージI/F202は、サーバ100にネットワーク110を介して接続され、サーバ100との通信を媒介する。プロセッサ203は、ストレージプログラム208に格納済みの多くの種類のプログラムを実行することによって、多くの種類の処理を実行する。さらに、プロセッサ203は、ストレージ制御情報207に格納済みの多くの種類の情報を使用することによって、多くの種類の処理を実行する。ディスクI/F204は、物理記憶デバイスの一例である少なくとも一つのHDD206と、バスを介して接続されている。一例において、データを管理するように構成されたボリューム205は、HDD206の少なくとも一つの記憶領域によって構成することが可能である。物理記憶デバイスは、HDD206に限定されず、例えば、SSD(Solid State Drive)やDVD(Digital Versatile Disk)であってもよい。さらに、少なくとも一つのHDD206は、パリティグループの単位でまとめられ、RAID(Redundant Arrays of Independent Disks)のような高信頼性技術を使用することも可能である。ストレージ制御情報207は、多くの種類のプログラムに使用される多くの種類の情報を含む。ストレージプログラム208は、多くの種類のプログラムを含む。例えば、リード処理プログラムやライト処理プログラム等である。キャッシュユニット201は、性能向上のため、HDD206に格納されるデータをキャッシュする。
ストレージ制御情報207及びストレージプログラム208は、プロセッサ203による実行のためにメモリに格納されてもよい。プロセッサ203及びメモリは協働してストレージシステムコントローラとして機能することができ、ストレージシステム200の機能の制御を容易化する。メモリは、計算機読み取り可能な記憶媒体の形態であってもよく、上記のような計算機読み取り可能な信号媒体に代えられてもよい。
図3は、ストレージシステム200において実行されるストレージ階層化機能及びサーバ100において実行されるストレージI/O制御機能を示す図面例である。これら機能は、当該技術分野において知られた技術によって実行が可能である。サーバ100は、仮想マシン500〜502を有し、それらは、IOPS(Input/Output Per Second)で示されているストレージI/O制御機能の設定値であるアクセス数有する。
まず、ストレージ階層化機能を説明する。ストレージシステム200において、SSD、SAS、SATAのような物理記憶デバイスは、容量プールを形成する。VOL(ボリューム)は、ページ400と呼ばれる細粒セグメントを含む。データを格納する領域のみが、物理領域に対応する。データがサーバ100から書き込まれる場合、物理領域が割り当てられる。ストレージシステムは、各ページへのI/Oの数を監視し、監視されているデータに基づいてデータを移動する。
仮想マシンは、サーバ100において生成される。記憶領域300は、仮想マシンイメージを格納する。一つのボリュームは、図3に示すように、複数の仮想マシンイメージを格納することが可能である。仮想マシンに使用されるデータは、仮想マシンイメージと同様に、格納されることが可能である。
ストレージI/O制御機能は、IOPS(IO秒毎)において最大アクセス数を設定する。本例において、仮想マシン500の設定値は250IOPSであり、仮想マシン501の設定値は800IOPSであり、仮想マシン502の設定値は400IOPSである。
図4は、ストレージ階層化及びストレージI/O制御によって引き起こされる問題の一例を示している。図4の例において、仮想マシン501及び502に対応する記憶領域の性能は、300IOPSである。記憶領域がボトルネックである場合、ストレージI/O制御は、設定値の比率に従って、仮想マシン501及び502によって発行されるIOPSを制御する。本例において、仮想マシン501の設定値は800IOPSであり、仮想マシン502の設定値は400IOPSであり、記憶領域の性能は300IOPSである。したがって、仮想マシン501のIOPSは、200IOPSに制限され、仮想マシン502のIOPSは、100IOPSに制限される。
ストレージシステムが仮想マシン501から受信する最大IOPSは200であるが、ストレージシステムが仮想マシン500から受信する最大IOPSは250である。仮想マシン500よりも仮想マシン501が優先される場合であっても、仮想マシン500のIOPSは、仮想マシン501のIOPSよりも大きくなる。したがって、仮想マシン501に対応するページはSSDに移動されない。一旦低性能HDDにデータが格納されると、当該データはSSD又は高性能HDDに移動されない。
サーバ100は、ストレージシステム200がストレージ階層をサーバ100から受信したIOPSに基づいて制御していることを認識していない。さらに、ストレージシステム200は、サーバ100がIOPSを制御していることを認識していない。
図5は、実施例1を示す図を示す。
実施例1において、管理サーバ600が利用され、機能状態の認識を容易なものとする。
管理サーバ600で実行される処理は、サーバ100又はストレージシステム200で実行することも可能である。サーバ100及びストレージシステム200についての情報を取得できる任意の装置が、処理を実行することが可能である。本例において、これら処理は、管理サーバ600によって実行される。
管理サーバ600は、サーバ100及びストレージシステムに物理的に接続されている。まず、管理サーバ600は、各仮想マシンがIOの数を制御しているか問い合わせる。その後、管理サーバ600は、仮想マシンを格納しているボリュームが階層化ボリュームであるか問い合わせる。最後に、管理サーバ600は、必要であれば、IOPS制御の停止を指示する。
この停止により、仮想マシン501は、例えば、最大800IOPSを発行することが可能である。この構成により、仮想マシン501の最大IOPSを仮想マシン500の最大IOPSより大きくすることができる。従って、仮想マシン500と501のデータが置換され、仮想マシン501のデータがSSDに格納され得る。
上記例において、IOPSの制限のみが停止される。ストレージI/O制御機能を解除することでIOPSの制限を停止することも可能である(最大IOPS800および400を削除)。その場合、問題が解決した後にストレージI/O制御機能を再度設定することが必要となる。
実施例1を実現するためのプログラムやテーブル構造が、図6〜10を参照して下記で説明される。図6〜10は、サーバ100、ストレージシステム200及び管理サーバ600におけるプログラム及び制御情報を示す図である。
図6は、実施例1に係るサーバプログラム106及びサーバ制御情報104を示す図である。サーバプログラム106は、サーバライトプログラム及びキャンセルプログラムを含み、これらは下記で詳細に説明される。サーバ制御情報104は、I/O制御テーブルを含む。このテーブルは、ストレージI/O制御機能によって使用される。このテーブルの詳細は、図7を参照して説明する。
図7は、実施例1に係る、サーバ制御情報におけるI/O制御テーブルの一例を示す。このテーブルは、仮想マシンID、設定値、制御フラグ、ボリュームID及びアドレス等の情報を含む。仮想マシンIDは、仮想マシンを一致に識別する識別子である。設定値は、仮想マシンIDにより特定される仮想マシンによって発行される最大IOPSである。制御フラグは、仮想マシンがIOPSの数を制御しているか否かを管理する。「OFF」は、仮想マシンがIOPSの数を制御していないことを示し、「ON」は、仮想マシンがIOPSの数を制御していることを示す。ボリュームIDは、仮想マシンIDで特定される仮想マシンイメージを格納するボリュームの識別子である。アドレスは、仮想マシンイメージを格納するボリュームにおけるアドレスである。
図8は、実施例1に係る、ストレージプログラム208及びストレージ制御情報207を示す図である。ストレージプログラム208は、ストレージライトプログラム、I/Oカウント変更プログラム、重複排除プログラム、及びデステージ重複排除プログラムを含む。これらプログラムは、下記でさらに詳細に説明される。ストレージ制御情報は、例えば、ボリュームテーブル、ページテーブル、及び重複排除ドメインテーブルを含む情報を含む。
図9は、実施例1に係る、ストレージ制御情報におけるボリュームテーブルの一例である。このテーブルは、ボリュームID、階層フラグ、アドレス、プールID、ページID、IOPS及びピン止め等の情報を含むことができる。ボリュームIDは、ボリュームを一意に識別する識別子である。階層フラグは、ストレージ階層化機能がボリュームIDで特定されるボリュームに対して適用されているか否かを管理する。「ON」は当該機能が適用されていることを示し、「OFF」は、当該機能が適用されていないことを示す。アドレス、プールID及びページIDは、ボリュームにおけるアドレス、プール、及びページ情報間の関係の管理に寄与する。プールID及びページIDにおける「−」は、物理領域がボリュームID及びアドレスで指定される記憶領域に対して割り当てられていないことを示す。IOPSは、サーバから受信されるI/Oの数を示す。ストレージ階層化機能は、IOPSに基づいて、各データに対してより適切な記憶媒体を判定する。ピン止めは、ページが固定された記憶媒体を管理する。「OFF」は、当該ページに対してピン止めオプションが使用されていないことを示す。「SATA」は、SATAにおいてデータが固定されていることを示す。SSD、SAS等が、ピン止めの値として格納される。
図10は、実施例1に係る、ストレージ制御情報におけるページテーブルの一例である。このテーブルは、プールID、ページID、フリーフラグのような情報を含むことができる。プールIDは、容量プールを識別する識別子である。ページIDは、プールにおけるページを識別する識別子である。フリーフラグは、ページがフリーであるか否かを示す。「YES」は、プールID及びページIDで特定される領域がフリーであることを示し、「NO」は、プールID及びページIDで特定される領域がフリーではないことを示す。
図11は、実施例1に係る、制御確認プログラム及びキャンセルプログラムのフロー図例を示す。制御確認プログラムは、管理サーバにおいて実行され、キャンセルプログラムはサーバにおいて実行される。まず、制御確認プログラムは、サーバに要求を送信することによって、ストレージI/O制御によりI/O数が制限されている仮想マシンを特定する(S100)。制御確認プログラムから要求を受信したキャンセルプログラムは、VM情報を管理サーバに報告する(S102)。この処理は、I/O制御テーブルにアクセスすることによって達成される。制御確認プログラムは、S102で報告された仮想マシンに対応するストレージボリュームを検出する(S103)。その後、当該プログラムは、検出されたボリュームが階層化ボリュームか確認し、階層化ボリュームをリスト化する(S104)。これは、要求を、ボリュームテーブルを管理しているストレージシステムに送信することによって実装できる。
制御確認プログラムは、VMのためのストレージI/O制御のキャンセルを指示する(S105)。キャンセル指示を受信したキャンセルプログラムは、I/O制御テーブルにおいて制御フラグをOFFに変化させ、管理サーバに変更を報告する(S106)。その後、キャンセルプログラムは、処理を終了する(S107)。最後に、制御確認プログラムは、処理を終了する(S108)。
S105及びS106におけるフローは、IOPSが制御されておらず、検出された仮想マシンの設定値よりも小さい設定値を有する1以上の仮想マシンが存在する場合のみ、実行することが可能である。本例において、仮想マシン500のIOPSは制御されておらず、仮想マシン500の設定値は仮想マシン501の設定値よりも小さい。従って、キャンセルプログラムは、仮想マシン501の制御フラグをOFFに変更する。
ストレージI/O制御は、制御フラグがOFFに変更されても、データがSSD又は高性能HDDに移動される前に、フラグをONに再び変更し得る。従って、所定期間の間OFF状態を維持する方法を実装することも可能である。
VMの一部に対応するフラグを変更する方法を、実装することも可能である。例えば、最大設定値を有するVMのフラグのみが変更される。これにより、高優先度VMのデータ移動の可能性を、高めることができる。
上記の方法において、VMに対するIOPS制御はキャンセルされる。IOPSが制御されていないVMに対するIOPS制御を開始する方法も、実装することが可能である。例えば、VM500のIOPSを制御することによって、VM501のデータはSSD又は高性能HDDに移動され易くなる。VM501の設定値よりも小さい設定値を持つ低優先度VMが候補となる。VM500に発行されるIOの数は、設定値とVM501の制御されたIOPSの比率に従って、制御することも考え得る。本例において、VM501の設定値は800IOPSであり、制御されたIOPSは200IOPSである。VM500の設定値は250IOPSである。従って、VM500のIOPSは、62.5IOPSに制限することが可能である。
図12(a)は、実施例1に係る他の方法を示す。具体的には、図12は、制御確認プログラム及びキャンセルプログラムの他の例、並びに、I/Oカウント変更プログラムの一例を示す。制御確認プログラムは、管理サーバにおいて実行され、キャンセルプログラムはサーバにおいて実行され、I/Oカウント変更プログラムはストレージシステムにおいて実行される。
本制御方法は、IOPSの制限がない場合のIOPSを推定し、推定されたIOPSに基づいてデータを移動する。図の例においては、仮想マシン501の推定IOPSは、仮想マシン500の推定IOPSよりも大きくなり得る。
まず、制御確認プログラムは、ストレージI/O制御によりI/O数が制限されている仮想マシンとその設定値を、サーバに要求する(S200)。要求を受信したキャンセルプログラムは、仮想マシンID、設定値、制御されたIOPS、ボリュームID及びアドレスを管理サーバに報告する(S201)。この処理は、I/O制御テーブルにアクセスすることで実現される。
続いて、制御確認プログラムは、各ページの適切なIOPSを推定し、推定されたIOPSに基づいて階層化を制御する(S202)。このとき、ストレージシステムのI/Oカウント変更プログラムは、I/O制御により制御されたIOPSを、ボリュームID、仮想マシンによって使用されているアドレス及びストレージI/O制御機能の設定値と共に、通知される。通知を受けたI/Oカウント変更プログラムは、制御確認プログラムからのボリュームID及びアドレスに対応するページを検出する(S203)。この処理は、ボリュームテーブルを使用することによって実現される。
次に、I/Oカウント変更プログラムは、ページの現在のIOPSと、通知された制御されたIOPSと設定値との比率と、に基づいて適切なページIOPSを推定する(S204)。例えば、当該プログラムは、通知された設定値と制御されたIOPSとの比率を計算する。さらに、当該プログラムは、ページIOPSの現在の値と計算された比率との積を計算し、ページIOPSを計算された値で置換する。これは一例であって、他の計算を使用することが可能である。I/Oカウント変更プログラムは、ページテーブルにおけるIOPSを更新する(S205)。最後に、I/Oカウント変更プログラムは、処理を終了する(S206)。S202のフローの後、制御確認プログラムは、VMのためのストレージI/O制御のキャンセルを指示する(S207)。キャンセル指示を受信したキャンセルプログラムは、I/O制御テーブルにおいて制御フラグをOFFに変更する(S208)。最後に、制御確認プログラムは、処理を終了する(S209)。
図12(b)は、実施例1に係る、ページの現在のIOPS並びに通知された設定値及び制御されたIOPSに基づいて、適切なページIOPSを推定する例を示す。図12(b)の例において、仮想マシン512は、ページ412、413及び414に対するI/Oを実行する。ページ412は、30IOPSのレートで現在アクセスされており、ページ413は、20IOPSのレートで現在アクセスされており、ページ414は、30IOPSのレートで現在アクセスされている。図12(a)のフローから、ストレージシステムは、仮想マシン512の設定値と制御されたIOPSを通知される。本例において、設定値は800IOPSであり、制御されたIOPSは、80IOPSである。通知されたIOPSから、ストレージシステムは、仮想マシン512に関連づけられたページに、現在IOPSと通知されたIOPSとに基づいてアクセスレートを比例的に割り当てることによって、ページIOPSを推定する。本例において、各ページに対する現在IOPSと制御IOPS(80IOPS)との比率が考慮される。制御されたIOPSは、ページ412、413及び414のIOPSの総和として計算される。ページ412の比率は30IOPS/80総IOPSであり、ページ413の比率は20IOPS/80総IOPSであり、ページ414の比率は30IOPS/80総IOPSである。従って、ページ412の推定アクセスレートは、800IOPS*30IOPS/80IOPS、つまり、300IOPSである。同様に、ページ413の推定アクセスレートは、200IOPSであり、ページ414の推定アクセスレートは、300IOPSである。
実施例1において、説明された例は仮想マシンについてものであるが、物理マシンに対しても使用することが可能である。ストレージI/O制御機能は、物理サーバ間又は物理サーバと物理サーバに接続された管理サーバ間の通信によって、実現される。
実施例2において、ストレージ階層化及び重複排除により引き起こされる可能性がある問題を解決する方法を下記に説明する。実施例2のハードウェア構成は、上記実施例1と同様とすることが可能である。さらに、実施例1において示された図面、テーブル、プログラムは、所望の実装に拠って、実施例2のために利用することが可能である。
図13は、ストレージ階層化と重複排除とによって引き起こされる問題の例を示す図である。
ストレージシステム200は、重複排除機能を有する。重複排除機能が階層化ストレージシステムにおいて実行される場合、異なる記憶媒体に格納されているデータが重複排除され得る。図13の例は、SSDのデータとSATAの他のデータとが重複排除されている。二つの場合がある。一つには、SATAのデータが削除されて、SSDのデータを指すポインタと置換される。他の一つには、SSDのデータが削除されて、SATAのデータを指すポインタと置換される。一般に、最初のケースが適用されるが、二つ目のケースも様々な理由から利用され得る。例えば、キャッシュメモリ(DRAM)上にキャッシュされているデータがデステージされる場合、ストレージシステムは、同一データの存在検出を実行し、重複排除を実行する。物理記憶デバイスへの転送は省略され、ストレージシステムにおける内部帯域の効率性を改善することが可能である。
SATAのデータが削除される場合、SATAへのアクセスがSSDに移される。そのため、SSDにもともと格納されていたデータに対するアクセスが、もともとSATAに格納されていたデータに対するアクセスによって阻害され得る。SATAのデータが削除されない場合、SSDへのアクセスはSATAに移される。従って、SSDを介してデータにアクセスしていたアプリケーションは、性能の低下を受け得る。
実施例2は、上記の可能性に対応することが可能である。実施例2において、あるアプリケーションのワークロードがSSDの他のワークロードを阻害し得る場合、ストレージ階層化機能のピン止めオプションが使用される。従って、実施例2は、ピン止めされたデータに対して重複排除を実行しない。
図14は、実施例2に係る、ピン止めされたデータの重複排除の実行を避ける重複排除プログラムの例である。重複排除プログラムは、ストレージシステムにおいて実行される。
まず、重複排除プログラムは、重複排除対象領域を検出する(S300)。当該プログラムは、検出された領域を含むページを検出する(S301)。当該プログラムは、ページがピン止めされているか否かを確認する(S302)。ページがピン止めされている場合(YES)、当該プログラムは重複排除ステップをスキップし、処理を終了する(S304)。ページがピン止めされていない場合(NO)、当該プログラムは、S303に進み、重複排除処理を実行する。この処理は、当業者にとって知られた重複排除処理によって実装可能である。重複したデータの一つは、削除されないデータに対するポインタと置換される。S303の後、当該プログラムは処理を終了する(S304)。
SSDのデータが削除される場合の方法を、以下に説明する。高性能記憶媒体のデータが削除対象となると、重複排除の実行は、他方のデータを格納する記憶媒体のタイプによって判定される。例えば、同一データがSSDとSASに格納されている場合、SSDのデータを削除可能である。しかし、同一データがSSDとSATAに格納されている場合、SSDのデータを削除すべきではない。従って、重複排除処理は実行されない。この方法は、対象データで重複排除が可能なデータを格納している記憶媒体のタイプを管理する。
図15は、実施例2に係る、重複排除ドメインテーブルの例を示す。本例の最初の行(「SSD」)は、SSDのデータがSSDのデータを削除することにより重複排除される場合、維持されるデータはSSD又はSASに格納されていなければならない、ことを示す。残されるデータがSATA又は外部ストレージに格納されている場合、SSDのデータは、重複排除されない。本例の2番目の行(「SAS」)は、SASのデータがSASのデータを削除することにより重複排除される場合、維持されるデータはSSD、SAS又はSATAに格納されていなければならない、ことを示す。残されるデータが外部ストレージに格納されている場合、SASのデータは、重複排除されない。
図16は、実施例2に係るデステージ重複排除プログラムの例を示し、デステージ重複排除プログラムは、重複排除ドメインテーブルを使用し、データが重複排除可能であるか否か確認する。まず、デステージ重複排除プログラムは、デステージ対象記憶媒体を検出する(S400)。当該プログラムは、データのハッシュ値を計算し(S401)、同一のハッシュ値を有するデータが存在するか確認する(S402)。確認結果が「NO」である場合、当該プログラムはS406に進み、データをオリジナルアドレスにデステージする。確認結果が「YES」の場合、当該プログラムは、検出されたデータを格納する記憶媒体がデステージデータについて重複排除可能であるか確認する(S403)。
確認結果が「NO」である場合、当該プログラムはS406に進む。従って、重複排除ステップはスキップされる。確認結果が「YES」である場合、当該プログラムはデータを比較する(S404)。データの内容が同一である場合、当該プログラムは、S402で検出されたデータのアドレスを有するポインタに置換し(S407)、処理を終了する(S408)。
比較結果が「NO」である場合、当該プログラムはS406に進む。S406において、当該プログラムはデータをオリジナルアドレスにデステージし(S406)、処理を終了する(S408)。
データがキャッシュから記憶媒体にデステージされる場合を、図17を参照して説明している。この方法は、データがサーバからストレージに書き込まれる場合にも適用される。
図17は、実施例2に係る、サーバライトプログラム及びストレージライトプログラムの例を示す。
まず、サーバライトプログラムは、ライトデータのハッシュ値を計算し、当該ハッシュ値を含むライトコマンドを発行する(S500)。ライトコマンドを受信した(S5010)ストレージライトプログラムは、同一ハッシュ値のデータが存在するか確認する(S502)。確認結果が「NO」の場合、当該プログラムはステップS504に進み、サーバライトプログラムにライトデータ転送が必要であることを通知する(S504)。確認結果が「YES」である場合、当該プログラムは、検出データを格納している記憶媒体がライトデータについて重複排除可能であるか確認する(S503)。
確認結果が「NO」である場合、当該プログラムはS504に進み、サーバに対してライトデータの転送が必要であることを示す。確認結果が「YES」である場合、当該プログラムはS505に進む。当該プログラムは、サーバライトプログラムにライトデータの転送が不要であることを通知し、S506において、検出されたデータのアドレスを有するポインタに置換する。当該プログラムはS510に進み、処理を終了する。
ストレージライトプログラムから応答を受信したサーバライトプログラムは、ライトデータの転送が必要であるか確認する(S507)。確認結果が「NO」である場合、当該プログラムはS511に進む。確認結果が「YES」である場合、当該プログラムはライトデータをストレージシステムに転送し(S508)、S511に進む。S511において、当該プログラムは処理を終了する。ライトデータをサーバから受信したストレージライトプログラムは、ライトデータをオリジナル領域に格納し(S509)、S510に進んで処理を終了する。
上記詳細な説明の一部は、計算機内の動作のアルゴリズム又は記号表現の観点から示されている。これらアルゴリズムの記述及び記号表現は、データ処理の分野の当業者によって使用される手段であり、他の当業者に対して最も効果的に技術革新のエッセンスを伝えるものである。アルゴリズムは、所望の終了状態又は結果につながる、定義された一例のステップである。実施例において、実行されるステップは、具体的な結果を得るための具体的な量の物理的な操作を必要とする。
さらに、本願の他の実施例は、本願の明細書及び教示を考慮することによって、当業者にとって明らかであろう。上記実施例の様々な態様及び/又は構成要素は、単一で又は任意の組み合わせにおいて使用することができる。明細書の記載及び実施例は単に例として考慮されることが意図されており、本願の真の範囲及び精神は、以下の請求範囲の記載により示されている。

Claims (6)

  1. サーバに接続されるシステムであって、
    ストレージシステムと、管理サーバとを含み、
    仮想マシンが前記サーバ上で動作しており、
    前記ストレージシステムは、
    第1記憶デバイスと、前記第1記憶デバイスより高性能の第2記憶デバイスと、を含む複数の記憶デバイスと、
    複数の仮想記憶領域を有する仮想ボリュームを管理する、コントローラと、を含み、
    前記第1記憶デバイスにおける第1記憶領域又は前記第2記憶デバイスにおける第2記憶領域が、前記複数の仮想記憶領域それぞれに対するアクセス頻度情報に従って、前記複数の仮想記憶領域に割り当てられており、
    前記管理サーバは、プロセッサを含み、
    前記プロセッサは、
    前記サーバ上で実行される、前記仮想マシン定された最大アクセス頻度に基づくアクセス制限についての通知を受信し、
    前記仮想マシンが前記仮想ボリュームを使用する場合に、前記仮想マシンに対する前記アクセス制限のキャンセルを指示し、
    前記ストレージシステムにおける前記コントローラは、前記仮想マシンに対するアクセス制限と、前記複数の仮想記憶領域のうち、前記仮想マシンによって使用される第1仮想記憶領域とについての情報を、前記管理サーバから受信すると、
    前記仮想ボリュームに対する前記仮想マシンの前記アクセス制限下でのアクセス頻度の上限値と前記最大アクセス頻度との比、及び、前記第1仮想記憶領域の現在のアクセス頻度に基づいて、前記キャンセルの後の前記第1仮想記憶領域に対するアクセス頻度を推定し、
    前記第1記憶デバイスにおける前記第1記憶領域又は前記第2記憶デバイスにおける前記第2記憶領域を、前記第1仮想記憶領域に、前記第1仮想記憶領域に対して推定されたアクセス頻度に基づき、割り当てる、システム。
  2. 請求項1に記載のシステムであって、
    複数の仮想マシンが前記サーバ上で動作しており、
    前記アクセス制限が、前記サーバ上の前記複数の仮想マシンにおける第1仮想マシンにおいて実行されており、
    前記複数の仮想マシンにおける第2仮想マシンが、前記第1仮想マシンよりもアクセス頻度に対する低い優先度を有し、かつ、アクセス制限を実行しない場合、前記管理サーバは、前記第1仮想マシンで実行されている前記アクセス制限のキャンセルを指示する、システム。
  3. 請求項1に記載のシステムであって、
    前記コントローラは、前記第1仮想記憶領域に対して、当該第1仮想記憶領域に対する前記推定されたアクセス頻度が、前記第2記憶領域の割り当てられる他の仮想記憶領域に対する前記アクセス頻度情報が示す現在のアクセス頻度よりも大きい場合、前記第2記憶デバイスにおける前記第2記憶領域を割り当てる、システム。
  4. 仮想マシンが動作しているサーバに接続されたシステムによる方法であって、
    第1記憶デバイスと前記第1記憶デバイスより高性能の第2記憶デバイスとを含む複数の記憶デバイスを含むストレージシステムが、複数の仮想記憶領域を有し前記第1記憶デバイスにおける第1記憶領域又は前記第2記憶デバイスにおける第2記憶領域が前記複数の仮想記憶領域それぞれに対するアクセス頻度情報に従って前記複数の仮想記憶領域に割り当てられる仮想ボリュームを、管理し、
    管理サーバにおいて、前記サーバ上で実行される、前記仮想マシンに設定された最大アクセス頻度に基づくアクセス制限についての通知を受信し、前記サーバが前記仮想ボリュームを使用する場合に、前記仮想マシンに対する前記アクセス制限のキャンセルを指示し、
    前記仮想マシンに対するアクセス制限と、前記複数の仮想記憶領域のうち、前記仮想マシンによって使用される第1仮想記憶領域とについての情報を、前記管理サーバから受信した前記ストレージシステムにおいて、
    前記仮想ボリュームに対する前記仮想マシンの前記アクセス制限下でのアクセス頻度の上限値と前記最大アクセス頻度との比、及び、前記第1仮想記憶領域の現在のアクセス頻度に基づいて、前記キャンセルの後の前記第1仮想記憶領域に対するアクセス頻度を推定し、
    前記第1記憶デバイスにおける前記第1記憶領域又は前記第2記憶デバイスにおける前記第2記憶領域を、前記第1仮想記憶領域に、前記第1仮想記憶領域に対して推定されたアクセス頻度に基づき、割り当てる、方法。
  5. 請求項4に記載の方法であって、
    複数の仮想マシンが前記サーバ上で動作しており、
    前記アクセス制限が、前記サーバ上の前記複数の仮想マシンにおける第1仮想マシンにおいて実行されており、
    前記管理サーバは、
    前記複数の仮想マシンにおける第2仮想マシンが、前記第1仮想マシンよりもアクセス頻度に対する低い優先度を有し、かつ、アクセス制限を実行しない場合、前記管理サーバにおいて、前記第1仮想マシンで実行されている前記アクセス制限のキャンセルを指示する、方法。
  6. 請求項4に記載の方法であって、
    前記第1仮想記憶領域に対して、当該第1仮想記憶領域に対する前記推定されたアクセス頻度が、前記第2記憶領域の割り当てられる他の仮想記憶領域に対する前記アクセス頻度情報が示す現在のアクセス頻度よりも大きい場合、前記第2記憶デバイスにおける前記第2記憶領域を割り当てる、方法。
JP2015561328A 2013-10-28 2013-10-28 サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法 Active JP6190898B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/067139 WO2015065322A1 (en) 2013-10-28 2013-10-28 De-duplication and host based qos in tiered storage

Publications (2)

Publication Number Publication Date
JP2016511474A JP2016511474A (ja) 2016-04-14
JP6190898B2 true JP6190898B2 (ja) 2017-08-30

Family

ID=53004744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015561328A Active JP6190898B2 (ja) 2013-10-28 2013-10-28 サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法

Country Status (3)

Country Link
US (1) US10050902B2 (ja)
JP (1) JP6190898B2 (ja)
WO (1) WO2015065322A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10013701B2 (en) 2013-10-09 2018-07-03 Selligent, Inc. System and method for managing message campaign data
US20190087599A1 (en) 2014-04-02 2019-03-21 International Business Machines Corporation Compressing a slice name listing in a dispersed storage network
MA40824A (fr) 2014-10-22 2017-08-29 Saiba Gmbh Particules de cmv de type virus modifié
US9733836B1 (en) * 2015-02-11 2017-08-15 Violin Memory Inc. System and method for granular deduplication
US20170359221A1 (en) * 2015-04-10 2017-12-14 Hitachi, Ltd. Method and management system for calculating billing amount in relation to data volume reduction function
JP6067819B1 (ja) * 2015-10-21 2017-01-25 株式会社東芝 階層化ストレージシステム、ストレージコントローラ、並びに重複排除及びストレージ階層化のための方法
US10169365B2 (en) * 2016-03-02 2019-01-01 Hewlett Packard Enterprise Development Lp Multiple deduplication domains in network storage system
JP6555290B2 (ja) * 2017-03-29 2019-08-07 日本電気株式会社 ストレージ装置、ストレージ管理方法及びストレージ管理プログラム
US10489073B2 (en) 2017-04-28 2019-11-26 Netapp Inc. Multi-tier write allocation
JP7221585B2 (ja) * 2017-07-20 2023-02-14 富士通株式会社 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム
US10333833B2 (en) * 2017-09-25 2019-06-25 Cisco Technology, Inc. Endpoint path assurance
US11809890B2 (en) 2018-06-29 2023-11-07 Intel Corporation Managing quality of storage service in virtual network
JP6995728B2 (ja) * 2018-09-28 2022-01-17 株式会社日立製作所 ストレージ装置、管理方法及びプログラム
US11860773B2 (en) * 2022-02-03 2024-01-02 Micron Technology, Inc. Memory access statistics monitoring

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3641872B2 (ja) * 1996-04-08 2005-04-27 株式会社日立製作所 記憶装置システム
JP4428993B2 (ja) * 2003-11-27 2010-03-10 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP2005276017A (ja) * 2004-03-26 2005-10-06 Hitachi Ltd ストレージシステム
JP4783086B2 (ja) * 2005-08-04 2011-09-28 株式会社日立製作所 ストレージシステム、ストレージアクセス制限方法、及びコンピュータプログラム
JP2008197779A (ja) 2007-02-09 2008-08-28 Fujitsu Ltd 階層型ストレージ管理システム、階層制御装置、階層間ファイル移動方法、及びプログラム
JP4990089B2 (ja) 2007-10-12 2012-08-01 株式会社日立製作所 格納データ暗号化機能内蔵ストレージ装置の暗号鍵をバックアップ及びリストアする計算機システム
US8285959B2 (en) 2010-01-25 2012-10-09 Netapp, Inc. Method for placement of virtual volume hot-spots in storage pools using ongoing load measurements and ranking
WO2011092738A1 (ja) * 2010-01-28 2011-08-04 株式会社日立製作所 性能の異なる実領域群で構成されたプールを有するストレージシステムの管理システム及び方法
US20110231769A1 (en) * 2010-03-18 2011-09-22 Tovar Tom C Systems and Methods for Scheduling Online Access
US9054992B2 (en) * 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US9244742B2 (en) * 2012-05-31 2016-01-26 Vmware, Inc. Distributed demand-based storage quality of service management using resource pooling
WO2014002162A1 (ja) * 2012-06-25 2014-01-03 富士通株式会社 ストレージ制御装置、情報処理装置、ストレージ制御プログラム、及びストレージ制御方法

Also Published As

Publication number Publication date
US10050902B2 (en) 2018-08-14
JP2016511474A (ja) 2016-04-14
WO2015065322A1 (en) 2015-05-07
US20160021020A1 (en) 2016-01-21

Similar Documents

Publication Publication Date Title
JP6190898B2 (ja) サーバに接続されるシステム及び仮想マシンが動作しているサーバに接続されたシステムによる方法
US8886882B2 (en) Method and apparatus of storage tier and cache management
US9092141B2 (en) Method and apparatus to manage data location
US9229653B2 (en) Write spike performance enhancement in hybrid storage systems
US8566550B2 (en) Application and tier configuration management in dynamic page reallocation storage system
JP5951582B2 (ja) 外部キャッシュデバイスでのハイパーバイザのi/oステージング
US10572175B2 (en) Method and apparatus of shared storage between multiple cloud environments
US20150067258A1 (en) Cache management apparatus of hybrid cache-based memory system and the hybrid cache-based memory system
JP6459644B2 (ja) ストレージ制御装置、制御システム及び制御プログラム
JP5531091B2 (ja) 計算機システム及びその負荷均等化制御方法
JP6106028B2 (ja) サーバ及びキャッシュ制御方法
US10296240B2 (en) Cache management
US20160253114A1 (en) Method and apparatus for optimizing data storage in heterogeneous environment
US20150363134A1 (en) Storage apparatus and data management
US20160350012A1 (en) Data source and destination timestamps
US10853252B2 (en) Performance of read operations by coordinating read cache management and auto-tiering
JP6171084B2 (ja) ストレージシステム
US20160259571A1 (en) Storage subsystem
JP2015052853A (ja) ストレージ制御装置、制御方法及びプログラム
JP4373450B2 (ja) Raid制御装置及びその制御方法
US20100274966A1 (en) High availabilty large scale it systems with self recovery functions
US11315028B2 (en) Method and apparatus for increasing the accuracy of predicting future IO operations on a storage system
JP6919277B2 (ja) ストレージシステム、ストレージ管理装置、ストレージ管理方法、及びプログラム
US8700861B1 (en) Managing a dynamic list of entries for cache page cleaning
JP7000712B2 (ja) データ転送装置およびデータ転送方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170711

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170807

R150 Certificate of patent or registration of utility model

Ref document number: 6190898

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150