JP2004532442A - ストレージシステムにおけるフェイルオーバー処理 - Google Patents
ストレージシステムにおけるフェイルオーバー処理 Download PDFInfo
- Publication number
- JP2004532442A JP2004532442A JP2002564739A JP2002564739A JP2004532442A JP 2004532442 A JP2004532442 A JP 2004532442A JP 2002564739 A JP2002564739 A JP 2002564739A JP 2002564739 A JP2002564739 A JP 2002564739A JP 2004532442 A JP2004532442 A JP 2004532442A
- Authority
- JP
- Japan
- Prior art keywords
- failover
- storage
- service
- data
- vsx
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0605—Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
- G06F11/0724—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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 processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2025—Failover techniques using centralised failover control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2089—Redundant storage control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2089—Redundant storage control functionality
- G06F11/2092—Techniques of failing over between control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/356—Switches specially adapted for specific applications for storage area networks
- H04L49/357—Fibre channel switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2002—Error 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 interconnections or communication control functionality are redundant
- G06F11/2007—Error 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 interconnections or communication control functionality are redundant using redundant communication media
- G06F11/201—Error 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 interconnections or communication control functionality are redundant using redundant communication media between storage system components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2097—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
Abstract
【選択図】図1
Description
【0001】
(関連出願の相互参照)
本出願は、以下の米国仮特許出願からの優先権を主張する。2001年2月13日に出願された、全ての目的のために本願において参照として援用される「Virtual Storage System」と称する米国出願第60/268,694号。
(連邦政府によって後援される研究または開発の下に行われた発明の権利に対する陳述)
適用されない
(コンパクトディスクで提出される「シーケンスリスティング」、表、または、コンピュータプログラムリスティング付録の参照。
CD、複製物、および、個々のCD上のファイルの総数を含む、コンパクトディスク上の材料の参照による援用。)
適用されない
【背景技術】
【0002】
(本発明の背景)
本発明は、一般的に、ストレージエリアネットワークにおけるフェイルオーバーに関し、さらに特に、クラスターに配列された一団の仮想化デバイスに関する。
【0003】
知識は、あらゆるビジネスにとって重要で競争力のある利点である。知識の蓄えを発展させ、かつ、ストレージハードウェアの容量を改良するための意欲は、ストレージおよびコンピューティングリソースにおける爆発的な成長を導いた。ビジネスがアプリケーションおよびその根底にあるデータにますます依存する結果、絶え間なく、信頼でき、かつ、高速のデータへのアクセスは、重大な意味を持つようになった。失われたデータのオンラインアクセスと迅速な回復とを保証することは重要である。ストレージ技術の発展は市場の要求に合致し続けるので、大量のストレージシステムがますます複雑になっていく。
【0004】
必要なのは、ストレージシステムの信頼性を保証し、かつ、ストレージシステムの可用性を保持することである。
【発明の開示】
【課題を解決するための手段】
【0005】
(本発明の要旨)
本発明に従うストレージサーバシステムの実施形態は、規約に基づくソフトウェア管理を使用して、ユーザに構成可能なレベルのフォルトトレランスと高可用性とを提供する。ストレージサーバシステムにおけるフェイルオーバーソフトウェアは、フェイルオーバーセットと呼ばれる、フォルトトレラント(FT)および高可用性(HA)構成を管理するための規約を利用する。
【0006】
フェイルオーバーセットは、コンポーネントのコレクションにおいて編成を義務付け、単一のコンポーネントでは必要のない特性を含む構成を提供する。コレクションもしくはセットは、様々な方法で組織化され、信頼性および/または可用性のようなコンポーネントの様々な特性を強調するように調整され得る。
【0007】
個々のコンポーネントは、1つの編成のタイプで指定されたエンティティである。1つのフェイルオーバー構成の制御下には、数個のコンポーネントが存在し得る。この文脈では、コンポーネントは、メンバと呼ばれる。メンバは、シャーシ上のポートやカードのような単一のリソースであり得る。メンバはまた、スタックにおける数個のボックスのような物理的なコンポーネントの複雑な階層、または、シャーシ全体であり得る。最も一般的な場合は、メンバは、他のフェイルオーバーセットであり得る。
【0008】
フェイルオーバーセットのメンバ構成は、メンバが接続されている方法を理解している。例えば、階層的構成は、ネットワークストレージサーバシステム内およびネットワークストレージサーバシステム外と同様にフェイルオーバーを接続することを可能にする。前記構成は、根底にあるネットワークストレージシステムまたはフェイルオーバーセットから、セットが確立される方法に関連する規則からなる。メンバユニットは、関与するコンポーネントを識別する。
【0009】
フェイルオーバーセットにおけるメンバは、プライマリ、バックアップ、または、代替の役割を果たす。フェイルオーバーセットの範囲では、1つのプライマリメンバ、および、ひとつのバックアップメンバだけが存在する。いくつかの数の代替メンバが存在し得る。プライマリメンバが失われると、フェイルオーバーが発生し、バックアップメンバが新しいプライマリメンバになる。新しいバックアップメンバは代替バックアップメンバのセットから選ばれる。前記代替が故障すると、エラー報告が誘発される。
【0010】
フェイルオーバーソフトウェアは、規約管理を提供するために、規則ベースのエンジンを利用する。メンバ構成、メンバ互換性、メンバ障害検知および呼応、メンバ障害の訂正アクション、メンバ再スタート、全てのメンバにわたる構成データの複製、選択メンバフェイルオーバー、メンバリソース管理、および、フェイルオーバーセットフェイルストップ規約が、ストレージシステム内およびストレージシステム間のコンポーネントの間のフェイルオーバー回復の知識をカプセル化するために、規則は確立される。この知識は、どのコンポーネントがフェイルオーバーセットに加わっているのか、それらのコンポーネントはフェイルオーバーのためにどのように構成されているのか、フェイルストップ規約とは何か、コンポーネントを「フェイルオーバーする」際に実行されるステップは何かについての情報を含む。フェイルストップ規約は、コンポーネントが、障害に応じて、他のコンポーネントに障害が発生し、その後、停止する許可を与える状態に変化する規約である。
【0011】
(本発明の詳細な記述)
図36は、本発明に従ったストレージエリアネットワーク(SAN)の実施形態の一般化されたブロック図を示す。SANは、1つ以上のストレージサーバ3600を含む。この図はまた、コミュニケーションネットワーク(スイッチングファブリック)3602、多くの物理ストレージデバイス3604、および、多くのホストコンピュータ3606を示す。ストレージサーバ3600は、仮想ストレージエクスチェンジ(VSX)とも呼ばれ、さらに図37に詳細が示される。VSXの主要な機能は、SANにおいて管理層を中央に集めることである。VSXは、接続、ストレージエレメント、およびコンピュータシステムを、抽象的な関係に組織化して、安全かつ頑強なデータ転送を促進する。このデバイスは、一団の仮想化デバイスと呼ばれる。一団の仮想化デバイスは、データパスにおける機能またはサービスを提供する。一団の仮想化を実装するシステムにおいて、アドレスマッピングなどの仮想化サービスは、データの読み書きに利用される同様の機能的なコンポーネントによって実行される。
【0012】
物理ストレージデバイス3604は、テープデバイス、ディスクアレイ、JBOD(Just a bunch of disks)、または、他のタイプのデータストレージデバイスを含む。物理ストレージデバイス3604は、SAN3602を介してホストコンピュータ3606に直接的に接続され得る、または、SAN3602およびストレージサーバ3600を介してホストコンピュータ3606に間接的に接続され得る。ストレージデバイス3604がSAN3602を介して直接的にホストコンピュータ3606に接続されると、ストレージの仮想化の管理に負荷がかかることが観測されている。本発明は、ストレージサーバ3600を利用することによってストレージの仮想化の管理を改良し、間接的にストレージデバイス3604をホストコンピュータ3606に接続する。
【0013】
図36Aは、二つのVSXが高可用性運用のために一緒にケーブル接続された(VSX−HA)典型的な構成を示す。このような構成にはいくつかのバリエーションがある。図36Aでは、VSXはプライベートネットワークを利用して一緒に接続されている。VSXとホストコンピュータ(例えばサーバ)との間のファイバチャネル接続は、顧客のファブリック3602Aを利用する。管理ステーションは、パブリックまたはプライベートネットワークを利用して、イーサネット(R)接続を介し、VSXに接続される。
【0014】
図36Bは、VSXを一緒に接続する同様のネットワークを利用して管理ステーションがVSXに接続されていること以外は同様の構成を示す。
【0015】
図36Cの構成は、プライベートネットワークを介してVSXに接続されている管理ステーションを示す。しかし、VSXは、ポイントトゥポイントファイバチャネルまたはファイバチャネルスイッチファブリックを利用して互いに接続される。
【0016】
図36Dの構成は、ファブリックが冗長なファブリックに分けられていること以外は図36Aの構成と同様である。ストレージデバイスおよびコンピュータサーバは二重ポートである。
【0017】
図37は、ストレージサーバ3600の一般化されたブロック図であり、本発明の実施形態に関連するハードウェアコンポーネントを示し、ストレージプロセッサ3710、ラインカード3712、仮想サービスカード3714、および、スイッチファブリック3716を含む。
【0018】
ストレージサーバ3600は、1つ以上のストレージプロセッサ3710(SP)を含み得る。ストレージプロセッサ3710は、ホストコンピュータ3606とストレージデバイス3604との間で情報フローとして保存されるストレージコマンドとデータを処理する。1つ以上のストレージプロセッサ3710は、個々のラインカード3712(LC)に含まれ得る。ストレージサーバ3600は、多数ラインカード3712のためのスペースを含み、そのためストレージサーバ3600の性能は、より多くのラインカード3712またはより多くのストレージプロセッサ3710を加えることによって、モジュール性により増加され得る。各ストレージプロセッサ3710は、ストレージサーバ3600の1つ以上のポートに接続される。
【0019】
ストレージサーバ3600は、1つ以上の仮想サーバカード3714(VSC)を含み得る。仮想サーバカードは、ストレージサーバ3600の動作を制御し、かつ、ラインカード3712を制御する。ラインカード3712は、コマンドおよびデータの転送という実際の仕事を実行する。
【0020】
スイッチファブリック3716は、ストレージプロセッサ3710に接続する。スイッチファブリックは、1つのポートで受信した情報を、ストレージサーバ3600の別のポートへスイッチする。例えば、ホストコンピュータ3606がストレージエリアネットワーク3602上に保存されているデータを読み込みたいとき、その要求は、そのホストコンピュータ3606に接続するポートに接続するストレージプロセッサ3710によって処理される。上流のストレージプロセッサ3710は、スイッチファブリック3716を介して、読み込まれるべきデータを保存しているストレージサーバ3604に接続しているポートに接続している下流のストレージプロセッサ3710と通信する。次に、スイッチファブリック3716は、下流および上流のストレージサーバ3710を介して、ストレージデバイスからホストコンピュータ3606に読み込まれたデータを転送する。
【0021】
ストレージサーバ3600の付加的な詳細は、米国仮出願第60/268,694および以下の同時係属、共願の米国特許出願で開示されている。2002年2月13日に出願され(代理人判決第20949P−000200US)「Silicon Based Storage Virtualization Server」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−000300US)「Storage Virtualization and Storage Management to Provide Higher Level Storage Serivice」と称されるxx/−−−,−−−、2002年2月13日に出願され(代理人判決第20949P−000500US)「Method and Apparatus for Identifying Storage」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−000600US)「System and Method for Policy Based Storage Provisioning and Management」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−000700US)「Virtual Data Center」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−000800US)「Failover Processing in a Storage System」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−000900US)「RAID at Wire Speed」と称される米国出願第xx/−−−,−−−号、2002年2月13日に出願され(代理人判決第20949P−001000US)「Method for Device Security in a Heterogeneous Storage Network Environment」と称される米国出願第xx/−−−,−−−号。以上全ての出願は、全ての目的のために本明細書において参照として援用される。
【0022】
以下は、前述の図の本発明の実施形態に従ったフェイルオーバー処理の説明である。
【0023】
(エラー回復)
フェイルオーバーは、冗長なコンポーネントのサービスが停止したときに取られる回復アクションである。フェイルオーバーは、生きたコードが更新された場合は任意であり得、ハードウェア故障の場合は、不任意である。一般に、ユーザは、任意のフェイルオーバーを開始させるのに責任がある。任意のフェイルオーバーは、命令による操作である。反対に不任意のフェイルオーバーは突然発生し、常にストレージシステムソフトウェアによって内部的に開始する。
【0024】
不任意のフェイルオーバーは、エラー回復および回復管理のより大きな内容の範囲内で発生する回復アクションである。フェイルオーバーサービスは、フェイルオーバーし得るオブジェクト、フェイルオーバーのためのオブジェクトの構成、フェイルオーバーが発生したときに取るべきステップ、および、フェイルオーバーイベントの構成要素を管理するインフラを提供する。フェイルオーバーによるエラーから回復するための検知は、エラー分析の結果である。
【0025】
エラー回復の目的のために、リソースは、エラーのトラック、エラー分析、エラー統計量コレクション、および、エラー回復の能力を備えるエンティティとして定義される。一般に、リソースは、ハードウェアオブジェクトであるが、リソースは、RAIDグループなどのソフトウェア構造物でもあり得る。リソースマネージャは、リソースのためにエラーのタイプおよび回復アクションを定義するための責任がある。
【0026】
エラー訂正は、大まかには、VSX全体の至る所に用意される層状のソフトウェアである。エラー訂正は、様々なソフトウェア層からエラーイベントをコレクションし、かつ、リソースマネージャにイベントをルーティングするための標準的なメカニズムを提供する。リソースマネージャは、エラーイベントの発生に伴って取るべき行動を決定するために、エラー分析からのヘルプを要求する。
【0027】
エラー分析は、エラーイベントおよびエラーイベントに関連するデータを記録し、かつ、エラー回復シーケンスを開始させる。エラー回復シーケンスは、エラーコードおよび訂正アクションのシーケンスとして定義される。例えば、エラーコードe1が時間t1に回復アクションa1を引き起こし、そしてe1が時間t2で回復アクションa2とともに別のエラーコードe2を引き起こした場合、t1<t2であり、かつ、時間的にt1はt2より前に発生する。前記シーケンスは、回復アクションが成功して終了したときに終了する。回復アクションが失敗した場合、シーケンスは、回復処理の次のレベルへ進み、より徹底的な回復を試みる。入れ子の回復は、根底にあるシーケンスのフォルトトレランスによって制限される。所与のエラーに対して全ての回復アクションが失敗に終わったとき、前記シーケンスは、フェイルストップパラダイムを取って、終了する。
【0028】
エラーは、所与のリソースに対する統計として記録される。ハードウェアリソースの信頼性の割合は、エラー統計を基にして計算され得る。エラー分析は、閾値を利用し得る。閾値によって、ある時間間隔の範囲内である時間量に対するエラー発生後にのみ回復アクションを開始させる。エラー分析は、エラー回復表を利用して、所与のエラーコードおよびエラー回復シーケンスに対応するエラーアクションを決定する。エラー回復表は、1つより多いリソースによって使用され得る。
【0029】
回復管理は、訂正アクションの倉庫である。回復管理は、訂正アクション要求に同期を取り、その結果、衝突する訂正アクションは解決される、もしくは、順番に並べられる。訂正アクション操作は、所与のエラー回復シーケンスから回復するために用いられるリソース特定手順を含む。ひとつの訂正アクションは、多くのエラー回復シーケンスによって利用され得る。
【0030】
エラー報告は、カスタマーログへエラーのログを取ること、SNMPトラップの生成、および、アラームの設定を含む。エラー報告は、エラー分析に基づき、かつ、ユーザの注意へエラーを導く。
【0031】
最後に、リソースマネージャは、訂正アクションの結果に基づいて、リソースの状況または状態の変更に対する責任がある。エラー分析および回復管理アーキテクチャは、図1に示されるエラー回復アーキテクチャである。
【0032】
(フォルトトレランスおよび高可用性)
個々のVSXモデルは、フォルトトレランスのあるレベルを提供するように構成され得る。仮想ストレージコントローラ(VSC)、ラインカード(LC)、スイッチファブリック(SF)、ストレージプロセッサ(SP)、または、ファイバチャネルポートにおける冗長性は、全体としてVSXが故障し得るよりも長い時間を意味する。VSX内のコンポーネントの重複は、VSXの全体的障害間隔平均時間(MTBF)を改善する。そのような構成は、VSXにコンポーネントのいくつかに欠損があってでさえ正確に作動することを許すので、フォルトトレランス(FT)である。しかし、そのような構成が提供するのは、高可用性ではなく、より高い信頼性である。棚に火事が発生すれば、データの可用性は失われる。このような状況下でデータの可用性を維持するためには、高可用性セットとして機能するように構成された付加的なVSXを必要とする。
【0033】
今日、利用されている多くのエンタープライズクラスストレージ構成は、ハイレベルの可用性を必要とする。この要求のために、基礎のVSXシステムは、1つの障害のポイントを評価するのを助ける多くの特性を必要とする。高可用性(HA)VSXの構成は、ハードウェアおよびソフトウェアの冗長性を特徴とする。ハードウェアおよびソフトウェアの冗長性は、単一のVSXには用意されない破滅的な障害に対する追加の保護を提供する。VSXを高可用性(HA)セットへ編成するときに、いくつかの構成が可能である。これらの構成は、2ノード、4ノード、N+1ノード、および、NノードHAセットを含む。
【0034】
フェイルオーバーサービスは、フォルトトレランス(FT)および高可用性(HA)の両方を提供するために重要な役割を担う。フェイルオーバーサービスは、VSX内とVSX自体間とのコンポーネント間のフェイルオーバー回復の知識をカプセル化する。この知識は、フェイルオーバーセットに参加しているコンポーネント、フェイルオーバーのためのコンポーネントの構成、フェイルストップの規約、および、コンポーネントをフェイルオーバーする際の実行ステップについての情報を含む。
【0035】
例えば、「ディレクター」モデルVSXは、8つのラインカードを有する。個々のラインカードは、冗長性のために構成されており、その結果、ラインカードのいずれかに欠損が発生すると対のラインカードにフェイルオーバーする。「ディレクター」アーキテクチャはシャーシに基盤を置き、ここで全ての8枚のカードはシャーシ内のスロットを占有する。
【0036】
他の例では、スタックベースのVSXは、ファイバチャネルもしくはインフィニバンドのようなネットワークを利用して一緒に接続された1つ以上のボックスを含む。ボックスは、論理「シャーシ」へ結合される。その結果、1つ以上のボックスは、シャーシに基づくモデルと全く同じ方法で機能する。積み重ね可能なアーキテクチャでは、VSCはボックスに内臓され、ここのLCはボックスに内臓される。
【0037】
以下の表は、VSXアーキテクチャに適用するように、フォルトトレランスと高可用性との間の違いを要約している。
【0038】
【表1】
フェイルオーバーサービスの主な責任は、重複コンポーネントのセットの範囲でデータ可用性を維持することである。データ可用性は、必要とされるときにサーバがそのストレージにアクセスする能力として定義される。VSXに対しては、このことは、二つ以上のコンポーネントが以下の情報に対して正確な相互の一致に到達し得る手段を必要とする。
【0039】
局面1.いつフェイルオーバー発生し得る、および、発生し得ないのか
局面2.どんな状況がフェイルオーバーを引き起こすのか
局面3.どんなリソースが個々のコンポーネントに支配されているのか
障害のあるコンポーネントの振舞いに対して、明白な前提は作られない。障害の発生したコンポーネントは好きなように振舞い得る。前記コンポーネントは非常に奇妙に振舞う。前記コンポーネントは自身をリレーした情報を変更し得る。前記コンポーネントは、そのようなリレーされている情報をブロックし得る。前記コンポーネントは、不正確に情報をルートし得る。そして、最悪の場合は、システムの異なる部分に衝突する情報を送り得る。
【0040】
明らかに、いくつかの制限が、VSXが許容し得る多くの障害に対して必要とされる。フォルトトレランスにおける上限は、全てのフォルトトレランスシステムの形式に必要である。そうでなければ、そのようなシステムのコストは、コンポーネント上のコンポーネントが重複するので、非常に高価である。ハードウェアコンポーネントエラーの場合、何か1つのボード上の上限は、1つであると仮定される。もし二つのメンバのフェイルオーバーセットが、個々のコンポーネントにおける1つより多いハードウェアエラーを含む場合、どのコンポーネントが使用されたかどうかは、もはや関係がない。フェイルストップ規約が適用されるべきである。
【0041】
上述の所与の局面1〜3に一致する必要性を満足させるために、以下のストラテジーが採用される。
局面1.いつフェイルオーバーが発生し得る、または、発生し得ないのかを決定するために、
・コンポーネントが有効なフェイルオーバーセットのメンバであるとき、フェイルオーバーは発生し得るのみである。
局面2.どんな状況がフェイルオーバーを引き起こすのかを検知するとき、
・閾値を用いるイベント報告は、フェイルオーバーを要求し得る。
・障害の発生したハードウェアを検出し得る機能的なコード(例えば、デバイスドライバ)は、フェイルオーバーを要求し得る。
・ハートビートプロトコル障害は、フェイルオーバーを要求し得る。
局面3.どんなリソースが個々のメンバに支配されているのかを決定するために、
・メンバ状態マシンは、リソースの所有権を決定する。
【0042】
(目的)
以下の2つの一般的な条件で構成されている前のセクションで述べられた設計の特徴1〜3における相互の整合性を実現することが、フェイルオーバーの目的である。
1.整合性;全ての正確に機能するコンポーネントが、同様の情報で正確に一致する。
2.有意性;正確に機能するコンポーネントに一致する情報が、そのコンポーネントの実際の情報となる。
【0043】
条件1および2は、どのコンポーネントに欠陥があるか明らかにする必要はない。それらの条件により、非欠陥成分は、フェイルオーバーセットにおける他の全てのメンバーによって維持された情報の一貫した観点になり得る。一旦、相互の整合性が達成されると、各非欠陥メンバーは、決定機能を情報に適用し得る。各非欠陥メンバーは、同様の情報に対して決定機能を利用するので、正確な一致が必然的に達成される。
【0044】
(サポートされた構成)
このセクションは、フェイルオーバーについての様々な提供された構成を記載する。注釈:これらの図表は、有益になるようにのみ意図されている。一般に、コンポーネント上で生じる任意の警告によって、他の警告は、包含するコンポーネント上で警告を与える。
【0045】
(非フェイルオーバーサポートを用いる根拠)
図2は、最低有効性の構成の一般的なブロック図を示す。この構成によって提供された冗長だけが、RAIDアルゴリズムを介するディスク欠陥に対しての保護である。
【0046】
【表2】
表1−ノンにおけるデータ可用性−欠陥トラレント構成
(単一のホスト、単一の記憶装置、単一のVSX、マルチパス)
図3は、上流および下流ポートの両方にマルチパスを追加することによって、図2に示される「基本構造」上に設計された構成を示す。パスが欠陥になると、データは冗長パスを介して利用可能になる。
【0047】
【表3】
表2−欠陥トラレント構成におけるデータ可用性
(単一のホスト、単一の記憶装置、デュアルアダプタ、デュアルVSX)
図4に示される構成は、高い有効性の他のVSXを追加することによって「基本構造」に依存する。VSXが失敗すると、冗長VSXを介してデータが利用可能になる。図4に示される構成は、単一のVSXを用いて検出されない破壊的な失敗に対するさらなる保護を提供するハードウェアおよびソフトウェアの冗長性を特徴とする。VSXを高い有効性のセットに組織化すると、いくつかの構成が可能になる。これらは、2−ノード、4−ノード、N+1ノード、およびN−1ノードを含む。消費者は、HA構成においてVSXの数を単に選択することによって、消費者が好む有効量を選択し得る。
【0048】
VSXのクラスター化によって、独立したVSXを超える多数の利点がある。ある重要な利点は、クラスターにおける各VSX上で起動するクラスターソフトウェアが、クラスターにおいてアプリケーションの欠陥または他のVSXの欠陥を自動的に検出することである。そのような欠陥を検出する上で、欠陥アプリケーションなどは、存続するVSX上で終了され、再起動され得る。
【0049】
他の利点は、クラスターリソースの状態を検査するような管理能力を含み、その結果、クラスターにおいて、異なるVSX間の負担のバランスを保って性能を向上させる。動的負担のバランスもまた使用できる。そのような管理性能は、さらに重要なデータおよびサーバアプリケーションのオフラインを得ることなくクラスターにおいて、1つのVSXを更新するような機能を管理者に提供する。十分理解され得るように、VSXクラスターは、重要なデータベース管理、ファイルおよびイントラネットデータの共有、メッセージ作成、一般的なビジネスアプリケーションなどに使用される。
【0050】
従って、クラスターにおいて、あるVSXから他のVSXへのアプリケーションのフェイルオーバーは、第1のVSX上のソフトウェアの欠陥またはハードウェアの欠陥に応答して自動的であり得るか、または、それに代わって、管理者によって手動で開始され得る。手動のフェイルオーバーは、装置の実際のサービスを可能にして、それにより、ダウンタイムを削減する。
【0051】
【表4】
表3−高可用性構成におけるデータ可用性
(フェイルオーバーサービスのアーキテクチャ)
フェイルオーバーサービスのアーキテクチャは、サービスのフレームワーク、仮想サービス、各カードでのローカルなサービス、アービタ、およびデータベースのジャーナルコントロールプロセス(Journal Control Process)で構成されている。図21Aは、サンプルの双方向階層の構成を示している。
【0052】
(サービスのフレームワーク)
図21Aに示されるアーキテクチャは、サービスのフレームワークの要素を示す。図21Bによると、サービスのフレームワークは、ソフトウェアバスが元になっている。ソフトウェアバスは、いくつかのプロセッサ、カード、およびVSXシステムにわたって潜在的に分散された均一の環境に全てのVSXサービスを共に密着させている。フレームワークのインスタンスは、図21Bに示されるように、その環境内で全ての論理的な場所(プロセッサ、カード、VSX)におけるOSの最上部で実行し、複数の分散化した断片を一緒に密着させる。
【0053】
フレームワークは、以下の機能を提供する:
・ロバスト(robust)モジュールのインジェクション/イジェクションスキームにより、新しいサービスは、統合され、使用されなかったものは、編集時に取り除かれ得る。
・マルチタスキング環境において実行する効率的な単一のタスクソフトウェアモジュール−つを生成する方法が確立され、これにより、サービス発展プロセスから全てのマルチタスキング関連事項(issue)が増加される。さらに、フレームワークは、所望ならばスラッシング(thrashing)を避けるために同様のタスク上で実行されるサービスの数を制御するための手段を提供する。
・サービス状態統合順序、促進ブート、およびプロセスのシャットダウンタイプを制御するためのシステム広域基準値。
・内部サービス通信機構。フレームワークは、2つの概念的に別個の通信スキーム(「要求応答」および「公開署名」)を助長する。要求応答により、サービスのインスタンスは、応答を必要とする他のインスタンスにおいて方法を呼び出すことが可能になる。一方、公開署名により、サービスの事例は、非応答型の通知を当事者に送達することが可能になる。
・どのサービスが実行時に所与の要求を実行し得るかを解決し得るフォールトトレラントネーミングサービス。本質的に、ネーミングサービスは、ロケーション結合サービスおよびロケーション独立サービスを共に設計するように必要とされた機能性を提供する。前者のタイプは、サービスが実行するロケーション(例えば、サービスが管理/制御するハードウェアの断片)に物理的に結合される機能性を持つサービスを定義する。一方、後者のタイプは、任意のロケーションにおいて潜在的に実行し、サービスレベルのフェイルオーバーを実行し得るフォールトトレラントサービスを表すために使用される。
・カードの欠陥を切り抜け、サービスレベルのフェイルオーバーを実施することが可能な冗長サービスを設計およびインプリメントするためのシステム広域基準。
・組み込まれたデータベースに/から自動的に導かれ、強力なフィルタベースのクエリ機構を用いて照会され得るオブジェクトをモデリングし、発展させるための標準的な方法。
・オブジェクトの導出および内蔵型のクエリサポートに加えて、フレームワークは、標準イベントサービス(サーバのデータモデルに対する変更を反映する自動生成イベントへのロバスト機構)を提供する。
・フレームワークにおける複数の論理ロケーション(プロセッサ、カード、VSX)間で通信可能になるIPC機構。
・要求/イベントフローを動的に制御する機能を伴うサービスを提供する要求およびイベントフロー制御機構。
【0054】
フェイルオーバーサービスは、フェイルオーバーセットの生成、供給フェイルオーバーセットの管理を引き起こす。ローカルなフェイルオーバーサービスは、メンバー状態機械を起動する。メンバー状態機械は、フェイルオーバーセットにおけるメンバーに対してされた変更を、アービタを介してサービスフレームワークに通知する。アービタは、サービスフレームワークおよびJCP(Journal Control Process)とインタフェースを取って、メンバーの状態における変更およびそれに続くデータベースの役割変更を通知する。ユーザ要求は、管理サービスを介して仮想フェイルオーバーサービスに直接進む。リカバリ管理要求は、ローカルフェイルオーバーサービスに進む。
【0055】
フェイルオーバーサービスは、サービスフレームワークおよびデータベースソフトウェアと組み合わさって作動し、VSXフェイルオーバーを管理する。通常動作の間、HAセットにおけるノード(例えば、デバイス、通信パス、および他のそのようなコンポーネント)は、サーバと格納デバイスとの間でクライアントまたはデータパスへサービスを提供する。計画されたシャットダウンのイベント(すなわち、ノードの欠陥)において、このノード上で動作するサービスは、構成において別のノードに転換され、同様のロジカルエンティティとして同様のクライアントに提供される。クライアントに対して、サービスは、フェイルオーバーの前後で同じになるようにみえる。フェイルオーバー中、サービスは、短期間だけ利用できない。フェイルオーバーが生じた後、ホストは、存続するVSXメンバーに対するI/O要求のリダイレクトを引き起こす。
【0056】
(フェイルオーバーサービス)
フェイルオーバーサービスは、全体的なフェイルオーバー処理を制御する。フェイルオーバーサービスは、
1.フェイルオーバーセットの生成
2.フェイルオーバーセットに対するメンバー構成変更の管理
3.フェイルオーバー調整
a.リカバリ動作としてのフェイルオーバーの調整
b.任意の操作としてのフェイルオーバーの調整
4.状態および警告報告を含む他のユーザインタフェース動作
5.フェイルオーバーのイネーブルおよびディセーブル
を提供する。
【0057】
(VSCフェイルオーバーサービス)
VSCフェイルオーバーサービスは、
1.メンバー管理
a.メンバー構成
b.メンバー状態管理
2.VSCの中枢部動作の起動および停止
3.リカバリ管理イベントの再生(listen)
4.フェイルオーバーサービスとメンバー役割変更に関するVSCとの間のインタフェース
a.データベースモードを変更するためのアービタへの指示
b.VSC上のSPに対するインタフェース
5.フェイルストップ処理の実行
を管理する。
【0058】
(LCフェイルオーバーサービス)
VSCフェイルオーバーサービスは、
1.メンバー管理
a.メンバー構成
b.メンバー状態管理
2.LCの中枢部動作の起動および停止
3.リカバリ管理イベントの再生(listen)
4.フェイルオーバーサービスとメンバー変更に関するLCとの間のインタフェース
a.LC上のSPに対するインタフェース
5.フェイルストップ処理の実行
を管理する。
【0059】
(アービタ)
図22は、データベース用のアービタを示す。アービタは、フェイルオーバーサービスによって提供されたフェイルオーバー機能性に接続する必要があり、それと協同して、ジャーナルコントロールプロセス(JCP)を介してデータベースに対して調停サービスを提供する。アービタは、アービタの状態をマスターに変更するとき、および立ち上げるときにスタンバイということが分かるので、データベースフォールトトレラント構成の本質的なコンポーネントである。アービタは、内部中枢部に関与している。アービタは、エラー分析中枢部の欠陥を通知する。それは、さらに、メンバー状態の変更が生じると、サービスフレームワークへの情報通知を担う。
【0060】
上述するように、VSXにおけるフェイルオーバーに関連した構成および管理機能を担うソフトウェアモジュールが、フェイルオーバーサービスである。フェイルオーバーサービスは、仮想サービスである。
【0061】
仮想サービスは、プライマリVSCでイネーブルになり、バックアップVSCおよび代替VSCでディセーブルになる。従って、管理要求は、常にプライマリVSCに進む。対照的に、I/O要求は、情報収集中は任意のVSCまたはLCを介して進み得る。従って、I/Oパスモデルは、管理モデルとは無関係に作動し、動作時(すなわちプライマリ)は全てのメンバーを処理する。
【0062】
サービスフレームワークは、VSCで仮想サービスをイネーブルまたはディセーブルにする時を決定するためにアービタを使用する。サービスフレームワークは、メンバーの状態に基づいて仮想サービスをイネーブルおよびディセーブルにする。メンバーがプライマリ状態であるとき、仮想サービスは、そのノードでイネーブルとなる。メンバーがバックアップまたは代替の状態にあるとき、仮想サービスは、そのノードでディセーブルとなる。メンバーがプライマリ状態に変遷するとき、またはプライマリ状態から変遷するときはいつでも、そのメンバーでの仮想サービスが影響される。VSXが操作可能後、この仮想サービスのイネーブルおよびディセーブル状態は、サービスブートおよび任意のフェイルオーバー中は重要になる。
【0063】
サービスフレームワークブートは、データベースを起動するためにはどのモードかを決定するために、VSX構成機能の説明で記載されるように起動パラメータブロックを使用する必要がある。サービスブート中、サービスフレームワークは、そのロケーションでの全てのサービスを引き起こし、イネーブルにする。それが生じる前に、データベースは起動される必要がある。データベースを起動するために、メンバーの状態は、既に決定されている必要がある。ここで、問題がある。データベースの役割を決定するために、メンバーの状態を決定し、そのためには、データベースを起動する必要がある。それ故、データベースは再起動を必要とするので、サービスブートは二フェーズブートである必要がある。
【0064】
サービスフレームワークブートは、メンバーの状態が調停されているかどうかを決定するために、起動パラメータブロックを検査する。既に調停された状態である場合、以下の規則にしたがってデータベースを開始し得る:
a)プライマリ状態が、マスターとしてデータベースを開始することを意味する
b)バックアップ状態が、スタンバイとしてデータベースを開始することを意味する
c)代替状態が、レプリカとしてデータベースを開始することを意味する。
【0065】
その後、VSCロケーションのサービスは、以下のように初期化され、イネーブルにされ得る:
a)プライマリ状態が、仮想サービスをイネーブルにすることを意味する
b)バックアップ状態が、仮想サービスをイネーブルにしないことを意味する
c)代替状態が仮想サービスをイネーブルにしないことを意味する。
【0066】
状態が調停中でなかった場合、次に第1のサービスブートフェーズは、フォールトトレランスなしでデータベースモードをマスターに設定し、ならびに、VSCフェイルオーバーサービスだけを開始する。次に、VSCフェイルオーバーサービスは、メンバーの役割を決定するために3.8.1における規則に続いて3.8.3における状態機械を実行する。メンバーの役割が決定された後で、状態は、VSX構成機能の説明に記載されるようにスタートアップパラメータブロックに保存される必要がある。最後のステップは、新しいパラメータブロック有するVSCを再起動することである。
【0067】
フレームワークはさらに、内部フレームワークの中枢部を管理する。他のサービスフレームワークロケーションへの接続が損失する毎にエラー分析を通知する。
(フェイルオーバーセットの管理)
フェイルオーバーセットは、単一のコンポーネントに必ずしも存在しない特性を含むコンフィギュレーションを提供するために、同様のコンポーネントの収集に編成をもたらす。この収集またはセットは、種々の方法で編成され、かつ信頼性および可用性といったコンポーネントの種々の特徴を強調するように調整され得る。個々のコンポーネントは、単一タイプの編成を有する指定されたエンティティである。種々のコンポーネントが単一のフェイルオーバーコンフィギュレーションの制御下にあり得る。このようなわけで、コンポーネントは、メンバーと呼ばれる。
【0068】
メンバーは、VSC等のカードであり得るか、または、これはVSX全体であり得る。HAセットにおけるメンバーは、プライマリ、バックアップ、またはオルタネイトの役割を演じる。HAおよびFTタイプのフェイルオーバーセット内には、1つのプライマリメンバーおよび1つのバックアップメンバーのみがある。任意の数のオルタネイトメンバーが存在し得る。プライマリメンバーが失われた場合、フェイルオーバーが生じる。フェイルオーバーサービスは、データベース、IOパス、およびサービスフレームワークを介して自動的に新しいプライマリメンバーに切替える。バックアップメンバーが落ちた場合、オルタネイトバックアップメンバーのセットから新しいバックアップメンバーが選択される。オルタネイトメンバーが落ちた場合、エラー報告がトリガされる。
【0069】
フェイルオーバーセットにおけるすべてのカードは、同じデータベースを共有する。データベース故障許容差は、マスター、冗長待機、および冗長複製データベースサーバがクラスタで構成される。マスターデータベースは、クライアントアプリケーションが読み出しおよび書きプライマリシステムである。待機データベースは、マスターデータベース内でJournal Control Process(JCP)を介して生じる変化に従う。複製されたデータベースは、マスターまたは待機からの更新を受取るように構成される。待機データベースは、マスターが落ちた場合、マスターになり得る。複製されたデータベースは、バックアップが落ちた場合、またはバックアップがマスターになった場合にバックアップになり得る。データベースは、フェイルオーバービタの指示に従う。データベースの外側で維持される任意のコンフィギュレーションデータは、コンフィギュレーションの完全性(configuration integrity)を保つためにデータベースの一部をなさなければならない。
【0070】
フェイルオーバーセットに含まれるVSCポピュレーション内の各VSCは、プライマリ、バックアップおよびオルタネイトの3つのセットのうちの1つに属する。正確に1つのVSCがプライマリとして機能し、かつ1つのVCSがバックアップとして機能する一方で、残りのVSCは、オルタネイトとして機能する。プライマリVSCを収容するVSXは、プライマリメンバーであるとみなされ、かつデータベースマスターである。バックアップVSCを収容するVSXは、バックアップメンバーであるとみなされ、かつデータベースバックアップである。オルタネイトVSCを収容するバックアップVSXは、オルタネイトメンバーであるとみなされ、かつデータベースの複製である。VSXがプライマリVSCおよびバックアップVSCの両方を収容する場合、これはプライマリメンバーであるとみなされる。1つ以上のVSCがVSXに収容され、これらの両方が動作可能であり、VSCの1つがバックアップVSCである場合、他のVSCはバックアップである。1つ以上のVSCがVSXに収容され、かつ、これらの両方が動作可能であり、VSCの1つがバックアップVSCである場合、他のVSCは、プライマリまたはオルタネイトである。VSCセットを決定する決定方法がフェイルオーバー機能である。VSCセットは、計画された保守およびシャットダウンのために手動で変更され得る。
【0071】
仮想サービスがプライマリVSC上でイネーブルされ、かつバックアップおよびオルタネイトVSC上でディセーブルされる。従って、管理リクエストは、常に、プライマリVSCに進む。対照的に、I/Oリクエストは、収集内の任意のVSCまたはLCを通過し得る。従って、I/Oパスモデルは、管理モデルに依存せずに動作し、すべてのメンバーをアクティブまたはプライマリとして扱う。
【0072】
フェイルオーバーサービスは、サービスフレームワークとデータベースソフトウェアとの組み合わせで機能して、VSXフェイルオーバーを管理する。正常な動作の間、HAセットにおけるノードは、クライアントにサービスを提供するか、または、サーバからのパスを格納デバイスに提供する。計画されたシャットダウン、またはノードの障害の場合、このノード上で実行するサービスは、コンフィギュレーション内の別のノードに転送され、同じ論理エンティティと同じクライアントに再び提供される。フェイルオーバーの前後では、クライアントにはサービスが同一であると思われる。フェイルオーバーの間、サービスが利用可能でない期間がある。フェイルオーバーが生じた後、ホストは、残ったVSXメンバーにI/Oリクエストを再指示する責任を負う。
【0073】
ラインカード、格納プロセッサ、FC ASICおよびFCポートは、障害の回復がマルチパスポリシーを用いて管理されるため、フェイルオーバーセットではないことに留意されたい。7のIOパスフェイルオーバーを参照。
【0074】
(フェイルオーバーセットのポリシー)
各フェイルオーバーセットは、以下の点について、固有の規則およびポリシーの支配下にある。
【0075】
1.メンバーコンフィギュレーション−どのコンポーネントがセットに関与し、かつ、これらがどのように識別され、そしてフェイルオーバーのために構成されるか? どの再構成オプションが支援されるか?
2.条件の組み合わせ−コンポーネント間の互換性のために必要とされる条件は何か?
3.故障の検出−コンポーネント障害を検出するために用いられる方法は何か? 重い故障と軽い故障はどのように分離され得るか?
4.障害解析および協定−コンポーネント障害を引き起こした条件は何か、正しく動作するコンポーネントのすべてがその障害とどのように一致するか?
5.修正処置−コンポーネントがサービスから除去された場合、どの回復処置が取られるか?
6.再スタートポリシー−落ちたコンポーネントがフェイルオーバーセットに戻ることを可能にする状況は何か? HAセットのメンバーがどのように修理され、かつ再統合されるか? 再統合された後に、リソースの自動フェイルバックは支援されるか? 再統合は自動か手動か?
7.コンフィギュレーションの複製−メンバーの置き換えを支援するために、フェイルオーバーセットメンバーが複製されることを必要とするのはどのコンフィギュレーション情報か?
8.選択的フェイルオーバーフェイルオーバーセットのメンバーを規則正しくサービスから除去するために用いられるのはどの方法およびアルゴリズムか? メンバーはフェイルオーバーセットに再統合されたサービスからどのように除去されるか?
9.リソース管理−フェイルオーバーセットメンバー間で共有されるリソースを分割する場合のために、どのリソースが調停されなければならないか?
10.フェイルストップポリシー−フェイルオーバーセットの最後に残ったメンバーは、落ちたメンバー(単数または複数)が修復され得る前に落ちる。フェイルストップポリシーは、メンバーが障害に応答して、障害が発生したことを他のコンポーネントが検出し、その後、停止することを可能にする状態を変更する際に用いられるポリシーである。
【0076】
(フェイルオーバーセットのタイプ)
上述のように、フェイルオーバーセットは、2つのカテゴリー、故障許容差フェイルオーバーセットおよび高可用性フェイルオーバーセットに分類される。これらのカテゴリーに加えて、フェイルオーバーセットは、さらに、これらの挙動によって区別される。いくつかのセットが能動/待機挙動を行う一方で、他のセットは、能動/能動挙動を行う。
【0077】
すべてのフェイルオーバーセットは、t故障許容差である。すなわち、フェイルオーバーセットは、これがt障害を被り得、かつ、依然としてその動作要件を満たす場合、これはt故障許容差である。
【0078】
(故障許容差フェイルオーバーセット)
(VSCフェイルオーバーセット)
VSCフェイルオーバーセットは、能動/受動モードで構成される2つのVSCである。VSCは、同じVSX(T=1)内に配置される。
【0079】
(スイッチファブリックフェイルオーバーセット)
スイッチファブリックフェイルオーバーセットは、能動/受動モードで構成される2つのスイッチファブリックである。SFは、同じVSX(T=1)内に配置される。
【0080】
(高可用性フェイルオーバーセット)
(VSXフェイルオーバーセット)
VSXフェイルオーバーセットは、能動/能動モードで構成される2つ以上のVSXである。VSXは、互いに、および格納デバイスの共通のセットと物理的に接続される。各VSXは、HAセットコンフィギュレーションに依存する1つ以上のVSC(T=n)を有し得る。以下の6節を参照。
【0081】
(メンバーコンポジション)
フェイルオーバーセットのメンバーコンポジションは、メンバーが組み合わされる態様を理解する。フェイルオーバーセットのコンポジションは、以下の情報のいくつかを含む。
【0082】
1.タイプ(2ウェイ、4ウェイ、Nウェイ、階層的)
2.メンバーのカウント発見
3.構成されたメンバーのカウント
4.冗長限界(持続的なメンバーの障害の数)
階層的コンポジションは、VSX(故障許容差)内およびVSX(高可用性)の外部にてフェイルオーバーを組み合わせることを可能にする。上述のように、メンバーの役割は、階層的コンポジションのVSCによって決定される。
【0083】
図5は、フェイルオーバーコンフィギュレーションのコンポーネントを示す。コンポジションは、セットが下に位置するVSXまたはフェイルオーバーセットから形成される態様に関する規則からなる。
【0084】
メンバーユニットは、コンポジションのメンバーとして関与するコンポーネントを識別する。メンバーユニットは、下に位置するコンポーネントのすべてを識別する。これは、1つ以上のコンフィギュレーションが関与することを防止する。
【0085】
フェイルオーバーセットと、そのコンポジションとの間を区別する目的は、それらの挙動を分離することである。例えば、HAセットは、そのメンバーVSXの1つがユーザのリクエストに応答できない場合であっても、それに応答することができ得る。HAセットのコンポジションの方法は、VSXの機能性から分離される。
【0086】
(メンバーユニット)
コンポーネント状態は、コンポーネントの状態を表す。しかしながら、これらは、フェイルオーバーコンフィギュレーションによってそれらの上にマッピングされるメンバーの状態を反映しない。このタスクは、メンバーユニットによって達成され、これは、メンバーの状況を反映する。
【0087】
(状態)
メンバーユニットはスレッドを必要としない。コンポーネント障害または置換といったコンポジションの状況に影響を及ぼすプロセスがメンバーユニットに作用する。図6は、メンバーユニット状態の図を示す。
【0088】
(アンマッピング(Unmapped))
この状態は、メンバーユニットが下に位置するコンポーネントのいずれにもマッピングされない状態を示す。この状況は、下に位置するコンポーネントに障害が生じた後に生じる。この状態において、メンバー内で複製されたデータベースは無効であり、もはや用いられない。いずれのIOサービスもアンマップドメンバーによって利用され得ない。これは、故障したコンポーネントをフィールドサービスが置換するまで永久に続く状態である。
【0089】
(部分的マッピング(Partially Mapped))
この状態において、メンバーユニットは、これに割り当てられるメンバーの部分にマッピングされる。これは、前に落ちたコンポーネントが置換され、プライマリメンバーからのデータベース/コンフィギュレーションが置換コンポーネントに書き込まれる場合に生じる。部分的にマッピングされたメンバーのすべてのコンフィギュレーションデータ
は、データベース同期化動作が完了するまで無効である。
【0090】
(マッピング)
この状態において、メンバーユニット上のすべてのデータベースコンフィギュレーションは、アクセスするために利用可能である。IOサービスは、メンバーによって実行され得る。いくつかの重要なメンバー状態は、以下のとおりである。
【0091】
1.プライマリ−メンバーの仮想サービスがアクティブコールプロセシングを実行する(イネーブル)。データベースはマスターモードである。
【0092】
2.バックアップ−メンバーの仮想サービスは、アクティブコールプロセシングを実行しない(ディセーブル)。データベースはスレーブモードである。
【0093】
3.オルタネイト−メンバーの仮想サービスは、アクティブコールプロセシングを実行しない(ディセーブル)。データベースはレプリカモードである。
【0094】
メンバー状態については、3.8.にて十分に議論される。
【0095】
(イベント)
【0096】
【表5】
(フェイルオーバーセットの作成)
コンフィギュレーションは、フェイルオーバーサービスにおけるフェイルオーバーセットのすべてのパラメータの設定である。これは、フェイルオーバーセットの部分の構成およびそのコンポジション、ならびにメンバーの挙動を支配する個別に管理可能な設定のすべてを含む。
【0097】
フェイルオーバーセットの作成段階は、「ユーザ」からパラメータを受取り、フェイルオーバーコンフィギュレーションのデータ構造および永久データベース入力を生成する。ユーザが実際に行うか(real)または自動化され得る。このプロセスは、その差を理解しない。図7は、フェイルオーバーセットを作成する可能な状態マシンを示す。
【0098】
(状態)
図7に示される状態マシンを含む状態の状態説明は、以下の節において見出される。
【0099】
(フェイルオーバーセットの作成)
この状態は、このフェイルオーバーセットのために必要とされるリソースを決定し、そのリソースを割り当て、かつフェイルオーバーセットデータを初期化する。
【0100】
1.パラメータに従ってフェイルオーバーセット構造の割り当ておよび初期化。
【0101】
2.「フェイルオーバーセット初期化」の生成。
【0102】
(未定義(undefined))
この状態は、フェイルオーバーセットの検証が失敗したことを示す。定義するために改変が必要とされる。
【0103】
(フェイルオーバーセットの検証)
この状態は、フェイルオーバーセットの定義が、ユーザによって定義されたものとして完了したことを検証する。
【0104】
1.フェイルオーバーセットコンポジションおよびタイプの検証
2.メンバーカウントおよびデフォルトの役割の検証
3.メンバーの互換性の検証
4.格納の可視性を検証
5.ノードおよびポートワールドワイドネームの検証
6.有効である場合、「定義は完成」を生成。そうでない場合、「定義は未完成」を生成。
【0105】
(フェイルオーバーセット定義)
この状態は、フェイルオーバーセットが正確に定義されて、メモリ内に存在することを示す。これは、この時点にてユーザによって改変され得るか、またはデータベースにコミットされ得る。
【0106】
1.コミットまたは更新を待つ
(コンポーネントの追加)
この状態は、メンバーコンポジションユニットを割り当ておよび初期化する。
【0107】
1.メンバーコンポジションユニットの割り当ておよび初期化
2.「コンポーネントの追加」を生成
(コンポーネントの除去)
この状態は、メンバーコンポーネントユニットを除去および解放(de−allocate)する。
【0108】
1.メンバーコンポジションユニットの解放および構造の更新
2.「コンポーネントの除去」を生成
(フェイルオーバーセット定義を更新)
この状態は、ユーザがフェイルオーバーセットのいくつかの属性を変更したことを示す。例えば、ユーザは、デフォルトプライマリメンバーを変更することを所望し得る。これはコンポジションの変更を含まない。
【0109】
1.ユーザによって供給されたパラメータからのすべての属性を更新する
2.「フェイルオーバーセットの更新」を生成
(作成の完了)
この状態は、フェイルオーバーセットのメモリ内コピーをデータベースにコミットする。
【0110】
1.トランザクションのコミット
2.「定義のコミット」を生成
(作成完了)
これは、フェイルオーバーセットを作成するスレッドのデリート状態である。完了した場合、データベース内のデータからフェイルオーバーセットを持ち出すことを強いる。
【0111】
1.フェイルオーバーセット形成構造を解放
2.「フェイルオーバーセット検出」を生成
(イベント)
本節は、作成状態マシンにおけるイベントを記載する。
【0112】
【表6】
(フェイルオーバーセットの再構成)
カスタマがフェイルオーバーコンフィギュレーションを変更することを可能にすることが所望され得る。例えば、カスタマは、シングルVSXからHAセットにアップグレードすることを所望し得る。再構成は、既存のフェイルオーバーコンフィギュレーションを改変するプロセスを支配する一方で、格納はクライアントとオンラインの状態である。
【0113】
(コンポーネントの増加)
故障許容差コンフィギュレーションの興味深い特徴のうちの1つは、フェイルオーバーセットがオンラインである一方で、冗長性を追加するという能力である。必要とされるのは、メンバーがアクセスされないこと、および、ユーザは、動作が、影響されたコンフィギュレーションデータを1つ以上のメンバーからアクセス可能にすることを理解することだけである。
【0114】
(コンポーネントの低減)
フェイルオーバーセット内のメンバーの数を低減することもまた好適な特徴である。これは、これらが正確にどれだけの可用性を必要とするかを知る前に、ユーザがHAセットをセットアップすることを可能にする。その後、ユーザデータをHAコンフィギュレーションにマッピングした後、ユーザは、他のもののための空間を作るためにHAセットのサイズを低減することができ得る。HAセットのサイズを低減するために、必要とされるのは、永久的に除去されるVSXがアクセスされないこと、および、ユーザは、動作が、メンバーがデリートされると、影響を受けたコンフィギュレーションデータをアクセス不可能にすることを理解することだけである。
【0115】
(フェイルオーバーセットの提示)
フェイルオーバーセットのブリングアップは、各個別メンバーの提示(bring−up)から達成される。各メンバーは、
1.ハードウェアおよびソフトウェアの初期化および可用性チェックに首尾よく合格し、
2.フェイルオーバーセットにおけるその役割を決定し
3.それ自体でフェイルオーバーセットにアナウンス
しなければならない。
【0116】
ブリングアッププロセスの目的は、フェイルオーバーセットとメンバーとの間の関係を生成することである。ブリングアップの範囲は、フェイルオーバーセットがVSXによって最初に発見された時間と、フェイルオーバーセットのすべてのコンポーネントが配置および認識された時間との間の時間である。この範囲が限定された理由は、フェイルオーバーセットの動作機能を制御する状態マシンの複雑性を低減することである(機能するフェイルオーバーセット状態マシン)。一旦ブリングアッププロセスが完了すると、セットの制御は機能するフェイルオーバーセット状態マシンに引き渡される。
【0117】
メンバーのブリングアップは、次節に記載される。機能するフェイルオーバーセットセット状態マシンは、節3.10に記載される。
【0118】
(メンバー状態)
コンポジションユニットがマッピングされた状態であるメンバーは、VSXおよびVSCベースのフェイルオーバーセットの以下のフェイルオーバー状態を用いる。図8に示される状態の図は、以下の表によって説明される。
【0119】
【表7】
すべてのメンバーは、最初に使用不能状態に割り当てられる。メンバーがブリングアップ診断、ブートおよび初期化に合格すると、メンバーは、使用不能状態から除去され、そして使用可能状態に配置される。メンバーがコンフィギュレーションかつ可用性のチェックを通過した後、メンバーは、それがフェイルオーバーセット内でプライマリ、バックアップまたはオルタネイトのいずれであるかを決定する。
【0120】
使用不能状態から除去され、使用可能状態に配置されたメンバーが修復されたイベントによってもたらされる。このイベントは、メンバーのスタートアップが成功したことであると定義され、遂行(passing go)、遂行しない(no−go)診断、OS初期化およびアプリケーションの初期化を含む。
【0121】
メンバーは、利用可能状態から除去され、そして構成されたイベントによってプライマリ、バックアップまたはオルタネイト状態に配置される。構成されたイベントは、以下のことを示す。
【0122】
すべてのハードウェアおよびソフトウェアの初期化の完了が成功
・すべての構成可能パラメータは有効
・ハードウェアおよびソフトウェアの改正(revision)は互換性をもつ
・メンバーのデータベースコンフィギュレーションは、プライマリ、バックアップまたはオルタネイトであることが決定される
プライマリまたはバックアップ状態から除去され、かつ使用不能状態に配置されたメンバーは、失敗したイベントによってもたらされる。失敗したイベントは、メンバーがデータの利用可能性を提供することを防止する状況であると定義される。失敗したイベントは、エラーを示す。いくつかの一般的な障害状況は、
・ハードウェア障害がメンバーを動作不可能にする。
・ソフトウェアは、クラッシュが原因で、一次的な使用不能性を引き起こす。
・メンバーは、まだ構成されない
・ブリングアップ診断が回復不能のエラーを検出
・メンバーは、パワーオフされ、場合によっては、シャーシから除去される。
予定された保守のために、除去イベントが用いられる。保守動作が完了した後、メンバーを再スタートさせるために追加イベントが用いられる。
【0123】
使用不能状態に割り当てられるメンバーは、フェイルオーバーし得ず、かつ近い将来にフェイルオーバーできることが期待されない。利用可能セットに割り当てられたメンバーは、フェイルオーバーし得ないが、コンフィギュレーションが検証され、メンバーの役割が決定された後、近い将来にフェイルオーバーすることができる。プライマリまたはバックアップ状態に割り当てられたメンバーのみがフェイルオーバーし得る。
【0124】
(プライマリ/バックアップの役割定義)
メンバーの役割を決定する場合、2つの基本的な取り扱いの場合がある。第1に、プライマリメンバーがすでに存在し、第2に、プライマリメンバーは決定されていない。第1の場合は単純である。プライマリメンバーがフェイルオーバーセット内にすでに存在する場合、任意の新しいメンバーが自動的に待機メンバーになる。待機メンバーがすでに存在する場合、メンバーはオルタネイトになる。第2の場合は、いくらか複雑なアルゴリズムを必要とし、どのメンバーがプライマリメンバーであるべきかを決定する。詳細は、以下の節にて見出される。
【0125】
(単一のメンバーのブート)
単一メンバーフェイルオーバーセットは、それ自体が構成された場合、自動的にプライマリメンバーになる。以下の節は、単一メンバーがフェイルオーバーコンフィギュレーションの一部分としてブートする場合について議論する。
【0126】
(ライブシステムへのブート)
予定された保守またはシャットダウンの後、メンバーは、再スタートし、そして再びフェイルオーバーセットに結合する。プライマリメンバーは、すでに存在する。この場合、メンバーは、バックアップメンバーになり得る。バックアップがすでに存在する場合、メンバーは、オルタネイトになり得る。
【0127】
(障害後のブート)
破壊的なエラーの後、メンバーがフェイルオーバーセットへの再結合(rejoin)を試みることが可能である。エラーが持続的なハードウェアエラーである場合、メンバーは、単に、「使用不能」状態に留まり、置換されることを待つ。ソフトウェアエラーが再スタートを引き起こした場合、メンバーは、フェイルオーバーセットに再結合することを可能にし得る。
【0128】
(複数メンバーのブート)
2ノードHAセットにおける両方のメンバーが同時にブートされることが可能である。これらの状況を理解するために、最初にいくつかの新しい用語が定義される。
【0129】
コールドブート(COLD ブート)は、パワーサイクル状況からの再スタートであると定義される。パワーサイクル状況は、
1.ハードリセットボタンが押され
2.電源スイッチがオフからオンに切替えられる
3.規則的にシャットダウンされる
コールドブートは、通常、PROMコードへのジャンプ、OSおよび機能コードの再ロード、およびハードウェアの完全な再初期化として特徴付けられる。メンバーは、パワーオフの時点にて正規のメンバーでなければならない。
【0130】
ウォームブート(WARM ブート)は、任意の他の状況からの再スタートであると定義され、
1.システムトラップまたは例外
2.ソフトリセットボタンが押される
を含む。ウォームブートは、通常、OSおよび機能コードの再ロード、およびハードウェアの部分的再初期化と特徴付けられる。ウォームブートは、さらに、再スタートの時点にて進行中の動作、例えば、キャッシュ内のデータ、RAID書き込み−進行中等の回復を必要とし得る。メンバーは、ウォーム再ブート回復をするのに適切であるように再スタートの時点にて正規のメンバーでなければならない。そうでない場合、コールドブートが宣言される。
【0131】
3つの基本的なブート状況が存在する。
【0132】
1.メンバー「A」は、コールドブートし、メンバー「B」は、コールドブートする(コールドブート)。
【0133】
a.両方のメンバーがそのデフォルトメンバー状態を想定すべきである。
【0134】
2.メンバー「A」またはメンバー「B」は、ウォームブートであり、他のメンバーはコールドブートである(ウォームブート)。
【0135】
a.ウォームブートメンバーは、その前のメンバー状態を想定し、コールドブートメンバーは残った方を想定する。
【0136】
3.メンバー「A」は、ウォームブートであり、メンバー「B」は、ウォームブート(混合ブート(MIXED boot))
a.両方のメンバーは、それらの前のメンバー状態を想定する
図9〜図11に示される以下の順序図は、アービトレーションアルゴリズムを示す。図9は、コールドブートのアービトレーションアルゴリズムを示す。図10は、ウォームブートのアービトレーションシーケンスを示す。図11は、混合ブートのシーケンスを示す。
【0137】
(代替的役割の決定)
代替的役割の決定は単純である。プライマリおよびバックアップメンバーが識別された後、フェイルオーバーセットに参加する任意のメンバーはオルタネイトになる。新しいバックアップの選択は、すべてのオルタネイトを数値的識別子またはメンバーの数に基づいて順序付ける等、単純なスキームを用い得る。
【0138】
(サンプル2ノード状態マシン)
図12の表式で示される状態マシンは、2ノードフェイルオーバーセットに対して有効であり、これは、プライマリ/バックアップ挙動に追従する。アクションルーチンは、図13に示されるアクション表にまとめられる。状態5は、結果として生じるプライマリまたはバックアップ状態の決定に依存して5aおよび5bに分離されることに留意されたい。
【0139】
(互換性チェック)
メンバー(Member)の役割(すなわち、どのメンバーが「一次(Primary)」であるかどうか、ならびに、「スタンバイ」であるか)を決定する前に、メンバーは、その構成中の他のメンバー全てとの互換性のためにチェックされなければならない。各メンバーに対して、情報の以下のカテゴリがチェックされる。
【0140】
・HW−HW
・そのメモリは全てのメンバーで同じでなければならない。この条件は、データベースおよびSANエレメントを含むことが可能であり、両方のメンバーの全ての動作を支援することが可能でなければならないことを説明するために緩和され得る。
【0141】
・ポートの数は全てのメンバーで同じでなければならない。再度、この条件が緩和され得る。デバイスが両方のシステムから可視である限り、ポートの番号は、実際に重要ではない。
【0142】
・各メンバーのハードウエアバージョンは、それぞれ他のメンバーのハードウエアバージョンと互換性がなければならない。
【0143】
・全てのストレージは、全てのメンバーに接続され、可視でなければならない。カスタマーがそのように望む場合、あるポリシーが、「All Storage」文節(clause)を無効にするために提供される。利用可能なオプションは、
・アラームを発生させる
・1つ以上のLUNがオンラインになることを妨げる
・コンポーネントがメンバーになることを妨げる
ことである。
【0144】
・このポート構成はメンバー内で整合しなければならない。ファイバチャンネル(Fibre Channel)は、ファイバチャンネルと整合されなければならず、iSCSIは、iSCSIと整合されなければならない。
【0145】
・SW−HW
・SWバージョンは、ローカルおよびリモート両方のHWバージョンと互換性がなければならない。
【0146】
・SW−SW
・SWバージョンは、ローカルおよびリモート両方のSWバージョンと互換性がなければならない。
【0147】
・クロックはメンバー間のエラーのいくつかのマージン内で同期化されなければならない。メンバークロック間の最大の差は、ハートビート(Heartbeat)プロトコルによって決定される。
【0148】
(フェイルオーバーセットの管理)
メンバー状態マシンがメンバーの役割を決定した後、提供されたフェイルオーバーセットのオブジェクトがフェイルオーバーセットとメンバーとの間の関係を定義するために作成される。このメンバー状態マシンは、フェイルオーバーセットが特定のコンポーネントにコミットするようになり、この排他的な関係を制御するために提供されたフェイルオーバーセットの作成を引き起こすのはいつかを決定する。
【0149】
この提供されたフェイルオーバーセットは、いくつかの責任を有する。第1には、構成の統合性を維持することである。これは、イベントの注意深い処理、構成の変化の制御、およびデータベースの適時な同期化によって達成される。この提供されたフェイルオーバーセットはまた、全ての欠陥の、提供されたフェイルオーバーセットへの通知を処理し、フェイルオーバーセット構成の更新を適切に管理することに対して責任がある。
【0150】
提供されたフェイルオーバーセットはまた、セットのパラメータへの全ての通知を管理しなければならない。この現在の状態マシンは、この特徴をインプリメントしないが、将来的にはこれをインプリメントする。フェイルオーバーセットパラメータの改変は、設定状態に関する影響の理解を必要とし、同様にメタデータの同期化を必要とする。容量の増大または低減等の改変はまた、このパスを介して管理されなければならない。
【0151】
(状態)
図14は、上述のタスクを達成する提供されたフェイルオーバーセット状態マシンを示す。この状態は以下に説明される。
【0152】
(提供されたフェイルオーバーセットの作成)
この状態は、提供されたフェイルオーバーセットリソースを割り当て、初期化する。
1.提供されたフェイルオーバーセットリソースを割り当て、初期化する。
2.「作成され提供されたフェイルオーバーセット」を生成する。
【0153】
(オフライン)
この状態は、すべての挿入されたクライアントにオフラインフェイルオーバーセットを提示する。フェイルオーバーは、オフライン状態でディセーブルされる。
1.「ディセーブルされたフェイルオーバー」を生成する。
【0154】
(オンラインの検証)
フェイルオーバーセットを検証するこの状態は、オンラインでクライアントに進み得る。
1.冗長度<冗長限界になる場合、「オンライン欠陥」を生成する。
2.フェイルオーバーセット状態=オンラインに設定する。
3.変化をデータベースにコミットする。
【0155】
(オンライン)
この状態は、オンラインフェイルオーバーセットを全ての挿入されたクライアントに提示する。これは、フェイルオーバー復元動作が提供され得る有効な状態のみである。
1.「イネーブルされたフェイルオーバー」を生成する。
【0156】
(失ったコンポーネントの除去)
この状態は、構成から失ったメンバーを除去し、データベースを更新する。
1.構成からコンポーネントを除去するために「失ったメンバー(Lost Member)」を生成する。
2.フェイルオーバーセットのシーケンス番号を更新する。
3.変化をデータベースにコミットする。
4.失ったコンポーネントが一次メンバーである場合、「一時的な欠陥(Primary Failed)」を生成する。
5.失ったコンポーネントがバックアップメンバーである場合、「バックアップ欠陥(Backup Failed)」を生成する。
6.失ったコンポーネントが代替のメンバーである場合、「代替的な欠陥(Alterate Failed)」を生成する。
【0157】
(オフラインへの移行)
この状態はフェイルオーバーセットをオフラインに移行する。
1.任意の現在のリクエストを終了する。
2.シーケンス番号および状態を更新する。
3.変更をデータベースにコミットする。
【0158】
(提供されたフェイルオーバーセットの削除)
この状態は、提供されたフェイルオーバーセットを削除する。
【0159】
(イベント)
提供されたフェイルオーバーセットに関するイベントの説明は以下に見出される。
【0160】
【表8】
表7−提供されたフェイルオーバーセットイベント
(欠陥検出アーキテクチャ)
信頼できる分散されたストレージシステムを構成する主な挑戦の内の1つは、「フェイルオーバー可能な」条件を適時に検出する。検出は時間が重要である。なぜなら、データの格納または取り出しのような要求は、欠陥の時間で顕著であり得る。エラーと競合することがシステムの異なる部分から報告された場合に、この検出問題はさらに悪化されることにより、エラー特有の復元を困難にする。所定のエラーが与えられると、フェイルオーバーがリクエストされるべきであるかどうかを決定することが可能であり得ない。しかし、エラーの組み合わせが与えられると、フェイルオーバーは可能な復元のみであり得る。フォールオーバー可能な条件の検出は5〜10秒かかるべきではない。
【0161】
一旦、あるコンポーネントをフェイルオーバーするための決定がなされると、概念的に、当面のタスクは、比較的直線的な逐次的プログラミング問題である。一旦開始されると、このフェイルオーバーを行うためにかかる時間は、時間を検出すること自体と同じくらい重要である。フェイルオーバーするのに時間がかかりすぎる場合、ホストファイルシステム、ボリュームマネージャ、およびアプリケーションがタイムアウトされ、ハングされる(hang)。このセクションは、フェイルオーバーに対する欠陥を信頼可能に検出するための一般的なアプローチの概略を示す。図15は、本発明の実施形態による欠陥検出および分析の一般化されたブロック図を示す。欠陥検出は、VSXを介して分配される。概して、2つの欠陥検出シナリオは、以下のように説明される。
1.自己検出された欠陥−検出ソフトウエアが欠陥しそうなメンバー上で実行されている欠陥がある。自己モニタリングアルゴリズムは、以下の欠陥の主要な原因である。
【0162】
a.ハードウエアエラー
b.IOパスエラー
c.タスクモニタリング
d.RTOS拡張
e.ローカル診断テスト結果
f.広いレベルのハートビート
2.パートナーに検出された欠陥−パートナーが欠陥を検出する欠陥がある。
【0163】
a.パートナーレベルのハートビート
b.サービスフレームワークIPC欠陥
c.データベースJPC/JPC欠陥
d.パートナー診断テスト結果
これらの欠陥検出方法は以下のセクションでより詳細に説明される。
【0164】
(ハードウエアエラー)
ハードウエアエラーは、最も顕著なデバイスドライバである種々のソースによって検出される。広いレベルのデバイスから生じる任意のデバイスレベルエラーは、フェイルオーバーをリクエストすべきである。
【0165】
(IOパスエラー)
IOパスエラーは、典型的にはIOパスフェイルオーバーのみを含む。しかし、IOパスエラーの組み合わせは、しばしば広いレベルの欠陥を示し得る。パスの欠陥はまた、広いエラーによって引き起こされ得る。このような欠陥が発生する場合、フェイルオーバーがリクエストされるべきである。一般的には、モジュールレベルのコンポーネント上のハードウエアエラーは、フェイルオーバーをリクエストすべきである。
【0166】
別のIOパスエラー、リンクエラーがあり、これらは別個に処理される必要がある。例えば、誰かが下流ポートからファイバチャンネルを引っ張る場合、全体のVSXではなく、IOパスのみがフェイルオーバーすべきである。
【0167】
(タスクモニタリング)
全てのプロセッサ(PPC、ePPC、PICO、およびFC)のタスクおよびスレッドは、正確な動作のためにモニタリングされるべきである。VxWorkのために、2つの最も一般的なタスクレベルのエラーは、コードの無限ループであり、タスクがRTOSによって一時停止される例外(exception)がある。いくつかの例は、
1.フリーリスト上にすでに存在するタスクフリーメモリ
2.ゼロによる分割
3.ページ欠陥
4.満たされないループ終了条件
である。
【0168】
機構は、これらの特定のシナリオをチェックするための場所に置かれるべきである。一実施形態では、復元がリブートをリクエストすべきであり得る。
【0169】
(RTOS拡張)
エラー解析がリソース上のエラーを解析かつトラッキングすることに対して責任がある。全てのエラーがエラー解析で発生することが重要である。しかし、これは、いくつかのエラーがハードウエアの例外およびトラップを引き起こす場合には、常に可能ではない。従って、タスクレベルで処理され得ない。これらの種類のエラーに対して、RTOSへのインターフェースが必要とされる。
【0170】
(RTOS例外ハンドラー)
プロセッサにその例外ハンドラーを入れる例外がプロセッサにおいて発生する度に、永久的なまたは過渡的なエラーが発生したかどうかを決定するために、例外が解析される必要がある。このような解析は、さらなるテストを行うために診断をスケジューリングすることを必要とし得るため、このエラーが永久的または過渡的であるとして正確に特徴付けられ得る。
【0171】
最初に、検出された任意の永久的なエラーは、フェイルオーバー復元動作を生じるべきである。任意の永久的なエラーは、フェイルオーバーセットから除去されるメンバーを生じるべきである。このエラーが過渡的である場合、メンバーは、フェイルオーバーセットから永久的に除去されるべきではない。この情報は、エラー解析に通信されるべきであり、それにより生じたハートビートが無視される。
【0172】
(診断テスト結果)
カードの永久的なハードウエアエラーの検出を生じる診断テスト結果は、フェイルオーバーのためのリクエストに直接的に結合されるべきある。任意のカードレベルのハードウエアエラーは、カードレベルフェイルオーバーの要求を生じる。後で、より高度なエラー復元(SPのディセーブル等)が追加され得る。
【0173】
(欠陥の報告)
フェイルオーバーサービスは、アラームマネージャおよびログサービスを介してUIに欠陥を報告する。残っているメンバーは、パートナーのメンバーの欠陥を報告する。欠陥したメンバーのログが取り出される。
【0174】
パートナーの状態は、以下のように利用可能である。
【0175】
【表9】
表8−UIに可視のパートナーの状態
ソフトウエアエラーのためにフェイルオーバーが発生することが可能である。しかし、あるメンバーは、ハードウエア欠陥のために置換されるのみであるべきある。フェイルオーバーを引き起こすソフトウエアエラーにメンバーを置換させるべきではない。これは、持続的なストレージにエラーを記録することが可能であるべき欠陥報告機能を必要とすることにより、アービターはレコードを読み出し得る。
【0176】
(フェイルオーバーアラーム)
フェイルオーバーが発生する場合、フェイルオーバーサービスがデータベースおよびサービスフレームワークによって新しい一次メンバーに自動的に切り替える。以下の状態は、フェイルオーバーに対して引き起こされる。
【0177】
・計画されたメンテナンスおよびシャットダウン−フェイルオーバーセットの最良の利点の内の1つは、クライアントへのサービスを妨害することなく、定期的なメンテナンスを実行するためにサービスをメンバーから離れて移動させ得る。例えば、これは、最新のリリースにソフトウエアをアップグレードすることを可能にするか、またはサイトを動作的に維持する一方でシステムにメモリを追加する。
【0178】
・システムクラッシュ−メンバーがクラッシュし、そのメンバーが一次メンバーである場合、別のメンバーは、サービスおよびデータ利用可能性が維持されるように、速やかに一次メンバーに作成されるべきである。ソフトウエアエラーがクラッシュを生じ、そのメンバーがその構成から永久的に除去されないことを決定し得る。そのクラッシュは、ハードウエア欠陥によるものであった場合、メンバーは、永久的に除去される。
【0179】
・通信欠陥−各メンバーは、ハートビートプロトコルに関与する。このハートビートプロトコルは、メンバーの健康を確立する。このプロトコルは、この構成で各メンバーを相互接続する冗長の二方向ラインを介して実行すべきである。このプロトコルは、メンバーの欠陥間の1つ以上の通信方法が落ちる場合に、ある欠陥が存在することを結論付け得る。通信欠陥は、
・アダプタ欠陥
・このシステムは、通常のハブに接続されるか、またはその欠陥を切り替える。
【0180】
・通信ケーブル欠陥
・システムハング
によって発生する。
【0181】
・システムハング−システムハングは、通信欠陥を引き起こすが、そのシステムハングはまた、データベース不正への扉を開く。データ完全性の妥協(すなわち、システムキャッシュまたは無効データ)に対して保護するために、メンバーは、欠陥モードのサービスを継ぐ前に落ちるノードがデータベースを修正することを確実にする。これは、一般的には、I/OフェンシングまたはI/Oバリアと呼ばれる。
【0182】
・ソフトウエアによって定義された達成された閾値−所定の閾値条件は、メンバーの欠陥を引き起こし得る。繰り返し再起動するメンバーは、メンバーを欠陥させる閾値の例である。
【0183】
・ハードウエア欠陥−時には、ソフトウエアがハードウエア欠陥を直接的に検出することが可能である。これが発生する場合、メンバーは、欠陥の範囲に依存して置換される必要があり得る。SPまたはFCポート欠陥は、独立して管理され得、メンバーの欠陥を引き起こす必要がない。しかし、VSCに関するIDEドライブ欠陥は、全体のメンバーを利用不可能にする。
【0184】
・データベース欠陥−データベースによって提供されたこの欠陥許容差は、欠陥の単一ポイントのみ許容するように設計される。これらは、以下に分類される。
【0185】
・ソフトウエア欠陥
・以下のソフトウエア欠陥は、システムによって許容される
・RTRDBは、非予測的に終了する
・RTRDBをハングする
・以下の欠陥の所定の例が許容される
・RTRDBは誤った内部状態を示す
・ハードウエア欠陥
・以下のハードウエア欠陥は、システムによって許容される
・プロセッサの停止
・ディスクエラー
・ネットワークエラー
・システム欠陥
・以下のシステム欠陥は、システムによって許容され得る
・ダイナミックストレージ消耗(不十分なメモリ)
・安定なストレージ消耗(不十分なディスク空間)
・これらの欠陥が過渡的な欠陥である場合に許容されるのみであり得、特に、スタンバイシステムに関して直ぐに明らかにならない。
【0186】
・フレームワーク欠陥−サービスフレームワークによって提供されたこの欠陥許容差は、また単一の欠陥のポイントのみを確認するように設計される。これらは、以下に分類される。
【0187】
(ハートビートアルゴリズム)
ハードウエアエラーを特徴付けることは困難なプロセスである。これは、欠陥挙動が低減されて、プロトコルを終了するために、不能プロセッサになる場合、VSXにおいて簡略化され得る。これは、ハートビートプロトコルの目的である。
【0188】
VSXにおける各カードは、それ自体の独立ハートビートアルゴリズムを実行する。マルチカードハートビートが必要とされない。JCPおよびサービスフレームワークの各々がそれ自体のハートビートアルゴリズムを有するからである。ハートビート欠陥は、エラー解析に報告されるべきである。
【0189】
(基板内部のハートビートアルゴリズム)
ハートビートプロトコルは、署名されたメッセージの概念を使用し、実質的に以下に従う。各カード上のプロセッサは、トランスミッタおよびレシーバの2つのグループに分割される。このトランスミッタグループは1つのプロセッサを含み、レシーバグループは、残りのプロセッサを含む。このトランスミッタは、値を各レシーバに送信することによってハートビートを開始する。次いで各レシーバは、その値を送信し、その値はトランスミッタから各他のレシーバまでにおいて獲得される。最後に、各レシーバは、
IC1.全ての非欠陥レシーバは、同じ値を獲得する
IC2.トランスミッタが欠陥していない場合、各欠陥していないレシーバは、トランスミッタの値を使用する
ようにトランスミッタによって送信された値に対して決定する。このアルゴリズムは、同期的に終了する。各々に関与しているプロセッサは、同時に合意に達する。
【0190】
このハートビートアルゴリズムは、値viのマジョリティがvに等しい場合、マジョリティ(v1,...,vn−1)がvに等しくなる特性を用いて1セットの値に適用されたマジョリティ関数を想定する。
【0191】
実際には、これはこのような関数の順序(nの各々に対して1つ)を想定する。マジョリティ値が存在しない場合、マジョリティは0に等しい。
【0192】
以下の説明では、nはプロトコル内で関与しているプロセッサの数とする。mは欠陥の数を許容可能にする数とする。n>=mと仮定する。
【0193】
(アルゴリズムHB(0))
1.このトランスミッタは、その値を各レシーバに署名かつ送信する
2.各レシーバはその値を使用し、各レシーバはトランスミッタから獲得するか、あるいは、レシーバが値を獲得しないかまたはその値が認証されることができない場合に、値0を使用する
(アルゴリズムHB(m)、m>0)
1.トランスミッタは、その値を各レシーバに署名かつ送信する
2.各レシーバに対して、viをトランスミッタから獲得するレシーバiの値とするか、あるいは、レシーバiがトランスミッタからの値を獲得しないかまたはその値が認証されることができない場合は0とする。次いでレシーバIは、アルゴリズムHB(m−1)を用いて値viをn−2の他のレシーバに送信するようためのトランスミッタとして動作する
3.各レシーバに対して、ステップ2において、Vjをレシーバiから獲得されたレシーバiの値とするか、あるいは、レシーバがこのような値を獲得しないかまたはその値が認証されることができない場合は0とする。レシーバiは、マジョリティ(v1,...,vn−1)の値を使用する。
【0194】
任意のmに対して、アルゴリズムHB(m)の証明は、以下の参照において見出され得る。
【0195】
認証符号aはa=Ap[d]であるように、データアイテムdに対して、プロセッサpによって構築される。プロセッサpがその値とrとを通信する場合、メッセージは、a=Ap[v]である3種類<p,a,v>からなる。レシーバrは、そのa=Ap[v]をチェックするメッセージを獲得する。実際には、データを適切にランダム化する任意の関数Aは十分である。なぜなら、カード内の欠陥は、故意のインテリジェンスではないランダムエラーによるものである。「左にシフト」または「右に回転」等の簡単な認証アルゴリズムは、PICOプロセッサの命令セットを保持する場合に選択されるべきである。
【0196】
HB(1)のインプリメンテーションは、タイマーを使用して、以下のように外部イベントをアルゴリズムに駆動する。
【0197】
ステップ0
同期クロック(4.9.2参照)。次いでアルゴリズムを開始するためにタイマーを設定し(ステップ1,C)、ここで、C=アルゴリズム的に決定された所定の日時である。
【0198】
ステップ1
タイマーポップ。トランスミッタの場合は、値vを[(n−1)=2]の他のプロセッサに署名かつ送信する。レシーバの場合は何もしない。タイマーを設定する(ステップ2、1秒)。
【0199】
ステップ2
タイマーポップ。レシーバが全て受信されたメッセージを読み出す場合、受信された各メッセージに対して、その署名を確証し、送信された値をメッセージに記録し、そしてメッセージを[(n−1)=1]の他のプロセッサに署名かつリレーさせる。受信されていないかまたは認証されていない各メッセージに対して、デフォルト値を置換し、リレーメッセージの代わりにデフォルトメッセージを送信する。タイマーを設定する(ステップ3、1秒)
ステップ3
タイマーポップ。リレーされた値を確証する。マジョリティ(v1,...,vn−1)を使用する双方向性一貫性ベクトルを計算する。0である場合、適切な欠陥イベントをフェイルオーバー状態マシンに生成させる。他の場合では、ゼロベクトルおよびタイマーを再度設定する(ステップ1、1秒)。フェーズ間のこの単一の秒の間にプログラム可能であるべきである。
【0200】
(インプリメンテーションの例)
欠陥ではない場合において、アルゴリズムがどのようにして働くかを理解するために、m=1、n=3の場合を考慮する。PPC=パワーPC、EPPC=埋め込まれたパワーPC、およびPCIO=ネットワークプロセッサとする。図16は、メッセージ履歴を示す。HB(1)の第1のステップでは、トランスミッタPPCは、vを全てのレシーバePPCおよびPICOに送信する。第2のステップでは、ePPCは、値vをPICOに送信し、PICOは、簡単なアルゴリズムHB(0)を用いて値をePPCに送信する。ステップ3では、PPC、ePPC、およびPICOの全ては、a1=a2=a3=vを有し、これらは全て正確な値v=マジョリティ(v,v,v)を獲得する。
【0201】
次に、トランスミッタが故障する場合に起こることを理解する。図17は、故障プロセッサが値xおよびyを送信する場合のメッセージ履歴を示す。これらは認証されない。各レシーバは、V1=xまたはy、V2=0、V3=0を獲得し、それによりレシーバの全ては、任意の値xおよびyが等しいかどうかにかかわらず、ステップ(3)において、同じ値のマジョリティ(xまたはy、0、0)を獲得する。
【0202】
故障トランスミッタに関連する別のシナリオは、トランスミッタがメッセージを送信する場合に発生する。図18は、故障プロセッサがメッセージを送信しない場合のメッセージ履歴を示す。各レシーバは、その値がトランスミッタから獲得された場合に値0を使用する。従って、V1=0、V2=0、V3=0であり、それらはステップ(3)において同じ値のマジョリティ(0,0,0)を獲得する。
【0203】
このアルゴリズムが欠陥レシーバの存在においてどのようにしてアルゴリズムが働くかを理解するために、図19におけるメッセージ履歴を考慮する。HB(1)の第1のステップでは、トランスミッタT1は、以前のように全てのレシーバにvを送信する。第2のステップでは、ePPCは、簡単なアルゴリズムHB(0)を用いて値yをリレーする。ステップ3では、PPCおよびPICOは、V1=V3=vおよびV2=yを有し、それらは、正確な値v=マジョリティ(v,v,y)を獲得する。
【0204】
図20に示された次の例は、以前の例に関する変更である。ePPCは、T1の値vをリレーする。
【0205】
(データベースハートビートアルゴリズム)
アービトレータ(arbitrator)およびJCPは、メッセージを介してプロトコルを定期的に交換し、データベースが正確に機能するかどうかを決定する。アービトレータとJCPとの間のストリームが閉じるかまたは破壊される場合、アービトレータは、JCP(アービトレータが制御するデータベースと共に)が停止されたことを想定するように権利が与えられる。ハートビートメッセージがいくつかの時間の間に受け取られた場合(すなわち、二倍のハートビート間隔)、アービトレータサービスは、JCPがデッドであると想定し得る。しかし、このアービトレータは自由であり、ハートビートメッセージを無視するか、またはハートビート間隔を0または非常に大きい値に設定する。
【0206】
エラーがJCPハートビートにおいて検出される場合、エラーイベントは、エラー解析に対してコンポーネント(VSC)上に生成されるべきである。エラー解析は、そのメンバーがフェイルオーバーセットから除去されるべきかどうかを決定するために代替のパスを使用する。
【0207】
(フレームワークハートビートアルゴリズム)
サービスフレームワークは、サービス間の通信のための場所間でプラットフォームを維持する。ハートビートアルゴリズムであるか、または他の場合では、通信欠陥を検出するための同様なアルゴリズムである。
【0208】
エラーがサービスフレームハートビートにおいて検出される場合、エラーイベントは、エラー解析のために場所コンポーネント(VSCまたはLC)上に生成されるべきである。VSC場所の欠陥に対して、エラー解析は、メンバーがフェイルオーバーセットから除去されるべきであるかどうかを決定するために、代替の経路を使用する。
【0209】
(クロック同期化)
双方向的一貫性は、いくつかのエラーのマージン内部で互いに同期化されるプロセッサ保守クロックを必要とする。物理クロックは、完全な時間を保持しない。これらのクロックは、互いに関してドリフトし得る。従って、これらのクロックは、定期的に再同期化されなければならない。
【0210】
VSXにおける物理クロックは、同期化されることを必要とする。第1に、リアルタイムクロック(RTC)は、VSXシステム内の各基板上に存在する。第2に、ハードウエアタイマーの妨害を生成するために使用された2つのコンポーネントが各基板自体の内部に存在する。これらのクロックの全ては、双方向性の一貫性が発生するある最大差内に同期化される必要がある。このセクションは、そうするために戦略を議論する。
【0211】
このクロック同期化アルゴリズムは、以下の仮定を作成する。
【0212】
1.任意の2つのカード上のリアルタイムクロックの値は、ほとんどの最大クロック差によって各々互いに異なる。
【0213】
2.この2つのカードは、セクション3.3において説明されたようにHAにおける全メンバーである。
【0214】
(リアルタイムクロック同期)
このアルゴリズムは、最初に、任意の2つのメンバーによって使用されたRTC値の間の差が最大クロック差の秒数を越えることができないと仮定する。M1をメンバー#1およびM2をメンバー#2とする。M1がプライマリであり、M2がバックアップであると仮定する。M1とM2との間のリアルタイムクロックを同期化するための方法は、以下のようである。
【0215】
M1のクロックを読み出すために、M2は、両方のメンバーが十分にアクセス可能であり、フェイルオーバーセットがオンラインである後に、クロックリクエストメッセージをM1に送信する。M2は、その現在のRTC値を用いてこのメッセージに最終的に応答する。次いで、M1は、2つの値(自身のクロックおよびM2のクロック)を利用する。M1の値がそれ自身の値から最大クロック差より大きい分だけ異なる場合、平均を形成する場合、その値は、自身の値をM1のクロック値に置換する。
【0216】
これがなぜ働くかを理解するために、アルゴリズムを実行する間にエラーが発生しないことを想定する。言い換えると、両方のメンバーは、セクション3.3において説明されたフェイルオーバーセットにおけるフルメンバーでなければならない。メンバーがフェイルオーバーセットから除去される場合、アルゴリズムはアボートされる。
【0217】
M1およびM2をフェイルオーバーセットにおけるメンバーにさせ、CM1およびCM2を、そのRTCに対するアルゴリズムの開始において、それぞれM1およびM2によって使用されたRTCクロック値にする。M1の観点から、CM1=CM2である場合、(CM1+CM2)/2=CM1であり、アルゴリズムが終了する。CM1>CM2またはCM1<CM2である場合、(CM1+CM2)/2=CM1+nであり(ここで、n=(CM1−CM2)/2)、アルゴリズムが終了する。各連続的な反復のために、CM1−CM2)/2だけブロックを互いに近づける。
【0218】
従って、十分頻繁に再同期化することによって互いの最大ドリフト内で同期化されたクロックを維持し得、それにより、互いの最大クロック差内部に最初に存在するクロックは、最大ドリフト以外のところに離れてドリフトしない。
【0219】
この同期化アルゴリズムは、ブート同期化の後、そしてその後、24時間毎に一回等のプログラム可能な間隔において実行され得る。
【0220】
(チック(tic)カウンター同期化)
チックカウンタの同期化は、RTCを同期化するよりも簡単なプロセスである。これは、チック値が共有されたメモリで維持されるためである。従って、このチック値がいずれかのプロセッサによって直接読み出され得る。送るためのメッセージは必要ではない。
【0221】
このアルゴリズムは、PPCによって使用された最初のチック値と各クロックコンポーネントをプログラムするためのePPCとの間の差が同じであり、ドリフト速度が1秒当たりの最大クロック差のチックをすでに越えることができないことを想定する。PPCおよびePPCは、1秒当たり同じ数のチックにおいてチックにプログラムされることが想定される。この最大ドリフトレートは、1/4秒を越えるべきではない。
【0222】
クロックチックを同期化するためのアルゴリズムは、実質的に以下のとおりである。
【0223】
1.p=「他の」プロセッサのチックカウンタ。タイマー(qチック)を設定する。
【0224】
2.タイマーポップ。r=「他の」プロセッサのチックカウンタ。s=|r−p|
3.最大クロック差>(q−s)>最大ドリフトである場合、(q−s)/2だけtを低減させ、新しいtを用いてクロックチップを再プログラムする。ここでt=クロックチップをプログラムするために使用されたチック/secの数である。
【0225】
この働きを理解するために、アルゴリズムを実行する間にエラーが発生し得しないことを想定する。プロセッサがアクティブセットから除去される場合、アルゴリズムは、タイマーをキャンセルすることによってアボートされる(利用不可能なプロセッサを用いてクロックを同期させる必要がない)。
【0226】
HPおよびEPを、それぞれホストプロセッサおよび埋め込まれたプロセッサとし、CHP1およびCEP1を、そのチックカウンタに対するアルゴリズムの開始においてHPおよびEPによって使用された値とする。HPnおよびEPnを、DUARTチップをプログラムするために使用された、1秒当たりのチックの数とする。CEP2およびCHP2を、タイマーがポップされる場合のチックカウンタ値とする。
【0227】
((CEP2−CEP1)−(CHP2−CHP1))>最大ドリフトである場合、CHPn=CHPn−((CEP2−CEP1)−(CHP2−CHP1))である。DUARTチップチックが、((CEP2−CEP1)−(CHP2−CHP1))/2だけ低減される周波数の場合、2つのクロックを互いに接近させるとき、アルゴリズムが進む。従って、十分頻繁に再同期化することによって互いの最大ドリフト内で同期化されたクロックを維持し得、それにより、互いの最大クロック差内部に最初に存在するクロックは、最大ドリフト以外のところに離れてドリフトしない。
【0228】
繰り返された再同期化によって、この再同期化の各々は、クロックを((CEP2−CEP1)−(CHP2−CHP1))/2だけ互いに接近させ、このアルゴリズムは、任意の所望の同期化の程度を達成し得るように見える。しかし、2つのファクタが無視されている。
【0229】
1.アルゴリズムを実行するのにかかる時間
2.他のプロセッサのクロックを読み出す際のエラー
クロックが同期化され得る接近性を制限する2つのファクタが存在する。このように、最大ドリフト値は、読み出しクロックのエラーおよびアルゴリズムを実行するのにかかる時間を含まなければならない。
【0230】
例えば、3秒のフェイルオーバーを有するために、1秒のハートビートを有することを望む。DUARTを想定することは、60チック/秒の間プログラムされ、最大ドリフト値は、30チックで安全に設定され得る。この同期化アルゴリズムは、ブート同期化の後、およびその後24時間毎に一回で実行され得る。
【0231】
(VSXおよびVSCフェイルオーバー)
このセクションは、VSXボックス間のフェイルオーバーを記載する。以前に言及されたように、VSXボックス間のフェイルオーバーは、高い利用度がある。それ自体、フェイルオーバーセットの構成要素は、2以上のVSXシャーシまたはスタックにある。この種のフェイルオーバーはまた、高利用度(High−Availability)(HA)セットとして知られている。
【0232】
記述される場合を除き、以下のセクションにおいて概要説明されるステップは、VSXフェイルオーバーに適合する。
【0233】
(システム要件)
このセクションは、HAセットを作成する場合の2つのVSX間の物理的なセットアップを記載する。HA対構成では、以下のトラフィックタイプが識別される。VSX対間のトラフィックは、帯域幅要件にしたがって分類される。
【0234】
低帯域幅のアプリケーション(Low Bandwidth Applications)
・サービスフレームワークメッセージ
・データベース更新
・ハートビートメッセージ
高帯域幅のアプリケーション(High Bandwidth Application)
・保存、リリース、リセット、オーダーされたタグ
・キャッシュデータ
・キャッシング
(VSXとVSXとの接続)
HAセットにおける2つのVSXは、冗長高速相互接続を用いて接続される。インフィニバンド(infiniBand)、ファイバーチャンネル、またはGIGeは、この目的にかなう。この相互接続は、各VSXシャーシ上の解体スイッチ構成を統合する。受信用SPは、一つのスイッチ構成から別のスイッチ構成にメッセージを送るためのリレープロセッサとして作動する。本発明の実施形態では、ファイバーチャンネルは、図23に示されるように、共用リンク構成において用いられる。
【0235】
(輸送機構)
I/Oパスは、独自の拡張リンクサービス(ELS)コマンドを使用して、メッセージをリモートSPに輸送し得る。ELSは、小量のデータのために高性能パスを提供する。ELSコマンドのペイロードは、2kのデータに制限される。
【0236】
より大きい輸送に対して、SCSIプロトコルが用いられ得る。いずれかの機構は、全ファイバチャンネルのトポロジおよびSANとWANとのトポロジにわたって働く。SEND DIAGNOCSコマンドは、VSX間にメッセージを輸送するために用いられる。エラーからの回復は、適切な規格に従う。
【0237】
インターリンクのいずれかの端部上の各ポートは、発動因子およびターゲットの両方であるように構成される。ネットワーク層におけるディスカバリエージェント(Discovery Agent)は、ポートおよびプロセスログインを行う。LUN 0のみがサポートされ、それは、管理LUNになる。コンフルーエンスマネージメント(Confluence Management)VLUNは、SPへのサービスによって加えられる。Spは、VSXを共に接続する。SCSIデバイスマネジャー(Device Manager)は、パートナーVSXからのSCSIコマンドに応答する。
【0238】
CNI VSXデバイスに対する標準INQUIRYデータは、以下であるべきである。
【0239】
【数1】
コマンドの送信および返答の受信のための完全なプロトコルが、図24に示されるシーケンス図に示される。
【0240】
メッセージ通過インターフェースは、リモートVSXポート上のpLUNへの書き込みと同程度の簡単な様式でインプリメントされ得る。
【0241】
(フェイルセーフ通信)
VSXソフトウェアエンティティ間の正常な通信は、共有リンクを通じて生じる。データベーストランザクションはまた、正常な通信のために共有リンクを使用する。共有リンクが失敗する場合、代替のパスがVSX間の問題を決定するために必要とされる。
【0242】
VSXボックス間のさらなる相互接続がエラーリカバリのみのために使用されて、インターリンクフェイラー(failure)のための正しいリカバリアクションを決定する。データベーストランザクションは、フェイルセーフパスを通じて再ルーティングされず、データベースのリンクは失敗する。代替のインターリンクは、パートナーのVSXが任意であるかを確認するためのみに使用され、インターリンクは、失敗する。別のハートビートパスまたはVSXインターリンクを介するメッセージ通過方法は、将来においてインプリメントされ得る。
【0243】
フェイルセーフコマンドは、「SELF−TEST」オペレーションのみを指定する。このコマンドがエラー解析に送達される場合、インターリンクは、正しいオペレーションのためにテストされる。リンクが動かせるようになっている場合、そのコマンドは、GOOD状態に戻る。リンクが動かせるようになっていない場合、そのコマンドは、BAD状態に戻る。そのコマンドがタイムアウトするかまたは他の方法で失敗した場合、VSXが動かせるようになっていないことおよびその結果のイベントがエラー解析に対して利用可能になされることが想定される。
【0244】
(フェイルセーフ技術)
このフェイルセーフ接続を提供するために2つの基本的な方法がある。図25は、管理リンクであり、VSXを一緒に接続するために各VSXからの管理ポートを使用する。図26は、共有ディスクであり、格納デバイスがデュアルポート機能である2つのVSX間でのみ作用し得る。
【0245】
(管理リンクアプローチ)
各VSCカードは、管理のためにイーサネット(R)ポートに備えられるべきである。サービスフレームワークによって確立された論理的TCP接続は、2つのVSXを接続する物理的なリンクの一つの損失によって影響されないままであるべきである。完全な冗長相互接続は、2つのイーサネット(R)ポートおよびスイッチ、2つのイーサネット(R)スイッチおよび2つの独立のパスを利用する。
【0246】
(共有ディスクアプローチ)
共有ディスクアプローチは、VSXシステム間にメッセージを通すために用いられるREAD BUFFERおよびWRITE BUFFERコマンドを使用する。各VSX上のソフトウェアエンティティは、入来するメッセージに対して一致するデバイス位置をポーリングする。メッセージが見出される場合、それは、宛先エンティティに送達される。この宛先エンティティは、次いで、イーサネット(R)リンク状態が決定されるようにさせる。イーサネット(R)リンク状態は、共有ディスクに書き込まれる。他のVSX上のポーリングエンティティは、イーサネット(R)状態を検索し、それをエラー解析に広める。プロトコルが図27に示される配列に示される。
【0247】
以下のテーブルは、2つのアプローチを要約する。管理リンクは、より拡張性があり、より柔軟性がある。共有ディスクは、デュアルポート格納を使用することを必要とする。
【0248】
【表10】
(ノードネーム(Node Name)およびポートネーム(Port Name))
HA Set WWNは、そのメンバー(Member)のWWNの一つから選択される。これは、HA Setが論理的に一つのノードであるからである。HA Setにおけるすべてのポートは、それらのポート構成において同一のノードネーム(Node Name)を使用すべきである。HA Setを作成する場合、FC PortのPLOGI情報は、ノードネーム(Node Name)としてのHA Set WWNを用いて再プログラミングされるために必要とされる。
【0249】
(VSX HA構成(Configuration))
このセクションは、図28〜31に示されるいくつかのHA構成を記載する。以前に言及されたように、HA Setは、特別な種類のフェイルオーバー(Failover)セットである。HA Setは、VSXの論理的な組み合わせから、または、他のフェイルオーバー(Failover Set)から作成される。
【0250】
(HA構成(Configuration)上の制約(Constraint))
サポートされたHA構成の数についての制限は、以下の通りである。
【0251】
1.ポートネーム(Port Name)制限−各ポートは、HA Setであり、標準に特定化されたPort Name IEEE Extendedフォーマットを使用する。これは、ノードあたり4096ポートをサポートする。各HA Setが1ノードとして提示される場合、制限は、4096ポートである。32のポートボックスに対して、これは、128ボックスの制限である。
【0252】
2.通過するメッセージ数およびサービスフレームワーク(Services Framework)が位置間でサポートするハートビート「接続」についての制限がある。3つのカードVSXに対して、6つの接続が要求される。23カードのVSXに対しては、それは30接続である。
【0253】
3.サイズ制限−データベースは、インメモリ(in−memory)データベースである。データベースのサイズは、どれだかの量のメインメモリがカード上にあるかによって限定される。
【0254】
4.レプリカ制限−データベースのソフトウェアは、データベースレプリカの数についての制限を有し得る。
【0255】
5.複数インスタンス制限−単一のプロセッサ上でサポートされるデータベースの数についての限定があり得る。
【0256】
これらの制限が与えられて、以下のセクションは、いくつかのHA構成を提示する。これは、それほど遠くない将来において実行可能に思われる。
【0257】
最も一般的な構成であるN−Nodeが最初に設計するように促される。これは、2−Nodeおよび4−NodeがN−Nodeの特別な場合であるからである。階層的な構成がN−Nodeが完了した後に設計され得る。
【0258】
(2−Node HA構成)
図28に示される2−ノードの接続形態(topology)は、VSXがパートナー対で構成されることを要求する。全ての記憶装置(strage)は、両方のVSXに接続される。一つのみのVSCが、VSX内に存在する。フェイルオーバーは、パートナー間でのみ可能である。一方のVSXはプライマリVSXとして機能し、他方のVSXはBackupとして機能する。失敗の数は、t=1である。
【0259】
(2−Node階層)
図29に示される階層的な接続形態は、VSXが対で構成されることを要求する。VSX自体は、2つのVSCを含む。1つのVSCは、プライマリであり、一つのVSCは、バックアップであり、他の2つのVSCは、代替(Alternate)である。失敗の数は、t=1である。
【0260】
(4Node HA構成)
この構成は、2、3、または4ノード組織化をサポートし得る。全記憶装置は、厳密にすべてのノードに物理的に接続される。一つのみのVSCがVSX内に存在する。単一のVSXはバックアップとして設計され、単一のVSXはプライマリ(Primary)として設計される。全ての他のVSXは、代替(Alternate)と考えられる。フェイルオーバーカスケーディングがこの構成において可能である。失敗の数は、t=3である。
【0261】
(VSX N Node)
この構成では、全ての格納装置がHA構成(Configulation)内の全てのVSXにアクセス可能である。接続形態は、スイッチを用いて構築され得る。一つのみのVSCがVSX内に存在する。全てのVSXは、データベースにアクセスする。フェイルオーバーは、HA構成(Configulation)においてあるノードから任意の他のノードに発生し得る。VSXが別のVSXにフェイルオーバーし、その後、HA Setサイズが1になるまで別のVSXにフェイルオーバーする、カスケーディングフェイルオーバーを構成することも可能である。失敗の数は、t=n−1である。
【0262】
(HA Setへの記憶装置の支援)
1より多いHAセットをSANに有することが可能である。例えば、N=10とおくと、N−Node構成は、2つの5−Node HA Setに分割され得る。記憶装置が両方のHA Setに物理的に接続される場合、所与のHA Setに対する排他的な使用のために支援されることが必要である。他の場合には、いくつかの潜在的なデータ腐敗(corruption)がある。
【0263】
記憶装置が物理的レベルにおいてHA Set間で分割されると、ユーザは、それぞれの発見された格納デバイスに対してHA Set IDを割り当て得、多くの同じ方法において、ユーザのドメインが、格納デバイスに対して割り当てられる。次いで、管理サーバは、その構成における所与のHA Setによって「所有された」デバイスのリストを分散させるために用いられ得る。
【0264】
実施形態において、スイッチレベルのポートゾーニング(port zoing)またはLUNマスキングが、HA Set記憶装置を隔離するために用いられ得る
(調整的アクション)
このセクションは、ある種のキーメンバー(Member)状態機構イベント用に利用するための工程をリストする。これらのアクションはにフェイルオーバーサービス(Failover Service)によってすべて利用されるのではなく、全体のVSXから要求されるアクションを表わすことに留意することは重要である。
【0265】
留意:以下のアルゴリズムでは、メンバー(Member)が2つのLCおよび1つのVSCから作成されるVSXである場合、VSCフェイルオーバーサービス(Failover Service)およびLCフェイルオーバーサービス(Failover Service)の両方が、メンバー(Member)のアクションを実行する。例えば、「プライマリフェイル(Primary Fail)」は、「FCポート(Port)がオフィスに行く」を呼び出す。VSCおよびLCフェイルオーバー(Failover)サービスは、双方とも、FCポート(Port)オフィスを押すことを起動する。
【0266】
(プライマリフェイル)
図32を参照して、プライマリ(Primary)フェイルの場合、本発明の実施形態により以下が生じる。
【0267】
プライマリ(Primary)フェイルの場合、プライマリ(Primary)は、以下のアクションを実行する。
【0268】
1.フェイルイベントを検証する。
【0269】
2.フェイル理由コードを記録する。
【0270】
3.可能であれば、フェイルストップする。
【0271】
a.JCPを不活性にする。
【0272】
b.FCポートがオフィスに行く。
【0273】
プライマリ(Primary)フェイルが失敗した場合、バックアップ(Backup)は、以下のアクションを実行する。
【0274】
1.進行中のフェイルオーバーを記録する。
【0275】
2.フェイルオーバー試行の数を記録する。
【0276】
3.試行の数が閾値を超える場合には、フェイルストップする。
【0277】
4.マスター(Master)モード内のJCPを活性にする。
【0278】
5.新しい位置上の全てのバーチャルサービス(Virtual Service)をイネーブルする。
【0279】
6.フェイルオーバーによって影響されるダウンストリームデバイスをリセットする。
【0280】
7.影響されたデバイス用のリザーブ/リリース(Reserve/Release)をクリーンアップする。
【0281】
a.アップストリーム−クリアなアップストリーム留保(reservation)。
【0282】
b.ダウンストリーム−リセットが留保をクリアにする。
【0283】
8.影響されたデバイス用のパーシステントリザベーション(Persistent Reservation)をクリーンアップする。
【0284】
a.アップストリーム−プレエンプト(Preempt)およびクリア(Clear)サービスアクション。
【0285】
b.ダウンストリーム−プレエンプト(Preempt)およびクリア(Clear)サービスアクションを用いる。
【0286】
9.影響されたデバイス用にスパンライト(Span Write)ロックをクリーンアップする。
【0287】
10.全ての影響されたデュアルポートされたvLUNが、hLUN(0×29)上にパワーオンリセット(Power−on Reset)状態を有するユニットの注意を設定する。
【0288】
11.任意の管理要求を再スタートさせる。
【0289】
12.再構築またはフォーマット等の長い実行オペレーションを再スタートさせる。
【0290】
13.成功したフェイルオーバーを記録する。
【0291】
14.メンバー(Member)状態を更新する。
【0292】
15.新しいバックアップ(Backup)を選択する。
【0293】
a.他のバックアップ(Backup)が存在しない場合、「Failover Disabled」を生成する。
【0294】
プライマリ(Primary)が失敗した場合、代替(Alternate)が以下のアクションを実行する。
【0295】
1.選択された場合、バックアップ(Backup)のために再構成する。
【0296】
a.スタンバイ(Standby)モード内のJCPを活性にする。
【0297】
2.「Configured for Backup」を生成する。
【0298】
3.メンバー(Member)状態を更新する。
【0299】
(バックアップフェイル)
バックアップ(Backup)が失敗する場合、プライマリ(Primary)は、以下のアクションを実行する。
【0300】
1.JCPにスタンバイデータベースが失敗したことを知らせる。
【0301】
2.新しいバックアップ(Backup)を選択する。
【0302】
a.他のバックアップ(Backup)が存在しない場合、「Failover Disabled」を生成する。
【0303】
バックアップ(Backup)が失敗した場合、バックアップ(Backup)は、以下のアクションを実行する。
【0304】
1.フェイルイベントを検証する。
【0305】
2.フェイル理由コードを記録する。
【0306】
3.可能であればフェイルストップする。
【0307】
a.JCPを不活性にする。
【0308】
b.FCポート(Port)オフラインを進む。
【0309】
バックアップ(Backup)が失敗した場合、代替(Alternete)は、以下のアクションを実行する。
【0310】
1.選択される場合、バックアップ(Backup)のために再構成する。
【0311】
a.スタンバイ(Standby)モードにおいてJCPを活性にする。
【0312】
2.「Configured for Backup」を生成する。
【0313】
3.メンバー(Member)状態を更新する。
【0314】
(代替フェイル)
代替(Alternate)が失敗する場合、プライマリ(Primary)は以下のアクションを実行する。
【0315】
1.アクション不必要。
【0316】
代替(Alternate)が失敗する場合、バックアップ(Backup)は、以下のアクションを実行する。
【0317】
1.失敗した代替(Alternate)に複製(Replicating)を停止させる。
【0318】
代替(Alternate)が失敗した場合、代替(Alternate)は、以下のアクションを実行する。
【0319】
1.失敗イベントを検証する。
【0320】
2.失敗理由コードを記録する。
【0321】
3.可能であればフェイルストップする。
【0322】
a.JCPを不活性にする。
【0323】
b.FCポート(Port)は、オフィスに行く。
【0324】
(バックアップ(Backup)のための構成)
バックアップ(Backup)が構成される場合、プライマリ(Primary)は、以下のアクションを実行する。
【0325】
1.スタンバイデータベースが活性化されることをJCPに知らせる。
【0326】
2.クロックをバックアップと同調させる。
【0327】
3.「Failover enabled」を生成する。
【0328】
バックアップ(Backup)が構成されるとき、バックアップ(Backup)は、以下のアクションを実行する。
【0329】
1.スタンバイモードにおいてJCPを活性にする。これは、バックアップ(Backup)にデータベースおよび履歴ファイルをコピーする。
【0330】
2.データベースからのIPアドレスのようなサイト固有のデータベース情報を新しいMemberに移動させる。
【0331】
3.メンバー(Member)状態を更新する。
【0332】
バックアップ(Backup)が構成されるとき、代替(Alternete)は、以下のアクションを実行する。
【0333】
1.バックアップ(Backup)が失敗した場合に、選択するために次のバックアップ(Backup)を決定する。
【0334】
(イレクティブフェイルオーバー(Elective Failover))
このセクションは、整然としてサービスからのHA Setのメンバーを除去するために用いられる方法およびアルゴリズムを詳述する。
【0335】
(逸脱プライマリ(Primary))
プライマリ(Primary)が除去される場合、プライマリ(Primary)は、以下のアクションを実行する。
【0336】
1.プライマリ(Primary)を含む全てのマネージメント(Management)要求を静止させる。
【0337】
2.再構成またはフォーマットおよび任意の他の内部IO等のプライマリ(Primary)上の全ての長い実行プロセスを停止させる。
【0338】
3.プライマリ(Primary)上のFCポート(Port)を静止させる。これは、全てのホストIOをランダウンさせる。
【0339】
4.FCポート(Port)をオフィスに行かせる。
【0340】
5.全てのvLUNをイクスポート停止する。
【0341】
6.全てのバーチャルサービス(Virtual Service)をディセーブルする。
【0342】
7.JCPを不活性にする。
【0343】
8.メンバー(Member)状態を更新する。
【0344】
プライマリ(Primary)が除去される場合、バックアップ(Backup)は、以下のアクションを実行する。
【0345】
1.JCPをアクティブ(Active)モードにスイッチする。
【0346】
2.全てのバーチャルサービス(Virtual Service)をイネーブルする。
【0347】
3.新しいバックアップ(Backup)を選択する。
【0348】
a.バックアップ(Backup)が存在しない場合、「Failover Disabled」を生成する。
【0349】
4.メンバー(Member)状態を更新する。
【0350】
プライマリ(Primary)が除去される場合、代替(Alternate)は、以下のアクションを実行する。
【0351】
1.選択された場合バックアップ(Backup)のために再構成する。
【0352】
a.スタンバイ(Standby)モードにおいてJCBを活性にする。
【0353】
2.「configured for Backup」を生成する。
【0354】
3.メンバー(Member)状態を更新する。
【0355】
(バックアップの逸脱)
バックアップ(Backup)が除去される場合、プライマリ(Primary)は、以下のアクションを実行する。
【0356】
1.スタンバイデータベースが失敗したことをJCPに知らせる。
【0357】
2.新しいバックアップ(Backup)を選択する。
【0358】
a.他のバックアップ(Backup)が存在しない場合、「Failover Disabled」を生成する。
【0359】
バックアップ(Backup)が除去される場合、バックアップ(Backup)は、以下のアクションを実行する。
【0360】
1.バックアップ(Backup)を含む全てのマネージメント(Management)要求を静止させる。
【0361】
2.フォーマットおよび任意の他の内部IOの再構築等のバックアップ(Backup)上の全ての長い走行プロセスを停止させる。
【0362】
3.バックアップ(Backup)上のFCポート(Port)を静止させる。これは、全てのホストIOをランダウンするべきである。
【0363】
4.FCポート(Port)をオフィスに行かせる。
【0364】
5.全てのvLUNをイクスポート停止する。
【0365】
6.JCPを不活性にする。
【0366】
7.メンバー(Member)状態を更新する。
【0367】
バックアップ(Backup)が除去される場合、代替(Alternate)は、以下のアクションを実行する。
【0368】
1.選択された場合バックアップ(Backup)のために再構成する。
【0369】
a.スタンバイ(Standby)モードにおいてJCPを活性化する。
【0370】
2.「configured for Backup」を生成する。
【0371】
3.メンバー(Member)状態を更新する。
【0372】
(代替の逸脱)
代替(Alternate)が除去される場合、プライマリ(Primary)は、以下のアクションを実行する。
【0373】
1.アクション不必要
代替(Alternate)が除去される場合、バックアップ(Backup)は、以下のアクションを実行する。
【0374】
1.失敗した代替(Alternate)への複製(Replicating)を停止する。
【0375】
代替(Alternate)が除去される場合、代替(Alternate)は、以下のアクションを実行する。
【0376】
1.代替(Alternate)を含む全てのマネージメント(Management)要求を静止させる。
【0377】
2.再構成またはフォーマットおよび代替(Alternate)を含む任意の他の内部IO等の全ての長い走行プロセスを停止させる。
【0378】
3.代替(Alternate)上のFCポート(Port)を静止させる。これは、全てのホストIOをランダウンするべきである。
【0379】
4.FCポート(Port)をオフィスに行かせる。
【0380】
5.全てのvLUNをイクスポート停止する。
【0381】
6.JCPを不活性にする。
【0382】
7.メンバー(Member)状態を更新する。
【0383】
(フェイルストップポリシー)
一般に、HA Setが寛容であり得る持続性の失敗の数は、n−1である。ここで、nは、HA Setにおけるメンバーの数である。n個の失敗のイベントでは、HA Setは、正しく動作させるためにもはや信頼され得ない。ポリシーは、失敗し、その後停止することであるべきである。
【0384】
2−Way HA Setでは、プライマリ(Primary)VSXが失敗した場合、バックアップ(Backup)VSXは、構成の制御を引き継ぐ。新しいプライマリ(Primary)VSXがその後に失敗すると、冗長性制限が超えられる。VSX失敗を構成するものは、エラー分析(Error Analysis)の対象である。いくつかの考えがその中に言及される。
【0385】
Fail−Stopプロセシングは、エラーおよびどんな性能がVSX上に残るのかの正確な性質に部分的に依存する。以下の目的は、可能なリカバリーアクションを考慮する場合のガイドラインとして機能すべきである。
【0386】
1.最初のリスポンシビリティは、ホスト(Host)に対してである。外部のインターフェイスは、オフィスに置かれるべきである。チェック状態が、全ての顕著なIOおよび任意のIOリクエスト上で報告されるべきである。
【0387】
2.データベースは、ディスクにコミットされるべきである。進行中のトランザクションは、ロールバックされるべきである。データベースに対する変更は、防止されるべきである。
【0388】
3.全てのトレースおよびログが、持続性の記憶装置にコミットされるべきである。
【0389】
4.GUIは、重大な状態を反映するべきである。
【0390】
(IOパスフェイルオーバ)
前述されたように、フェイルオーバは、冗長的なコンポーネントがサービスから取り除かれる場合に行われる回復動作である。前述の節は、VSX間のフェイルオーバ、ある程度までは、VSC間のフェイルオーバを議論した。この節は、ラインカード、SPまたはASICおよびFC ポート間のフェイルオーバを提示する。
【0391】
技術的に言えば、実際、フェイルオーバは、ラインカード、SPまたはASIC間で直接には生じない。しかし、フェイルオーバは、上記のコンポーネントと関連付けられたポートを用いて実行するIOリクエストを介して間接的に生じる。上記のコンポーネントのそれぞれは、(すなわち1以上の)ポートの集合としてみなされ得る。ポートが「共通のデノミネータ(denominator)」であるので、LCフェイルオーバ、SPフェイルオーバ、FC ASICフェイルオーバおよびFCポートフェイルオーバは、全て同じようにみなされ得る。1以上のポートフェイルオーバ。いくつかのマルチポートポリシーを用いて、上記のコンポーネントを用いずにフェイルオーバを行うことがIOリクエストである。この種のフェイルオーバはマルチパシング(multi−pathing)と呼ばれる場合が多い。
【0392】
二つの基礎タイプのマルチパシング、アクティブ−パッシブおよびアクティブ−アクティブがある。アクティブ−パッシブマルチパッシングは、イニシエータに、任意の時間に、ストレージデバイスに対して一つのパスのみを用いることを要求する。アクティブ−パッシブマルチパッシングは、Preferred Pathと呼ばれる場合が多い。アクティブ−アクティブマルチパッシングは、イニシエータを制限することは決してしない。イニシエータは、ストレージデバイスへのどちらかの(either)パスを用いて同時発生のIOリクエストを送り得る。
【0393】
マルチパッシングを用いて、ラインカード、ストレージプロセッサ、FC ASICまたはFCポートがサービスから取り除かれる場合にVSX全体を落とす(fail)必要はない。実際、VSX全体を落とすことは全く望まれていない。例えば、ケーブルがVSXとダウンストリームデバイスとの間で取り除かれるだけで、どうしてVSX全体がフェイルオーバするのか?
一般には、マルチパッシングを支援するために、要求されることの全ては以下の通りである。
【0394】
1.イニシエータは、ストレージデバイスへのIOパスグループについて知らなければならない。
【0395】
a.これは、動的な発見(dynamic discovery)を介して為され得る。
【0396】
b.これはまた、ユーザ供給静的テーブル(user−supplied static table)について為され得る。
【0397】
2.イニシエータは、パスエラーを検出できなければならない。
【0398】
3.イニシエータは、落とされたパス(failed path)を不活性にでき、冗長なパスを活性化にでき、パッシブパスを活性化するために、ベンダーユニークなコマンドを用いることを要求する場合でさえ、新しく活性化されたパスにIOリクエストを再発行できなければならない。
【0399】
4.イニシエータは、落とされたパスをモニタリングし、落とされたパスが修復されると、このパスを再統合する。
【0400】
VSXにおいて、イニシエータは、内部的または外部的であり得る。ポートが落ちる時の当面の主なタスクは、VSXソフトウェアがパス障害(failure)についてイニシエータに知らせることである。
【0401】
(パス障害)
LC、SP、FC ASICおよびFC ポート障害は、以下のアルゴリズムを用いて取り扱われ得る。
【0402】
アルゴリズム1:アップストリームポート障害アルゴリズム
1.可能な場合、ポートをオフラインにする
2.不可能な場合、ポートを再初期化する
3.再初期化が作用しない場合、ポートをリセットする
アルゴリズム2:ダウンストリームポート障害アルゴリズム
1.落とされたポートに付加された任意のデバイスに対する任意の内部IOをアボートする。内部IOを初期化するサービスは、代替的なパス上にIOリクエストを再発行する。
【0403】
2.全ての影響されるアップストリームhLUNにCHECK CONDITIONを設定する。アップストリームhLUNは落とされたポートに付加されたダウンストリームpLUNを有する。
【0404】
4.可能な場合、落とされたポートをオフラインにする。
【0405】
ASICが落ちる場合、
1.ASIC上のそれぞれのアップストリームポートに対して、
a.アルゴリズム1を実行する
2.ASIC上のそれぞれのダウンストリームに対して、
a.アルゴリズム2を実行する
SPが落ちる場合、
2.SP上のそれぞれのアップストリームポートに対して、
a.アルゴリズム1を実行する
3.SP上のそれぞれのダウンストリームポートに対して、
a.アルゴリズム2を実行する
Line Cardが落ちる場合、
4.LC上のそれぞれのSPに対して、
a.SP上のそれぞれのアップストリームポートに対して、
i.アルゴリズム1を実行する
b.SP上のそれぞれのダウンストリームポートに対して、
i.アルゴリズム2を実行する
図33〜35は、様々なIOパスフェイルオーバシナリオを例示する。
【図面の簡単な説明】
【0406】
【図1】図1は、本発明の実施形態に従った、エラー回復アーキテクチャのハイレベル図を示す。
【図2】図2は、ノンフォルトトレラント構成の一般的なブロック図を示す。
【図3】図3は、本発明の実施形態に従った、フォルトトレラント構成の一般的なブロック図を示す。
【図4】本発明の実施形態に従った、高可溶性構成の一般的なブロック図を示す。
【図5】図5は、フェイルオーバーセットのコンポーネントを示す。
【図6】図6は、メンバユニット状態遷移図を示す。
【図7】図7は、フェイルオーバーセットを生成するための本発明の実施形態に従った、典型的な処理を示す。
【図8】図8は、メンバ状態図を示す。
【図9】図9は、コールドブートのための調停シーケンスを示す。
【図10】図10は、ウォームブートのための調停シーケンスを示す。
【図11】図11は、混成ブートのための調停シーケンスを示す。
【図12】図12は、本発明の実施形態に従った、2つのメンバの状態遷移図を示す。
【図13】図13は、図12の状態遷移図の作用である。
【図14】図14は、servedフェイルオーバーセットのステートチャート図を示す。
【図15】図15は、本発明の実施形態に従った、フォルト検出および分析の一般的なブロック図を示す。
【図16】図16は、フォルトのない状況でのハートビートアルゴリズムの例を示す。
【図17】図17は、送信側フォルト状況でのハートビートアルゴリズムの例を示す。
【図18】図18は、他の送信側フォルト状況でのハートビートアルゴリズムの例を示す。
【図19】図19は、受信者側フォルト状況でのハートビートアルゴリズムの例を示す。
【図20】図20は、受信者側フォルト状況でのハートビートアルゴリズムの例を示す。
【図21A】図21Aは、本発明の実施形態に従った、フェイルオーバーサービスアーキテクチャの一般的なブロック図を示す。
【図21B】図21Bは、サービスフレームワーク処理の一般的なブロック図を示す。
【図22】図22は、データベースの決定者のための一般的なブロック図を示す。
【図23】図23は、シェアリンク構成を示す。
【図24】図24は、本発明の実施形態に従った、VSX間の典型的なメッセージのやりとりを示す。
【図25】図25は、管理リンク構成を示す。
【図26】図26は、シェアディスク構成を示す。
【図27】図27は、本発明の実施形態に従うシェアディスクを利用したVSX間の典型的なメッセージのやりとりを示す。
【図28】図28は、ノードハブアダプタ構成を示す。
【図29】図29は、階層ハブアダプタ構成を示す。
【図30】図30は、N+1ノード構成を示す。
【図31】図31は、Nノード構成を示す。
【図32】図32は、本発明の実施形態に従った、障害の発生したプライマリの典型的なフェイルオーバー処理を示す。
【図33】図33は、本発明の実施形態に従った、障害の発生したLCの典型的なフェイルオーバー処理を示す。
【図34】図34は、本発明の実施形態に従った、障害の発生したファイバチャネル(FC)の典型的なフェイルオーバー処理を示す。
【図35】図35は、本発明の実施形態に従った、接続がダウンした状況下での典型的なフェイルオーバー処理を示す。
【図36】図36は、本発明の実施形態に従った、ストレージサーバシステムのハイレベルシステムアーキテクチャを示す。
【図36A】図36Aは、本発明の実施形態に従った、ストレージサーバシステムの典型的な構成を示す。
【図36B】図36Bは、本発明の実施形態に従った、ストレージサーバシステムの典型的な構成を示す。
【図36C】図36Cは、本発明の実施形態に従った、ストレージサーバシステムの典型的な構成を示す。
【図36D】図36Dは、本発明の実施形態に従った、ストレージサーバシステムの典型的な構成を示す。
【図37】図37は、図36のコンポーネントの付加的な詳細を示す。
Claims (13)
- 複数のホストコンピュータおよび複数のストレージデバイスと接続するストレージエリアネットワーク内のストレージサーバであって、
該ストレージサーバは、
データを、該複数のホストコンピュータおよび該複数のストレージデバイスに、該ストレージエリアネットワークを介して、通信するように構成された複数のストレージプロセッサと、
該複数のストレージプロセッサに接続するスイッチング回路と、
制御プロセッサと、
1以上のフェイルオーバセットを作成する第1のソフトウェア制御手段であって、それぞれのフェイルオーバセットが1以上のデバイスを含む、第1のソフトウェア制御手段と、
第1のコンポーネントの障害を検出する第2のソフトウェア制御手段であって、該第1のコンポーネントが第1の障害セットに属している、第2のソフトウェア制御手段と、
該第1の障害セットに属している別のコンポーネントを選択する第3のソフトウェア制御手段とを含み、
該別のコンポーネントが該第1のコンポーネントによって提供されたサービスを置換する、ストレージサーバ。 - 複数のコンピュータユーザと複数のストレージデバイスとの間でデータを交換するストレージ管理デバイスであって、
該ストレージ管理デバイスは、
それぞれが1以上の第1のデータポートを有する1以上の制御モジュールと、
それぞれが1以上の第2のデータポートを有する1以上のストレージ制御モジュールと、
1以上のデータストア(data stores)と、
該第1のデータポートおよび該第2のデータポートの間で、データを選択的に交換するように構成されたスイッチファブリックであって、該第1のデータポートおよび該第2のデータポートのいくつかは、該コンピュータユーザに関わるデータを受け取り、該コンピュータユーザに関わるデータを送り、該第1のデータポートおよび該第2のデータポートの残りは、該ストレージデバイスに関わるデータを受け取り、該ストレージデバイスに関わるデータを送るスイッチファブリックと、
該1以上の制御モジュールのそれぞれの上に実行するように採用されたプログラムコードと
を含み、
該プログラムコードは、
複数のフェイルオーバセットを定義する該制御モジュールの一つを動作させるように構成される第1のコードコンポーネントであって、該フェイルオーバセットは、該第1および第2のデータポートの組み合わせ並びに該データストアを含む第1のコードコンポーネントと、
該第1および第2のデータポート並びに該データストアの一つの障害を落とされたサービスとして検出する該制御モジュールの一つを動作させるように構成される第2のコードコンポーネントと、
該落とされたサービスに関連付けられたフェイルオーバを識別し、該関連付けられたフェイルオーバセットからの代替物(alternate)を識別する該制御モジュールの一つを動作させるように構成される第3のコードコンポーネントと
を含む、ストレージ管理デバイス。 - 複数のコンピュータユーザと複数の物理的ストレージデバイスとの間でデータを交換するストレージ管理デバイスであって、該ストレージ管理デバイスは、該コンピュータユーザとの通信のために構成された複数の第1のデータポートと、該物理的ストレージデバイスとの通信のために構成された複数の第2のデータポートと、該第1のデータポートおよび該第2のデータポートの間でデータを選択的に交換するように構成されたスイッチファブリックとを含むストレージ管理デバイスにおいて、障害を管理する方法は、
1以上のコンポーネントを含むフェイルオーバセットを提供する工程であって、該コンポーネントが該第1および第2のデータポート並びに該物理的ストレージデバイスの1以上を含む、フェイルオーバセットを提供する工程と、
第1のコンポーネントにおいて障害を検出する工程と、
第1の障害セットを識別する工程であって、該第1の障害セットは該第1のコンポーネントを含む、識別する工程と、
該第1の障害セットにおいて第2のコンポーネントを識別する工程と
を包含し、
該第2のコンポーネントが該第1のコンポーネントの機能性を置き換える、方法。 - 第1のストレージシステムと第2のストレージシステムと1以上のストレージシステムのセットとの間で接続された、ネットワーク化されたストレージシステムの間でフェイルオーバを支援する方法であって、
いくつかのプロセッサ、カードおよびストレージシステムにわたって分散された単一の均質な環境を提供する工程と、
スタンダードプロトコルを用いるメンバー候補を識別する工程と、
フェイルオーバセットを作成する工程であって、それぞれのフェイルオーバセットが1以上の該メンバー候補を含む、フェイルオーバを作成する工程と、
フェイルオーバセットにおける全てのメンバー候補についての構成を格納し、同期化するデータベースを用いる工程と、
それぞれのフェイルオーバセットに対して、それぞれのフェイルオーバメンバー候補の一つを第1として指定し、それぞれのフェイルオーバメンバー候補の一つを第2として指定し、残りのメンバー候補を代替物として指定する工程と、
該メンバー候補のスタートアップ処理を実行する工程と、
実行時のメンバーの振る舞い(run−time member behavior)についてのポリシーを提供する工程であって、該ポリシーは、故障(fault)特徴づけおよび検出、ヘルスモニタリング(health monitering)、互換性要件、フェイルオーバ間の訂正動作、メンバー再スタートおよび再統合化(re−integration)、およびメンバー障害限界を超える条件(exceeded condition)を含む、ポリシーを提供する工程と
を包含する方法。 - 前記ストレージシステムが単一シャーシベースの製品を含む請求項1に記載の方法。
- 前記ストレージシステムが単一シャーシベースの製品を含む請求項1に記載の方法。
- 前記ストレージシステムが2以上のスタックベースの製品を含む請求項1に記載の方法。
- 前記ストレージシステムが2以上のスタックベースの製品を含む請求項1に記載の方法。
- 前記ネットワーク化されたストレージシステム間の冗長的なネットワーク(redundant network)リンクは、
前記メンバー候補を識別し、それぞれのネットワークにおいて交換された情報を確認することにより、接続性を検証する発見サービスと、
一つのメンバー候補の役割が第1であり、一つのメンバー候補の役割が第2であり、残りのメンバ−候補の役割が代替的であることを、それぞれのネットワークにおいて交換された情報にメンバー役割を供給することにより、確認する裁定サービス(Arbitration Service)と、
それぞれのネットワークにおける該メンバーの役割を交換することによるブートのタイプを用いるスタートアップの間、該メンバーの役割を調整するブートサービスと、
メンバー候補間の通信リンク障害とリアルメンバー障害(real member failure)とを、該冗長的なネットワークを用いるセルフテストを送ることによって区別し、該メンバー候補がメンバー候補の仕様に従って機能するか否かを決定する、フェイルサービス内のポリシーマネージャと
によって用いられる請求項1に記載の方法。 - 前記ネットワークリンクが異なるネットワークプロトコルを含む請求項9に記載の方法。
- ユーザコンフィギュレーションおよび管理リクエストは、前記メンバー候補の全てにわたって均衡がとれたロードである請求項9に記載の方法。
- 付加されたホストおよびストレージデバイスに対するマルチパスプログラミングは、前記メンバー候補の全てにわたって均衡がとれたロードであり、
サーバストレージリクエストを、アクティブ−アクティブポリシーおよびアクティブ−パッシブポリシーを含む互換可能なストレージデバイスにインテリジェント的に(intelligently)適合するように用いられるポートフェイルオーバポリシーと、
エクスポート仮想デバイス(exported virtual device)への全てのパスがコマンドおよびデータを同時に転送できるアクティブ−アクティブポリシーと、
エクスポート仮想デバイスへの一つのパスのみがコマンドおよびデータを一時に転送できるアクティブ−パッシブポリシーと
を含む、請求項9に記載の方法。 - 第1のストレージシステムおよび第2のストレージシステム並びに1以上のストレージシステムのセットの間に接続される、ネットワーク化されたストレージデバイス間のフェイルオーバを支援するシステムであって、
いくつかのプロセッサ、カードおよびストレージデバイスにわたって分散された単一の均質な環境を提供するサービスフレームワークと、
発見サービス、フェイルオーバサービス、データベース管理システム、裁定サービス、ブートサービスおよびポリシーマネージャを含む該サービスフレームワークの上部で実行するサービスと呼ばれるコンフィギュレーションおよび管理ソフトウェアのセットと、
スタンダードプロトコルを用いるメンバー候補を識別する発見サービスと、
単一の、階層的およびN方向コンポジッションを含む様々なコンポジッションコールフェイルオーバセットに該メンバーを編成するフェイルオーバサービスと、
該フェイルオーバセットの全てのメンバー上のコンフィギュレーションを格納し、同期化するデータベース管理システムと、
一つのメンバーの役割が第1であり、一つのメンバーの役割が第2であり、残りのメンバーの役割が代替的であることを決定する裁定サービスと、
ブートのタイプを用いているスタートアップの間、該メンバーの役割を調整するブートサービスと、
実行時のメンバーの振る舞いについてのポリシーを提供するポリシー管理マネージャであって、該ポリシーは、故障特徴づけおよび検出、ヘルスモニタリング(health monitering)、互換性要件、フェイルオーバ間の訂正動作、メンバー再スタートおよび再統合化、およびメンバー障害限界を超える条件を含む、ポリシー管理マネージャと
を含む、システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US26869401P | 2001-02-13 | 2001-02-13 | |
PCT/US2002/004908 WO2002065290A1 (en) | 2001-02-13 | 2002-02-13 | Failover processing in a storage system |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004532442A true JP2004532442A (ja) | 2004-10-21 |
JP2004532442A5 JP2004532442A5 (ja) | 2006-03-23 |
JP4457184B2 JP4457184B2 (ja) | 2010-04-28 |
Family
ID=23024069
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002564739A Expired - Lifetime JP4457184B2 (ja) | 2001-02-13 | 2002-02-13 | ストレージシステムにおけるフェイルオーバー処理 |
JP2002564745A Expired - Lifetime JP4457185B2 (ja) | 2001-02-13 | 2002-02-13 | シリコンベースのストレージ仮想化サーバ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002564745A Expired - Lifetime JP4457185B2 (ja) | 2001-02-13 | 2002-02-13 | シリコンベースのストレージ仮想化サーバ |
Country Status (7)
Country | Link |
---|---|
US (7) | US7415506B2 (ja) |
EP (4) | EP1370947A4 (ja) |
JP (2) | JP4457184B2 (ja) |
AT (1) | ATE480822T1 (ja) |
AU (1) | AU2002306495A1 (ja) |
DE (1) | DE60237583D1 (ja) |
WO (4) | WO2002065290A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005115581A (ja) * | 2003-10-07 | 2005-04-28 | Hitachi Ltd | ストレージパス制御方法 |
US8032793B2 (en) | 2005-01-14 | 2011-10-04 | Fujitsu Limited | Method of controlling information processing system, information processing system, direct memory access control device and program |
EP2937786A2 (en) | 2014-03-31 | 2015-10-28 | Fujitsu Limited | Storage system, storage device, and monitoring server |
KR20200051836A (ko) * | 2017-10-16 | 2020-05-13 | 알테릭스 인코포레이티드 | 순차적 데이터 블록들의 비동기적 프로세싱 |
Families Citing this family (808)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5220974B2 (ja) * | 1999-10-14 | 2013-06-26 | ブルアーク ユーケー リミテッド | ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法 |
US8219681B1 (en) * | 2004-03-26 | 2012-07-10 | Emc Corporation | System and method for managing provisioning of storage resources in a network with virtualization of resources in such a network |
AU8227201A (en) * | 2000-08-25 | 2002-03-04 | British Telecomm | Audio data processing |
US7111072B1 (en) | 2000-09-13 | 2006-09-19 | Cosine Communications, Inc. | Packet routing system and method |
US6823477B1 (en) * | 2001-01-23 | 2004-11-23 | Adaptec, Inc. | Method and apparatus for a segregated interface for parameter configuration in a multi-path failover system |
US7203730B1 (en) | 2001-02-13 | 2007-04-10 | Network Appliance, Inc. | Method and apparatus for identifying storage devices |
JP4457184B2 (ja) | 2001-02-13 | 2010-04-28 | ネットアップ,インコーポレイテッド | ストレージシステムにおけるフェイルオーバー処理 |
US7200646B2 (en) | 2001-04-25 | 2007-04-03 | Sun Microsystems, Inc. | System and method for on-demand node creation for fabric devices |
US20020194407A1 (en) * | 2001-04-25 | 2002-12-19 | Kim Hyon T. | Maintaining fabric device configuration through dynamic reconfiguration |
US7171474B2 (en) * | 2001-04-25 | 2007-01-30 | Sun Microsystems, Inc. | Persistent repository for on-demand node creation for fabric devices |
US6766466B1 (en) * | 2001-05-15 | 2004-07-20 | Lsi Logic Corporation | System and method for isolating fibre channel failures in a SAN environment |
US7181547B1 (en) | 2001-06-28 | 2007-02-20 | Fortinet, Inc. | Identifying nodes in a ring network |
US7343410B2 (en) * | 2001-06-28 | 2008-03-11 | Finisar Corporation | Automated creation of application data paths in storage area networks |
US6654241B2 (en) * | 2001-06-29 | 2003-11-25 | Intel Corporation | High availability small foot-print server |
US20030023898A1 (en) * | 2001-07-16 | 2003-01-30 | Jacobs Dean Bernard | Layered architecture for data replication |
US7409420B2 (en) | 2001-07-16 | 2008-08-05 | Bea Systems, Inc. | Method and apparatus for session replication and failover |
US6918013B2 (en) * | 2001-07-16 | 2005-07-12 | Bea Systems, Inc. | System and method for flushing bean cache |
US7571215B2 (en) | 2001-07-16 | 2009-08-04 | Bea Systems, Inc. | Data replication protocol |
US7702791B2 (en) | 2001-07-16 | 2010-04-20 | Bea Systems, Inc. | Hardware load-balancing apparatus for session replication |
US6944785B2 (en) * | 2001-07-23 | 2005-09-13 | Network Appliance, Inc. | High-availability cluster virtual server system |
US7028030B2 (en) * | 2001-08-30 | 2006-04-11 | Bea Systems, Inc. | Cluster caching with concurrency checking |
US20030046230A1 (en) * | 2001-08-30 | 2003-03-06 | Jacobs Dean Bernard | Method for maintaining account consistency |
US7089245B1 (en) | 2001-08-31 | 2006-08-08 | Bmc Software, Inc. | Service desk data transfer interface |
US7113980B2 (en) * | 2001-09-06 | 2006-09-26 | Bea Systems, Inc. | Exactly once JMS communication |
US7171434B2 (en) * | 2001-09-07 | 2007-01-30 | Network Appliance, Inc. | Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system |
US7472231B1 (en) | 2001-09-07 | 2008-12-30 | Netapp, Inc. | Storage area network data cache |
US7032136B1 (en) * | 2001-09-07 | 2006-04-18 | Network Appliance, Inc. | Auto regression test for network-based storage virtualization system |
US20030055932A1 (en) * | 2001-09-19 | 2003-03-20 | Dell Products L.P. | System and method for configuring a storage area network |
US6976134B1 (en) | 2001-09-28 | 2005-12-13 | Emc Corporation | Pooling and provisioning storage resources in a storage network |
US7421509B2 (en) * | 2001-09-28 | 2008-09-02 | Emc Corporation | Enforcing quality of service in a storage network |
US7707304B1 (en) | 2001-09-28 | 2010-04-27 | Emc Corporation | Storage switch for storage area network |
EP1438808A4 (en) * | 2001-09-28 | 2007-05-23 | Emc Corp | PACKAGE CLASSIFICATION IN A STORAGE SYSTEM |
US7558264B1 (en) | 2001-09-28 | 2009-07-07 | Emc Corporation | Packet classification in a storage system |
US7404000B2 (en) * | 2001-09-28 | 2008-07-22 | Emc Corporation | Protocol translation in a storage system |
US7185062B2 (en) * | 2001-09-28 | 2007-02-27 | Emc Corporation | Switch-based storage services |
US7864758B1 (en) | 2001-09-28 | 2011-01-04 | Emc Corporation | Virtualization in a storage system |
US20030067874A1 (en) * | 2001-10-10 | 2003-04-10 | See Michael B. | Central policy based traffic management |
US7043663B1 (en) * | 2001-11-15 | 2006-05-09 | Xiotech Corporation | System and method to monitor and isolate faults in a storage area network |
US7127633B1 (en) * | 2001-11-15 | 2006-10-24 | Xiotech Corporation | System and method to failover storage area network targets from one interface to another |
US7069468B1 (en) | 2001-11-15 | 2006-06-27 | Xiotech Corporation | System and method for re-allocating storage area network resources |
US7475127B2 (en) * | 2001-11-30 | 2009-01-06 | Oracle International Corporation | Real composite objects for providing high availability of resources on networked systems |
US7730153B1 (en) * | 2001-12-04 | 2010-06-01 | Netapp, Inc. | Efficient use of NVRAM during takeover in a node cluster |
KR100408047B1 (ko) * | 2001-12-24 | 2003-12-01 | 엘지전자 주식회사 | 이동통신 시스템의 프로세서 보드 이중화 장치 및 방법 |
US7499410B2 (en) | 2001-12-26 | 2009-03-03 | Cisco Technology, Inc. | Fibre channel switch that enables end devices in different fabrics to communicate with one another while retaining their unique fibre channel domain—IDs |
US7017023B1 (en) * | 2002-01-14 | 2006-03-21 | Veritas Operating Corporation | Generalized architecture for automatic storage configuration for diverse server applications |
US6978278B2 (en) * | 2002-01-18 | 2005-12-20 | Bea Systems, Inc. | System and method for heterogeneous caching |
US7020684B2 (en) * | 2002-01-18 | 2006-03-28 | Bea Systems, Inc. | System and method for optimistic caching |
US20030140128A1 (en) * | 2002-01-18 | 2003-07-24 | Dell Products L.P. | System and method for validating a network |
US6898587B2 (en) * | 2002-01-18 | 2005-05-24 | Bea Systems, Inc. | System and method for performing commutative operations in data access systems |
US7433299B2 (en) * | 2002-01-24 | 2008-10-07 | Brocade Communications Systems, Inc. | Fault-tolerant updates to a distributed fibre channel database |
US7290277B1 (en) * | 2002-01-24 | 2007-10-30 | Avago Technologies General Ip Pte Ltd | Control of authentication data residing in a network device |
US6963932B2 (en) * | 2002-01-30 | 2005-11-08 | Intel Corporation | Intermediate driver having a fail-over function for a virtual network interface card in a system utilizing Infiniband architecture |
US20030158920A1 (en) * | 2002-02-05 | 2003-08-21 | Sun Microsystems, Inc. | Method, system, and program for supporting a level of service for an application |
US20030163761A1 (en) * | 2002-02-21 | 2003-08-28 | Michael Chen | System and method for message driven bean service migration |
US7403996B2 (en) * | 2002-02-21 | 2008-07-22 | Bea Systems, Inc. | Systems and methods for migratable services |
US7152181B2 (en) * | 2002-02-22 | 2006-12-19 | Bea Systems, Inc. | Method for highly available transaction recovery for transaction processing systems |
US7178050B2 (en) * | 2002-02-22 | 2007-02-13 | Bea Systems, Inc. | System for highly available transaction recovery for transaction processing systems |
US7421478B1 (en) | 2002-03-07 | 2008-09-02 | Cisco Technology, Inc. | Method and apparatus for exchanging heartbeat messages and configuration information between nodes operating in a master-slave configuration |
EP1345113A3 (en) * | 2002-03-13 | 2008-02-06 | Hitachi, Ltd. | Management server |
GB0206604D0 (en) * | 2002-03-20 | 2002-05-01 | Global Continuity Plc | Improvements relating to overcoming data processing failures |
CA2377649C (en) * | 2002-03-20 | 2009-02-03 | Ibm Canada Limited-Ibm Canada Limitee | Dynamic cluster database architecture |
US20030187987A1 (en) * | 2002-03-29 | 2003-10-02 | Messick Randall E. | Storage area network with multiple pathways for command paths |
US7616637B1 (en) * | 2002-04-01 | 2009-11-10 | Cisco Technology, Inc. | Label switching in fibre channel networks |
JP2003296205A (ja) * | 2002-04-04 | 2003-10-17 | Hitachi Ltd | ネットワーク構成機器特定方法及びその実施システム並びにその処理プログラム |
JP2003296037A (ja) * | 2002-04-05 | 2003-10-17 | Hitachi Ltd | 計算機システム |
US7188194B1 (en) | 2002-04-22 | 2007-03-06 | Cisco Technology, Inc. | Session-based target/LUN mapping for a storage area network and associated method |
US7415535B1 (en) | 2002-04-22 | 2008-08-19 | Cisco Technology, Inc. | Virtual MAC address system and method |
US7200610B1 (en) | 2002-04-22 | 2007-04-03 | Cisco Technology, Inc. | System and method for configuring fibre-channel devices |
US7165258B1 (en) | 2002-04-22 | 2007-01-16 | Cisco Technology, Inc. | SCSI-based storage area network having a SCSI router that routes traffic between SCSI and IP networks |
JP2003316616A (ja) * | 2002-04-24 | 2003-11-07 | Hitachi Ltd | 計算機システム |
JP4704659B2 (ja) * | 2002-04-26 | 2011-06-15 | 株式会社日立製作所 | 記憶装置システムの制御方法および記憶制御装置 |
US7509436B1 (en) | 2002-05-09 | 2009-03-24 | Cisco Technology, Inc. | System and method for increased virtual driver throughput |
US7385971B1 (en) | 2002-05-09 | 2008-06-10 | Cisco Technology, Inc. | Latency reduction in network data transfer operations |
US7240098B1 (en) | 2002-05-09 | 2007-07-03 | Cisco Technology, Inc. | System, method, and software for a virtual host bus adapter in a storage-area network |
US7447687B2 (en) * | 2002-05-10 | 2008-11-04 | International Business Machines Corporation | Methods to browse database query information |
US7315960B2 (en) * | 2002-05-31 | 2008-01-01 | Hitachi, Ltd. | Storage area network system |
US7376125B1 (en) | 2002-06-04 | 2008-05-20 | Fortinet, Inc. | Service processing switch |
US7206288B2 (en) * | 2002-06-12 | 2007-04-17 | Cisco Technology, Inc. | Methods and apparatus for characterizing a route in fibre channel fabric |
US20040015611A1 (en) * | 2002-06-25 | 2004-01-22 | Kim Hyon T. | Interfaces to multiple layers of device properties in a storage network |
US7092990B2 (en) * | 2002-06-26 | 2006-08-15 | International Business Machines Corporation | Handling node address failure in a distributed nodal system of processors |
US7353305B2 (en) * | 2002-06-28 | 2008-04-01 | Brocade Communications Systems, Inc. | Apparatus and method for data virtualization in a storage processing device |
US8200871B2 (en) * | 2002-06-28 | 2012-06-12 | Brocade Communications Systems, Inc. | Systems and methods for scalable distributed storage processing |
US7752361B2 (en) * | 2002-06-28 | 2010-07-06 | Brocade Communications Systems, Inc. | Apparatus and method for data migration in a storage processing device |
US20040006587A1 (en) * | 2002-07-02 | 2004-01-08 | Dell Products L.P. | Information handling system and method for clustering with internal cross coupled storage |
US8140635B2 (en) | 2005-03-31 | 2012-03-20 | Tripwire, Inc. | Data processing environment change management methods and apparatuses |
US7316016B2 (en) * | 2002-07-03 | 2008-01-01 | Tripwire, Inc. | Homogeneous monitoring of heterogeneous nodes |
US8417678B2 (en) * | 2002-07-30 | 2013-04-09 | Storediq, Inc. | System, method and apparatus for enterprise policy management |
AU2003265335A1 (en) | 2002-07-30 | 2004-02-16 | Deepfile Corporation | Method and apparatus for managing file systems and file-based data storage |
US8612404B2 (en) * | 2002-07-30 | 2013-12-17 | Stored Iq, Inc. | Harvesting file system metsdata |
US7801894B1 (en) | 2004-10-28 | 2010-09-21 | Stored IQ | Method and apparatus for harvesting file system metadata |
US6948044B1 (en) * | 2002-07-30 | 2005-09-20 | Cisco Systems, Inc. | Methods and apparatus for storage virtualization |
US7120728B2 (en) * | 2002-07-31 | 2006-10-10 | Brocade Communications Systems, Inc. | Hardware-based translating virtualization switch |
US7269168B2 (en) * | 2002-07-31 | 2007-09-11 | Brocade Communications Systems, Inc. | Host bus adaptor-based virtualization switch |
US8909976B2 (en) * | 2002-08-12 | 2014-12-09 | Sheng Tai (Ted) Tsao | Method and apparatus for web based storage on demand |
US7702786B2 (en) * | 2002-08-09 | 2010-04-20 | International Business Machines Corporation | Taking a resource offline in a storage network |
FI119407B (fi) * | 2002-08-28 | 2008-10-31 | Sap Ag | Korkean palvelutason ohjelmistopohjainen yhteyspalvelin |
JP3957065B2 (ja) * | 2002-08-28 | 2007-08-08 | 富士通株式会社 | ネットワーク計算機システムおよび管理装置 |
US7096383B2 (en) | 2002-08-29 | 2006-08-22 | Cosine Communications, Inc. | System and method for virtual router failover in a network routing system |
US7379959B2 (en) | 2002-09-07 | 2008-05-27 | Appistry, Inc. | Processing information using a hive of computing engines including request handlers and process handlers |
US7363346B2 (en) * | 2002-09-07 | 2008-04-22 | Appistry, Inc. | Reliably storing information across multiple computers such as in a hive of computers |
US7725568B2 (en) * | 2002-09-09 | 2010-05-25 | Netapp, Inc. | Method and apparatus for network storage flow control |
JP2004110367A (ja) | 2002-09-18 | 2004-04-08 | Hitachi Ltd | 記憶装置システムの制御方法、記憶制御装置、および記憶装置システム |
US20040064461A1 (en) * | 2002-10-01 | 2004-04-01 | Subramaniyam Pooni | Method and arrangement for dynamic detection of SCSI devices on linux host |
JP4130615B2 (ja) * | 2003-07-02 | 2008-08-06 | 株式会社日立製作所 | ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ |
US7409583B2 (en) | 2002-10-07 | 2008-08-05 | Hitachi, Ltd. | Volume and failure management method on a network having a storage device |
US7707184B1 (en) * | 2002-10-09 | 2010-04-27 | Netapp, Inc. | System and method for snapshot full backup and hard recovery of a database |
US7080229B2 (en) * | 2002-10-28 | 2006-07-18 | Network Appliance Inc. | Method and system for strategy driven provisioning of storage in a storage area network |
US7752294B2 (en) * | 2002-10-28 | 2010-07-06 | Netapp, Inc. | Method and system for dynamic expansion and contraction of nodes in a storage area network |
US7457822B1 (en) | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US8041735B1 (en) | 2002-11-01 | 2011-10-18 | Bluearc Uk Limited | Distributed file system and method |
US7263593B2 (en) | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
US7433326B2 (en) * | 2002-11-27 | 2008-10-07 | Cisco Technology, Inc. | Methods and devices for exchanging peer parameters between network devices |
GB2395810B (en) * | 2002-11-29 | 2005-09-28 | Ibm | Multi-requester detection of potential logical unit thrashing and preemptive application of preventive or ameliorative measures |
US7583591B2 (en) * | 2002-12-08 | 2009-09-01 | Intel Corporation | Facilitating communications with clustered servers |
US7430513B2 (en) * | 2002-12-17 | 2008-09-30 | Baydel North America, Inc. | Data storage management driven by business objectives |
US7716167B2 (en) * | 2002-12-18 | 2010-05-11 | International Business Machines Corporation | System and method for automatically building an OLAP model in a relational database |
US7792797B2 (en) * | 2002-12-24 | 2010-09-07 | International Business Machines Corporation | Fail over resource manager access in a content management system |
US7469290B1 (en) * | 2002-12-31 | 2008-12-23 | Emc Corporation | Automatic system resource management |
US7334014B2 (en) * | 2003-01-03 | 2008-02-19 | Availigent, Inc. | Consistent time service for fault-tolerant distributed systems |
US7953694B2 (en) | 2003-01-13 | 2011-05-31 | International Business Machines Corporation | Method, system, and program for specifying multidimensional calculations for a relational OLAP engine |
US7353321B2 (en) * | 2003-01-13 | 2008-04-01 | Sierra Logic | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays |
US7320084B2 (en) * | 2003-01-13 | 2008-01-15 | Sierra Logic | Management of error conditions in high-availability mass-storage-device shelves by storage-shelf routers |
JP2004220216A (ja) | 2003-01-14 | 2004-08-05 | Hitachi Ltd | San/nas統合型ストレージ装置 |
TW200507556A (en) * | 2003-01-16 | 2005-02-16 | Koninkl Philips Electronics Nv | Preventing distribution of modified or corrupted files |
JP2004220450A (ja) * | 2003-01-16 | 2004-08-05 | Hitachi Ltd | ストレージ装置、その導入方法、及びその導入プログラム |
US7181642B1 (en) * | 2003-01-17 | 2007-02-20 | Unisys Corporation | Method for distributing the processing among multiple synchronization paths in a computer system utilizing separate servers for redundancy |
JP4345313B2 (ja) * | 2003-01-24 | 2009-10-14 | 株式会社日立製作所 | ポリシーに基づいたストレージシステムの運用管理方法 |
US8081642B2 (en) | 2003-01-31 | 2011-12-20 | Brocade Communications Systems, Inc. | Method and apparatus for routing between fibre channel fabrics |
US7606239B2 (en) * | 2003-01-31 | 2009-10-20 | Brocade Communications Systems, Inc. | Method and apparatus for providing virtual ports with attached virtual devices in a storage area network |
US20040199618A1 (en) * | 2003-02-06 | 2004-10-07 | Knight Gregory John | Data replication solution |
US7831736B1 (en) | 2003-02-27 | 2010-11-09 | Cisco Technology, Inc. | System and method for supporting VLANs in an iSCSI |
US20040181707A1 (en) * | 2003-03-11 | 2004-09-16 | Hitachi, Ltd. | Method and apparatus for seamless management for disaster recovery |
US7295572B1 (en) | 2003-03-26 | 2007-11-13 | Cisco Technology, Inc. | Storage router and method for routing IP datagrams between data path processors using a fibre channel switch |
US7433300B1 (en) | 2003-03-28 | 2008-10-07 | Cisco Technology, Inc. | Synchronization of configuration data in storage-area networks |
US7904599B1 (en) | 2003-03-28 | 2011-03-08 | Cisco Technology, Inc. | Synchronization and auditing of zone configuration data in storage-area networks |
JP4301849B2 (ja) * | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法 |
CA2520498C (en) * | 2003-04-03 | 2012-09-25 | Commvault Systems, Inc. | System and method for dynamically performing storage operations in a computer network |
US7895191B2 (en) | 2003-04-09 | 2011-02-22 | International Business Machines Corporation | Improving performance of database queries |
US7460528B1 (en) | 2003-04-15 | 2008-12-02 | Brocade Communications Systems, Inc. | Processing data packets at a storage service module of a switch |
US7382776B1 (en) | 2003-04-15 | 2008-06-03 | Brocade Communication Systems, Inc. | Performing block storage virtualization at a switch |
US7529981B2 (en) * | 2003-04-17 | 2009-05-05 | International Business Machines Corporation | System management infrastructure for corrective actions to servers with shared resources |
US7739543B1 (en) * | 2003-04-23 | 2010-06-15 | Netapp, Inc. | System and method for transport-level failover for loosely coupled iSCSI target devices |
US7260737B1 (en) | 2003-04-23 | 2007-08-21 | Network Appliance, Inc. | System and method for transport-level failover of FCP devices in a cluster |
US20040215831A1 (en) * | 2003-04-25 | 2004-10-28 | Hitachi, Ltd. | Method for operating storage system |
US7668876B1 (en) * | 2003-04-25 | 2010-02-23 | Symantec Operating Corporation | Snapshot-based replication infrastructure for efficient logging with minimal performance effect |
US7107293B2 (en) * | 2003-04-30 | 2006-09-12 | International Business Machines Corporation | Nested recovery scope management for stateless recovery agents |
US7519008B2 (en) * | 2003-06-05 | 2009-04-14 | International Business Machines Corporation | Ineligible group member status |
US7136974B2 (en) | 2003-06-19 | 2006-11-14 | Pillar Data Systems, Inc. | Systems and methods of data migration in snapshot operations |
JP4871729B2 (ja) * | 2003-06-23 | 2012-02-08 | エミュレックス デザイン アンド マニュファクチュアリング コーポレーション | ストレージシェルフ内で発生するエラー及びイベントをハンドリングする方法 |
JP2005018193A (ja) | 2003-06-24 | 2005-01-20 | Hitachi Ltd | ディスク装置のインタフェースコマンド制御方法ならびに計算機システム |
US8261037B2 (en) | 2003-07-11 | 2012-09-04 | Ca, Inc. | Storage self-healing and capacity planning system and method |
US7428620B2 (en) * | 2003-08-19 | 2008-09-23 | International Business Machines Corporation | Method for switching data library managers |
US8776050B2 (en) * | 2003-08-20 | 2014-07-08 | Oracle International Corporation | Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes |
US20050080982A1 (en) * | 2003-08-20 | 2005-04-14 | Vasilevsky Alexander D. | Virtual host bus adapter and method |
JP2005071196A (ja) * | 2003-08-27 | 2005-03-17 | Hitachi Ltd | ディスクアレイ装置、及びその障害情報の制御方法 |
JP4386694B2 (ja) * | 2003-09-16 | 2009-12-16 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
JP4598387B2 (ja) | 2003-09-17 | 2010-12-15 | 株式会社日立製作所 | 記憶システム |
US7219201B2 (en) | 2003-09-17 | 2007-05-15 | Hitachi, Ltd. | Remote storage disk control device and method for controlling the same |
US7751416B2 (en) | 2003-09-18 | 2010-07-06 | Cisco Technology, Inc. | Virtual network device |
US7839843B2 (en) | 2003-09-18 | 2010-11-23 | Cisco Technology, Inc. | Distributed forwarding in virtual network devices |
JP4307202B2 (ja) | 2003-09-29 | 2009-08-05 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
US7451201B2 (en) * | 2003-09-30 | 2008-11-11 | International Business Machines Corporation | Policy driven autonomic computing-specifying relationships |
US8892702B2 (en) * | 2003-09-30 | 2014-11-18 | International Business Machines Corporation | Policy driven autonomic computing-programmatic policy definitions |
US20050071709A1 (en) * | 2003-09-30 | 2005-03-31 | Rosenstock Harold N. | InfiniBand architecture subnet derived database elements |
US7533173B2 (en) * | 2003-09-30 | 2009-05-12 | International Business Machines Corporation | Policy driven automation - specifying equivalent resources |
US8526427B1 (en) | 2003-10-21 | 2013-09-03 | Cisco Technology, Inc. | Port-based loadsharing for a satellite switch |
US20050091426A1 (en) * | 2003-10-23 | 2005-04-28 | Horn Robert L. | Optimized port selection for command completion in a multi-ported storage controller system |
JP4420275B2 (ja) * | 2003-11-12 | 2010-02-24 | 株式会社日立製作所 | フェイルオーバクラスタシステム及びフェイルオーバクラスタシステムを用いたプログラムのインストール方法 |
US7418548B2 (en) * | 2003-11-18 | 2008-08-26 | Intel Corporation | Data migration from a non-raid volume to a raid volume |
US20050114465A1 (en) * | 2003-11-20 | 2005-05-26 | International Business Machines Corporation | Apparatus and method to control access to logical volumes using one or more copy services |
US7769861B2 (en) * | 2003-11-24 | 2010-08-03 | International Business Machines Corporation | Apparatus, system, and method for modeling for storage provisioning |
US20050114595A1 (en) * | 2003-11-26 | 2005-05-26 | Veritas Operating Corporation | System and method for emulating operating system metadata to provide cross-platform access to storage volumes |
JP4156499B2 (ja) | 2003-11-28 | 2008-09-24 | 株式会社日立製作所 | ディスクアレイ装置 |
US20050125557A1 (en) * | 2003-12-08 | 2005-06-09 | Dell Products L.P. | Transaction transfer during a failover of a cluster controller |
US7734561B2 (en) * | 2003-12-15 | 2010-06-08 | International Business Machines Corporation | System and method for providing autonomic management of a networked system using an action-centric approach |
US7921262B1 (en) | 2003-12-18 | 2011-04-05 | Symantec Operating Corporation | System and method for dynamic storage device expansion support in a storage virtualization environment |
US7734750B2 (en) | 2003-12-19 | 2010-06-08 | International Business Machines Corporation | Real-time feedback for policies for computing system management |
US7966294B1 (en) * | 2004-01-08 | 2011-06-21 | Netapp, Inc. | User interface system for a clustered storage system |
JP4568502B2 (ja) | 2004-01-09 | 2010-10-27 | 株式会社日立製作所 | 情報処理システムおよび管理装置 |
US7383463B2 (en) * | 2004-02-04 | 2008-06-03 | Emc Corporation | Internet protocol based disaster recovery of a server |
US20050193257A1 (en) * | 2004-02-06 | 2005-09-01 | Matsushita Avionics Systems Corporation | System and method for improving network reliability |
US8990430B2 (en) | 2004-02-19 | 2015-03-24 | Cisco Technology, Inc. | Interface bundles in virtual network devices |
JP2005234834A (ja) * | 2004-02-19 | 2005-09-02 | Hitachi Ltd | 論理ボリュームの再配置方法 |
JP4391265B2 (ja) | 2004-02-26 | 2009-12-24 | 株式会社日立製作所 | ストレージサブシステムおよび性能チューニング方法 |
US7533181B2 (en) * | 2004-02-26 | 2009-05-12 | International Business Machines Corporation | Apparatus, system, and method for data access management |
JP3976324B2 (ja) * | 2004-02-27 | 2007-09-19 | 株式会社日立製作所 | セキュリティレベルに応じて記憶領域を計算機に割り当てるシステム |
US7949792B2 (en) * | 2004-02-27 | 2011-05-24 | Cisco Technology, Inc. | Encoding a TCP offload engine within FCP |
US7565568B1 (en) * | 2004-02-27 | 2009-07-21 | Veritas Operating Corporation | Method and system for virtualization switch failover |
US8224937B2 (en) * | 2004-03-04 | 2012-07-17 | International Business Machines Corporation | Event ownership assigner with failover for multiple event server system |
US20050210041A1 (en) * | 2004-03-18 | 2005-09-22 | Hitachi, Ltd. | Management method for data retention |
JP4452533B2 (ja) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | システムおよび記憶装置システム |
US20050216428A1 (en) * | 2004-03-24 | 2005-09-29 | Hitachi, Ltd. | Distributed data management system |
US7770059B1 (en) * | 2004-03-26 | 2010-08-03 | Emc Corporation | Failure protection in an environment including virtualization of networked storage resources |
TWI258661B (en) * | 2004-03-30 | 2006-07-21 | Infortrend Technology Inc | Efficient media scan operations for storage systems |
US8208370B1 (en) * | 2004-03-31 | 2012-06-26 | Cisco Technology, Inc. | Method and system for fast link failover |
US8335909B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | Coupling processors to each other for high performance computing (HPC) |
US8336040B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | System and method for topology-aware job scheduling and backfilling in an HPC environment |
US9178784B2 (en) | 2004-04-15 | 2015-11-03 | Raytheon Company | System and method for cluster management based on HPC architecture |
JP4382602B2 (ja) * | 2004-04-23 | 2009-12-16 | 株式会社日立製作所 | リモートコピーシステム |
US7437506B1 (en) * | 2004-04-26 | 2008-10-14 | Symantec Operating Corporation | Method and system for virtual storage element placement within a storage area network |
US7889733B2 (en) | 2004-04-28 | 2011-02-15 | Cisco Technology, Inc. | Intelligent adjunct network device |
US7546631B1 (en) * | 2004-04-30 | 2009-06-09 | Sun Microsystems, Inc. | Embedded management system for a physical device having virtual elements |
US20050262391A1 (en) * | 2004-05-10 | 2005-11-24 | Prashant Sethi | I/O configuration messaging within a link-based computing system |
JP4230410B2 (ja) * | 2004-05-11 | 2009-02-25 | 株式会社日立製作所 | 仮想ストレージの通信品質制御装置 |
US7823026B2 (en) * | 2004-10-07 | 2010-10-26 | Cisco Technology, Inc. | Automatic system for power and data redundancy in a wired data telecommunications network |
US7523341B2 (en) * | 2004-05-13 | 2009-04-21 | International Business Machines Corporation | Methods, apparatus and computer programs for recovery from failures in a computing environment |
US7793137B2 (en) * | 2004-10-07 | 2010-09-07 | Cisco Technology, Inc. | Redundant power and data in a wired data telecommunincations network |
US7849351B2 (en) * | 2004-10-07 | 2010-12-07 | Cisco Technology, Inc. | Power and data redundancy in a single wiring closet |
US7706364B2 (en) * | 2004-05-19 | 2010-04-27 | Cisco Technology, Inc. | Virtual network device clusters |
US7710957B2 (en) * | 2004-05-19 | 2010-05-04 | Cisco Technology, Inc. | System and method for implementing multiple spanning trees per network |
US7660824B2 (en) * | 2004-05-20 | 2010-02-09 | Bea Systems, Inc. | System and method for performing batch configuration changes |
JP4572581B2 (ja) * | 2004-05-28 | 2010-11-04 | 株式会社日立製作所 | データベース処理方法およびシステム並びにその処理プログラム |
US7509630B2 (en) * | 2004-06-14 | 2009-03-24 | Alcatel-Lucent Usa Inc. | Software component initialization in an ordered sequence |
US7707143B2 (en) * | 2004-06-14 | 2010-04-27 | International Business Machines Corporation | Systems, methods, and computer program products that automatically discover metadata objects and generate multidimensional models |
US7480663B2 (en) * | 2004-06-22 | 2009-01-20 | International Business Machines Corporation | Model based optimization with focus regions |
US20050283494A1 (en) * | 2004-06-22 | 2005-12-22 | International Business Machines Corporation | Visualizing and manipulating multidimensional OLAP models graphically |
US7436836B2 (en) | 2004-06-30 | 2008-10-14 | Cisco Technology, Inc. | Method and apparatus for detecting support for a protocol defining supplemental headers |
US7808983B2 (en) | 2004-07-08 | 2010-10-05 | Cisco Technology, Inc. | Network device architecture for centralized packet processing |
US7461101B2 (en) | 2004-07-13 | 2008-12-02 | International Business Machines Corporation | Method for reducing data loss and unavailability by integrating multiple levels of a storage hierarchy |
US20060031230A1 (en) * | 2004-07-21 | 2006-02-09 | Kumar Sinha M | Data storage systems |
US7936769B2 (en) | 2004-07-30 | 2011-05-03 | Brocade Communications System, Inc. | Multifabric zone device import and export |
US7466712B2 (en) * | 2004-07-30 | 2008-12-16 | Brocade Communications Systems, Inc. | System and method for providing proxy and translation domains in a fibre channel router |
US20060041559A1 (en) * | 2004-08-17 | 2006-02-23 | International Business Machines Corporation | Innovation for managing virtual storage area networks |
US8730976B2 (en) | 2004-08-17 | 2014-05-20 | Cisco Technology, Inc. | System and method for preventing erroneous link aggregation due to component relocation |
US20060045754A1 (en) * | 2004-08-27 | 2006-03-02 | Peter Lukens | Ion pump for cryogenic magnet apparatus |
US7395396B2 (en) * | 2004-08-30 | 2008-07-01 | Hitachi, Ltd. | Storage system and data relocation control device |
JP4646574B2 (ja) | 2004-08-30 | 2011-03-09 | 株式会社日立製作所 | データ処理システム |
US7096338B2 (en) * | 2004-08-30 | 2006-08-22 | Hitachi, Ltd. | Storage system and data relocation control device |
US7657613B1 (en) * | 2004-09-09 | 2010-02-02 | Sun Microsystems, Inc. | Host-centric storage provisioner in a managed SAN |
US7499419B2 (en) * | 2004-09-24 | 2009-03-03 | Fortinet, Inc. | Scalable IP-services enabled multicast forwarding with efficient resource utilization |
US7493300B2 (en) * | 2004-09-30 | 2009-02-17 | International Business Machines Corporation | Model and system for reasoning with N-step lookahead in policy-based system management |
US8259562B2 (en) * | 2004-10-07 | 2012-09-04 | Cisco Technology, Inc. | Wiring closet redundancy |
US7451347B2 (en) * | 2004-10-08 | 2008-11-11 | Microsoft Corporation | Failover scopes for nodes of a computer cluster |
US8046446B1 (en) | 2004-10-18 | 2011-10-25 | Symantec Operating Corporation | System and method for providing availability using volume server sets in a storage environment employing distributed block virtualization |
US7389393B1 (en) | 2004-10-21 | 2008-06-17 | Symantec Operating Corporation | System and method for write forwarding in a storage environment employing distributed virtualization |
US7602720B2 (en) * | 2004-10-22 | 2009-10-13 | Cisco Technology, Inc. | Active queue management methods and devices |
US7564869B2 (en) | 2004-10-22 | 2009-07-21 | Cisco Technology, Inc. | Fibre channel over ethernet |
US7801125B2 (en) | 2004-10-22 | 2010-09-21 | Cisco Technology, Inc. | Forwarding table reduction and multipath network forwarding |
JP4377313B2 (ja) * | 2004-10-22 | 2009-12-02 | 株式会社日立製作所 | ネットワークシステムにおけるエラーリカバリレベルの最適化 |
US7969971B2 (en) * | 2004-10-22 | 2011-06-28 | Cisco Technology, Inc. | Ethernet extension for the data center |
CN101040489B (zh) * | 2004-10-22 | 2012-12-05 | 思科技术公司 | 用于统一输入/输出和降低延迟的网络设备体系结构 |
US8238347B2 (en) * | 2004-10-22 | 2012-08-07 | Cisco Technology, Inc. | Fibre channel over ethernet |
US7830793B2 (en) * | 2004-10-22 | 2010-11-09 | Cisco Technology, Inc. | Network device architecture for consolidating input/output and reducing latency |
US7593324B2 (en) * | 2004-10-25 | 2009-09-22 | Cisco Technology, Inc. | Graceful port shutdown protocol for fibre channel interfaces |
JP2006127028A (ja) | 2004-10-27 | 2006-05-18 | Hitachi Ltd | 記憶システム及び記憶制御装置 |
US8510331B1 (en) | 2004-10-28 | 2013-08-13 | Storediq, Inc. | System and method for a desktop agent for use in managing file systems |
US7844582B1 (en) | 2004-10-28 | 2010-11-30 | Stored IQ | System and method for involving users in object management |
US7916628B2 (en) * | 2004-11-01 | 2011-03-29 | Cisco Technology, Inc. | Trunking for fabric ports in fibre channel switches and attached devices |
US7975061B1 (en) | 2004-11-05 | 2011-07-05 | Commvault Systems, Inc. | System and method for performing multistream storage operations |
US7409519B2 (en) * | 2004-11-12 | 2008-08-05 | International Business Machines Corporation | Synchronizing logical systems |
US7778984B2 (en) * | 2004-11-19 | 2010-08-17 | Microsoft Corporation | System and method for a distributed object store |
US7724650B2 (en) * | 2004-11-30 | 2010-05-25 | Cisco Technology, Inc. | Multi-station physical layer communication over TP cable |
US8156281B1 (en) * | 2004-12-07 | 2012-04-10 | Oracle America, Inc. | Data storage system and method using storage profiles to define and modify storage pools |
US20060129559A1 (en) * | 2004-12-15 | 2006-06-15 | Dell Products L.P. | Concurrent access to RAID data in shared storage |
JP4553723B2 (ja) * | 2004-12-24 | 2010-09-29 | 富士通株式会社 | 仮想ストレージ構成管理システム、仮想ストレージ構成のための情報処理装置、およびコンピュータ読み取り可能な記憶媒体 |
US7649844B2 (en) * | 2004-12-29 | 2010-01-19 | Cisco Technology, Inc. | In-order fibre channel packet delivery |
US20070168495A1 (en) * | 2005-01-11 | 2007-07-19 | Rothstein Richard S | Systems and methods for network data storage |
US7287128B1 (en) * | 2005-01-25 | 2007-10-23 | Seagate Technology Llc | Write on reference mesh |
US8180855B2 (en) | 2005-01-27 | 2012-05-15 | Netapp, Inc. | Coordinated shared storage architecture |
US8019842B1 (en) | 2005-01-27 | 2011-09-13 | Netapp, Inc. | System and method for distributing enclosure services data to coordinate shared storage |
US7826379B2 (en) * | 2005-02-07 | 2010-11-02 | International Business Machines Corporation | All-to-all sequenced fault detection system |
US7437595B2 (en) * | 2005-02-07 | 2008-10-14 | International Business Machines Corporation | Row fault detection system |
US7529963B2 (en) * | 2005-02-07 | 2009-05-05 | International Business Machines Corporation | Cell boundary fault detection system |
US7506197B2 (en) * | 2005-02-07 | 2009-03-17 | International Business Machines Corporation | Multi-directional fault detection system |
US7451342B2 (en) * | 2005-02-07 | 2008-11-11 | International Business Machines Corporation | Bisectional fault detection system |
US8495411B2 (en) * | 2005-02-07 | 2013-07-23 | International Business Machines Corporation | All row, planar fault detection system |
US7953703B2 (en) | 2005-02-17 | 2011-05-31 | International Business Machines Corporation | Creation of highly available pseudo-clone standby servers for rapid failover provisioning |
US8572431B2 (en) * | 2005-02-23 | 2013-10-29 | Barclays Capital Inc. | Disaster recovery framework |
US7523110B2 (en) * | 2005-03-03 | 2009-04-21 | Gravic, Inc. | High availability designated winner data replication |
US7583605B2 (en) * | 2005-03-10 | 2009-09-01 | At&T Intellectual Property I, L.P. | Method and system of evaluating survivability of ATM switches over SONET networks |
US7490205B2 (en) * | 2005-03-14 | 2009-02-10 | International Business Machines Corporation | Method for providing a triad copy of storage data |
JP4517923B2 (ja) * | 2005-03-31 | 2010-08-04 | 沖電気工業株式会社 | オブジェクト救済システム及び方法 |
US7343468B2 (en) * | 2005-04-14 | 2008-03-11 | International Business Machines Corporation | Method and apparatus for storage provisioning automation in a data center |
US20060236061A1 (en) * | 2005-04-18 | 2006-10-19 | Creek Path Systems | Systems and methods for adaptively deriving storage policy and configuration rules |
US7640292B1 (en) * | 2005-04-29 | 2009-12-29 | Netapp, Inc. | Physical server to virtual server migration |
US7581056B2 (en) * | 2005-05-11 | 2009-08-25 | Cisco Technology, Inc. | Load balancing using distributed front end and back end virtualization engines |
US7600083B2 (en) * | 2005-06-10 | 2009-10-06 | Network Appliance, Inc. | Method and system for automatic write request suspension |
US7933936B2 (en) * | 2005-06-10 | 2011-04-26 | Network Appliance, Inc. | Method and system for automatic management of storage space |
JP4831599B2 (ja) * | 2005-06-28 | 2011-12-07 | ルネサスエレクトロニクス株式会社 | 処理装置 |
US7363457B1 (en) * | 2005-07-21 | 2008-04-22 | Sun Microsystems, Inc. | Method and system for providing virtualization data services for legacy storage devices |
US7653682B2 (en) * | 2005-07-22 | 2010-01-26 | Netapp, Inc. | Client failure fencing mechanism for fencing network file system data in a host-cluster environment |
US20070027999A1 (en) * | 2005-07-29 | 2007-02-01 | Allen James P | Method for coordinated error tracking and reporting in distributed storage systems |
US8819202B1 (en) | 2005-08-01 | 2014-08-26 | Oracle America, Inc. | Service configuration and deployment engine for provisioning automation |
US7480816B1 (en) * | 2005-08-04 | 2009-01-20 | Sun Microsystems, Inc. | Failure chain detection and recovery in a group of cooperating systems |
WO2007021823A2 (en) | 2005-08-09 | 2007-02-22 | Tripwire, Inc. | Information technology governance and controls methods and apparatuses |
US10318894B2 (en) | 2005-08-16 | 2019-06-11 | Tripwire, Inc. | Conformance authority reconciliation |
US7987213B2 (en) * | 2005-09-26 | 2011-07-26 | Koninklijke Philips Electronics N.V. | Storage profile generation for network-connected portable storage devices |
US7509535B1 (en) * | 2005-09-29 | 2009-03-24 | Emc Corporation | System and method for managing failover in a data storage environment |
US7961621B2 (en) * | 2005-10-11 | 2011-06-14 | Cisco Technology, Inc. | Methods and devices for backward congestion notification |
US7870173B2 (en) * | 2005-10-13 | 2011-01-11 | International Business Machines Corporation | Storing information in a common information store |
US7996608B1 (en) | 2005-10-20 | 2011-08-09 | American Megatrends, Inc. | Providing redundancy in a storage system |
US8010485B1 (en) | 2005-10-20 | 2011-08-30 | American Megatrends, Inc. | Background movement of data between nodes in a storage cluster |
US8010829B1 (en) | 2005-10-20 | 2011-08-30 | American Megatrends, Inc. | Distributed hot-spare storage in a storage cluster |
US7760717B2 (en) * | 2005-10-25 | 2010-07-20 | Brocade Communications Systems, Inc. | Interface switch for use with fibre channel fabrics in storage area networks |
US7475277B1 (en) | 2005-11-10 | 2009-01-06 | Storage Technology Corporation | Automated repair of damaged objects |
US7428602B2 (en) * | 2005-11-29 | 2008-09-23 | International Business Machines Corporation | Method for executing initialization code to configure connected devices and executing segments of configuration code from a failed segment |
US8087021B1 (en) | 2005-11-29 | 2011-12-27 | Oracle America, Inc. | Automated activity processing |
US7668879B2 (en) * | 2005-11-30 | 2010-02-23 | Oracle International Corporation | Database system configured for automatic failover with no data loss |
US7627584B2 (en) * | 2005-11-30 | 2009-12-01 | Oracle International Corporation | Database system configured for automatic failover with no data loss |
US7882079B2 (en) | 2005-11-30 | 2011-02-01 | Oracle International Corporation | Database system configured for automatic failover with user-limited data loss |
US8255369B2 (en) * | 2005-11-30 | 2012-08-28 | Oracle International Corporation | Automatic failover configuration with lightweight observer |
US7734596B2 (en) * | 2005-11-30 | 2010-06-08 | Stephen John Vivian | Automatic failover configuration with redundant abservers |
EP1798934A1 (en) * | 2005-12-13 | 2007-06-20 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for organizing nodes in a network |
US7805565B1 (en) | 2005-12-23 | 2010-09-28 | Oracle America, Inc. | Virtualization metadata promotion |
US8266308B2 (en) * | 2006-02-21 | 2012-09-11 | Comtrol Corporation | System, method, and device for communicating between a field device, device controller, and enterprise application |
US20070214313A1 (en) * | 2006-02-21 | 2007-09-13 | Kalos Matthew J | Apparatus, system, and method for concurrent RAID array relocation |
JP2007226398A (ja) * | 2006-02-22 | 2007-09-06 | Hitachi Ltd | データベース接続管理方法及び計算機システム |
US20070233868A1 (en) * | 2006-03-31 | 2007-10-04 | Tyrrell John C | System and method for intelligent provisioning of storage across a plurality of storage systems |
US7849281B2 (en) * | 2006-04-03 | 2010-12-07 | Emc Corporation | Method and system for implementing hierarchical permission maps in a layered volume graph |
JP2007299079A (ja) * | 2006-04-28 | 2007-11-15 | Fujitsu Ltd | ストレージ装置及びその障害回復方法 |
JP2007299213A (ja) * | 2006-04-28 | 2007-11-15 | Fujitsu Ltd | Raid制御装置および障害監視方法 |
US7613742B2 (en) * | 2006-05-02 | 2009-11-03 | Mypoints.Com Inc. | System and method for providing three-way failover for a transactional database |
US8909758B2 (en) * | 2006-05-02 | 2014-12-09 | Cisco Technology, Inc. | Physical server discovery and correlation |
US8266472B2 (en) * | 2006-05-03 | 2012-09-11 | Cisco Technology, Inc. | Method and system to provide high availability of shared data |
US20070261045A1 (en) * | 2006-05-05 | 2007-11-08 | Dell Products L.P. | Method and system of configuring a directory service for installing software applications |
US8762418B1 (en) | 2006-05-31 | 2014-06-24 | Oracle America, Inc. | Metadata that allows refiltering and data reclassification without accessing the data |
US7657782B2 (en) * | 2006-06-08 | 2010-02-02 | International Business Machines Corporation | Creating and managing multiple virtualized remote mirroring session consistency groups |
US20070297338A1 (en) * | 2006-06-23 | 2007-12-27 | Yun Mou | Verification of path selection protocol in a multi-path storage area network |
US7849261B2 (en) * | 2006-06-29 | 2010-12-07 | Seagate Technology Llc | Temperature control to reduce cascade failures in a multi-device array |
US7661005B2 (en) * | 2006-06-30 | 2010-02-09 | Seagate Technology Llc | Individual storage device power control in a multi-device array |
US20080021865A1 (en) * | 2006-07-20 | 2008-01-24 | International Business Machines Corporation | Method, system, and computer program product for dynamically determining data placement |
US7664980B2 (en) * | 2006-07-28 | 2010-02-16 | Fujitsu Limited | Method and system for automatic attempted recovery of equipment from transient faults |
US20080052284A1 (en) * | 2006-08-05 | 2008-02-28 | Terry Stokes | System and Method for the Capture and Archival of Electronic Communications |
US7480827B2 (en) | 2006-08-11 | 2009-01-20 | Chicago Mercantile Exchange | Fault tolerance and failover using active copy-cat |
US7434096B2 (en) | 2006-08-11 | 2008-10-07 | Chicago Mercantile Exchange | Match server for a financial exchange having fault tolerant operation |
US8041985B2 (en) | 2006-08-11 | 2011-10-18 | Chicago Mercantile Exchange, Inc. | Match server for a financial exchange having fault tolerant operation |
US7571349B2 (en) * | 2006-08-18 | 2009-08-04 | Microsoft Corporation | Configuration replication for system recovery and migration |
US7730029B2 (en) * | 2006-09-15 | 2010-06-01 | Alcatel Lucent | System and method of fault tolerant reconciliation for control card redundancy |
US7805633B2 (en) * | 2006-09-18 | 2010-09-28 | Lsi Corporation | Optimized reconstruction and copyback methodology for a disconnected drive in the presence of a global hot spare disk |
US20080126839A1 (en) * | 2006-09-19 | 2008-05-29 | Satish Sangapu | Optimized reconstruction and copyback methodology for a failed drive in the presence of a global hot spare disc |
CN101150792A (zh) * | 2006-09-20 | 2008-03-26 | 深圳富泰宏精密工业有限公司 | 恢复暂时失能用户识别卡操作功能的方法及移动通信装置 |
US7519741B2 (en) * | 2006-09-28 | 2009-04-14 | International Business Machines Corporation | Apparatus, system, and method for automating adapter replacement |
JP4930934B2 (ja) * | 2006-09-29 | 2012-05-16 | 株式会社日立製作所 | データマイグレーション方法及び情報処理システム |
JP4949791B2 (ja) * | 2006-09-29 | 2012-06-13 | 株式会社日立製作所 | ボリューム選択方法及び情報処理システム |
EP2074544A2 (en) * | 2006-10-09 | 2009-07-01 | SanDisk IL Ltd. | Application dependent storage control |
US8055726B1 (en) * | 2006-10-31 | 2011-11-08 | Qlogic, Corporation | Method and system for writing network data |
US7793145B2 (en) * | 2006-11-06 | 2010-09-07 | Dot Hill Systems Corporation | Method and apparatus for verifying fault tolerant configuration |
US8234384B2 (en) * | 2006-11-13 | 2012-07-31 | Jemmac Software Limited | Computer systems and methods for process control environments |
US8473460B2 (en) * | 2006-11-21 | 2013-06-25 | Microsoft Corporation | Driver model for replacing core system hardware |
US7934121B2 (en) * | 2006-11-21 | 2011-04-26 | Microsoft Corporation | Transparent replacement of a system processor |
US7877358B2 (en) | 2006-11-21 | 2011-01-25 | Microsoft Corporation | Replacing system hardware |
US20080126884A1 (en) * | 2006-11-28 | 2008-05-29 | Siemens Aktiengesellschaft | Method for providing detailed information and support regarding an event message |
US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
US7711683B1 (en) | 2006-11-30 | 2010-05-04 | Netapp, Inc. | Method and system for maintaining disk location via homeness |
US7761612B2 (en) * | 2006-12-07 | 2010-07-20 | International Business Machines Corporation | Migrating domains from one physical data processing system to another |
US20080148270A1 (en) * | 2006-12-15 | 2008-06-19 | International Business Machines Corporation | Method and implementation for storage provisioning planning |
US8291120B2 (en) * | 2006-12-21 | 2012-10-16 | Verizon Services Corp. | Systems, methods, and computer program product for automatically verifying a standby site |
US20080162984A1 (en) * | 2006-12-28 | 2008-07-03 | Network Appliance, Inc. | Method and apparatus for hardware assisted takeover |
ATE492846T1 (de) * | 2007-01-03 | 2011-01-15 | Raytheon Co | Computerspeichersystem |
US7793148B2 (en) * | 2007-01-12 | 2010-09-07 | International Business Machines Corporation | Using virtual copies in a failover and failback environment |
US7908448B1 (en) | 2007-01-30 | 2011-03-15 | American Megatrends, Inc. | Maintaining data consistency in mirrored cluster storage systems with write-back cache |
US8046548B1 (en) | 2007-01-30 | 2011-10-25 | American Megatrends, Inc. | Maintaining data consistency in mirrored cluster storage systems using bitmap write-intent logging |
US8498967B1 (en) * | 2007-01-30 | 2013-07-30 | American Megatrends, Inc. | Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome |
WO2008092721A1 (en) * | 2007-01-31 | 2008-08-07 | International Business Machines Corporation | Apparatus amd method for stored data protection and recovery |
US8259720B2 (en) * | 2007-02-02 | 2012-09-04 | Cisco Technology, Inc. | Triple-tier anycast addressing |
US7590897B2 (en) * | 2007-02-06 | 2009-09-15 | International Business Machines Corporation | Device, method and computer program product for responding to error events |
US8086906B2 (en) * | 2007-02-15 | 2011-12-27 | Microsoft Corporation | Correlating hardware devices between local operating system and global management entity |
US20080222348A1 (en) * | 2007-03-08 | 2008-09-11 | Scandisk Il Ltd. | File system for managing files according to application |
US8458430B2 (en) | 2007-03-26 | 2013-06-04 | Archion, Inc. | Configurable and scalable storage system |
JP4939271B2 (ja) * | 2007-03-29 | 2012-05-23 | 株式会社日立製作所 | ストレージ保守・管理装置の冗長化方法、及びその方法を使用する装置 |
US8112593B2 (en) * | 2007-03-29 | 2012-02-07 | Netapp, Inc. | System and method for improving cluster performance |
US8146080B2 (en) * | 2007-03-30 | 2012-03-27 | Novell, Inc. | Tessellated virtual machines conditionally linked for common computing goals |
US20080256323A1 (en) * | 2007-04-09 | 2008-10-16 | Hewlett-Packard Development Company, L.P. | Reconfiguring a Storage Area Network |
US8209409B2 (en) * | 2007-04-09 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Diagnosis of a storage area network |
US20080256538A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Storage configurations for tessellated virtual machines |
US20080256535A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Tessellated virtual machines for common computing goals |
US7734947B1 (en) * | 2007-04-17 | 2010-06-08 | Netapp, Inc. | System and method for virtual interface failover within a cluster |
JP5050627B2 (ja) * | 2007-04-26 | 2012-10-17 | 日本電気株式会社 | リソース割当システム、リソース割当方法及びリソース割当プログラム |
US7774310B2 (en) * | 2007-04-27 | 2010-08-10 | Microsoft Corporation | Client-specific transformation of distributed data |
US7958385B1 (en) | 2007-04-30 | 2011-06-07 | Netapp, Inc. | System and method for verification and enforcement of virtual interface failover within a cluster |
US20080298276A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Analytical Framework for Multinode Storage Reliability Analysis |
US20080307415A1 (en) * | 2007-06-11 | 2008-12-11 | Novell, Inc. | Tessellated applications for user computing environments |
US7861111B2 (en) * | 2007-06-15 | 2010-12-28 | Savvis, Inc. | Shared data center disaster recovery systems and methods |
US7818535B1 (en) | 2007-06-30 | 2010-10-19 | Emc Corporation | Implicit container per version set |
US8285758B1 (en) * | 2007-06-30 | 2012-10-09 | Emc Corporation | Tiering storage between multiple classes of storage on the same container file system |
US8149710B2 (en) | 2007-07-05 | 2012-04-03 | Cisco Technology, Inc. | Flexible and hierarchical dynamic buffer allocation |
US7669080B2 (en) * | 2007-08-16 | 2010-02-23 | International Business Machines Corporation | Reducing likelihood of data loss during failovers in high-availability systems |
US8910234B2 (en) * | 2007-08-21 | 2014-12-09 | Schneider Electric It Corporation | System and method for enforcing network device provisioning policy |
US8121038B2 (en) | 2007-08-21 | 2012-02-21 | Cisco Technology, Inc. | Backward congestion notification |
US7987161B2 (en) * | 2007-08-23 | 2011-07-26 | Thomson Reuters (Markets) Llc | System and method for data compression using compression hardware |
US7813331B2 (en) * | 2007-08-28 | 2010-10-12 | International Business Machines Corporation | Apparatus, system, and method for implementing failover in a polling adapter without support from an application server |
US20090063501A1 (en) * | 2007-08-31 | 2009-03-05 | International Business Machines Corporation | Systems, methods and computer products for generating policy based fail over configuration for darabase clusters |
US7730091B2 (en) * | 2007-08-31 | 2010-06-01 | International Business Machines Corporation | Systems, methods and computer products for database cluster modeling |
US7743274B2 (en) * | 2007-09-12 | 2010-06-22 | International Business Machines Corporation | Administering correlated error logs in a computer system |
US8683033B2 (en) * | 2007-09-17 | 2014-03-25 | International Business Machines Corporation | Apparatus, system, and method for server failover to standby server during broadcast storm or denial-of-service attack |
US8892558B2 (en) | 2007-09-26 | 2014-11-18 | International Business Machines Corporation | Inserting data into an in-memory distributed nodal database |
US8244671B2 (en) * | 2007-10-11 | 2012-08-14 | Microsoft Corporation | Replica placement and repair strategies in multinode storage systems |
US8930945B2 (en) * | 2007-11-15 | 2015-01-06 | Novell, Inc. | Environment managers via virtual machines |
US7793340B2 (en) * | 2007-11-21 | 2010-09-07 | Novell, Inc. | Cryptographic binding of authentication schemes |
US20090144545A1 (en) * | 2007-11-29 | 2009-06-04 | International Business Machines Corporation | Computer system security using file system access pattern heuristics |
US8027996B2 (en) * | 2007-11-29 | 2011-09-27 | International Business Machines Corporation | Commitment control for less than an entire record in an in-memory database in a parallel computer system |
US7782869B1 (en) * | 2007-11-29 | 2010-08-24 | Huawei Technologies Co., Ltd. | Network traffic control for virtual device interfaces |
RU2470484C2 (ru) * | 2007-12-17 | 2012-12-20 | Телефонактиеболагет Лм Эрикссон (Пабл) | Избыточность мобильных узлов базовой сети |
US20090183255A1 (en) * | 2007-12-21 | 2009-07-16 | Kiester W Scott | Server services on client for disconnected authentication |
US8418072B1 (en) * | 2007-12-24 | 2013-04-09 | Emc Corporation | UI data model abstraction |
US8028062B1 (en) * | 2007-12-26 | 2011-09-27 | Emc Corporation | Non-disruptive data mobility using virtual storage area networks with split-path virtualization |
JP5192226B2 (ja) * | 2007-12-27 | 2013-05-08 | 株式会社日立製作所 | 待機系計算機の追加方法、計算機及び計算機システム |
US8782662B2 (en) * | 2007-12-28 | 2014-07-15 | International Business Machines Corporation | Adaptive computer sequencing of actions |
US8751283B2 (en) * | 2007-12-28 | 2014-06-10 | International Business Machines Corporation | Defining and using templates in configuring information technology environments |
US20090172149A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Real-time information technology environments |
US8868441B2 (en) * | 2007-12-28 | 2014-10-21 | International Business Machines Corporation | Non-disruptively changing a computing environment |
US9558459B2 (en) | 2007-12-28 | 2017-01-31 | International Business Machines Corporation | Dynamic selection of actions in an information technology environment |
US20090171703A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Use of multi-level state assessment in computer business environments |
US20090172125A1 (en) * | 2007-12-28 | 2009-07-02 | Mrigank Shekhar | Method and system for migrating a computer environment across blade servers |
US8826077B2 (en) * | 2007-12-28 | 2014-09-02 | International Business Machines Corporation | Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations |
US8763006B2 (en) * | 2007-12-28 | 2014-06-24 | International Business Machines Corporation | Dynamic generation of processes in computing environments |
US8082330B1 (en) * | 2007-12-28 | 2011-12-20 | Emc Corporation | Application aware automated storage pool provisioning |
US9047468B2 (en) | 2007-12-28 | 2015-06-02 | Intel Corporation | Migration of full-disk encrypted virtualized storage between blade servers |
US8990810B2 (en) * | 2007-12-28 | 2015-03-24 | International Business Machines Corporation | Projecting an effect, using a pairing construct, of execution of a proposed action on a computing environment |
US20090171730A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Non-disruptively changing scope of computer business applications based on detected changes in topology |
US8321867B1 (en) | 2008-01-24 | 2012-11-27 | Network Appliance, Inc. | Request processing for stateless conformance engine |
US8166257B1 (en) * | 2008-01-24 | 2012-04-24 | Network Appliance, Inc. | Automated continuous provisioning of a data storage system |
US20090193247A1 (en) * | 2008-01-29 | 2009-07-30 | Kiester W Scott | Proprietary protocol tunneling over eap |
US20090195224A1 (en) * | 2008-01-31 | 2009-08-06 | Basler Electric Company | Digital Excitation Control System Utilizing Self-Tuning PID Gains and an Associated Method of Use |
JP5091704B2 (ja) * | 2008-02-06 | 2012-12-05 | 株式会社日立製作所 | ストレージ構成回復方法及びストレージ管理システム |
WO2009102821A2 (en) * | 2008-02-12 | 2009-08-20 | Virident Systems, Inc. | Methods and apparatus for two-dimensional main memory |
US8549654B2 (en) | 2008-02-20 | 2013-10-01 | Bruce Backa | System and method for policy based control of NAS storage devices |
US8631470B2 (en) * | 2008-02-20 | 2014-01-14 | Bruce R. Backa | System and method for policy based control of NAS storage devices |
US7478264B1 (en) * | 2008-03-10 | 2009-01-13 | International Business Machines Corporation | Storage management server communication via storage device servers |
US8458285B2 (en) | 2008-03-20 | 2013-06-04 | Post Dahl Co. Limited Liability Company | Redundant data forwarding storage |
US9203928B2 (en) | 2008-03-20 | 2015-12-01 | Callahan Cellular L.L.C. | Data storage and retrieval |
JP5130997B2 (ja) * | 2008-03-31 | 2013-01-30 | 日本電気株式会社 | 分散リソース管理システム、分散リソース管理方法、及び分散リソース管理プログラム |
US8135838B2 (en) * | 2008-04-08 | 2012-03-13 | Geminare Incorporated | System and method for providing data and application continuity in a computer system |
US7877625B2 (en) * | 2008-04-16 | 2011-01-25 | Invensys Systems, Inc. | Efficient architecture for interfacing redundant devices to a distributed control system |
US20090276654A1 (en) * | 2008-05-02 | 2009-11-05 | International Business Machines Corporation | Systems and methods for implementing fault tolerant data processing services |
US9077628B2 (en) * | 2008-05-15 | 2015-07-07 | Hewlett-Packard Development Company, L.P. | Network device having a normal operational configuration and fail-safe configuration and method of operating the same |
GB2460841B (en) * | 2008-06-10 | 2012-01-11 | Virtensys Ltd | Methods of providing access to I/O devices |
US7844757B2 (en) * | 2008-06-12 | 2010-11-30 | International Machines Business Corporation | Method and system for providing multiple paths to user data stored on a SCSI disk |
US7840730B2 (en) | 2008-06-27 | 2010-11-23 | Microsoft Corporation | Cluster shared volumes |
US8370679B1 (en) * | 2008-06-30 | 2013-02-05 | Symantec Corporation | Method, apparatus and system for improving failover within a high availability disaster recovery environment |
US8914341B2 (en) | 2008-07-03 | 2014-12-16 | Tripwire, Inc. | Method and apparatus for continuous compliance assessment |
US8090907B2 (en) * | 2008-07-09 | 2012-01-03 | International Business Machines Corporation | Method for migration of synchronous remote copy service to a virtualization appliance |
US8015343B2 (en) * | 2008-08-08 | 2011-09-06 | Amazon Technologies, Inc. | Providing executing programs with reliable access to non-local block data storage |
US8055734B2 (en) * | 2008-08-15 | 2011-11-08 | International Business Machines Corporation | Mapping of logical volumes to host clusters |
WO2010023052A2 (en) | 2008-08-26 | 2010-03-04 | International Business Machines Corporation | A method, apparatus and computer program for provisioning a storage volume to a virtual server |
US8775394B2 (en) * | 2008-09-11 | 2014-07-08 | Netapp, Inc. | Transactional failover of data sets |
US9256542B1 (en) * | 2008-09-17 | 2016-02-09 | Pmc-Sierra Us, Inc. | Adaptive intelligent storage controller and associated methods |
TW201028841A (en) * | 2008-10-02 | 2010-08-01 | Ibm | A method, apparatus or software for use in a computerised storage system comprising one or more replaceable units for managing testing of one or more replacement units |
JP5232602B2 (ja) * | 2008-10-30 | 2013-07-10 | 株式会社日立製作所 | ストレージ装置、及びストレージコントローラ内部ネットワークのデータ経路フェイルオーバー方法 |
US20100121906A1 (en) * | 2008-11-11 | 2010-05-13 | Electronics And Telecommunications Research Institute | Device management apparatus and method for home network system |
KR101269669B1 (ko) | 2008-11-11 | 2013-05-30 | 한국전자통신연구원 | 디바이스 관리 장치, 홈 네트워크 시스템의 디바이스 관리 방법 |
JP4648447B2 (ja) * | 2008-11-26 | 2011-03-09 | 株式会社日立製作所 | 障害復旧方法、プログラムおよび管理サーバ |
US8561052B2 (en) * | 2008-12-08 | 2013-10-15 | Harris Corporation | Communications device with a plurality of processors and compatibility synchronization module for processor upgrades and related method |
US20110208779A1 (en) * | 2008-12-23 | 2011-08-25 | Backa Bruce R | System and Method for Policy Based Control of NAS Storage Devices |
US10079723B2 (en) * | 2008-12-31 | 2018-09-18 | International Business Machines Corporation | Dynamic high availability policy creation based upon entries in a configuration management database (CMDB) and a best practices template |
US8448013B2 (en) * | 2009-01-19 | 2013-05-21 | International Business Machines Corporation | Failure-specific data collection and recovery for enterprise storage controllers |
US8086840B2 (en) * | 2009-01-28 | 2011-12-27 | Lenovo (Singapore) Pte. Ltd. | Apparatus, system, and method for improving user boot via a storage area network |
US8166264B2 (en) * | 2009-02-05 | 2012-04-24 | Hitachi, Ltd. | Method and apparatus for logical volume management |
US7971094B1 (en) * | 2009-03-03 | 2011-06-28 | Netapp, Inc. | Method, system and apparatus for creating and executing a failover plan on a computer network |
US8145838B1 (en) | 2009-03-10 | 2012-03-27 | Netapp, Inc. | Processing and distributing write logs of nodes of a cluster storage system |
US8327186B2 (en) * | 2009-03-10 | 2012-12-04 | Netapp, Inc. | Takeover of a failed node of a cluster storage system on a per aggregate basis |
US8291429B2 (en) * | 2009-03-25 | 2012-10-16 | International Business Machines Corporation | Organization of heterogeneous entities into system resource groups for defining policy management framework in managed systems environment |
US8069366B1 (en) | 2009-04-29 | 2011-11-29 | Netapp, Inc. | Global write-log device for managing write logs of nodes of a cluster storage system |
EP2441229B1 (en) | 2009-06-11 | 2020-05-06 | Panasonic Avionics Corporation | System and method for providing security aboard a moving platform |
US8201169B2 (en) | 2009-06-15 | 2012-06-12 | Vmware, Inc. | Virtual machine fault tolerance |
US20100332401A1 (en) | 2009-06-30 | 2010-12-30 | Anand Prahlad | Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites |
US9569319B2 (en) * | 2009-09-18 | 2017-02-14 | Alcatel Lucent | Methods for improved server redundancy in dynamic networks |
CN102035862B (zh) | 2009-09-30 | 2013-11-06 | 国际商业机器公司 | Svc集群中配置节点的故障移交方法和系统 |
US8626888B2 (en) * | 2009-10-27 | 2014-01-07 | International Business Machines Corporation | Dynamic control of autonomic management of a data center |
US8260830B2 (en) * | 2009-11-09 | 2012-09-04 | Middlecamp William J | Adapting a timer bounded arbitration protocol |
US10133485B2 (en) * | 2009-11-30 | 2018-11-20 | Red Hat, Inc. | Integrating storage resources from storage area network in machine provisioning platform |
US8484259B1 (en) | 2009-12-08 | 2013-07-09 | Netapp, Inc. | Metadata subsystem for a distributed object store in a network storage system |
US9507799B1 (en) | 2009-12-08 | 2016-11-29 | Netapp, Inc. | Distributed object store for network-based content repository |
US20110137966A1 (en) * | 2009-12-08 | 2011-06-09 | Netapp, Inc. | Methods and systems for providing a unified namespace for multiple network protocols |
US8180813B1 (en) | 2009-12-08 | 2012-05-15 | Netapp, Inc. | Content repository implemented in a network storage server system |
US8688838B2 (en) * | 2009-12-14 | 2014-04-01 | Hewlett-Packard Development Company, L.P. | Profile management systems |
US9389895B2 (en) * | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
US9015333B2 (en) | 2009-12-18 | 2015-04-21 | Cisco Technology, Inc. | Apparatus and methods for handling network file operations over a fibre channel network |
US9727266B2 (en) * | 2009-12-29 | 2017-08-08 | International Business Machines Corporation | Selecting storage units in a dispersed storage network |
US9098456B2 (en) * | 2010-01-13 | 2015-08-04 | International Business Machines Corporation | System and method for reducing latency time with cloud services |
JP5531625B2 (ja) * | 2010-01-13 | 2014-06-25 | 日本電気株式会社 | 通信システム及びその障害検出方法 |
EP2531921B1 (fr) * | 2010-02-01 | 2015-05-13 | Orange | Gestion du lieu de stockage de donnees dans un systeme de stockage distribue |
US8671265B2 (en) | 2010-03-05 | 2014-03-11 | Solidfire, Inc. | Distributed data storage system providing de-duplication of data using block identifiers |
US8555105B2 (en) * | 2010-04-12 | 2013-10-08 | International Business Machines Corporation | Fallover policy management in high availability systems |
US8881134B2 (en) * | 2010-04-29 | 2014-11-04 | International Business Machines Corporation | Updating elements in data storage facility using predefined state machine over extended time period |
US8738724B2 (en) | 2010-05-25 | 2014-05-27 | Microsoft Corporation | Totally ordered log on appendable storage |
US8984241B2 (en) | 2010-07-07 | 2015-03-17 | Nexenta Systems, Inc. | Heterogeneous redundant storage array |
US8954669B2 (en) | 2010-07-07 | 2015-02-10 | Nexenta System, Inc | Method and system for heterogeneous data volume |
US8443078B2 (en) * | 2010-08-20 | 2013-05-14 | International Business Machines Corporation | Method of determining equivalent subsets of agents to gather information for a fabric |
EP2614003B1 (en) | 2010-09-10 | 2016-04-20 | Panasonic Avionics Corporation | Chair with an integrated user interface system and method |
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
US8589655B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of I/O in an SSD environment |
US8732426B2 (en) | 2010-09-15 | 2014-05-20 | Pure Storage, Inc. | Scheduling of reactive I/O operations in a storage environment |
US11275509B1 (en) | 2010-09-15 | 2022-03-15 | Pure Storage, Inc. | Intelligently sizing high latency I/O requests in a storage environment |
US8468318B2 (en) | 2010-09-15 | 2013-06-18 | Pure Storage Inc. | Scheduling of I/O writes in a storage environment |
US8589625B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of reconstructive I/O read operations in a storage environment |
JP5893628B2 (ja) * | 2010-09-17 | 2016-03-23 | オラクル・インターナショナル・コーポレイション | ミドルウェアマシン環境における部分的なサブネット初期化の実行 |
US9244769B2 (en) | 2010-09-28 | 2016-01-26 | Pure Storage, Inc. | Offset protection data in a RAID array |
US8775868B2 (en) | 2010-09-28 | 2014-07-08 | Pure Storage, Inc. | Adaptive RAID for an SSD environment |
WO2012053040A1 (en) * | 2010-10-22 | 2012-04-26 | Hitachi, Ltd. | File server for migration of file and method for migrating file based on file's attributes and storage apparatuses ' attributes |
US9600315B2 (en) * | 2010-10-22 | 2017-03-21 | Netapp, Inc. | Seamless takeover of a stateful protocol session in a virtual machine environment |
US8335761B1 (en) * | 2010-12-02 | 2012-12-18 | Emc International Company | Replicating in a multi-copy environment |
US9201677B2 (en) | 2011-05-23 | 2015-12-01 | Intelligent Intellectual Property Holdings 2 Llc | Managing data input/output operations |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US8996807B2 (en) | 2011-02-15 | 2015-03-31 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a multi-level cache |
US8745467B2 (en) * | 2011-02-16 | 2014-06-03 | Invensys Systems, Inc. | System and method for fault tolerant computing using generic hardware |
US8601085B1 (en) * | 2011-03-28 | 2013-12-03 | Emc Corporation | Techniques for preferred path determination |
US8782464B2 (en) * | 2011-03-31 | 2014-07-15 | International Business Machines Corporation | Method and system for using a standby server to improve redundancy in a dual-node data storage system |
US8812566B2 (en) | 2011-05-13 | 2014-08-19 | Nexenta Systems, Inc. | Scalable storage for virtual machines |
US9223798B2 (en) | 2011-05-17 | 2015-12-29 | Archion, Inc. | Virtualized workspaces for standardization of access to data |
JP5652333B2 (ja) * | 2011-05-31 | 2015-01-14 | 富士通株式会社 | 記憶装置、ストレージシステム及び記憶装置制御方法 |
US9935848B2 (en) | 2011-06-03 | 2018-04-03 | Oracle International Corporation | System and method for supporting subnet manager (SM) level robust handling of unkown management key in an infiniband (IB) network |
JP5965478B2 (ja) | 2011-06-03 | 2016-08-03 | オラクル・インターナショナル・コーポレイション | ネットワークにおけるコンポーネントを認証するためのシステムおよび方法 |
US8719835B2 (en) * | 2011-06-07 | 2014-05-06 | Telefonaktiebolaget L M Ericsson (Publ) | Ranking service units to provide and protect highly available services using the Nway redundancy model |
US8707085B2 (en) * | 2011-06-30 | 2014-04-22 | International Business Machines Corporation | High availability data storage systems and methods |
US8788877B2 (en) * | 2011-08-03 | 2014-07-22 | International Business Machines Corporation | Acquiring a storage system into copy services management software |
US8589640B2 (en) | 2011-10-14 | 2013-11-19 | Pure Storage, Inc. | Method for maintaining multiple fingerprint tables in a deduplicating storage system |
US11636031B2 (en) | 2011-08-11 | 2023-04-25 | Pure Storage, Inc. | Optimized inline deduplication |
US8553532B2 (en) * | 2011-08-23 | 2013-10-08 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and apparatus for avoiding inter-chassis redundancy switchover to non-functional standby nodes |
US8819491B2 (en) | 2011-09-16 | 2014-08-26 | Tripwire, Inc. | Methods and apparatus for remediation workflow |
US8862941B2 (en) | 2011-09-16 | 2014-10-14 | Tripwire, Inc. | Methods and apparatus for remediation execution |
US20130073704A1 (en) * | 2011-09-16 | 2013-03-21 | Tripwire, Inc. | Methods and apparatus for remediating policy test failures, including promoting changes for compliance review |
CN102388358B (zh) * | 2011-09-30 | 2014-07-09 | 华为技术有限公司 | 在混合存储环境下配置存储设备的方法和系统 |
US8793379B2 (en) | 2011-11-01 | 2014-07-29 | Lsi Corporation | System or method to automatically provision a storage volume by having an app-aware based appliance in a storage cloud environment |
US9141609B2 (en) | 2011-12-01 | 2015-09-22 | Oracle International Corporation | Reducing sequence cache latch contention in a database system |
US9189295B2 (en) | 2011-12-01 | 2015-11-17 | Oracle International Corporation | Generating an ordered sequence in a database system using multiple interleaved caches |
US9910893B2 (en) * | 2011-12-01 | 2018-03-06 | Oracle International Corporation | Failover and resume when using ordered sequences in a multi-instance database environment |
US20130151888A1 (en) * | 2011-12-12 | 2013-06-13 | International Business Machines Corporation | Avoiding A Ping-Pong Effect On Active-Passive Storage |
US9741003B2 (en) | 2011-12-19 | 2017-08-22 | Microsoft Technology Licensing, Llc | Method and system for providing centralized notifications to an administrator |
JP5556801B2 (ja) * | 2011-12-19 | 2014-07-23 | 株式会社デンソー | 車載電子制御装置および診断システム |
US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
US9239786B2 (en) | 2012-01-18 | 2016-01-19 | Samsung Electronics Co., Ltd. | Reconfigurable storage device |
US8856583B1 (en) * | 2012-01-20 | 2014-10-07 | Google Inc. | Failover operation on a replicated distributed database system while maintaining access invariance |
US9116812B2 (en) | 2012-01-27 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a de-duplication cache |
US8719540B1 (en) | 2012-03-15 | 2014-05-06 | Pure Storage, Inc. | Fractal layout of data blocks across multiple devices |
US9262496B2 (en) | 2012-03-30 | 2016-02-16 | Commvault Systems, Inc. | Unified access to personal data |
US9639295B1 (en) * | 2012-03-30 | 2017-05-02 | EMC IP Holding Company LLC | Method and apparatus for reducing splitter latency using parallel splitting |
US8977825B1 (en) * | 2012-03-30 | 2015-03-10 | Emc Corporation | Techniques for abstract profile definition to support information hiding |
US8950009B2 (en) | 2012-03-30 | 2015-02-03 | Commvault Systems, Inc. | Information management of data associated with multiple cloud services |
US8918672B2 (en) | 2012-05-31 | 2014-12-23 | International Business Machines Corporation | Maximizing use of storage in a data replication environment |
US20130326038A1 (en) * | 2012-06-05 | 2013-12-05 | Microsoft Corporation | Management of datacenters for fault tolerance and bandwidth |
WO2013188382A2 (en) * | 2012-06-12 | 2013-12-19 | Centurylink Intellectual Property Llc | High performance cloud storage |
US9229800B2 (en) | 2012-06-28 | 2016-01-05 | Microsoft Technology Licensing, Llc | Problem inference from support tickets |
US8626967B1 (en) * | 2012-06-29 | 2014-01-07 | Emc Corporation | Virtualization of a storage processor for port failover |
US8949656B1 (en) * | 2012-06-29 | 2015-02-03 | Emc Corporation | Port matching for data storage system port failover |
US9612966B2 (en) | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
US10339056B2 (en) | 2012-07-03 | 2019-07-02 | Sandisk Technologies Llc | Systems, methods and apparatus for cache transfers |
US9104575B2 (en) | 2012-08-18 | 2015-08-11 | International Business Machines Corporation | Reduced-impact error recovery in multi-core storage-system components |
US9336094B1 (en) * | 2012-09-13 | 2016-05-10 | Emc International Company | Scaleout replication of an application |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
US8868604B2 (en) | 2012-09-26 | 2014-10-21 | Oracle International Corporation | Methods and apparatus for implementing Semi-distributed Lock Management |
US8745415B2 (en) | 2012-09-26 | 2014-06-03 | Pure Storage, Inc. | Multi-drive cooperation to generate an encryption key |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US9311330B1 (en) * | 2012-09-28 | 2016-04-12 | Emc Corporation | Method and system for performing full backup in a failover cluster |
US9325748B2 (en) * | 2012-11-15 | 2016-04-26 | Microsoft Technology Licensing, Llc | Characterizing service levels on an electronic network |
US9565080B2 (en) | 2012-11-15 | 2017-02-07 | Microsoft Technology Licensing, Llc | Evaluating electronic network devices in view of cost and service level considerations |
US9304875B2 (en) * | 2012-11-30 | 2016-04-05 | International Business Machines Corporation | Dynamically tracking logical units moving between input/output ports of a storage area network target |
US8769633B1 (en) | 2012-12-12 | 2014-07-01 | Bruce R. Backa | System and method for policy based control of NAS storage devices |
US20140181085A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Data storage system for analysis of data across heterogeneous information management systems |
US9021452B2 (en) | 2012-12-27 | 2015-04-28 | Commvault Systems, Inc. | Automatic identification of storage requirements, such as for use in selling data storage management solutions |
TWI476581B (zh) * | 2012-12-28 | 2015-03-11 | Ibm | 主動式/使用中資訊設備叢集中提供高可用性的方法、裝置與電腦程式產品 |
US10346259B2 (en) * | 2012-12-28 | 2019-07-09 | Commvault Systems, Inc. | Data recovery using a cloud-based remote data recovery center |
US11768623B2 (en) | 2013-01-10 | 2023-09-26 | Pure Storage, Inc. | Optimizing generalized transfers between storage systems |
US10908835B1 (en) | 2013-01-10 | 2021-02-02 | Pure Storage, Inc. | Reversing deletion of a virtual machine |
US9646039B2 (en) | 2013-01-10 | 2017-05-09 | Pure Storage, Inc. | Snapshots in a storage system |
US11733908B2 (en) | 2013-01-10 | 2023-08-22 | Pure Storage, Inc. | Delaying deletion of a dataset |
WO2014132373A1 (ja) * | 2013-02-28 | 2014-09-04 | 株式会社 日立製作所 | ストレージシステム及び記憶デバイス障害回復方法 |
JP6056554B2 (ja) * | 2013-03-04 | 2017-01-11 | 日本電気株式会社 | クラスタシステム |
US9697082B2 (en) | 2013-03-14 | 2017-07-04 | Hitachi, Ltd. | Method and apparatus of disaster recovery virtualization |
CA3078018C (en) * | 2013-03-15 | 2023-08-22 | Amazon Technologies, Inc. | Scalable analysis platform for semi-structured data |
CA2841685C (en) | 2013-03-15 | 2021-05-18 | Panasonic Avionics Corporation | System and method for providing multi-mode wireless data distribution |
US9842053B2 (en) | 2013-03-15 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for persistent cache logging |
US9940019B2 (en) | 2013-06-12 | 2018-04-10 | International Business Machines Corporation | Online migration of a logical volume between storage systems |
US8819317B1 (en) | 2013-06-12 | 2014-08-26 | International Business Machines Corporation | Processing input/output requests using proxy and owner storage systems |
US9779003B2 (en) | 2013-06-12 | 2017-10-03 | International Business Machines Corporation | Safely mapping and unmapping host SCSI volumes |
US9274916B2 (en) | 2013-06-12 | 2016-03-01 | International Business Machines Corporation | Unit attention processing in proxy and owner storage systems |
US9274989B2 (en) | 2013-06-12 | 2016-03-01 | International Business Machines Corporation | Impersonating SCSI ports through an intermediate proxy |
US9769062B2 (en) | 2013-06-12 | 2017-09-19 | International Business Machines Corporation | Load balancing input/output operations between two computers |
US9350601B2 (en) | 2013-06-21 | 2016-05-24 | Microsoft Technology Licensing, Llc | Network event processing and prioritization |
GB2515554A (en) | 2013-06-28 | 2014-12-31 | Ibm | Maintaining computer system operability |
US9887889B1 (en) * | 2013-07-15 | 2018-02-06 | Amazon Technologies, Inc. | State reconciliation using event tracking and polling |
US10148523B1 (en) * | 2013-09-16 | 2018-12-04 | Amazon Technologies, Inc. | Resetting computing resources in a service provider network |
US10365858B2 (en) | 2013-11-06 | 2019-07-30 | Pure Storage, Inc. | Thin provisioning in a storage device |
US11128448B1 (en) | 2013-11-06 | 2021-09-21 | Pure Storage, Inc. | Quorum-aware secret sharing |
US10263770B2 (en) | 2013-11-06 | 2019-04-16 | Pure Storage, Inc. | Data protection in a storage system using external secrets |
US10120617B2 (en) | 2013-11-12 | 2018-11-06 | International Business Machines Corporation | Using deterministic logical unit numbers to dynamically map data volumes |
US9323764B2 (en) | 2013-11-12 | 2016-04-26 | International Business Machines Corporation | Copying volumes between storage pools |
US9053002B2 (en) | 2013-11-12 | 2015-06-09 | International Business Machines Corporation | Thick and thin data volume management |
CN103617242B (zh) * | 2013-11-26 | 2017-05-10 | 曙光信息产业股份有限公司 | 一种分布式文件系统拓扑展示方法 |
US9626261B2 (en) * | 2013-11-27 | 2017-04-18 | Futurewei Technologies, Inc. | Failure recovery resolution in transplanting high performance data intensive algorithms from cluster to cloud |
US9170746B2 (en) * | 2014-01-07 | 2015-10-27 | Netapp, Inc. | Clustered raid assimilation management |
US9208086B1 (en) | 2014-01-09 | 2015-12-08 | Pure Storage, Inc. | Using frequency domain to prioritize storage of metadata in a cache |
US9529552B2 (en) | 2014-01-14 | 2016-12-27 | International Business Machines Corporation | Storage resource pack management |
US9509771B2 (en) | 2014-01-14 | 2016-11-29 | International Business Machines Corporation | Prioritizing storage array management commands |
US10033811B2 (en) | 2014-01-14 | 2018-07-24 | International Business Machines Corporation | Matching storage resource packs to storage services |
US10949382B2 (en) | 2014-01-15 | 2021-03-16 | Commvault Systems, Inc. | User-centric interfaces for information management systems |
JP6020476B2 (ja) * | 2014-01-20 | 2016-11-02 | 横河電機株式会社 | プロセス制御装置及びその更新方法 |
US10439996B2 (en) | 2014-02-11 | 2019-10-08 | Yaana Technologies, LLC | Method and system for metadata analysis and collection with privacy |
US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
US10447503B2 (en) | 2014-02-21 | 2019-10-15 | Yaana Technologies, LLC | Method and system for data flow management of user equipment in a tunneling packet data network |
US10169121B2 (en) | 2014-02-27 | 2019-01-01 | Commvault Systems, Inc. | Work flow management for an information management system |
US10656864B2 (en) | 2014-03-20 | 2020-05-19 | Pure Storage, Inc. | Data replication within a flash storage array |
US9852034B2 (en) * | 2014-03-24 | 2017-12-26 | International Business Machines Corporation | Efficient high availability for a SCSI target over a fibre channel |
US10334037B2 (en) | 2014-03-31 | 2019-06-25 | Yaana Technologies, Inc. | Peer-to-peer rendezvous system for minimizing third party visibility and method thereof |
US20150293699A1 (en) | 2014-04-11 | 2015-10-15 | Graham Bromley | Network-attached storage enhancement appliance |
US9354992B2 (en) * | 2014-04-25 | 2016-05-31 | Netapp, Inc. | Interconnect path failover |
US9389968B2 (en) | 2014-04-30 | 2016-07-12 | Netapp, Inc. | Preventing non-detectable data loss during site switchover |
US9672165B1 (en) * | 2014-05-21 | 2017-06-06 | Veritas Technologies Llc | Data management tier coupling primary storage and secondary storage |
US9779268B1 (en) | 2014-06-03 | 2017-10-03 | Pure Storage, Inc. | Utilizing a non-repeating identifier to encrypt data |
US11399063B2 (en) | 2014-06-04 | 2022-07-26 | Pure Storage, Inc. | Network authentication for a storage system |
US9218244B1 (en) | 2014-06-04 | 2015-12-22 | Pure Storage, Inc. | Rebuilding data across storage nodes |
US9760446B2 (en) | 2014-06-11 | 2017-09-12 | Micron Technology, Inc. | Conveying value of implementing an integrated data management and protection system |
US9727409B2 (en) | 2014-06-17 | 2017-08-08 | Samsung Electronics Co., Ltd. | Device and system including adaptive repair circuit |
US9218407B1 (en) | 2014-06-25 | 2015-12-22 | Pure Storage, Inc. | Replication and intermediate read-write state for mediums |
US10496556B1 (en) | 2014-06-25 | 2019-12-03 | Pure Storage, Inc. | Dynamic data protection within a flash storage system |
US10333942B2 (en) * | 2014-07-08 | 2019-06-25 | International Business Machines Corporation | Encoding LDAP role and domain information in a fixed format |
US9798728B2 (en) | 2014-07-24 | 2017-10-24 | Netapp, Inc. | System performing data deduplication using a dense tree data structure |
US10296469B1 (en) | 2014-07-24 | 2019-05-21 | Pure Storage, Inc. | Access control in a flash storage system |
US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
US9495255B2 (en) | 2014-08-07 | 2016-11-15 | Pure Storage, Inc. | Error recovery in a storage cluster |
US9864761B1 (en) | 2014-08-08 | 2018-01-09 | Pure Storage, Inc. | Read optimization operations in a storage system |
US10430079B2 (en) | 2014-09-08 | 2019-10-01 | Pure Storage, Inc. | Adjusting storage capacity in a computing system |
TWI525449B (zh) * | 2014-09-10 | 2016-03-11 | 緯創資通股份有限公司 | 伺服器控制方法及機架控制器 |
US10133511B2 (en) | 2014-09-12 | 2018-11-20 | Netapp, Inc | Optimized segment cleaning technique |
US9671960B2 (en) | 2014-09-12 | 2017-06-06 | Netapp, Inc. | Rate matching technique for balancing segment cleaning and I/O workload |
US9836363B2 (en) | 2014-09-30 | 2017-12-05 | Microsoft Technology Licensing, Llc | Semi-automatic failover |
US10164841B2 (en) | 2014-10-02 | 2018-12-25 | Pure Storage, Inc. | Cloud assist for storage systems |
US10430282B2 (en) | 2014-10-07 | 2019-10-01 | Pure Storage, Inc. | Optimizing replication by distinguishing user and system write activity |
US9489132B2 (en) | 2014-10-07 | 2016-11-08 | Pure Storage, Inc. | Utilizing unmapped and unknown states in a replicated storage system |
US10285038B2 (en) | 2014-10-10 | 2019-05-07 | Yaana Technologies, Inc. | Method and system for discovering user equipment in a network |
US9507678B2 (en) | 2014-11-13 | 2016-11-29 | Netapp, Inc. | Non-disruptive controller replacement in a cross-cluster redundancy configuration |
US9836229B2 (en) | 2014-11-18 | 2017-12-05 | Netapp, Inc. | N-way merge technique for updating volume metadata in a storage I/O stack |
US10542426B2 (en) | 2014-11-21 | 2020-01-21 | Yaana Technologies, LLC | System and method for transmitting a secure message over a signaling network |
US9727485B1 (en) | 2014-11-24 | 2017-08-08 | Pure Storage, Inc. | Metadata rewrite and flatten optimization |
US9773007B1 (en) | 2014-12-01 | 2017-09-26 | Pure Storage, Inc. | Performance improvements in a storage system |
US9552248B2 (en) | 2014-12-11 | 2017-01-24 | Pure Storage, Inc. | Cloud alert to replica |
US9588842B1 (en) | 2014-12-11 | 2017-03-07 | Pure Storage, Inc. | Drive rebuild |
US20170235512A1 (en) * | 2014-12-11 | 2017-08-17 | Hitachi, Ltd. | Configuration of storage using profiles and templates |
US9864769B2 (en) | 2014-12-12 | 2018-01-09 | Pure Storage, Inc. | Storing data utilizing repeating pattern detection |
US10545987B2 (en) | 2014-12-19 | 2020-01-28 | Pure Storage, Inc. | Replication to the cloud |
US10296354B1 (en) | 2015-01-21 | 2019-05-21 | Pure Storage, Inc. | Optimized boot operations within a flash storage array |
US11947968B2 (en) | 2015-01-21 | 2024-04-02 | Pure Storage, Inc. | Efficient use of zone in a storage device |
US9720601B2 (en) | 2015-02-11 | 2017-08-01 | Netapp, Inc. | Load balancing technique for a storage array |
US9710165B1 (en) | 2015-02-18 | 2017-07-18 | Pure Storage, Inc. | Identifying volume candidates for space reclamation |
US10956299B2 (en) | 2015-02-27 | 2021-03-23 | Commvault Systems, Inc. | Diagnosing errors in data storage and archiving in a cloud or networking environment |
US9762460B2 (en) | 2015-03-24 | 2017-09-12 | Netapp, Inc. | Providing continuous context for operational information of a storage system |
US10082985B2 (en) | 2015-03-27 | 2018-09-25 | Pure Storage, Inc. | Data striping across storage nodes that are assigned to multiple logical arrays |
US9710317B2 (en) | 2015-03-30 | 2017-07-18 | Netapp, Inc. | Methods to identify, handle and recover from suspect SSDS in a clustered flash array |
US9996437B2 (en) * | 2015-03-31 | 2018-06-12 | EMC IP Holding Company LLC | Failover in a san environment |
US10178169B2 (en) | 2015-04-09 | 2019-01-08 | Pure Storage, Inc. | Point to point based backend communication layer for storage processing |
WO2016176661A1 (en) | 2015-04-29 | 2016-11-03 | Yaana Technologies, Inc. | Scalable and iterative deep packet inspection for communications networks |
JP6481489B2 (ja) * | 2015-04-30 | 2019-03-13 | 富士通株式会社 | 修正適用情報作成プログラム、修正適用情報作成装置及び修正適用情報作成方法 |
US10140149B1 (en) | 2015-05-19 | 2018-11-27 | Pure Storage, Inc. | Transactional commits with hardware assists in remote memory |
US10019168B2 (en) * | 2015-05-19 | 2018-07-10 | EMC IP Holding Company LLC | Method and system for multicasting data to persistent memory |
US10324914B2 (en) | 2015-05-20 | 2019-06-18 | Commvalut Systems, Inc. | Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files |
US9813500B2 (en) | 2015-06-12 | 2017-11-07 | Cisco Technology, Inc. | Allocating cloud storage based on storage attributes |
US9547441B1 (en) | 2015-06-23 | 2017-01-17 | Pure Storage, Inc. | Exposing a geometry of a storage device |
US10310740B2 (en) | 2015-06-23 | 2019-06-04 | Pure Storage, Inc. | Aligning memory access operations to a geometry of a storage device |
US9817734B2 (en) * | 2015-06-29 | 2017-11-14 | Vmware, Inc. | Virtual machine recovery on non-shared storage in a single virtual infrastructure management instance |
US10785294B1 (en) * | 2015-07-30 | 2020-09-22 | EMC IP Holding Company LLC | Methods, systems, and computer readable mediums for managing fault tolerance of hardware storage nodes |
US9740566B2 (en) | 2015-07-31 | 2017-08-22 | Netapp, Inc. | Snapshot creation workflow |
US10353599B2 (en) | 2015-08-04 | 2019-07-16 | Toshiba Memory Corporation | Storage system that has a plurality of managers among which a master manager is switchable |
US11269884B2 (en) | 2015-09-04 | 2022-03-08 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
KR20170028825A (ko) | 2015-09-04 | 2017-03-14 | 퓨어 스토리지, 아이앤씨. | 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색 |
US11341136B2 (en) | 2015-09-04 | 2022-05-24 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
US10320699B1 (en) * | 2015-10-22 | 2019-06-11 | VCE IP Holding Company LLC. | Computer implemented system and method, and a computer program product, for allocating virtualized resources across an enterprise |
US9843453B2 (en) | 2015-10-23 | 2017-12-12 | Pure Storage, Inc. | Authorizing I/O commands with I/O tokens |
US10135930B2 (en) | 2015-11-13 | 2018-11-20 | Yaana Technologies Llc | System and method for discovering internet protocol (IP) network address and port translation bindings |
US10235059B2 (en) | 2015-12-01 | 2019-03-19 | Netapp, Inc. | Technique for maintaining consistent I/O processing throughput in a storage system |
WO2017139705A1 (en) * | 2016-02-10 | 2017-08-17 | Yaana Technologies, Llc. | Dynamic elastic shadow service orchestrator |
US10162682B2 (en) * | 2016-02-16 | 2018-12-25 | Red Hat, Inc. | Automatically scaling up physical resources in a computing infrastructure |
WO2017171575A1 (en) * | 2016-03-30 | 2017-10-05 | Emc Corporation | Virtual machine storage management queue |
US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
US10133503B1 (en) | 2016-05-02 | 2018-11-20 | Pure Storage, Inc. | Selecting a deduplication process based on a difference between performance metrics |
US10452297B1 (en) | 2016-05-02 | 2019-10-22 | Pure Storage, Inc. | Generating and optimizing summary index levels in a deduplication storage system |
US10528427B1 (en) * | 2016-06-09 | 2020-01-07 | Intuit, Inc. | Self-healing system for distributed services and applications |
EP3472675B1 (en) * | 2016-06-16 | 2022-04-13 | Honeywell International Inc. | Hardware assist mechanisms for alive detection of redundant devices |
CN107526536B (zh) * | 2016-06-22 | 2020-11-27 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和系统 |
US10996967B1 (en) * | 2016-06-24 | 2021-05-04 | EMC IP Holding Company LLC | Presenting virtual disks as dual ported drives to a virtual storage system |
US10203903B2 (en) | 2016-07-26 | 2019-02-12 | Pure Storage, Inc. | Geometry based, space aware shelf/writegroup evacuation |
US10467195B2 (en) * | 2016-09-06 | 2019-11-05 | Samsung Electronics Co., Ltd. | Adaptive caching replacement manager with dynamic updating granulates and partitions for shared flash-based storage system |
US10455045B2 (en) | 2016-09-06 | 2019-10-22 | Samsung Electronics Co., Ltd. | Automatic data replica manager in distributed caching and data processing systems |
US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
US10298442B2 (en) | 2016-09-27 | 2019-05-21 | International Business Machines Corporation | Error recovery process |
US10191662B2 (en) | 2016-10-04 | 2019-01-29 | Pure Storage, Inc. | Dynamic allocation of segments in a flash storage system |
US10545861B2 (en) | 2016-10-04 | 2020-01-28 | Pure Storage, Inc. | Distributed integrated high-speed solid-state non-volatile random-access memory |
US10162523B2 (en) | 2016-10-04 | 2018-12-25 | Pure Storage, Inc. | Migrating data between volumes using virtual copy operation |
US10756816B1 (en) | 2016-10-04 | 2020-08-25 | Pure Storage, Inc. | Optimized fibre channel and non-volatile memory express access |
KR102576869B1 (ko) * | 2016-10-10 | 2023-09-11 | 한국전자통신연구원 | 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 서비스 기능 경로 설정 장치 및 방법 |
US10481798B2 (en) | 2016-10-28 | 2019-11-19 | Pure Storage, Inc. | Efficient flash management for multiple controllers |
US10185505B1 (en) | 2016-10-28 | 2019-01-22 | Pure Storage, Inc. | Reading a portion of data to replicate a volume based on sequence numbers |
US10359942B2 (en) | 2016-10-31 | 2019-07-23 | Pure Storage, Inc. | Deduplication aware scalable content placement |
US10452290B2 (en) | 2016-12-19 | 2019-10-22 | Pure Storage, Inc. | Block consolidation in a direct-mapped flash storage system |
US11550481B2 (en) | 2016-12-19 | 2023-01-10 | Pure Storage, Inc. | Efficiently writing data in a zoned drive storage system |
US10768986B2 (en) * | 2017-01-06 | 2020-09-08 | International Business Machines Corporation | Management and utilization of storage capacities in a converged system |
US10824355B2 (en) | 2017-01-10 | 2020-11-03 | International Business Machines Corporation | Hierarchical management of storage capacity and data volumes in a converged system |
US10938901B2 (en) | 2017-01-11 | 2021-03-02 | International Business Machines Corporation | Management and utilization of data volumes in a converged system |
US11093146B2 (en) | 2017-01-12 | 2021-08-17 | Pure Storage, Inc. | Automatic load rebalancing of a write group |
US10430307B2 (en) * | 2017-02-05 | 2019-10-01 | International Business Machines Corporation | In-line announcement of impending critical events within a distributed storage environment |
US10949308B2 (en) | 2017-03-15 | 2021-03-16 | Commvault Systems, Inc. | Application aware backup of virtual machines |
US11032350B2 (en) | 2017-03-15 | 2021-06-08 | Commvault Systems, Inc. | Remote commands framework to control clients |
US11108858B2 (en) | 2017-03-28 | 2021-08-31 | Commvault Systems, Inc. | Archiving mail servers via a simple mail transfer protocol (SMTP) server |
US11074138B2 (en) | 2017-03-29 | 2021-07-27 | Commvault Systems, Inc. | Multi-streaming backup operations for mailboxes |
US10528488B1 (en) | 2017-03-30 | 2020-01-07 | Pure Storage, Inc. | Efficient name coding |
US11221939B2 (en) | 2017-03-31 | 2022-01-11 | Commvault Systems, Inc. | Managing data from internet of things devices in a vehicle |
US11010261B2 (en) | 2017-03-31 | 2021-05-18 | Commvault Systems, Inc. | Dynamically allocating streams during restoration of data |
US11294786B2 (en) | 2017-03-31 | 2022-04-05 | Commvault Systems, Inc. | Management of internet of things devices |
US10552294B2 (en) | 2017-03-31 | 2020-02-04 | Commvault Systems, Inc. | Management of internet of things devices |
US11403019B2 (en) | 2017-04-21 | 2022-08-02 | Pure Storage, Inc. | Deduplication-aware per-tenant encryption |
US10146646B1 (en) | 2017-04-27 | 2018-12-04 | EMC IP Holding Company LLC | Synchronizing RAID configuration changes across storage processors |
US10944671B2 (en) | 2017-04-27 | 2021-03-09 | Pure Storage, Inc. | Efficient data forwarding in a networked device |
US10402266B1 (en) | 2017-07-31 | 2019-09-03 | Pure Storage, Inc. | Redundant array of independent disks in a direct-mapped flash storage system |
CN110019502B (zh) | 2017-08-29 | 2023-03-21 | 阿里巴巴集团控股有限公司 | 在主数据库和备数据库之间的同步方法、数据库系统和设备 |
US10831935B2 (en) | 2017-08-31 | 2020-11-10 | Pure Storage, Inc. | Encryption management with host-side data reduction |
US10592293B2 (en) | 2017-08-31 | 2020-03-17 | Cisco Technology, Inc. | Tenant-specific policy generation and enforcement within containers |
US10776202B1 (en) | 2017-09-22 | 2020-09-15 | Pure Storage, Inc. | Drive, blade, or data shard decommission via RAID geometry shrinkage |
US10789211B1 (en) | 2017-10-04 | 2020-09-29 | Pure Storage, Inc. | Feature-based deduplication |
US10977274B2 (en) * | 2017-10-05 | 2021-04-13 | Sungard Availability Services, Lp | Unified replication and recovery |
US10884919B2 (en) | 2017-10-31 | 2021-01-05 | Pure Storage, Inc. | Memory management in a storage system |
US10860475B1 (en) | 2017-11-17 | 2020-12-08 | Pure Storage, Inc. | Hybrid flash translation layer |
US10664367B2 (en) * | 2017-11-30 | 2020-05-26 | International Business Machines Corporation | Shared storage parity on RAID |
US11144638B1 (en) | 2018-01-18 | 2021-10-12 | Pure Storage, Inc. | Method for storage system detection and alerting on potential malicious action |
US10970395B1 (en) | 2018-01-18 | 2021-04-06 | Pure Storage, Inc | Security threat monitoring for a storage system |
US11010233B1 (en) | 2018-01-18 | 2021-05-18 | Pure Storage, Inc | Hardware-based system monitoring |
US10467527B1 (en) | 2018-01-31 | 2019-11-05 | Pure Storage, Inc. | Method and apparatus for artificial intelligence acceleration |
US11036596B1 (en) | 2018-02-18 | 2021-06-15 | Pure Storage, Inc. | System for delaying acknowledgements on open NAND locations until durability has been confirmed |
US11494109B1 (en) | 2018-02-22 | 2022-11-08 | Pure Storage, Inc. | Erase block trimming for heterogenous flash memory storage devices |
US11934322B1 (en) | 2018-04-05 | 2024-03-19 | Pure Storage, Inc. | Multiple encryption keys on storage drives |
US11086738B2 (en) * | 2018-04-24 | 2021-08-10 | EMC IP Holding Company LLC | System and method to automate solution level contextual support |
US11385792B2 (en) | 2018-04-27 | 2022-07-12 | Pure Storage, Inc. | High availability controller pair transitioning |
US10678433B1 (en) | 2018-04-27 | 2020-06-09 | Pure Storage, Inc. | Resource-preserving system upgrade |
US10678436B1 (en) | 2018-05-29 | 2020-06-09 | Pure Storage, Inc. | Using a PID controller to opportunistically compress more data during garbage collection |
US11436023B2 (en) | 2018-05-31 | 2022-09-06 | Pure Storage, Inc. | Mechanism for updating host file system and flash translation layer based on underlying NAND technology |
US10776046B1 (en) | 2018-06-08 | 2020-09-15 | Pure Storage, Inc. | Optimized non-uniform memory access |
US11281577B1 (en) | 2018-06-19 | 2022-03-22 | Pure Storage, Inc. | Garbage collection tuning for low drive wear |
US11869586B2 (en) | 2018-07-11 | 2024-01-09 | Pure Storage, Inc. | Increased data protection by recovering data from partially-failed solid-state devices |
US10877844B2 (en) | 2018-07-11 | 2020-12-29 | Seagate Technology Llc | Using deletable user data storage space to recover from drive array failure |
US10891198B2 (en) | 2018-07-30 | 2021-01-12 | Commvault Systems, Inc. | Storing data to cloud libraries in cloud native formats |
CN109032849B (zh) * | 2018-08-30 | 2021-03-23 | 百度在线网络技术(北京)有限公司 | 热备份系统、热备份方法和计算机设备 |
US11194759B2 (en) | 2018-09-06 | 2021-12-07 | Pure Storage, Inc. | Optimizing local data relocation operations of a storage device of a storage system |
US11133076B2 (en) | 2018-09-06 | 2021-09-28 | Pure Storage, Inc. | Efficient relocation of data between storage devices of a storage system |
US11599422B2 (en) | 2018-10-16 | 2023-03-07 | EMC IP Holding Company LLC | System and method for device independent backup in distributed system |
US10846216B2 (en) | 2018-10-25 | 2020-11-24 | Pure Storage, Inc. | Scalable garbage collection |
US11113409B2 (en) | 2018-10-26 | 2021-09-07 | Pure Storage, Inc. | Efficient rekey in a transparent decrypting storage array |
US11194473B1 (en) | 2019-01-23 | 2021-12-07 | Pure Storage, Inc. | Programming frequently read data to low latency portions of a solid-state storage array |
US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
US10951469B2 (en) * | 2019-01-31 | 2021-03-16 | EMC IP Holding Company LLC | Consumption-based elastic deployment and reconfiguration of hyper-converged software-defined storage |
US10708135B1 (en) | 2019-01-31 | 2020-07-07 | EMC IP Holding Company LLC | Unified and automated installation, deployment, configuration, and management of software-defined storage assets |
US11588633B1 (en) | 2019-03-15 | 2023-02-21 | Pure Storage, Inc. | Decommissioning keys in a decryption storage system |
US11194676B2 (en) * | 2019-03-26 | 2021-12-07 | International Business Machines Corporation | Data synchronization in high availability storage environments |
US11334254B2 (en) | 2019-03-29 | 2022-05-17 | Pure Storage, Inc. | Reliability based flash page sizing |
US11775189B2 (en) | 2019-04-03 | 2023-10-03 | Pure Storage, Inc. | Segment level heterogeneity |
US11397674B1 (en) | 2019-04-03 | 2022-07-26 | Pure Storage, Inc. | Optimizing garbage collection across heterogeneous flash devices |
US10990480B1 (en) | 2019-04-05 | 2021-04-27 | Pure Storage, Inc. | Performance of RAID rebuild operations by a storage group controller of a storage system |
US11099986B2 (en) | 2019-04-12 | 2021-08-24 | Pure Storage, Inc. | Efficient transfer of memory contents |
US10862761B2 (en) | 2019-04-29 | 2020-12-08 | EMC IP Holding Company LLC | System and method for management of distributed systems |
US11494273B2 (en) | 2019-04-30 | 2022-11-08 | Commvault Systems, Inc. | Holistically protecting serverless applications across one or more cloud computing environments |
US11972434B2 (en) * | 2019-05-24 | 2024-04-30 | Bread Financial Payments, Inc. | Distributed credit account information |
US11487665B2 (en) | 2019-06-05 | 2022-11-01 | Pure Storage, Inc. | Tiered caching of data in a storage system |
US11269734B2 (en) | 2019-06-17 | 2022-03-08 | Commvault Systems, Inc. | Data storage management system for multi-cloud protection, recovery, and migration of databases-as-a-service and/or serverless database management systems |
US11269802B2 (en) | 2019-06-24 | 2022-03-08 | Western Digital Technologies, Inc. | Lightweight proxy for handling SCSI commands in an active array-standby array configuration |
US11281394B2 (en) | 2019-06-24 | 2022-03-22 | Pure Storage, Inc. | Replication across partitioning schemes in a distributed storage system |
US10929046B2 (en) | 2019-07-09 | 2021-02-23 | Pure Storage, Inc. | Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device |
US11561866B2 (en) | 2019-07-10 | 2023-01-24 | Commvault Systems, Inc. | Preparing containerized applications for backup using a backup services container and a backup services container-orchestration pod |
US11422751B2 (en) | 2019-07-18 | 2022-08-23 | Pure Storage, Inc. | Creating a virtual storage system |
US11301557B2 (en) | 2019-07-19 | 2022-04-12 | Dell Products L.P. | System and method for data processing device management |
US11086713B1 (en) | 2019-07-23 | 2021-08-10 | Pure Storage, Inc. | Optimized end-to-end integrity storage system |
US11307940B2 (en) | 2019-08-13 | 2022-04-19 | Kyndryl, Inc. | Cognitive data backup |
US11963321B2 (en) | 2019-09-11 | 2024-04-16 | Pure Storage, Inc. | Low profile latching mechanism |
US11003357B2 (en) * | 2019-09-13 | 2021-05-11 | EMC IP Holding Company LLC | Managing single path communication between a host and a storage system |
US11144374B2 (en) | 2019-09-20 | 2021-10-12 | Hewlett Packard Enterprise Development Lp | Data availability in a constrained deployment of a high-availability system in the presence of pending faults |
US11403043B2 (en) | 2019-10-15 | 2022-08-02 | Pure Storage, Inc. | Efficient data compression by grouping similar data within a data segment |
US11394782B2 (en) | 2019-11-17 | 2022-07-19 | Daniel Donahue | Flight management systems and methods |
US11500788B2 (en) | 2019-11-22 | 2022-11-15 | Pure Storage, Inc. | Logical address based authorization of operations with respect to a storage system |
US11687418B2 (en) | 2019-11-22 | 2023-06-27 | Pure Storage, Inc. | Automatic generation of recovery plans specific to individual storage elements |
US11941116B2 (en) | 2019-11-22 | 2024-03-26 | Pure Storage, Inc. | Ransomware-based data protection parameter modification |
US11651075B2 (en) | 2019-11-22 | 2023-05-16 | Pure Storage, Inc. | Extensible attack monitoring by a storage system |
US11720714B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Inter-I/O relationship based detection of a security threat to a storage system |
US11657155B2 (en) | 2019-11-22 | 2023-05-23 | Pure Storage, Inc | Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system |
US11625481B2 (en) | 2019-11-22 | 2023-04-11 | Pure Storage, Inc. | Selective throttling of operations potentially related to a security threat to a storage system |
US11720692B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Hardware token based management of recovery datasets for a storage system |
US11520907B1 (en) | 2019-11-22 | 2022-12-06 | Pure Storage, Inc. | Storage system snapshot retention based on encrypted data |
US11615185B2 (en) | 2019-11-22 | 2023-03-28 | Pure Storage, Inc. | Multi-layer security threat detection for a storage system |
US11755751B2 (en) | 2019-11-22 | 2023-09-12 | Pure Storage, Inc. | Modify access restrictions in response to a possible attack against data stored by a storage system |
US11645162B2 (en) | 2019-11-22 | 2023-05-09 | Pure Storage, Inc. | Recovery point determination for data restoration in a storage system |
US11341236B2 (en) | 2019-11-22 | 2022-05-24 | Pure Storage, Inc. | Traffic-based detection of a security threat to a storage system |
US11675898B2 (en) | 2019-11-22 | 2023-06-13 | Pure Storage, Inc. | Recovery dataset management for security threat monitoring |
US11221785B2 (en) * | 2019-12-03 | 2022-01-11 | Western Digital Technologies, Inc. | Managing replication state for deleted objects |
US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
US11422900B2 (en) | 2020-03-02 | 2022-08-23 | Commvault Systems, Inc. | Platform-agnostic containerized application data protection |
US11321188B2 (en) | 2020-03-02 | 2022-05-03 | Commvault Systems, Inc. | Platform-agnostic containerized application data protection |
US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
US11297006B1 (en) * | 2020-06-03 | 2022-04-05 | Cisco Technology, Inc. | Use of virtual lanes to solve credit stall on target ports in FC SAN |
CN111967062A (zh) * | 2020-08-21 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 基于区块链的数据处理系统、方法及装置 |
US11314687B2 (en) | 2020-09-24 | 2022-04-26 | Commvault Systems, Inc. | Container data mover for migrating data between distributed data storage systems integrated with application orchestrators |
US11934875B2 (en) | 2020-12-09 | 2024-03-19 | Dell Products L.P. | Method and system for maintaining composed systems |
WO2022132947A1 (en) * | 2020-12-15 | 2022-06-23 | Nebulon, Inc. | Allocation, distribution, and configuration of volumes in storage systems |
US11902089B2 (en) * | 2020-12-18 | 2024-02-13 | Dell Products L.P. | Automated networking device replacement system |
US20220237051A1 (en) * | 2021-01-28 | 2022-07-28 | Dell Products L.P. | Method and system for providing composable infrastructure capabilities |
US11604706B2 (en) | 2021-02-02 | 2023-03-14 | Commvault Systems, Inc. | Back up and restore related data on different cloud storage tiers |
US11294782B1 (en) * | 2021-03-22 | 2022-04-05 | EMC IP Holding Company LLC | Failover affinity rule modification based on node health information |
US11934670B2 (en) | 2021-03-31 | 2024-03-19 | Netapp, Inc. | Performing various operations at the granularity of a consistency group within a cross-site storage solution |
US11481139B1 (en) | 2021-03-31 | 2022-10-25 | Netapp, Inc. | Methods and systems to interface between a multi-site distributed storage system and an external mediator to efficiently process events related to continuity |
US11360867B1 (en) | 2021-03-31 | 2022-06-14 | Netapp, Inc. | Re-aligning data replication configuration of primary and secondary data serving entities of a cross-site storage solution after a failover event |
US11550679B2 (en) | 2021-03-31 | 2023-01-10 | Netapp, Inc. | Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system |
US11740811B2 (en) | 2021-03-31 | 2023-08-29 | Netapp, Inc. | Reseeding a mediator of a cross-site storage solution |
US11709743B2 (en) | 2021-03-31 | 2023-07-25 | Netapp, Inc. | Methods and systems for a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system |
US20220317898A1 (en) * | 2021-04-03 | 2022-10-06 | EMC IP Holding Company LLC | Managing Application Storage Resource Allocations Based on Application Specific Storage Policies |
US11803318B2 (en) * | 2021-04-21 | 2023-10-31 | EMC IP Holding Company LLC | Active-passive configuration for synchronous remote replication in an active-active metro cluster |
US11409622B1 (en) | 2021-04-23 | 2022-08-09 | Netapp, Inc. | Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system without using an external mediator |
US11893261B2 (en) | 2021-05-05 | 2024-02-06 | Netapp, Inc. | Usage of OP logs to synchronize across primary and secondary storage clusters of a cross-site distributed storage system and lightweight OP logging |
US20220398520A1 (en) * | 2021-06-11 | 2022-12-15 | Dell Products L.P. | Infrastructure resource capacity management with intelligent expansion trigger computation |
US11593223B1 (en) | 2021-09-02 | 2023-02-28 | Commvault Systems, Inc. | Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants |
US11892982B2 (en) | 2021-10-20 | 2024-02-06 | Netapp, Inc. | Facilitating immediate performance of volume resynchronization with the use of passive cache entries |
US11907562B2 (en) | 2022-07-11 | 2024-02-20 | Netapp, Inc. | Methods and storage nodes to decrease delay in resuming input output (I/O) operations after a non-disruptive event for a storage object of a distributed storage system by utilizing asynchronous inflight replay of the I/O operations |
Family Cites Families (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6A (en) * | 1836-08-10 | Thomas blanghard | ||
US4916608A (en) | 1986-05-30 | 1990-04-10 | International Business Machines Corporation | Provision of virtual storage resources to an operating system control program |
US5113515A (en) | 1989-02-03 | 1992-05-12 | Digital Equipment Corporation | Virtual instruction cache system using length responsive decoded instruction shifting and merging with prefetch buffer outputs to fill instruction buffer |
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
CA2101848A1 (en) | 1991-02-06 | 1992-08-07 | Robert Walsh | Disk drive array memory system using nonuniform disk drives |
EP0522488B1 (en) * | 1991-07-10 | 2002-02-20 | Hitachi, Ltd. | Method of sorting on distributed database system and method of accessing thereto |
US5325505A (en) | 1991-09-04 | 1994-06-28 | Storage Technology Corporation | Intelligent storage manager for data storage apparatus having simulation capability |
JP3160106B2 (ja) * | 1991-12-23 | 2001-04-23 | ヒュンダイ エレクトロニクス アメリカ | ディスクアレーの区分け方法 |
JP2839060B2 (ja) * | 1992-03-02 | 1998-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ処理システムおよびデータ処理方法 |
US5394532A (en) | 1992-04-15 | 1995-02-28 | Storage Technology Corporation | Disk drive array memory system having instant format capability |
US5493660A (en) * | 1992-10-06 | 1996-02-20 | Hewlett-Packard Company | Software assisted hardware TLB miss handler |
US5455834A (en) * | 1993-06-14 | 1995-10-03 | Hal Computer Systems, Inc. | Fault tolerant address translation method and system |
US5701462A (en) * | 1993-12-29 | 1997-12-23 | Microsoft Corporation | Distributed file system providing a unified name space with efficient name resolution |
US5729710A (en) * | 1994-06-22 | 1998-03-17 | International Business Machines Corporation | Method and apparatus for management of mapped and unmapped regions of memory in a microkernel data processing system |
EP0709779B1 (en) * | 1994-10-31 | 2001-05-30 | International Business Machines Corporation | Virtual shared disks with application-transparent recovery |
US5790773A (en) | 1995-12-29 | 1998-08-04 | Symbios, Inc. | Method and apparatus for generating snapshot copies for data backup in a raid subsystem |
US6104871A (en) | 1996-04-30 | 2000-08-15 | International Business Machines Corporation | Utilizing batch requests to present membership changes to process groups |
US5704032A (en) * | 1996-04-30 | 1997-12-30 | International Business Machines Corporation | Method for group leader recovery in a distributed computing environment |
US6237009B1 (en) * | 1996-10-11 | 2001-05-22 | Sun Microsystems, Inc. | Lease renewal service |
US5909540A (en) * | 1996-11-22 | 1999-06-01 | Mangosoft Corporation | System and method for providing highly available data storage using globally addressable memory |
US7136903B1 (en) * | 1996-11-22 | 2006-11-14 | Mangosoft Intellectual Property, Inc. | Internet-based shared file service with native PC client access and semantics and distributed access control |
US5897661A (en) | 1997-02-25 | 1999-04-27 | International Business Machines Corporation | Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal storage of metadata information |
US6067608A (en) * | 1997-04-15 | 2000-05-23 | Bull Hn Information Systems Inc. | High performance mechanism for managing allocation of virtual memory buffers to virtual processes on a least recently used basis |
FR2762695B1 (fr) * | 1997-04-29 | 1999-05-28 | Bull Sa | Procede et dispositif de connexion de l'unite centrale d'un systeme de traitement de donnees a un sous-systeme de stockage de donnees a redondance |
US6092061A (en) * | 1997-08-15 | 2000-07-18 | International Business Machines Corporation | Data partitioning by co-locating referenced and referencing records |
US6073220A (en) | 1997-09-03 | 2000-06-06 | Duocor, Inc. | Apparatus and method for providing a transparent disk drive back-up |
US5960451A (en) * | 1997-09-16 | 1999-09-28 | Hewlett-Packard Company | System and method for reporting available capacity in a data storage system with variable consumption characteristics |
US5996086A (en) | 1997-10-14 | 1999-11-30 | Lsi Logic Corporation | Context-based failover architecture for redundant servers |
US6202157B1 (en) * | 1997-12-08 | 2001-03-13 | Entrust Technologies Limited | Computer network security system and method having unilateral enforceable security policy provision |
US6145028A (en) * | 1997-12-11 | 2000-11-07 | Ncr Corporation | Enhanced multi-pathing to an array of storage devices |
US6567889B1 (en) | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
US6247077B1 (en) | 1998-02-06 | 2001-06-12 | Ncr Corporation | Highly-scalable parallel processing computer system architecture |
US6185695B1 (en) * | 1998-04-09 | 2001-02-06 | Sun Microsystems, Inc. | Method and apparatus for transparent server failover for highly available objects |
US6101541A (en) * | 1998-04-21 | 2000-08-08 | International Business Machines Corporation | Active polling by network LDAP directory |
US6052720A (en) * | 1998-05-14 | 2000-04-18 | Sun Microsystems, Inc. | Generic schema for storing configuration information on a server computer |
US6625650B2 (en) | 1998-06-27 | 2003-09-23 | Intel Corporation | System for multi-layer broadband provisioning in computer networks |
US6421711B1 (en) * | 1998-06-29 | 2002-07-16 | Emc Corporation | Virtual ports for data transferring of a data storage system |
US6295575B1 (en) * | 1998-06-29 | 2001-09-25 | Emc Corporation | Configuring vectors of logical storage units for data storage partitioning and sharing |
US6182142B1 (en) * | 1998-07-10 | 2001-01-30 | Encommerce, Inc. | Distributed access management of information resources |
EP2200032A3 (en) * | 1998-09-18 | 2010-09-22 | Kabushiki Kaisha Toshiba | Information recording method, information recording device, and information recording medium |
US6148414A (en) * | 1998-09-24 | 2000-11-14 | Seek Systems, Inc. | Methods and systems for implementing shared disk array management functions |
JP4412685B2 (ja) * | 1998-09-28 | 2010-02-10 | 株式会社日立製作所 | 記憶制御装置及びこれを用いたデータ格納システムの取り扱い方法 |
US6332177B1 (en) | 1998-10-19 | 2001-12-18 | Lsi Logic Corporation | N-way raid 1 on M drives block mapping |
WO2000029954A1 (en) | 1998-11-14 | 2000-05-25 | Mti Technology Corporation | Logical unit mapping in a storage area network (san) environment |
US6366931B1 (en) | 1998-11-20 | 2002-04-02 | Hewlett-Packard Company | Apparatus for and method of non-linear constraint optimization in storage system configuration |
US6542961B1 (en) * | 1998-12-22 | 2003-04-01 | Hitachi, Ltd. | Disk storage system including a switch |
JP2000242434A (ja) * | 1998-12-22 | 2000-09-08 | Hitachi Ltd | 記憶装置システム |
JP4400895B2 (ja) * | 1999-01-07 | 2010-01-20 | 株式会社日立製作所 | ディスクアレイ制御装置 |
US6442666B1 (en) * | 1999-01-28 | 2002-08-27 | Infineon Technologies Ag | Techniques for improving memory access in a virtual memory system |
IL128814A (en) | 1999-03-03 | 2004-09-27 | Packet Technologies Ltd | Local network security |
US6484229B1 (en) | 1999-03-05 | 2002-11-19 | Hitachi, Ltd. | Magnetic disk apparatus |
US6400730B1 (en) * | 1999-03-10 | 2002-06-04 | Nishan Systems, Inc. | Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network |
US6640278B1 (en) * | 1999-03-25 | 2003-10-28 | Dell Products L.P. | Method for configuration and management of storage resources in a storage network |
IE20000203A1 (en) * | 1999-03-25 | 2001-02-21 | Converge Net Technologies Inc | Storage domain management system |
US6654830B1 (en) * | 1999-03-25 | 2003-11-25 | Dell Products L.P. | Method and system for managing data migration for a storage system |
US6289376B1 (en) * | 1999-03-31 | 2001-09-11 | Diva Systems Corp. | Tightly-coupled disk-to-CPU storage server |
US6275898B1 (en) * | 1999-05-13 | 2001-08-14 | Lsi Logic Corporation | Methods and structure for RAID level migration within a logical unit |
US6208543B1 (en) * | 1999-05-18 | 2001-03-27 | Advanced Micro Devices, Inc. | Translation lookaside buffer (TLB) including fast hit signal generation circuitry |
US6453404B1 (en) * | 1999-05-27 | 2002-09-17 | Microsoft Corporation | Distributed data cache with memory allocation model |
US6594671B1 (en) * | 1999-06-14 | 2003-07-15 | International Business Machines Corporation | Separating privileged functions from non-privileged functions in a server instance |
US6567818B1 (en) * | 1999-06-14 | 2003-05-20 | International Business Machines Corporation | Employing management policies to manage instances of objects |
US6587874B1 (en) * | 1999-06-29 | 2003-07-01 | Cisco Technology, Inc. | Directory assisted autoinstall of network devices |
JP3952640B2 (ja) * | 1999-09-07 | 2007-08-01 | 株式会社日立製作所 | データバックアップ方法、メインフレーム系ストレージシステムおよびメインフレームホストコンピュータ |
US6725307B1 (en) * | 1999-09-23 | 2004-04-20 | International Business Machines Corporation | Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system |
US6671776B1 (en) * | 1999-10-28 | 2003-12-30 | Lsi Logic Corporation | Method and system for determining and displaying the topology of a storage array network having multiple hosts and computer readable medium for generating the topology |
US6714952B2 (en) | 1999-11-10 | 2004-03-30 | Emc Corporation | Method for backup and restore of a multi-lingual network file server |
US6490619B1 (en) * | 1999-12-07 | 2002-12-03 | International Business Machines Corporation | Method and system for managing multiple lightweight directory access protocol directory servers |
US6571354B1 (en) | 1999-12-15 | 2003-05-27 | Dell Products, L.P. | Method and apparatus for storage unit replacement according to array priority |
US6742034B1 (en) * | 1999-12-16 | 2004-05-25 | Dell Products L.P. | Method for storage device masking in a storage area network and storage controller and storage subsystem for using such a method |
DE60042640D1 (de) * | 1999-12-17 | 2009-09-10 | Nxp Bv | Datenprozessor mit cachespeicher |
US7328233B2 (en) * | 2000-01-19 | 2008-02-05 | Corybant, Inc. | Method and apparatus for implementing an active information model |
US6526478B1 (en) | 2000-02-02 | 2003-02-25 | Lsi Logic Corporation | Raid LUN creation using proportional disk mapping |
US6766397B2 (en) * | 2000-02-07 | 2004-07-20 | Emc Corporation | Controlling access to a storage device |
US6636239B1 (en) | 2000-02-24 | 2003-10-21 | Sanavigator, Inc. | Method of operating a graphical user interface to selectively enable and disable a datapath in a network |
US6810396B1 (en) * | 2000-03-09 | 2004-10-26 | Emc Corporation | Managed access of a backup storage system coupled to a network |
US6691244B1 (en) | 2000-03-14 | 2004-02-10 | Sun Microsystems, Inc. | System and method for comprehensive availability management in a high-availability computer system |
US6671280B1 (en) * | 2000-03-29 | 2003-12-30 | International Business Machines Corporation | Network processor for multiprotocol data flows |
US6629264B1 (en) | 2000-03-30 | 2003-09-30 | Hewlett-Packard Development Company, L.P. | Controller-based remote copy system with logical unit grouping |
US6658590B1 (en) | 2000-03-30 | 2003-12-02 | Hewlett-Packard Development Company, L.P. | Controller-based transaction logging system for data recovery in a storage area network |
AU2001246799A1 (en) * | 2000-04-18 | 2001-10-30 | Storeage Networking Technologies | Storage virtualization in a storage area network |
US6598174B1 (en) * | 2000-04-26 | 2003-07-22 | Dell Products L.P. | Method and apparatus for storage unit replacement in non-redundant array |
US6854069B2 (en) | 2000-05-02 | 2005-02-08 | Sun Microsystems Inc. | Method and system for achieving high availability in a networked computer system |
US6971016B1 (en) * | 2000-05-31 | 2005-11-29 | International Business Machines Corporation | Authenticated access to storage area network |
US6961838B2 (en) | 2000-06-02 | 2005-11-01 | Hewlett-Packard Development Company, L.P. | Generating updated virtual disks using distributed mapping tables accessible by mapping agents and managed by a centralized controller |
JP2001350707A (ja) * | 2000-06-06 | 2001-12-21 | Hitachi Ltd | 情報処理システム、記憶装置の割り当て方法 |
EP1162788B1 (en) * | 2000-06-09 | 2012-11-21 | Broadcom Corporation | Trunking and mirroring across stacked gigabit switches |
US6779094B2 (en) | 2000-06-19 | 2004-08-17 | Storage Technology Corporation | Apparatus and method for instant copy of data by writing new data to an additional physical storage area |
US6813686B1 (en) * | 2000-06-27 | 2004-11-02 | Emc Corporation | Method and apparatus for identifying logical volumes in multiple element computer storage domains |
US6625747B1 (en) * | 2000-06-30 | 2003-09-23 | Dell Products L.P. | Computer storage system and failover method |
US8204999B2 (en) | 2000-07-10 | 2012-06-19 | Oracle International Corporation | Query string processing |
US7080077B2 (en) * | 2000-07-10 | 2006-07-18 | Oracle International Corporation | Localized access |
US6651154B1 (en) * | 2000-07-11 | 2003-11-18 | International Business Machines Corporation | Method, system, and program for expanding the storage space in an array of storage units |
US6618798B1 (en) * | 2000-07-11 | 2003-09-09 | International Business Machines Corporation | Method, system, program, and data structures for mapping logical units to a storage space comprises of at least one array of storage units |
US6775230B1 (en) * | 2000-07-18 | 2004-08-10 | Hitachi, Ltd. | Apparatus and method for transmitting frames via a switch in a storage area network |
AU2001278944A1 (en) | 2000-08-07 | 2002-02-18 | Inrange Technologies Corporation | Method and apparatus for imparting fault tolerance in a director switch |
US7330806B2 (en) * | 2000-08-08 | 2008-02-12 | Reohr Iii John | Virtualized network |
US6609213B1 (en) | 2000-08-10 | 2003-08-19 | Dell Products, L.P. | Cluster-based system and method of recovery from server failures |
US6952734B1 (en) * | 2000-08-21 | 2005-10-04 | Hewlett-Packard Development Company, L.P. | Method for recovery of paths between storage area network nodes with probationary period and desperation repair |
US6977927B1 (en) * | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
US6804819B1 (en) * | 2000-09-18 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method, system, and computer program product for a data propagation platform and applications of same |
US8949471B2 (en) * | 2000-11-02 | 2015-02-03 | Oracle America, Inc. | TCP/UDP acceleration |
JP4073161B2 (ja) * | 2000-12-06 | 2008-04-09 | 株式会社日立製作所 | ディスクストレージのアクセスシステム |
US20020073257A1 (en) | 2000-12-07 | 2002-06-13 | Ibm Corporation | Transferring foreign protocols across a system area network |
US7711818B2 (en) * | 2000-12-22 | 2010-05-04 | Oracle International Corporation | Support for multiple data stores |
US6871296B2 (en) * | 2000-12-29 | 2005-03-22 | International Business Machines Corporation | Highly available TCP systems with fail over connections |
US20020128815A1 (en) * | 2001-01-06 | 2002-09-12 | Merchant Arif A. | Automatic configuration of a data storage system |
US6857059B2 (en) | 2001-01-11 | 2005-02-15 | Yottayotta, Inc. | Storage virtualization system and methods |
US6968463B2 (en) * | 2001-01-17 | 2005-11-22 | Hewlett-Packard Development Company, L.P. | System for controlling access to resources in a storage area network |
US6769071B1 (en) * | 2001-01-23 | 2004-07-27 | Adaptec, Inc. | Method and apparatus for intelligent failover in a multi-path system |
US6594745B2 (en) * | 2001-01-31 | 2003-07-15 | Hewlett-Packard Development Company, L.P. | Mirroring agent accessible to remote host computers, and accessing remote data-storage devices, via a communcations medium |
US6880062B1 (en) | 2001-02-13 | 2005-04-12 | Candera, Inc. | Data mover mechanism to achieve SAN RAID at wire speed |
JP4457184B2 (ja) | 2001-02-13 | 2010-04-28 | ネットアップ,インコーポレイテッド | ストレージシステムにおけるフェイルオーバー処理 |
US7415671B2 (en) * | 2001-06-08 | 2008-08-19 | Computer Associates Think, Inc. | Interactive hierarchical status display |
DE10134540C1 (de) * | 2001-07-16 | 2003-03-06 | Siemens Ag | Magnetresonanzgerät mit einem Erzeuger mechanischer Schwingungen |
US6920494B2 (en) * | 2001-10-05 | 2005-07-19 | International Business Machines Corporation | Storage area network methods and apparatus with virtual SAN recognition |
-
2002
- 2002-02-13 JP JP2002564739A patent/JP4457184B2/ja not_active Expired - Lifetime
- 2002-02-13 AU AU2002306495A patent/AU2002306495A1/en not_active Abandoned
- 2002-02-13 EP EP02707860A patent/EP1370947A4/en not_active Withdrawn
- 2002-02-13 EP EP02718983.6A patent/EP1370950B1/en not_active Expired - Lifetime
- 2002-02-13 EP EP02709592A patent/EP1370945B1/en not_active Expired - Lifetime
- 2002-02-13 WO PCT/US2002/004908 patent/WO2002065290A1/en active Application Filing
- 2002-02-13 JP JP2002564745A patent/JP4457185B2/ja not_active Expired - Lifetime
- 2002-02-13 AT AT02709592T patent/ATE480822T1/de not_active IP Right Cessation
- 2002-02-13 US US10/076,855 patent/US7415506B2/en not_active Expired - Lifetime
- 2002-02-13 US US10/077,696 patent/US7594024B2/en active Active
- 2002-02-13 US US10/077,482 patent/US6801992B2/en not_active Expired - Lifetime
- 2002-02-13 EP EP02740113A patent/EP1368742A4/en not_active Ceased
- 2002-02-13 WO PCT/US2002/004472 patent/WO2002065249A2/en not_active Application Discontinuation
- 2002-02-13 WO PCT/US2002/004510 patent/WO2002065309A1/en not_active Application Discontinuation
- 2002-02-13 DE DE60237583T patent/DE60237583D1/de not_active Expired - Lifetime
- 2002-02-13 WO PCT/US2002/005504 patent/WO2002065298A1/en active Application Filing
- 2002-02-13 US US10/076,906 patent/US7039827B2/en not_active Expired - Lifetime
-
2004
- 2004-08-26 US US10/928,081 patent/US7065616B2/en not_active Expired - Lifetime
-
2006
- 2006-01-03 US US11/325,578 patent/US7640451B2/en not_active Expired - Lifetime
-
2013
- 2013-04-26 US US13/871,718 patent/US20130297902A1/en not_active Abandoned
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005115581A (ja) * | 2003-10-07 | 2005-04-28 | Hitachi Ltd | ストレージパス制御方法 |
JP4492084B2 (ja) * | 2003-10-07 | 2010-06-30 | 株式会社日立製作所 | ストレージパス制御方法 |
US8032793B2 (en) | 2005-01-14 | 2011-10-04 | Fujitsu Limited | Method of controlling information processing system, information processing system, direct memory access control device and program |
EP2937786A2 (en) | 2014-03-31 | 2015-10-28 | Fujitsu Limited | Storage system, storage device, and monitoring server |
US9760460B2 (en) | 2014-03-31 | 2017-09-12 | Fujitsu Limited | Storage system, storage device, and monitoring server |
KR20200051836A (ko) * | 2017-10-16 | 2020-05-13 | 알테릭스 인코포레이티드 | 순차적 데이터 블록들의 비동기적 프로세싱 |
KR102211613B1 (ko) | 2017-10-16 | 2021-02-02 | 알테릭스 인코포레이티드 | 순차적 데이터 블록들의 비동기적 프로세싱 |
US11494409B2 (en) | 2017-10-16 | 2022-11-08 | Alteryx, Inc. | Asynchronously processing sequential data blocks |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4457184B2 (ja) | ストレージシステムにおけるフェイルオーバー処理 | |
US10282262B2 (en) | Non-disruptive controller replacement in a cross-cluster redundancy configuration | |
US6594775B1 (en) | Fault handling monitor transparently using multiple technologies for fault handling in a multiple hierarchal/peer domain file server with domain centered, cross domain cooperative fault handling mechanisms | |
TW497071B (en) | Method and apparatus for managing clustered computer systems | |
US7627779B2 (en) | Multiple hierarichal/peer domain file server with domain based, cross domain cooperative fault handling mechanisms | |
JP4751117B2 (ja) | データ複製を利用したフェイルオーバとデータ移行 | |
US6609213B1 (en) | Cluster-based system and method of recovery from server failures | |
US6865157B1 (en) | Fault tolerant shared system resource with communications passthrough providing high availability communications | |
US6578160B1 (en) | Fault tolerant, low latency system resource with high level logging of system resource transactions and cross-server mirrored high level logging of system resource transactions | |
US8566635B2 (en) | Methods and systems for improved storage replication management and service continuance in a computing enterprise | |
US7788524B2 (en) | Fault-tolerant networks | |
US7542987B2 (en) | Automatic site failover | |
EP1437658B1 (en) | Coordinating persistent status information with multiple file servers | |
US9817721B1 (en) | High availability management techniques for cluster resources | |
CN104503965B (zh) | PostgreSQL高弹性的高可用及负载均衡实现方法 | |
US11226753B2 (en) | Adaptive namespaces for multipath redundancy in cluster based computing systems | |
US7702757B2 (en) | Method, apparatus and program storage device for providing control to a networked storage architecture | |
US7120821B1 (en) | Method to revive and reconstitute majority node set clusters | |
US6804819B1 (en) | Method, system, and computer program product for a data propagation platform and applications of same | |
US20150195167A1 (en) | Availability device, storage area network system with availability device and methods for operation thereof | |
Dell | ||
US8234465B1 (en) | Disaster recovery using mirrored network attached storage | |
WO2001082080A2 (en) | Network appliance | |
Read | Oracle solaris cluster essentials | |
CN114297178A (zh) | 数据库集群的构建方法和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070702 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070718 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071017 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071024 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071116 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080808 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081107 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081114 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081205 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081212 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090107 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090115 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090202 |
|
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: 20090828 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090917 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4457184 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140219 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D03 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |