JP2005122453A - ストレージ装置のディスクコントローラ制御方式およびストレージ装置 - Google Patents

ストレージ装置のディスクコントローラ制御方式およびストレージ装置 Download PDF

Info

Publication number
JP2005122453A
JP2005122453A JP2003356450A JP2003356450A JP2005122453A JP 2005122453 A JP2005122453 A JP 2005122453A JP 2003356450 A JP2003356450 A JP 2003356450A JP 2003356450 A JP2003356450 A JP 2003356450A JP 2005122453 A JP2005122453 A JP 2005122453A
Authority
JP
Japan
Prior art keywords
control unit
data
cache memory
unit
storage 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.)
Pending
Application number
JP2003356450A
Other languages
English (en)
Inventor
Takanari Baba
貴成 馬場
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 JP2003356450A priority Critical patent/JP2005122453A/ja
Priority to US10/876,549 priority patent/US7334164B2/en
Publication of JP2005122453A publication Critical patent/JP2005122453A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated

Landscapes

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

Abstract

【課題】複数のディスクコントローラ部を備えるストレージ装置において、ディスクコントローラ部に障害が発生したときの障害復帰に要する時間を短縮する。
【解決手段】ストレージ装置101は、n個(n>2、nは整数)のディスクコントローラ部1041、…、104nを備える。ディスクコントローラ部1041等は、キャッシュメモリ1071、…、107nを含む。キャッシュメモリ1071のデータは、他のキャッシュメモリ(例えば、1072)に複製されている。ディスクコントローラ部1041に障害が発生すると、キャッシュメモリ1072に複製されているデータのうちディスクに書き込まれていないデータを、更に他のキャッシュメモリ(例えば、1073)に転送する。
【選択図】 図1

Description

本発明は、計算機装置とストレージ装置との間の通信を制御するディスクコントローラ部を備えるストレージ装置における、そのディスクコントローラ部の制御方式に関し、特に、ディスクコントローラ部をn(n>2、nは整数)個持つストレージ装置において、ディスクコントローラ部の構成の変更方法や、ディスクコントローラ部に発生した障害の復帰方法に関する。
企業やデータセンタ内では、大量のデータを保存するために、複数のディスクを備えたストレージ装置が用いられる。最近では、従来の売上管理、在庫管理、財務管理の業務システムに加え、インターネットを用いた電子商取引システムやWEBサービス向けのシステム等の新しい業務が拡大しており、そこで生まれるデータの保存のために必要なストレージ容量が年々増加している。従って、ストレージ装置には、増加するデータ容量に対応するため、連続的にディスク記憶装置を追加できることが要求される。また、特に企業の基幹業務システム停止は大きな損失につながるため、そこで用いられるストレージ装置には障害を最小限にする高信頼性が要求される。これらの要求を満たすストレージ装置として、ストレージ装置ベンダー各社からは、例えば特許文献1や特許文献2に示すような、様々なディスクアレイ装置が販売されている。
従来のストレージ装置の構成を、図9を参照して説明する。
ストレージ装置901は、ストレージ装置901に対してデータアクセスを行う計算機装置902に接続されている。ストレージ装置901は、ディスク記憶装置部910と、ディスクコントローラ部9041、9042とを含む。ディスク記憶装置部910は、複数のディスク記憶装置から構成される。
ディスクコントローラ部9041等は、計算機装置902とディスク記憶装置910との間でデータアクセスの制御を行い、キャッシュメモリ9071、9072及びマイクロプロセッサ(MP)9061、9062を含む。キャッシュメモリ9071等は、データアクセスを高速化するためにデータを一時的に保存する。マイクロプロセッサ9061等は、キャッシュメモリ9071等を管理し、計算機装置902とディスクコントローラ部9041等との間の通信を制御し、ディスクコントローラ部9041等とディスク記憶装置部910との間の通信を制御し、ディスク記憶装置部910へのデータの保存を管理する。
計算機装置902とディスクコントローラ部9041、9042との間は、計算機装置902内のインターフェースカード(IO)903とディスクコントローラ部9041等のホストアダプタカード(HA)9051、9052との間を、光ファイバ又はメタルケーブル9111、9112で接続し、例えばファイバチャネルやSCSI等のプロトコルを用いてデータを送受信する。一方、ディスクコントローラ部9041、9042とディスク記憶装置部910との間は、ディスクアダプタカード(DA)9081、9082および光ファイバまたはメタルケーブル9121、9122を介して、例えばファイバチャネルやSCSI等のプロトコルを用いてデータを送受信する。
次に、計算機装置902がストレージ装置901にアクセスする方法を説明する。計算機装置902がストレージ装置901に記憶されたデータにアクセス(データ書き込み又はデータ読み出し)するときは、2個のディスクコントローラ部9041、9042の一方(例えば、9041)を選択して、このディスクコントローラ部9041を介してディスク記憶装置部910にアクセスする。アクセスデータは一時的にキャッシュメモリ9071に保存される。計算機装置902は、ディスク記憶装置部910と比べてデータアクセス速度の速い半導体メモリにアクセスするため、データアクセス速度が向上する。
このとき、もう一方のディスクコントローラ部9042のキャッシュメモリ9072には、メモリ間通信経路909を介してキャッシュメモリ9071のデータが複製される(ミラーリング)。このディスクコントローラ部の2重構成によって、一方のディスクコントローラ部に障害が起きた場合でも、もう一方のディスクコントローラ部へのデータアクセスが可能となり、ストレージ装置が高信頼化される。
米国特許第6438647号明細書 米国特許第6330642号明細書
図10は、従来のストレージ装置(図9)において、ディスクコントローラ部1(例えば、9041)に障害が起きたときの障害復帰手順を示したシーケンス図である。ディスクコントローラ部1に障害が発生する(S1001)と、2つのディスクコントローラ部の間では、例えばハートビート等の障害監視方法により、ディスクコントローラ部2(例えば、9042)が障害を認識する(S1002)。ディスクコントローラ部2は、ディスクコントローラ部1に障害が発生したことを計算機装置902に通知し(S1004)、新規アクセスを禁止する(S1005、S1006)。この時点で、ディスクコントローラ部2のキャッシュメモリ上の、ディスク記憶装置部910への書き込みが行われていないキャッシュデータ(未書き込みキャッシュデータ)は、2重化されていない。従って、ディスクコントローラ部2にも障害が発生した場合は、未書き込みキャッシュデータを復元することができない。これはデータ喪失という信頼性の面での重大な問題となる。これを防ぐための障害復帰処理として、ディスクコントローラ部2は未書き込みキャッシュデータを直ちにディスク記憶装置部910へ書き込む(S1007、S1008)。
しかし、ディスク記憶装置部910への書き込みは、半導体メモリであるキャッシュメモリ9071等への書き込みと比較して、時間を要する。このため、記憶装置へのアクセス禁止期間FTが長くなり、業務への影響が大きい。
未書き込みキャッシュデータをディスク記憶装置910へ書き込んだ後に、ディスクコントローラ部2は、計算機装置902へ新規アクセス許可する(S1009)。計算機装置902は、ディスクコントローラ部2に対してデータアクセスを開始する(S1011)。一方、障害が発生したディスクコントローラ部1は、リセット又は交換(S1012)することによって障害復帰を行い、ディスクコントローラ部2に障害復帰を通知する(S1013)。
これをディスクコントローラ部2が認識して(S1014)、2台のディスクコントローラ部1及び2による2重系が構成され、通常状態に復帰する(S1015、S1016)。この結果、通常状態に戻り、データ書き込みアクセス時にキャッシュメモリに一時的にデータを保存することによってデータアクセス速度が高速化される。
しかし、新規アクセスが許可(S1009)されてから通常状態に復帰する(S1015、S1016)までの期間STにおいては、障害が発生したディスクコントローラ部1は稼動していないため、ディスクコントローラ部2のみへのデータアクセスとなる。このため、データ書き込みアクセスを行う場合は、アクセスのたびにディスクにデータを書き込んで、データ喪失を防ぐ必要がある。このため、期間STにおけるデータアクセス速度が大幅に低下する。
また、障害発生時以外においても、保守等のために、装置の構成変更が必要となることがある。しかし、その度にシステムを停止することは、特に企業の基幹業務等においては大きな損失につながる。
本発明は、このような問題点に鑑みてなされたものであり、前記のストレージアクセス停止期間FTが短く、前記障害復帰するまでの期間STにおいて高信頼かつ高速のデータアクセスが実現でき、システムを停止させることなく保守を行うことができるストレージ装置およびディスクコントローラ制御方法を提供することを目的とする。
第1の発明は、複数の記憶媒体を含む記憶装置部と、
計算機装置から前記記憶装置部へのデータの書き込み及び前記記憶装置部から前記計算機装置へのデータの読み出しを制御するプロセッサと、前記データを一時的に保存するキャッシュメモリとを有する複数の制御部と、
前記制御部に発生した障害を検出する管理部と、を備え、
前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置の制御方法において、
前記計算機装置が前記ストレージ装置にデータを書き込むと、当該データを前記制御部のうち現用制御部のキャッシュメモリに書き込み、当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製し、
前記管理部によって前記現用又は待機用制御部のいずれかに障害が発生したことが検出されると、前記現用又は待機用制御部の障害が発生していない制御部のキャッシュメモリに保存されたデータのうち前記記憶装置部に書き込まれていないデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とする。
第2の発明は、複数の記憶媒体を含む記憶装置部と、
計算機装置から前記記憶装置部へのデータの書き込み及び前記記憶装置部から前記計算機装置へのデータの読み出しを制御するプロセッサと、前記データを一時的に保存するキャッシュメモリとを有する複数の制御部と、
前記制御部の構成を管理する管理部と、を備え、
前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置の制御方法において、
前記計算機装置が前記ストレージ装置にデータを書き込むと、前記データを前記制御部のうち現用制御部のキャッシュメモリに書き込み、当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製し、
前記管理部が前記制御部の構成変更を指示すると、前記現用又は待機用制御部のキャッシュメモリに保存されたデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とする。
第1の発明によると、複数のディスクコントローラ部を含むストレージ装置において、ディスクコントローラ部に障害が発生したときに、ディスクコントローラ部のキャッシュメモリ上の未書き込みキャッシュデータを、データアクセス速度が遅いディスク記憶装置に書き込むかわりに、データアクセス速度が速い半導体メモリである別のディスクコントローラ部のキャッシュメモリに複製する。このため、障害復帰手順において、計算機装置がストレージ装置へのデータアクセスを禁止される時間を短縮できる。また、その後、新規データアクセスが許可された時点でキャッシュメモリが2重化されているため、データアクセス速度を低下させることなく稼動することができる。このように、第1の発明によると、データアクセス性能を低下させることなく、ストレージ装置を高信頼化することができる。
第2の発明によると、使用しているディスクコントローラ部のキャッシュメモリのデータを、使用していないディスクコントローラ部のキャッシュメモリに複製することによって、その使用しているディスクコントローラ部を使用しないようにして、保守のために取り外すこと、又は、他の計算機装置のデータアクセス用のディスクコントローラ部として使用することができる。また、新たに追加したディスクコントローラ部を使用することができる。
以下、本発明の実施の形態について、図面を参照して説明する。
図1は、本発明の第1の実施の形態のストレージ装置の構成を示すブロック図である。
図1において、本発明が適用されたストレージ装置101は、ストレージ装置101のデータにアクセスする計算機装置102に接続されている。ストレージ装置101には、データを保存するためのディスク記憶装置部110が設けられている。
また、ストレージ装置101には、従来例(図9)と同様に、計算機装置102とディスク記憶装置部110との間でデータアクセスの制御を行うn個のディスクコントローラ部1041、1042、1043、…、104n(n>2、nは整数)が設けられている。ディスクコントローラ部1041〜104nは、キャッシュメモリ1071、1072、1073、…、107n及びマイクロプロセッサ(MP)1061、1062、1063、…、106nを含んで構成される。キャッシュメモリ1071〜107nは、データアクセスを高速化するために、ディスク記憶装置部110に書き込むデータや、ディスク記憶装置部110から読み出されたデータを一時的に保存する半導体メモリである。
マイクロプロセッサ1061〜106nは、キャッシュメモリ1071〜107nの管理、計算機装置102とディスクコントローラ部1041〜104nとの間の通信制御、ディスクコントローラ部1041〜104nとディスク記憶装置部110との間の通信制御、及び、ディスク記憶装置部110へのデータの保存の管理等を行う。マイクロプロセッサ1061〜106nの制御によって、例えば、ディスク記憶装置部110の複数のディスク記憶装置を1台のディスク記憶装置として使用するRAIDを構成することができる。
計算機装置102とディスクコントローラ部1041〜104nとの間のデータ通信は、計算機装置内のインターフェースカード(IO)103とディスクコントローラ部内のホストアダプタカード(HA)1051、1052、1053、…、105nとの間を、光ファイバ又はメタルケーブル1111、1112、1113、…、111nで接続し、例えば、ファイバチャネルやSCSI等のプロトコルを用いて行われる。
一方、ディスクコントローラ部1041〜104nとディスク記憶装置部110との間は、インターフェースアダプタ(IA)1081、1082、1083、…、108n、117を介して、例えば、InfiniBand等の装置内部ネットワーク114を用いて接続され、データが送受信される。ストレージ装置管理部112は、インターフェースアダプタ113及び装置内部ネットワーク114を介してディスクコントローラ部1041〜104n及びディスク記憶装置部110と接続され、これらと通信を行って、ストレージ装置101内のディスクコントローラ部1041〜104n及びディスク記憶装置部110の障害を監視し、ストレージ装置101の構成情報を管理し、ディスクコントローラ部1041〜104nのデータアクセスの負荷情報やキャッシュメモリ1071〜107nの使用率情報を収集する。
なお、図1においては、動作を簡単に説明するために計算機装置102とディスク記憶装置部110とをそれぞれ1個しか示していないが、一般に、計算機装置をm個(m>0、mは整数)、ディスク記憶装置部をk個(k>0、kは整数)として各々複数設けることができる。
次に、計算機装置102がストレージ装置101にアクセスする方法を説明する。計算機装置102がストレージ装置101に記憶されたデータにアクセス(データ書き込み又はデータ読み出し)するときは、前記n個のディスクコントローラ部1041〜104nのうち1つを現用系、別の1つを待機系、残りのn−2個をデータアクセスに関与しない予備系として割り当てる。例えば、1041を現用系、1042を待機系、1043、…、104nを予備系として割り当てる。
計算機装置102は、現用系のディスクコントローラ部1041を介してディスク記憶装置部110にアクセスする。このとき、ストレージ管理部112から計算機装置102内のデバイスドライバ(図示省略)への指示によって、ディスクコントローラ部1041へのデータアクセスパス1111が選択される。アクセスデータ(ストレージ装置101に書き込まれるデータ又はストレージ装置101から読み出されるデータ)は一時的にキャッシュメモリ1071に保存される。キャッシュメモリ1071は、ディスク記憶装置部110と比べてデータアクセス速度が速い半導体メモリであるため、計算機装置102がディスク記憶装置110にアクセスする代わりにキャッシュメモリ1071にアクセスすることによって、データアクセス速度が向上する。
このとき、待機系のディスクコントローラ1042のキャッシュメモリ1072には、例えば、装置内部ネットワーク114を経由してキャッシュメモリ1071のデータの複製が作成される(ミラーリング)。このように、ディスクコントローラ部1041(現用系)及び1042(待機系)のキャッシュメモリ1071及び1072に同じデータが書き込まれていると、一方のディスクコントローラ部に障害が発生しても、もう一方のディスクコントローラ部のキャッシュメモリのデータが残る。計算機装置102は、そのデータにアクセスすることができるため、データが喪失せず、ストレージ装置101の信頼性が向上する。
なお、ここでは説明を簡単にするためにミラーリングを例示したが、例えば、キャッシュメモリ1071に記憶されたキャッシュデータのうち、書き込みデータのみをキャッシュメモリ1072に複製してもよい。キャッシュデータのうち読み出しデータは、ディスク記憶装置部110から複製されたものであるため、ディスクコントローラ部1041に障害が発生してもデータが失われることはないからである。
本発明においては、ディスクコントローラ部1041〜104nのキャッシュデータには、図示しないメタデータが付属する。このメタデータには、そのキャッシュデータの論理アドレス値、そのキャッシュデータが書き込みデータか読み出しデータかを区別するための識別子、ディスクに書き込んだか否かを示す識別子、及び、キャッシュメモリに常駐するキャッシュデータであることを示す識別子等の、従来から用いられているデータに加えて、現用系のキャッシュデータか待機系のキャッシュデータかを示す識別子と、そのキャッシュデータが現用系のときは、そのデータの複製が書き込まれているキャッシュメモリを含むディスクコントローラを示し、そのキャッシュデータが待機系のときは、そのデータを複製する元となったデータが書き込まれているキャッシュメモリを含むディスクコントローラを示す識別子(2重化対象識別子)と、が含まれる。ここで、キャッシュメモリに常駐するキャッシュデータとは、ディスク記憶装置部110に書き込んだか否かに関らずキャッシュメモリに常駐することを定められたデータをいう。例えば、アクセス頻度の高いデータをキャッシュメモリに常駐させることによって、データアクセス速度を向上させることができる。
図1において、ディスクコントローラ部の1つに障害が発生したときは、そのディスクコントローラ部とn−2個の予備系のディスクコントローラ部のうちの1つとを交換する構成変更を行う。これによって、従来よりも高速な障害復帰が可能となる。この構成変更のときに、前記メタデータを検索することによって、どのキャッシュデータを他のディスクコントローラ部に転送する必要があるかを知ることができる。
次に、この障害復帰手順について、図2及び図3を参照して説明する。
図2は、本発明の第1の実施の形態のストレージ装置において、現用系のディスクコントローラ部に障害が発生したときの処理を示すシーケンス図である。
現用系として稼動中のディスクコントローラ部1(例えば、1041)に障害が発生する(S201)と、ストレージ装置管理部112が、例えば、ハートビート等の障害監視方法によって、その障害を検出する(S202)。ストレージ装置管理部112は、各ディスクコントローラ部と計算機装置102とにディスクコントローラ部1で障害が発生したこと及び障害復帰するための構成変更の情報を通知する(S203)。ここでは、ストレージ装置101の構成を、待機系のディスクコントローラ部2(例えば、1042)を新現用系に、予備系のディスクコントローラ部3(例えば、1043)を新待機系に変更する。
ディスクコントローラ部2は、ストレージ装置管理部112からの指示(S203)によって、障害を認識すると共に新現用系への変更処理を開始し(S205)、計算機装置102による新規アクセスが禁止される(S208)。一方、ディスクコントローラ部3は、ストレージ装置管理部112からの指示(S203)によって、障害を認識すると共に新待機系への変更処理を開始し(S204)、計算機装置102による新規アクセスが禁止される(S207)。計算機装置102は、ストレージ装置管理部112からの指示(S203)によって、障害を認識し(S206)、ストレージ装置101への新規アクセスを禁止する(S209)。
この時点で、待機系のディスクコントローラ部2のキャッシュメモリ上にあるデータのうち、ディスク記憶装置へ書き込まれていないキャッシュデータ(未書き込みキャッシュデータ)は、2重化されていない。このため、ディスクコントローラ部2にも障害が発生すると、未書き込みキャッシュデータを復元することができない。これを防ぐための障害復帰処理として、従来のようにディスクコントローラ部2の未書き込みキャッシュデータを直ちにディスク記憶装置110へ書き込むかわりに、待機系のキャッシュメモリ1072に記憶されている未書き込みキャッシュデータを新待機系のディスクコントローラ部3のキャッシュメモリ1073に転送する(S210、S211)。キャッシュメモリ1073は、ディスク記憶装置部110よりデータアクセス速度が速い半導体メモリであるため、障害復帰処理にかかる時間FTを大幅に削減することができる。
このキャッシュデータの転送の終了後、キャッシュデータに付属するメタデータのうち、現用系キャッシュデータか待機系のキャッシュデータかを示す識別子と、2重化対象識別子とを、ディスクコントローラ部の構成変更と整合するように変更する(S212、S213)。これらの処理を行った後に、ディスクコントローラ部2は、ストレージ装置管理部112に障害復帰処理の終了を通知する(S214)。
ストレージ装置管理部112は、障害復帰処理終了を認識し(S215)、計算機装置102、ディスクコントローラ部2及びディスクコントローラ部3に新規アクセスの許可を通知する(S216)。その結果、ディスクコントローラ部2は新現用系として、ディスクコントローラ部3は新待機系として稼動を開始し(S217、S218)、計算機装置102は、ストレージ装置101への新規アクセスを開始する(S219)。
この時点では、障害が発生したディスクコントローラ部1は稼動していないが、ディスクコントローラ部2(新現用系)とディスクコントローラ部3(新待機系)とでデータが2重化されている。このため、データアクセス時にキャッシュメモリに一時的にデータを保存してデータアクセス速度を高速化する、通常状態に復帰することができる。
障害が発生したディスクコントローラ部1は、再起動又は交換(S220)を行うことによって障害から復帰すると、障害復帰をストレージ装置管理部に通知する(S221)。そして、ストレージ装置管理部112は障害復帰を認識する(S222)。これによって、ディスクコントローラ部1は、新予備系としての稼動を開始する(S223)。
図3は、本発明の第1の実施の形態のストレージ装置において、待機系のディスクコントローラ部に障害が発生したときの処理を示すシーケンス図である。図3は、ディスクコントローラ部1を引き続き新現用系として動作させ、ディスクコントローラ部3を新待機系として動作させる点で図2と異なるが、そのための手順は、図2に示すものとほぼ同じである。
待機系として稼動中のディスクコントローラ部2(例えば、1042)に障害が発生する(S301)と、ストレージ装置管理部112がその障害を検出する(S302)。ストレージ装置管理部112は、各ディスクコントローラ部と計算機装置102とにディスクコントローラ部2で障害が発生したこと及び障害復帰するための構成変更の情報を通知する(S303)。ここでは、ストレージ装置101の構成を、現用系のディスクコントローラ部1(例えば、1041)を引き続き新現用系に、予備系のディスクコントローラ部3(例えば、1043)を新待機系に変更する。
ディスクコントローラ部1は、ストレージ装置管理部112からの指示(S303)によって、障害を認識すると共に新現用系への変更処理を開始し(S305)、計算機装置102による新規アクセスが禁止される(S308)。一方、ディスクコントローラ部3は、ストレージ装置管理部112からの指示(S303)によって、障害を認識すると共に新待機系への変更処理を開始し(S304)、計算機装置102による新規アクセスが禁止される(S307)。計算機装置102は、ストレージ装置管理部112からの指示(S303)によって、障害を認識し(S306)、ストレージ装置101への新規アクセスを禁止する(S309)。
次に、未書き込みキャッシュデータの2重化を行うために、新現用系のディスクコントローラ部1のキャッシュメモリ1071の未書き込みキャッシュデータを新待機系のディスクコントローラ部3のキャッシュメモリ1073に転送する(S310、S311)。
このキャッシュデータの転送の終了後、キャッシュデータに付属するメタデータのうち、現用系キャッシュデータか待機系のキャッシュデータかを示す識別子と、2重化対象識別子とを、ディスクコントローラ部の構成変更と整合するように変更する(S312、S313)。これらの処理を行った後に、ディスクコントローラ部1は、ストレージ装置管理部112に障害復帰処理の終了を通知する(S314)。
ストレージ装置管理部112は、障害復帰処理終了を認識し(S315)、計算機装置102、ディスクコントローラ部1及びディスクコントローラ部3に新規アクセスの許可を通知する(S316)。その結果、ディスクコントローラ部1は新現用系として、ディスクコントローラ部3は新待機系として稼動を開始し(S317、S318)、計算機装置102は、ストレージ装置101への新規アクセスを開始し(S319)、通常状態に復帰する。
障害が発生したディスクコントローラ部2は、再起動又は交換(S320)を行うことによって障害から復帰すると、障害復帰をストレージ装置管理部に通知(S321)する。そして、ストレージ装置管理部112は障害復帰を認識する(S322)。これによって、ディスクコントローラ部2は、新予備系としての稼動を開始する(S323)。
なお、図2のS210及びS211又は図3のS310及びS311において、未書き込みキャッシュデータに加えて、キャッシュメモリに常駐するキャッシュデータをコピーしてもよい。そうすると、新規アクセスが許可された時点で、アクセス頻度の高いデータも2重化されているため、未書き込みキャッシュデータのみをコピーした場合と比較して、障害発生前のアクセス速度により近い速度を実現することができる。
次に、本発明の第1の実施の形態のストレージ装置において、ディスクコントローラ部の現用系、待機系の構成を変更する手順を、図4及び図5を参照して説明する。この手順を用いることによって、ストレージ装置が通常の稼動をしているときに、ディスクコントローラ部を追加し、削減し、データアクセス集中を回避するための負荷分散をすることができる。
図4は、本発明の第1の実施の形態のストレージ装置において、現用系のディスクコントローラ部を予備系に、予備系のディスクコントローラ部を現用系に構成変更する処理を示すシーケンス図である。
まず、オペレータ又は管理ソフトウェアの指示により構成変更手順が開始する(S401)。ストレージ装置管理部112は、計算機装置102および各ディスクコントローラ部に構成変更を指示する(S402)。計算機装置102は、指示(S402)によってストレージ装置101の構成変更を認識する(S406)。現用系のディスクコントローラ部1は、指示(S402)によって構成変更を認識すると共に新予備系への構成変更処理を開始する(S405)。待機系のディスクコントローラ部2は、指示(S402)によって構成変更を認識すると共に新待機系への構成変更処理を開始する(S404)。予備系のディスクコントローラ部3は、指示(S402)によって構成変更を認識すると共に新現用系への構成変更処理を開始する(S403)。
次に、現用系ディスクコントローラ部1のキャッシュデータを、ディスクコントローラ部3のキャッシュメモリ1073に転送する(S407、S408)。このようにして、変更された構成での稼動開始前にあらかじめキャッシュデータを持つことによって、データアクセス速度の遅いディスク記憶装置部110へのアクセスが減少し、データアクセス性能が向上する。
キャッシュデータのコピー後、ディスクコントローラ部の構成変更に関係するメタデータを書き換える。ここでは、現用系キャッシュデータか待機系のキャッシュデータかを示す識別子と、2重化対象識別子とを、ディスクコントローラ部の構成変更と整合するように変更する(S409、S410)。
これらの処理を行った後、ディスクコントローラ部1はストレージ装置管理部112へ変更処理の終了を通知する(S411)。ストレージ装置管理部112は、構成変更処理終了を認識し(S412)、計算機装置102および各ディスクコントローラ部へ新しい構成でのデータアクセスを指示する(S413)。その結果、ディスクコントローラ部1は新予備系として、ディスクコントローラ部2は新待機系として、ディスクコントローラ部3は新現用系として稼動を開始する(S414、S415、S416)。また、計算機装置102は、構成が変更されたストレージ装置101に対して新規アクセスを開始する(S417)。
図5は、本発明の第1の実施の形態のストレージ装置において、待機系のディスクコントローラ部を予備系に、予備系のディスクコントローラ部を待機系に構成変更する処理を示すシーケンス図である。
まず、オペレータ又は管理ソフトウェアの指示により構成変更手順が開始する(S501)。ストレージ装置管理部112は、計算機装置102および各ディスクコントローラ部に構成変更を指示する(S502)。計算機装置102は、指示(S502)によってストレージ装置101の構成変更を認識する(S506)。現用系のディスクコントローラ部1は、指示(S502)によって構成変更を認識すると共に新現用系への構成変更処理を開始する(S505)。待機系のディスクコントローラ部2は、指示(S502)によって構成変更を認識すると共に新予備系への構成変更処理を開始する(S504)。予備系のディスクコントローラ部3は、指示(S502)によって構成変更を認識すると共に新待機系への構成変更処理を開始する(S503)。
次に、現用系ディスクコントローラ部1のキャッシュデータを、ディスクコントローラ部3のキャッシュメモリ1073に転送する(S507,S508)。このようにして、変更された構成での稼動開始前にあらかじめキャッシュデータを持つことによって、データアクセス速度の遅いディスク記憶装置部110へのアクセスが減少し、データアクセス性能が向上する。
キャッシュデータのコピー後、ディスクコントローラ部の構成変更に関係するメタデータを書き換える。ここでは、現用系キャッシュデータか待機系のキャッシュデータかを示す識別子と、2重化対象識別子とを、ディスクコントローラ部の構成変更と整合するように変更する(S509、S510)。
これらの処理を行った後、ディスクコントローラ部2はストレージ装置管理部112へ変更処理の終了を通知する(S511)。ストレージ装置管理部112は、構成変更処理終了を認識し(S512)、計算機装置102および各ディスクコントローラ部へ新しい構成でのデータアクセスを指示する(S513)。その結果、ディスクコントローラ部1は新現用系として、ディスクコントローラ部2は新予備系として、ディスクコントローラ部3は新待機系として稼動を開始する(S514、S515、S516)。また、計算機装置102は、構成が変更されたストレージ装置101に対して新規アクセスを開始する(S517)。
なお、図2及び図3に示す障害復帰手順では、キャッシュデータの転送の際には、転送元のディスクコントローラ部及び転送先のディスクコントローラ部へのアクセスを禁止したが、図4及び図5に示す構成変更手順においては、キャッシュデータが2重化されているため、転送元のディスクコントローラ部及び転送先のディスクコントローラ部へのアクセスを許可したままキャッシュデータのコピーをすることができる。
図4及び図5に示す手順を用いると、現用系又は待機系として使用しているディスクコントローラ部を予備系に変更して、保守のために取り外すこと、又は他の計算機装置のデータアクセス用のディスクコントローラ部として稼動させることができる。また、新たに追加したディスクコントローラ部を現用系又は待機系として使用することができる。
図6は、本発明の第2の実施の形態のストレージ装置の構成を示すブロック図である。
図6のストレージ装置601は、図1に示す第1の実施の形態のストレージ装置101と同じ構成であるが、ストレージ装置601と計算機装置602との間のデータ通信方法が異なる。ストレージ装置601には、データを保存するためのディスク記憶装置部610が設けられている。ディスクコントローラ部6041、6042、6043、…、604n(n>2、nは整数)は、少なくともキャッシュメモリ6071、6072、6073、…、607n、及び、マイクロプロセッサ(MP)6061、6062、6063、…、606nを含んで構成される。
計算機装置602とディスクコントローラ部6041〜604nとの間は、計算機装置内のインターフェースカード(IO)603と、ディスクコントローラ部内のホストアダプタカード(HA)6051、6052、6053、…、605nとの間に、ネットワークスイッチ616を配置し、計算機装置602とネットワークスイッチ616との間及びネットワークスイッチ616とホストアダプタカード6051〜605nとの間を光ファイバ又はメタルケーブルで接続し、例えば、ファイバチャネル等のプロトコルを用いて、データを送受信する。このような接続方法によって、図6に示すように1台の計算機装置601ではなく、複数の計算機装置をネットワークスイッチ616に接続することができる。
一方、ディスクコントローラ部6041〜604nとディスク記憶装置部610の間は、インターフェースアダプタ(IA)6081、6082、6083、…、608n、617を介して、例えば、InfiniBand等の装置内部ネットワーク614を用いて接続され、データが送受信される。ストレージ装置管理部612は、インターフェースアダプタ613及び装置内部ネットワーク614を介してディスクコントローラ部6041〜604n及びディスク記憶装置部610と接続され、これらと通信を行って、ストレージ装置601内の各部の障害を監視し、構成情報を管理し、ディスクコントローラ部6041〜604nのデータアクセスの負荷情報やキャッシュメモリ6071〜607nの使用率情報を収集する。
本実施の形態においても、ディスクコントローラ部に障害が発生したときは、図2及び図3に示す障害復帰手順を用いることができ、ディスクコントローラ部の構成を変更するときは、図4及び図5に示す構成変更手順を用いることができる。
なお、第2の実施の形態においては、ストレージ装置管理部612は、ネットワーク615を介してネットワークスイッチ616を制御することによって、計算機装置602とディスクコントローラ部6041〜604nとの間のデータ通信を制御する。
図7は、本発明の第3の実施の形態のストレージ装置の構成を示すブロック図である。
図7に示すストレージ装置701は、図1に示す第1の実施の形態のストレージ装置101と異なり、計算機装置102の代わりにm個(m>0、mは整数)の計算機部7181、7182、…、718mをストレージ装置701の内部に含む。ストレージ装置701には、データを保存するためのディスク記憶装置部710が設けられている。ディスクコントローラ部7041、7042、7043、…、704n(n>2、nは整数)は、少なくともキャッシュメモリ7071、7072、7073、…、707n及びマイクロプロセッサ7061、7062、7063、…、706nを含んで構成される。
計算機部7181〜718mとディスクコントローラ部7041〜704nとの間は、インターフェースアダプタ(IA)7081、7082、7083、…、708n、7191、7192、…、719mを介して、例えばInfiniBand等の装置内部ネットワーク714を用いて接続され、データが送受信される。一方、ディスクコントローラ部7041〜704nとディスク記憶装置部710との間は、インターフェースアダプタ7081〜708n及び717を介して、例えば前述したと同様にInfiniBand等の装置内部ネットワーク714を用いて接続され、データが送受信される。これら2つの装置内部ネットワークは、図7に示すように一つのネットワークを共有してもよいし、別々のネットワークで構成してもよい。
ストレージ装置管理部712は、装置内部ネットワーク714を介してディスクコントローラ部7041〜704n及びディスク記憶装置部710と接続され、これらと通信を行って、ストレージ装置701内の各部の障害を監視し、ストレージ装置701の構成情報を管理し、ディスクコントローラ部7041等のデータアクセスの負荷情報やキャッシュメモリ7071〜707nの使用率情報を収集する。
以上説明したように構成された第3の実施の形態においても、ディスクコントローラ部に障害が発生したときは、図2及び図3に示す障害復帰手順を用いることができ、ディスクコントローラ部の構成を変更するときは、図4及び図5に示す構成変更手順を用いることができる。
ただし、本実施の形態においては、計算機部7181〜718mがストレージ装置701の内部に含まれることから、ストレージ装置管理部712は、装置内部ネットワーク714を介して各計算機部7181〜718mを制御する。これによって、ストレージ装置管理部712は、計算機部7181〜718mとディスクコントローラ部7041〜704nとの間のデータ通信を制御する。
以上の説明においては、各ディスクコントローラ部をそれぞれ現用系、待機系又は予備系のいずれか一つに定めていたが、ディスクコントローラ部のキャッシュメモリ部を複数の領域に分けて、それぞれの領域ごとに現用系、待機系又は予備系のいずれかを割り当ててもよい。例えば、複数台接続された計算機装置ごとに領域を分けてもよいし、使用するアプリケーションごとに領域を分けてもよい。
図8は、n個(n>2、nは整数)のディスクコントローラ部DC1、DC2、…、DCnのキャッシュメモリ8071、8072、…、807n上のキャッシュデータの割り当てを模式的に示したものである。図8において、各ディスクコントローラ部のキャッシュメモリは2×(n−1)+1個の領域に分られ、他のn−1個のディスクコントローラ部に対応して一対の現用系、待機系と、予備系に割り当てられている。つまり、ディスクコントローラ部1のキャッシュメモリ8071は、DC2、DC3、…、DCnと一対となる現用系として83112、83113、…、8311nの領域が割り当てられ、DC2、DC3、…、DCnと一対となる待機系として83122、83123、…、8312nの領域が割り当てられ、予備系として8411の領域が割り当てられている。ディスクコントローラ部2、…、ディスクコントローラ部nのキャッシュメモリ8072〜807nについても同様の領域に分けられ、現用系、待機系及び予備系に割り当てられる。
ここで、それぞれの領域に付属するメタデータには、キャッシュデータの論理アドレス値、キャッシュデータが書き込みデータか読み込みデータか区別するための識別子、ディスクに書き込んだか否かを示す識別子、キャッシュメモリに常駐するキャッシュデータであることを示すための識別子、現用系キャッシュデータか待機系のキャッシュデータかを示す識別子、及び、2重化対象識別子等が含まれ、それぞれの値は、それぞれの領域の属性と整合している。
このようなキャッシュメモリの構成であっても、ディスクコントローラ部に障害が発生したときは、図2及び図3に示す障害復帰手順を用いることができ、ディスクコントローラ部の構成を変更するときは、図4及び図5に示す構成変更手順を用いることができる。
例えば、ディスクコントローラ部1に障害が発生したときは、各領域のメタデータのうち、現用系のキャッシュデータか待機系のキャッシュデータかを示す識別子を検索し、現用系のキャッシュメモリ領域83112〜8311nについては、図2に示す現用系の障害復帰手順を用い、待機系のキャッシュメモリ領域83122〜8312nについては、図3に示す待機系の障害復帰手順を用いる。その結果、ディスクコントローラ部1が障害から回復する前にキャッシュデータの2重化が回復し、その障害復帰手順においてディスクにアクセスする必要がないため、障害復帰処理時間FTを大幅に削減することができる。
また、例えば、ディスクコントローラ部1を予備系に変更するときは、各領域のメタデータのうち、現用系のキャッシュデータか待機系のキャッシュデータかを示す識別子を検索し、現用系のキャッシュメモリ領域83112〜8311nについては、図4に示す現用系の構成変更手順を用い、待機系のキャッシュメモリ領域83122〜8312nについては、図5に示す待機系の構成変更手順を用いる。その結果、ディスクコントローラ部1を保守のために取り外すことができる。また、ディスクコントローラ部1を他の計算機装置のデータアクセスのために稼動させることもできる。
また、例えば、ディスクコントローラ部1にデータアクセスが集中しているときは、各領域のメタデータのうち、現用系のキャッシュデータか待機系のキャッシュデータかを示す識別子を検索し、現用系のキャッシュメモリ領域83112〜8311nのうちのいくつかについて、図4に示す現用系の構成変更手順を用いる。その結果、集中しているデータアクセスの負荷を他のディスクコントローラ部に分散し、計算機装置102等とストレージ装置101等との間のデータアクセス速度を向上させることができる。
また、例えば、図示しないディスクコントローラ部n+1をストレージ装置に追加したときは、各領域のメタデータのうち、現用系のキャッシュデータか待機系のキャッシュデータかを示す識別子を検索し、図4又は図5に示す手順を用いて、他のディスクコントローラ部の現用系又は待機系キャッシュメモリ領域83112〜8311n、83122〜8312nのいくつかを前記ディスクコントローラ部n+1に移動する構成変更を行う。その結果、新たに追加したディスクコントローラ部n+1にデータアクセス負荷を分散し、計算機装置102等とストレージ装置101等との間のデータアクセス速度を向上させることができる。
本発明は、例えば、企業の基幹業務システムのように高い信頼性及び無停止での保守が要求されるシステムを構成するストレージ装置に適用することができ、障害復帰、保守及びデータアクセスの負荷分散時に有効である。
本発明の第1の実施の形態のストレージ装置の構成を示すブロック図である。 本発明の第1の実施の形態のストレージ装置において、現用系のディスクコントローラ部に障害が発生したときの処理を示すシーケンス図である。 本発明の第1の実施の形態のストレージ装置において、待機系のディスクコントローラ部に障害が発生したときの処理を示すシーケンス図である。 本発明の第1の実施の形態のストレージ装置において、現用系のディスクコントローラ部を予備系に、予備系のディスクコントローラ部を現用系に構成変更する処理を示すシーケンス図である。 本発明の第1の実施の形態のストレージ装置において、待機系のディスクコントローラ部を予備系に、予備系のディスクコントローラ部を待機系に構成変更する処理を示すシーケンス図である。 本発明の第2の実施の形態のストレージ装置の構成を示すブロック図である。 本発明の第3の実施の形態のストレージ装置の構成を示すブロック図である。 1つのディスクコントローラ部に現用系のキャッシュデータと待機系のキャッシュデータを混在させたときのキャッシュメモリの構成の説明図である。 従来のストレージ装置の構成を示すブロック図である。 従来のストレージ装置で現用系のディスクコントローラ部に障害が発生したときの処理を示すシーケンス図である。
符号の説明
101、601、701、901 ストレージ装置
102、602、902 計算機装置
103、602、903 計算機装置内のインターフェースカード(IO)
1041、…、104n、6041、…、604n、7041、…、704n、9041、9042 ディスクコントローラ部
1051、…、105n、6051、…、605n、9051、9052 ディスクコントローラ部内のホストアダプタカード(HA)
1061、…、106n、6061、…、606n、7061、…、706n、9061、9062 ディスクコントローラ部内のマイクロプロセッサ(MP)
1071、…、107n、6071、…、607n、7071、…、707n、9071、9072 ディスクコントローラ部内のキャッシュメモリ
1081、…、108n、6081、…、608n、7081、…、708n ディスクコントローラ部内のインターフェースアダプタ(IA)
9081、9082 ディスクコントローラ部内のディスクアダプタ(DA)
909 キャッシュメモリ間通信経路
110、611、711、911 ディスク記憶装置部
1111、…、111n、9111、9112 計算機装置とディスクコントローラ部との間の通信経路
9121、9122 ディスクコントローラ部とディスク記憶装置部との間の通信経路
112、612、712 ストレージ装置管理部
113、613、713 ストレージ装置管理部のインターフェースアダプタ(IA)
114、614、714 装置内部ネットワーク
115 ストレージ装置管理部と計算機装置との間の通信経路
615 ストレージ装置管理部とネットワークスイッチとの間の通信経路
616 ネットワークスイッチ
117、617、717 ディスク記憶装置部内のインターフェースアダプタ(IA)
7181、…、718m 計算機部
7191、…、719m 計算機部内のインターフェースアダプタ(IA)
8071、…、807n ディスクコントローラ部内のキャッシュメモリ
83112、…、8311n、83211、…、8321n、83n11、…、83n1n 現用系として割り当てられたキャッシュメモリ領域
83122、…、8312n、83221、…、8322n、83n21、…、83n2n 待機系として割り当てられたキャッシュメモリ領域
8411、…、841n 予備系として割り当てられたキャッシュメモリ領域
DC1、…、DCn ディスクコントローラ部

Claims (13)

  1. 複数の記憶媒体を含む記憶装置部と、
    計算機装置から前記記憶装置部へのデータの書き込み及び前記記憶装置部から前記計算機装置へのデータの読み出しを制御するプロセッサと、前記データを一時的に保存するキャッシュメモリとを有する複数の制御部と、
    前記制御部に発生した障害を検出する管理部と、を備え、
    前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置の制御方法において、
    前記計算機装置が前記ストレージ装置にデータを書き込むと、当該データを前記制御部のうち現用制御部のキャッシュメモリに書き込み、当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製し、
    前記管理部によって前記現用又は待機用制御部のいずれかに障害が発生したことが検出されると、前記現用又は待機用制御部の障害が発生していない制御部のキャッシュメモリに保存されたデータのうち前記記憶装置部に書き込まれていないデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とするストレージ装置の制御方法。
  2. 前記現用又は待機用制御部のいずれかに障害が発生すると、前記障害が発生していない制御部のキャッシュメモリに保存されたデータのうち、前記キャッシュメモリに常駐するデータを前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とする請求項1に記載のストレージ装置の制御方法。
  3. 前記キャッシュメモリに書き込まれたデータが、前記現用制御部に関するものか、前記待機用制御部に関するものかを示す識別子と、当該データの複製の相手方となる制御部を示す識別子とを当該キャッシュメモリに書き込み、
    前記障害が発生していない制御部のキャッシュメモリから、前記現用及び待機用以外の制御部のキャッシュメモリに転送するデータを、前記識別子によって選択することを特徴とする請求項1に記載のストレージ装置の制御方法。
  4. 前記複数の制御部のキャッシュメモリは、複数の領域に分割され、
    前記領域には、前記現用制御部に関するデータが保存されているか、前記待機用制御部に関するデータが保存されているかの属性が付されており、
    前記管理部によって前記現用又は待機用制御部のいずれかに障害が発生したことが検出されると、前記現用又は待機用制御部の障害が発生していない制御部に関する領域に保存されたデータのうち前記記憶装置部に書き込まれていないデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とする請求項1に記載のストレージ装置の制御方法。
  5. 複数の記憶媒体を含む記憶装置部と、
    計算機装置から前記記憶装置部へのデータの書き込み及び前記記憶装置部から前記計算機装置へのデータの読み出しを制御するプロセッサと、前記データを一時的に保存するキャッシュメモリとを有する複数の制御部と、
    前記制御部の構成を管理する管理部と、を備え、
    前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置の制御方法において、
    前記計算機装置が前記ストレージ装置にデータを書き込むと、前記データを前記制御部のうち現用制御部のキャッシュメモリに書き込み、当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製し、
    前記管理部が前記制御部の構成変更を指示すると、前記現用又は待機用制御部のキャッシュメモリに保存されたデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とするストレージ装置の制御方法。
  6. 前記キャッシュメモリに書き込まれたデータが、前記現用制御部に関するものか、前記待機用制御部に関するものかを示す識別子と、当該データの複製の相手方となる制御部を示す識別子とを当該キャッシュメモリに書き込み、
    当該現用又は待機用制御部のキャッシュメモリから、前記現用及び待機用以外の制御部のキャッシュメモリに転送するデータを、前記識別子によって選択することを特徴とする請求項5に記載のストレージ装置の制御方法。
  7. 前記複数の制御部のキャッシュメモリは、複数の領域に分割され、
    前記領域には、前記現用制御部に関するデータが保存されているか、前記待機用制御部に関するデータが保存されているかの属性が付されており、
    前記管理部が前記制御部の構成変更を指示すると、前記現用又は待機用制御部に関する領域に保存されたデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送することを特徴とする請求項6に記載のストレージ装置の制御方法。
  8. 複数の記憶媒体を含む記憶装置部と、
    データを一時的に保存するキャッシュメモリを有する複数の制御部と、を備え、
    前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置において、
    計算機装置が前記ストレージ装置に書き込んだデータを、前記制御部のうち現用制御部のキャッシュメモリに書き込む手段と、
    当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製する手段と、
    前記制御部に障害が発生したことを検出する障害検出手段と、
    前記障害検出手段によって前記現用又は待機用制御部のいずれかに障害が発生したことが検出されると、前記現用又は待機用制御部の障害が発生していない制御部のキャッシュメモリに保存されたデータのうち前記記憶装置部に書き込まれていないデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送する手段と、を備えることを特徴とするストレージ装置。
  9. 前記計算機装置にネットワークスイッチを介して接続されることを特徴とする請求項8に記載のストレージ装置。
  10. 前記計算機装置を内部に含み、前記計算機装置と前記制御部との間は通信可能に接続されていることを特徴とする請求項8に記載のストレージ装置。
  11. 複数の記憶媒体を含む記憶装置部と、
    データを一時的に保存するキャッシュメモリを有する複数の制御部と、を備え、
    前記記憶装置部と前記制御部との間及び前記制御部相互の間で通信可能に接続されたストレージ装置において、
    計算機装置が前記ストレージ装置に書き込んだデータを、前記制御部のうち現用制御部のキャッシュメモリに書き込む手段と、
    当該データを前記現用制御部のキャッシュメモリから待機用制御部のキャッシュメモリに複製する手段と、
    前記複数の制御部の構成変更を指示する手段と、
    前記構成変更の指示を受けて、前記現用又は待機用制御部のキャッシュメモリに保存されたデータを、前記現用及び待機用以外の制御部のキャッシュメモリに転送する手段と、を備えることを特徴とするストレージ装置。
  12. 前記計算機装置にネットワークスイッチを介して接続されることを特徴とする請求項11に記載のストレージ装置。
  13. 前記計算機装置を内部に含み、前記計算機装置と前記制御部との間は通信可能に接続されていることを特徴とする請求項11に記載のストレージ装置。
JP2003356450A 2003-10-16 2003-10-16 ストレージ装置のディスクコントローラ制御方式およびストレージ装置 Pending JP2005122453A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003356450A JP2005122453A (ja) 2003-10-16 2003-10-16 ストレージ装置のディスクコントローラ制御方式およびストレージ装置
US10/876,549 US7334164B2 (en) 2003-10-16 2004-06-28 Cache control method in a storage system with multiple disk controllers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003356450A JP2005122453A (ja) 2003-10-16 2003-10-16 ストレージ装置のディスクコントローラ制御方式およびストレージ装置

Publications (1)

Publication Number Publication Date
JP2005122453A true JP2005122453A (ja) 2005-05-12

Family

ID=34543729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003356450A Pending JP2005122453A (ja) 2003-10-16 2003-10-16 ストレージ装置のディスクコントローラ制御方式およびストレージ装置

Country Status (2)

Country Link
US (1) US7334164B2 (ja)
JP (1) JP2005122453A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008040612A (ja) * 2006-08-02 2008-02-21 Fujitsu Ltd 担当lun制御を用いたraid制御を行うディスクコントローラおよび診断制御方法
JP2008242741A (ja) * 2007-03-27 2008-10-09 Toshiba Corp クラスタシステム及びプログラム
JP2010092318A (ja) * 2008-10-09 2010-04-22 Nec Corp ディスクアレイサブシステム、ディスクアレイサブシステムのキャッシュ制御方法、及びプログラム
JP2010140493A (ja) * 2006-06-30 2010-06-24 Seagate Technology Llc 二重アクティブ・コントローラ内のライト・キャッシュ・データのフェイルオーバーおよびフェイルバック
US10824566B2 (en) 2016-07-11 2020-11-03 Hitachi, Ltd. Storage device, controlling method of storage device, and storage device controller having predetermined management information including face attribute information, a controller number, and transition method information

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070225612A1 (en) * 1996-07-15 2007-09-27 Mace Leslie E Metabolic measurements system including a multiple function airway adapter
JP4506292B2 (ja) 2004-06-10 2010-07-21 株式会社日立製作所 キャッシュ制御方法およびデータ処理システム並びにその処理プログラム
US7519854B2 (en) * 2005-10-14 2009-04-14 International Business Machines Corporation Internal failover path for SAS disk drive enclosure
JP4903415B2 (ja) * 2005-10-18 2012-03-28 株式会社日立製作所 記憶制御システム及び記憶制御方法
JP2007299213A (ja) * 2006-04-28 2007-11-15 Fujitsu Ltd Raid制御装置および障害監視方法
JP4480756B2 (ja) * 2007-12-05 2010-06-16 富士通株式会社 ストレージ管理装置、ストレージシステム制御装置、ストレージ管理プログラム、データ記憶システムおよびデータ記憶方法
JP5761209B2 (ja) * 2011-02-10 2015-08-12 富士通株式会社 ストレージ制御装置、及び、そのプログラム
US10503673B2 (en) * 2016-09-13 2019-12-10 Hitachi, Ltd. Storage system and method of storage system for constructing system
US10698779B2 (en) * 2017-11-13 2020-06-30 Infinidat Ltd. Clustered disk error recovery
US11403036B2 (en) * 2020-02-13 2022-08-02 EMC IP Holding Company LLC Recover time improvement mechanism after device path failure in a storage system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
JP2548480B2 (ja) * 1992-02-10 1996-10-30 富士通株式会社 アレイディスク装置のディスク装置診断方法
US6457098B1 (en) * 1998-12-23 2002-09-24 Lsi Logic Corporation Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6438647B1 (en) 2000-06-23 2002-08-20 International Business Machines Corporation Method and apparatus for providing battery-backed immediate write back cache for an array of disk drives in a computer system
US6330642B1 (en) 2000-06-29 2001-12-11 Bull Hn Informatin Systems Inc. Three interconnected raid disk controller data processing system architecture
US6802023B2 (en) * 2001-03-15 2004-10-05 Hewlett-Packard Development Company, L.P. Redundant controller data storage system having hot insertion system and method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010140493A (ja) * 2006-06-30 2010-06-24 Seagate Technology Llc 二重アクティブ・コントローラ内のライト・キャッシュ・データのフェイルオーバーおよびフェイルバック
JP2008040612A (ja) * 2006-08-02 2008-02-21 Fujitsu Ltd 担当lun制御を用いたraid制御を行うディスクコントローラおよび診断制御方法
JP2008242741A (ja) * 2007-03-27 2008-10-09 Toshiba Corp クラスタシステム及びプログラム
JP2010092318A (ja) * 2008-10-09 2010-04-22 Nec Corp ディスクアレイサブシステム、ディスクアレイサブシステムのキャッシュ制御方法、及びプログラム
US10824566B2 (en) 2016-07-11 2020-11-03 Hitachi, Ltd. Storage device, controlling method of storage device, and storage device controller having predetermined management information including face attribute information, a controller number, and transition method information

Also Published As

Publication number Publication date
US20050097402A1 (en) 2005-05-05
US7334164B2 (en) 2008-02-19

Similar Documents

Publication Publication Date Title
US6044444A (en) Remote data mirroring having preselection of automatic recovery or intervention required when a disruption is detected
US5742792A (en) Remote data mirroring
US7769960B2 (en) Computer program product and a system for a priority scheme for transmitting blocks of data
US6052797A (en) Remotely mirrored data storage system with a count indicative of data consistency
US6912669B2 (en) Method and apparatus for maintaining cache coherency in a storage system
CN101578586B (zh) 在故障转移和故障回复环境中使用虚拟拷贝
CN101512495B (zh) 用于改进的同步数据镜像交换的装置、***和方法
KR100288020B1 (ko) 멀티플 서브시스템에서 핫 스페어 드라이브를 공유하기 위한 장치 및 방법
CN101755257B (zh) 管理在不同的网络上将写入从首要存储器拷贝到次要存储器
TWI291103B (en) Method, storage controller, system, and computer-readable recording medium for autonomic power loss recovery for a multi-cluster storage sub-system
KR101154620B1 (ko) 듀얼 노드 스토리지 컨트롤러에서 인-플라이트 데이터의 트래킹을 위한 효율적인 방법과 장치
JP2001518210A (ja) 共通データセットに対する独立及び同時のアクセスに関する方法及び装置
JP2004264973A (ja) ストレージシステムの制御方法、ストレージシステム、情報処理装置、管理コンピュータ、及びプログラム
CN102272733B (zh) 确定高速缓存中的已修改数据以便在恢复操作期间使用
JP2005122453A (ja) ストレージ装置のディスクコントローラ制御方式およびストレージ装置
US7216210B2 (en) Data I/O system using a plurality of mirror volumes
CN102187311A (zh) 用于使用存储区域网络恢复计算机***的方法和***
JP2010282324A (ja) ストレージ制御装置、ストレージシステムおよびストレージ制御方法
JP4454299B2 (ja) ディスクアレイ装置及びディスクアレイ装置の保守方法
JP2010049637A (ja) 計算機システム、ストレージシステム及び構成管理方法
CN111158955B (zh) 一种基于卷复制的高可用***以及多服务器数据同步方法
JP2006268420A (ja) ディスクアレイ装置、ストレージシステムおよび制御方法
CN111240903A (zh) 数据恢复方法及相关设备
US20050198411A1 (en) Commingled write cache in dual input/output adapter
US20040181632A1 (en) Method, system, and program for policies for improving throughput in remote mirroring systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090804

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091201