JP2007257317A - 記憶システム及び記憶領域解放方法並びにストレージシステム - Google Patents

記憶システム及び記憶領域解放方法並びにストレージシステム Download PDF

Info

Publication number
JP2007257317A
JP2007257317A JP2006081051A JP2006081051A JP2007257317A JP 2007257317 A JP2007257317 A JP 2007257317A JP 2006081051 A JP2006081051 A JP 2006081051A JP 2006081051 A JP2006081051 A JP 2006081051A JP 2007257317 A JP2007257317 A JP 2007257317A
Authority
JP
Japan
Prior art keywords
logical volume
storage
storage area
dynamic logical
storage system
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.)
Granted
Application number
JP2006081051A
Other languages
English (en)
Other versions
JP4993928B2 (ja
Inventor
Norio Shimozono
紀夫 下薗
Hajime Serizawa
一 芹沢
Kentetsu Eguchi
賢哲 江口
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 JP2006081051A priority Critical patent/JP4993928B2/ja
Priority to US11/434,992 priority patent/US7574577B2/en
Priority to EP06255687.3A priority patent/EP1837751B1/en
Priority to CN200610164348A priority patent/CN100590607C/zh
Publication of JP2007257317A publication Critical patent/JP2007257317A/ja
Priority to US12/505,188 priority patent/US8069331B2/en
Priority to US13/293,526 priority patent/US8347060B2/en
Application granted granted Critical
Publication of JP4993928B2 publication Critical patent/JP4993928B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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]

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】
本発明は、簡易な構成で記憶領域を効率的に運用させ得る記憶システムを提案するものである。
【解決手段】
ホスト計算機から送信されたデータを動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる割当て部と、割当て部により動的論理ボリュームに割り当てられた記憶領域のうち、ファイルシステムが現在使用していると認識している記憶領域を管理する管理部と、管理部により管理されていない記憶領域を、当該動的論理ボリュームから解放する解放部とを備えるようにした。
【選択図】図15

Description

本発明は、動的に容量拡張が可能な論理ボリュームをホスト計算機に提供するストレージシステムを含む記憶システムに適用して好適なものである。
近年、データの記憶領域をホスト計算機に提供するストレージシステムでは、非常に数多くの大容量物理ディスクを備えることが可能となり、記憶容量の大規模化が進んでいる。このようなストレージシステムでは、まず物理ディスクから、RAID(Redundant Array of Independent Disks)構成されたディスクアレイを作成し、この物理的な記憶リソースを複数個集めて、プール領域を作成しておき、そのプール領域からホスト計算機が要求する容量の記憶領域を論理ボリュームとして作成し、ホスト計算機に提供する。
さらに近年では、プール領域から固定容量の論理ボリュームを作成せずに、まずホスト計算機に仮想的な論理ボリュームを提供し、ホスト計算機からのコマンドに応じて、その仮想的な論理ボリュームに対して、ある単位で記憶領域を、物理リソースであるプール領域から動的に割り当てることで動的に記憶容量を拡張するストレージシステムが提案されている。
例えば、特許文献1のストレージシステムでは、複数のディスク記憶装置から個々のホスト計算機に対応する論理ボリュームを提供し、ホスト計算機から送信された論理ボリュームへのコマンドにより、読み出しや書き込みが行われる論理ブロックアドレスを読み取り、論理ボリューム上にコマンドがアクセスした論理ブロックアドレスの記憶領域が存在しない場合、ボリューム提供装置が未使用磁気ディスク記憶装置から記憶領域を割り当て、動的に論理ボリュームの記憶領域を拡張し、アプリケーションの指示による任意量での論理ボリュームを縮小する。
また、特許文献2のストレージシステムでは、ホスト計算機に接続される記憶制御装置と、記憶制御装置に接続される複数の記憶装置とを有し、記憶制御装置は、ホスト計算機からのコマンドに応じて、ホスト計算機に所定の大きさの仮想ボリュームを割り当てた旨の通知を発行して、ホスト計算機から仮想ボリュームに対するコマンドを受信した際に、複数の記憶装置内に存在する記憶領域を仮想ボリュームに割り当て、ホスト計算機から受信したコマンドを、仮想ボリュームに割り当てた記憶領域を有する記憶装置宛てのコマンドに変換して、この記憶装置に変換後のコマンドを送信する。
特開2003−015915号公報 特開2005−011316号公報
しかしながら、特許文献1のストレージシステムでは、ホスト計算機におけるファイルシステムのサイズを縮小した場合に発生する不要な記憶領域についてボリュームから解放するようになされているが、非連続に記憶領域に書き込まれるファイル等のデータを削除する場合に発生する不要な記憶領域についてボリュームから解放することについては開示されておらず、ボリュームに不要な記憶領域が残ったままとなるおそれがある。
また、特許文献2のストレージシステムでは、記憶制御装置がコマンドを監視し、上述のファイル等のデータの削除に伴うファイルシステムのメタデータを更新すると、そのメタデータが指し示す記憶領域を解放することにより、不要な記憶領域を解放するようになされているが、ホスト計算機の多様なオペレーションシステム、ファイルシステムに対応して、記憶制御装置がファイルシステムを常に監視してファイルシステムに応じた処理を行わなければならないため、記憶制御装置の構成が複雑になるといった問題がある。
本発明は以上の点を考慮してなされたもので、簡易な構成で記憶領域を効率的に運用させ得る記憶システム及び記憶領域解放方法並びにストレージシステムを提案するものである。
かかる課題を解決するために本発明においては、動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、ストレージシステム及びホスト計算機を管理する管理サーバとを含む記憶システムにおいて、ストレージシステムは、ホスト計算機から送信されたデータを動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる割当て部と、割当て部により動的論理ボリュームに割り当てられた記憶領域のうち、ファイルシステムが現在使用していると認識している記憶領域を管理する管理部と、管理部により管理されていない記憶領域を、当該動的論理ボリュームから解放する解放部とを備えるようにした。
従って、ストレージシステムがファイルシステムの構造を理解することなく、不要な記憶領域を動的論理ボリュームから解放することができる。
また、本発明においては、動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、ストレージシステム及びホスト計算機を管理する管理サーバとを含む記憶システムの記憶領域解放方法において、ホスト計算機から送信されたデータを動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる第1のステップと、第1のステップにおいて動的論理ボリュームに割り当てた記憶領域のうち、ファイルシステムが現在使用していると認識している記憶領域を管理する第2のステップと、第2のステップにおいて管理していない記憶領域を、当該動的論理ボリュームから解放する第3のステップとを備えるようにした。
従って、ストレージシステムがファイルシステムの構造を理解することなく、不要な記憶領域を動的論理ボリュームから解放することができる。
さらに、本発明においては、ホスト計算機から送信されたデータに対して、動的に拡張可能な動的論理ボリュームを提供するストレージシステムにおいて、ホスト計算機から送信されたデータを動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる割当て部と、割当て部により動的論理ボリュームに割り当てられた記憶領域のうち、ファイルシステムが現在使用していると認識している記憶領域を管理する管理部と、管理部により管理されていない記憶領域を、当該動的論理ボリュームから解放する解放部とを備えるようにした。
従って、ストレージシステムがファイルシステムの構造を理解することなく、不要な記憶領域を動的論理ボリュームから解放することができる。
さらに、本発明においては、動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、ストレージシステム及びホスト計算機を管理する管理サーバとを含む記憶システムにおいて、ホスト計算機は、ファイルシステムの使用容量を取得する使用容量取得部を備え、ストレージシステムは、ファイルシステムに対応する動的論理ボリュームに割り当てられている記憶領域の数を取得する記憶領域数取得部を備え、管理サーバは、使用容量取得部により取得されたファイルシステムの使用容量及び記憶領域数取得部により取得されたファイルシステムに対応する動的論理ボリュームの記憶領域の数に基づいて、記憶領域を解放する動的論理ボリュームを決定する解放決定部を備えるようにした。
従って、記憶領域を解放する動的論理ボリュームを、動的論理ボリュームの記憶領域数に基づく使用容量に対してファイルシステムの使用容量が少ない、記憶領域の利用効率の悪い動的論理ボリュームに決定するため、一段と多くの物理記憶領域を解放することができる。
本発明によれば、ホスト計算機から送信されたデータを動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てて、動的論理ボリュームに割り当てられた記憶領域のうち、ファイルシステムが現在使用していると認識している記憶領域を管理し、管理されていない記憶領域を、当該動的論理ボリュームから解放することにより、ストレージシステムがファイルシステムの構造を理解することなく、不要な記憶領域を動的論理ボリュームから解放することができ、かくして、簡易な構成で記憶領域を効率的に運用させ得る記憶システム及び記憶領域解放方法並びにストレージシステムを実現できる。
また、本発明によれば、ファイルシステムの使用容量及びファイルシステムに対応する動的論理ボリュームの記憶領域の数に基づいて、記憶領域を解放する動的論理ボリュームを決定することにより、記憶領域を解放する動的論理ボリュームを、動的論理ボリュームの記憶領域数に基づく使用容量に対してファイルシステムの使用容量が少ない、記憶領域の利用効率の悪い動的論理ボリュームに決定するため、一段と多くの物理記憶領域を解放することができ、かくして、簡易な構成で記憶領域を効率的に運用させ得る記憶システムを実現できる。
以下図面について、本発明の一実施の形態を詳述する。
(1)第1の実施の形態
(1−1)第1の実施の形態による記憶システムの構成
図1は、第1の実施の形態による記憶システム1の構成図である。図示するように、記憶システム1は、1台以上のストレージシステム11、1台以上のホスト計算機12(以下において単に「ホスト」という)、及びSAN(Storage Area Network)管理計算機14(以下において単に「管理サーバ」という)を有する。
ストレージシステム11及びホスト12は、1個以上のSANポート18を有し、SANスイッチ13に接続することで、全体としてSANを構成している。SANは、例えば、ファイバチャネル(Fibre Channel)と呼ばれるインタフェースで接続されている。また、ストレージシステム11及びホスト12は、FCP(Fibre Channel Protocol)と呼ばれるプロトコルを用いて、コマンドやデータの送受信を行う(ストレージシステム11及びホスト12を総称して以下「ノード」ともいう)。
また、ストレージシステム11、ホスト12、SANスイッチ13及び管理サーバ14は、LAN(Local Area Network)スイッチ15に接続することで、全体としてLANを構成している。
なお、本実施の形態では、ストレージシステム11及びホスト12間で用いるSANのインタフェース及びプロトコルの種類を特に限定しない。例えば、インタフェース及びプロトコルの組合せとして、イーサネット(登録商標)(Ethernet(登録商標))とiSCSI(Internet Small Computer System Interface)など他の組み合わせを用いても良い。また、ストレージシステム11及び管理サーバ14間をLANで接続することとしたがこれも例示に過ぎず、別のインタフェースを用いても良い。
ホスト12は、データベースなど何らかのアプリケーションを実行し、それらの処理に必要となるデータの入出力をストレージシステム11に対して行うコンピュータである。
ストレージシステム11は、ホスト12に1個以上の論理記憶領域(以下、論理ボリューム又はLVOLともいう)16を提供するシステムである。ホスト12がストレージシステム11へSCSIコマンドを送信すると、ストレージシステム11は、当該コマンドに従い、ホスト12との間でデータ転送を行う。ホスト12から転送されたデータは、各論理ボリューム16に対応付けられた物理記憶領域である、ハードディスク群105(後述)のうちの4つのハードディスクにより構成されたパリティグループ(以下、PGともいう)19に格納される。
なお、論理ボリューム16は、パリティグループ19から固定的に物理記憶領域が割り当てられる静的論理ボリューム(以下、SVOLともいう)20、パリティグループ19から動的に記憶領域が割り当てられる動的論理ボリューム(以下、DVOLともいう)21、及びホスト12からのコマンドによる制御指示や動的論理ボリューム21のモード変更指示等を格納する制御論理ボリューム(以下、CVOLともいう)22に大別される。ただし、制御論理ボリューム22は、共有メモリ部102にデータを一時的に配置するが、ハードディスクからの読み出し及び書き込みをしないため、パリティグループ19と接続されていない。
ホスト12は、例えば、FCPを用いる場合、ストレージシステム11のSANポート18を指定するためのポートアドレスと、LUN(Logical Unit Number)番号とをコマンドヘッダに付加してストレージシステム11へ発行することで、論理ボリューム16を指定する。コマンドには、他に読み出しや書き込みといったコマンド種別を示すコマンドコード、論理ボリューム16内での転送開始位置を示すアドレスや転送長といった情報が含まれる。
ストレージシステム11は、SCSIコマンドを受信すると、設定情報に基づきSANポート18及びLUNから論理ボリューム16を特定し、データ転送を行う。本実施の形態では、必ずしも各SANポート18に論理ボリューム16を1個以上設定する必要は無く、初期設定時において論理ボリューム16を設定しない未使用のSANポート18を1個以上用意するようにしても良い。図1では、S1d,S1vのSANポート18が未使用であることを示している。
なお、記憶システム1では、SANの信頼性を高めるため、図示するようにストレージシステム11及びホスト12間を、複数のSANポート18及びSANスイッチ13で接続し、複数のSANポート18とLUNとの組み合わせを同一の論理ボリューム16へ対応付けることで、ホスト12から論理ボリューム16へのアクセス経路を冗長化する。
ホスト12は、冗長化した論理ボリューム16へのアクセス経路(ポートアドレスとLUNの組み合わせ)を仮想化するため、記憶領域をホストボリューム17(以下、HVOLともいう)という単位で管理する。ホスト12は、アプリケーションがホストボリューム17へアクセスすると、対応する論理ボリューム16へのSCSIコマンドをストレージシステム11に送信する。
図2は、ストレージシステム11のハードウェア構成図である。ストレージシステム11は、複数のホストI/F部100、複数のディスクI/F部101、共有メモリ部102、システム管理部103と、それらを接続するスイッチ部104から構成される。ストレージシステム11は、ディスクI/F部100を介してハードディスク群105に接続している。ハードディスク群105は、論理ボリューム16のデータを格納する部位であり、複数のハードディスクから構成される。
ホストI/F部100は、ストレージシステム11をSANスイッチ13へ接続する部位であり、複数の外部I/F106、ポートプロセッサ107、及びそれらをスイッチ部104へ接続するための転送制御部108から構成される。外部I/F106は、ストレージシステム11をSANに接続するSANポート18を含み、SANのプロトコルを制御する。ポートプロセッサ107は、ホスト12からのSCSIコマンドを解析し、SCSIコマンドの実行に必要な処理を実行する。転送制御部108は、外部I/F106やポートプロセッサ107と、共有メモリ部102、ディスクI/F部101やシステム管理部103との間のデータ転送や通信をスイッチ部104へアクセスすることで制御する。
ディスクI/F部101は、ストレージシステム11とハードディスク群105とを接続する部位であり、ディスクI/F109、ディスクプロセッサ110、及びそれらをスイッチ部104へ接続するための転送制御部108から構成される。ディスクI/F101は、ストレージシステム11をハードディスク群105に接続し、ハードディスク群105との間のプロトコルを制御する。ディスクプロセッサ110は、ポートプロセッサ107と通信を行いSCSIコマンドの処理に必要なハードディスク群105及び共有メモリ102間のデータ転送を制御する。
システム管理部103は、ストレージシステム11をLANスイッチ15へ接続する部位であり、管理I/F111、管理プロセッサ112、不揮発メモリ113及び転送制御部108から構成される。管理I/F111は、ストレージシステム11をLANスイッチ15へ接続し、LANのプロトコルを制御する。例えば、イーサネット(登録商標)(Ethernet(登録商標))のNIC(Network Interface Card)である。管理プロセッサ112は、管理サーバ14と通信し、ストレージシステム11の設定を実行する。不揮発メモリ113は、ストレージシステム11の設定情報を保持する。
なお、本実施形態におけるストレージシステム11のハードウェア構成は、例示であり、複数のSANポート18と複数の論理ボリューム16を提供可能な構成であれば、上記の構成に限るものではない。
図3は、ストレージシステム11のソフトウェア構成図である。まず、各部位の実行する処理や保持するデータやテーブルについて説明する。ポートプロセッサ107は、論理ボリューム管理テーブル121(図4)及び論理ボリューム種別管理テーブル122(図5)を保持し、コマンド処理プログラム123、モード変更処理プログラム124、領域解放処理プログラム125及び動的論理ボリューム解析処理プログラム126を実行する。なお、コマンド処理プログラム123、モード変更処理プログラム124、領域解放処理プログラム125及び動的論理ボリューム解析処理プログラム126については、後述する。
共有メモリ部102は、論理ボリューム16の一部のデータを保存するキャッシュデータ131、当該キャッシュデータ131と論理ボリューム16内部との位置を対応付けるキャッシュディレクトリ132、動的論理ボリュームモード管理テーブル133(図6)、プール管理テーブル134(図7)及びマッピングテーブル135(図8)を保持する。
ディスクプロセッサ110は、RAID制御プログラム141を実行する。RAID制御プログラム141は、ポートプロセッサ107からの指示で起動され、ハードディスク群105へコマンドを発行し、共有メモリ部102との間でデータ転送を実行するプログラムである。また、RAID制御プログラム141は、ハードディスク群105の複数のハードディスクを用いてRAID(Redundant Array of Inexpensive Disks)処理を行う。具体的には、RAID制御プログラム141は、論理ボリューム16におけるアドレス空間とハードディスク群105のアドレス空間の対応を管理し、適切なハードディスクへアクセスする。
管理プロセッサ112は、ストレージ管理プログラム151を実行する。ストレージ管理プログラム151は、ストレージシステム11を初期化するストレージ初期化処理プログラム152及び管理サーバ14からの要求に応じてストレージシステム11の構成情報を取得ないし変更するストレージ構成管理処理プログラム153を含んでいる。
ここで、ストレージシステム11の初期化処理について説明する。ストレージシステム11が起動すると、管理プロセッサ112は、ストレージ管理プログラム151のストレージ処理化処理プログラム152を起動し、ストレージ初期化処理を実行する。ストレージ初期化処理プログラム152において、管理プロセッサ112は、不揮発メモリ113から設定情報を読み出し、論理ボリューム管理テーブル121、論理ボリューム種別管理テーブル122をポートプロセッサ107に設定し、コマンド処理プログラム123をポートプロセッサ107に、RAID制御プログラム141をディスクプロセッサ110にそれぞれロードする。
コマンド処理プログラム123が起動すると、ポートプロセッサ107は、外部I/F106とキャッシュディレクトリ132の初期化を行い、ホスト12からのSCSIコマンドを待つ状態に入る。RAID制御プログラム141が起動すると、ディスクプロセッサ110は、ディスクI/F109を初期化し、ハードディスク群105へアクセスできることを確認し、ポートプロセッサ107からの指示を待つ状態に入り、初期化処理が完了する。
次に、ストレージシステム11の構成管理処理について説明する。管理プロセッサ112は、管理サーバ14からの所定の要求を管理I/F111から受け取るとストレージ構成管理処理を実行する。
ストレージ構成管理処理プログラム153において、管理プロセッサ112は、最初に管理サーバ14からの要求の種別を判定する。当該要求が構成情報取得の場合、管理プロセッサ112は、要求が指定する論理ボリューム管理テーブル121、論理ボリューム種別管理テーブル122、動的論理ボリュームモード管理テーブル133、プール管理テーブル134又はマッピングテーブル135をポートプロセッサ107又は共有メモリ部102から取得し、管理I/F111を介して管理サーバ14へ送信する。
当該要求が構成情報変更の場合、管理プロセッサ112は、要求が指定する論理ボリューム管理テーブル121、論理ボリューム種別管理テーブル122、動的論理ボリュームモード変更テーブル133、プール管理テーブル134又はマッピングテーブル135の変更をポートプロセッサ107及び不揮発メモリ113に対して行い、実行完了を管理I/F111を介して管理サーバ14へ報告する。
次に、ストレージシステム11がホスト12からのSCSIコマンドを実行する流れを説明する。外部I/F106は、ホスト12からSCSIコマンドを受信すると、ポートプロセッサ107へSCSIコマンドの内容を通知する。ポートプロセッサ107は、定期的に外部I/F106からの通知をポーリングしており、SCSIコマンドの通知を検出するとコマンド処理プログラム123を実行する。なお、ここでは、コマンド処理プログラム123における概要について説明し、本発明にかかる詳細な処理については、図13及び図14に示しており、後述する。
コマンド処理プログラム123において、ポートプロセッサ107は、まずSCSIコマンドの指定するLUNをキーに、論理ボリューム管理テーブル121からアクセス対象の論理ボリューム16を決定する。また、ポートプロセッサ107は、共有メモリ部102のキャッシュディレクトリ132へアクセスし、ヒットミス判定を行う。そして、ポートプロセッサ107は、ホスト12に要求されたデータがキャッシュヒットした場合は、キャッシュデータ131及びホスト12間のデータ転送を外部I/F106に指示する。
これに対して、ポートプロセッサ107は、キャッシュミスした場合は、次のような処理を行う。読出しコマンドの場合、ポートプロセッサ107は、ディスクプロセッサ110にハードディスク群105とキャッシュデータ131の間のデータ転送を指示し、その完了後にキャッシュディレクトリ132を更新し、ホスト12へのデータ転送を外部I/F106に指示する。書込みコマンドの場合、ポートプロセッサ107は、キャッシュディレクトリ132へアクセスし、キャッシュデータ131の空き領域を確保する。そして、ポートプロセッサ107は、確保したキャッシュデータ131及びホスト12間のデータ転送を外部I/F106へ指示し、データ転送の完了後にキャッシュディレクトリ132を更新する。
ポートプロセッサ107は、周期的にディスクプロセッサ110にハードディスク群105とキャッシュデータ131の間のデータ転送を指示しキャッシュディレクトリ132に登録されたダーティなライトデータをハードディスク群105へ書き込む。
このようにして、ストレージシステム11は、ホスト12からのSCSIコマンドを実行する。ただし、この処理の流れは例示であり、SCSIコマンドのLUNと設定情報に基づいて、論理ボリューム16を決定しデータ転送を行うことが可能であれば、この処理の流れに限定するものではない。
図4は、論理ボリューム管理テーブル121の構成を示す図である。論理ボリューム管理テーブル121は、各SANポート18と論理ボリューム16との対応を保持するテーブルであり、各々がストレージシステム11のSANポート18に対応する複数のエントリから構成されている。
論理ボリューム管理テーブル121の各エントリは、SANポート18のIDを管理するポートID管理欄161と、SANポート18のID及び論理ボリューム管理サブテーブル163の対応を保持する論理ボリューム管理サブテーブルポインタ162とから構成されている。
論理ボリューム管理サブテーブル163は、各SANポート18のLUNと論理ボリューム16との対応を保持するテーブルであり、各エントリがSANポート18のLUNを管理するLUN管理欄164と、当該LUN管理欄164に対応する論理ボリューム16を管理するLVOLID管理欄165とから構成されている。
この場合、例えば、ポートID「S1a」であるSANポート18のLUN「0」は、LVOLID「L1」の論理ボリューム16と対応づけられており、ID「S1a」であるSANポート18のLUN「1」は、LVOLID「L2」の論理ボリューム16と対応づけられていることとなる。
図5は、論理ボリューム種別管理テーブル122の構成を示す図である。論理ボリューム種別管理テーブル122は、各々がストレージシステム11の論理ボリューム16に対応する複数のエントリから構成されている。
論理ボリューム種別管理テーブル122の各エントリは、論理ボリューム16のIDを管理するLVOLID管理欄171と、論理ボリューム16の種別を管理するLVOL種別管理欄172と、論理ボリューム16が静的論理ボリューム20であった場合に、当該静的論理ボリューム20に対応するパリティグループのIDを管理するPGID173と、論理ボリューム16が動的論理ボリューム21であった場合に、当該動的論理ボリューム21のIDを管理するDVOLID174とから構成されている。
この場合、例えば、LVOLID「L1」の論理ボリューム16は、静的論理ボリューム20であり、PGID「0000」のパリティグループ19と対応付けられており、LVOLID「L2」の論理ボリューム16は、動的論理ボリューム21であり、DVOLID「0000」の動的論理ボリューム21と対応付けられていることとなる。
図6は、動的論理ボリュームモード管理テーブル133の構成を示す図である。動的論理ボリュームモード管理テーブル133は、各々がストレージシステム11の動的論理ボリューム21に対応する複数のエントリから構成されている。
動的論理ボリュームモード管理テーブル133の各エントリは、動的論理ボリューム21のIDを管理するDVOLID管理欄181と、動的論理ボリューム21のホスト12からのSCSIコマンドに対するモードを管理するコマンド処理モード管理欄182とから構成されている。
この場合、例えば、DVOLID「0000」の動的論理ボリューム21は、ノーマルモードであり、DVOLID「0001」の動的論理ボリューム21は、フラグ操作モードであることとなる。
なお、ノーマルモードとは、通常のホスト12からのSCSIコマンドを実行するモードであり、フラグ操作モードとは、詳しくは後述するが、ホスト12からのSCSIコマンドに従って、動的論理ボリューム21に物理記憶領域を割り当てる割当て単位の領域を表すエクステントのアクセスフラグ管理欄193を「TRUE」に変更するモードである。
図7は、プール管理テーブル134の構成を示す図である。プール管理テーブル134は、各々がストレージシステム11のパリティグループ19に対応する複数のエントリから構成されている。なお、プール管理テーブル134の各行は、エクステントごとに対応するようになれている。
プール管理テーブル134の各エントリは、パリティグループ19のIDを管理するPGID管理欄191と、パリティグループ19のLBA(Logical Brock Address)の開始値を管理するLBA開始値管理欄192と、アクセスフラグ管理欄193と、割り当て状態管理欄194とから構成されている。
アクセスフラグ管理欄193は、上述のフラグ操作モード時において、ホスト12からSCSIコマンドに従って、当該SCSIコマンドが指定したデータが格納されている物理記憶領域にアクセスされたことを表すアクセスフラグが「オン」であるか、又は「オフ」であるかを管理するようになされている。
ここで、アクセスフラグ管理欄193は、当該アクセスフラグ管理欄193を「FALSE」又は「TRUE」で管理するようになされており、アクセスフラグ管理欄193が「FALSE」の場合には「オフ」であり、ホスト12からのSCSIコマンドが指定したデータが格納されている物理記憶領域にアクセスされていないことを示しており、アクセスフラグ管理欄193が「TRUE」の場合には「オン」であり、ホスト12からのSCSIコマンドが指定したデータが格納されている物理記憶領域にアクセスされたことを示している。
割り当て状態管理欄194は、エクステントごとに物理記憶領域がいずれかの動的論理ボリューム21に割り当てられているか否かを管理するようになされている。
ここで、割り当て状態管理欄194は、割り当て状態を「割当て済」又は「空き」で管理するようになされており、割り当て状態が「割当て済」の場合には、物理記憶領域がいずれかの動的論理ボリューム21に割り当てられていることを示しており、割り当て状態が「空き」の場合には、物理記憶領域がいずれの動的論理ボリューム21にも割り当てられていないことを示している。
この場合、例えば、PGID「0001」であるパリティグループ19のLBA開始値「0x00000000」に対応する物理記憶領域は、アクセスフラグ管理欄193が「FALSE」であることから、フラグ操作モード時である場合には、SCSIコマンドが指定したデータが格納されている物理記憶領域にアクセスされておらず、割当て状態「割当て済」であることから、いずれかの動的論理ボリューム21に割り当てられていることとなる。
図8は、マッピングテーブル135の構成を示す図である。マッピングテーブル135は、動的論理ボリューム21とパリティグループ19の物理記憶領域との対応を保持するテーブルであり、各々がストレージシステム11の動的論理ボリューム21に対応する複数のエントリから構成されている。なお、マッピングテーブル135の各行は、エクステントごとに対応するようになれている。
マッピングテーブル135の各エントリは、動的論理ボリューム21のIDを管理するDVOLID管理欄201と、動的論理ボリューム21のLBAの開始値を管理するDVOLLBA開始値管理欄202と、ロックフラグ管理欄203と、割り当て状態管理欄204と、パリティグループ19のIDを管理するPGID管理欄205と、パリティグループ19のLBAの開始値を管理するPGLBA開始値管理欄206とから構成されている。
ロックフラグ管理欄203は、動的論理ボリューム21にパリティグループ19の物理記憶領域を割り当てる際、若しくは動的論理ボリューム21からパリティグループ19の物理記憶領域を削除する際に、ホスト12からSCSIコマンドに基づくデータの読書きを禁止するか否かを管理するようになされている。
また、ロックフラグ管理欄203は、ホスト12からのSCSIコマンドに基づくデータの読書きを行う際に、動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除を禁止するか否かについても同時に管理するようになされている。
ここで、ロックフラグ管理欄203は、当該ロックフラグ管理欄203を「FALSE」又は「TRUE」で管理するようになされており、ロックフラグ管理欄203が「FALSE」の場合には、ホスト12からSCSIコマンドに基づくデータの読書きが禁止されていないと共に、動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除が禁止されていないことを示している。
また、ロックフラグ管理欄203は、当該ロックフラグ管理欄203が「TRUE」の場合には、ホスト12からSCSIコマンドに基づくデータの読書きが禁止されている、又は動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除が禁止されていることを示している。
割り当て状態管理欄204は、エクステントごとにパリティグループ19の物理記憶領域が割り当てられているか否かを管理するようになされている。
ここで、割り当て状態管理欄204は、割り当て状態を「割当て済」又は「空き」で管理するようになされており、割り当て状態が「割当て済」の場合には、動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられていることを示しており、割り当て状態が「空き」の場合には、動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられていないことを示している。なお、割り当て状態管理欄204は、割り当て状態が「空き」の場合には、パリティグループ19の物理記憶領域が割り当てられていないため、PGID管理欄205及びPGLBA開始値管理欄206を「−」として管理するようになされている。
この場合、例えば、DVOLID「0000」である動的論理ボリューム21のLBA開始値「0x00000000」に対応する論理記憶領域は、PGID「0000」であるパリティグループ19のLBA開始値「0x00010000」に対応する物理記憶領域が割り当てられており、ロックフラグ管理欄203が「TRUE」であることから、ホスト12からSCSIコマンドに基づくデータの読書きが禁止されている、又は動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除が禁止されていることとなる。
図9は、ホスト12のハードウェア構成図である。ホスト12は、CPU211、メインメモリ212、当該メインメモリ212を制御するメモリコントローラ213、HDD(Hard Disk Drive)I/F214、ディスプレイI/F215、入力I/F216、1個以上のHBA(Host Bus Adapter)217、ネットワークI/F218と、それらを接続するバス219から構成される。
CPU211は、後述する各プログラムを実行し、メインメモリ212はそのために必要なデータを保持する。メモリコントローラ213は、メインメモリ212を制御し、バス219に接続する部位である。HDDI/F214は、バス219とHDD220とを接続する部位である。ディスプレイI/F215は、バス219とディスプレイ装置221とを接続する部位である。入力I/F216は、バス219とキーボードやマウスなどの入力デバイス222とを接続する部位である。HBA217は、SANポート18を含み、バス219とSANスイッチ13とを接続する部位である。ネットワークI/F218は、バス219とLANスイッチ15とを接続する部位である。
なお、上記ハードウェア構成は例示であり、1個以上のSANポート18とLANスイッチ15へのインタフェースを有し、後述するソフトウェアを実行可能であれば、これに限定されるものではない。
図10は、ホスト12のソフトウェア構成図である。まず、ホスト12のCPU211が実行する処理や、メインメモリ212が保持するデータやテーブルについて説明する。ホスト12のCPU211は、アプリケーション231、ファイルシステム232、ホストエージェントプログラム233、アクセス制御ドライバ234、LANI/Fドライバ235を実行する。アクセス制御ドライバ234は、SANスイッチ13との間のデータやコマンドの転送を制御するドライバである。LANI/Fドライバ235は、LANスイッチ15との間のデータやコマンドの転送を制御するドライバである。
ファイルシステム232は、アクセス要求処理プログラム241、デフラグ処理プログラム242、使用容量取得処理プログラム243及びブロック状態取得処理プログラム244を含んでいる。アクセス要求処理プログラム241は、ホストボリューム17へのアクセス要求処理を実行するプログラムである。デフラグ処理プログラム242は、ホストボリューム17のデフラグ処理を実行するプログラムである。なお、使用容量取得処理プログラム243及びブロック状態取得処理プログラム244については、後述する。
ホストエージェントプログラム233は、容量情報取得処理プログラム251及び不使用領域解放処理プログラム252を含んでいる。なお、容量情報取得処理プログラム251及び不使用領域解放処理プログラム252については、後述する。
なお、上述の各プログラムが用いるデータやテーブルは、メインメモリ212に保持されている。
ここで、アプリケーション231からホストボリューム17へのアクセス要求の処理の流れを説明する。アプリケーション231は、ホスト12が実行するプログラムであり、例えばデータベースなどである。アプリケーション231は、ファイルシステム232のアクセス要求処理プログラム241を呼び出し、ホストボリューム17へのアクセスを要求する。アクセス要求処理プログラム241は、アプリケーション231が要求したファイルへのアクセスを、ホストボリューム17へのアクセスへ変換するプログラムである。
アクセス要求処理プログラム241において、CPU211は、アプリケーション231又はファイルシステム232から受け取ったホストボリューム17へのアクセス要求を実行する。具体的にはCPU211は、メインメモリ212に保持されているアクセス要求処理プログラム241のテーブルに基づいて、論理ボリューム16へのアクセス経路、具体的にはストレージシステム11のポートアドレス及びLUNを決定し、HBA217を介してストレージシステム11にSCSIコマンドを発行し、論理ボリューム16へアクセスする。CPU211は、ストレージシステム11とのデータ転送が完了すると、アプリケーション231又はファイルシステム232へアクセスの完了を通知する。
なお、上記のアクセス要求処理の流れは例示であり、設定情報に基づいてホストボリューム17へのアクセス要求からアクセス経路を決定し、ストレージシステム11の論理ボリューム16へアクセスすることが可能であれば、これに限定されるものではない。
図11は、管理サーバ14のハードウェア構成図である。管理サーバ14は、CPU261、メモリ262、当該メモリ262を制御するメモリコントローラ263、HDDI/F264、ディスプレイI/F265、入力I/F266、LANI/F267と、それらを接続するバス268から構成される。
CPU261は、後述するSAN構成管理プログラム281を実行し、メモリ262はそのために必要なデータを保持する。メモリコントローラ263は、メモリ262を制御し、バス268に接続する部位である。HDDI/F264は、バス268とHDD269とを接続する部位である。ディスプレイI/F265は、バス268とディスプレイ装置270とを接続する部位である。入力I/F266は、バス268とキーボードやマウスなどの入力デバイス271とを接続する部位である。LANI/F267は、バス268とLANスイッチ15を接続する部位である。
なお、上記ハードウェア構成は例示であり、LANスイッチ15へ接続するためのインタフェースを有し、後述するソフトウェアを実行可能であれば、これに限定するものではない。
図12は、管理サーバ14のソフトウェア構成図である。まず、管理サーバ14のCPU261が実行する処理や、メモリ262が保持するデータについて説明する。管理サーバ14のCPU261は、SAN構成管理プログラム281及びLANI/Fドライバ282を実行する。
SAN管理プログラム240は、動的論理ボリューム管理処理プログラム291を含んでいる。なお、動的論理ボリューム管理処理プログラム291については、後述する。
(1−2)第1の実施の形態によるコマンド処理
次に、第1の実施の形態における記憶システム1のコマンド処理について説明する。図13は、この記憶システム1におけるデータ読出し時のコマンド処理に関するストレージシステム11の具体的な処理手順を示したフローチャートである。
ポートプロセッサ107は、初期時、ホスト12から受信したSCSIコマンドを実行するプログラムであるコマンド処理プログラム123を実行することにより、図13に示すデータ読出し時におけるコマンド処理手順RT1に従って、ホスト12からSCSIコマンドを受信すると、当該SCSIコマンドが制御論理ボリューム22に対する読出しコマンドであるか否かをチェックする(S1)。
そして、ポートプロセッサ107は、当該SCSIコマンドが制御論理ボリューム22に対する読出しコマンドである場合には(S1:YES)、当該読出しコマンドに基づいて、ホスト12に送信するために取得する取得対象の情報を特定する(S2)。
続いて、ポートプロセッサ107は、取得対象の情報を格納するためのエリアを、共有メモリ部102内に確保する(S3)。続いて、ポートプロセッサ107は、共有メモリ部102内に格納された取得対象の情報から、ホスト12に送信するための転送データを作成する(S4)。
これに対して、ポートプロセッサ107は、当該SCSIコマンドが制御論理ボリューム22に対する読出しコマンドでない場合には、(S1:NO)、ホスト12から受信したSCSIコマンドが動的論理ボリューム21に対する読出しコマンドであるか否かをチェックする(S5)。
そして、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する読出しコマンドである場合には(S5:YES)、マッピングテーブル135を参照して、対応するエクステントのロックフラグ管理欄203を「TRUE」に変更することにより、対応するエクステントについて、ホスト12からSCSIコマンドに基づくデータの読書きを禁止し、動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除を禁止するように、対応するエクステントをロックする(S6)。
続いて、ポートプロセッサ107は、マッピングテーブル135を参照することにより、対応するエクステントにパリティグループ19の物理記憶領域が割当て済であるか否かをチェックする(S7)。
そして、ポートプロセッサ107は、対応するエクステントにパリティグループ19の物理記憶領域が割当て済でない場合には(S7:NO)、対応するエクステントにはデータが格納されていないため、例えば、データが格納されていない旨、又はオール「0」等でなる転送データを作成する(S8)。
これに対して、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する読出しコマンドでない場合(S5:NO)、又は対応するエクステントにパリティグループ19の物理記憶領域が割当て済である場合(S7:YES)には、静的論理ボリューム20に対する読出しコマンドであるか、又は動的論理ボリューム21の対応するエクステントにパリティグループ19の物理記憶領域が割り当てられており、パリティグループ19の物理記憶領域のLBAが確定しているため、当該物理記憶領域に格納されているデータが共有メモリ部102内にキャッシュデータ131として格納されているか否かをチェックする(S9)。
そして、ポートプロセッサ107は、当該物理記憶領域に格納されているデータが共有メモリ部102内にキャッシュデータ131として格納されている場合には(キャッシュヒット)(S9:YES)、当該キャッシュデータ131を、転送データとして共有メモリ部102から読み出す(S10)。
これに対して、ポートプロセッサ107は、当該物理記憶領域に格納されているデータが共有メモリ部102内にキャッシュデータ131として格納されていない場合には(キャッシュミス)(S9:NO)、RAID制御プログラムを呼び出して、ディスクプロセッサ110がRAID制御プログラムを制御することにより、当該物理記憶領域に格納されているデータを読み出して、キャッシュデータ131として共有メモリ部102内に格納し、当該キャッシュデータ131を、転送データとして共有メモリ部102から読み出す(S11)。
やがて、ポートプロセッサ107は、転送データをホスト12に転送する(S12)。
続いて、ポートプロセッサ107は、ホスト12から受信したSCSIコマンドが動的論理ボリューム21に対する読出しコマンドであったか否かをチェックする(S13)。
そして、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する読出しコマンドであった場合には(S13:YES)、動的論理ボリュームモード管理テーブル133を参照することにより、読出しコマンドのあった動的論理ボリューム21がフラグ操作モードであるか否かをチェックする(S14)。
そして、ポートプロセッサ107は、読出しコマンドであった動的論理ボリューム21がフラグ操作モードである場合には(S14:YES)、プール管理テーブル134を参照して、対応するエクステントのアクセスフラグ管理欄193を「TRUE」に変更する(S15)。
続いて、ポートプロセッサ107は、マッピングテーブル135を参照して、対応するエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、対応するエクステントについて、ホスト12からSCSIコマンドに基づくデータの読書きの禁止を解除し、動的論理ボリューム21へのパリティグループ19の物理記憶領域の割り当て、若しくは動的論理ボリューム21からのパリティグループ19の物理記憶領域の削除の禁止を解除するように、読出し対象のエクステントをアンロックする(S16)。
やがて、ポートプロセッサ107は、この後、図13に示すデータ読出し時のコマンド処理手順RT1を終了する(S17)。
図14は、この記憶システム1におけるデータ書込み時のコマンド処理に関するストレージシステム11の具体的な処理手順を示したフローチャートである。
ポートプロセッサ107は、初期時、コマンド処理プログラム123を実行することにより、図14に示すデータ書込み時におけるコマンド処理手順RT2に従って、ホスト12からSCSIコマンドを受信すると、当該SCSIコマンドが制御論理ボリューム22に対する書込みコマンドであるか否かをチェックする(S21)。
そして、ポートプロセッサ107は、当該SCSIコマンドが制御論理ボリューム22に対する書込みコマンドである場合には(S21:YES)、続いてホスト12から送信される制御指示を格納するためのエリアを、共有メモリ部102内に確保する(S22)。続いて、ポートプロセッサ107は、ホスト12から送信される制御指示を格納する(S23)。
続いて、ポートプロセッサ107は、共有メモリ部102に格納された制御指示がどのような制御指示であるかを特定する(S24)。ホスト12から送信される制御指示としては、例えば、領域解放プログラム125の開始を指示する制御指示等がある。
続いて、ポートプロセッサ107は、当該制御指示に基づいて、対応する処理の呼び出しを実行したり、対応する情報を作成したりする(S25)。
これに対して、ポートプロセッサ107は、当該SCSIコマンドが制御論理ボリューム22に対する書込みコマンドでない場合には、(S21:NO)、ホスト12から受信したSCSIコマンドが動的論理ボリューム21に対する書込みコマンドであるか否かをチェックする(S26)。
そして、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する書込みコマンドである場合には(S26:YES)、マッピングテーブル135を参照して、対応するエクステントのロックフラグ管理欄203を「TRUE」に変更することにより、対応するエクステントをロックする(S27)。
続いて、ポートプロセッサ107は、マッピングテーブル135を参照することにより、対応するエクステントにパリティグループ19の物理記憶領域が割当て済であるか否かをチェックする(S28)。
そして、ポートプロセッサ107は、対応するエクステントにパリティグループ19の物理記憶領域が割当て済でない場合には(S28:NO)、当該エクステントにパリティグループ19の物理記憶領域を割り当てる(S29)。
続いて、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する書込みコマンドでない場合(S26:NO)、対応するエクステントにパリティグループ19の物理記憶領域が割当て済である場合(S28:YES)、又は対応するエクステントにパリティグループ19の物理記憶領域が割り当てられた場合(S29)には、静的論理ボリューム20に対する読出しコマンドであるか、又は動的論理ボリューム21の対応するエクステントにパリティグループ19の物理記憶領域が割り当てられており、パリティグループ19の物理記憶領域のLBAが確定しているため、ホスト12から送信される書込み対象のデータをキャッシュデータ131として、共有メモリ部102に格納する(S30)。
この場合、ポートプロセッサ107は、対応するパリティグループ19の物理記憶領域に格納されているデータのキャッシュデータ131が共有メモリ部102に格納されている場合には、当該キャッシュデータ131に上書きし、対応するパリティグループ19の物理記憶領域に格納されているデータのキャッシュデータ131が共有メモリ部102に格納されていない場合には、共有メモリ部102内にエリアを確保して、キャッシュデータ131を格納する。
続いて、ポートプロセッサ107は、ホスト12から受信したSCSIコマンドが動的論理ボリューム21に対する書込みコマンドであったか否かをチェックする(S31)。
そして、ポートプロセッサ107は、当該SCSIコマンドが動的論理ボリューム21に対する書込みコマンドであった場合には(S31:YES)、動的論理ボリュームモード管理テーブル133を参照することにより、書込みコマンドのあった動的論理ボリューム21がフラグ操作モードであるか否かをチェックする(S32)。
そして、ポートプロセッサ107は、書込みコマンドのあった動的論理ボリューム21がフラグ操作モードである場合には(S32:YES)、プール管理テーブル134を参照して、対応するエクステントのアクセスフラグ管理欄193を「TRUE」に変更する(S33)。
続いて、ポートプロセッサ107は、マッピングテーブル135を参照して、対応するエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、対応するエクステントをアンロックする(S34)。
やがて、ポートプロセッサ107は、この後、図14に示すデータ書込み時のコマンド処理手順RT2を終了する(S35)。
(1−3)第1の実施の形態による容量情報取得処理及び不使用領域解放処理
(1−3−1)容量情報取得処理及び不使用領域解放処理の全体的な処理の流れ
次に、第1の実施の形態における記憶システム1の容量情報取得処理及び不使用領域解放処理の全体的な処理の流れについて、図15〜図17を参照して説明する。本実施の形態による記憶システム1では、ストレージシステム11において、ホスト12が現在使用していると認識しているLBAを含む記憶領域を管理し、ホスト12が現在使用していないと認識している物理記憶領域を動的論理ボリューム21から解放することを特徴の1つとしている。
図15は、第1の実施の形態における容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの内容を概略的に示した概念図である。また図16及び図17は、この記憶システム1における容量情報取得処理及び不使用領域解放処理の全体的な処理の流れに関するストレージシステム11、ホスト12及び管理サーバ14の具体的な処理手順を示したフローチャートである。
管理サーバ14のCPU261は、初期時、図16及び図17に示す容量情報取得・不使用領域解放処理手順RT3に従って、所定のタイミングで、又は管理者等に操作されることにより、容量情報取得処理及び不使用領域解放処理を実行するプログラムである動的論理ボリューム管理処理プログラム291が起動されると、ホスト12に対して「容量情報取得処理」を実行するように要求する(S41)。
ホスト12のCPU211は、管理サーバ14から「容量情報取得処理」を実行するように要求されると、使用容量取得処理を実行して、動的論理ボリューム21に対応するファイルシステム232(ホストボリューム17)について、ファイルシステム232ごとに使用容量を取得する(S42)。
続いて、ホスト12のCPU211は、ストレージシステム11に対して「動的論理ボリューム容量情報取得処理」を実行するように要求する(S43)。
続いて、ストレージシステム11のポートプロセッサ107は、ホスト12から、「動的論理ボリューム容量情報取得処理」を実行するように要求されると、動的論理ボリューム解析処理を実行して、動的論理ボリューム21ごとにパリティグループ19の物理記憶領域が割り当てられているエクステント数を取得する(S44)。
続いて、ストレージシステム11のポートプロセッサ107は、取得した動的論理ボリューム21ごとのエクステント数をホスト12に送信する(S45)。
続いて、ホスト12のCPU211は、動的論理ボリューム21ごとのエクステント数を受信すると、対応するファイルシステム232ごとの使用容量と共に、管理サーバ14に送信する(S46)。
続いて、管理サーバ14のCPU261は、動的論理ボリューム21ごとのエクステント数及び対応するファイルシステム232ごとの使用容量を受信すると、例えば、動的論理ボリューム21のエクステント数に基づく使用容量と、対応するファイルシステム232の使用容量との差を算出し、差の大きい所定数のファイルシステム232を選択し、選択されたファイルシステム232について、ホスト12に対して「不使用領域解放処理」を実行するように要求する(S47)。
なお、管理サーバ14のCPU261は、動的論理ボリューム21のエクステント数に基づく使用容量と、対応するファイルシステム232の使用容量との差を順次算出し、差の大きい順に並び換えて、ディスプレイ装置270に表示し、管理者等に不使用領域解放処理を実行するファイルシステム232を選択させることにより、選択されたファイルシステム232について、ホスト12に対して「不使用領域解放処理」を実行するように要求しても良い。
またなお、管理サーバ14のCPU261は、動的論理ボリューム21のエクステント数に基づく使用容量と、対応するファイルシステム232の使用容量との比を順次算出し、比の大きい所定数のファイルシステム232について、ホスト12に対して「不使用領域解放処理」を実行するように要求しても良く、要は、動的論理ボリューム21のエクステント数に基づく使用容量と、対応するファイルシステム232の使用容量との乖離の大きいファイルシステム232について、ホスト12に対して「不使用領域解放処理」を実行するように要求すれば良い。
続いて、ホスト12のCPU211は、管理サーバ14から「不使用領域解放処理」を実行するように要求されると、不使用領域解放処理を実行して、ストレージシステム11に対して「モード変更処理」を実行するように要求する(S48)。
続いて、ストレージシステム11のポートプロセッサ107は、ホスト12から、「モード変更処理」を実行するように要求されると、モード変更処理を実行して、選択されたファイルシステム232に対応する動的論理ボリューム21をフラグ操作モードに変更する(RT6)。
続いて、ストレージシステム11のポートプロセッサ107は、「モード変更処理」を完了した旨をホスト12に送信する(S49)。
続いて、ホスト12のCPU211は、「モード変更処理」を完了した旨を受信すると、解放不可エクステントアクセス処理を実行して、ファイルシステム232が現在データを格納しており、使用中であると認識しているLBAのデータについての読出しコマンドをストレージシステム11に対して送信し、ストレージシステム11のポートプロセッサ107により、読出しコマンドに基づいて、読出し対象のデータに対応するエクステントのアクセスフラグ管理欄193を「TRUE」に変更すると共に、読出し対象のデータをホスト12に送信させる(RT7)。
続いて、ホスト12のCPU211は、ファイルシステム232が現在認識しているLBAのデータについてのデータ読み出しが終了すると、ストレージシステム11に対して「領域解放処理」を実行するように要求する(S50)。
続いて、ストレージシステム11のポートプロセッサ107は、ホスト12から、「領域解放処理」を実行するように要求されると、領域解放処理を実行して、アクセスフラグ管理欄193が「FALSE」となっているエクステントに割り当てられているパリティグループ19の物理記憶領域を解放する(RT8)。
続いて、ストレージシステム11のポートプロセッサ107は、解放したエクステント数をホスト12に送信する(S51)。
続いて、ホスト12のCPU211は、解放したエクステント数を受信すると、当該解放したエクステント数を管理サーバ14に送信する(S52)。
なお、管理サーバ14のCPU261は、解放したエクステント数をディスプレイ装置270に表示することにより、管理者等に不使用領域解放処理の結果を確認させることができるようになされている。
(1−3−2)容量情報取得処理
次に、第1の実施の形態における記憶システム1の容量情報取得処理について詳細に説明する。図18は、この記憶システム1における容量情報取得処理に関するホスト12及びストレージシステム11の具体的な処理手順を示したフローチャートである。
ホスト12のCPU211は、初期時、管理サーバ14から「容量情報取得処理」を実行するように要求されると、ファイルシステム232の使用容量及び対応する動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられているエクステント数を取得するプログラムである容量情報取得処理プログラム251を実行することにより、図18に示す容量情報取得処理手順RT4に従って、論理ボリューム種別情報を取得する(S61)。
この場合、ホスト12のCPU211は、論理ボリューム種別情報取得を指示する制御指示を作成し、当該制御指示をストレージシステム11の共有メモリ部102(制御論理ボリューム22)に送信する。
ストレージシステム11のポートプロセッサ107は、論理ボリューム種別情報取得を指示する制御指示に基づいて、論理ボリューム種別管理テーブル122を参照することにより、論理ボリューム種別情報を作成し、共有メモリ部102にエリアを確保して、共有メモリ部102に格納する。そして、ストレージシステム11のポートプロセッサ107は、論理ボリューム種別情報をホスト12のメインメモリ212に送信する。
続いて、ホスト12のCPU211は、論理ボリューム種別情報を参照することにより、論理ボリューム16の種別が動的論理ボリューム21であるか否かをチェックする(S62)。
そして、ホスト12のCPU211は、論理ボリューム16の種別が動的論理ボリューム21である場合には(S63)、ホストエージェントプログラム233の容量情報取得処理プログラム251を起動して、ファイルシステム232の使用容量取得処理プログラム243を実行することにより、ファイルシステム使用容量取得処理を実行して、ファイルシステム232の使用容量を取得する(S63)。
続いて、ホスト12のCPU211は、当該ファイルシステム232に対応する動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられているエクステント数を取得する(S64)。
この場合、ホスト12のCPU211は、動的論理ボリューム解析処理の開始を指示する制御指示を作成し、当該制御指示をストレージシステム11の共有メモリ部102(制御論理ボリューム22)に送信する。
ストレージシステム11のポートプロセッサ107は、動的論理ボリューム解析処理の開始を指示する制御指示に基づいて、動的論理ボリューム解析処理プログラム126を実行することにより、動的論理ボリューム解析処理を実行して、動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられているエクステント数を取得し、共有メモリ部102にエリアを確保して、当該エクステント数を共有メモリ部102に格納する。そして、ストレージシステム11のポートプロセッサ107は、当該エクステント数をホスト12のメインメモリ212に送信する。
これに対して、ホスト12のCPU211は、論理ボリューム16の種別が動的論理ボリューム21でない場合(S62:NO)、又は当該ファイルシステム232に対応する動的論理ボリューム21にパリティグループ19の物理記憶領域が割り当てられているエクステント数を取得した場合(S64)には、論理ボリューム種別情報におけるすべての論理ボリューム16について、ファイルシステム使用容量取得処理及び動的論理ボリューム解析処理を実行したか否かをチェックする(S65)。
そして、ホスト12のCPU211は、すべての論理ボリューム16について、ファイルシステム使用容量取得処理及び動的論理ボリューム解析処理を実行していない場合には(S65:NO)、この後、次の論理ボリューム16の種別が動的論理ボリューム21であるか否かをチェックし、(S62)、この後同様の処理を繰り返す(S62〜S65−S62)。
これに対して、ホスト12のCPU211は、すべての論理ボリューム16について、ファイルシステム使用容量取得処理及び動的論理ボリューム解析処理を実行した場合には(S65:YES)、取得した動的論理ボリューム21ごとのエクステント数と、当該動的論理ボリューム21ごとに対応するファイルシステム232ごとの使用容量とを管理サーバ14に送信する(S66)。
やがて、ホスト12のCPU211は、この後、図18に示す容量情報取得処理手順RT4を終了する(S67)。
(3−3)不使用領域解放処理
次に、第1の実施の形態における記憶システム1の不使用領域解放処理について詳細に説明する。図19は、この記憶システム1における不使用領域解放処理に関するストレージシステム11及びホスト12の具体的な処理手順を示したフローチャートである。
ホスト12のCPU211は、初期時、管理サーバ14から「不使用領域解放処理」を実行するように要求されると、選択されたファイルシステム232に対応する動的論理ボリューム21に割り当てられているパリティグループ19の物理記憶領域について、ホスト12が現在使用していないと認識している記憶領域を動的論理ボリューム21から解放するプログラムである不使用領域解放処理プログラム252を起動することにより、図19に示す不使用領域解放処理手順RT5に従って、ファイルシステム232について、デフラグ処理及びリマウント処理を実行する(S71)。
この場合、ホスト12のCPU211は、ファイルシステム232のデフラグ処理プログラム242を呼び出して、当該デフラグ処理プログラム242を制御することにより、動的論理ボリューム21に格納されているデータの読み出し及び書き込みを繰り返すことで、動的論理ボリューム21に不連続に格納されているデータの不使用領域を連続化する。
また、この場合、ホスト12のCPU211は、ファイルシステム232が保持しているダーティデータであるキャッシュデータを、ストレージシステム11に反映するため、ストレージシステム11に送信する。
続いて、ホスト12のCPU211は、ストレージシステム11から、当該ファイルシステム232に対応する動的論理ボリューム21について、パーティションテーブルを取得して、当該パーティションテーブルを解析することにより、対応する動的論理ボリューム21の先頭LBA及び終端LBAを取得する(S72)。
この場合、パーティションテーブルについては、論理ボリュームの先頭LBA及び終端LBA等を管理するための情報で、一般的に論理ボリュームの先頭ブロック(「0」番のLBA)に格納されている。
そこで、ホスト12のCPU211は、「0」番のLBAを指定して読出しコマンドを実行して、動的論理ボリューム21からパーティションテーブルを読み込んで取得し、取得したパーティションテーブルを解析することにより、ファイルシステム232に対応する動的論理ボリューム21の先頭LBA及び終端LBAを特定する。
続いて、ホスト12のCPU211は、ファイルシステム232に対応する動的論理ボリューム21のコマンド処理モードをノーマルモードからフラグ操作モードに変更する(S73)。
この場合、ホスト12のCPU211は、モード変更処理の開始を指示する制御指示を作成し、当該制御指示をストレージシステム11の共有メモリ部102(制御論理ボリューム22)に送信する。
ここで、第1の実施の形態における記憶システム1のモード変更処理について詳細に説明する。図20は、この記憶システム1におけるモード変更処理に関するストレージシステム11の具体的な処理手順を示したフローチャートである。
ストレージシステム11のポートプロセッサ107は、モード変更処理の開始を指示する制御指示であることを特定すると、動的論理ボリューム21のコマンド処理モードをノーマルモードからフラグ操作モードに変更すると共に、アクセスフラグ管理欄193をリセットするプログラムであるモード変更プログラム124を実行することにより、図20に示すモード変更処理手順RT6に従って、モード変更処理を実行して、当該制御指示により指定されるアクセスフラグ管理欄193をリセットする対象のLBA範囲から、モード変更処理を開始するエクステントを算出し、当該エクステントを、モード変更処理を開始するエクステントに設定する(S81)。
続いて、ストレージシステム11のポートプロセッサ107は、マッピングテーブル135を参照して、設定されたエクステントのロックフラグ管理欄203を「TRUE」に変更することにより、設定されたエクステントをロックする(S82)。
続いて、ストレージシステム11のポートプロセッサ107は、マッピングテーブル135を参照することにより、設定されたエクステントにパリティグループ19の物理記憶領域が割当て済であるか否かをチェックする(S83)。
そして、ストレージシステム11のポートプロセッサ107は、設定されたエクステントにパリティグループ19の物理記憶領域が割当て済でない場合には(S83:NO)、マッピングテーブル135を参照して、設定されたエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、設定されたエクステントをアンロックする(S84)。
これに対して、ストレージシステム11のポートプロセッサ107は、設定されたエクステントにパリティグループ19の物理記憶領域が割当て済である場合には(S83:YES)、プール管理テーブル134を参照することにより、設定されたエクステントのアクセスフラグを「FALSE」に変更すると共に、マッピングテーブル135を参照して、設定されたエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、設定されたエクステントをアンロックする(S85)。
続いて、ストレージシステム11のポートプロセッサ107は、制御指示により指定されるアクセスフラグをリセットする対象のLBA範囲のすべてのエクステントについて、ステップS83〜ステップS85における一連の処理を実行したか否かをチェックする(S86)。
続いて、ストレージシステム11のポートプロセッサ107は、すべてのエクステントについて、ステップS83〜ステップS85における一連の処理を実行していない場合には(S86:NO)、この後、エクステントを、次に一連の処理を実行するエクステントに設定し(S87)、この後同様の処理を繰り返す(S82〜S86−S87、S82)。
これに対して、ストレージシステム11のポートプロセッサ107は、すべてのエクステントについて、ステップS83〜ステップS85における一連の処理を実行した場合には(S86:YES)、動的論理ボリュームモード変更テーブル133を参照することにより、ファイルシステム232に対応する動的論理ボリューム21に対応するコマンド処理モード管理欄182をノーマルモードからフラグ変更モードに変更し(S88)、この後、図20に示すモード変更処理手順RT6を終了する(S89)。
そして、ストレージシステム11のポートプロセッサ107は、モード変更処理を完了して、ファイルシステム232に対応する動的論理ボリューム21のコマンド処理モードをノーマルモードからフラグ操作モードに変更した旨をホスト12に送信する。
図19に戻り、続いて、ホスト12のCPU211は、ファイルシステム232に対応する動的論理ボリューム21のコマンド処理モードをノーマルモードからフラグ操作モードに変更すると、解放不可エクステントへのアクセス処理を実行する(S73)。
ここで、第1の実施の形態における記憶システム1の解放不可エクステントアクセス処理について詳細に説明する。図21は、この記憶システム1における解放不可エクステントアクセス処理に関するホスト12の具体的な処理手順を示したフローチャートである。
ホスト12のCPU211は、初期時、図21に示す解放不可エクステントアクセス処理手順RT7に従って、解放不可エクステントアクセス処理を実行して、パーティションテーブルを解析することにより取得したファイルシステム232に対応する動的論理ボリューム21の先頭LBAを、ブロック状態取得処理を実行するLBAに設定する(S91)。
ホスト12のCPU211は、設定されたLBAに対して、ファイルシステム232のブロック状態取得処理プログラム244を実行することにより、ブロック状態取得処理を実行して、設定されたLBAが使用中であるか否か(すなわち、設定されたLBAにホスト12が認識しているデータが格納されているか否か)をチェックする(S92)。
そして、ホスト12のCPU211は、設定されたLBAが使用中でない場合には(S92:NO)、ブロック状態取得処理を実行するLBAを、次のLBAに設定する(S93)。
これに対して、ホスト12のCPU211は、設定されたLBAが使用中である場合には(S92:YES)、当該LBAに対応する物理記憶領域に格納されているデータの読出しを実行する(S94)。
この場合、ホスト12のCPU211は、当該LBAに対応する物理記憶領域に格納されているデータの読出しコマンドをストレージシステム11に送信する。ストレージシステム11のポートプロセッサ107は、当該読出しコマンドに基づいて、設定されたLBAに対応する物理記憶領域から、読出し対象のデータを読み出して、ホスト12に送信する。
このとき、ストレージシステム11のポートプロセッサ107は、コマンド処理モードがフラグ操作モードであるため、プール管理テーブル134を参照して、読出し対象のデータが格納されているパリティグループ19の物理記憶領域に対応するエクステントのアクセスフラグ管理欄193を「TRUE」に変更することにより、当該エクステントを解放不可エクステントとして認識するようになされている。
続いて、ホスト12のCPU211は、読出しコマンドに基づく読出し対象のデータを受信すると、ブロック状態取得処理を実行するLBAを、次のエクステントの先頭LBAに設定する(S95)。
すなわち、ホスト12のCPU211は、対応するエクステントから読出しコマンドに基づく読出し対象のデータを読み出した後に、同一のエクステントから他の読出しコマンドに基づく読出し対象のデータを読み出さないようになされている。
続いて、ホスト12のCPU211は、終端LBAまでブロック状態取得処理を実行したか否かをチェックする(S96)。
そして、ホスト12のCPU211は、終端LBAまでブロック状態取得処理を実行していない場合には(S96:NO)、この後、設定されたLBAに対して、ブロック状態取得処理を実行して、設定されたLBAが使用中であるか否かをチェックし(S92)、この後同様の処理を繰り返す(S92〜S96−S92)。
これに対して、ホスト12のCPU211は、終端LBAまでブロック状態取得処理を実行した場合には(S96:NO)、この後、図21に示す解放不可エクステントアクセス処理手順RT7を終了する(S97)。
なお、ホスト12のCPU211は、例えば、ファイルシステム232がリナックス(LINUX)(登録商標)の場合には、inode/datablock bitmapからブロック状態を取得するようになされている。
図19に戻り、続いて、ホスト12のCPU211は、解放不可エクステントへのアクセス処理を実行すると、解放すべきエクステントに対応するパリティグループ19の物理記憶領域について、動的論理ボリューム21から解放する(S75)。
この場合、ホスト12のCPU211は、領域解放処理の開始を指示する制御指示を作成し、ストレージシステム11の共有メモリ部102(制御論理ボリューム22)に送信する。
ここで、第1の実施の形態における記憶システム1の領域解放処理について詳細に説明する。図22は、この記憶システム1における領域解放処理に関するストレージシステム11の具体的な処理手順を示したフローチャートである。
ストレージシステム11のポートプロセッサ107は、領域解放処理の開始を指示する制御指示であることを特定すると、解放すべきエクステントに対応するパリティグループ19の物理記憶領域について、動的論理ボリューム21から解放するプログラムである領域解放処理プログラム125を実行することにより、図22に示す領域解放理手順RT8(図17)に従って、領域解放処理を実行し、当該制御指示により指定されるアクセスフラグ管理欄193をリセットする対象のLBA範囲から、領域解放処理を開始するエクステントを算出して、当該エクステントを、領域解放処理を開始するエクステントに設定する(S101)。
続いて、ストレージシステム11のポートプロセッサ107は、マッピングテーブル135を参照して、設定されたエクステントのロックフラグ管理欄203を「TRUE」に変更することにより、設定されたエクステントをロックする(S102)。
続いて、ストレージシステム11のポートプロセッサ107は、プール管理テーブル134を参照することにより、設定されたエクステントのアクセスフラグ管理欄193が「FALSE」であるか否かをチェックする(S103)
そして、ストレージシステム11のポートプロセッサ107は、設定されたエクステントのアクセスフラグ管理欄193が「FALSE」でない場合には(S103:NO)、マッピングテーブル135を参照して、設定されたエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、設定されたエクステントをアンロックする(S104)。
これに対して、ストレージシステム11のポートプロセッサ107は、設定されたエクステントのアクセスフラグ管理欄193が「FALSE」である場合には(S103:YES)、プール管理テーブル134を参照して、設定されたエクステントの割当て状態管理欄194を割当て済から空きに変更し、マッピングテーブル135を参照して、設定されたエクステントの割当て状態管理欄204を割当て済から空きに変更し、対応するPGID205及びPGLBA開始値206を「−」に変更すると共に、設定されたエクステントのロックフラグ管理欄203を「FALSE」に変更することにより、設定されたエクステントをアンロックする(S105)。
続いて、ストレージシステム11のポートプロセッサ107は、制御指示により指定されるアクセスフラグ管理欄193をリセットする対象のLBA範囲のすべてのエクステントについて、ステップS102〜ステップS105における一連の処理を実行したか否かをチェックする(S106)。
続いて、ストレージシステム11のポートプロセッサ107は、すべてのエクステントについて、ステップS102〜ステップS105における一連の処理を実行していない場合には(S106:NO)、この後、エクステントを、次に一連の処理を実行するエクステントに設定し(S107)、この後同様の処理を繰り返す(S102〜S106−S107、S102)。
これに対して、ストレージシステム11のポートプロセッサ107は、すべてのエクステントについて、ステップS102〜ステップS105における一連の処理を実行した場合には(S106:YES)、解放したエクステント数を当該ポートプロセッサ107のメモリ(図示せず)に保持すると共に、解放したエクステント数をホスト12に送信し(S108)、この後、図22に示す領域解放処理手順RT8を終了する(S109)。
図19に戻り、続いて、ホスト12のCPU211は、解放すべきエクステントに対応するパリティグループ19の物理記憶領域について、動的論理ボリューム21から解放し、解放エクステント数を受信すると、当該解放エクステント数を管理サーバ14に送信し(S76)、この後、図19に示す不使用領域解放処理手順RT4を終了する(S77)。
このようにして、記憶システム1では、ホスト12からの読み出しコマンドに基づく読出し対象のデータが格納されているパリティグループ19の物理記憶領域に対応するエクステントを解放不可エクステントとして認識し、解放不可エクステントとして認識されていないパリティグループ19の物理記憶領域を動的論理ボリューム21から解放することにより、ストレージシステム11がファイルシステム232の構造を理解することなく、不要な物理記憶領域を動的論理ボリューム21から解放することができる。
また、記憶システム1では、動的論理ボリューム21のエクステント数に基づく使用容量と、対応するファイルシステム232の使用容量との乖離の大きいファイルシステム232について、ホスト12に対して「不使用領域解放処理」を実行することにより、動的論理ボリューム21のエクステント数に基づく使用容量に対してファイルシステム232の使用容量が少ない、物理記憶領域の利用効率の悪いファイルシステム232を選択して「不使用領域解放処理」を実行することができるため、一段と多くの物理記憶領域を解放することができる。
さらに、記憶システム1では、ホスト12からの読み出しコマンドに基づく読出し対象のデータが格納されているパリティグループ19の物理記憶領域に対応するエクステントを解放不可エクステントとして認識すると、ブロック状態取得処理を実行するLBAを、次のエクステントの先頭LBAに設定することにより、解放不可エクステントとして認識したエクステントからデータの読出し処理を実行するのを未然かつ有効に防止することができ、解放領域不可エクステント処理を一段と向上させることができる。
(2)第2の実施の形態
第2の実施の形態による記憶システム1は、ホスト12のソフトウェア構成図及び解放不可エクステントアクセス処理が異なっていることを除いて、第1の実施の形態による記憶システム1と同様に構成されている。
図23は、ホスト12のソフトウェア構成図である。第2の実施の形態によるホスト12のソフトウェア構成図は、ブロック状態取得処理244が備えていないことと、メタデータレイアウト情報301が追加されていることを除いて、第1の実施の形態によるホスト12のソフトウェア構成図と同様に構成されている。メタデータレイアウト情報301は、ファイルシステム232のメタデータがどこに格納されているかを示す情報である。
次に、第2の実施の形態における記憶システム1の解放不可エクステントアクセス処理について詳細に説明する。図23は、この記憶システム1における解放不可エクステントアクセス処理に関するホスト12の具体的な処理手順を示したフローチャートである。
ホスト12のCPU211は、初期時、図23に示す解放不可エクステントアクセス処理手順RT9に従って、解放不可エクステントアクセス処理を実行して、パーティションテーブルを解析することにより取得したファイルシステム232に対応する動的論理ボリューム21の先頭LBA及び容量及びメタデータレイアウト情報301から、メタデータのレイアウトを解析して、メタデータレイアウトを確定する(S111)。なお、ホスト12のCPU211は、メタデータの読み出しを実行しないとメタデータのレイアウトを解析することができない場合には、そのまま、次のステップに進む。
続いて、ホスト12のCPU211は、確定されたメタデータレイアウトからLBAを取得して、当該LBAに対応する動的論理ボリューム21に割り当てられたパリティグループ19の物理記憶領域に格納されているメタデータの読出しを実行する(S112)。
この場合、ホスト12のCPU211は、対応するメタデータの読出しコマンドをストレージシステム11に送信する。ストレージシステム11のポートプロセッサ107は、当該読出しコマンドに基づいて、LBAのブロックに対応する動的論理ボリューム21に割り当てられたパリティグループ19の物理記憶領域から、読出し対象のメタデータを読み出して、ホスト12に送信する。このとき、ストレージシステム11のポートプロセッサ107は、コマンド処理モードがフラグ操作モードであるため、物理記憶領域に対応するエクステントを解放不可エクステントとして認識するようになされている。
続いて、ホスト12のCPU211は、確定されたメタデータレイアウトのすべてのメタデータについて、読出しコマンドを実行したか否かをチェックする(S113)。
そして、ホスト12のCPU211は、確定されたメタデータレイアウトのすべてのメタデータについて、読出しコマンドを実行していない場合には(S113:NO)、次のメLBAを取得して、当該LBAに対応する動的論理ボリューム21に割り当てられたパリティグループ19の物理記憶領域に格納されているメタデータの読出しコマンドを実行する(S112)。
これに対して、ホスト12のCPU211は、確定されたメタデータレイアウトのすべてのメタデータについて、読出しコマンドを実行した場合には(S113:YES)、動的論理ボリューム21に格納されているすべてのファイルデータの読出しを実行する(S114)。
この場合、ホスト12のCPU211は、対応するファイルデータの読出しコマンドをストレージシステム11に送信する。ストレージシステム11のポートプロセッサ107は、当該読出しコマンドに基づいて、動的論理ボリューム21に格納されているすべてのファイルデータを読み出して、ホスト12に送信する。このとき、ストレージシステム11のポートプロセッサ107は、コマンド処理モードがフラグ操作モードであるため、ファイルデータが格納されている物理記憶領域に対応するエクステントを解放不可エクステントとして認識するようになされている。
続いて、ホスト12のCPU211は、動的論理ボリューム21に格納されている、例えば、ジャーナル等のファイルデータではないが、動的論理ボリューム21に格納されているすべての必要なデータの読出しを実行する(S115)。
この場合、ホスト12のCPU211は、対応する必要なデータの読出しコマンドをストレージシステム11に送信する。ストレージシステム11のポートプロセッサ107は、当該読出しコマンドに基づいて、動的論理ボリューム21に格納されているすべての必要なデータを読み出して、ホスト12に送信する。このとき、ストレージシステム11のポートプロセッサ107は、コマンド処理モードがフラグ操作モードであるため、必要なデータが格納されている物理記憶領域に対応するエクステントを解放不可エクステントとして認識するようになされている。
続いて、ホスト12のCPU211は、この後、図23に示す解放不可エクステントアクセス処理手順RT9を終了する(S116)。
このようにして、記憶システム1では、ファイルシステム232が動的論理ボリューム21に格納しているメタデータ及びファイルデータを読み出して、当該メタデータ及びファイルデータが格納されている物理記憶領域に対応するエクステントを解放不可エクステントとして認識し、解放不可エクステントとして認識されていないパリティグループ19の物理記憶領域を動的論理ボリューム21から解放することにより、第1の実施の形態のようにブロック状態処理プログラム244という特殊な処理プログラムを追加せず、通常のファイルシステム232に依存してメタデータ及びファイルデータを読み出すため、一段と簡易な構成で、不要な物理記憶領域を動的論理ボリューム21から解放することができる。
(3)第3の実施の形態
第3の実施の形態による記憶システム1は、解放不可エクステントアクセス処理が異なっていることを除いて、第1の実施の形態による記憶システム1と同様に構成されている。
図25は、第3の実施の形態における容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの内容を概略的に示した概念図である。ここで、第3の実施の形態における記憶システム1の解放不可エクステントアクセス処理について詳細に説明する。図26は、この記憶システム1における解放不可エクステントアクセス処理に関するホスト12の具体的な処理手順を示したフローチャートである。
ホスト12のCPU211は、初期時、図26に示す解放不可エクステントアクセス処理手順RT10に従って、解放不可エクステントアクセス処理を実行して、第1の実施の形態による解放不可エクステントアクセス処理手順RT7のステップS91〜ステップS93と同様の処理を実行する(S121〜S123)。
これに対して、ホスト12のCPU211は、設定されたLBAが使用中である場合には(S122:YES)、当該LBAをストレージシステム11に通知する(S124)。
この場合、ホスト12のCPU211は、設定されたLBAの通知を指示する制御指示を作成し、当該制御指示を共有メモリ部102(制御論理ボリューム22)に送信する。
ストレージシステム11のポートプロセッサ107は、当該制御指示に基づいて、プール管理テーブル134を参照して、設定されたLBAに対応するエクステントのアクセスフラグ管理欄193を「TRUE」に変更することにより、当該エクステントを解放不可エクステントとして認識するようになされている。
続いて、ホスト12のCPU211は、第1の実施の形態による解放不可エクステントアクセス処理手順RT7のステップS95〜ステップS96と同様の処理を実行し(S125〜S126)、この後、図26に示す解放不可エクステントアクセス処理手順RT10を終了する(S127)。
このようにして、記憶システム1では、設定されたLBAが使用中である場合には、当該LBAをストレージシステム11に通知して、設定されたLBAに対応するエクステントを解放不可エクステントとして認識し、解放不可エクステントとして認識されていないパリティグループ19の物理記憶領域を動的論理ボリューム21から解放することにより、LBAに対応する物理記憶領域に格納されているデータの読出しを実行する代わりに、設定されたLBAをストレージシステム11に通知することで、データの読出しに伴ってSANネットワークの帯域を圧迫することなく、不要な物理記憶領域を動的論理ボリューム21から解放することができる。
本発明は、動的に容量拡張が可能な論理ボリュームをホスト計算機に提供するストレージシステムを含む記憶システムに適用することができる。
第1の実施の形態による記憶システムの構成を示す略線図である。 ストレージシステムのハードウェア構成を示す略線図である。 ストレージシステムのソフトウェア構成を示す略線図である。 論理ボリューム管理テーブルの説明に供する概念図である。 論理ボリューム種別管理テーブルの説明に供する概念図である。 動的論理ボリュームモード管理テーブルの説明に供する概念図である。 プール管理テーブルの説明に供する概念図である。 マッピングテーブルの説明に供する概念図である。 ホストのハードウェア構成を示す略線図である。 第1の実施の形態によるホストのソフトウェア構成を示す略線図である。 管理サーバのハードウェア構成を示す略線図である。 管理サーバのソフトウェア構成を示す略線図である。 データ読出し時のコマンド処理の説明に供するフローチャートである。 データ書込み時のコマンド処理の説明に供するフローチャートである。 第1の実施の形態における容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの内容を概略的に示した概念図である。 容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの説明に供するフローチャートである。 容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの説明に供するフローチャートである。 容量情報取得処理の説明に供するフローチャートである。 不使用領域解放処理の説明に供するフローチャートである。 モード変更処理の説明に供するフローチャートである。 第1の実施の形態における解放不可エクステントアクセス処理の説明に供するフローチャートである。 領域解放処理の説明に供するフローチャートである。 第2の実施の形態によるホストのソフトウェア構成を示す略線図である。 第2の実施の形態における解放不可エクステントアクセス処理の説明に供するフローチャートである。 第1の実施の形態における容量情報取得処理及び不使用領域解放処理の全体的な処理の流れの内容を概略的に示した概念図である。 第2の実施の形態における解放不可エクステントアクセス処理の説明に供するフローチャートである。
符号の説明
1……記憶システム、11……ストレージシステム、12……ホスト、14……管理サーバ、16……論理ボリューム、19……パリティグループ、21……動的論理ボリューム、107……ポートプロセッサ、121……論理ボリューム管理テーブル、122……論理ボリューム種別管理テーブル、124……モード変更処理プログラム、125……領域解放処理プログラム、126……動的論理ボリューム解析処理プログラム、133……動的論理ボリュームモード管理テーブル、134……プール管理テーブル、135……マッピングテーブル、193……アクセスフラグ管理欄、203……ロックフラグ管理欄、211…CPU、232……ファイルシステム、243……使用容量取得処理プログラム、244……ブロック状態取得処理プログラム、251……容量情報取得処理プログラム、252……不使用領域解放処理プログラム、261……CPU、291……動的論理ボリューム管理処理プログラム、301……メタデータレイアウト情報

Claims (17)

  1. 動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、前記動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、前記ストレージシステム及び前記ホスト計算機を管理する管理サーバとを含む記憶システムにおいて、
    前記ストレージシステムは、
    前記ホスト計算機から送信された前記データを前記動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる割当て部と、
    前記割当て部により前記動的論理ボリュームに割り当てられた前記記憶領域のうち、前記ファイルシステムが現在使用していると認識している前記記憶領域を管理する管理部と、
    前記管理部により管理されていない前記記憶領域を、当該動的論理ボリュームから解放する解放部と
    を備えることを特徴とする記憶システム。
  2. 前記ホスト計算機は、
    前記動的論理ボリュームから前記データを読み出すデータ読出し部
    を備え、
    前記管理部は、
    前記データ読出し部により読み出された前記データが格納されている前記記憶領域を管理する
    ことを特徴とする請求項1に記載の記憶システム。
  3. 前記データ読出し部は、
    前記動的論理ボリュームに割り当てられている前記記憶領域から前記データ読み出した後に、同一の前記記憶領域から他の前記データを読み出さない
    ことを特徴とする請求項2に記載の記憶システム。
  4. 前記データ読出し部は、
    前記動的論理ボリュームからすべてのメタデータ及びファイルデータを読み出す
    ことを特徴とする請求項2に記載の記憶システム。
  5. 前記ホスト計算機は、
    前記ファイルシステムが現在使用している前記記憶領域を、前記ストレージシステムに通知する通知部
    を備え、
    前記管理部は、
    前記通知部により通知された前記記憶領域を管理する
    ことを特徴とする請求項1に記載の記憶システム。
  6. 前記ホスト計算機は、
    前記ファイルシステムの使用容量を取得する使用容量取得部
    を備え、
    前記ストレージシステムは、
    前記ファイルシステムに対応する前記動的論理ボリュームに割り当てられている前記記憶領域の数を取得する記憶領域数取得部
    を備え、
    前記管理サーバは、
    前記使用容量取得部により取得された前記ファイルシステムの使用容量及び前記記憶領域数取得部により取得された前記ファイルシステムに対応する前記動的論理ボリュームの前記記憶領域の数に基づいて、前記記憶領域を解放する前記動的論理ボリュームを決定する解放決定部
    を備えることを特徴とする請求項1に記載の記憶システム。
  7. 前記解放決定部は、
    前記記憶領域を解放する前記動的論理ボリュームを、前記ファイルシステムの使用容量及び前記ファイルシステムに対応する前記動的論理ボリュームの前記記憶領域の数に基づく使用容量の乖離の大きい前記動的論理ボリュームに決定する
    を備えることを特徴とする請求項6に記載の記憶システム。
  8. 動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、前記動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、前記ストレージシステム及び前記ホスト計算機を管理する管理サーバとを含む記憶システムの記憶領域解放方法において、
    前記ホスト計算機から送信された前記データを前記動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる第1のステップと、
    前記第1のステップにおいて前記動的論理ボリュームに割り当てた前記記憶領域のうち、前記ファイルシステムが現在使用していると認識している前記記憶領域を管理する第2のステップと、
    前記第2のステップにおいて管理していない前記記憶領域を、当該動的論理ボリュームから解放する第3のステップと
    を備えることを特徴とする記憶領域解放方法。
  9. 前記第2のステップでは、
    前記ファイルシステムにより前記動的論理ボリュームから読み出された前記データが格納されている前記記憶領域を管理する
    ことを特徴とする請求項8に記載の記憶領域解放方法。
  10. 前記第2のステップでは、
    前記ファイルシステムにより前記動的論理ボリュームから読み出されたメタデータ及びファイルデータが格納されている前記記憶領域を管理する
    ことを特徴とする請求項8に記載の記憶領域解放方法。
  11. 前記第2のステップでは、
    前記ファイルシステムにより通知された前記記憶領域を管理する
    ことを特徴とする請求項8に記載の記憶領域解放方法。
  12. ホスト計算機から送信された前記データに対して、動的に拡張可能な動的論理ボリュームを提供するストレージシステムにおいて、
    前記ホスト計算機から送信された前記データを前記動的論理ボリュームに格納する際に、当該動的論理ボリュームに所定単位ごとに記憶領域を割り当てる割当て部と、
    前記割当て部により前記動的論理ボリュームに割り当てられた前記記憶領域のうち、前記ファイルシステムが現在使用していると認識している前記記憶領域を管理する管理部と、
    前記管理部により管理されていない前記記憶領域を、当該動的論理ボリュームから解放する解放部と
    を備えることを特徴とするストレージシステム。
  13. 前記管理部は、
    前記ホスト計算機により前記動的論理ボリュームから読み出された前記データが格納されている前記記憶領域を管理する
    ことを特徴とする請求項12に記載のストレージシステム。
  14. 前記管理部は、
    前記ホスト計算機により前記動的論理ボリュームから読み出されたメタデータ及びファイルデータが格納されている前記記憶領域を管理する
    ことを特徴とする請求項12に記載の記憶領域解放方法。
  15. 前記管理部は、
    前記ホスト計算機により通知された前記記憶領域を管理する
    ことを特徴とする請求項12に記載のストレージシステム。
  16. 動的に拡張可能な動的論理ボリュームを提供するストレージシステムと、前記動的論理ボリュームに対してデータを入出力するファイルシステムを有するホスト計算機と、前記ストレージシステム及び前記ホスト計算機を管理する管理サーバとを含む記憶システムにおいて、
    前記ホスト計算機は、
    前記ファイルシステムの使用容量を取得する使用容量取得部
    を備え、
    前記ストレージシステムは、
    前記ファイルシステムに対応する前記動的論理ボリュームに割り当てられている前記記憶領域の数を取得する記憶領域数取得部
    を備え、
    前記管理サーバは、
    前記使用容量取得部により取得された前記ファイルシステムの使用容量及び前記記憶領域数取得部により取得された前記ファイルシステムに対応する前記動的論理ボリュームの前記記憶領域の数に基づいて、前記記憶領域を解放する前記動的論理ボリュームを決定する解放決定部
    を備えることを特徴とする記憶システム。
  17. 前記解放決定部は、
    前記記憶領域を解放する前記動的論理ボリュームを、前記ファイルシステムの使用容量及び前記ファイルシステムに対応する前記動的論理ボリュームの前記記憶領域の数に基づく使用容量の乖離の大きい前記動的論理ボリュームに決定する
    を備えることを特徴とする請求項16に記載の記憶システム。

JP2006081051A 2006-03-23 2006-03-23 記憶システム及び記憶領域解放方法並びにストレージシステム Expired - Fee Related JP4993928B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006081051A JP4993928B2 (ja) 2006-03-23 2006-03-23 記憶システム及び記憶領域解放方法並びにストレージシステム
US11/434,992 US7574577B2 (en) 2006-03-23 2006-05-15 Storage system, storage extent release method and storage apparatus
EP06255687.3A EP1837751B1 (en) 2006-03-23 2006-11-03 Storage system, storage extent release method and storage apparatus
CN200610164348A CN100590607C (zh) 2006-03-23 2006-12-19 存储系统以及存储区域释放方法以及存储装置
US12/505,188 US8069331B2 (en) 2006-03-23 2009-07-17 Storage system, storage extent release method and storage apparatus
US13/293,526 US8347060B2 (en) 2006-03-23 2011-11-10 Storage system, storage extent release method and storage apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006081051A JP4993928B2 (ja) 2006-03-23 2006-03-23 記憶システム及び記憶領域解放方法並びにストレージシステム

Publications (2)

Publication Number Publication Date
JP2007257317A true JP2007257317A (ja) 2007-10-04
JP4993928B2 JP4993928B2 (ja) 2012-08-08

Family

ID=38179545

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006081051A Expired - Fee Related JP4993928B2 (ja) 2006-03-23 2006-03-23 記憶システム及び記憶領域解放方法並びにストレージシステム

Country Status (4)

Country Link
US (3) US7574577B2 (ja)
EP (1) EP1837751B1 (ja)
JP (1) JP4993928B2 (ja)
CN (1) CN100590607C (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093529A (ja) * 2007-10-11 2009-04-30 Hitachi Ltd 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム
JP2009140356A (ja) * 2007-12-07 2009-06-25 Hitachi Ltd 管理装置及び管理方法
WO2011074152A1 (ja) 2009-12-17 2011-06-23 株式会社日立製作所 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
WO2011083505A1 (en) 2010-01-05 2011-07-14 Hitachi, Ltd. Method and server system for testing and executing migration between virtual servers
WO2012011158A1 (en) 2010-07-23 2012-01-26 Hitachi, Ltd. Storage system and method of controlling same
US8127093B2 (en) 2008-09-22 2012-02-28 Hitachi, Ltd. Computer system and control method therefor
WO2013105428A1 (ja) * 2012-01-10 2013-07-18 京セラドキュメントソリューションズ株式会社 画像処理装置および画像形成装置
KR101427535B1 (ko) 2012-08-30 2014-08-07 후지쯔 가부시끼가이샤 정보 처리 장치, 기록 매체 및 영역 해방 제어 방법
JP2016103278A (ja) * 2011-08-26 2016-06-02 ヴイエムウェア インコーポレイテッドVMware,Inc. オブジェクト・ストレージ・システムにアクセスするコンピュータ・システム

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2581555C (en) * 2007-03-07 2015-11-24 Digital Multitools, Inc. Method and system for arbitrating computer access to a shared storage medium
US20090234982A1 (en) * 2008-03-13 2009-09-17 Inventec Corporation Method of identifying and dynamically updating storage device status at target
JP2010020441A (ja) * 2008-07-09 2010-01-28 Hitachi Ltd 計算機システム、構成管理方法及び管理計算機
CN102334093B (zh) * 2009-03-18 2017-08-01 株式会社日立制作所 存储控制装置以及虚拟卷的控制方法
US8639876B2 (en) * 2010-01-27 2014-01-28 International Business Machines Corporation Extent allocation in thinly provisioned storage environment
US8656136B2 (en) 2010-02-05 2014-02-18 Hitachi, Ltd. Computer system, computer and method for performing thin provisioning capacity management in coordination with virtual machines
US8856389B1 (en) * 2010-09-01 2014-10-07 Smsc Holdings S.A.R.L. Efficient data transfers over serial data streams
US8533420B2 (en) * 2010-11-24 2013-09-10 Microsoft Corporation Thin provisioned space allocation
JP5821392B2 (ja) * 2011-08-12 2015-11-24 富士通株式会社 ストレージ装置、およびストレージ管理方法
US9063883B2 (en) * 2011-09-26 2015-06-23 International Business Machines Corporation Management of point-in-time copy relationship for extent space efficient volumes
EP2811412A4 (en) * 2012-06-25 2016-03-09 Hitachi Ltd COMPUTER SYSTEM AND METHOD FOR MIGRATION OF APPLICATION PROGRAM EXECUTION ENVIRONMENT
TWI492051B (zh) * 2012-09-05 2015-07-11 Silicon Motion Inc 資料儲存裝置與快閃記憶體控制方法
KR20140039756A (ko) * 2012-09-25 2014-04-02 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
US9323471B2 (en) * 2014-01-28 2016-04-26 International Business Machines Corporation Management of extent migration on tiered storage
CN104301080B (zh) * 2014-09-18 2018-09-18 株洲南车时代电气股份有限公司 一种机车重联通讯装置及控制方法
US9798494B2 (en) 2015-01-30 2017-10-24 International Business Machines Corporation Preallocating storage space for an application operation in a space efficient volume
US9804778B2 (en) 2015-01-30 2017-10-31 International Business Machines Corporation Preallocating storage space for an application operation in a space efficient volume
CN105630410B (zh) * 2015-12-03 2018-08-07 上海磁宇信息科技有限公司 使用非易失随机读写存储芯片动态管理文件存储区的方法
US10853233B2 (en) * 2016-10-18 2020-12-01 Toshiba Memory Corporation Reconstruction of address mapping in a host of a storage system
CN109213429B (zh) * 2017-06-30 2021-07-23 伊姆西Ip控股有限责任公司 存储管理方法和设备
US10649688B1 (en) * 2018-11-01 2020-05-12 Intel Corporation Precise longitudinal monitoring of memory operations
JP2021002125A (ja) * 2019-06-20 2021-01-07 富士通株式会社 管理装置,情報処理システムおよび管理プログラム
US11138115B2 (en) * 2020-03-04 2021-10-05 Micron Technology, Inc. Hardware-based coherency checking techniques
US11287987B2 (en) * 2020-03-04 2022-03-29 Micron Technology, Inc. Coherency locking schemes
US11474885B2 (en) * 2020-04-07 2022-10-18 Micron Technology, Inc. Method for an internal command of a first processing core with memory sub-system that caching identifiers for access commands

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0793192A (ja) * 1993-09-28 1995-04-07 Toshiba Corp ファイル管理方法
JP2003085014A (ja) * 2001-09-12 2003-03-20 Toshiba Corp ネットワークシステムのボリューム管理方法及び計算機
JP2004265110A (ja) * 2003-02-28 2004-09-24 Hitachi Ltd メタデータ配置方法、プログラムおよびディスク装置
JP2005050024A (ja) * 2003-07-31 2005-02-24 Toshiba Corp 計算機システムおよびプログラム
JP2005092308A (ja) * 2003-09-12 2005-04-07 Hitachi Ltd ディスク管理方法およびコンピュータシステム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0473802B1 (en) * 1990-09-03 1995-11-08 International Business Machines Corporation Computer with extended virtual storage concept
US5355374A (en) * 1992-05-08 1994-10-11 Scientific-Atlanta, Inc. Communication network with divisible auxilliary channel allocation
US5649152A (en) * 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US6249792B1 (en) * 1998-12-16 2001-06-19 Microsoft Corporation On-line dynamic file shrink facility
WO2002065275A1 (en) * 2001-01-11 2002-08-22 Yottayotta, Inc. Storage virtualization system and methods
US20020161982A1 (en) * 2001-04-30 2002-10-31 Erik Riedel System and method for implementing a storage area network system protocol
JP4175788B2 (ja) * 2001-07-05 2008-11-05 株式会社日立製作所 ボリューム制御装置
US7461404B2 (en) * 2002-11-04 2008-12-02 Mazu Networks, Inc. Detection of unauthorized access in a network
US7028157B2 (en) * 2003-04-24 2006-04-11 International Business Machines Corporation On-demand allocation of data structures to partitions
US6823442B1 (en) * 2003-05-12 2004-11-23 3Pardata, Inc. Method of managing virtual volumes in a utility storage server system
JP4438457B2 (ja) * 2003-05-28 2010-03-24 株式会社日立製作所 記憶領域割当方法、システム及び仮想化装置
US7603532B2 (en) * 2004-10-15 2009-10-13 Netapp, Inc. System and method for reclaiming unused space from a thinly provisioned data container
JP4927408B2 (ja) 2006-01-25 2012-05-09 株式会社日立製作所 記憶システム及びそのデータ復元方法
US20080085471A1 (en) * 2006-10-10 2008-04-10 Anderson Brent A Photolithographic method using multiple photoexposure apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0793192A (ja) * 1993-09-28 1995-04-07 Toshiba Corp ファイル管理方法
JP2003085014A (ja) * 2001-09-12 2003-03-20 Toshiba Corp ネットワークシステムのボリューム管理方法及び計算機
JP2004265110A (ja) * 2003-02-28 2004-09-24 Hitachi Ltd メタデータ配置方法、プログラムおよびディスク装置
JP2005050024A (ja) * 2003-07-31 2005-02-24 Toshiba Corp 計算機システムおよびプログラム
JP2005092308A (ja) * 2003-09-12 2005-04-07 Hitachi Ltd ディスク管理方法およびコンピュータシステム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093529A (ja) * 2007-10-11 2009-04-30 Hitachi Ltd 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム
JP2009140356A (ja) * 2007-12-07 2009-06-25 Hitachi Ltd 管理装置及び管理方法
US8521984B2 (en) 2008-09-22 2013-08-27 Hitachi, Ltd. Computer system and control method therefor
US8127093B2 (en) 2008-09-22 2012-02-28 Hitachi, Ltd. Computer system and control method therefor
US8775765B2 (en) 2008-09-22 2014-07-08 Hitachi, Ltd. Computer system and control method therefor
WO2011074152A1 (ja) 2009-12-17 2011-06-23 株式会社日立製作所 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
US8825725B2 (en) 2009-12-17 2014-09-02 Hitachi, Ltd. Management server, management method, and management program for execution on a management server
WO2011083505A1 (en) 2010-01-05 2011-07-14 Hitachi, Ltd. Method and server system for testing and executing migration between virtual servers
US8271559B2 (en) 2010-07-23 2012-09-18 Hitachi, Ltd. Storage system and method of controlling same
WO2012011158A1 (en) 2010-07-23 2012-01-26 Hitachi, Ltd. Storage system and method of controlling same
JP2016103278A (ja) * 2011-08-26 2016-06-02 ヴイエムウェア インコーポレイテッドVMware,Inc. オブジェクト・ストレージ・システムにアクセスするコンピュータ・システム
CN106168884A (zh) * 2011-08-26 2016-11-30 威睿公司 访问对象存储系统的计算机系统
CN106168884B (zh) * 2011-08-26 2019-06-28 威睿公司 访问对象存储系统的计算机系统
WO2013105428A1 (ja) * 2012-01-10 2013-07-18 京セラドキュメントソリューションズ株式会社 画像処理装置および画像形成装置
KR101427535B1 (ko) 2012-08-30 2014-08-07 후지쯔 가부시끼가이샤 정보 처리 장치, 기록 매체 및 영역 해방 제어 방법

Also Published As

Publication number Publication date
US7574577B2 (en) 2009-08-11
US20070226447A1 (en) 2007-09-27
EP1837751B1 (en) 2016-02-17
CN100590607C (zh) 2010-02-17
US20120054462A1 (en) 2012-03-01
EP1837751A3 (en) 2009-02-04
US20090282209A1 (en) 2009-11-12
EP1837751A2 (en) 2007-09-26
US8069331B2 (en) 2011-11-29
US8347060B2 (en) 2013-01-01
JP4993928B2 (ja) 2012-08-08
CN101042676A (zh) 2007-09-26

Similar Documents

Publication Publication Date Title
JP4993928B2 (ja) 記憶システム及び記憶領域解放方法並びにストレージシステム
JP5069011B2 (ja) ストレージモジュール及び容量プール空き容量調整方法
JP5341184B2 (ja) ストレージシステム及びストレージシステムの運用方法
US7480780B2 (en) Highly available external storage system
JP4890033B2 (ja) 記憶装置システム及び記憶制御方法
JP4920976B2 (ja) データ移動方法及びストレージシステム
US7587553B2 (en) Storage controller, and logical volume formation method for the storage controller
JP4217273B2 (ja) ストレージシステム
US20110153967A1 (en) Storage area dynamic assignment method
US20060074957A1 (en) Method of configuration management of a computer system
JP2007133854A (ja) リソース割り当てのためのコンピュータ化されたシステムと方法
JP2007102760A (ja) ストレージエリアネットワークにおけるボリュームの自動割り当て
JP2009043030A (ja) ストレージシステム
EP1569083A2 (en) Storage system, computer system and a method of establishing volume attribute
JP2005228278A (ja) 記憶領域の管理方法、管理装置及び管理プログラム
US20070192553A1 (en) Backup apparatus and backup method
WO2018158808A1 (ja) 情報システム、管理プログラム及び情報システムのプログラム交換方法
JP2008084094A (ja) 記憶システム及びその管理方法並びに記憶制御装置
US8677094B2 (en) Storage system, release method, and secondary storage apparatus
JP2007133807A (ja) データ処理システム、ストレージ装置及び管理装置
JP2006155640A (ja) アクセスの設定方法
JP5597266B2 (ja) ストレージシステム
JP7113698B2 (ja) 情報システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081215

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110922

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

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

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

Free format text: PAYMENT UNTIL: 20150518

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