JP2008146574A - 記憶制御装置及び記憶制御方法 - Google Patents

記憶制御装置及び記憶制御方法 Download PDF

Info

Publication number
JP2008146574A
JP2008146574A JP2006335903A JP2006335903A JP2008146574A JP 2008146574 A JP2008146574 A JP 2008146574A JP 2006335903 A JP2006335903 A JP 2006335903A JP 2006335903 A JP2006335903 A JP 2006335903A JP 2008146574 A JP2008146574 A JP 2008146574A
Authority
JP
Japan
Prior art keywords
data
volume
storage
area
storage area
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.)
Pending
Application number
JP2006335903A
Other languages
English (en)
Inventor
Toshiya Seki
俊哉 関
Eiju Katsuragi
栄寿 葛城
Takashi Sakaguchi
孝 坂口
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 JP2006335903A priority Critical patent/JP2008146574A/ja
Priority to US11/702,122 priority patent/US7681002B2/en
Priority to EP10168362A priority patent/EP2239655B1/en
Priority to EP12193460A priority patent/EP2562636A3/en
Priority to EP07254024A priority patent/EP1936488A3/en
Publication of JP2008146574A publication Critical patent/JP2008146574A/ja
Priority to US12/700,975 priority patent/US8219774B2/en
Priority to US13/025,451 priority patent/US8180989B2/en
Priority to US13/529,432 priority patent/US8627038B2/en
Pending legal-status Critical Current

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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Abstract

【解決課題】実際のデータを削除することなくデータの管理情報を削除するだけであっても、不要なデータが格納された記憶領域を認識して、当該記憶領域をホスト装置が有効に利用することができる記憶制御技術を提供する。
【解決手段】ホスト200のファイルシステムがデータの管理情報を削除した場合、制御回路100はホストからのコマンドを受けて、データの削除の対象となった、プールボリュームのページの全エリアに「0」を書き込む。制御回路は全エリアに「0」が書かれたページを検出して、仮想ボリューム10への割り当てから解放する。
【選択図】図4

Description

本発明はホスト装置とハードディスク等の記憶装置との間のデータのやり取りを仲介制御する記憶制御技術に関する。
この種の記憶制御装置は、上位装置から記憶装置へのデータの書き込み要求及びデータの読み込み要求に基づいて、上位装置と記憶装置との間の前記データの移動を制御する。記憶制御装置は記憶装置の記憶領域を論理化して上位装置に提供する。上位装置は論理ボリュームにアクセスして記憶領域へデータを書き込み、或いは記憶領域からデータを読み込むことができる。記憶制御装置はストレージサブシステムとも呼ばれ、上位装置と一体になってストレージシステムを構成する。記憶装置は複数の記憶デバイスを備えている。記憶デバイスの例はハードディスクドライブである。
最近では、上位装置が取り扱うデータ量が大幅に増えていることから、論理ボリュームの記憶容量であるボリュームサイズもこれに見合ったものにしなければならない。最初から大きなサイズの論理ボリュームを上位装置に割り当てておけば、上位装置にとって記憶容量の不足は起こらない。しかしながら、上位装置がそれほど大量のデータを取り扱わない場合には、上位装置に割り当てられた記憶領域に未使用の領域が残り記憶資源が浪費されることになる。
そこで、上位計算機のプロセッサがボリュームに書き込みを行った時に初めて、ボリュームに記憶領域を割り当てることが提案されている(特開2005−11316号公報)。さらに、米国特許第6,823,442号公報には、上位装置がアクセスするボリュームをストレージシステムに設け、このボリュームに物理的記憶領域を割り当てることが記載されている。
なお、その他関連する従来例として、特開2005−128771号公報には、データを記憶する物理ストレージを有しアクセス要求を受けてその物理ストレージをアクセスするデータアクセスサーバと、そのデータアクセスサーバにアクセス要求を送りデータアクセスサーバをデータ保存のために利用してデータファイリングを行なうデータファイルサーバとを備えたデータファイルシステム等に関し、論理ブロックが不使用になったときに物理ブロックを有効に解放することが記載されている。
また、特開2004−127301号公報には、仮想記憶空間と、物理記憶空間と、仮想記憶空間の複数のアドレスを物理記憶空間の各アドレスに関連付けるように構成されたマッピングシステムと、順序に従ってマッピングシステムの除去部分を指定する優先順位付け規定に従って、マッピングシステムの一部を自動的に除去するように構成されたコントローラと、を備える記憶システムが記載されている。さらに、本願に関連する従来技術として、特開2005―234820号公報がある。
特開2005-11316号公報 米国特許第6,823,442号公報 特開2005−128771号公報 特開2004−127301号公報 特開2005−234820号公報
本願出願人はストレージシステムにおいて記憶資源を有効に活用するためにAllocation on Use(AOU)という技術を開発した。記憶制御装置は、それ自身記憶領域を持たない仮想ボリュームを上位装置に提供し、この仮想ボリュームに記憶装置の実記憶領域が割り当てられたプールと呼ばれる論理ボリュームを対応させている。上位装置が仮想ボリュームにライトアクセスすると、記憶制御装置は上位装置によってアクセスされた仮想ボリュームの領域にプールに含まれる記憶領域を割り当てる。この割り当ては、上位装置が仮想ボリュームに新たな書き込みをアクセスした際に実行される。記憶領域は、見かけ上大きな記憶容量を持つ仮想ボリュームを上位装置に見せるに過ぎない。したがって、記憶制御装置は最初から大きな容量の記憶領域を上位装置に割り当てるのではなく、その都度記憶領域を割り当てるので、上位装置は記憶装置の記憶資源を有効に利用することができる。
上位装置がデータを削除する場合、実際のデータを削除することなくデータの管理情報を削除するだけであると、記憶制御装置は不要なデータが格納された記憶領域を認識できずに、不要なデータが格納された記憶領域がそのまま記憶装置に残り、この記憶領域が累積的にたまっていくおそれがあり、これでは上位装置は記憶装置の記憶資源を有効に利用することができない。
そこで、本発明は、実際のデータを削除することなくデータの管理情報を削除するだけであっても、不要なデータが格納された記憶領域を認識して、当該記憶領域をホスト装置が有効に利用することができる記憶制御技術を提供することを目的とするものである。
本発明の他の目的は、この記憶領域を上位装置への割り当てから解放して当該記憶領域をホスト装置が有効に利用できるようにする、記憶制御制御技術を提供することある。さらに、本発明の他の目的は、既述のAOU方式において、記憶資源をさらに有効利用可能な記憶制御装置及び記憶制御方法を提供することにある。
前記目的を達成するために、本発明は、上位装置からアクセスされない不要なデータが格納された記憶領域を検出して、検出された記憶領域を上位装置への割り当てから解放することができる記憶制御装置及び記憶制御方法を提供することを特徴とするものである。
即ち本発明は、上位装置から記憶装置へのデータの書き込み要求及び当該データの読み込み要求に基づいて、前記上位装置と前記記憶装置との間の前記データの移動を制御する制御回路を備える、記憶制御装置において、前記制御回路は、前記上位装置がアクセス可能であり、前記記憶装置の実記憶領域が割り当てられていない第1のボリュームと、前記実記憶領域が割り当てられる第2のボリュームと、前記第1のボリュームの前記上位装置がアクセスする論理領域と、前記第2のボリュームの前記実記憶領域との対応関係を規定した制御テーブルと、を備え、前記上位装置から前記第1のボリュームの前記論理領域に書き込み要求があった場合、前記実記憶領域を前記第2のボリュームに割り当てるとともに、前記テーブルに前記第1のボリュームの前記論理領域と前記第2のボリュームの前記実記憶領域との前記対応関係を前記制御テーブルに登録し、前記第1のボリュームの前記論理領域に読み込み要求があった場合、前記テーブルを参照して前記読み込み要求あった前記論理領域に対応する前記第2のボリュームの前記実記憶領域からデータを読み込んで前記上位装置に当該データを提供し、前記上位装置から前記データの削除要求を受けて、当該データの格納先である前記論理領域に前記対応関係で対応付けられている前記第2のボリュームの前記実記憶領域を前記対応関係から解放する、事を特徴とするものである。
さらに、本発明は、上位装置から記憶装置へのデータの書き込み要求及び当該データの読み込み要求に基づいて、前記上位装置と前記記憶装置との間の前記データの移動を制御する制御回路を備える記憶制御装置の記憶制御方法において、前記制御回路は、前記上位装置からアクセスされない不要なデータが格納された記憶領域を検出して、検出された記憶領域を上位装置への割り当てから解放する、事を特徴とするものである。
本発明によれば、実際のデータを削除することなくデータの管理情報を削除するだけであっても、不要なデータが格納された記憶領域を認識し、この記憶領域を上位装置への割り当てから解放して当該記憶領域をホスト装置が有効に利用できるようにする、記憶制御装置を提供することができる。
次に本発明を実施するための実施形態について説明する。図1は本発明に係わる記憶制御装置を備えるストレージシステムの一例に係わるハードウエアブロック図である。
図1は、本発明が適用される記憶制御装置600と上位装置である情報処理装置(ホスト)とからなるストレージシステムのハードウエアブロック図である。なお、図1において、記憶制御装置600を、記憶デバイス300を含むものとして説明するが、記憶デバイスを別構成にしても良い。
記憶制御装置600は複数の記憶デバイス300と、情報処理装置200からの入出力要求に応答して記憶デバイス300への入出力制御を行う制御回路100と、を備えて構成されている。
情報処理装置200は上位装置に相当し、CPUやメモリ等を備えたサーバ(ホスト)や、ストレージ装置の管理用コンピュータからなり、例えば、ワークステーション、メインフレームコンピュータ、パーソナルコンピュータ等で構成される。情報処理装置200は複数台のコンピュータをネットワーク接続して構成することもできる。情報処理装置200はオペレーティングシステム上で動作するアプリケーションプログラムを実装している。アプリケーションプログラムとしては、例えば、銀行の自動預金預け払いシステムや航空機の座席予約システム等がある。また、サーバとしては、アプリケーションを実行する、更新系サーバや、更新系サーバのバックエンドでバックアップなどを実行するバックアップサーバが存在する。
情報処理装置1乃至3(200)はLAN(Local Area Network)400を介してストレージ装置600と接続されている。LAN400は、例えば、イーサネット(登録商標)やFDDI等の通信網であり、情報処理装置1乃至3(200)と記憶制御装置600との間の通信はTCP/IPプロトコルスイートによって行われる。情報処理装置1乃至3(200)からは記憶制御装置600に対してファイル名指定によるデータアクセス要求(ファイル単位でのデータ入出力要求。以下、ファイルアクセス要求と称する。)が後述のチャネル制御部CHN1乃至CHN4(110)に送信される。
LAN400にはバックアップデバイス910が接続されている。バックアップデバイス910は、例えば、MO、CD−R、DVD−RAM等のディスク系デバイス、DATテープ、カセットテープ、オープンテープ、カートリッジテープ等のテープ系デバイスである。バックアップデバイス910はLAN400を介して記憶デバイス制御装置100との間で通信を行うことにより記憶デバイス300に記憶されているデータのバックアップデータを記憶する。また、バックアップデバイス910は情報処理装置1(200)と接続し、情報処理装置1(200)を介して記憶デバイス300に記憶されているデータのバックアップを取得する。
制御回路100はチャネル制御部CHN1乃至4(110)を備える。制御回路は、チャネル制御部CHN1乃至4(110)とLAN400とを介して、情報処理装置1乃至3(200)と、バックアップデバイス910と、記憶デバイス300との間のライトアクセス又はリードアクセスを媒介する。チャネル制御部CHN1乃至4(110)は情報処理装置1乃至3(200)からのファイルアクセス要求を個々に受け付ける。すなわち、チャネル制御部CHN1乃至4(110)には個々にLAN400上のネットワークアドレス(例えば、IPアドレス)が割り当てられていて、それぞれが個別にNASとして振る舞い、個々のNASがあたかも独立したNASが存在するかのようにNASとしてのサービスを情報処理装置1乃至3(200)に提供することができる。このように1台の記憶制御装置に個別にNASとしてのサービスを提供するチャネル制御部CHN1乃至4(110)を備えるように構成したことで、従来、独立したコンピュータで個々に運用されていたNASサーバが一台の記憶制御装置に集約される。そして、これにより記憶制御装置600の統括的な管理が可能となり、各種設定・制御や障害管理、バージョン管理といった保守業務の効率化が図られる。
情報処理装置3乃至4(200)はSAN500を介して、制御回路100と接続されている。SAN500は、記憶デバイス300が提供する記憶領域におけるデータの管理単位であるブロックを単位として情報処理装置3乃至4(200)との間でデータの授受を行うためのネットワークである。SAN500を介して行われる情報処理装置3乃至4(200)と制御回路100との間の通信は一般にSCSIプロトコルに従って行われる。情報処理装置3乃至4(200)からは、記憶制御装置600に対して、ファイバチャネルプロトコルに従ってブロック単位のデータアクセス要求(以下、ブロックアクセス要求と称する。)が送信される。
SAN500にはSAN対応のバックアップデバイス900が接続されている。SAN対応バックアップデバイス900は、SAN500を介して制御回路100との間で通信を行うことにより、記憶デバイス300に記憶されているデータのバックアップデータを記憶する。
制御回路100はチャネル制御装置CHN1乃至4(110)に加えて、更にチャネル制御部CHF1乃至2,CHA1乃至2(110)を備える。制御回路100はチャネル制御部CHF1乃至2(110)とSAN500とを介して、情報処理装置3乃至4(200)及びSAN対応バックアップデバイス900との間の通信を行う。チャネル制御部は、上位装置からのアクセスコマンドを処理する。
情報処理装置5(200)は、更に、LAN400やSAN500等のネットワークを介さずに制御回路100と接続されている。この情報処理装置5(200)の例は、例えばメインフレームコンピュータである。情報処理装置5(200)と制御回路100との間の通信は、例えばFICON(Fiber Connection)(登録商標)やESCON(Enterprise System Connection)(登録商標)、ACONARC(Advanced Connection Architecture)(登録商標)、FIBARC(Fiber Connection Architecture)(登録商標)などの通信プロトコルに従って行われる。情報処理装置5(200)からは記憶制御装置600に対して、これらの通信プロトコルに従ってブロックアクセス要求が送信される。制御回路100は、チャネル制御部CHA1乃至2(110)を通じて情報処理装置5(200)との間で通信を行う。
SAN500には、他のストレージ装置610が接続されている。ストレージ装置610は、制御回路100に自身の記憶資源を提供する。情報処理装置に対する見かけ上の記憶領域が、ストレージ装置610によって拡張されたことになる。なお、ストレージ装置610はSAN500以外にもATMなどの通信回線により記憶制御装置600に接続していることもある。また、ストレージ装置610を記憶制御システムに直接接続することもできる。
このように、記憶制御装置600内にチャネル制御部CHN1乃至4(110)チャネル制御部CHF1乃至2(110)、チャネル制御部CHA1乃至2(110)を混在させて装着させることにより、異種ネットワークに接続できるストレージシステムを実現できる。即ち、チャネル制御部CHN1乃至4(110)を用いてLAN400に接続し、かつチャネル制御部CHF1乃至2(110)を用いてSAN500に接続するという、SAN−NAS統合ストレージシステムが実現できる。
接続部150は、各々のチャネル制御部110、共有メモリ120、キャッシュメモリ130、及び各々のディスク制御部140を相互に接続する。これらのチャネル制御部110、共有メモリ120、キャッシュメモリ130、及びディスク制御部140相互間のコマンド又はデータの送受信は接続部150を介して行われる。接続部150は例えば高速スイッチングによりデータ伝送を行う超高速クロスバスイッチ等の高速バスで構成される。これにより、チャネル制御部110相互間の通信パフォーマンスが大幅に向上するとともに、高速なファイル共有機能や高速フェイルオーバー等が可能になる。
共有メモリ120、及びキャッシュメモリ130はチャネル制御部110、及びディスク制御部140が共用するメモリ装置である。共有メモリ120は主として制御情報やコマンド等を記憶するために利用され、キャッシュメモリ130は主としてデータを記憶するために利用される。例えば、あるチャネル制御部110が情報処理装置200から受け取ったデータ入出力コマンドが書き込みコマンドであった場合に、当該チャネル制御部110はその書き込みコマンドを共有メモリ120に書き込むとともに、情報処理装置200から受け取ったライトデータをキャッシュメモリ130に書き込む。
一方、ディスク制御部140は共有メモリ120を監視しており、共有メモリ120に書き込みコマンドが書き込まれたと判定すると、当該書き込みコマンドに従ってキャッシュメモリ130からライトデータを読み出して、これを記憶デバイス300に書き込む。
一方、あるチャネル制御部110が情報処理装置200から受け取ったデータ入出力コマンドが読み出しコマンドであった場合に、当該チャネル制御部110はその読み出しコマンドを共有メモリ120に書き込むとともに、読み出し対象となるデータがキャッシュメモリ130に存在しているか否かをチェックする。ここで、読み出し対象となるデータがキャッシュメモリ130に存在している場合には、チャネル制御部110はそのデータをキャッシュメモリ130から読み取って情報処理装置200に送信する。読み出し対象となるデータがキャッシュメモリ130に存在していない場合には、共有メモリ120に読み出しコマンドが書き込まれたことを検出したディスク制御部140は読み出し対象となるデータを記憶デバイス300から読み出してこれをキャッシュメモリ130に書き込むとともに、その旨を共有メモリ120に書き込む。チャネル制御部110は共有メモリ120を監視することにより、読み出し対象となるデータがキャッシュメモリ130に書き込まれたことを検出すると、そのデータをキャッシュメモリ130から読み出して情報処理装置200に送信する。
ディスク制御部140はチャネル制御部110から送信された論理アドレス指定による記憶デバイス300へのデータアクセス要求を、物理アドレス指定によるデータアクセス要求に変換し、チャネル制御部110から出力されるI/O要求に応答して記憶デバイス300へのデータの書き込み又は読み取りを行う。記憶デバイス300がRAID構成されている場合には、ディスク制御部140はRAID構成に従ったデータのアクセスを行う。すなわち、ディスク制御部は、記憶デバイスであるHDDの制御、RAIDグループの制御を行う。複数のHDDの記憶領域によってRAIDグループが構成されている。
記憶デバイス300は単一又は複数のディスクドライブ(物理ボリューム)を備えており、情報処理装置200からアクセス可能な記憶領域を提供する。記憶デバイス300が提供する記憶領域には単一又は複数の物理ボリュームの記憶空間を合わせた論理ボリュームが設定されている。記憶デバイス300に設定される論理ボリュームには、情報処理装置200からアクセス可能なユーザ論理ボリュームや、チャネル制御部110の制御のために使用されるシステム論理ボリュームがある。システム論理ボリュームにはチャネル制御部110で実行されるオペレーティングシステムも格納されている。また、記憶デバイ
ス300が、上位装置に提供する論理ボリュームには、各々のチャネル制御部110がアクセス可能な論理ボリュームが割り当てられている。もとより、複数のチャネル制御部110が同一の論理ボリュームを共有することもできる。
尚、記憶デバイス300として、例えば、ハードディスク装置等を用いることができる。記憶デバイス300のストレージ構成として、例えば、複数の記憶デバイス300によりRAID方式のディスクアレイを構成してもよい。また、記憶デバイス300と記憶デバイス制御装置100は直接接続してもよく、ネットワークを介して接続してもよい。更に、記憶デバイス300は制御回路と一体に構成してもよい。さらに、記憶デバイスとしてフラッシュメモリなど半導体メモリを使用することもできる。
管理端末160は記憶制御装置600を保守・管理するためのコンピュータ装置であり、内部LAN151を通じて各々のチャネル制御部110とディスク制御部140に接続している。オペレータは管理端末160を操作することで記憶デバイス300のディスクドライブの設定、論理ボリュームの設定、チャネル制御部110やディスク制御部140で実行されるマイクロプログラムのインストール等を行うことが可能である。この種の制御は、管理端末に基づくもののほか、上位装置(ホスト)上で動作するプログラムがネットワークを経由するものに基づいても良い。
図2に先に説明したAOUを利用したストレージシステムの機能ブロック図を説明する。制御回路100は、ホスト200に対して仮想ボリューム10(10A,10B)を提供する。仮想ボリューム10はそれ自体実際の記憶領域を備えない論理ボリュームである。ホストは仮想ボリューム10の論理領域にアクセスする。仮想ボリューム10は10Aと10Bとから構成されている。仮想ボリューム10はホストに割り当てられている。ホストは仮想ボリューム10Aの論理領域18Aに、仮想ボリューム10Bの論理領域20Aにそれぞれアクセスする。符号16はホストからの仮想ボリュームに対するリード又はライトアクセスを示す。
制御回路100はさらに、ホスト200に対してプールボリューム12(12A,12B,12C)を提供する。プールボリュームには記憶デバイス300(300A,300B)の実記憶領域が割り当てられている。符号18Cは記憶デバイス300Aの実記憶領域(PDEV:物理ボリューム)である。この記憶領域はプールボリューム12Aに割り当てられている。さらに、記憶デバイス300Bの実記憶領域20Cがプールボリューム12Cに割り当てられている。
符号14は、仮想ボリュームの論理領域とプールボリュームの記憶領域との対応関係を示すマッピングテーブルである。符号18Bは仮想ボリューム10Aの論理領域18Aとプールボリューム12Aの実記憶領域18Cとの対応関係に係る制御情報である。符号20Bは仮想ボリュームの10Bの論理領域20Aとプールボリューム12Cの実記憶領域との対応関係に係る制御情報である。マッピングテーブルには、これら制御情報が含まれている。仮想ボリューム18、プールボリューム12、マッピングテーブルに関する情報は、共有メモリ120に格納されている。
制御情報18Bと20Bは、特定仮想ボリュームの領域(論理アドレス)と特定プールボリュームの実記憶領域の論理アドレスとを互いに対応させた情報から構成されている。既述のAOUでは、制御回路100はホストから仮想ボリュームの、実記憶領域がマッピングされていない論理領域に書き込みアクセスがあると、これを契機として、仮想ボリュームの論理領域にプールボリュームの実記憶領域をマッピングさせる。ホストから制御回路100にリードコマンドが発行されたら、制御回路は、ホストがアクセスした仮想ボリュームのアクセス先論理領域に対応するプールボリュームの領域からデータをサーチして読み出し、このデータをホストに対して送信する。制御装置100は仮想ボリュームの見かけ上の容量をホストに見せている。
仮想ボリュームの論理領域に対してマッピングされる、プールボリュームの実記憶領域の単位は適宜選択される。一例として、ページと称される512Mバイトの容量がある。マッピングテーブル14は、仮想ボリューム上のページ単位での論理領域と同じくページ単位でのプールボリューム上の実記憶領域とを対応付け(マッピング)している。なお、論理領域及び記憶領域の最小単位はスロットと称される、一例として約256Kバイトである。既述のページは複数のスロットの集合である。スロットの単位を基準にして、マッピングテーブルを設定しても良い。なお、マッピングをページ単位で行なったのは、例えばスロット単位でマッピングを行なうと、マッピングテーブルが複雑化するのでこれを避けるためである。
ホストは、図3に示すように、ファイルシステム200Aを備えている。符号18Eは、仮想ボリューム10Aの論理領域18Aに対するデータの管理情報であり、符号20Eは仮想ボリューム20Aの論理領域20Aに対するデータの管理情報である。ファイルシステムは、ホストのローカルメモリ内にこの管理情報を備えている。図3は、ホストのファイルシステム200Aが仮想ボリューム10Aの論理領域18Aに対するデータを削除する際、そのデータ自体を削除するのではなくその管理情報18Eを削除することを示している。このデータは、対応付け情報18Bを介して、論理領域18Aにマッピングされたプールボリューム12Aの実記憶領域18Cに存在する。
管理情報18Eを削除すると、それ以後ホストは論理領域18Eにアクセスすることはできない。しかしながら、これでは仮想ボリューム10Aが削除されないかぎり、実記憶領域18Cがマッピングテーブルにそのまま残ることになり、かつ、実記憶領域18Cにそのまま不要なデータが残ることになる。既述のとおり、これでは記録資源を有効利用することができない。
そこで、図4に示すように、ホスト200に常駐ソフトウエア200Bを設け、ホスト200のファイルシステムが仮想ボリューム10Aの論理領域18Aに対応するデータを削除するタイミングで、常駐ソフトウエア200Bが制御回路100に論理領域18Aに対応する記憶領域18Cに特定データの書き込み命令15を送信する。
特定データとは、記憶領域18Cを仮想ボリューム10Aに対するマッピングから解放することを、制御回路100が判別可能にするためのデータである。制御回路100はこの特定データを持った記憶領域18Cを検出して、ホストが削除したデータに対する仮想ボリュームの論理領域18Aとのマッピングからこの記憶領域を解放する。この解放は、マッピングテーブル14から制御情報18Bを削除することにより行なわれる。
この後、制御回路100はこの記憶領域18Cを未使用の記憶領域として認識し、ホストから仮想ボリュームにデータの書き込みがあった際にデータ書き込み先の論理ボリュームにこの記憶領域を新たにマッピングしてホストから送られたデータを格納する。図4において、特定データとは、記憶領域18Cの全ビット(全エリア)に書き込まれるデータであり、例えば、「0」である。
制御回路100が全ビットに「0」が記録されたページをプールボリュームの中から検索して、マッピングテーブルからこのページを解放するタイミングは、LDEVフォーマットやリモートコピーペア作成時などのイベントに伴う契機、オペレータによる命令の契機や、或いは予め定まった時刻による契機である。制御回路は各プールボリュームの全論理アドレスを走査して全ビットに「0」が格納されたページを検出する。
図2乃至4において、ホスト200から仮想ボリューム10に対するアクセス、そして、仮想ボリュームの論理領域に対応する、プールボリュームの実記憶領域の認識は、図1のチャネル制御部110が行なう。マッピングテーブルは共有メモリ120に格納されている。マッピングテーブルの設定や更新は管理端末を利用してオペレータによって共有メモリ120に登録される。実記憶領域へのデータの格納、実記憶領域からのデータの読み出しはディスク制御部140によって実行される。実記憶領域に対応する、仮想ボリュームの論理領域をマッピングテーブルから把握することもディスク制御部140が実行する。
但し、図4のように、全ビットに「0」が格納されているページについてのマッピングをキャンセルすることに一つの懸念がある。すなわち、ホストからのライトアクセスによって、ページの全ビットに「0」が格納されている場合である。このページは、既述の説明に従うと制御回路によって仮想ボリュームとのマッピングが解放されてしまう。この場合、ホストから仮想ボリュームを介してこのページにリードアクセスがあっても、制御回路はこのページをホストにもはや提供することができない。
そこで、図4に示すように、マッピングテーブルでプールボリュームの実領域にマッピングされていない、仮想ボリュームの領域18Gにホスト200からリードアクセスがあった場合、プールボリュームに予め格納された、全ビットに「0」が登録されたリザーブ用ページ18Fを、制御回路100が仮想ボリュームの論理領域18Gを介してホストに提供する。この際、リザーブ用ページを仮想ボリュームにマッピングしても良い。
次に、キャッシュメモリを介したデータのリード・ライトアクセスを図5に基づいて説明する。図5は仮想ボリューム(“AOUVol”と標記することにする。)にホストからリード要求があった場合の、制御回路100の動作を示すフローチャートである。図6はその動作を示すストレージシステムのブロック図である。図6において、矢印に付された算用数字は図5のフローチャートにおける各ステップの説明の冒頭に付された算用数字に対応する。なお、以後の説明では、スロット単位で、仮想ボリュームの論理領域とプールボリュームの実記憶領域とが対応付けられているものとする。
以下、図5のフローチャートを説明するが、図6のブロック図を同時に参照されたい。ホスト200がチャネル制御部110にAOUVolに対するリード要求を発行する(1)。チャネル制御部は共有メモリ120のマッピングテーブル(VFSテーブル)を参照して、プールボリュームのスロットがマッピングされているかをチェックする(2)。
チャネル制御部がこの判定を否定した場合には、既述のリザーブページをディスクアダプタによってプールボリュームから読み出し、これをホストに提供する(7)。一方、チャネル制御部が判定(2)を肯定した場合には、マッピングテーブルを参照して、チャネル制御部は、プールボリュームのスロット♯2の固有情報(プールボリュームのIDやプールボリューム上の論理アドレス)を取得する(3)。
図7は、リードデータを格納するキャッシュメモリ130の管理テーブルである。このキャッシュ管理テーブルは、スロット♯2の固有情報とキャッシュ制御情報(キャッシュメモリ上のアドレス、データ属性、キュー情報など)とを関連させて記憶している。キャッシュ管理テーブルは共有メモリ120に登録されている。
チャネル制御部は、キャッシュ管理テーブルを参照して、マッピングテーブルから取得されたスロット♯2の固有情報が、キャッシュ管理テーブルに存在するか否かをチェックする(4)。この判定が肯定された場合は、チャネルアダプタは、スロット♯2のデータがキャッシュ上にあるとして、当該キャッシュ領域をキャッシュ管理テーブルから取得して、このキャッシュ領域にアクセスして、ここに格納されているデータを読み出す(6)。チャネル制御部は読み出したデータ(6)をホストに送信する(8(図6では「8―1」である。))。
一方、チャネル制御部が、スロット♯2がキャッシュ管理テーブルに登録されていないと判定した場合は、スロット♯2のデータはキャッシュに無いからディスク制御部130がプールボリュームのスロット♯2にアクセスして、このスロット♯2からデータを読み出し(5)、チャネル制御部は、このデータをホストに送信する(8(図6では「8―2」である。))。チャネル制御部はスロット#2の管理情報とスロット#2に対するキャッシュ管理情報とをキャッシュ管理テーブルに登録する(4)。
したがって、図5乃至図7の方式によれば、AOU制御方式においてキャッシュメモリを利用することができるようになるため、制御回路はホストからのリードアクセスに対して素早くデータをホストに返すことができる。AOU制御方式では、仮想ボリュームのエリアを、マッピングテーブルを用いてプールボリュームのエリア変換する必要があり、これがオーバーヘッドになるおそれがあるが、キャッシュメモリを介することでこのオーバーヘッドを緩和することができる。
次に、図8はホストがAOUVolにライトアクセスする場合(1)のフローチャートである。図9はこのフローチャートに対応するブロック図である。ホストがアクセスしたAOUVolのスロットに対応する、プールボリュームのスロットがマッピングテーブルにマッピングされていない場合(2)、チャネル制御部はプールボリュームの新たなスロットをマッピングテーブルに登録し(4)、登録したスロット♯2を取得する(5)。チャネル制御部はスロット#2の固有情報をキャッシュ管理テーブルに登録する(図9の6―1)とともに、キャッシュメモリにホストからのライトデータを書き込む(6(図9では「6―2」である。))。チャネル制御部は書き込み終了報告をホストに対して行なう(7)。ディスク制御部は、これらライトデータのキャッシュへの書き込みとは非同期に、キャッシュ管理テーブルを参照して、スロット#2の固有情報をキーにして、キャッシュ上のデータを複数の記憶デバイス上に設定されているプールボリューム12のスロット#2の論理アドレスに書き込む(8)。
AOUVolのスロットに対してプールボリュームがマッピングされている判定(2)が肯定された場合は、チャネル制御部は、マッピンテーブルからスロット#2の論理アドレスを取得して(3)、キャッシュメモリにライトデータを書き込む(6)。
既述の例は、図7のキャッシュ管理テーブルのように、プールボリュームのスロット#2に基づいてキャッシュメモリを管理したが、次にAOUVolのスロット#1に基づいてキャッシュメモリの記憶領域を管理する実施形態について説明する。図11はそのフローチャート、図12はフローチャートに対応するブロック図である。
ホストがAOUVolに対してリードアクセスを発行すると(1)、チャネル制御部は、スロット♯1が、図13に示すキャッシュ管理テーブルに登録されているかをチェックする(2)、これが肯定されるとチャネル制御部はキャッシュメモリ管理テーブルを参照してスロット#1に対応するキャッシュ領域からデータを読み出し(7)、読み出したデータをホストに提供する(8)。
スロット♯1がキャッシュ管理テーブルに登録されていない場合は、ディスク制御部は、スロット#1に対してプールボリュームのスロット♯2がマッピングされているかをチェックする(3)。これが否定判定されると、チャネル制御部は、ディスク制御部を介してプールボリュームから既述のリザーブページ18Fを読み出し(6)、これをホストに提供する(8)。ディスク制御部は、プールボリュームがスロット♯1にマッピングされている場合は、マッピングテーブルからスロット♯2の情報を取得する(4)。
次いで、ディスク制御部は、プールボリュームのスロット♯2(18C)に対応する論理アドレスからデータを読み出し(5)、これをホストのリードアクセスに対して返信する(8)。
図14はAOUVolにライトアクセスがあった場合におけるフローチャート及び図15はそのフローチャートに対応するストレージシステムの機能ブロック図である。ホストがAOUVolにライトアクセスを発すると(1)、ライトアクセス対象の論理領域(スロット♯1)を図13に示すキャッシュ管理テーブルに登録するとともに、キャッシュ管理テーブルを参照して当該キャッシュ管理テーブルに登録されたキャッシュ領域にライトデータを書き込む(2)。次いで、チャネル制御部はライトデータを記憶制御装置に書き込んだことを終了した通知をホストに報告する(3)。
次いで、キャッシュメモリのデータをプールボリュームにデステージする際、スロット♯1にプールボリュームのスロットがマッピングされているかをディスク制御部がチェックする。これを否定判定すると、ディスク制御部はプールボリュームの新たなスロット#2をマッピングテーブルに登録する(6)。ディスク制御は登録したスロット#2のアドレスなどの固有情報を取得し(7)、このスロット♯2の固有情報に基づいてプールボリュームのスロット♯2に対応する領域にライトデータを書き込む(8)。ディスク制御部は、マッピングテーブルにプールボリュームがマッピングされているかの判定を肯定した場合は、マッピングテーブルからスロット♯2の固有情報を取得する(5)。さらに、ディスク制御部は、プールボリュームのスロット♯2の領域にデータを書き込む(8)。
図16及び図17はAOUVolのスロット#1でキャッシュ管理を行い、さらにプールボリュームのスロット#2でもキャッシュ管理を行なう実施形態を示したものである。図16はAOUVolにホストからリードアクセス(1)があった場合のフローチャートであり、図17はフローチャートに対応する記憶制御システムの機能ブロック図である。
チャネル制御部はスロット♯1に対応するデータがキャッシュメモリ上にあるか否かをチェックする(2)。この判定を肯定した場合は、チャネル制御部は図13に示すキャッシュ管理テーブル(A)を参照して、スロット♯1に対するキャッシュメモリ上のデータを読み出し(7)、これをホストに送信する(8)。
チャネル制御部が、スロット♯1に対応するデータがキャッシュ上に無いことを判定した場合(2)は、チャネル制御部はマッピングテーブルを参照して、スロット♯1にマッピングされたプールボリューム内のスロット#2があるか否かをチェックする(3)。チャネル制御部がこの判定を否定した場合は、チャネル制御部は、ディスク制御部を介してプールボリュームから、全ビットに「0」が設定されたリザーブページ18Fを読み出し(6)、これをホストに送信する(8(図17では「8―1」である。)。
チャネル制御部がマッピングテーブルにプールボリュームのスロットが登録されていることを確認した場合は、このマッピングテーブルからスロット#2の情報を取得する(4)。次いで、ディスク制御装置はプールボリュームのスロット♯2(18C)の領域からデータを読み出し(5)、読み出したデータをホストにリードアクセスの返信として送る(11)。
次いで、チャネル制御部は、スロット♯2の固有情報と、これに対応させるキャッシュメモリ上のアドレスとを対応させて、これらを図7のキャッシュ管理テーブル(B)に登録するとともに、プールボリュームから読み出したデータをキャッシュメモリに登録する(9)。さらに、キャッシュメモリは、スロット#2に対するスロット#1とキャッシュ制御情報をキャッシュ管理テーブル(B)からキャッシュ管理テーブル(A)に登録し、かつキャッシュメモリ内においてスロット#2が対応する領域からスロット#1が対応する領域に、スロット#2のデータをコピーする(10)。
したがって、ホストからこのスロット♯1に対してリードアクセスがあった場合、チャネル制御部は、記憶デバイスのプールボリュームを参照することなく、キャッシュメモリのデータをホストに迅速に返すことができる。
図18と図19は、図17のリードアクセスに対してホストからAOUVolにライトアクセスがあった場合の例である。チャネル制御部は、ホストからAOUVolにライトアクセスを受領すると(1)、ライトアクセス対象のスロット#1をキーにしてキャッシュ管理テーブルAを参照してキャッシュメモリにライトデータを書き込む(2)。チャネル制御部は次いで書き込み終了をホストに報告する。
ディスク制御部はマッピングテーブルを参照して、スロット#1にプールボリュームがマッピングされているかを判定する(4)。この判定が否定された場合は、ディスク制御部はプールボリュームの実記憶領域をマッピングテーブルに登録する。ディスク制御部は登録したスロット#2を取得する(7)。スロット#1に対してマッピングテーブルが登録されている場合には、ディスク制御部は、マッピングテーブルからプールボリュームのスロット#2を取得する(5)。次いで、キャッシュ制御部はスロット#2の固有データをキャッシュ管理テーブルBに登録し、スロット#1に対するライトデータに係るキャッシュ制御情報をキャッシュ管理テーブルAからキャッシュ管理テーブルBにコピーし、これをスロット#2に対するキャッシュ管理情報としてキャッシュ管理テーブルBに登録する。さらに、キャッシュ管理テーブルAによって定まる、キャッシュメモリの領域からキャッシュ管理テーブルBによって定まるキャッシュメモリの他の領域にライトデータをコピーあるいは移動する(8)。
キャッシュ制御部は、所定時間後キャッシュ管理テーブルBを参照してスロット#2に対するキャッシュ制御情報を取得し、キャッシュメモリの特定の領域からライトデータをプールボリュームに書き込む(9)。
図10は、通常共有メモリ上に保持するマッピングテーブルをチャネルアダプタのローカルメモリ置いた場合における制御回路の動作を示すフローチャートである。チャネル制御部がAOUVolに対してホストからリード要求を受け取ると(S100)、ローカルメモリ上にローカルメモリ(LM)マッピングテーブル(図20)が登録されているかを判定する(S102)。
チャネル制御部がこの判定を肯定すると、マッピングテーブルからスロット#2の特有情報を取得する(S106)。一方、この判定を否定すると、チャネル制御部は共有メモリ上のマッピングテーブル(VFSテーブル)を参照して、スロット#1に対してプールボリュームがマッピングされているかをチェックする(S104)。チャネル制御部がこの判定を否定すると、全ビットに「0」が登録されて既述のリザーブページをプールボリュームから読み出す(S116)。チャネル制御部がこの判定を肯定するとVFSテーブルからスロット#2の情報を取得する(S108)。
ステップ110において、チャネル制御部はスロット♯2がキャッシュ管理テーブルに登録されているか否か、即ち、スロット#2に対応するデータがキャッシュメモリ上に格納されているかを判定する。この判定が肯定されると、チャネル制御部はキャッシュメモリ上のデータを読み出して読み出し(S114)をホストに送信する(S112)。この判定が否定されると、チャネル制御部は、プールボリュームのスロット#2からリードアクセスの対象となったデータを読み出して(S112)、これをホストに送信する(S118)。
次に、AOU方式において、ストレージの増設に関するシステム管理者向けモニタ表示について説明する。ストレージを増設すべきか否かの判断情報として、プールボリュームの使用率、即ちプールボリュームに存在する実記憶領域の使用率、そして、定義した仮想ボリュームの実際の使用量がある。
プールボリュームの使用率について説明する。図21のモニタ表示(このモニタ表示は管理端末160のものであるが)において、個々のAOUボリューム(仮想ボリューム)のプールボリュームの使用量の時間経過とプール全体の使用量及び警告閾値の関係などが管理されている。プールの使用量が警告閾値を超えたところでストレージの増設を促すメッセージを管理端末が出力するなどによって、プールの拡張容量を見積もることもできる。
定義したAOUボリュームの実際の使用量について説明する。管理端末は、AOUボリュームの容量のうち、実際のデータが入っている容量(ページとマッピングされている容量)をモニタに表示する。この表示により、ホストの認識しているデータ使用量と制御回路が認識しているデータの使用量とを、管理端末が比較することが可能になる。この二つにずれがある、即ち、制御回路に不要ファイルがマッピングされたままの多い状態を管理端末が把握し、システム管理者は不要領域削除機能(全ビットが「0」で格納されたページを削除する機能)の実施のタイミングを見積もることができる。
既述の実施形態では、ホストに常駐し、データを管理するプログラムが実記憶領域の全ビットに「0」を格納する命令を制御回路に発するようにしたが、制御回路が定期的にホストのファイルシステムの管理情報をチェックし、このチェック結果に基づいて、仮想ボリュームに対するマッピングから解放された実記憶領域に「0」データを記録するようにしても良い。また、ホストとしてはオープン系及びメインフレーム系のものを記憶制御装置に適用可能である。
本発明に係わる記憶制御装置を備えたコンピュータシステムのブロック図である。 AOU方式を示す、図1のシステムの概略ブロック図である。 AOU方式の課題を説明するための、図1のシステムに係るブロック図である。 本発明の動作を説明するための、図1のシステムに係るブロック図である。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第1の例に係るストレージシステムのフローチャートである。 図5のフローチャートに対応するブロック図である。 プールボリュームのスロットとキャッシュメモリとを対応させるためのキャッシュ制御テーブルである。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第2の例に係るストレージシステムのフローチャートである。 図8に対応するブロック図である。 仮想ボリュームの領域とプールボリュームの領域とを対応させるマッピングテーブルであって、チャネル制御部のローカルメモリに保存されたマッピングテーブルである。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第3の例に係るストレージシステムのフローチャートである。 図11のフローチャートに対応するブロック図である。 仮想ボリュームのスロットとキャッシュメモリとを関係付ける制御テーブルである。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第4の例に係るストレージシステムのフローチャートである。 図14のフローチャートに対応するブロック図である。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第5の例に係るストレージシステムのフローチャートである。 図16のフローチャートに対応するブロック図である。 AOU方式の記憶制御処理にキャッシュメモリを利用した、第6の例に係るストレージシステムのフローチャートである。 図18に対応するブロック図である。 プールボリュームの使用率などの管理情報を管理端末を介して保守員に表示する表示手段の一例である。 AOUボリューム(仮想ボリューム)のプールボリュームの使用量の時間経過とプール全体の使用量及び警告閾値の関係などが管理するための、モニタの表示例である。
符号の説明
10(10A,10B):仮想ボリューム、12(12A,12B,12C):プールボリューム、14:マッピングテーブル、18A,20A:仮想ボリュームの論領域(ページ又はスロット)、18B,20B:マッピング情報、18C,20C:実記憶領域(ページ又はスロット)、100:制御回路、200:ホスト(上位装置)、300:記憶デバイス、600:記憶制御装置

Claims (11)

  1. 上位装置から記憶装置へのデータの書き込み要求及び当該データの読み込み要求に基づいて、前記上位装置と前記記憶装置との間の前記データの移動を制御する制御回路を備える、記憶制御装置において、
    前記制御回路は、
    前記上位装置がアクセス可能であり、前記記憶装置の実記憶領域が割り当てられていない第1のボリュームと、
    前記実記憶領域が割り当てられる第2のボリュームと、
    前記第1のボリュームの前記上位装置がアクセスする論理領域と、前記第2のボリュームの前記実記憶領域との対応関係を規定した制御テーブルと、
    を備え、
    前記上位装置から前記第1のボリュームの前記論理領域に書き込み要求があった場合、前記実記憶領域を前記第2のボリュームに割り当てるとともに、前記テーブルに前記第1のボリュームの前記論理領域と前記第2のボリュームの前記実記憶領域との前記対応関係を前記制御テーブルに登録し、
    前記第1のボリュームの前記論理領域に読み込み要求があった場合、前記テーブルを参照して前記読み込み要求あった前記論理領域に対応する前記第2のボリュームの前記実記憶領域からデータを読み込んで前記上位装置に当該データを提供し、
    前記上位装置から前記データの削除要求を受けて、当該データの格納先である前記論理領域に前記対応関係で対応付けられている前記第2のボリュームの前記実記憶領域を前記対応関係から解放する、
    記憶制御装置。
  2. 前記制御回路は、前記対応関係から解放されるべき前記実記憶領域に特定データを格納する、請求項1記載の記憶制御装置。
  3. 前記制御回路は、前記特定データが書き込まれた前記実記憶領域を所定のタイミングで検出する、請求項2記載の記憶制御装置。
  4. 前記上位装置のファイルシステムが前記データの削除を当該データの管理情報の削除によって行い、前記制御回路は、前記上位装置の特定プログラムからのコマンドを受けて、前記対応関係から解放されるべき前記実記憶領域に前記特定データを書き込む、請求項2記載の記憶制御装置。
  5. 前記実記憶領域の全エリアに、前記特定データとして同一のデータを書き込む、請求項2記載の記憶制御装置。
  6. 前記制御回路は前記特定データとして“0”を前記実記憶領域に強制的に書き込む、請求項5記載の記憶制御装置。
  7. 前記制御回路は、前記特定データが書き込まれた前記実記憶領域を前記第2のボリュームにリザーブ用記憶領域として蓄え、
    前記制御回路は、前記上位装置がアクセスした前記第1のボリュームの前記論理領域に対応する、前記第2のボリュームの前記実記憶領域が前記テーブルに登録されていないことを判定した場合には、前記リザーブ用記憶領域を前記上位装置に提供する、請求項2記載の記憶制御装置。
  8. 前記制御回路は、前記特定データが書き込まれた前記実記憶領域の検出を、前記データの削除のタイミングとは非同期に行なう、請求項3記載の記憶制御装置。
  9. 前記制御回路は、
    キャッシュメモリと、
    前記第1のボリュームの前記論理領域及び前記第2のボリュームの前記実領域の少なくとも一つと前記キャッシュメモリの記憶領域とを関連付けた制御情報と、を備え、
    前記ホストのリード又はライトアクセスによる当該ホストに対する前記データの移動制御を、前記第2の制御テーブルに基づいて前記キャッシュメモリを介して行なう、請求項1記載の記憶制御装置。
  10. 上位装置から記憶装置へのデータの書き込み要求及び当該データの読み込み要求に基づいて、前記上位装置と前記記憶装置との間の前記データの移動を制御する制御回路を備える記憶制御装置の記憶制御方法において、
    前記制御回路は、前記上位装置からアクセスされない不要なデータが格納された記憶領域を検出して、検出された記憶領域を上位装置への割り当てから解放する、記憶制御方法。
  11. 上位装置から記憶装置へのデータの書き込み要求及び当該データの読み込み要求に基づいて、前記上位装置と前記記憶装置との間の前記データの移動を制御する制御回路を備える、記憶制御装置において、
    前記制御回路は、
    キャッシュメモリと、
    前記上位装置がアクセス可能であり、前記記憶装置の実記憶領域が割り当てられていない第1のボリュームと、
    前記実記憶領域が割り当てられる第2のボリュームと、
    前記第1のボリュームの前記上位装置がアクセスする論理領域と、前記第2のボリュームの前記実記憶領域との対応関係を規定した第1の制御テーブルと、
    前記第1のボリュームの前記論理領域及び前記第2のボリュームの前記実領域の少なくとも一つと前記キャッシュメモリの記憶領域とを関連付けた第2の制御テーブルと、を備え、
    前記上位装置から前記第1のボリュームの前記論理領域に書き込み要求があった場合、前記実記憶領域を前記第2のボリュームに割り当てるとともに、前記テーブルに前記第1のボリュームの前記論理領域と前記第2のボリュームの前記実記憶領域との前記対応関係を前記第1の制御テーブルに登録し、
    前記第1のボリュームの前記論理領域に読み込み要求があった場合、前記テーブルを参照して前記読み込み要求あった前記論理領域に対応する前記第2のボリュームの前記実記憶領域からデータを読み込んで前記上位装置に当該データを提供し、
    前記ホストのリード又はライトアクセスによる当該ホストに対する前記データの移動制御を、前記第2の制御テーブルに基づいて前記キャッシュメモリを介して行なう、記憶制御装置。
JP2006335903A 2006-12-13 2006-12-13 記憶制御装置及び記憶制御方法 Pending JP2008146574A (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP2006335903A JP2008146574A (ja) 2006-12-13 2006-12-13 記憶制御装置及び記憶制御方法
US11/702,122 US7681002B2 (en) 2006-12-13 2007-02-05 Storage controller and storage control method
EP10168362A EP2239655B1 (en) 2006-12-13 2007-10-10 Storage controller and storage control method
EP12193460A EP2562636A3 (en) 2006-12-13 2007-10-10 Storage controller and storage control method
EP07254024A EP1936488A3 (en) 2006-12-13 2007-10-10 Storage controller and storage control method
US12/700,975 US8219774B2 (en) 2006-12-13 2010-02-05 Storage controller and storage control method
US13/025,451 US8180989B2 (en) 2006-12-13 2011-02-11 Storage controller and storage control method
US13/529,432 US8627038B2 (en) 2006-12-13 2012-06-21 Storage controller and storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006335903A JP2008146574A (ja) 2006-12-13 2006-12-13 記憶制御装置及び記憶制御方法

Publications (1)

Publication Number Publication Date
JP2008146574A true JP2008146574A (ja) 2008-06-26

Family

ID=39125270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006335903A Pending JP2008146574A (ja) 2006-12-13 2006-12-13 記憶制御装置及び記憶制御方法

Country Status (3)

Country Link
US (4) US7681002B2 (ja)
EP (3) EP2239655B1 (ja)
JP (1) JP2008146574A (ja)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010072753A (ja) * 2008-09-16 2010-04-02 Hitachi Ltd 自動拡張ボリューム及び省電力機能を備えたストレージシステム
JP2010086394A (ja) * 2008-10-01 2010-04-15 Hitachi Ltd 特定パターンデータが格納される仮想ボリュームへの記憶領域の割り当てを制御するストレージシステム
JP2010211767A (ja) * 2009-03-12 2010-09-24 Fujitsu Ltd アクセス制御装置、ストレージ装置、ネットワーク通信装置、アクセス制御方法、及びアクセス制御プログラム
JP2010541060A (ja) * 2007-10-01 2010-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション シン・プロビジョニングの移行および取り消しのための方法および装置
JP2011028520A (ja) * 2009-07-24 2011-02-10 Nec Corp ディスクアレイ装置及び物理ディスクの復元方法
JP2011048553A (ja) * 2009-08-26 2011-03-10 Nec Corp ストレージ装置、および同装置における実容量割当て方法、ならびに実容量割当てプログラム
JP2011076572A (ja) * 2009-10-02 2011-04-14 Nec Corp ストレージシステム、ストレージ装置、ストレージ装置の記憶内容複製方法およびプログラム
JP2011081580A (ja) * 2009-10-07 2011-04-21 Hitachi Ltd 計算機システム及び計算機システムの入出力方法
JP2011150433A (ja) * 2010-01-19 2011-08-04 Toshiba Corp ストレージ装置及び同ストレージ装置における記憶領域管理方法
WO2012086169A1 (ja) 2010-12-20 2012-06-28 株式会社アルバック 誘電体デバイスの製造方法及びアッシング方法
JP2012177962A (ja) * 2011-02-25 2012-09-13 Hitachi Consumer Electronics Co Ltd 光ディスク装置
JP2012523594A (ja) * 2009-08-31 2012-10-04 株式会社日立製作所 複数のフラッシュパッケージを有するストレージシステム
WO2013014701A1 (en) 2011-07-22 2013-01-31 Hitachi, Ltd. Data storage apparatus and data management method
JP2013506886A (ja) * 2010-01-14 2013-02-28 株式会社日立製作所 ストレージシステム
JP2013516667A (ja) * 2010-04-27 2013-05-13 株式会社日立製作所 ThinProvisioningが適用された、メインフレーム系のストレージ装置
JP2013161148A (ja) * 2012-02-02 2013-08-19 Fujitsu Ltd 仮想ストレージ装置,制御装置及び制御プログラム
US8566543B2 (en) 2011-12-19 2013-10-22 Hitachi, Ltd. Computer system and reclamation control method
KR20140005280A (ko) * 2011-03-11 2014-01-14 마이크로소프트 코포레이션 가상 디스크 저장 기술
US9817582B2 (en) 2012-01-09 2017-11-14 Microsoft Technology Licensing, Llc Offload read and write offload provider

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4646526B2 (ja) * 2004-02-18 2011-03-09 株式会社日立製作所 記憶制御システム及び同システムの制御方法
JP5142629B2 (ja) * 2007-08-22 2013-02-13 株式会社日立製作所 仮想ボリュームのバックアップを行うストレージシステム及び方法
US20090058995A1 (en) * 2007-08-31 2009-03-05 Seiko Epson Corporation Data recording system, program, semiconductor device, and drive recorder
JP2009134397A (ja) * 2007-11-29 2009-06-18 Hitachi Ltd 仮想ボリュームに割り当て済みの全ての実記憶領域を解放するか否かを制御する計算機及び方法
JP5238235B2 (ja) * 2007-12-07 2013-07-17 株式会社日立製作所 管理装置及び管理方法
JP5268617B2 (ja) * 2008-12-17 2013-08-21 キヤノン株式会社 画像形成装置、画像形成装置の制御方法及びコンピュータプログラム
WO2010089797A1 (en) * 2009-02-04 2010-08-12 Hitachi, Ltd. Storage apparatus and method for eliminating redundant data storage using storage apparatus
WO2011096014A1 (ja) 2010-02-05 2011-08-11 株式会社日立製作所 仮想マシンと連携したThin-Provisioning容量管理を行う計算機システム、計算機、及び方法
US10732837B2 (en) * 2010-02-08 2020-08-04 International Business Machines Corporation Pseudo-volume for control and statistics of a storage controller
JP5661313B2 (ja) * 2010-03-30 2015-01-28 キヤノン株式会社 記憶装置
US8713266B2 (en) * 2010-04-15 2014-04-29 Hitachi, Ltd. Storage apparatus and method including page discard processing for primary and secondary volumes configured as a copy pair
US8806134B2 (en) * 2010-04-16 2014-08-12 Pmc-Sierra Us, Inc. Mirrored cache protection
JP5150699B2 (ja) * 2010-10-05 2013-02-20 株式会社バッファロー フェイルオーバ情報管理装置、記憶処理装置及びフェイルオーバ制御方法
JP5255035B2 (ja) * 2010-10-08 2013-08-07 株式会社バッファロー フェイルオーバシステム、記憶処理装置及びフェイルオーバ制御方法
US9514838B2 (en) 2011-05-31 2016-12-06 Micron Technology, Inc. Apparatus including memory system controllers and related methods for memory management using block tables
US9104590B2 (en) * 2012-07-20 2015-08-11 Hitachi, Ltd. Storage system including multiple storage apparatuses and pool virtualization method
WO2014162550A1 (ja) * 2013-04-04 2014-10-09 株式会社 日立製作所 ストレージシステム
KR102581479B1 (ko) * 2016-05-31 2023-09-21 삼성전자주식회사 스토리지 시스템 및 그의 볼륨 관리 방법
WO2019043717A1 (en) * 2017-09-04 2019-03-07 Kaminario Technologies Ltd. SECURE ACCESS CONTROL IN A STORAGE SYSTEM
CN110209354B (zh) * 2019-05-24 2022-04-19 北京百度网讯科技有限公司 用于处理数据的方法、装置、设备和介质
CN111007985B (zh) * 2019-10-31 2021-10-22 苏州浪潮智能科技有限公司 一种存储系统空间回收的兼容处理方法、系统及设备

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3725870A (en) * 1970-12-24 1973-04-03 Pitney Bowes Alpex Parallel-access data file system
USRE36989E (en) * 1979-10-18 2000-12-12 Storage Technology Corporation Virtual storage system and method
US4467421A (en) * 1979-10-18 1984-08-21 Storage Technology Corporation Virtual storage system and method
US4583194A (en) * 1981-12-23 1986-04-15 Pitney Bowes Inc. Fixed disk controller for use in a word processing system
US5809551A (en) * 1991-08-23 1998-09-15 International Business Machines Corporation Pending page release
US5455944A (en) * 1993-03-16 1995-10-03 International Business Machines Corporation Method for managing logging and locking of page free space information in a transaction processing system
US5680640A (en) * 1995-09-01 1997-10-21 Emc Corporation System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state
US6092168A (en) * 1996-10-25 2000-07-18 Hewlett-Packard Co. Data storage system and method for deallocating space by writing and detecting a predefined data pattern
US5953729A (en) * 1997-12-23 1999-09-14 Microsoft Corporation Using sparse file technology to stage data that will then be stored in remote storage
US6385706B1 (en) * 1998-12-31 2002-05-07 Emx Corporation Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations
US6718538B1 (en) * 2000-08-31 2004-04-06 Sun Microsystems, Inc. Method and apparatus for hybrid checkpointing
US6745305B2 (en) 2000-12-13 2004-06-01 Ncr Corporation Zeroed block optimization in disk mirroring applications
US20040139125A1 (en) * 2001-06-05 2004-07-15 Roger Strassburg Snapshot copy of data volume during data access
US6925530B2 (en) * 2001-08-29 2005-08-02 Dot Hill Systems Corp. Initialization of a storage system
US7136883B2 (en) * 2001-09-08 2006-11-14 Siemens Medial Solutions Health Services Corporation System for managing object storage and retrieval in partitioned storage media
US7107385B2 (en) * 2002-08-09 2006-09-12 Network Appliance, Inc. Storage virtualization by layering virtual disk objects on a file system
US8219777B2 (en) 2002-10-03 2012-07-10 Hewlett-Packard Development Company, L.P. Virtual storage systems, virtual storage methods and methods of over committing a virtual raid storage system
US7072917B2 (en) * 2003-04-24 2006-07-04 Neopath Networks, Inc. Extended storage capacity for a network file server
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 株式会社日立製作所 記憶領域割当方法、システム及び仮想化装置
JP2005128771A (ja) 2003-10-23 2005-05-19 Fujitsu Ltd データファイルシステム、データアクセスサーバ、およびデータアクセスプログラム
JP4646526B2 (ja) * 2004-02-18 2011-03-09 株式会社日立製作所 記憶制御システム及び同システムの制御方法
US7225314B1 (en) 2004-05-26 2007-05-29 Sun Microsystems, Inc. Automatic conversion of all-zero data storage blocks into file holes
JP4340616B2 (ja) * 2004-10-04 2009-10-07 富士通株式会社 ディスクアレイ装置
US7603532B2 (en) * 2004-10-15 2009-10-13 Netapp, Inc. System and method for reclaiming unused space from a thinly provisioned data container
US7529921B2 (en) * 2004-12-17 2009-05-05 Cardiac Pacemakers, Inc. Fast initialization of medical device system having multiple operating systems
JP2006335903A (ja) 2005-06-02 2006-12-14 Toray Ind Inc 熱可塑性樹脂組成物
US7469329B2 (en) * 2006-03-30 2008-12-23 International Business Machines Corporation Methods for dynamically resizing memory pools
JP2008112291A (ja) * 2006-10-30 2008-05-15 Hitachi Ltd 記憶制御装置及び記憶制御装置のデータ移動方法
US7822921B2 (en) 2006-10-31 2010-10-26 Netapp, Inc. System and method for optimizing write operations in storage systems
JP2008146536A (ja) * 2006-12-13 2008-06-26 Hitachi Ltd ストレージ装置及びこれを用いたデータ管理方法
JP5087309B2 (ja) * 2007-04-24 2012-12-05 株式会社日立製作所 管理装置及び管理方法
US20090240880A1 (en) * 2008-03-21 2009-09-24 Hitachi, Ltd. High availability and low capacity thin provisioning
TW201007557A (en) * 2008-08-06 2010-02-16 Inventec Corp Method for reading/writing data in a multithread system
JP5138530B2 (ja) * 2008-10-08 2013-02-06 株式会社日立製作所 ストレージ容量仮想化技術における障害管理方式

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010541060A (ja) * 2007-10-01 2010-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション シン・プロビジョニングの移行および取り消しのための方法および装置
US8386744B2 (en) 2007-10-01 2013-02-26 International Business Machines Corporation Thin provisioning migration and scrubbing
JP2010072753A (ja) * 2008-09-16 2010-04-02 Hitachi Ltd 自動拡張ボリューム及び省電力機能を備えたストレージシステム
JP2010086394A (ja) * 2008-10-01 2010-04-15 Hitachi Ltd 特定パターンデータが格納される仮想ボリュームへの記憶領域の割り当てを制御するストレージシステム
US9047016B2 (en) 2008-10-01 2015-06-02 Hitachi, Ltd. Storage system for controlling assignment of storage area to virtual volume storing specific pattern data
US8793461B2 (en) 2008-10-01 2014-07-29 Hitachi, Ltd. Storage system for controlling assignment of storage area to virtual volume storing specific pattern data
JP4724759B2 (ja) * 2009-03-12 2011-07-13 富士通株式会社 アクセス制御装置、ストレージ装置、ネットワーク通信装置、アクセス制御方法、及びアクセス制御プログラム
JP2010211767A (ja) * 2009-03-12 2010-09-24 Fujitsu Ltd アクセス制御装置、ストレージ装置、ネットワーク通信装置、アクセス制御方法、及びアクセス制御プログラム
US8433949B2 (en) 2009-07-24 2013-04-30 Nec Corporation Disk array apparatus and physical disk restoration method
JP2011028520A (ja) * 2009-07-24 2011-02-10 Nec Corp ディスクアレイ装置及び物理ディスクの復元方法
JP2011048553A (ja) * 2009-08-26 2011-03-10 Nec Corp ストレージ装置、および同装置における実容量割当て方法、ならびに実容量割当てプログラム
US8484414B2 (en) 2009-08-31 2013-07-09 Hitachi, Ltd. Storage system having plurality of flash packages
JP2012523594A (ja) * 2009-08-31 2012-10-04 株式会社日立製作所 複数のフラッシュパッケージを有するストレージシステム
JP2011076572A (ja) * 2009-10-02 2011-04-14 Nec Corp ストレージシステム、ストレージ装置、ストレージ装置の記憶内容複製方法およびプログラム
JP2011081580A (ja) * 2009-10-07 2011-04-21 Hitachi Ltd 計算機システム及び計算機システムの入出力方法
JP2013506886A (ja) * 2010-01-14 2013-02-28 株式会社日立製作所 ストレージシステム
US8650360B2 (en) 2010-01-14 2014-02-11 Hitachi, Ltd. Storage system
JP2011150433A (ja) * 2010-01-19 2011-08-04 Toshiba Corp ストレージ装置及び同ストレージ装置における記憶領域管理方法
US8688950B2 (en) 2010-04-27 2014-04-01 Hitachi, Ltd. Mainframe storage apparatus that utilizes thin provisioning
JP2013516667A (ja) * 2010-04-27 2013-05-13 株式会社日立製作所 ThinProvisioningが適用された、メインフレーム系のストレージ装置
US9122416B2 (en) 2010-04-27 2015-09-01 Hitachi, Ltd. Mainframe storage apparatus that utilizes thin provisioning
WO2012086169A1 (ja) 2010-12-20 2012-06-28 株式会社アルバック 誘電体デバイスの製造方法及びアッシング方法
JP2012177962A (ja) * 2011-02-25 2012-09-13 Hitachi Consumer Electronics Co Ltd 光ディスク装置
KR20140005280A (ko) * 2011-03-11 2014-01-14 마이크로소프트 코포레이션 가상 디스크 저장 기술
JP2014512593A (ja) * 2011-03-11 2014-05-22 マイクロソフト コーポレーション 仮想ディスクストレージ技術
KR102047558B1 (ko) * 2011-03-11 2019-11-21 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 가상 디스크 저장 기술
US11614873B2 (en) 2011-03-11 2023-03-28 Microsoft Technology Licensing, Llc Virtual disk storage techniques
WO2013014701A1 (en) 2011-07-22 2013-01-31 Hitachi, Ltd. Data storage apparatus and data management method
US8566558B2 (en) 2011-07-22 2013-10-22 Hitachi, Ltd. Storage apparatus and data management method
US8566543B2 (en) 2011-12-19 2013-10-22 Hitachi, Ltd. Computer system and reclamation control method
US9817582B2 (en) 2012-01-09 2017-11-14 Microsoft Technology Licensing, Llc Offload read and write offload provider
JP2013161148A (ja) * 2012-02-02 2013-08-19 Fujitsu Ltd 仮想ストレージ装置,制御装置及び制御プログラム

Also Published As

Publication number Publication date
US7681002B2 (en) 2010-03-16
EP2239655B1 (en) 2012-06-20
EP1936488A2 (en) 2008-06-25
US20120284476A1 (en) 2012-11-08
EP2562636A3 (en) 2013-03-06
US20100138624A1 (en) 2010-06-03
US20080147961A1 (en) 2008-06-19
EP2239655A2 (en) 2010-10-13
EP2239655A3 (en) 2010-11-03
US8219774B2 (en) 2012-07-10
EP2562636A2 (en) 2013-02-27
US20110138143A1 (en) 2011-06-09
US8627038B2 (en) 2014-01-07
EP1936488A3 (en) 2010-09-01
US8180989B2 (en) 2012-05-15

Similar Documents

Publication Publication Date Title
JP2008146574A (ja) 記憶制御装置及び記憶制御方法
US7949828B2 (en) Data storage control on storage devices
JP4646526B2 (ja) 記憶制御システム及び同システムの制御方法
JP3944449B2 (ja) 計算機システム、磁気ディスク装置、および、ディスクキャッシュ制御方法
JP5069011B2 (ja) ストレージモジュール及び容量プール空き容量調整方法
US8266375B2 (en) Automated on-line capacity expansion method for storage device
JP4961319B2 (ja) 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム
US8650381B2 (en) Storage system using real data storage area dynamic allocation method
US20090300283A1 (en) Method and apparatus for dissolving hot spots in storage systems
JP2009043030A (ja) ストレージシステム
WO2011048640A1 (en) Information system adapted to calculate its required data storage capacity
JP2007304794A (ja) ストレージシステム及びストレージシステムにおける記憶制御方法
JP2009009573A (ja) コマンド・キュー・ローディング
JP2005222404A (ja) 仮想記憶ユニットを備えた記憶制御サブシステム
JP5597266B2 (ja) ストレージシステム
US7844711B2 (en) Volume allocation method
US20050223180A1 (en) Accelerating the execution of I/O operations in a storage system
JP5606583B2 (ja) ストレージ装置及び同装置の制御方法
JP2010257477A (ja) 記憶制御システム及び同システムの制御方法

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090220