JP2006309640A - 記憶制御システム及び記憶制御方法 - Google Patents

記憶制御システム及び記憶制御方法 Download PDF

Info

Publication number
JP2006309640A
JP2006309640A JP2005133978A JP2005133978A JP2006309640A JP 2006309640 A JP2006309640 A JP 2006309640A JP 2005133978 A JP2005133978 A JP 2005133978A JP 2005133978 A JP2005133978 A JP 2005133978A JP 2006309640 A JP2006309640 A JP 2006309640A
Authority
JP
Japan
Prior art keywords
storage
storage control
data
cache memory
control device
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
JP2005133978A
Other languages
English (en)
Other versions
JP4648751B2 (ja
Inventor
Haruaki Watanabe
治明 渡辺
Kenji Yamakami
憲司 山神
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 JP2005133978A priority Critical patent/JP4648751B2/ja
Priority to US11/170,156 priority patent/US7660946B2/en
Priority to DE602006003938T priority patent/DE602006003938D1/de
Priority to EP06250986A priority patent/EP1720101B1/en
Publication of JP2006309640A publication Critical patent/JP2006309640A/ja
Application granted granted Critical
Publication of JP4648751B2 publication Critical patent/JP4648751B2/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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】 複数の記憶制御装置を接続し、一方の記憶制御装置から他方の記憶制御装置にリストアデータを転送する記憶制御システムにおいて、上位装置がリストアデータの転送先の論理ボリュームにアクセスしても、リストアデータに確実にアクセスできるようにした記憶制御システムを提供する。
【解決手段】 第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続して構成され、上位装置からのリクエストに応じたデータ処理を行う記憶制御システムであって、前記第1の記憶制御装置は、前記第2の記憶制御装置の論理ボリュームに対応付けられた仮想ボリュームと、当該仮想ボリュームに対応つけられたキャッシュメモリと、当該キャッシュメモリと仮想ボリュームと間のデータ処理を制御する制御部とを備え、前記制御部は、前記論理ボリュームのリストアデータを前記キャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想ボリュームに対応する、前記キャッシュメモリの記憶領域をパージする。
【選択図】 図9

Description

本発明は、ホストコンピュータが接続されて、当該ホストコンピュータとの間で記憶データの通信を行う記憶制御装置を備えてなる記憶制御システムに関するものである。
例えば、データセンタ等のような大規模なデータを取り扱うデータベースシステムでは、ホストコンピュータとは別に構成された記憶制御システムを用いてデータを管理する。この記憶制御システムは、例えば、ディスクアレイ装置を備えて構成される。ディスクアレイ装置は、多数の記憶デバイスをアレイ状に配設して構成されるもので、例えば、RAID(Redundant Array of Independent Inexpensive Disks)に基づいて構築されている。記憶デバイス群が提供する物理的な記憶領域上には少なくとも1つ以上の論理的な記憶領域である論理ボリュームが形成され、この論理ボリュームが、上位装置としてのホストコンピュータ(より詳しくは、ホストコンピュータ上で稼働するデータベースなどのプログラム)に提供される。ホストコンピュータは、所定のコマンドをディスクアレイ装置に送信することにより、論理ボリュームに対してデータの書込み、読み出しができる。
この種の記憶制御システムにおいて、処理の実行中に発生した障害などによって破壊されたデータをバックアップデータから高速に回復することが行われる。例えば、特開2001−216185号に記載されたディスクアレイ装置では、データを復旧させるために次のように構成されている。ホストは、ペア形成要求およびペア分割要求をディスクアレイ装置に発行し、ボリュームのスナップショットを作成した後、処理を開始する。ディスクサブシステムは、スナップショットの作成以降、更新が行われたデータの位置を差分情報として記憶する。ホストからのデータ復旧要求を受領すると、ディスクアレイ装置は、差分情報に基づいて、更新が行われた箇所のデータをスナップショットからリストアする。
特開2001−216185
前記従来のディスクサブシステムは、一台の記憶制御装置内でのリストアに関するものであり、複数の記憶制御装置を接続し、一方の記憶制御装置から他方の記憶制御装置にデータをリストアする際のデータ復旧のことまでは配慮していない。複数の記憶制御装置間でのデータのリストアは、ホストのパフォーマンスを落とさないようにするために、ホストを経由することなく記憶制御装置間で行われることが望まれるが、リストアデータの送達を受けた記憶制御装置のキャッシュメモリ上にリストア前のデータが残っていると、リストア前のデータがキャッシュヒットしてホストに転送されてしまう。そのため、ホストが、他の記憶制御装置の記憶資源に割り当てられた論理ボリュームにアクセスすると、リストアされるべきデータではなく、リストア前のデータがホストに見えてしまう問題がある。
そこで、本発明は、複数の記憶制御装置を接続し、一方の記憶制御装置から他方の記憶制御装置にリストアデータを転送する記憶制御システムにおいて、上位装置がリストアデータの転送先の論理ボリュームにアクセスしても、リストアデータに確実にアクセスできるようにした記憶制御システム及び記憶制御方法を提供することを目的とする。本発明の他の目的は、キャッシュメモリのパージに要する時間を短縮し、ホストが早くリストアデータにアクセスできるようにした記憶制御システムを提供することにある。
前記目的を達成するために、本発明は、記憶制御装置のキャッシュメモリに残っているリストア前のデータをパージした後、キャッシュメモリの記憶領域にリストアデータを記憶させるように構成されている。
すなわち、本発明は、第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続して構成され、上位装置からのリクエストに応じたデータ処理を行う記憶制御システムであって、前記第1の記憶制御装置は、前記第2の記憶制御装置の論理ボリュームに対応付けられた仮想ボリュームと、当該仮想ボリュームに対応つけられたキャッシュメモリと、当該キャッシュメモリと仮想ボリュームと間のデータ処理を制御する制御部とを備え、前記制御部は、前記論理ボリュームのリストアデータを前記キャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想論理ボリュームに対応する、前記キャッシュメモリの記憶領域をパージするように構成されたことを特徴とするものである。
さらに本発明は、第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続して構成され、上位装置からのリクエストに応じたデータ処理を行う記憶制御システムであって、前記第1及び第2の記憶制御装置はそれぞれ、記憶デバイスと、当該記憶デバイスの論理的な記憶構造であり、前記上位装置からアクセス可能な論理ボリュームと、前記論理ボリュームのデータを記憶するキャッシュメモリと、前記記憶デバイス、前記キャッシュメモリ、そして前記論理ボリュームとの間でのデータ処理を制御する制御部と、を備え、さらに、前記第1の記憶制御装置は、前記第1の記憶制御装置の記憶デバイスに対応付けされることなく、前記第2の記憶制御装置の論理ボリュームに対応付けられ、かつ前記上位装置がアクセス可能な仮想ボリュームを備え、前記第1の記憶制御装置の制御部は、前記第2の記憶制御装置の論理ボリュームのリストアデータを前記第1の制御装置のキャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想ボリュームの管理領域に対応する当該キャッシュメモリの記憶領域をパージするように構成されてなる、ことを特徴とするものである。
本発明の好適な形態では、前記第2の記憶制御装置の論理ボリュームは、コピーペアの関係を形成可能な第1の論理ボリュームと第2の論理ボリュームとを備えてなり、当該第1の論理ボリュームが前記仮想ボリュームに対応付けられている。第2の論理ボリュームから第1の論理ボリュームへデータのリストアが実施される。
前記第2の記憶制御装置の制御部は、前記リストアの命令を受領すると、前記第2の論理ボリュームの記憶データを前記第1の論理ボリュームにコピーし、さらに、当該第1の論理ボリュームのコピーされたデータを前記仮想ボリュームに転送する。前記第1の記憶制御装置の論理ボリュームは前記仮想ボリュームとコピーペアの関係になっている。前記第1の記憶制御装置の制御部が前記第2の記憶制御装置の制御部に、前記リストアの命令を発行する。前記上位装置が前記第2の記憶制御装置の制御部に、前記リストア命令を発行する。
前記第1の記憶制御装置の制御部による前記パージが完了後、前記第2の記憶制御装置の制御部が前記リストアを開始する。前記仮想ボリュームは、前記第1の記憶制御装置のキャッシュメモリの記憶領域との対応関係を制御する情報が設定されたディレクトリ構造を備えており、このディレクトリ構造は、複数の管理領域を備え、各管理領域には、当該管理領域に対応する前記第1の記憶制御装置のキャッシュメモリの記憶領域を特定するための情報が設定されている。前記各管理領域は、前記キャッシュメモリ記憶領域の記憶データの有効又は無効を制御する情報を備えてなる。前記第1の記憶制御装置の制御部は、前記仮想ボリュームの全管理領域の前記特定情報をパージし、次いで、前記第1の記憶制御装置のキャッシュメモリに前記第2の記憶制御装置の論理ボリュームに保存されているデータを割り当て、前記上位装置が当該データにアクセスできるように、構成されてなる。前記第1の記憶制御装置の制御部は、前記仮想ボリュームの一部の管理領域の前記特定情報をパージし、次いで、前記第1の記憶制御装置のキャッシュメモリに前記第2の記憶制御装置の論理ボリュームに保存されているデータを割り当て、前記上位装置が当該データにアクセスできるように、構成されてなる。
前記第1の記憶制御装置の制御部は、前記仮想ボリュームに全体世代番号を、当該仮想ボリュームの各管理領域に個別の世代番号を設定し、前記上位装置がアクセスした前記仮想ボリュームの管理領域の世代番号と前記全体番号を比較し、両者が一致している場合には、当該管理領域に対応するキャッシュメモリ記憶領域のデータを前記リストアデータと判定し、両者が一致していない場合には、前記管理領域に対応するキャッシュメモリの記憶領域のデータをパージし、次いで、当該記憶領域に前記リストアデータを記憶するようにした。前記第1の記憶制御装置の制御部は、前記仮想ボリュームの代表世代番号を、前記上位装置からの前記パージのコマンドを受ける都度、更新するようにした。前記第2記憶制御装置の論理ボリュームに他の上位装置が接続され、当該上位装置からのリストアデータが当該論理ボリュームに記憶されている。前記仮想ボリュームとコピーペアの関係を持つ他の論理ボリュームが前記第1の記憶制御装置に備わっている。
前記パージ処理は、前記第1の記憶制御装置の制御部が、前記仮想ボリュームの管理領域に前記キャッシュメモリの記憶領域との対応関係が無いことを示す制御コードを設定するものである。前記パージ処理は、前記第1の記憶制御装置の制御部が、前記管理領域に、前記キャッシュメモリ記憶領域の記憶データが無効であることを示す制御コードを設定するものである。前記第1の記憶制御装置の制御部は、前記パージ処理された、前記キャッシュメモリの記憶領域に、前記リストアデータを記憶する。
以上説明したように、本発明によれば、複数の記憶制御装置を接続し、一方の記憶制御装置から他方の記憶制御装置にリストアデータを転送する記憶制御システムにおいて、上位装置がリストアデータの転送先の論理ボリュームにアクセスしても、リストアデータに確実にアクセスできるようになった。
本発明の実施形態を以下に説明する。以下に説明する代表的な記憶制御システムは、第1の記憶制御装置に仮想的に論理記憶領域を設定し、この仮想領域に第1の記憶制御装置の外部に存在する第2の記憶制御装置の論理記憶領域を対応付けて(マッピングして)、第1の記憶制御装置が第2の記憶制御装置の記憶領域をあたかも自分の記憶領域であるかのようにしてこれを上位装置に提供している。
図1は、記憶制御システムの要部の構成を示すブロック図である。上位装置としてのホスト装置10は、例えば、CPU(Central Processing Unit)やメモリ等の情報処理資源を備えたコンピュータ装置であり、例えば、パーソナルコンピュータ、ワークステーション、メインフレーム等として構成される。ホスト装置10は、例えば、キーボード、スイッチやポインティングデバイス、マイクロフォン等の情報入力装置(図示せず)と、例えば、モニタディスプレイやスピーカー等の情報出力装置(図示せず)とを備えている。さらに、ホスト装置10には、例えば、第1の記憶制御装置20が提供する記憶領域を使用するデータベースソフトウェア等のアプリケーションプログラム11と、通信ネットワークCN1を介して第1の記憶制御装置20にアクセスするためのアダプタ12とが設けられている。
ホスト装置10は、スイッチ回路SWを備えて構成される通信ネットワークCN1を介して第1の記憶制御装置20に接続されている。通信ネットワークCN1としては、例えば、LAN、SAN、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。LANを介するデータ通信は、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。ホスト装置10がLANを介して第1の記憶制御装置20に接続される場合、ホスト装置10は、ファイル名を指定してファイル単位でのデータ入出力を要求する。一方、ホスト装置10がSANを介して第1の記憶制御装置20等に接続される場合、ホスト装置10は、ファイバチャネルプロトコルに従って、複数のディスク記憶装置(ディスクドライブ)により提供される記憶領域のデータ管理単位であるブロックを単位としてデータ入出力を要求する。通信ネットワークCN1がLANである場合、アダプタ12は、例えばLAN対応のネットワークカードである。通信ネットワークCN1がSANの場合、アダプタ12は、例えばホストバスアダプタである。
スイッチ回路SWは通信ネットワークに接続されたルータや交換機を備えて構成されている。スイッチ回路SWは、第1の記憶制御装置20のエクスターナルポート21Aに、第2の記憶制御装置40のターゲットポート41及び第1の記憶制御装置のターゲットポート21Bを切り換えて接続できるように構成されている。なお、第1の記憶制御装置20は、エクスターナルポート21Aとスイッチ回路SWを介して自筺体のターゲットポート21Bに接続できるように構成されているために、所謂自己ループ式に分類されるものである。各ポート及びスイッチ回路にはネットワーク上のアドレスが設定されている。
第1の記憶制御装置20は、例えば、ディスクアレイサブシステムとして構成されるものである。但し、これに限らず、第1の記憶制御装置20を、高機能化されたインテリジェント型のファイバチャネルスイッチとして構成することもできる。第1の記憶制御装置20は、後述のように、第2の記憶制御装置40の有する記憶資源を自己の論理ボリューム(Logical Unit)としてホスト装置10に提供する。
第1の記憶制御装置20は、コントローラ部と記憶装置部とに大別することができ、コントローラ部は、例えば、複数のチャネルアダプタ(CHA)21と、複数のディスクアダプタ(DKA)22と、サービスプロセッサ(SVP)23と、キャッシュメモリ24と、共有メモリ25と、接続部26とを備えている。このコントローラ部が請求項記載の制御部に対応する。
チャネルアダプタ(CHA)21は、ホスト装置10との間のデータ通信を行うものである。他のチャネルアダプタ21は、第1の記憶制御装置のエクスターナルポート21A、第2の記憶制御装置のターゲットポート41を介して、第2の記憶制御装置40の内部論理ボリュームとデータ通信を行うものである。各チャネルアダプタ21は、それぞれマイクロプロセッサやメモリ等を備えたマイクロコンピュータシステムとして構成されており、ホスト装置10から受信した各種コマンドを解釈して実行する。各チャネルアダプタ21には、それぞれを識別するためのネットワークアドレス(例えば、IPアドレスやWWN)が割り当てられているので、各チャネルアダプタ21は、それぞれが個別にNAS(Network Attached Storage)として振る舞うことができるようになっている。複数のホスト装置10が存在する場合、各チャネルアダプタ21はホスト装置毎に設けられ、各ホスト装置10からの要求をそれぞれ個別に受け付けることができるように構成されている。
各ディスクアダプタ(DKA)22は、記憶装置30の記憶デバイス31,32との間のデータ授受を行うものである。各ディスクアダプタ22は、記憶デバイス31,32に接続するための通信ポート22Aを備えている。また、各ディスクアダプタ22は、マイクロプロセッサやメモリ等を備えたマイクロコンピュータシステムとして構成されている。各ディスクアダプタ22は、チャネルアダプタ21がホスト装置10から受信したデータを、ホスト装置10からのリクエストに基づいて(書込み命令)、所定の記憶デバイス31,32の所定のアドレスに書込み、また、ホスト装置10からのリクエストに基づいて(読み出し命令)、所定の記憶デバイス31,32の所定のアドレスからデータを読み出し、ホスト装置10に送信させる。記憶デバイス31,32との間でデータ入出力を行う場合、各ディスクアダプタ22は、論理的なアドレスを物理的なアドレスに変換する。各ディスクアダプタ22は、記憶デバイス31,32がRAIDに従って管理されている場合は、RAID構成に応じたデータアクセスを行う。
サービスプロセッサ(SVP)23は、装置全体の作動を制御するものである。SVP23には、例えば、管理用クライアント(図示せず)が接続される。SVP23は、装置内の障害発生を監視して管理用クライアントに表示させたり、管理用クライアントからの指令に基づいて記憶ディスクの閉塞処理等を指示するようになっている。さらに、SVP23の管理用クライアントは後述のように仮想ボリュームを定義する処理を実行する。管理用クライアントは、例えばJAVA(登録商標)アプレット上に管理用プログラムが実装して構成されている。
キャッシュメモリ24は、ホスト装置10から受信したデータや、記憶デバイス31,32から読み出したデータを一時的に記憶するものである。共有メモリ25には、第1の記憶制御装置の作動に使用するための制御情報等が格納される。また、共有メモリ25には、ワーク領域が設定されるほか、後述するマッピングテーブルTm等の各種テーブル類も格納される。また、キャッシュメモリ130と共有メモリ140とは、それぞれ別々のメモリとして構成することもできるし、同一のメモリの一部の記憶領域をキャッシュ領域として使用し、他の記憶領域を制御領域として使用することもできる。なお、記憶デバイス31,32のいずれか1つあるいは複数を、キャッシュ用のディスクとして使用してもよい。
接続部26は、各チャネルアダプタ21,各ディスクアダプタ22,SVP23,キャッシュメモリ24,共有メモリ25を相互に接続させる。接続部26は、例えば、高速スイッチング動作によってデータ伝送を行う超高速クロスバスイッチ等のような高速バスとして構成することができる。
記憶装置30は、複数の記憶デバイス31を備えている。記憶デバイス31としては、例えば、ハードディスク、フレキシブルディスク、磁気テープ、半導体メモリ、光ディスク等のようなデバイスを用いることができる。また、例えば、FC(Fibre Channel)ディスクやSATA(Serial AT Attachment)ディスク等のように、異種類のディスクを記憶装置30内に混在させることもできる。記憶装置30内に点線で示される記憶デバイス32は、第2の記憶制御装置40の有する記憶デバイス42を第1の記憶制御装置20側に取り込んだ状態を示すものである。即ち、第1の記憶制御装置20から見て外部に存在する記憶デバイス42を、第1の記憶制御装置20の内部記憶デバイスかのように認識できるようにし、ホスト装置10に外部記憶デバイス42の記憶資源を提供する。このことは後述のように、第1の記憶制御装置20内の中間論理記憶領域である仮想ボリュームに第2の記憶制御装置40の論理ボリュームをマッピングすることにより可能になる。キャッシュメモリ24の記憶空間を利用して、仮想ボリュームが構築される。第1の記憶制御装置20に形成された仮想ボリュームは、第1の記憶制御装置20内の実論理ボリュームとともにホスト装置10に認識される。なお、図1に点線で示される外部の記憶デバイス32とのデータ交換は第2の記憶制御装置40のディスクアダプタによって実行される。
第2の記憶制御装置40は、通信ポート(ターゲットポート)41と記憶デバイス42とを備えている。このほか、チャネルアダプタやディスクアダプタ等を備えることもできる。第2の記憶制御装置40は、スイッチ回路SWを介して第1の記憶制御装置20に接続されており、第2の記憶制御装置40の記憶デバイス42は、第1の記憶制御装置20の内部記憶デバイスとして扱われるようになっている。スイッチ回路SWには複数の外部記憶制御装置40Aを接続可能である。
続いて図2について説明する。図2は、第1の記憶制御装置20及び第2の記憶制御装置40の1つの記憶構造の概略を示すブロック図である。まず、第1の記憶制御装置の構成から先に説明する。
第1の記憶制御装置の記憶構造は、例えば、物理的記憶階層と論理的記憶階層とに大別することができる。物理的記憶階層は、物理的なディスクであるPDEV(Physical Device)161により構成される。PDEVは、ディスクドライブに該当する。
論理的記憶階層は、複数の(例えば2種類の)階層から構成することができる。一つの論理的階層は、VDEV(Virtual Device)162と、VDEV162のように扱われる仮想的なVDEV(以下、「V−VOL」とも呼ぶ)163とから構成可能である。他の一つの論理的階層は、LDEV(Logical Device)164から構成することができる。
VDEV162は、例えば、4個1組(3D+1P)、8個1組(7D+1P)等のような所定数のPDEV161をグループ化して構成される。グループに属する各PDEV161がそれぞれ提供する記憶領域が集合して一つのRAID記憶領域が形成されている。このRAID記憶領域がVDEV162となる。
VDEV162が物理的な記憶領域上に構築されるのと対照的に、V−VOL163は、物理的な記憶領域を必要としない仮想的な中間記憶デバイスである。V−VOL163は、物理的な記憶領域に直接関係づけられるものではなく、第2の記憶制御装置41のLU(Logical Unit)250をマッピングするための受け皿となる仮想的な存在である。
LDEV164は、VDEV162またはV−VOL163上に、それぞれ少なくとも一つ以上設けることができる。LDEV164は、例えば、VDEV162を固定長で分割することにより構成することができる。ホスト10がオープン系ホストの場合、LDEV164がLU165にマッピングされることにより、ホスト10は、LDEV164を一つの物理的なディスクとして認識する。オープン系のホストは、LUN(Logical Unit Number )や論理ブロックアドレスを指定することにより、所望のLDEV164にアクセスする。なお、メインフレーム系ホストの場合は、LDEV164を直接認識する。
LU165は、SCSIの論理ユニットとして認識可能なデバイスである。各LU165は、ターゲットポート21Bを介してホスト10に接続される。各LU165には、少なくとも一つ以上のLDEV164をそれぞれ関連付けることができる。一つのLU165に複数のLDEV164を関連付けることにより、LUサイズを仮想的に拡張することもできる。
CMD(Command Device)166は、ホスト10上で稼働するI/O制御プログラムと記憶制御装置20のコントローラ(CHA21,DKA22)との間で(図1参照)、コマンドやステータスを受け渡すために使用される専用のLUである。ホスト10からのコマンドは、CMD166に書き込まれる。記憶制御装置20のコントローラは、CMD166に書き込まれたコマンドに応じた処理を実行し、その実行結果をステータスとしてCMD166に書き込む。ホスト装置10は、CMD166に書き込まれたステータスを読出して確認し、次に実行すべき処理内容をCMD166に書き込む。このようにして、ホスト装置10は、CMD166を介して、記憶制御装置20に各種の指示を与えることができる。
なお、ホスト装置10から受信したコマンドを、CMD166に格納することなく、処理することもできる。また、実体のデバイス(LU)を定義せずに、CMDを仮想的なデバイスとして生成し、ホスト装置10からのコマンドを受け付けて処理するように構成してもよい。即ち、例えば、CHA21は、ホスト装置10から受信したコマンドを共有メモリ25に書き込み、この共有メモリ25に記憶されたコマンドを、CHA21又はDKA22が処理する。その処理結果は共有メモリ25に書き込まれ、CHA21からホスト装置10に送信される。
さて、第1の記憶制御装置20の外部接続用のエクスターナルポート(External Port)21Aには、既述の通りスイッチ回路SWを介して第2ストレージ装置40のターゲットポート41又は第1の記憶制御装置20のターゲットポート21Bが接続可能である。
第2の記憶制御装置40は、複数のPDEV220と、PDEV220の提供する記憶領域上に設定されたVDEV230と、VDEV230上に少なくとも一つ以上設定可能なLDEV240とを備えている。各LDEV240は、LU250にそれぞれ関連付けられている。
そして、本実施形態では、第2の記憶制御装置40のLU250(即ち、LDEV240)は、仮想的な中間記憶デバイスであるV-VOL163にマッピングされており、第1の記憶制御装置20の内部論理ボリュームとして取り扱われる。
例えば、第2の記憶制御装置40の「LDEV1」,「LDEV2」は、「LU1」,「LU2」を介して、第1の記憶制御装置20の「V−VOL1」,「V−VOL2」にそれぞれマッピングされている。そして、「V−VOL1」,「V−VOL2」は、それぞれ「LDEV3」,「LDEV4」にマッピングされ、「LU3」,「LU4」を介して、ホスト装置10が第2の記憶制御装置の記憶領域にアクセス可能になっている。
なお、VDEV162,V-VOL163は、RAID構成を適用することができる。即ち、1つのディスクドライブ161を複数のVDEV162,V-VOL163に割り当てることもできるし(スライシング)、複数のディスクドライブ161から1つのVDEV162,V-VOL163を形成することもできる(ストライピング)。
そして、第1の記憶制御装置20の「LDEV1」または「LDEV2」が第1の記憶制御装置20に記憶領域を持つ、実論理ボリューム190に該当する。第1の記憶制御装置20の「LDEV3」または「LDEV4」が、第1の記憶制御装置に記憶領域を持たず、第2の記憶制御装置に記憶領域を持つ仮想ボリューム191に該当する。第2の記憶制御装置40の「LDEV1」または「LDEV2」が、仮想ボリュームに対応する(仮想ボリュームがマッピングされた)論理ボリューム260に該当する。このように、実論理ボリューム190は、第1の記憶制御装置1内に設けられた物理的な記憶デバイス(例えば、ディスクドライブ等)に基づいて形成されるものである。仮想ボリューム191は、仮想的な存在であり、データを記憶する実体は、第2の記憶制御装置40内に存在する。即ち、第1の記憶制御装置20が有する記憶階層の所定の層に、第2の記憶制御装置40の有する論理ボリューム260がマッピングされるように、仮想ボリューム191が構築されている。
図2によれば、第1の記憶制御装置20のCHA21は、エクスターナルポート21Aから参照できるボリュームを外部デバイスとして認識する。この外部記憶デバイスにマッピングされる既述の仮想ボリュームが第1の記憶制御装置20内に定義される。この定義動作は、既述のSVP23の管理クライアントである、例えばJAVA(登録商標)アプレットによって実行される。この定義情報はマッピングテーブルTmとして共有メモリ25上に置かれる。但し、図2の符号300に示すように、第1の記憶制御装置の論理ボリューム190に仮想ボリュームをマッピングすることはできない。
次に仮想ボリュームを第1の記憶制御装置20に設定するための動作について説明する。図3はこの設定動作のフローを示す。管理クライアント上のJAVA(登録商標)アプレットは、SVPにエクスターナルポート21A(図1)から参照できる論理ボリューム情報取得(ディスカバリー)をリクエストする(S1)。このリクエストを受けたSVPは、第1の記憶制御装置のCHA21(図1)に、ディスカバリーの実行を指令する(S2)。CHAは共有メモリ25を参照してスイッチ回路SWのIPアドレスを入手してエクスターナルポート21Aを介してスイッチ回路SWにアクセスし、このスイッチ回路から参照できる全てのボリュームの情報を取得する。すなわち、CHAは自己の筐体の内部論理ボリュームか他の記憶制御装置の内部論理ボリュームかを区別することなく、エクスターナルポート21Aに接続可能な内部論理ボリュームのディスカバリーを実行する(S3)。図1に示すように、CHA21がエクスターナルポート21Aに接続されるスイッチ回路SWを介して参照できるボリュームは、第1の記憶制御装置20の論理ボリュームと第2の記憶制御装置40の論理ボリュームである。
次いで、第1の記憶制御装置20のCHA21及び第2の記憶制御装置40のCHA(図示せず)は、それぞれの共有メモリを参照して、それぞれの内部論理ボリュームの特性データを取得する(S4)。この特性データを受けたCHA21はSVP32を介して管理クライアントのJAVA(登録商標)アプレットに特性データを送信する(S5、S6)。JAVA(登録商標)アプレット上には、特性データ中の「ストレージのベンダー名、製品型名、製造番号」等の情報からディスカバリーによって参照された複数の内部論理ボリュームのそれぞれについて、抽出された内部論理ボリュームが属する筐体が、CHA21が属する自己の記憶制御装置か或いは外部記憶制御装置かを判断するストレージ管理用アプリケーションが実装されている。
この管理用アプリケーションは、ディスカバリーによって抽出された複数の内部論理ボリュームについて、既述の仮想ボリュームに対する候補として良いか否かのフィルタリングを行うモジュールを備えている。管理用アプリケーションは、このフィルタリングモジュールによって複数の論理ボリュームについての各抽出情報をフィルタリング(S7)し、合致した条件の論理ボリュームについて仮想ボリュームのマッピング先の候補群として画面表示処理が行われる。
本実施形態では、既述のとおり、第1の記憶制御装置20の内部論理ボリュームが、仮想ボリュームがマッピングされるボリュームとしての候補群として表示されないように管理用アプリケーションがプログラムされている。次いで、管理用クライアントはSVPに仮想ボリュームの定義処理の実行をリクエストする(S8、S9)。SVPはCHAに仮想ボリュームの定義処理、すなわち、既述のマッピングテーブル作成の処理動作を実行させ(S10)、その処理結果を受けてこれを管理用クライアントに送る(S11,S12)。管理用クライアントのユーザは自筺体(第1の記憶制御装置20)の内部論理ボリュームが自筺体内の仮想ボリュームのマッピング先として表示されないので、自筺体の内部論理ボリュームに対して仮想ボリュームを設定することができない。このように、SVP及び管理用クライアントによって仮想ボリューム設定制御が実現される。この設定制御処理はCHA或いはDKAのプロセッサーによっても実現可能である。
次に、仮想ボリュームの定義処理について詳細を説明する。図4は、既述のマッピングテーブルTmの構造の一例である。マッピングテーブルTmは、例えば、VDEVをそれぞれ識別するためのVDEV番号と外部の記憶デバイスの情報とをそれぞれ対応付けることにより、構成ができる。外部デバイス情報としては、例えば、デバイス識別情報と、記憶デバイスの記憶容量と、デバイスの種別を示す情報と(例えば、テープ系デバイスかディスク系デバイスか等)、記憶デバイスへのパス情報とを含んで構成することができる。また、パス情報は、各通信ポート(図1の21A,21B)に固有の識別情報(WWN)と、図2のLUを識別するためのLU番号とを含んで構成できる。
なお、図4中に示すデバイス識別情報やWWN等は、説明の便宜上の値であって特に意味はない。また、図4中の下側に示すVDEV番号「3」のVDEVは、3個のパス情報が対応付けられている。即ち、このVDEV(#3)にマッピングされる外部記憶デバイス(図1の42)は、その内部に3つの経路を有する交代パス構造を備えているが、VDEVには、この交代パス構造を認識してマッピングされている。これら3つの経路のいずれを通っても同一の記憶領域にアクセスできることが判明しているため、いずれか1つまたは2つの経路に障害等が発生した場合でも、残りの正常な経路を介して所望のデータにアクセスできる。図4に示すようなマッピングテーブルTmを採用することにより、第1の記憶制御装置20内の1つ以上のVDEVに対し、1つまたは複数の外部の記憶デバイス42をマッピングすることができる。
次に、図5を参照して、外部の記憶デバイス42をVDEV101にマッピングする方法の一例を説明する。図5は、マッピング時に、第1の記憶制御装置20と第2の記憶制御装置40との間で行われる処理の要部を示すタイムチャートである。まず、第1の記憶制御装置20は、チャネルアダプタ21のエクスターナルポート(21A)からスイッチ回路SWを介して、第2の記憶制御装置40にログインする(S1)。第2の記憶制御装置40が、第1の記憶制御装置20のログインに対して応答を返すことにより、ログインが完了する(S2)。次に、第1の記憶制御装置20は、例えば、SCSI(Small Computer System Interface)規格で定められている照会コマンド(inquiryコマンド)を、第2の記憶制御装置40に送信し、第2の記憶制御装置40の有する記憶デバイス42の詳細について応答を求める(S3)。これは既述のディスカバーの動作と同じである。
照会コマンドは、照会先の装置の種類及び構成を明らかにするために用いられるもので、照会先装置の有する階層を透過してその物理的構造を把握することができる。照会コマンドを使用することにより、第1の記憶制御装置20は、例えば、装置名、デバイスタイプ、製造番号(プロダクトID)、LDEV番号、各種バージョン情報、ベンダID等の情報を第2の記憶制御装置40から取得できる(S4)。第2の記憶制御装置40は、問合わされた情報を第1の記憶制御装置20に送信し、応答する(S5)。ディスカバリーで抽出された情報は共有メモリに保存されている。CHAはこの保存された情報を利用することによってS3〜S5のステップを省略しても良い。
第1の記憶制御装置20は、第2の記憶制御装置40から取得した情報を、マッピングテーブルTmの所定箇所に登録する(S6)。次に、第1の記憶制御装置20は、第2の記憶制御装置40から記憶デバイス42の記憶容量を読み出す(S7)。第2の記憶制御装置40は、第1の記憶制御装置20からの問合せに対して、記憶デバイス42の記憶容量を返信し(S8)、応答を返す(S9)。第1の記憶制御装置20は、記憶デバイス42の記憶容量をマッピングテーブルTmの所定箇所に登録する(S10)。
以上の処理を行うことにより、マッピングテーブルTmを構築できる。第1の記憶制御装置20のVDEVにマッピングされた外部の記憶デバイス42(外部LUN、即ち外部のLDEV)との間でデータの入出力を行う場合は、後述する他のテーブルを参照してアドレス変換等を行う。
図6〜図8を参照して、第1の記憶制御装置20と第2の記憶制御装置40との間のデータ入出力について説明する。まず最初に、データを書き込む場合について、図6及び図7に基づいて説明する。図6は、データ書込み時の処理を示す模式図である。図7は、図6中の処理の流れを各種テーブルとの関係で示す説明図である。
ホスト装置10は、第1の記憶制御装置20が提供する論理ボリューム(LDEV102)にデータを書き込むことができる。例えば、SANの中に仮想的なSANサブネットを設定するゾーニングや、アクセス可能なLUNのリストをホスト装置10が保持するLUNマスキングという手法により、ホスト装置10を特定のLDEV102に対してのみアクセスさせるように設定できる。
ホスト装置10がデータを書き込もうとするLDEV102が、VDEV101を介して内部の記憶デバイスである記憶デバイス31に接続されている場合、通常の処理によってデータが書き込まれる。即ち、ホスト装置10からのデータは、いったんキャッシュメモリ24に格納され、キャッシュメモリ24からディスクアダプタ22を介して、所定の記憶デバイス31の所定アドレスに格納される。この際、ディスクアダプタ22は、論理的なアドレスを物理的なアドレスに変換する。また、RAID構成の場合、同一のデータが複数の記憶デバイス31に記憶等される。
これに対し、ホスト装置10が書き込もうとするLDEV102が、VDEV101を介して外部の記憶デバイス42に接続されている場合、図6に示すような流れでデータが書き込まれる。図6(a)は記憶階層を中心に示す流れ図であり、図6(b)はキャッシュメモリ24の使われ方を中心に示す流れ図である。
ホスト装置10は、書込み先のLDEV102を特定するLDEV番号とこのLDEV102にアクセスするための通信ポート21Aを特定するWWNとを明示して、書込みコマンド(Write)を発行する(S21)。第1の記憶制御装置20は、ホスト装置10からの書込みコマンドを受信すると、第2の記憶制御装置40に送信するための書込みコマンドを生成し、第2の記憶制御装置40に送信する(S22)。第1の記憶制御装置20は、ホスト装置10から受信した書込みコマンド中の書込み先アドレス情報等を、外部LDEV43に合わせて変更することにより、新たな書込みコマンドを生成する。
次に、ホスト装置10は、書き込むべきデータを第1の記憶制御装置40に送信する(S23)。第1の記憶制御装置20に受信されたデータは、LDEV102からVDEV101を介して(S24)、外部のLDEV43に転送される(S26)。ここで、第1の記憶制御装置20は、ホスト装置10からのデータをキャッシュメモリ24に格納した時点で、ホスト装置10に対し書込み完了の応答(Good)を返す(S25)。第2の記憶制御装置40は、第1の記憶制御装置20からデータを受信した時点で(あるいは記憶デバイス42に書込みを終えた時点で)、書込み完了報告を第1の記憶制御装置20に送信する(S26)。即ち、第1の記憶制御装置20がホスト装置10に対して書込み完了を報告する時期(S25)と、実際にデータが記憶デバイス42に記憶される時期とは相違する(非同期方式)。従って、ホスト装置10は、実際にデータが記憶デバイス42に格納される前にデータ書込み処理から解放され、別の処理を行うことができる。
図6(b)のように、キャッシュメモリ24には、多数のサブブロック24Aが設けられている。第1の記憶制御装置20は、ホスト装置10から指定された論理ブロックアドレスをサブブロックのアドレスに変換し、キャッシュメモリ24の所定箇所にデータを格納する(S24)。
図7を参照して、各種テーブルを利用してデータが変換される様子を説明する。図7の上部に示すように、ホスト装置10は、所定の通信ポート21Aに対し、LUN番号(LUN#)及び論理ブロックアドレス(LBA)を指定してデータを送信する。第1の記憶制御装置20は、LDEV102用に入力されたデータ(LUN#+LBA)を、図7(a)に示す第1の変換テーブルT1に基づいて、VDEV101用のデータに変換する。
第1の変換テーブルT1は、内部のLUN103を指定するデータをVDEV101用データに変換するための、LUN−LDEV−VDEV変換テーブルである。このテーブルT1は、例えば、LUN番号(LUN#)と、そのLUN103に対応するLDEV102の番号(LDEV#)及び最大スロット数と、LDEV102に対応するVDEV101の番号(VDEV#)及び最大スロット数等を対応付けることにより構成される。このテーブルT1を参照することにより、ホスト装置10からのデータ(LUN#+LBA)は、VDEV101用のデータ(VDEV#+SLOT#+SUBBLOCK#)に変換される。
次に、第1の記憶制御装置20は、図7(b)に示す第2の変換テーブルT2を参照して、VDEV101用のデータを、第2の記憶制御装置40の外部LUN(LDEV)用に送信して記憶させるためのデータに変換する。第2の変換テーブルT2には、例えば、VDEV101の番号(VDEV#)と、そのVDEV101からのデータを第2の記憶制御装置40に送信するためのイニシエータポートの番号と、データ転送先の通信ポート41を特定するためのWWNと、その通信ポートを介してアクセス可能なLUN番号とが対応付けられている。この第2の変換テーブルT2に基づいて、第1の記憶制御装置20は、記憶させるべきデータの宛先情報を、イニシエータポート(ターゲットポート)番号#+WWN+LUN#+LBAの形式に変換する。このように宛先情報が変更されたデータは、指定されたイニシエータポートから通信ネットワークCN1を介して、指定された通信ポート41に到達する。そして、データは、指定されたLUN43でアクセス可能なLDEVの所定の場所に格納される。LDEVは、複数の記憶デバイス42上に仮想的に構築されているので、データのアドレスは物理アドレスに変換されて、所定のディスクの所定アドレスに格納される。
図7(c)は、別の第2の変換テーブルT2aを示す。この変換テーブルT2aは、外部記憶デバイス42に由来するVDEV101に、ストライプやRAIDを適用する場合に使用される。変換テーブルT2aは、VDEV番号(VDEV#)と、ストライプサイズと、RAIDレベルと、第2の記憶制御装置40を識別するための番号(SS#(ストレージシステム番号))と、イニシエータポート番号と、通信ポート41のWWN及びLUN43の番号とを対応付けることにより構成されている。図7(c)に示す例では、1つのVDEV101は、SS#(1,4,6,7)で特定される合計4つの外部記憶制御装置を利用してRAID1を構成する。また、SS#1に割り当てられている3個のLUN(#0,#0,#4)は、同一デバイス(LDEV#)に設定されている。なお、LUN#0のボリュームは、2個のアクセスデータパスを有する交代パス構造を備えている。このように、本実施例では、外部に存在する複数の論理ボリューム(LDEV)からVDEV101を構成することにより、ストライピングやRAID等の機能を追加した上でホスト装置10に提供することができる。
図8を参照して、第2の記憶制御装置40のLDEVからデータを読み出す場合の流れを説明する。まず、ホスト装置10は、通信ポート21Aを指定して第1の記憶制御装置20にデータの読み出しコマンドを送信する(S31)。第1の記憶制御装置20は、読み出しコマンドを受信すると、要求されたデータを第2の記憶制御装置40から読み出すべく、読み出しコマンドを生成する。第1の記憶制御装置20は、生成した読み出しコマンドを第2の記憶制御装置40に送信する(S32)。第2の記憶制御装置40は、第1の記憶制御装置20から受信した読み出しコマンドに応じて、要求されたデータを記憶デバイス42から読み出して、第1の記憶制御装置20に送信し(S33)、正常に読み出しが完了した旨を報告する(S35)。第1の記憶制御装置20は、図8(b)に示すように、第2の記憶制御装置40から受信したデータを、キャッシュメモリ24の所定の場所に格納させる(S34)。
第1の記憶制御装置20は、キャッシュメモリ24に格納されたデータを読み出し、アドレス変換を行った後、LUN103等を介してホスト装置10にデータを送信し(S36)、読み出し完了報告を行う(S37)。これらデータ読み出し時の一連の処理では、図7と共に述べた変換操作が逆向きで行われる。
図8では、ホスト装置10からの要求に応じて、第1の制御装置のチャネルアダプタ21が第2の記憶制御装置40からデータを読み出し、仮想ボリュームを構成するキャッシュメモリ24に保存することを示している。符号103は、仮想ボリュームを構成するLUNを示し、キャッシュメモリ24は仮想ボリュームの実記憶領域に相当する。外部LUNは後述のリストアデータが記憶された論理ボリュームである。
次に、本願発明者が今回新たに認知した、本願発明を成立させる契機となった課題について説明する。図9は、第2の記憶制御装置40が第1の記憶制御装置20に接続した記憶制御システムのブロックである。図9(1)はリストア前のデータの記憶状況を示したブロック図であり、(2)はリストア後のデータの記憶状況を示すブロック図である。第1の記憶制御システム20内には、実論理ボリュームLU♯aと仮想ボリュームLU♯bとが、特開2001−216185号公報に記載のコピーペアの関係を形成可能に構成されている。
LU♯aが正ボリューム番号によって識別される正ボリュームであり、LU♯bが副ボリューム番号で識別される副ボリュームである。第2の記憶制御装置40も同様に、互いにコピーペアの関係になる実論理ボリュームLU♯c(正ボリューム)と実論理ボリューム♯d(副ボリューム)とを備えている。これら正ボリューム及び副ボリュームとがコピーペア形成中であれば、正ボリュームのデータと副ボリュームの一方がコピー元、他方がコピー先にとなり、両者間で全コピーが行われる。
第1の記憶制御装置の仮想ボリュームLU♯bは図2で説明したように、論理ボリュームLU♯cにマッピングされている。論理ボリュームLUはLDEVであっても良い。実論理ボリュームLU♯a,LU♯c,LU♯dのそれぞれは、ディスクドライブの物理的な記憶領域とキャッシュメモリに対応しており、データのREAD命令及びWRITE命令の実行に伴うデータの交換はキャッシュメモリを介してHDDなどの記憶デバイスとの間で行われる。
仮想ボリュームLU♯bは対応する記憶デバイスを持たず、キャッシュメモリのみから構成されている。論理ボリュームLU♯cのデータに仮想ボリュームLU♯bを介してホスト♯bがアクセスができる。各論理ボリュームの上段がキャッシュメモリに記憶されたデータに対応し、下段がディスクドライブ内のデータに対応している。
図9に示すシステムによれば、第1の記憶制御装置に第2の記憶制御装置が接続している関係において、正ボリュームから副ボリュームにデータをコピーするコピーペアの機能を利用して、データの世代管理が可能となる。すなわち、ホスト♯aがアクセス可能な実論理ボリュームLU♯aには最新世代のデータを記憶し、ホスト♯bがアクセス可能な仮想ボリューム♯b及び実論理ボリューム♯cには前の世代のデータを記憶し、ホスト♯bがアクセス可能な実論理ボリュームLU♯dにはさらに前の世代のデータを記憶することができる。例えば、最新世代のデータをオンラインデータとすると、一つ前の世代のデータを過去データ1(例えば一日前のデータ)とし、さらに前の世代のデータを過去データ2(例えば二日前のデータ)として、図9の記憶制御システムでデータの世代管理をすることができる。
本発明に於けるリストアは、第2の記憶制御装置の論理ボリュームLU♯dのデータを論理ボリュームLU♯cに記憶させることをいう。ホスト♯bは仮想ボリュームLU♯bにアクセスすることによって、論理ボリュームLU♯cに記憶されたリストアデータにアクセスすることができる。リストによって、記憶制御装置20のデータを記憶制御装置40の記憶資源に記憶された過去データに基づいて復旧することができる。
リストアの処理について説明する。既述のとおり、図9の(1)はリストア前の記憶制御システムのデータの記憶状態を示し、(2)はリストア実行後の状態を示している。第2の記憶制御装置40のDKAが、ホスト♯bからリストア命令を受けると、論理ボリュームLU♯dの記憶デバイス900からリストアの対象となるデータ(リストアデータ)「def」を読み込み、これを論理ボリュームLU♯dのキャッシュメモリ902の記憶領域に保存する(S90)。CHA90Aはこのキャッシュメモリ902の記憶領域のデータを論理ボリュームLU♯cのキャッシュメモリ904の記憶領域に記憶する(S91)。そして、この記憶領域のデータ「def」をDKAが論理ボリュームLU♯cの記憶デバイス906の記憶領域に記憶する(S92)。
一方、第1の記憶制御装置20のCHA90Bは、ホスト♯bからのリストア命令を実行し、リストアデータを保存するキャッシュメモリ908のブロック領域を設定し、この設定情報を第2の記憶制御装置40のCHA90Aに転送する(S94)。CHA90Aはリストアデータが記録されているキャッシュメモリ904の記憶領域のデータ「def」を読み込み(S95)、第1の記憶制御装置40のCHA90Bに渡す(S96)。CHA90Bは予め決められたキャッシュメモリ908のブロック記憶領域にこのデータ「def」を保存する(S93)。
なお、図9(2)には示されていないが、論理ボリュームLU♯aと仮想ボリューム♯bとがコピーペアを形成すれば、仮想ボリュームLU♯bに対応するキャッシュメモリ908の記憶領域のデータが論理ボリュームLU♯aの記憶領域(キャッシュメモリ及びHDD)にコピーされる。
いま、第2の記憶制御装置40がリストア命令を実行すると、図9(2)に示すように、論理ボリュームLU♯cのデータは「abc」から「def」になる。この論理ボリュームLU♯cにマッピングされている仮想ボリュームLU♯bには「def」が転送される。しかしながら、仮想ボリュームに対応するキャッシュメモリの記憶領域にはリストア前の「abc」のデータが残っているので、ホスト♯bにはリストアデータである「def」ではなく、リストア前のデータである「abc」が見てしまう。
さらに、仮想ボリュームLU♯bとコピーペアの関係にある正論理ボリュームLU♯aにも「def」ではなく「abc」をコピーしてしまうことになる。これでは、第2の記憶制御装置40のリストアデータに、ホスト♯bが正しくアクセスできない問題がある。
そこで、第1の記憶制御装置10は、ホスト♯bのパージコマンドを受けて、リストア命令の実行の際に仮想ボリュームLU♯bに対応するキャッシュメモリのデータ「abc」をパージ(「無効化」或いは「開放」)することとした(S97)。ここで、パージとは、仮想ボリュームとキャッシュメモリの記憶領域との対応関係をクリアするための処理に相当する。この処理が終了した後、或いはこの処理に同期して、第1の記憶制御装置10は、キャッシュメモリの記憶領域にリストアデータ「def」を記憶することとした。
図10は、仮想ボリュームのディレクトリ構造とキャッシュメモリとの対応関係を示すブロック図である。仮想ボリュームLU♯bは複数の管理領域100から構成されていて、100個のLBA毎に1個の管理領域100が割り当っている。一つの管理領域はキャッシュメモリの記憶領域を指す番号(キャッシュ領域♯)100Aと、キャッシュ領域♯の中のデータが有効かどうかを示す有効ビットマップ100Bとから構成される。
図10は、LBA#100〜LBA#199にキャッシュメモリの記憶領域(キャッシュ領域)#1の各ブロックが対応していることを示している。キャッシュ領域♯は、各LBAに対応したブロックに分割されており、各ブロックに各LBAに対応するデータが置かれる。ビットマップの各ビットは、一つのLBA及びこれに対応するキャッシュ領域のブロック単位に対応しており、有効ビットが「0」の場合には、キャッシュ領域の該当するブロック単位のデータが無効であることを示し、有効ビットが「1」の場合には、対応ブロック単位にあるデータが有効であることを示している。有効ビットが「0」の場合には、ホストから対応するLBAにリード要求が来た場合には、第2の記憶制御装置の論理ボリュームのデータをリードする必要がある。
キャッシュ領域#1においては、LBA#100とLBA#101に対応するブロック単位のデータが有効であり、LBA♯102,103に対応するブロック単位のデータが無効である事を示している。管理領域100の[NULL]は、キャッシュ領域に対応する部分がないことを示している。仮想ボリュームの管理領域に割り当っていないキャッシュ領域は、フリーキューとして共有メモリ(図1の25)の特定記憶領域に記憶されている。
ホストからのリード命令が、キャッシュ領域の割り当てがない、仮想ボリュームの管理領域に来た場合には、第1の制御装置のCHAは共有メモリのフリーキューの中からキャッシュ領域の情報を取得し、この情報を仮想ボリュームの管理領域に割り当てる。図10に示す仮想ボリュームのディレクトリ構造を規定する制御情報は共有メモリに記憶される。なお、図10は仮想ボリュームについて説明したが、実論理ボリュームでも同様である。
図11は、この実施形態におけるパージ処理を説明するフローチャートである。図9(2)のホスト♯bがパージ処理の対象となる仮想ボリュームを指定し、この仮想ボリュームの第1の管理領域に対して(S1100)、パージ処理を実行する(S1102−S1106)。
ホストが第1の記憶制御装置40にパージコマンドを発行すると、CHA90Bは、共有メモリの仮想ボリュームのディレクトリ構造(図10)をリードし、指定された管理領域にキャッシュメモリの記憶領域の情報が設定されているかを判定する(S1102)。CHA90Bは、これが肯定された場合には、割り当てられたキャッシュ領域をフリーキューに戻して、このキャッシュ領域に「NULL」を設定する(S1104)。S1102の判定が否定された場合及びS1104の処理に継いで、CHAは全管理領域についてS1102及びS1104の処理が完了したか否かを判定する。それが肯定された場合は、ルーチンを終了する。否定判定の場合には、次の管理領域について、S1102、S1104の処理を継続する(S1108)。これにより、仮想ボリュームの全管理領域に対してキャッシュメモリの記憶領域のデータがパージされたことになり、リストアされる前の、キャッシュメモリのデータが仮想ボリュームのディレクトリ構造を介してホストにアクセスされることが無いようにしている。
このパージが完了されると、第1の記憶制御装置のCHA90B(図9)はパージ完了をホスト♯bに通知する。ホストは第2の記憶制御装置のCHA90Aにリストア要求を発行する。リストアの命令は、コマンドデバイス(図2の166)を経由して第1の制御装置のCHA90Bが第2の制御装置のCHA90Aにホスト♯bを介することなく送ることもできる。リストア命令を受けた第2の記憶装置は、図9に示すように論理ボリュームLU♯dとLU♯cとのコピーペアを形成して、論理ボリュームLU♯dのデータを論理ボリュームLU♯cにコピーする(リストア)。ホストからアクセスのあった仮想ボリュームの管理領域には、フリーキューの中から適宜キャッシュメモリの領域が選択されて割り当てられ、このキャッシュメモリの領域にリストアデータが記憶される。論理ボリュームLU♯cは仮想ボリュームLU♯bにマッピングされているので、論理ボリュームLU♯cのキャッシュメモリのリストアデータが、割り当てられたキャッシュ領域に転送される。したがって、ホスト♯bがCHA90Bを介して、仮想ボリュームの管理領域にアクセスすることにより、ホスト♯bは、この管理領域に対応するキャッシュメモリの記憶領域にあるリストアデータにアクセスすることができる。
仮想ボリュームの管理領域に[NULL]を設定することにより、キャッシュメモリのリストア前のデータをパージすることができる。なお、パージ処理の他の例として、有効ビット(図10の100B)に「0」を設定するようにしてもよい。さらに、キャッシュのパージが終了する前に、第2の記憶制御装置はリストアを開始してもよい。ただし、仮想ボリュームの全ての管理領域についてキャッシュメモリのパージが終了しないと、ホスト♯bは仮想ボリュームLU♯bのリストアデータにアクセスすることができない。今後論理ボリュームの容量、キャッシュ容量がますます大きくなっていくため、パージに要する時間も長くなり、その結果リストアしたデータをホストが利用できるようになるまでに時間がかかってしまう。
そこで、第2の実施形態では、ホストがアクセスした、仮想ボリュームに対応するキャッシュメモリの記憶領域のデータがリストアデータを反映したものであるか否かを第1の記憶制御装置が判断し、リストアデータを反映していない場合には、このキャッシュ領域のデータをパージし、ついでこのキャッシュ領域にリストアデータを記憶するようにして、全ての管理領域についてパージを待つことなく、ホスト装置がリストアデータにアクセスできるようにした。
このことを可能にするための、仮想ボリュームのディレクトリ構造が図12に示されている。仮想ボリュームに相当するLU毎に全体世代番号120が設定され、各管理領域には図10に示す、キャッシュ領域100A、有効ビット100Bの他、個別の世代番号1120Aも設定される。図12では、仮想ボリュームのキャッシュ領域♯1がキャッシュメモリ24のキャッシュ領域♯1に、仮想ボリュームのキャッシュ領域♯5がキャッシュメモリ24のキャッシュ領域♯5に対応している。
図13はこの実施形態のパージ処理のためのフローチャートを示すものであり、図9(2)に示す、ホスト♯bから記憶制御装置20にパージ要求が出力されると、CHA90Bは共有メモリの制御情報にアクセスして仮想ボリュームを指定し、仮想ボリュームのディレクトリ構造の全体世代番号120の値を1インクリメントする(S1300)。ついでCHA90Bはホスト♯bに正常終了を通知する。ホスト♯bの命令を受けて、記憶制御装置40は二つの内部論理ボリューム間でシャドウイメージを利用したリストア処理を開始する。
ホスト♯bがこの正常終了を受けると、図14に示す、リストアデータへのアクセス処理(I/O処理)がスタートする。ホスト♯bが仮想ボリュームLU♯b(図9(2)参照)へI/Oを発行すると、第1の記憶制御装置のCHA90Bはホスト♯bからI/Oの要求を受けた仮想ボリュームのディレクトリ構造を共有メモリから参照し、I/O要求を受けたLBAのキャッシュ領域(図12)を取得する(S1400)。CHAはキャッシュ領域の制御データがNULLであるか否かをチェックする(S1401)。これが肯定されると、CHAはLBAが属する管理領域にキャッシュメモリのフリーキューのキャッシュ領域を割り当てる。さらに有効ビット(図12の100B)をオフし、世代番号に代表世代番号を設定する(S1402)。
ステップS1401において、キャッシュ領域を示す情報がNULLでない場合には、CHAは、I/O要求を受けたLBAが属する管理領域の世代番号と全体世代番号とを比較する(S1404)。この比較結果が否の場合には管理領域の有効ビットがオフされる(S1406)。これが肯定されている場合には、S1406をスキップしてS1408にジャンプする。
S1408では、CHAが、ホストからの命令がWRITE命令又はREAD命令かを判定し、後者の場合はS1410に移行する。CHAはLU♯cからリストアデータを読み出して、LBAで指定される、仮想ボリュームLU♯bにおける管理領域上のキャッシュ領域♯に該当するキャッシュメモリの記憶領域にリストアデータを書き込む。次いで,CHAは管理領域の有効ビットをオンし(S1412)、ホストにリストアデータを転送する(S1414)。
S1408で、ホストからの命令がWRITE命令の場合には、CHAはホストからライトデータを受領して、I/O要求を受けたLBAのキャッシュ領域に該当するキャッシュメモリ上の記憶領域にライトデータを書き込んで(S1416)、有効ビットをオンする(S1418)。
この一連の処理において、第1の記憶制御装置のCHAは、ホストからのI/O要求を受けたLBAに対応する、仮想ボリュームの管理領域の世代番号と全体世代番号とを比較し(S1404)、これが一致する場合には、キャッシュメモリの記憶領域に正しいリストアデータをアップロードできる(S1410)。一方、この世代番号が一致していない場合には、キャッシュメモリの記憶領域のデータはリストアデータに対応しない不適切なデータであるので、第1の記憶制御装置のCHAは有効ビットをオフしてなる、キャッシュメモリのデータのパージを行い(S1406)、次いで、仮想ボリュームの管理領域にリストアデータを設定する。この実施形態では、第1の制御装置の制御部がキャッシュメモリ内のデータがパージを必要とするリストア前のデータか、リストアデータであってホストをアクセスさせても良いデータかを識別し、パージが必要なデータである場合には、外部論理ボリュームからリストアデータをリードして、キャッシュメモリの記憶領域のリストア前のデータをリストアデータでリフレッシュする。この実施形態では、仮想ボリュームの全管理領域に対してキャッシュメモリのパージを行わず、ホストがアクセスした管理領域について、キャッシュメモリのデータのパージを行えばすむ為、ホストがリストアデータにアクセスするために要する時間を短縮化できるという効果がある。また、この実施形態はパージ処理とリストアデータの転送とを並列処理するために、ホストがリストアデータを利用できるまでに要する時間を短縮化できる。
なお、既述の実施形態では、第2の記憶制御装置内の副ボリュームから正ボリュームに全コピーしてデータのリストアを行っていたが、論理ボリュームLU♯c(図9)にホスト♯cが接続され、このホストに接続したテープデバイスなどの記憶資源からデータのリストアを行う場合にも本発明が適用される。また、仮想ボリュームに対するパージ処理は仮想ボリューム全体、管理領域単位、或いはLBA(ロジカルブロックアドレス)の単位で行うことができる。
本発明の実施例に係わる記憶システムの全体構成を示すブロック図である。 記憶システムの論理的構成の概要を示す模式図である。 仮想論理ボリュームの設定動作の流れを示すフローである。 マッピングテーブルの概要を示す説明図である。 マッピングテーブルを構築するための処理の流れを示すフローである。 内部ボリュームとして仮想化される外部の記憶デバイスにデータを書き込む場合の概念図である。 書込みデータのアドレス変換の様子を模式的に示す説明図である。 内部ボリュームとして仮想化される外部の記憶デバイスからデータを読み出す場合の概念図である。 キャッシュメモリのパージ処理を説明するための、記憶制御システムのブロック図であり、(1)はリストア前のデータの記憶状態を、(2)はリストア後のデータの記憶状態を説明するブロック図である。 第1の実施形態における、仮想ボリュームのディレクトリ構造と、このディレクトリ構造に対応するキャッシュメモリの記憶構造とのブロック図である。 第1の実施形態のパージ処理を説明するフローチャートである。 第2の実施形態における、仮想ボリュームのディレクトリ構造と、このディレクトリ構造に対応するキャッシュメモリの記憶構造とのブロック図である。 第2の実施形態における、パージ処理のフローチャートである。 ホストがリストアデータにアクセスする事を示すフローチャートである。。
符号の説明
10…ホスト装置、11…アプリケーションプログラム、12…アダプタ、20…第1の記憶制御装置、21,90A,90B…チャネルアダプタ、21A…通信ポート、22…ディスクアダプタ、22A…通信ポート、23…コントロールユニット、24…キャッシュメモリ、24A…サブブロック、25…共有メモリ、26…接続部、30…記憶装置、31…記憶デバイス、32,LU♯b…記憶デバイス(仮想化された内部記憶デバイス/仮想ボリューム)、40…第2の記憶制御装置、41…各通信ポート、42…各記憶デバイス、LU♯a,LU♯c,LU♯d…実論理ボリューム、♯a,♯b…ホスト

Claims (20)

  1. 第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続して構成され、上位装置からのリクエストに応じたデータ処理を行う記憶制御システムであって、
    前記第1の記憶制御装置は、
    前記第2の記憶制御装置の論理ボリュームに対応付けられた仮想ボリュームと、
    当該仮想ボリュームに対応つけられたキャッシュメモリと、
    当該キャッシュメモリと仮想ボリュームと間のデータ処理を制御する制御部とを備え、
    前記制御部は、前記論理ボリュームのリストアデータを前記キャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想ボリュームに対応する、前記キャッシュメモリの記憶領域をパージするように構成された記憶制御システム。
  2. 第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続して構成され、上位装置からのリクエストに応じたデータ処理を行う記憶制御システムであって、
    前記第1及び第2の記憶制御装置はそれぞれ、
    記憶デバイスと、
    当該記憶デバイスの論理的な記憶構造であり、前記上位装置からアクセス可能な論理ボリュームと、
    前記論理ボリュームのデータを記憶するキャッシュメモリと、
    前記記憶デバイス、前記キャッシュメモリ、そして前記論理ボリュームとの間でのデータ処理を制御する制御部と、
    を備え、
    さらに、前記第1の記憶制御装置は、前記第1の記憶制御装置の記憶デバイスに対応付けされることなく、前記第2の記憶制御装置の論理ボリュームに対応付けられ、かつ前記上位装置がアクセス可能な仮想ボリュームを備え、
    前記第1の記憶制御装置の制御部は、前記第2の記憶制御装置の論理ボリュームのリストアデータを前記第1の制御装置のキャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想ボリュームの管理領域に対応する当該キャッシュメモリの記憶領域をパージするように構成されてなる、記憶制御システム。
  3. 前記第2の記憶制御装置の論理ボリュームは、コピーペアの関係を形成可能な第1の論理ボリュームと第2の論理ボリュームとを備えてなり、当該第1の論理ボリュームが前記仮想ボリュームに対応付けられている、請求項2記載の記憶制御システム。
  4. 前記第2の記憶制御装置の制御部は、前記リストアの命令を受領すると、前記第2の論理ボリュームの記憶データを前記第1の論理ボリュームにコピーし、さらに、当該第1の論理ボリュームのコピーされたデータを前記仮想ボリュームに転送する、請求項3記載の記憶制御システム。
  5. 前記第1の記憶制御装置の論理ボリュームは前記仮想ボリュームとコピーペアの関係になっている請求項2記載の記憶制御システム。
  6. 前記第1の記憶制御装置の制御部が前記第2の記憶制御装置の制御部に、前記リストアの命令を発行する請求項4記載の記憶制御システム。
  7. 前記上位装置が前記第2の記憶制御装置の制御部に、前記リストア命令を発行する請求項4記載の記憶制御システム。
  8. 前記第1の記憶制御装置の制御部による前記パージが完了後、前記第2の記憶制御装置の制御部が前記リストアを開始する請求項1又は2記載の記憶制御システム。
  9. 前記仮想ボリュームは、前記第1の記憶制御装置のキャッシュメモリの記憶領域との対応関係を制御する情報が設定されたディレクトリ構造を備えており、このディレクトリ構造は、複数の管理領域を備え、各管理領域には、当該管理領域に対応する前記第1の記憶制御装置のキャッシュメモリの記憶領域を特定するための情報が設定されている、請求項1又は2記載の記憶制御システム。
  10. 前記各管理領域は、前記キャッシュメモリ記憶領域の記憶データの有効又は無効を制御する情報を備えてなる請求項9記載の記憶制御システム。
  11. 前記第1の記憶制御装置の制御部は、
    前記仮想ボリュームの全管理領域の前記特定情報をパージし、
    次いで、前記第1の記憶制御装置のキャッシュメモリに前記第2の記憶制御装置の論理ボリュームに保存されているデータを割り当て、
    前記上位装置が当該データにアクセスできるように、
    構成されてなる請求項1又は2記載の記憶制御システム。
  12. 前記第1の記憶制御装置の制御部は、
    前記仮想ボリュームの一部の管理領域の前記特定情報をパージし、
    次いで、前記第1の記憶制御装置のキャッシュメモリに前記第2の記憶制御装置の論理ボリュームに保存されているデータを割り当て、
    前記上位装置が当該データにアクセスできるように、
    構成されてなる請求項1又は2記載の記憶制御システム。
  13. 前記第1の記憶制御装置の制御部は、前記仮想ボリュームに全体世代番号を、当該仮想ボリュームの各管理領域に個別の世代番号を設定し、前記上位装置がアクセスした前記仮想ボリュームの管理領域の世代番号と前記全体番号を比較し、両者が一致している場合には、当該管理領域に対応するキャッシュメモリ記憶領域のデータを前記リストアデータと判定し、両者が一致していない場合には、前記管理領域に対応するキャッシュメモリの記憶領域のデータをパージし、次いで、当該記憶領域に前記リストアデータを記憶するようにした請求項請求項12記載の記憶制御システム。
  14. 前記第1の記憶制御装置の制御部は、前記仮想ボリュームの代表世代番号を、前記上位装置からの前記パージのコマンドを受ける都度、更新するようにした請求項13記載の記憶制御システム。
  15. 前記第2記憶制御装置の論理ボリュームに他の上位装置が接続され、当該上位装置からのリストアデータが当該論理ボリュームに記憶されている請求項2記載の記憶制御システム。
  16. 前記仮想ボリュームとコピーペアの関係を持つ他の論理ボリュームが前記第1の記憶制御装置に備わっている、請求項3記載の記憶制御システム。
  17. 前記パージ処理は、前記第1の記憶制御装置の制御部が、前記仮想ボリュームの管理領域に前記キャッシュメモリの記憶領域との対応関係が無いことを示す制御コードを設定するものである請求項9記載の記憶制御システム。
  18. 前記パージ処理は、前記第1の記憶制御装置の制御部が、前記管理領域に、前記キャッシュメモリ記憶領域の記憶データが無効であることを示す制御コードを設定するものである請求項2記載の記憶制御システム。
  19. 前記第1の記憶制御装置の制御部は、前記パージ処理された、前記キャッシュメモリの記憶領域に、前記リストアデータを記憶する請求項1又は2記載の記憶制御システム。
  20. 第1の記憶制御装置と第2の記憶制御装置とが互いに通信可能に接続された記憶制御システムに対して適用され、上位装置からのリクエストに応じたデータ処理を行う記憶制御方法であって、
    前記第1の記憶制御装置は、
    前記第2の記憶制御装置の論理ボリュームに対応付けられた仮想ボリュームと、
    当該仮想ボリュームに対応つけられたキャッシュメモリと、
    当該キャッシュメモリと仮想ボリュームと間のデータ処理を制御する制御部とを備え、
    前記制御部は、前記論理ボリュームのリストアデータを前記キャッシュメモリに記憶する際に、前記上位装置がアクセスする前記仮想論理ボリュームに対応する前記キャッシュメモリの記憶領域をパージするステップを実行する記憶制御方法。

JP2005133978A 2005-05-02 2005-05-02 記憶制御システム及び記憶制御方法 Expired - Fee Related JP4648751B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005133978A JP4648751B2 (ja) 2005-05-02 2005-05-02 記憶制御システム及び記憶制御方法
US11/170,156 US7660946B2 (en) 2005-05-02 2005-06-30 Storage control system and storage control method
DE602006003938T DE602006003938D1 (de) 2005-05-02 2006-02-24 System und Verfahren zur Speichersteuerung
EP06250986A EP1720101B1 (en) 2005-05-02 2006-02-24 Storage control system and storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005133978A JP4648751B2 (ja) 2005-05-02 2005-05-02 記憶制御システム及び記憶制御方法

Publications (2)

Publication Number Publication Date
JP2006309640A true JP2006309640A (ja) 2006-11-09
JP4648751B2 JP4648751B2 (ja) 2011-03-09

Family

ID=36809652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005133978A Expired - Fee Related JP4648751B2 (ja) 2005-05-02 2005-05-02 記憶制御システム及び記憶制御方法

Country Status (4)

Country Link
US (1) US7660946B2 (ja)
EP (1) EP1720101B1 (ja)
JP (1) JP4648751B2 (ja)
DE (1) DE602006003938D1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010277555A (ja) * 2009-06-01 2010-12-09 Fujitsu Ltd 中継装置及び中継プログラム
JP2010282324A (ja) * 2009-06-03 2010-12-16 Fujitsu Ltd ストレージ制御装置、ストレージシステムおよびストレージ制御方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7392234B2 (en) * 1999-05-18 2008-06-24 Kom, Inc. Method and system for electronic file lifecycle management
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
JP5037881B2 (ja) 2006-04-18 2012-10-03 株式会社日立製作所 ストレージシステム及びその制御方法
JP5057366B2 (ja) 2006-10-30 2012-10-24 株式会社日立製作所 情報システム及び情報システムのデータ転送方法
US20080147985A1 (en) * 2006-12-13 2008-06-19 International Business Machines Corporation Method and System for Purging Data from a Controller Cache
JP2009151677A (ja) * 2007-12-21 2009-07-09 Fujitsu Ltd ストレージ制御装置、ストレージ制御プログラムおよびストレージ制御方法
JP5222617B2 (ja) 2008-04-28 2013-06-26 株式会社日立製作所 情報システム及びi/o処理方法
TW201005516A (en) * 2008-07-22 2010-02-01 Inventec Corp Method for providing a customized response from a disk array
US8230238B2 (en) * 2008-08-25 2012-07-24 International Business Machines Corporation Estimating power consumption in a computing environment
WO2011125106A1 (en) * 2010-04-05 2011-10-13 Hitachi, Ltd. Storage system configured from plurality of storage modules and method for switching coupling configuration of storage modules
WO2012032576A1 (en) * 2010-09-09 2012-03-15 Hitachi, Ltd. Computer system control method and computer system
WO2013157094A1 (ja) * 2012-04-18 2013-10-24 株式会社日立製作所 管理システム及び管理方法
US10037279B1 (en) * 2012-06-20 2018-07-31 EMC IP Holding Company LLC Host device caching of a business process data
JP6055924B2 (ja) * 2013-01-07 2016-12-27 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
CN106557264B (zh) * 2015-09-25 2019-11-08 伊姆西公司 针对固态硬盘的存储方法及设备
US11372976B2 (en) * 2020-07-08 2022-06-28 Hitachi, Ltd. Accelerating method of snapshot investigation for rollback from ransomware
US11327858B2 (en) * 2020-08-11 2022-05-10 Seagate Technology Llc Preserving data integrity during controller failure

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06208476A (ja) * 1992-01-21 1994-07-26 Tandem Comput Inc 冗長アレイパリティキャッシングシステム
JPH10105467A (ja) * 1996-04-04 1998-04-24 Symbios Logic Inc 冗長キャッシュを備えているraidコントローラにおけるキャッシュのコンシステンシーを維持するための方法および装置
JP2001216185A (ja) * 2000-02-02 2001-08-10 Hitachi Ltd 情報処理システムのデータ復旧方法及びディスクサブシステム
JP2002007304A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd ストレージエリアネットワークを用いた計算機システム及びそのデータ取り扱い方法
JP2002123479A (ja) * 2000-10-17 2002-04-26 Hitachi Ltd ディスク制御装置およびそのキャッシュ制御方法
JP2003208345A (ja) * 2002-01-16 2003-07-25 Hitachi Ltd ネットワーク型記憶装置
JP2005107645A (ja) * 2003-09-29 2005-04-21 Hitachi Ltd 記憶システム及び記憶制御装置
JP2005534081A (ja) * 2001-09-21 2005-11-10 ポリサーブ・インコーポレーテッド 共有ストレージを備えたマルチノード環境のためのシステムおよび方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2924705B2 (ja) * 1995-04-10 1999-07-26 富士ゼロックス株式会社 メモリ管理方法およびオブジェクト管理方法
US7392234B2 (en) 1999-05-18 2008-06-24 Kom, Inc. Method and system for electronic file lifecycle management
US6023223A (en) * 1999-03-18 2000-02-08 Baxter, Jr.; John Francis Early warning detection and notification network for environmental conditions
US6442241B1 (en) * 1999-07-15 2002-08-27 William J. Tsumpes Automated parallel and redundant subscriber contact and event notification system
US6563910B2 (en) * 2001-02-26 2003-05-13 Royal Thoughts, Llc Emergency response information distribution
US6574561B2 (en) * 2001-03-30 2003-06-03 The University Of North Florida Emergency management system
US6640291B2 (en) * 2001-08-10 2003-10-28 Hitachi, Ltd. Apparatus and method for online data migration with remote copy
JP4598387B2 (ja) * 2003-09-17 2010-12-15 株式会社日立製作所 記憶システム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06208476A (ja) * 1992-01-21 1994-07-26 Tandem Comput Inc 冗長アレイパリティキャッシングシステム
JPH10105467A (ja) * 1996-04-04 1998-04-24 Symbios Logic Inc 冗長キャッシュを備えているraidコントローラにおけるキャッシュのコンシステンシーを維持するための方法および装置
JP2001216185A (ja) * 2000-02-02 2001-08-10 Hitachi Ltd 情報処理システムのデータ復旧方法及びディスクサブシステム
JP2002007304A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd ストレージエリアネットワークを用いた計算機システム及びそのデータ取り扱い方法
JP2002123479A (ja) * 2000-10-17 2002-04-26 Hitachi Ltd ディスク制御装置およびそのキャッシュ制御方法
JP2005534081A (ja) * 2001-09-21 2005-11-10 ポリサーブ・インコーポレーテッド 共有ストレージを備えたマルチノード環境のためのシステムおよび方法
JP2003208345A (ja) * 2002-01-16 2003-07-25 Hitachi Ltd ネットワーク型記憶装置
JP2005107645A (ja) * 2003-09-29 2005-04-21 Hitachi Ltd 記憶システム及び記憶制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010277555A (ja) * 2009-06-01 2010-12-09 Fujitsu Ltd 中継装置及び中継プログラム
JP2010282324A (ja) * 2009-06-03 2010-12-16 Fujitsu Ltd ストレージ制御装置、ストレージシステムおよびストレージ制御方法

Also Published As

Publication number Publication date
US7660946B2 (en) 2010-02-09
EP1720101B1 (en) 2008-12-03
DE602006003938D1 (de) 2009-01-15
US20060248297A1 (en) 2006-11-02
EP1720101A1 (en) 2006-11-08
JP4648751B2 (ja) 2011-03-09

Similar Documents

Publication Publication Date Title
EP1720101B1 (en) Storage control system and storage control method
US8635424B2 (en) Storage system and control method for the same
US7096338B2 (en) Storage system and data relocation control device
US8799600B2 (en) Storage system and data relocation control device
US7673107B2 (en) Storage system and storage control device
US7308528B2 (en) Virtual tape library device
US7707357B2 (en) Storage control system and method having first and second channel control sections which convert file level data to block level data, judge whether block level data is to be stored in external storage and identifies save destination address of file level data based on metadata
JP4634136B2 (ja) 記憶制御システム
JP2007141216A (ja) 複数のプロトコルアクセス可能なosdストレージサブシステムのためのシステム、方法および装置
JP2008134712A (ja) ファイル共有システム、ファイル共有装置及びファイル共有用ボリュームの移行方法
JP2008047156A (ja) ストレージシステム及びデータ再配置制御装置
JP2007066192A (ja) ストレージシステム及びその制御方法並びにコンピュータプログラム
US8732428B2 (en) Computer system and its control method
JP5052257B2 (ja) 記憶システム及び記憶制御装置
US7424572B2 (en) Storage device system interfacing open-system host computer input/output interfaces
JP2009129261A (ja) ストレージシステム及びストレージシステムの外部ボリューム接続経路探索方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080226

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101112

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

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

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

Free format text: PAYMENT UNTIL: 20131217

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