JP2000501525A - 疎結合大量記憶コンピュータクラスター - Google Patents

疎結合大量記憶コンピュータクラスター

Info

Publication number
JP2000501525A
JP2000501525A JP9516750A JP51675097A JP2000501525A JP 2000501525 A JP2000501525 A JP 2000501525A JP 9516750 A JP9516750 A JP 9516750A JP 51675097 A JP51675097 A JP 51675097A JP 2000501525 A JP2000501525 A JP 2000501525A
Authority
JP
Japan
Prior art keywords
data
processor
input
systems
processor system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP9516750A
Other languages
English (en)
Other versions
JP2000501525A5 (ja
Inventor
ブルース イー マン
フィリップ ジェイ トラサッティー
マイケル ディー カーロッジー
ジョン エイ イウォスクス
エドワード ジェイ マックグラース
Original Assignee
シーチェインジ インターナショナル インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24185166&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2000501525(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by シーチェインジ インターナショナル インコーポレイテッド filed Critical シーチェインジ インターナショナル インコーポレイテッド
Publication of JP2000501525A publication Critical patent/JP2000501525A/ja
Publication of JP2000501525A5 publication Critical patent/JP2000501525A5/ja
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error 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/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error 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/2038Error 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 with a single idle spare processing component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1045Nested RAID, i.e. implementing a RAID scheme in another RAID scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 データを冗長的にストアする方法及び装置であって、少なくとも3つのプロセッサシステムにおいて、キャッシュプロセッサシステム(138、140、152)がポイント−トウ−ポイント2方向チャンネル相互接続において、前記各他のプロセッサシステムと接続されている。データは、冗長的な方式で、コンピュータシステムレベルとプロセッサシステムレベルでストアされる。したがって、1つのプロセッサの故障はデータの集合に不利を及ぼさない。コンピュータシステムはリング条に接続されたスイッチングシステム(142、144、154)も重なりあっており、スイッチレベルで単一の接続されたプロセッサシステムの故障に対する耐力をあたえる。したがって、耐故障データ分散システムを与える。

Description

【発明の詳細な説明】 疎結合大量記憶コンピュータクラスタブー発明の分野 本発明は、一般に、大量記憶装置の相互接続に係り、より詳細には、マルチプ ロセッサコンピュータクラスターにおいて供給帯域巾を広げ、故障許容度を与え そして入力/出力の負荷バランスをとる方法及び装置に係る。先行技術の説明 近代的な信頼性の高いコンピュータシステムは、大容量の大量記憶装置と、そ の大量記憶装置への広い帯域巾のアクセスとを必要とする。ディスクサイズは、 かなり増加しており、例えば、典型的なパーソナルコンピュータは、今日、ギガ バイト以上の記憶装置で構成できるのに対し、記憶装置のアクセスに使用できる 帯域巾は改善されてはいるものの、大巾な改善ではない。従って、大量の情報を 記憶できるが、記憶装置をアクセスできる速度は、一般的に、過去数年にわたっ て変化していない。特に、MPEG−2デジタル映像流のような一定ビットレー トの映像流を供給するためのデジタル映像システムの必要性を考慮すると、例え ば、ATM OC−3ネットワークインターフェイスのようなデジタル映像ネッ トワークのデータ要件を受け入れるために広帯域巾を与えることが重要となる。 信頼性のある構成で充分な量のデータを与えるために種々の方法が使用されて いるが、おそらく、より一般的で且つ最も安価な解決策の1つは、RAID−5 ストライピング及びパリティ技術を使用して、故障許容及び効率的な仕方でデー タを編成することである。RAID(安価なディスクの冗長アレー)解決策は、 文献に充分に説明されていて、RAID−5を含む種々のレベルの動作を有し、 そしてデータの編成は、故障許容及び負荷バランスのとれた仕方のデータ記憶を 達成することができる。 特に、RAID−5は、記憶されたデータが3つ以上のディスクドライブの間 に冗長な仕方で分散されるようにし、従って、ディスクドライブの1つが故障し ても、ドライブに記憶されたデータは、他の記憶位置から効率的に且つエラーの ない仕方で回復することができる。又、この方法は、好都合にも、RAID−5 ストライピングを用いると、ディスクドライブの各々を相対的に等しい且つ実質 的に並列な動作で使用することができる。従って、6ギガバイトのクラスター量 を有していて、それが3つのディスクドライブに及んでいる場合には、各ディス クドライブは、2ギガバイトのクラスター量にサービスする責任を負う。各2ギ ガバイトのドライブは、RAID−5解決策に必要な冗長な、ひいては、故障許 容の動作を与えるために、1/3の冗長な情報で構成される。 ローカルRAID−5アレーから映像データオブジェクトを読み取るプロセッ サについて考える。通常の動作において、RAID−5解決策を用いると、プロ セッサに接続された全てのディスクドライブにわたって分散した映像データオブ ジェクトをプロセッサがアクセスする必要があるときに、プロセッサは、各ディ スクドライブからラウンドロビン形態で映像データオブジェクトの一部分を読み 取る。例えば、映像データオブジェクトの最初の64キロバイトのブロックは、 第1のドライブに記憶されて読み取ることができ、次の64キロバイトブロック は、第2のドライブに記憶され、等々となる。しかしながら、更に、これも又、 64キロバイトブロックであるパリティチェック(実際には排他的オア機能)も 記憶され、従って、n個のディスクドライブがある場合には、各n−1のデータ ブロックごとに1つのパリティブロックが書き込まれる。 しかしながら、ディスクドライブを読み取るプロセッサは、依然として、比較 的狭い帯域巾で「往生」している。従って、読み取りできるデータの量は、ドラ イブが接続されたバスにより制限される。例えば、SCSIバスは、何年も前の バスよりは著しい改善を与えるが、映像用途のニーズに比して依然として比較的 低速である。又、ローカルRAID−5コントローラを使用すると、多数のロー カルSCSIバスの出力を合成できるが、ローカルプロセッサの故障を受ける。 このような故障は、全てのデータへのアクセスを排除する。 そこで、本発明の目的は、改良され且つ増加された大量記憶装置読み取り及び 書き込み帯域巾(供給帯域巾)を有し、新規なトポロジーにおいて確実且つ故障 許容のプロトコルを用いて動作し、そして既知の受け入れられる技術に基づいて 多量のデータを読み取り及び書き込みできるような方法及び装置を提供すること である。本発明の他の目的は、比較的安価で、信頼性があり、構成が簡単で且つ 保守が容易な方法及び装置を包含する。発明の要旨 本発明は、少なくとも1つの中央処理ユニット及び少なくとも1つの大量記憶 サブシステムを各々有する少なくとも3つのプロセッサシステムを備えた分散型 のコンピュータシステムにおいてデータを冗長記憶するための方法及び装置に係 る。本発明の方法は、プロセッサシステムの各1つをプロセッサシステムの他の 各1つとポイント対ポイントの両方向チャンネル相互接続において相互接続し、 そして分散型の冗長記憶プロセスに基づいてプロセッサシステムにわたり入力デ ータを記憶するという段階を特徴とする。従って、データは各大量サブ記憶シス テムに記憶され、そしてデータのある冗長表示も、各プロセッサ大量記憶サブシ ステムに記憶される。 本発明の特定の観点において、上記方法は、RAID−5プロセスに基づいて プロセッサシステムにわたりデータを記憶し、そして更に、RAID−5プロセ スに基づいて各プロセッサシステム内にデータを記憶することを特徴とする。 上記方法は、更に、いずれのプロセッサシステムにも故障がない状態でデータ チャンネル相互接続の各々を経てコンピュータシステムからデータを読み取り、 これにより、読み取り段階は、プロセッサシステムにわたり負荷バランスを確立 することを特徴とする。プロセッサシステムの1つに故障が存在する場合には、 コンピュータシステムからのデータの読み取りは、データを記憶している各故障 のないプロセッサシステムからデータを読み取り、そして故障したプロセッサシ ステムに記憶されたデータに代わって、故障のないプロセッサシステムから冗長 なデータを読み取る段階を特徴とする。その後、故障したプロセッサシステムに 記憶された必要なデータを、故障のないプロセッサシステムから読み取ったデー タ及び冗長なデータを用いて再形成することができる。本発明のある実施形態に おいては、いずれかのプロセッサシステムに故障が生じた時間中に、上記方法で は、故障したプロセッサシステムがオンラインに復帰されるまで、いかなるプロ セッサシステムにおけるデータの書き込みも防止される。 別の観点において、本発明は、更に、最初に2つのプロセッサシステムしかな い限定ケースを特徴とする。本発明のこの特徴によれば、システムは、故障がな い場合に、交互のプロセッサから次々のデータブロックを順次に読み取ることに より増加した帯域巾を与え続け、そしてこのようにして、負荷バランスをとると 共に、典型的ないわゆる「鏡像」システムに比して増加された読み取り帯域巾を 与える。典型的な鏡像システムでは、データが一方のプロセッサから読み取られ るだけであり、他方のプロセッサは、バックアップとして働く。従って、本発明 によれば、データは、全てのプロセッサから読み取られ、これにより、増加され た読み取り帯域巾及び負荷バランスを与える。それ故、上記したように、本発明 の2プロセッサ構成は、多数のプロセッサを伴うシステムの全ての効果を与えな いが、容量が大きく、オーバーヘッドが少なくそして帯域巾の大きなプロセッサ システムへと容易に拡張することができる。 記憶段階の種々の観点において、上記方法は、データ記憶がディスクの抽象レ ベルでモデリングされる本発明のある実施形態では、コンピュータシステムの全 ての書き込み機能を行うように1つのプロセッサシステムを指定するか、各デー タ入力ごとにファイルを割り当てるように1つのプロセッサを指定しそして全て のプロセッサシステムがその関連する割り当てられたファイルの各々に入力デー タを書き込めるようにするか、或いは分散型ロックマネージャーを用いてプロセ ッサシステム間で書き込み動作を裁定するかのいずれかを特徴とする。 しかしながら、記憶段階の別の観点においては、データ入力が、名前の付けら れた断片ファイル、又は名前の付けられたファイルとして各プロセッサシステム に記憶される。名前の付けられた断片ファイル、又は名前の付けられたファイル として記憶されるときには、例えば、分散型コンピュータシステムにプロセス又 はシステムが追加されるときでも、それらをアクセスしそして再構成することが できる。システムは、プロセッサシステムの数、ネットワークインターフェイス の数及び記憶量が変化しても、記憶されたデータを出力流として供給し続ける。 これが可能となる理由は、モジュラス「N+1」データ断片がモジュラス「N」 データ断片から形成されるときでも、本発明の方法は、ファイル名を使用して、 モジュラス「N」データ断片をモジュラス「N+1」データ断片から区別するか らである。更に、本発明の方法は、プロセッサシステムが故障状態にあった間に 書き込まれたデータオブジェクトのみを再構成することにより、故障したプロセ ッサシステムを再構成する段階を特徴とする。 本発明による分散型コンピュータシステムは、データを冗長記憶するための少 なくとも3つのプロセッサシステムを有し、各プロセッサシステムは、少なくと も1つの中央処理ユニット及び少なくとも1つの大量記憶システムを有する。こ の分散型コンピュータシステムは、プロセッサシステムの各1つからプロセッサ システムの他の各1つへポイント対ポイントの両方向チャンネル相互接続を与え る相互接続チャンネルと、各プロセッサシステムにおけるデータ記憶コントロー ラとを特徴とする。コントローラは、分散型の冗長記憶プロセスに基づきプロセ ッサシステムのいずれか1つにデータ入力を記憶するように働き、これにより、 データは、各コンピュータプロセッサに記憶され、そしてデータのある冗長表示 も、各プロセッサに記憶される。好ましい実施形態では、記憶コントローラは、 RAID−5プロセスに基づいて処理システムにわたりデータを記憶し、そして 更に、RAID−5プロセスに基づいて各プロセッサシステムにおいてその関連 大量記憶サブシステムにデータを記憶することができる。 本発明の装置は、更に、いずれのプロセッサシステムにも故障がない場合に、 コントローラがコンピュータシステムからデータを読み取って、コンピュータシ ステムにわたり負荷バランスを維持しそして確立するようなシステムを特徴とす る。プロセッサシステムの1つに故障が存在する場合は、コントローラは、デー タを記憶している各故障のないプロセッサシステムからデータを読み取り(適当 な専用のネットワーク接続を経て)、そして故障したプロセッサシステムに記憶 されたデータに代わって、各故障のないプロセッサシステムから冗長データを読 み取る。次いで、要求を発しているプロセッサシステムは、その読み取られたデ ータ及び冗長データを使用し、故障したプロセッサに記憶されたデータを再形成 することができる。好ましい実施形態では、故障したプロセッサに記憶されたデ ータを再形成するのに「外部」プロセッサを使用することができ、これにより、 故障したプロセッサがあってもシステムの供給帯域巾を保持することができる。 別の観点において、本発明の装置は、入力データを名前の付けられた断片ファ イル又は名前の付けられたファイルとして分散型コンピュータシステムに記憶す る記憶コントローラを特徴とする。 又、本発明の装置は、少なくともn個の割り込み可能な入力と、n個の割り込 み入力と、n個の出力とを有する冗長スイッチにも係る。この冗長スイッチは、 n+1個のスイッチ式システムを特徴とし、各スイッチ式システムは、少なくと も2つの制御入力と、第1入力と、第2入力と、第3入力と、第4入力と、第1 及び第2の出力とを有する。各スイッチ式システムは、その第2の出力がn割り 込み信号発生器に接続され、その関連信号発生器のn割り込み出力は、接続され たスイッチ式システムの第2入力に接続される。スイッチ式システムは、リング 構造で相互接続され、従って、各スイッチ式システムは、更に、n個の割り込み 可能な入力信号がその第1入力に接続され、リングにおける第1の隣接するスイ ッチ式システムの第2入力が第3入力に接続され、リングにおける他の隣接する スイッチ式システムの割り込み可能な入力が第4の入力に接続され、そして各ス イッチ式システムは、制御入力に応答してその入力のいずれかを少なくともその 第1の出力に切り換えると共にその第1及び第4入力のいずれかをその第2出力 に接続するためのスイッチ回路を有する。コントローラは、スイッチ式システム の制御入力に制御信号を与えて、クロスバー動作を行えるようにする。 別の観点において、冗長スイッチは、n+1個のスイッチ式システムを有し、 各スイッチ式システムは、少なくとも2つの制御入力と、4つの信号入力と、2 つの信号出力とを有する。各スイッチ式システムは、その出力の1つが関連する 割り込み信号発生器に接続され、そして関連する信号発生器のn割り込み出力が その接続されたスイッチ式システムの入力に接続される。このスイッチ式システ ムは、リング構造で相互接続され、従って、各スイッチ式システムは、第1及び 第2の最も近い隣接するスイッチ式システムに接続される。各スイッチ式システ ムは、スイッチ式システムの制御入力に応答してその入力をその出力に選択的に 切り換えるスイッチ回路を有する。コントローラは、スイッチ式システムに制御 入力を与え、スイッチ式システムがリングをめぐる一方向又は両方向に信号スイ ッチ機能を1つの位置だけ効果的に回転できるようにする。これにより、故障し た信号発生器をバイパスすることができ、n個の第1出力の信号を中断せずに続 けることができる。 別の観点において、本発明は、データを冗長記憶するための少なくとも3つの プロセッサシステムを有する分散型データ供給システムに係り、各プロセッサシ ステムは、少なくとも1つの中央処理ユニットと、1つの大量記憶システムとを 有する。相互接続データチャンネルは、プロセッサシステムの各1つからプロセ ッサシステムの他の各1つへのポイント対ポイントの両方向チャンネル相互接続 を与える。各プロセッサシステムのデータ記憶コントローラは、分散型冗長記憶 プロセスに基づきプロセッサシステムのいずれか1つからデータ入力を記憶し、 これにより、データがプロセッサシステムの各々に記憶されると共に、データの ある冗長表示も各プロセッサに記憶される。n個の割り込み可能な入力ポート、 少なくともn+1個の割り込み入力ポート及び少なくともn+1個の出力ポート を有するスイッチ回路は、n個の割り込み可能な入力信号が各一次プロセッサス テムに接続され、各一次プロセッサシステムの出力は、各割り込み入力に接続さ れる。プロセッサに故障が生じた場合に、そのプロセスのそれまで未使用のプロ セッサシステムを使用して、プロセッサシステムの各1つから得られる信号情報 でn個の割り込み可能な入力ポートの各々に選択的に割り込むためにスイッチ回 路に接続されたスイッチコントローラは、スイッチ回路が、故障したプロセッサ システムの割り込み可能な入力ポートを異なるプロセッサシステムに接続するよ うにすると共に、故障したプロセッサシステムの出力を別のプロセッサシステム の出力に置き換えるようにする。図面の簡単な説明 本発明の他の目的、特徴及び効果は、添付図面を参照した以下の特定の実施形 態の詳細な説明より明らかとなろう。 図1は、本発明による相互接続されたコンピュータシステムの概略ブロック図 である。 図2は、本発明によるプロセッサシステムの詳細なブロック図である。 図3は、本発明によるインデックスファイルを示すテーブルである。 図4は、本発明によるソフトウェアアーキテクチャーを示す図である。 図5は、本発明によるクラスターボリューム構成体を示す図である。 図6は、本発明によるクラスターボリューム「ホームブロック」フォーマット を示す図である。 図6Aは、図6の「ホームブロック」フォーマットを定義するテーブルを示す 図である。 図6Bは、複数のブロックに分割されたデータオブジェクトを示す図である。 図6Cは、データオブジェクトとその記憶された名前付けされた断片ファイル との関係を示す図である。 図6Dは、本発明の1つの実施形態による名前付けされた断片ファイルのヘッ ダブロックを定義するテーブルである。 図6Eは、図6Dのデータオブジェクトフォーマットを定義するテーブルであ る。 図6Fは、クラスターメンバーから映像オブジェクトを読み取るところを示す 図である。 図7は、RAID−5ストライピングプロトコルに基づくデータオブジェクト のデータ及びパリティ編成を示す図である。 図8は、図9のフローチャートに関連して使用される語彙を説明するテーブル である。 図9A−9Cは、本発明によりデータ及びパリティブロックの位置を決定する ためのフローチャートである。 図10は、本発明により再フォーマットする前後のクラスターボリュームを示 す図である。 図11は、2nxnスイッチを示す図である。 図12は、ある回路構成における2nx1スイッチを示す図である。 図13は、本発明による2nxnシステムを示す図である。 図14は、図13のスイッチ式システムの詳細なブロック図である。 図15は、本発明の別の実施形態によるリング構成の映像システムを示す図で ある。 図16は、図15のスイッチ式システムを詳細に示す図である。 図17は、本発明による図16のスイッチ式システムの真理値表である。好ましい実施形態の詳細な説明 図1を参照すれば、冗長な分散型コンピュータシステム10は、ここに示す実 施形態では、複数のプロセッサシステム12a、12b、12c、12d、12 eを有し、これらは、相互接続チャンネル14a、14b、14c・・・14j により複数のポイント対ポイント相互接続において相互接続される。従って、各 プロセッサシステム12は、ポイント対ポイント接続において他の各プロセッサ システムに直結される。本発明の他の実施形態では、更に多数又は少数のプロセ ッサシステムを使用できるが、実際の上限は、9ないし13であり、そして下限 は、3である。(前記したように、2つのプロセッサシステムを使用して本発明 の幾つかの効果を達成できるが、以下の説明の目的上、3つ以上のプロセッサの 実施形態について説明する。) 各プロセッサシステム12を詳細に参照しそして図2を参照すれば、各プロセ ッサシステム12は、CPU20を有し、これは、ここに示す実施形態では内部 データ通信バス22に接続され、このバスには、少なくともメモリ及び通信コン トローラ24と、大量メモリ記憶ユニット26が接続される。大量記憶ユニット は、通常、複数のディスクドライブユニット28を有する。又、コントローラ2 4は、複数のチャンネルインターフェイスユニット30にも接続され、各チャン ネルインターフェイスユニット30は、その各々を経て他のプロセッサシステム とのポイント対ポイント通信を確立するために異なる相互接続チャンネル14に 接続される。 本発明のここに示す実施形態では、相互接続チャンネル14は、高速イーサネ ットデータリンク装置上で実行されるプロトコルを使用する。このプロトコルは 比較的高い効率を与えると共に、プロセッサ間の通信を、ここに示す実施形態で は、100メガビット/秒程度の帯域巾で行えるようにする。従って、図1を参 照すれば、4つの相互接続チャンネルに接続される各プロセッサ12は、そのロ ーカル大量記憶装置26に関するそれ自身の能力に加えて、外部プロセッサメモ リに対し約400メガビット/秒(少ないオーバーヘッド)の帯域巾を有する。 図1に示すコンピュータシステムの1つの特定の用途では、映像入力情報及び データが、外部フィードライン、例えば、ネットワークフィード32を経て1つ 以上のプロセッサシステム12に送られ、これは、短い時間巾の映像データ(音 声を含む)を表しそして記憶するに必要な相当量のデータの広帯域巾記憶を必要 とする。特に、例えば、1分の映像データは、66メガバイトの記憶を必要とす る。好都合なことに、図1に示されそしてここに述べる特定の実施形態は、映像 情報を種々のプロセッサシステム間に分散させることのできる実質的な帯域巾を 有し、従って、本発明の好ましい実施形態では、1つのプロセッサシステム12 への映像データ入力は、実際には、多数のそして好ましくは全ての映像プロセッ サシステム12に沿って記憶される。 本発明の特定の実施形態によれば、プロセッサシステム12のコントローラ2 4は、全コンピュータシステム10のネットワークにわたり冗長形態でデータを 記憶するように個々にそして集合的に働き、従って、いずれか1つのプロセッサ システム12が故障しても、残りのプロセッサシステムが全システムに得られる 全てのデータを再構成することができる。更に、この解決策は、以下に詳細に述 べるように、ここに示す実施形態において、種々の処理システムにわたり負荷バ ランスをとると共に、データの読み取り又は書き込みのいずれかを要求する1つ のプロセッサシステムが非常に広い帯域巾のメモリ通信チャンネルの能力を得る ことができるようにする。 本発明の好ましい実施形態では、RAID−5のアーキテクチャーがシステム レベルで始めて実施され、分散型コンピュータシステムの目的を満足するに必要 な冗長性、負荷バランス及び帯域巾を与える。特定の用途では、プロセッサシス テム12eにより入力ライン30において映像データを受信すべきであると仮定 すると、コンピュータシステム10は、データを受け取る前に、複数の異なる方 法の1つで各プロセッサシステムに割り当てられた記憶領域を有する。以下に述 べる好ましい方法ではない1つの方法においては、特定の容量を有する記憶クラ スターボリュームがプロセッサシステム12間に配備される。例えば、記憶クラ スターボリュームが10ギガバイトである場合には、図1の実施形態において、 各プロセッサシステムは、それ自身に使用するだけでなくクラスターの他のプロ セッサシステム即ちメンバーにも使用するために2ギガバイトのクラスターボリ ュームにサービスする責任を負う。 それ故、通常の動作条件のもとでは、システムは、データの書き込み及び読み 取りの両方のプロトコルを予め確立する。1つのプロトコルに基づき、システム は、クラスターボリュームに対する全てのデータを書き込むための1つのシステ ムを選択する。本発明の別の観点においては、分散型ロックを使用して、プロセ ッサシステム間の書き込み動作を裁定してもよい。第3の実施形態では、1つの プロセッサシステムが各データ入力に対してファイルを割り当て、その後に、各 プロセッサシステムがそれに関連した割り当てられたファイルに入力データを書 き込むことができる。 上記のクラスターボリュームは、クラスターメンバー(クラスターの異なるプ ロセッサシステム)間に共用された論理的ディスクブロック(幾つかはロ一カル そして幾つかはリモート)の集合である。この構成においては、各クラスターメ ンバーは、実行されるファイルシステムのインスタンスを有し、そして各ノード は、論理的ブロックの全セットへアクセスする。この解決策は一応機能するが、 多数の問題がある。第1に、1つのシステムしかクラスターボリュームに書き込 みできず、第2に、クラスターボリュームの統合性を厳密に管理しなければなら ず、そして第3に、ファイルシステム構造の変更(ファイルの形成又は削除)を 各クラスターメンバーにおいて実行されるファイルシステムの各インスタンスに 複製しなければならない。 上記のクラスターボリューム構造を使用するのではなく、本発明の好ましい実 施形態では、クラスターアーキテクチャーは、ファイルサーバがネットワークク ライエントに「ファイル」を与えるのと同様に、データオブジェクト及び名前の 付けられた断片ファイルにアクセスする。クラスターメンバーは、それらのファ イルシステムをプライベートに保持し、そしてデータオブジェクトへのアクセス しかエクスポートしないので、各クラスターメンバーは、クラスターの他のメン バーを妨げることなく、そのローカルファイルシステムのファイルを読み取り、 書き込み又は削除することができる。この方法には著しい問題はなく、クラスタ ーソフトウェアの複雑さを低減する。次いで、RAID−5ストライピング及び パリティ技術を用いて、データオブジェクトが細分化されて、クラスターのメン バーに書き込まれ、各個々のデータオブジェクトを、他の全てのデータオブジェ クトに関わりなく、読み取り、回復し又は書き込むことができるようになる。更 に、全てのデータオブジェクトが独立して記憶されるので、あるクラスターオブ ジェクトがダウンしている間に書き込まれたデータオブジェクトを回復するだけ でよい。クラスターボリューム方法においては、以下に述べるように、全ローカ ルクラスターボリュームを再構成しなければならない。全クラスターボリューム の再構成は、ボリュームのサイズの基づいて数時問から数日までのいずれかで行 うことができる。データオブジェクトのみが記憶されるときには、データの小さ なサブセットのみを、もしそれがクラスターメンバーがダウンしている間に書き 込まれたならば、再構成するだけでよい。 冗長性、ひいては、故障許容性の記憶システムを達成するために、プロセッサ 12の各々は、たとえそれらがシステムレベルにあっても、RAID−5のコン テクストにおいては、次のようにストライピングの状態にあるとみなす。各プロ セッサが64キロバイトのブロックを書き込むと仮定すると、第1のブロックは プロセッサ12aへ送られてそれにより書き込まれ、第2のブロックは、プロセ ッサ12bにより書き込まれ、第3のブロックは、プロセッサ12cにより書き 込まれ、第4のブロックは、プロセッサ12dにより書き込まれ、そして第5の ブロックである冗長ブロック即ち「パリティブロック」は、プロセッサ12eに より書き込まれる。RAID−5解決策によれば、プロセッサ12eによりその 大量記憶装置に書き込まれるべき冗長ブロック即ち「パリティブロック」は、プ ロセッサ12a、12b、12c及び12dに送られたブロックの排他的オアと なる。明らかに、例えば、ハフマンコード及び他の冗長コード化方法の種々の形 態を含む他の冗長方法を使用することができ、従って、プロセッサの1つの故障 を考慮するだけでなく、多数のプロセッサ故障も考慮することができる。データ の書き込み及びおそらくは読み取りの両方を処理するには、当然、コストが増大 する。更に、重要なことに、各プロセッサは、ポイント対ポイントの両方向接続 において他の各プロセッサに接続されるので、5つのデータブロック全部を実質 的に並列に書き込むことができ、従って、書き込みコントローラに得られる帯域 巾を完全に使用すると同時に、書き込み負荷を全コンピュータシステムにわたり 実質的に等しく分散させることができる。 最初の4つのデータブロック(及び1つの冗長ブロック)が書き込まれた後、 次のデータブロック(「データブロック」)を例えばプロセッサシステム12b に書き込むことができ、第6のブロックをプロセッサシステム12cに書き込む ことができ、第7のブロックをプロセッサシステム12dに書き込むことができ そして第8のブロックをプロセッサシステム12eに書き込むことができる。次 いで、パリティ即ち冗長ブロックがプロセッサシステム12aに書き込まれる。 このやり方によれば、冗長ブロックの各々は、RAID−5処理プロトコルに基 づき、所定のラウンドロビンの回転方式で書き込まれる。ブロックの位置が図3 に示されている。以下に詳細に述べるように、短いアルゴリズムを用いて、特定 のブロックの位置を決定することができる。 更に、各プロセッサシステム内において、プロセッサは、RAID−5プロト コルをその通常の良く知られた意味で使用して、そのプロセッサに関連した複数 のディスクドライブ装置26の間にデータを記憶することができる。従って、良 く知られた記憶レベルだけでなく、新たなシステムレベルの両方において、RA ID−5技術を2回使用して、高信頼性の低コストコンピュータシステムを達成 するという新規な環境が与えられる。 ここに述べる図1の構造は、その適切な機能を維持するために多数の制約を有 する。第1に、各クラスターボリュームは、少なくとも3つのメンバーを有して いなければならない。第2に、クラスターは、RAID−5プロトコルを使用す る場合に、2つ以上のクラスターメンバーが故障すると、動作を続けることがで きない。(他の複雑なプロトコルの使用は、この制約を若干緩和できる。)第3 に、現在の動作パラメータのもとでの実際の限界は、9ないし13のクラスター メンバーであることが明らかである。それより多数のクラスターメンバーが使用 されるときは、ポイント対ポイントの配線が次第に困難になり且つ高価なものと なる。実際に、9つのクラスターメンバーは、36の相互接続チャンネルを必要 とし、一方、13のクラスターボリュームは、78の相互接続チャンネルを有す ることになる。 図4を参照すれば、単一のプロセッサシステム12(「クラスターメンバー」 とも称する)の重要なソフトウェア成分は、ポートドライバ50、クラスドライ バ52、リモートファイルプロバイダー54、ローカルファイルプロバイダー5 6、ファイルシステム58(SeaFile、FAT、NTFS)、SCSIド ライバ60、RAIDコントローラ62、高速イーサネットアダプタ64、及び SeaNetトランスポート66を含む。 クラスターのアーキテクチャーは、RAID−5技術を使用して、故障許容の 分散型システムを構成する。データオブジェクトは、クラスターのメンバーにわ たり名前の付けられた断片ファイルとして記憶される。データオブジェクトは、 ストライプ状にされ(RAID−5プロトコルに基づき)、そしてパリティ情報 と共に記憶され、クラスターメンバーが故障した場合に欠落した名前付きの断片 ファイルを再構成できるようにされる。これは、以下に詳細に説明する。 透過的なデータオブジェクトアクセスを与えるために、RAIDポートドライ バは、データオブジェクトが1組の名前付きの断片ファイルとして存在するとい う事実をマスクする。これは、名前付きの断片ファイルをデータオブジェクトバ イト流へと合体するためにマルチプレクス及びデマルチプレクスサービスを与え る。RAIDポートドライバは、プロバイダー及びコンシューマーの両方として 登録される。クラスドライバがデータオブジェクトをオープンするよう試みると きには、システムの全てのプロバイダーポートドライバをコールする。RAID ポートドライバは、コールされたときに、コンシューマーとなり、クラスドライ バを使用して、そのデータオブジェクトを構成するデータ断片の各々をオープン する。名前付けされた断片ファイルの各々に対してセッションが確立されると、 即ち各々の名前付けされた断片ファイルへアクセスが与えられると、RAIDポ ートドライバは、データオブジェクトが使用できることをクラスドライバに通知 するためにオープンコールバックを実行する。 データ(映像)オブジェクトをアクセスする特定の用途では、ポートドライバ が、クラスターに記憶されたデータ(映像)オブジェクトをアクセスする。映像 の名前付けされた断片ファイルは、ローカル及びリモートプロバイダーからRA ID−5方法を用いて読み取り又は書き込みされる。これは、他のポートドライ バ(例えば、映像デコーダ又はATMリンク)を故障からマスクする。というの は、欠落したデータ断片をリアルタイムで再構成するからである。リモートファ イルプロバイダーは、クラスター技術を使用することのある第三者アプリケーシ ョン又はデバイスドライバを表す。例えば、ロータス・ノート、医療アプリケー ション又はデータベースシステムが含まれる。クラスターボリューム(ファイル システム54)のオンディスク構造は、ここに示す実施形態では、NTFS、 FAT、SeaFile又は生のディスクアクセスのいずれかである。ファイル システム成分は、名前付けされた断片ファイルを記憶及び検索する責任を負う。 トランスポート成分66は、他のクラスターメンバーに効率的なネットワーク サービスを与える。これは、故障を検出してリアルタイムでRAIDドライバに 報告する。高速イーサネットアダプタは、インターフェイスユニット30を経て 各クラスターメンバー間に100Mb/秒の全二重リンクを形成する。SCSI ドライバ、例えば、DAC960は、ローカルディスク記憶装置へのアクセスを 与え、クラスターRAIDドライバがローカルファイルシステムマネージャーに 対するデータを読み取り又は書き込みできるようにする。 RAIDコントローラは、名前付けされた断片ファイルへの効率的なアクセス を与える。データオブジェクトのローカル部分は、RAIDコントローラにより 読み取り又は書き込みされる。RAID制御ボリュームは、ここに示す実施形態 では、RAID−0、RAID−1、RAID−5、RAID−6又はRAID −7レベルのいずれかに構成することができ、そして上記のように、RAID− 5プロトコルでボリュームを構成すると、たとえ単一のディスクが適切に機能し なかったとしても、クラスターメンバーを続けることができる。 上記したように、クラスターボリュームが使用されるときには、クラスターボ リュームは、多数のクラスターメンバー即ちプロセッサシステムに及ぶ論理的な ディスクボリュームである。映像データオブジェクトの記憶及び検索のような特 定のアプリケーションを考慮すると、クラスターボリュームにとって重要な設計 は、各プロセッサシステムメモリの一部分を各映像流に対して使用し、従って、 バランス型の拡張可能なシステムを形成することである。クラスターボリューム に記憶された映像データは、重要なミッションであるから、クラスターボリュー ムの完全性を入念に維持しなければならない。従って、1組のチェックを使用し て、クラスターメンバーがクラスターボリュームの一貫した意図に合意しそして 1つのクラスターメンバーのみがクラスターボリュームに書き込むように確保す る。 本発明のここに示す実施形態においては、図5を参照すれば、クラスターボリ ュームの各クラスターメンバー、即ち各プロセッサシステム12は、クラスター ボリュームの完全性を確保するためにそのクラスターボリューム「ホームブロッ ク」を維持しそして照合する。クラスターメンバーのプロセッサシステムがブー トするときには、クラスターボリューム「ホームブロック」の具現化及びボリュ ーム識別子を他のクラスターメンバーのプロセッサシステム「ホームブロック」 に対してチェックして、クラスターボリュームがダウンしている間にそれが変更 されなかったことを確保する。クラスターボリュームが変更された場合には、再 構成プロセスがその古いクラスターメンバーを修理することができる。 それ故、各クラスターメンバー35は、本発明のここに示す実施形態では、各 クラスターボリュームごとに1つのクラスターボリューム「ホームブロック」3 7を有する。図6及び6Aを参照し、種々のオフセット及びバイト識別を本発明 の好ましい実施形態として詳細に述べる。クラスターボリュームは、クラスター のメンバーであるプロセッサシステムにわたりRAID−5プロトコルを用いて 編成される。(クラスターボリュームは、システム10の全てのプロセッサ12 にわたって延びる必要はないが、少なくとも3つのプロセッサ、又は鏡像関係が 許される場合には2つのプロセッサにわたって延びねばならないことに注意され たい。)コントローラはデータを編成し、そして書き込みコントローラは、上記 のように、クラスターボリュームに関与するクラスターメンバーにわたりラウン ドロビン形態でデータのブロックを書き込む。 上記のように、好ましい実施形態では、データオブジェクトが使用される。こ のシステムの各データオブジェクトは、1組の名前付けされた断片ファイルとし て記憶される。各断片ファイルは、名前付けされた断片ファイルがそれ自身を説 明できるようなヘッダブロックを含む。データオブジェクトは、それらがクラス ターに書き込まれるときに細分化される。図6B及び6Cは、データオブジェク トと、その名前の付けられた断片ファイルとの関係を示す。図示されたように、 個々のクラスターメンバーに書き込まれる断片ファイルは、名前の付けられた断 片へッダと、断片ファイルを構成する複数のブロックとを含む。この例では、デ ータオブジェクトが3つのファイルに細分化される。 1つのブロックのデータ量は、ボリュームストライプサイズと称する。本発明 のここに示す実施形態では、デフォールトストライプサイズが64キロバイトで ある。ストライピングに加えて、RAID−5プロトコルは、単一の故障から回 復するために「パリティブロック」を使用する。この「パリティブロック」は、 クラスターのプロセッサシステムメンバーの数をnとすれば、n−1ブロックご とに書き込まれる。従って、この技術は、上記のように、いずれか1つのクラス ターメンバーが故障したときにクラスターボリュームデータを再構成することが できる。本発明の好ましい実施形態では、パリティブロックは、ストライプレべ ルを形成するn−1個の「データブロック」を排他的オアすることにより形成さ れる。データがデータオブジェクトとして記憶される本発明の好ましい実施形態 の場合に、図6Dは、名前の付けられた断片ファイルのヘッダフォーマットを示 す。上記したように、ヘッダブロックは、断片の内容を示す。図6Eは、本発明 の1つの特定の実施形態の場合のヘッダの特定成分をテーブル形態で示す。 図6Fは、クラスターのメンバーにわたって分散された単一映像オブジェクト の「データブロック」の読み取りを示す。この映像オブジェクトを再生するため に、クラスターメンバーは、名前の付けられた各断片ファイルをオープンし、そ して例えば、クラスターメンバー0から第1ブロックを、クラスターメンバー1 から第2ブロックを、そしてパリティブロックがないと仮定すれば、クラスター メンバー2から第3ブロックを読み取る。この点において、読み取りプロセスは クラスターメンバー0に戻る。このプロセスの複雑さは、上記のように、RAI Dポートドライバによりコンシューマーから隠される。上記説明において、名前 の付けられた断片ファイルと共に記憶されたパリティブロックは、実際に映像デ ータオブジェクトが読み取られるときに無視されるので、パリティブロックは、 スキップされ、そして実際のデータのみが読み取られる。従って、パリティブロ ックの編成は、注意しなければならない付加的な複雑さを導入する。又、パリテ ィ「データブロック」は、上記のように、1組のディスクヘッドが読み取りプロ セスの間にアイドル状態に保たれるのを回避するために、ラウンドロビン形態で 書き込まれる。 その結果、従って、図7を参照すると、パリティブロックが各クラスタメンバ の各名前が付けられたフラグメントに記憶されるような編成が示されている。故 障中に、ミッシングブロックを再構築するためにミッシングブロックに関連付け られたブロックが読み出される。例えば、クラスタメンバ2が利用できず、かつ ブロック7が要求されるならば、ミッシングブロックを生成するためにパリティ ブロック6/7及びブロック6が読み出されかつEXCLUSIVE OR(排 他的論理和)される。表を用いてDataB1ock(データブロック)の位置 を決定することが確実に可能であると同時に、本発明の好ましい実施例では、ア ルゴリズム処理が好ましくかつより速く動作する。この説明している実施例では 、名前が付けられたフラグメントファイルに記憶されるデータ及びパリティブロ ックを位置付けるために整数演算が採用される。 図8を参照すると、ブロックの位置を決定するために用いられるコンピュータ ソフトウェアプログラムで用いられる変数のリストが示されている。ここで、図 9Aに関してプログラムのフローチャートを説明する。最初に、300にて、パ リティブロックの数は、クラスタサイズから1を引いたもので、位置決めされる べきブロック数を割り算することによって、まず決定される。これは、本質にお いて、見出されるべきブロックが存在する行を含まないがその行までのパリティ ブロックの数を供給する。割り算は、整数の割り算であって余りは、破棄される 。それゆえに、PBCは、ブロックの最後の完全な行を含みかつその行までのパ リティブロックの数を供給する。次に、通称、調整済みブロック番号は、見出さ れるべきブロックまでの、完全な行内のパリティブロックを含む、記憶されたブ ロックの合計数に等しく設定される。これは、302に示されている。 オプショナルパリティブロック計数が次に決定される。見出されるべきブロッ クの行における、パリティブロックが見出されるべきブロックの前または後に位 置決めされるかどうかを決定するために、ブロックモジュロの合計数、二乗され たクラスタメンバの数に等しい、数量ABNLが364で生成される。オプショ ナルパリティブロック計数は、306で“0(ゼロ)”に設定され、かつ、クラ スタの数によって割り算されたABNLがABNLモジュロ、308でのクラスタ の数以下ならば、オプショナルパリティ計数は、310で“1(ワン)”に設定 される。“0”オプショナルパリティ計数は、ブロックが行においてパリティブ ロックの前にあるということを示し、“1”オプショナルパリティ計数は、行 のパリティブロックの後にあるということを示す。これは、パリティが図6Cに 記載されたように構成されるということを想定する。 次いで、最終ブロック数は、調整済みブロック数にOPCの値を加えたもので ある。これは、320に示されている。次いで、クラスタメンバは、最終ブロッ ク数モジュロ、クラスタの数を取ることによって計算することができる。これは 、330に示されている。次いで、そのクラスタ内のローカルブロック数は、ク ラスタの数で割り算された最終ブロック数である。これは、340で示されてい る。(最初のブロック数が“ゼロ”であるということを思い起こす。) 故障が発生したならば、バイナリブロック数に対するパリティブロック数を決 定しなければならない。これは、図9Bのフローチャートを参照して、以下に説 明するように行われる。まず、パリティブロック数は、分子が最終ブロック数で ありかつ分母がクラスタの数である、割り算の整数部分でクラスタの数を乗算す ることによって決定される。これは、400に示されている。次に、繰り返しパ ターン内のパリティブロックオフセットが決定されかつ先に決定されたパリティ ブロック数(PBN)に加えられる。これは、最終ブロック数モジュロ、2乗さ れたクラスタメンバの数を取りかつその数をクラスタの数で割り算することによ って達成される。次いで、その値は、パリティブロック数の最終値を得るために パリティブロック数に加えられる。これは、420に示されている。 パリティブロックに関連付けられたDataBlocksを位置決めすること も必要でありうる。図9Cを参照すると、これは、パリティブロック数(PBN )が見出されるような行を見出すことによって決定される。行は、パリティブロ ック数とクラスタの数の分数の整数値を取りかつその値をクラスタの数で乗算す ることによって決定される。これは、430で示される。パリティブロック位置 は、パリティブロックモジュロ、2乗されたクラスタの数、クラスタメンバの数 で割り算されたその数量、に等しい。これは、440に示されている。次いで、 以下のサブルーチン(C言語で書かれた)は、パリティブロックに関連付けられ たブロックを決定するために採り入れられる: for(i=0;i<CS;i++) if(PBNrow+i!=PBN) FBN=PBNrow+i クラスタプロセッサシステムメンバーが機能しなかったならば、データオブジ ェクト用の読出しコントローラは、ミッシングDataBlockを回復するた めに先に示した段階を行う。この操作の出力は、ミッシング(機能しなかった) DataBlockをもたらす。 クラスタボリューム採り入れられるとき、上記したように、クラスタボジュー ムマスタは、クラスタボリュームの各ブロックへのアクセスを制御する。コンピ ュータシステム10は、各ボリュームに対してクラスタボリュームマスタを決定 するためにプロトコルを供給する。各クラスタボリュームは、説明したかつ好ま しい実施例では、クラスタメンバの全てに関して書込み負荷を分配するために( 可能な程度に)異なるプロセッサシステムメンバによって制御される。クラスタ ボリュームマスタがクラスタプロセッサシステムメンバが機能しなかったという ことを検出したときに、それは、(HomeBlockにおいて)クラスタボリ ューム具現化を進めてかつクラスタボリューム状態のクラスタボリューム“ダー ティビット”をクリアするべく残りのクラスタメンバに指令する。クラスタボリ ュームへの次の書込み操作は、ダーティビットを設定させて、機能しないクラス タメンバがクラスタボリュームを再結合できる前に再構築処理を実行しなければ ならないということを表示する。クラスタメンバが機能しない状態である間に実 施したクラスタプロトコルがクラスタボリュームへの書込みを防ぐならば、機能 しないメンバを再構築する必要がない。 クラスターボリュームは、再構築(リビィルディング)操作中に書き込みロッ クされる必要はない。既に再構築されたデータブロックに対する書き込み操作は 、データブロックを単に更新する。まだ再構築されていないデータブロックに対 する書き込み操作は、単に無視することができ、それらは、後で再構成される。 しかしながら、再構成されている現在のデータブロックに対して書き込み操作を 扱う場合には、特別の注意が、必要とされる。この場合、再構成は完了されるべ きであり、書き込み操作は、再構成されたデータが書き込まれた後、及び後のみ に、実行されるべきである。 他方、システムがデータオブジェクト上で作動する時、システムは、必要な場 合にデータオブジェクトを修正しながら、作動を続ける。失敗したメンバーが復 元された場合、変更されたデータオブジェクトに対してだけ、システムは再構築 プロセスを実行する。残りのオブジェクトは影響されない。この様にして、故障 中であっても、書き込みを実行し続けることが出来、故障はユーザー又は消費者 に対してトランスペアレント(透過)になる。同様に重要なことは、再構築が、 オブジェクト毎に発生し、且つクラスターボリュームの全てが、何等かのファイ ルをボリューム内に書き込むことによって、不利益的に影響されることはないの で、再構築は、よりゆったりとしたペースで実行することができる。 クラスタープロセッサシステムメンバーが一度故障した場合は、如何なる他の クラスタプロセッサシステムメンバーの故障も、クラスターボリュームを、この 説明した実施の形態において読み出し不可能にする。従って、故障クラスターメ ンバーが再構成された後のみに、別の故障を本発明のこの実施の形態が扱うこと が出来る。しかしながら、上述した様に、本発明の他の実施の形態において、2 つ又はそれ以上の故障を扱うことが出来る。しかしながら、より複雑な、従って 、より長い再構成及び暗号化処理を採用することが必要な場合もある。 クラスターの拡張が要求される場合、例えば、クラスターボリュームが一杯と なる時、又はクラスターの容量が増大されることが必要とされる時、本発明の方 法及び装置が、「オンライン」記憶容量を増大するための処理を提供する。例え ば、記憶装置をクラスターに加えるために、ディスク駆動装置が各クラスターメ ンバー(即ち、各プロセッサーシステム12)に加えられ、新たなクラスター又 は新たなデータオブジェクトを作りだすことが出来る。このことは、単純な操作 であり、現存するクラスターボリューム又はデータオブジェクトは、このアップ グレード中に故障許容性を維持する。しかしながら、新たなディスク駆動装置を 「見る」(即ち、認識する)ために、クラスターメンバーを再ブートする必要が 生じる場合もある。 しかしながら、本発明の方法及び装置は、操作中に新たなクラスタープロセッ サシステム(及びそれに関連する記憶装置)を加えることに更に対応することも 出来る。これは、より複雑な装置であり、以下の様に進めることが出来る。 図1に示される様に、新たなクラスターメンバーを、元のクラスタプロセッサ ーシステムメンバー12の各々とネットワーク接続することによって、新たなク ラスタープロセッサシステムメンバーが、クラスター内に挿入される。各クラス ターボリュームは、次にボリュームの何れの場所への書き込みも禁止される様に 「書き込みロックされる」。各クラスターボリュームは、現在のクラスターボリ ュームフォーマットから新たなフォーマットへの変化を開始することによって、 再フォーマット化される。本質的に、この操作は、n個のメンバークラスターボ リュームからn+1メンバークラスターボリュームへの翻訳である。各データブ ロックが読み出され、再書き込みされ、新たなパリティーブロックが発生され、 再フォーマット操作中にシステム故障が発生する場合は進み具合がチェックポイ ントでチェックされる。何れのクラスターボリュームのサイズも、この操作によ っては増加されない。むしろ、各ローカルクラスターボリュームのサイズは減少 され、前記操作から残りのディスクスペースを更に追加のクラスターボリューム 内に構成することが出来る。最後に、クラスターボリュームの再フォーマッティ ングが完了した時、「書き込みロック」がクラスターボリュームから除去される 。図10を参照する。典型的なシステムにおいて、クラスタープロセッサシステ ムメンバーの各々内のクラスターボリュームの種々のサイズが、再フォーマッテ ィングの前及び後の両方で、図示されている。 新たなクラスターメンバーが、記憶されたデータのフォーマットがデータオブ ジェクト内にあるシステムに加えられる時、現存するデータオブジェクトは、n 個の名前付けフラグメントファイルをn+1個の名前付けフラグメントファイル に、再フラグメント化される必要がある。この操作は、新たな名前付けフラグメ ントファイルが発生されるまで、元のデータオブジェクトにアクセスすることを 可能とするバックグラウンドアクティビィティとして生じことが出来る。新たな フラグメントファイルが存在しさえすれば、古いフラグメントファイルは削除す ることができる。この処理は、従って、「空き時間」に生じ、名前付けフラグメ ントファイルが使用不可能である時間は無い。 図11乃至13を参照する。図1の構造と関係して利用し得る切り換えシステ ムが図示されており、故障許容操作が、上述されたシステムに対して柔軟性(res iliency)及び耐久性(robust)、そして比較的低いコストを与える。 最も一般的な概念で、本発明が適用可能なビテオ挿入システムにおいては、2 n個の入力の何れかをn個の出力の何れか上に設置することが出来る2n×nク ロスバーシステムを有することが望まれる。この様なクロスバーシステム100 は、図11を参照すると、例えば、n個の(割込可能な)のネットワークフィー ド102、及びネットワークフィードを選択的に置き換えるのに使用するとこの 出来るn個の広告又は他の割込フィード104を有することが出来る。n個の出力 選択106の各々は、ネットワークフィードの一つを表す。このフィードは、割 込フィード104の一つと、時間経過と共に切り換えられる。n個の出力は、例 えば、ケーブルネットワークを介して、送信用出力チャンネルと接続している。 柔軟性が劣り従ってある程度不利であるより簡単な方法が、図12に図示され ている。2n×n個のスイッチ108は、n個の2×1スイッチ110と置き換 えられている。この構成において、ネットワーク入力112が各2×1スイッチ 110に与えられ、割込又は他の入力114が各2×1スイッチ110に同様に 与えられる。このシステムは、割込フィードの何れもが失われないと仮定した場 合に、上手く作動する(ライン114を介しての割込フィードは典型的にはプロ セッサシステム12によって発生され、ネットワークフィードが信頼性があり且 つつねに存在すると暗黙的に仮定されている。)。プロセッサシステムの故障に より、割込フィードが失われると、割込フィードの代替的ソースが準備されてい ないので、ライン116を介しての出力は正しく無い。次に要約すると、典型的 なシステムにおいて、ライン112を介してのネットワークフィードは常に信頼 性があり且つ利用可能であると考えられる。従って、故障する可能性のあるのは ライン114を介しての割込フィードだけである。割込フィードは、例えばプロ セッサシステム12によって通常設けられ、従って、プロセッサシステム12が 故障する場合、図12に構成される様なスイッチ110には、(例え、図11に 与えられるクロスバースイッチであっても、故障したソースは置き換えることが 出来ないので、)回復するための柔軟性又は耐久性は無い。 しかしながら、本発明によれば、「スペア」スイッチドシステムが提供され、こ のシステムを用いて、図12の実施例のフェールした割り込みフィードを耐久力 のある柔軟な方法で置き換えることができる。ここで、図13を参照すれば明ら かなように、本発明は、1つの完全なスペアを設けることによってシステムプロ セッサからのフェールした挿入フィードを補償する方法と装置を提供するもので ある。このスペアシステムは、複数の作動システムをリング構造に相互に接続し て、耐久力のあるフォールトトレラント信号(例えば、ビデオ)デリバリシステ ムを作り出している。図13は、局所プロセッサシステムによって発生された2 個の割り込みフィードと2個のネットワークフィードとが存在するような制限型 ビデオデリバリシステムを示している。他の実施例では、より多くのネットワー ク割り込み可能・割り込みフィードを使用することができ、このシステムはそれ に応じて比例尺で設計され得る。ライン130、132上の、NET0、NET 1で示されたネットワークフィードは、各ビデオ挿入フィードシステム134、 136へそれぞれ入力される。各ビデオ挿入フィードシステムは、1つのプロセ ッサシステム138、140(このプロセッサシステムは図1に関連して記述し たプロセッサシステム12と同じものにすることができる)と1つのスイッチド システム142、144とを有しており、スイッチドシステム142、144は 、以下に記述されているような制御された方法で、その4つの入力の中の幾つか をその出力ライン上に配置することができる。 スイッチドシステムは、OUT0,OUT1として示されたネットワークフィ ード出力信号をライン146、148上に与える。図示実施例において、スペア ビデオ挿入フィードシステム150は、ビデオシステム134、136のプロセ ッサシステムとスイッチドシステムとの相互接続をミラーする(mirroring)スイ ッチドシステム154と、プロセッサシステム152と、を有しており、このス ペアビデオ挿入フィードシステム150は、以下に記述された状態下でフォール トトレラントを与える。 プロセッサシステム138、140、152は、ポイント・ツー・ポイント接 続によって相互に接続されており、また、これらのプロセッサシステムは、図1 に関連して示したより大きなコンピュータシステムについて記述されたものと同 じ方法で互いに動作する。従って、いずれのプロセッサシステム138、140 、152も他のプロセッサシステムによって記憶されたビデオに対するアクセス を有し、また、このビデオは、好ましくはRAID−5プロトコルに従ってプロ セッサレベルで記憶される。図示実施例において、ビデオオブジェクトは、これ またRAID−5プロトコルに従ってプロセッサの局所ディスクアレイに記憶さ れる。各プロセッサシステムは、出力フィード(一般には、ネットワークフィー ド)をその関連するスイッチドシステムからライン160、162、164上で 受け取って、入力フィード、例えば、広告に応答して、n割り込み出力をその関 連するスイッチドシステムにライン166、168、170上で与える。ライン 160、162、164、166、168、170上で運搬される信号は以下に より詳細に述べるようにビデオ信号である。 ビデオシステム134、136、150は、それらのスイッチドシステムを通 じてリング構造で相互に接続されている。故に、各スイッチドシステムは、17 2、174、176で示された、リング構造の隣接するビデオシステムへの入力 となる、出力を与え、また、ビデオシステム134、136のネットワーク入力 は、他の入力として、リング上の他の隣接するスイッチドシステム(このスイッ チドシステムは、上に述べたように、自身とは別の隣接システムから入力信号を 受け取る)へ接続される。こうして、NET1入力は、スイッチドシステム14 4とスイッチドシステム142の両方に与えられ、一方、NET0入力は、スイ ッチドシステム142とスイッチドシステム154へ与えられる。出力173、 174、176はそれぞれ、システム144、154、142への入力として接 続される。各プロセッサシステムはまた、プロセッサ自身から、若しくは、一般 にはプロセッサCPUによって制御されるオン・ボードコントローラ12aを通 じて、のいずれかにより、以下により詳細に記述されている2つのスイッチ制御 信号を与える。 図14を参照すると、ここには、図13の説明に関連して、ビデオシステムが 下方ラウンドロビン方向にスイッチできるようにする(つまり、ビデオシステム 134やビデオシステム136がフェールした場合に、スペアビデオシステム1 50がビデオシステム134の動作を置き換えることができるという意味である )ビデオシステムの好ましい実施例が示されている。上に述べたように、プロセ ッサのフェールによってビデオシステム134がフェールした場合(スイッチド システムはフェールしないと仮定する)、スペアビデオシステム150はそれを 置き換えて、訂正割り込みフィードをスイッチドシステム142へ与える。プロ セッサシステム故障によってビデオシステム136がフェールした場合、連鎖反 応で、ビデオシステム134は訂正割り込みフィードをスイッチドシステム14 4へ与えるように動作し、ビデオシステム150はその後、訂正割り込みフィー ドをビデオシステム134のスイッチドシステム142へ与えるように動作する 。この「下方」運動は、例えば、9つのネットワークフィード(この場合、回路 部品134のような9つのネットワークビデオシステムが存在する)とシステム 150に対応するスペアビデオシステムとを有しているような、より大きな動作 システムに拡張され得る。他の実施例では、リングを、上方に、即ち、下に記述 されているように、運動するように構成を変更することができ、スイッチドシス テムは、リングの運動を、図13に示されるように上方、若しくは、下方方向の いずれかに向けることができる。この後者の形態では、相互接続構造は以下に記 述されているようにより複雑である。 次に図14を参照すると、この図示実施例では、図13の各スイッチドシステ ムは、2つのマルチ入力シングル出力制御スイッチ素子190、192を有して いる。図14では、参照番号は、図13の参照番号、特に、図示されたビデオシ ステム134に対応する。 通常の動作では、ライン130上のネットワークフィードは、各スイッチ19 0、192のデフォルト、即ち、番号1位置へ向けられる。従って、ライン13 0上の信号は、スイッチ192を通じて送られ、ライン146上に出力される。 同時に、信号はスイッチ190を通じても送られ、ライン160上でプロセッサ システム138へ出力される。プロセッサシステムは、入力信号を分析し、ライ ン130上の信号に割り込んでそれを置き換えるような挿入を、ライン166上 に、正確な時間で与える。これはスイッチ素子192によって影響されるもので あり、このスイッチ素子192は、ライン146上の信号を、その番号1位置に 接続されているものから、その番号3位置に接続されているものへ変更する。( スイッチ190)192の出力をスイッチするためのコントローラ(及び制御ラ イン)は説明を明確にするため省略されている。しかしながら、各プロセッサは 、それに関連するスイッチと少なくとも1つの隣接スイッチのスイッチング機能 をリングがフェールアップするのか、フェールダウンするのか、若しくは、任意 にいずれかの方向にフェールするのかどうかに依存して制御するような2つ(若 しくは3つ)の制御ラインを有する。プロセッサは更に、好ましくは、イーサネ ットのような他の通信ラインを通じて相互に接続されているため、各プロセッサ は他の各プロセッサによって取られた状態や動作を知っている。これにより、本 明細書に記述されているようなフェールしたプロセッサに対する秩序立てられた 補償が可能である。)ライン166上の挿入(割り込み)ビデオが終了したとき 、スイッチ素子192はその「デフォルト」番号1位置へ戻る。このように、通 常の動作では、スイッチ192は、コントローラの制御下で、(図1に示された より複雑なシステムのより簡単な型として)図13に示されているプロセッサ相 互接続に従って、プロセッサシステム138が訂正割り込みビデオを発生したと きに後方と前方をスイッチする。 図13に関して、もし、ビデオシステム136のプロセッサ140が故障した ならば、フォルトトレラントシステムの第1の処置は、ビデオシステム134が スイッチドシステム144のために必要な挿入ビデオ信号を生成し、ライン17 2を介して、それらの挿入信号をスイッチドシステ144へ供給するように、ビ デオシステム134を変更することを定めている。従って、また、図14に関し て、動作のこの故障状態では、ビデオシステム134に接続する、ビデオシステ ム136のためのネットワークフィーダー、すなわちライン132上のNET1 は、ビデオシステム134のスイッチ素子190によって切り換えられ、スイッ チ素子190の出力、すなわちライン160に配置される。この新しいビデオに 応答して、プロセッサシステム138は、ライン166上に挿入ビデオを生成す る。その挿入ビデオは、ライン172上でもまた有効である。このように、その 挿入ビデオ信号は、スイッチドシステム144に供給され、それから、スイッチ ドシステム142のスイッチ192に対応するそのスイッチは、その対応するラ イン入力4の入力を、ライン146へ接続し、それを「OUT1」としてライン 146上に出力する。 しかしながら、この交換処理において、ビデオシステム134は、そのプロセ ッサシステム138の能力を失ってしまう。従って、それは予備のビデオシステ ム150及びそのプロセッサシステム152に変わる。そのプロセッサシステム は、スイッチドシステム154と組み合わさって、ライン176上に適切な挿入 ビデオを供給する(適当な挿入制御信号と同時に)。こうして、適当な時に、ス イッチ192は、その出力のライン176上で有効な挿入ビデオを、ライン14 6上に配置し、OUT0になるように切り換える。挿入が終了した後、スイッチ 192は、そのデフォルト値に戻り、そのネットワーク入力であるNET0をス イッチ位置1にその出力として配置する。この方法では、ビデオシステム134 、136、150は冗長性をもって互いの「代わり」をし、1つのプロセッサシ ステムの故障が、配布システムの動作に決して不都合に影響しないようにする。 スイッチドシステム142、144、154が環状構成に連結されるためだけ ではなく、プロセッサシステム自体が、図1の実施例に従って、冗長なやり方で 連結されて、動作するためにも、この環状の冗長性は動作する。このように、各 々のプロセッサシステムは、全てのネットワークフィーダーに対して、共有のシ ステムメモリに冗長性をもって記憶された必要な挿入ビデオ対象を完全に得るこ とができる。 図13及び図14で示される実施例は、「上り方向」に故障する。例えば、ビ デオシステム136は、そのネットワーク入力をビデオシステム134ではなく 、予備のビデオシステム150へ供給し、従って、ライン174上のその出力を 予備のビデオシステム150ではなく、ビデオシステム134へ供給するように 、「隣接する接続」を簡単に変更することによって、システムは、反対方向に故 障する。 ビデオ配布システムの第2の特定の実施例では、故障したシステムに応答して 、「両方向に」シフトできるより複雑なビデオスイッチドシステムが提供される 。これは、予備への故障の近さに応じて、環状接続が上りもしくは下りに故障し 、故障した状態を修正するための時間の遅延を減少するようにすることを意味す る。しかしながら、図13及び図14に関して、このシステムを使用する必要は なく、単一方向の故障システムは、殆どの故障状態で実質的に同様に動作すると いうことが分かるであろう。 相応して、図15及び図16に関して、両方向に故障可能な3つの構成要素の 環状システムを示す。このシステムは、図13及び図14に関して示されるビデ オ配送システムの方法に対応する方法で動作する。従って、その詳細な動作を説 明する必要はない。環状システムは、2つのビデオシステム200及び202を 有し、それらの各々は、ビデオプロセッサ204、206及びスイッチドシステ ム208、210をそれぞれ有する。加えて、ビデオプロセッサ214及びスイ ッチドシステム216を有する予備のビデオシステム212がある。(図に他の 接続をより明確に示す目的のために、プロセッサ204、206、214間の2 地点間、双方向、連結チャネル及びプロセッサコントローラは示されていない。 )動作中、もし、故障が発生するならば、最も近い「下位の」隣のシステムまで 上方にシフトすることによって、もしくは、その他方の隣のシステムまで下方に シフトすることによって、故障システムを交換することができる。原則的に、シ フトの方向は、環のどこで故障が発生したかに応じて変わる。従って、ビデオ配 布システムの完全な動作を実現するために必要とされるわずかなシフトが、環に 沿ってシフトの方向を決める。 シフトの方向とは無関係に、図15に関して、この図の実施例では、予備のビ デオプロセッサ212のプロセッサシステム214は、故障してしまったプロセ ッサシステムの代わりを務める。予備のシステム及び故障したシステムのための スイッチドシステムのスイッチ素子は、スチッチを再構成し、故障したシステム のためのネットワーク入力を予備システムに供給するようにする。その予備シス テムは、そのネットワーク入力を、そのプロセッサシステムに供給する。それか ら、プロセッサシステムのビデオ挿入出力は、予備のスイッチドシステムを介し て、配布のための故障したプロセッサに対応するスイッチシステムに、適当な時 間に、その出力に送られる。2つよりも多数の入力ネットワークフィーダーが使 用される時、より多数の構成要素の環状システムを使用することが可能である。 そして、図13及び図14の実施例のように、予備のビデオシステムが使用され るまで、そのビデオシステムは、故障したプロセッサの代わりを務める1番近い 隣のシステム、それから、1番近い隣のシステムのプロセッサの代わりを務める ように動作する次の2番目に近い隣のシステム、等々とつながる。 図16に関して、本発明の特定の実施例の1つでは、上記で説明した切り換え が行われるようにするために、一般的なスイッチドシステムは、図16で示され るように接続される4つの複数入力スイッチ180、182、184、186を 有する。図17に関して、図16の各々のスイッチに対して、スイッチが「通常 」状態で動作しているか、上方に故障状態で動作しているか、もしくは、下方に 故障状態で動作しているかどうかに応じてそのステータスを示す真理値表が提供 される。マトリックス内の数字は、図16のスチッチに対して、出力に送るべき 入力を認定する。(「X」は、「処理不要」状態を示す。)スイッチ4(参照番 号186)に対して、選定される入力は、スイッチが、その出力ポートに、割り 込み可能な入力(「ノーインサート」)を配置することを要求されるか、割り込 む入力(「インサート」)を配置することを要求されるかに応じて変わる。シス テムの動作をより良く理解できるように、図13及び図14の回路のように、プ ロセッサコントローラ及びスイッチ180、182、184、186の各々への コントロールラインについては詳述しない。 本発明の好ましい実施例の付加、控除、他の変更は、当業者にとって明らかで あり、それらは、請求の範囲に記載した範囲内にある。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04N 7/173 610 H04N 7/173 610B (72)発明者 カーロッジー マイケル ディー アメリカ合衆国 マサチューセッツ州 02021 キャントン フェンコート ロー ド 31 (72)発明者 イウォスクス ジョン エイ アメリカ合衆国 ニューハンプシャー州 03054 メリマック ハンソン ロード 22 (72)発明者 マックグラース エドワード ジェイ アメリカ合衆国 マサチューセッツ州 01778 ウェイランド オールド コネチ カット パース 68

Claims (1)

  1. 【特許請求の範囲】 1.各々が少なくとも1つの中央処理装置および少なくとも1つの大容量記憶サ ブシステムを備える少なくとも3つのプロセッサシステムを有する分散形コンピ ュータシステムにおいて冗長性をもってデータを記憶する方法において、 前記プロセッサシステムを互いにポイント−ポイント二方向チャンネル相互接 続にて相互接続する相互接続ステップと、 データが前記プロセッサシステムの各々に記憶され且つデータの冗長表現のう ちのあるものが前記プロセッサの各々に記憶されるように、分散形冗長記憶プロ セスにしたがって前記プロセッサシステムのうちのいずれか1つにデータ入力を 記憶する記憶ステップと、 を含むことを特徴とする方法。 2.前記記憶ステップは、RAID−5プロセスにしたがって前記プロセッサシ ステムに亘ってデータを記憶するステップを含む請求項1記載の方法。 3.RAID−5プロセスにしたがって各プロセッサシステムにデータを記憶す るステップをさらに含む請求項2記載の方法。 4.前記コンピュータシステムからデータを読み出すのに、前記プロセッサシス テムのいずれにも故障のない場合には、前記プロセッサシステムに亘ってロード バランスがとられるように、前記データチャンネル相互接続の各々を通して前記 プロセッサシステムの各々からデータを読み出すステップをさらに含む請求項1 記載の方法。 5.前記コンピュータシステムからデータを読み出すのに、前記プロセッサシス テムの1つに故障がある場合には、前記データを記憶している故障していないプ ロセッサシステムの各々からデータを読み出し、前記故障しているプロセッサシ ステムに記憶された前記データの代わりに、前記故障していないプロセッサシス テムから冗長データを読み出し、前記故障していないプロセッサシステムから読 み出されたデータおよび前記冗長データを使用して前記故障しているプロセッサ システムに記憶された前記データを作り直す請求項4記載の方法。 6.前記データ入力を記憶するステップは、RAID−5プロセスにしたがって 前記入力データを記憶するステップを含む請求項5記載の方法。 7.前記各プロセッサシステムは、RAID−5プロセスにしたがってその関連 した大容量記憶サブシステムにデータを記憶する請求項6記載の方法。 8.前記プロセッサシステムのうちのいずれかが故障している間は、前記プロセ ッサシステムのうちのいずれかの前記大容量記憶サブシステムへのデータの書込 みを阻止するステップをさらに含む請求項5記載の方法。 9.前記記憶ステップは、前記コンピュータシステムのためのすべての書込み機 能を行うように1つのプロセッサシステムを指定するステップを含む請求項1記 載の方法。 10.前記記憶ステップは、1つのプロセッサシステムに各データ入力のためのフ ァイルを割り当て、すべてのプロセッサシステムがその関連した割り当てられた ファイルへ入力データを書き込めるようにすることを含む請求項1記載の方法。 11.前記記憶ステップは、分散形ロックマネージャを使用して前記プロセッサシ ステムの間での書込みオペレーションをアービトレーションするステップを含む 請求項1記載の方法。 12.前記データ入力を記憶するステップは、前記各プロセッサシステムに指定フ ラグメントファイルとして前記入力データを記憶するステップを含む請求項1記 載の方法。 13.前記データ入力を記憶するステップは、RAID−5プロセスにしたがって 前記入力データを記憶するステップをさらに含む請求項12記載の方法。 14.前記分散形コンピュータシステムに1つのプロセッサシステムを加え、前記 分散形コンピュータシステムが1つの出力ストリームとして、アクティブに記憶 データを送出し続ける間に、前記指定フラグメントファイルを再構成して、すべ てのプロセッサシステムに亘るように拡張させる請求項13記載の方法。 15.プロセッサシステムが故障状態にある間、データオブジェクトのみを再構成 することによって、該故障プロセッサシステムを再構成するステップをさらに含 む請求項14記載の方法。 16.データを冗長的に記憶するための少なくとも3つのプロセッサシステムを有 する分散型コンピュータシステムであって、各プロセッサシステムは、少なくと も1つのCPUと少なくとも1つの大容量記憶サブシステムを有しており、 前 記プロセッサシステムの各1つから前記プロセッサシステムの他の各1つへ、2 点間の2方向チャネル相互接続を与える相互接続チャネル、及び 各プロセッサシステムにおけるデータ記憶制御装置であって、前記制御装置は 、分散型冗長記憶プロセスによる前記プロセッサしすめうのいづれか1つに入力 されたデータを記憶し、それにより、データは前記プロセッサシステムの各々に 記憶され、且つデータの冗長表現の幾つかが前記プロセッサの各々に記憶される ことを特徴とする分散型コンピュータシステム。 17.前記記憶制御装置はRAID−5プロセスによる前記プロセッサシステムを 横切ってデータを記憶することを特徴とする請求項16に記載の分散型コンピュ ータシステム。 18.更に、前記制御装置は前記コンピュータシステムからデータを読み取り、前 記プロセッサシステムの何れかの故障のない場合、前記制御装置は前記相互接続 チャネルのそれぞれのものに関して前記プロセッサシステムの各々からデータを 読み取り、それにより前記制御装置は前記プロセッサシステムで負荷バランスを 確立することを特徴とする請求項16に記載の分散型コンピュータシステム。 19.さらに、前記コントローラは、前記コンピュータシステムからのデータを、 前記プロセッサシステムのいずれもが故障のない場合には、前記相互接続チャン ネルのそれぞれを介して前記各プロセッサシステムからデータを読み込み、これ によって、前記コントローラが前記プロセッサシステムにわたる負荷バランスを 確立することを特徴とする請求項16記載の装置。 20.前記制御装置は前記コンピュータシステムからのデータを読み取り、前記プ ロセッサの1つが故障の場合、前記制御装置は前記データを記憶する故障のない 各々のプロセッサシステムからデータを読み取り、また前記故障したプロセッサ システムに記憶された前記データの代わりに前記故障のないプロセッサシステム から冗長データを読み取り、且つ 要求するプロセッサシステムは、前記読み取りデータおよび前記冗長データを 用いて、前記故障したプロセッサシステムに記憶された前記データを再構築する ことを特徴とする請求項16に記載の分散型コンピュータシステム。 21.前記データ記憶制御装置は、RAID−5のプロセスによって、プロセッサ 間の前記入力データを記憶することを特徴とする請求項18に記載の分散型コン ピュータシステム。 22.各々の前記プロセッサシステムの制御装置は、RAID−5のプロセスによ って、その関連する大容量記憶装置上のデータを記憶することを特徴とする請求 項21に記載の分散型コンピュータシステム。 23.前記記憶制御装置は、前記プロセッサシステムの何れかが故障している間、 前記処理システムの何れかの大容量記憶サブシステムの全てのデータの書き込み を阻止することを特徴とする請求項20に記載の分散型コンピュータシステム。 24.1つのプロセッサシステムは、前記コンピュータシステムに対する全ての書 き込み機能に影響を与えるように選定されることを特徴とする請求項20に記載 の分散型コンピュータシステム。 25.1つのプロセッサシステムは、各データ入力に対するファイルを割り当て、 且つ、 各プロセッサシステムは、その関連する割り当てられたファイルへ入力データ を書き込むことが可能であることを特徴とする請求項16に記載の分散型コンピ ュータシステム。 26.前記制御装置は、分散型ロックを用いて前記プロセッサシステム間の書き込 み動作を調整することを特徴とする請求項16に記載の分散型コンピュータシス テム。 27.更に、前記記憶制御装置は、前記分散型コンピュータシステムにおけるフラ グメントファイルと呼ばれる前記入力データを記憶することを特徴とする請求項 16に記載の分散型コンピュータシステム。 28.前記記憶制御装置は、RAID−5のプロセスにより前記プロセッサシステ ムにわたってフラグメントファイルと呼ばれる前記データオブジェクトを記憶す ることを特徴とする請求項27に記載の分散型コンピュータシステム。 29.n個のインタラプト可能な入力、n個のインタラプト入力及びn個の出力を 有する冗長スイッチであって、 (n+1)個のスイッチドシステムを備え、各スイッチドシステムは、少なく とも2つの制御入力、第1の入力、第2の入力、第3の入力及び第4の入力、並 びに、第1の出力及び第2の出力を有し、各スイッチドシステムは、その第2の 出力においてインタラプト信号発生器に接続され、前記関連する信号発生器のイ ンタラプト出力は、前記接続されたスイッチドシステムの第2の入力に接続され 、 前記スイッチドシステムは、各スイッチドシステムが、さらに、第1の入力、 第3の入力に接続された第1の隣接スイッチドシステムの第2の入力、及び、第 4の入力に接続されたリング上の他の隣接スイッチドシステムからのインタラプ ト可能な入力に接続されたインタラプト可能な入力信号を有するように、リング 構造に相互接続され、 各前記スイッチドシステムは、前記制御入力に応答してその入力のいずれか を少なくともその第1の入力にスイッチングするとともに、その第1と第4の入 力のいずれかをその第2の出力に接続するスイッチング回路を有し、 前記スイッチドシステムの前記制御入力を与える制御システムを備える、 ことを特徴とする冗長スイッチ。 30.n個のインタラプト可能な入力、n個のインタラプト入力及びn個の出力を 有する冗長スイッチであって、 (n+1)個のスイッチドシステムを備え、各スイッチドシステムは、少なく とも2つの制御入力、4つの信号入力、及び、2つの信号出力を有し、各スイッ チドシステムは、その出力の1つにおいて、関連するインタラプト信号発生器に 接続され、前記関連する信号発生器のインタラプト出力は、前記接続されたスイ ッチドシステムの入力に接続され、 前記スイッチドシステムは、各スイッチドシステムが第1と第2の隣接スイッ チドシステムに接続されるように、リング構造に相互接続され、 各前記スイッチドシステムは、前記制御入力に応答してその入力をその出力 に選択的にスイッチングするスイッチング回路を有し、 前記スイッチドシステムの前記制御入力を与えて、前記スイッチドシステムが 信号スイッチングファンクションをリングのまわりのいずれかの方向の1つの位 置へ選択的に回転できるようにし、それにより、故障した信号発生器がバイパス されて前記n個の第1の出力上の信号がインタラプトされずに送り続けられるよ うになった制御システムを備える、 ことを特徴とする冗長スイッチ。 31.前記制御システムは、スイッチング信号ファンクションをリングのまわりの いずれかの方向に選択的に回転できることを特徴とする請求項30に記載の冗長 スイッチ。 32.分散型データデリバリシステムであって、 データを冗長的に記憶する少なくとも3つのプロセッサシステムを備え、各プ ロセッサシステムは、少なくとも1つの中央処理装置と少なくとも1つの大量記 憶サブシステムを有し、 前記プロセッサシステムの各々1つから前記プロセッサシステムの各々他の1 つまでにポイント−ツウ−ポイントの2方向チャンネル相互接続を与える相互接 続データチャンネルを備え、 各プロセッサシステムにデータ記憶コントローラを備え、前記コントローラは 、分散された冗長記憶プロセスに従って前記プロセッサシステムのいずれか1つ にデータ入力を記憶し、それにより、データが前記プロセッサシステムの各々に 記憶され、そのデータの冗長表現が前記プロセッサの各々に記憶されるようにな っており、 n個のインタラプト可能な入力ポート、少なくともn+1個のインタラプト入 力ポート、及び、少なくともn+1個の出力ポートを有するスイッチング回路を 備え、前記n個のインタラプト可能な入力ポートは、それぞれの一次プロセッサ システムに接続され、前記一次プロセッサシステムの各々は、それぞれのインタ ラプト入力ポートに接続された出力を有し、 前記プロセッサシステムの各々は、前記スイッチング回路の2つに接続され、 前記プロセッサシステムのそれぞれ1つから得られる信号情報でn個のインタラ プト可能な入力ポートの1つを選択的にインタラプトすることが可能であり、 前記プロセッサシステムは、1つのプロセッサシステムにおいて故障が生じた 場合に、前記プロセッサシステムのうち以前に使用されていないものを使用して 、前記スイッチング回路に、故障したプロセッサシステムのインタラプト可能な 入力ポートを異なるプロセッサシステムに接続させるとともに、前記故障したプ ロセッサシステムの出力を前記異なるプロセッサシステムの出力と交換させるよ うにする、 ことを特徴とする分散型データデリバリシステム。 33.分散型データデリバリシステムであって、 データを冗長的に記憶する少なくとも3つのプロセッサシステムを備え、各プ ロセッサシステムは、少なくとも1つの中央処理装置と少なくとも1つの大量記 憶サブシステムを有し、 前記プロセッサシステムの各々1つから前記プロセッサシステムの各々他の1 つまでにポイント−ツウ−ポイントの2方向チャンネル相互接続を与える相互接 続データチャンネルを備え、 各プロセッサシステムにデータ記憶コントローラを備え、前記コントローラは 、分散された冗長記憶プロセスに従って前記プロセッサシステムのいずれか1つ にデータ入力を記憶し、それにより、データが前記プロセッサシステムの各々に 記憶され、そのデータの冗長表現が前記プロセッサの各々に記憶されるようにな っており、 (n+1)個のスイッチドシステムを備え、各スイッチドシステムは、少なく とも2つの制御入力、第1の入力、第2の入力、第3の入力、及び、第4の入力 、並びに、第1の出力及び第2の出力を有し、各スイッチドシステムは、その第 2の出力において、プロセッサシステムに接続され、前記関連のプロセッサシス テムのインタラプト出力は、前記接続されたスイッチドシステムの第2の入力に 接続され、 前記スイッチドシステムは、各スイッチドシステムが、さらに、第1の入力、 第3の入力に接続された第1の隣接スイッチドシステムの第2の入力、及び、第 4の入力に接続されたリング上の他の隣接スイッチドシステムからのインタラプ ト可能な入力に接続されたインタラプト可能な入力信号を有するように、リング 構造に相互接続され、 各前記スイッチドシステムは、前記制御入力に応答してその入力のいずれか を少なくともその第1の入力にスイッチングするとともに、その第1と第4の入 力のいずれかをその第2の出力に接続するスイッチング回路を有し、 前記プロセッサシステムは、前記スイッチドシステムの前記スイッチ制御入力 を与える、 ことを特徴とする分散型データデリバリシステム。 34.データを冗長に記憶するため少なくとも3つのプロセッサシステムから成り 、各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つの 大容量記憶サブシステムから成る分散型データデリバリシステムにおいて、 ポイントツーポイント・2ウエイ・チャンネル相互接続を、前記プロセッサシ ステムの1つから該プロセッサシステムの他の1つへ提供する、相互接続データ チャンネルと、 各プロセッサシステムに設けられたデータ記憶コントローラであって、データ が各プロセッサシステムに記憶されてデータの冗長表示がプロセッサの各々に記 憶されるように、分散、冗長記憶処理に従って、前記プロセッサシステムのいず れか1つにデータ入力を記憶するデータ記憶コントローラと、 (n+1)個のスイッチドシステムであって、各スイッチドシステムが、少な くとも2つの制御入力と4つの信号入力と2つの信号出力とを有し、且つ、該ス イッチドシステムの各々が、その出力の1つが関連のプロセッサシステムに接続 されており、該関連のプロセッサシステムのインタラプト出力が前記接続された スイッチドシステムの入力に接続されている、スイッチドシステムとを備え、 前記スイッチドシステムは、各スイッチドシステムが第1及び第2の隣接する スイッチドシステムに接続されるように、リング構造に相互接続されており、 各スイッチドシステムは、その入力をその出力に選択的にスイッチングするた めに、前記制御入力におけるスイッチ制御信号に応答するスイッチング回路を有 しており、 前記プロセッサは、故障した信号プロセッサシステムがバイパスされて且つ前 記n個の第1出力の信号が損なわれずに連続するように、前記スイッチドシステ ムが、前記リング回りの1つの位置に信号スイッチング機能を有効に回転できる ようにする前記スイッチドシステムへの前記スイッチ制御入力出力を提供してい る ことを特徴とするシステム。 35.請求項24に記載の分散型データデリバリシステムにおいて、前記プロセッ サは、前記リングの回りをいずれの方向にも信号スイッチング機能を有効に回転 することを特徴とするシステム。 36.少なくとも2つのプロセッサシステムを有し、各プロセッサシステムが少な くとも1つの中央処理ユニットと少なくと1つの大容量記憶サブシステムから成 る、分散型コンピュータシステムにデータを冗長に記憶する方法において、 ポイントツーポイント・2ウエイ・チャンネル相互接続において前記プロセッ サシステムのいずれか1つを該プロセッサシステムの他のいずれか1つに相互接 続するステップと、 データが各プロセッサシステムに記憶されてデータの冗長表示が該プロセッサ の各々に記憶されるように、分散、冗長記憶処理に従って、前記プロセッサシス テムのいずれか1つにデータ入力を記憶するステップと、 前記コンピュータシステムからデータを読み出すステップであって、前記プロ セッサシステムのいずれの故障もない場合に、前記プロセッサシステムの各々か ら前記データチャンネル相互接続の各々にわたってデータを読み出すステップと から成り、該読み出しステップが前記プロセッサシステムのロードバランスを確 立する ことを特徴とする方法。 37.請求項36に記載の方法において、RAID−5プロセスに従って、各プロ セッサシステムでデータを記憶するステップを含むことを特徴とする方法。 38.データを冗長に記憶する少なくとも2つのプロセッサシステムを有し、各プ ロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つの大容量 記憶サブシステムから成る、分散型コンピュータシステムにおいて、 前記プロセッサシステムのいずれか1つから該プロセッサシステムの他のいず れか1つへのポイントツーポイント・2ウエイ・チャンネル相互接続を提供する 相互接続チャンネルと、 各プロセッサシステムに設けられたデータ記憶コントローラとを備え、該コン トローラは、データが各プロセッサシステムに記憶されてデータの冗長表示がプ ロセッサの各々に記憶されるように、分散、冗長記憶処理に従って、前記プロセ ッサシステムのいずれか1つにデータ入力を記憶しており、 前記コントローラは、前記コンピュータシステムからデータを読み出して、前 記プロセッサシステムのいずれの故障もない場合に、前記プロセッサシステムの 各々から前記相互接続チャンネルの各々にわたってデータを読み出して、該コン トローラが前記プロセッサシステムのロードバランスを確立する ことを特徴とするコンピュータシステム。 39.請求項38に記載のシステムにおいて、各記憶コントローラは、RAID− 5プロセスに従って、各プロセッサシステムにデータを記憶することを特徴とす るシステム。 40.各プロセッサシステムが、少なくとも1つの中央処理ユニットと少なくとも 1つの大容量記憶サブシステムを有する、少なくとも3つのプロセッサシステム を有する分散型コンピュータシステムにおける冗長的にデータをストアする方法 であって、 データ通信のためのネットワークを介して、前記プロセッサシステムのそれぞ れを、前記プロセッサシステムの他のそれぞれと相互接続し、 分散した、冗長的記憶プロセスにしたがって、前記プロセッサシステムの任意 の1つにデータ入力をストアし、これによって、データが前記プロセッサシステ ムのそれぞれにストアされ、データの冗長表示が前記プロセッサシステムのそれ ぞれにストアされるステップを備えていることを特徴とする方法。 41.前記ストアするステップが、RAID−5プロセスに従う前記プロセッサシ ステムにわたってデータをストアするステップを備えていることを特徴とする請 求項40に記載の方法。 42.さらに、RAID−5プロセスに従うそれぞれのプロセッサシステムにデー タをストアするステップを備えていることを特徴とする請求項41に記載の方法 。 43.さらに、いずれの前記プロセッサシステムにも故障がない場合には、前記デ ータ通信ネットワークを介して前記プロセッサシステムのそれぞれから前記コン ピュータシステムからのデータを読み出し、前記読出ステップが前記プロセッサ システムにわたって負荷バランスをとるステップを備えていることを特徴とする 請求項40に記載の方法。 44.さらに、前記コンピュータシステムからのデータを読みだすステップを備え ており、 前記プロセッサシステムの一つに故障がある場合には、前記読出ステップは、 故障のある場合に、前記データをストアする故障していないのプロセッサシス テムのそれぞれからデータを読み出し、 前記故障したプロセッサシステムにストアされた前記データの代わりに前記故 障していないプロセッサシステムから冗長データを読み出し、前記冗長データ及 び前記故障していないプロセッサシステムから読み出されたデータを用いて前記 故障したプロセッサシステムにストアされたデータを再生するステップを備えて いることを特徴とする請求項43に記載の方法。 45.前記データ入力ストアリングステップがRAID−5プロセスにしたがって 、前記入力データをストアするステップを備えていることを特徴とする請求項4 4に記載の方法。 46.前記プロセッサシステムがRAID−5プロセスに従うこれと協働する大容 量記憶サブシステム上にデータをストアすることを特徴とする請求項45に記載 の方法。 47.さらに、前記いずれかのプロセッサシステムに故障が存在している場合には 前記プロセッサシステムのいずれの大容量記憶サブシステムにあるいずれのデー タの書き込みも禁止するステップを有することを特徴とする請求項44に記載の 方法。 48.前記ストアリングステップが、前記コンピュータシステムに対する全ての書 き込み機能を有効にするために1つのプロセッサシステムを指定するステップを 備えていることを特徴とする請求項40に記載の方法。 49.前記ストアリングステップが、一つのプロセッサシステムにそれぞれのデー タ入力に対するファイルを割り当て、 すべてのプロセッサシステムが入力データをこれが協働する割り当てられたフ ァイルに書き込みできるようにするステップを備えていることを特徴とする請求 項40に記載の方法。 50.前記ストアリングステップが、分散されたロックマネージャーを使用して前 記プロセッサシステム内の書き込み動作を調停するステップを備えていることを 特徴とする請求項40に記載の方法。 51.前記データイッンプットストアリングステップが、前記各プロセッサシステ ムの名前付のフラグメントファイルとして前記入力データをストアするステップ を備えていることを特徴とする請求項40に記載の方法。 52.前記データイッンプットストアリングステップがさらに、RAID−5プロ セスにしたがって、前記入力データをストアするステップを備えていることを特 徴とする請求項51に記載の方法。 53.さらに、前記分散型コンピュータシステムにプロセッサシステム付加し、 前記分散型コンピュータシステムがアウトプットストリームとしてストアされ たデータをアクティブにデリバーしつづける間、すべてのプロセッサシステムに 延在する前記名前付のフラグメントファイルを再構築するステップとを備えたこ とを特徴とする請求項52に記載の方法。 54.さらに、プロセッサシステムが故障の状態にある間、書き込みされたデータ オブジェクトのみを再構築することによって、故障のプロセッサシステムを再構 築するステップを備えたことを特徴とする請求項53に記載の方法。 55.データを冗長にストアするため少なくとも3つのプロセッサシステムから成 り、各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つ の大容量記憶サブシステムから成る分散型コンピュータシステムにおいて、 前記各プロセッサシステムから前記他の各プロセッサシステムに通信を与える 、相互接続データ通信ネットワークと、 各プロセッサシステムに設けられたデータ記憶コントローラであって、データ が各プロセッサシステムにストアされてデータの冗長表示がプロセッサの各々に ストアされるように、分散、冗長記憶処理に従って、前記プロセッサシステムの いずれか1つにデータ入力をストアするデータ記憶コントローラとを備えたコン ピュータシステム。 56.前記データ記憶コントローラがRAID−5プロセスにしたがって、前記プ ロセッサシステムにわたるデータをストアすることを特徴とする請求項55に記 載の装置。 57.さらに、前記各データ記憶コントローラがRAID−5プロセスにしたがっ て、各プロセッサシステムにデータをストアすることを特徴とする請求項56に 記載の装置。 58.さらに、前記コントローラが、前記コンピュータシステムからのデータを、 前記プロセッサシステムのいずれにも故障のない場合には、前記相互接続データ 通信ネットワークを介して前記各プロセッサシステムからデータを読み出し、こ れによって、前記コンピュータが前記プロセッサシステムの負荷バランスを確立 することを特徴とする請求項55に記載の装置。 59.さらに、前記コントローラが、前記コンピュータからデータを読んでおり前 記プロセッサシステムの一つに故障が存在する場合には、前記コントローラは、 前記データをストアする故障していない各プロセッサシステムからデータを読む とともに、前記故障したプロセッサシステムの代わりに前記故障していないプロ セッサシステムから冗長データを読み、 前記要求プロセッサシステムは、前記読み込みデータ及び前記冗長データを使 用して前記故障したプロセッサシステムにストアされた前記データを再生するよ うになっていることを特徴とする請求項58に記載の装置。 60.前記データ記憶コントローラがRAID−5プロセスに従って前記プロセッ サ内に前記入力データをストアすることを特徴とする請求項57に記載の装置。 61.前記データ記憶コントローラがRAID−5プロセスに従ってこれと協働す る大容量記憶装置にデータをストアすることを特徴とする請求項60に記載の装 置。 62.さらに、前記データ記憶コントローラが前記プロセッサシステムの故障が存 在している間は、前記プロセッサシステムのいずれにも前記大容量記憶サブシス テムに対していかなるデータの書き込みも禁止することを特徴とする請求項59 に記載の装置。 63.1つのプロセッサシステムが前記コンピュータシステムに対してすべての書 き込みを有効にするために指定されていることを特徴とする請求項55に記載の 装置。 64.一つのプロセッサシステムが各データ入力に対してファイルを割り当てると ともに、 各プロセッサシステムがこれと協働する割り当てられたファイルに入力データ を書き込むことができるようになっていることを特徴とする請求項55に記載の 装置。 65.前記コントローラが分散したロックを用いて前記プロセッサシステム内の書 き込み機能を調停することを特徴とする請求項55に記載の装置。 66.前記記憶コントローラが前記分散型コンピュータシステムの名前付フラグメ ントファイルとして前記インプットデータをストアすることを特徴とする請求項 55に記載の装置。 67.前記記憶コンピュータがRAID−5プロセスに従って、前記プロセッサシ ステムにわたり名前付フラグメントファイルとして前記データオブジェクトをス トアすることを特徴とする請求項66に記載の装置。 68.データを冗長にストアするため少なくとも3つのプロセッサシステムから成 り、各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つ の大容量記憶サブシステムから成る分散型データデリバリシステムにおいて、 前記各プロセッサシステムから前記他の各プロセッサシステムに通信を与える 、相互接続データ通信ネットワークと、 各プロセッサシステムに設けられたデータ記憶コントローラであって、データ が各プロセッサシステムにストアされてデータの冗長表示がプロセッサの各々に ストアされるように、分散、冗長記憶処理に従って、前記プロセッサシステムの いずれか1つにデータ入力をストアするデータ記憶コントローラと、 n個のインタラプト可能な入力ポート、少なくともn+1個のインタラプト入 力ポート、及び、少なくともn+1個の出力ポートを有するスイッチング回路を 備え、前記n個のインタラプト可能な入力ポートは、それぞれの一次プロセッサ システムに接続され、前記一次プロセッサシステムの各々は、それぞれのインタ ラプト入力ポートに接続された出力を有し、 前記プロセッサシステムの各々は、前記スイッチング回路の2つに接続され、 前記プロセッサシステムのそれぞれ1つから得られる信号情報でn個のインタラ プト可能な入力ポートの1つを選択的にインタラプトすることが可能であり、 前記プロセッサシステムは、1つのプロセッサシステムにおいて故障が生じた 場合に、前記プロセッサシステムのうち以前に使用されていないものを使用して 、前記スイッチング回路に、故障したプロセッサシステムのインタラプト可能な 入力ポートを異なるプロセッサシステムに接続させるとともに、前記故障したプ ロセッサシステムの出力を前記異なるプロセッサシステムの出力と交換させるよ うにする、 ことを特徴とする分散型データデリバリシステム。 69.データを冗長にストアするため少なくとも3つのプロセッサシステムから成 り、各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つ の大容量記憶サブシステムから成る分散型データデリバリシステムにおいて、 前記各プロセッサシステムから前記他の各プロセッサシステムに通信を与える 、相互接続データ通信ネットワークと、 各プロセッサシステムに設けられたデータ記憶コントローラであって、データ が各プロセッサシステムにストアされてデータの冗長表示がプロセッサの各々に ストアされるように、分散、冗長記憶処理に従って、前記プロセッサシステムの いずれか1つにデータ入力をストアするデータ記憶コントローラと、 (n+1)個のスイッチドシステムを備え、各スイッチドシステムは、少なく とも2つの制御入力、第1の入力、第2の入力、第3の入力、及び、第4の入力 、並びに、第1の出力及び第2の出力を有し、各スイッチドシステムは、その第 2の出力において、プロセッサシステムに接続され、前記関連のプロセッサシス テムのインタラプト出力は、前記接続されたスイッチドシステムの第2の入力に 接続され、 前記スイッチドシステムは、各スイッチドシステムが、さらに、第1の入力、 第3の入力に接続された第1の隣接スイッチドシステムの第2の入力、及び、第 4の入力に接続されたリング上の他の隣接スイッチドシステムからのインタラプ ト可能な入力に接続されたインタラプト可能な入力信号を有するように、リング 構造に相互接続され、 各前記スイッチドシステムは、前記制御入力に応答してその入力のいずれか を少なくともその第1の入力にスイッチングするとともに、その第1と第4の入 力のいずれかをその第2の出力に接続するスイッチング回路を有し、 前記プロセッサシステムは、前記スイッチドシステムの前記スイッチ制御入力 を与える、 ことを特徴とする分散型データデリバリシステム。 70.データを冗長にストアするため少なくとも3つのプロセッサシステムから成 り、各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくと1つ の大容量記憶サブシステムから成る分散型データデリバリシステムにおいて、 前記各プロセッサシステムから前記他の各プロセッサシステムに通信を与える 、相互接続データ通信ネットワークと、 各プロセッサシステムに設けられたデータ記憶コントローラであって、データ が各プロセッサシステムにストアされてデータの冗長表示がプロセッサの各々に ストアされるように、分散、冗長記憶処理に従って、前記プロセッサシステムの いずれか1つにデータ入力をストアするデータ記憶コントローラと、 (n+1)個のスイッチドシステムを備え、各スイッチドシステムは、少なく とも2つの制御入力、4つの信号入力、並びに、2つの信号出力を有し、各スイ ッチドシステムは、その出力の1つにおいて、プロセッサシステムに接続され、 前記関連のプロセッサシステムのインタラプト出力は、前記接続されたスイッチ ドシステムの1つの入力に接続され、 前記スイッチドシステムは、各スイッチドシステムは、第1及び第2の隣接ス イッチドシステムに接続されるようにリング構造に相互接続され、 各前記スイッチドシステムは、入力と出力を選択的に切り換えるために前記 制御入力のスイッチ制御信号に応答するスイッチング回路を有し、 前記プロセッサシステムは、前記スイッチコントロール入力信号を前記スイッ チドシステムに与え、前記スイッチドシステムが効果的にリングの周りの1のポ ジションに信号切り換え機能を回転させ、これによって、故障した信号プロセッ サシステムがバイパスされ、前記n個の第1出力の信号が損傷しない状態で継続 するようになったことを特徴とする、 ことを特徴とする分散型データデリバリシステム。 71.さらに、前記プロセッサが前記リングの周りのいずれかの方向に信号切り換 え機能を有効に回転させることを特徴とする請求項70に記載の分散型データデ リバリシステム。 72.各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくとも1 つの大容量記憶サブシステムとを備えた、少なくとも2つのプロセッサシステム を有する分散型コンピュータシステムにおいてデータを冗長的にストアする方法 であって、 通信のためにデータ通信ネットワークを介して前記各プロセッサシステムと前 記各プロセッサシステムの他のものとを相互に接続し、 分散した、冗長記憶プロセスに従って、前記プロセッサシステムのいずれかに データ入力をストアし、これによって、データが前記各プロセッサシステムにス トアされ、該データの冗長的な表示が前記各プロセッサにストアされにようにな っており、 前記プロセッサシステムのいずれもが故障のない場合には、前記コンピュータ システムからのデータを、前記データ通信チャンネルを介して前記各プロセッサ システムから読み込み、これによって読み込みステップが前記プロセッサシステ ムをにわたって負荷バランスを確立するようになっていることを特徴とする方法 。 73.さらに、RAID−5プロセスに従って各プロセッサシステムにデータをス トアするステップを備えていることを特徴とする請求項72に記載の方法。 74.各プロセッサシステムが少なくとも1つの中央処理ユニットと少なくとも1 つの大容量サブシステムを有する、データを冗長的にストアする少なくとも2つ のプロセッサシステムを有する分散型コンピュータシステムであって、 前記各プロセッサシステムから前記各他のプロセッサシステムに通信を与える 相互に接続したデータチャンネル通信ネットワークと、 データが前記各プロセッサシステムにストアされ、データの冗長表示のいくつ かが前記各プロセッサにストアされるように、分散された、冗長記憶プロセスに したがって、前記プロセッサシステムのいずれかにデータ入力をストアする各プ ロセッサシステムにおける、データ記憶コントローラとを備え、 前記コントローラが前記コンピュータシステムからのデータを、前記プロセッ サシステムのいずれにも故障がない場合には、前記データ通信チャンネルを介し て前記各プロセッサシステムからデータを読み込み、これによって、前記コント ローラが前記プロセッサシステムにわたる負荷バランスを確立するようになった 分散型コンピュータシステム。 75.さらに、前記各コントローラがRAID−5プロセスにしたがって各プロセ ッサシステムにデータをストアすることをと特徴とする請求項74に記載の装置 。
JP9516750A 1995-10-24 1996-10-23 疎結合大量記憶コンピュータクラスター Ceased JP2000501525A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/547,565 US5862312A (en) 1995-10-24 1995-10-24 Loosely coupled mass storage computer cluster
US08/547,565 1995-10-24
PCT/US1996/016997 WO1997015942A1 (en) 1995-10-24 1996-10-23 Loosely coupled mass storage computer cluster

Publications (2)

Publication Number Publication Date
JP2000501525A true JP2000501525A (ja) 2000-02-08
JP2000501525A5 JP2000501525A5 (ja) 2004-10-14

Family

ID=24185166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9516750A Ceased JP2000501525A (ja) 1995-10-24 1996-10-23 疎結合大量記憶コンピュータクラスター

Country Status (5)

Country Link
US (4) US5862312A (ja)
EP (1) EP0860017B1 (ja)
JP (1) JP2000501525A (ja)
DE (1) DE69635669D1 (ja)
WO (1) WO1997015942A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541207A (ja) * 2005-04-29 2008-11-20 ネットワーク・アプライアンス・インコーポレイテッド ストレージシステム・アーキテクチャ内のデータ・アロケーション

Families Citing this family (199)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138126A (en) * 1995-05-31 2000-10-24 Network Appliance, Inc. Method for allocating files in a file system integrated with a raid disk sub-system
US5671377A (en) * 1994-07-19 1997-09-23 David Sarnoff Research Center, Inc. System for supplying streams of data to multiple users by distributing a data stream to multiple processors and enabling each user to manipulate supplied data stream
US6567926B2 (en) * 1995-10-24 2003-05-20 Seachange International, Inc. Loosely coupled mass storage computer cluster
US5862312A (en) * 1995-10-24 1999-01-19 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US6449730B2 (en) * 1995-10-24 2002-09-10 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
CA2201679A1 (en) * 1996-04-15 1997-10-15 Raju C. Bopardikar Video data storage
JPH10333948A (ja) * 1997-04-01 1998-12-18 Kokusai Zunou Sangyo Kk 仮想データベース空間システムおよびデータベースプログラムを記録したコンピュータ読み取り可能な記録媒体
WO1999018507A1 (en) * 1997-10-08 1999-04-15 Seagate Technology, Inc. Hybrid data storage and reconstruction system and method for a data storage device
US6018805A (en) * 1997-12-15 2000-01-25 Recipio Transparent recovery of distributed-objects using intelligent proxies
US6415373B1 (en) 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6374336B1 (en) 1997-12-24 2002-04-16 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6119244A (en) 1998-08-25 2000-09-12 Network Appliance, Inc. Coordinating persistent status information with multiple file servers
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
GB9821789D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Jitter handling
GB9821792D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
GB9821768D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
GB9821800D0 (en) * 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
GB9821763D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
GB9821770D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
GB9821766D0 (en) 1998-10-06 1998-12-02 Sgs Thomson Microelectronics Data transfer
US6549538B1 (en) 1998-12-31 2003-04-15 Compaq Information Technologies Group, L.P. Computer method and apparatus for managing network ports cluster-wide using a lookaside list
US6665304B2 (en) * 1998-12-31 2003-12-16 Hewlett-Packard Development Company, L.P. Method and apparatus for providing an integrated cluster alias address
US6671273B1 (en) 1998-12-31 2003-12-30 Compaq Information Technologies Group L.P. Method for using outgoing TCP/IP sequence number fields to provide a desired cluster node
US6321345B1 (en) * 1999-03-01 2001-11-20 Seachange Systems, Inc. Slow response in redundant arrays of inexpensive disks
US7266706B2 (en) * 1999-03-03 2007-09-04 Yottayotta, Inc. Methods and systems for implementing shared disk array management functions
US8024761B1 (en) * 1999-04-01 2011-09-20 Cox Communications, Inc. Method and apparatus of load sharing and fault tolerance in an interactive video distribution system
US6842422B1 (en) * 1999-06-15 2005-01-11 Marconi Communications, Inc. Data striping based switching system
US6961749B1 (en) 1999-08-25 2005-11-01 Network Appliance, Inc. Scalable file server with highly available pairs
HK1045575B (en) * 1999-08-24 2006-11-10 Network Appliance, Inc. Scalable file server with highly available pairs
US8250617B2 (en) 1999-10-29 2012-08-21 Opentv, Inc. System and method for providing multi-perspective instant replay
US7000245B1 (en) * 1999-10-29 2006-02-14 Opentv, Inc. System and method for recording pushed data
US6970641B1 (en) 2000-09-15 2005-11-29 Opentv, Inc. Playback of interactive programs
US6523078B1 (en) 1999-11-23 2003-02-18 Steeleye Technology, Inc. Distributed locking system and method for a clustered system having a distributed system for storing cluster configuration information
US6684231B1 (en) * 1999-11-29 2004-01-27 Microsoft Corporation Migration of friendly volumes
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
EP1258142A4 (en) * 1999-12-10 2005-08-10 Sedna Patent Services Llc METHOD AND DEVICE FOR CARRYING OUT A USER LIFE IN A POLLING VIDEO SERVICE ENVIRONMENT
US6826711B2 (en) * 2000-02-18 2004-11-30 Avamar Technologies, Inc. System and method for data protection with multidimensional parity
US7509420B2 (en) * 2000-02-18 2009-03-24 Emc Corporation System and method for intelligent, globally distributed network storage
AU2001287250A1 (en) * 2000-03-22 2001-10-03 Yotta Yotta, Inc. Method and system for providing multimedia information on demand over wide area networks
US6574748B1 (en) * 2000-06-16 2003-06-03 Bull Hn Information Systems Inc. Fast relief swapping of processors in a data processing system
US6906999B1 (en) 2000-06-30 2005-06-14 Marconi Intellectual Property (Ringfence), Inc. Receiver decoding algorithm to allow hitless N+1 redundancy in a switch
US7181760B1 (en) * 2000-07-26 2007-02-20 Motorola, Inc High availability mechanism in a cable environment
US7228349B2 (en) * 2000-08-31 2007-06-05 Goldpocket Interactive, Inc. System and method for interacting with users over a communications network
CN1486568A (zh) * 2000-11-28 2004-03-31 ϣ�����ʹ�˾ 内容/服务处理及输送
US7401161B2 (en) 2000-12-18 2008-07-15 Sun Microsystems, Inc. High performance storage array interconnection fabric using multiple independent paths
US6718428B2 (en) 2000-12-18 2004-04-06 Sun Microsystems, Inc. Storage array interconnection fabric using a torus topology
WO2002052417A1 (en) * 2000-12-21 2002-07-04 Exanet Co. Method and apparatus for scalable distributed storage
US20040139145A1 (en) * 2000-12-21 2004-07-15 Bar-Or Gigy Method and apparatus for scalable distributed storage
US7072976B2 (en) * 2001-01-04 2006-07-04 Sun Microsystems, Inc. Scalable routing scheme for a multi-path interconnection fabric
US7054927B2 (en) 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
US20020138559A1 (en) * 2001-01-29 2002-09-26 Ulrich Thomas R. Dynamically distributed file system
US6990547B2 (en) * 2001-01-29 2006-01-24 Adaptec, Inc. Replacing file system processors by hot swapping
US6990667B2 (en) 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US20020161850A1 (en) 2001-01-29 2002-10-31 Ulrich Thomas R. Data path accelerator for storage systems
US6862692B2 (en) 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
US20020120929A1 (en) * 2001-02-28 2002-08-29 Schwalb Eddie M. Method and system for mass customization of digital television broadcasts
US7219122B1 (en) * 2001-04-23 2007-05-15 Massachusetts Institute Of Technology Software service handoff mechanism with a performance reliability improvement mechanism (PRIM) for a collaborative client-server system
US7007189B2 (en) 2001-05-07 2006-02-28 Sun Microsystems, Inc. Routing scheme using preferred paths in a multi-path interconnection fabric in a storage network
US6909695B2 (en) * 2001-05-07 2005-06-21 Sun Microsystems, Inc. Fault-tolerant, self-healing routing scheme for a multi-path interconnection fabric in a storage network
US6915397B2 (en) 2001-06-01 2005-07-05 Hewlett-Packard Development Company, L.P. System and method for generating point in time storage copy
GB2377035B (en) * 2001-06-29 2005-05-04 Motorola Inc A fault tolerant shared transceiver apparatus and system
US6950966B2 (en) * 2001-07-17 2005-09-27 Seachange International, Inc. Data transmission from raid services
US7146524B2 (en) 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
US7685126B2 (en) * 2001-08-03 2010-03-23 Isilon Systems, Inc. System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system
JP4054182B2 (ja) 2001-09-25 2008-02-27 株式会社東芝 仮想的なraid装置を有するクラスタシステム及び同システム用のコンピュータ
US6545872B1 (en) 2001-10-12 2003-04-08 Compaq Information Technologies Group, L.P. Heat sink for edge connectors
US6988136B2 (en) * 2001-10-19 2006-01-17 Hewlett-Packard Development Company, L.P. Unified management system and method for multi-cabinet data storage complexes
US6912599B2 (en) * 2001-10-19 2005-06-28 Hewlett-Packard Development Company, L.P. Method and apparatus for sensing positions of device enclosures within multi-shelf cabinets
US6920511B2 (en) * 2001-10-19 2005-07-19 Hewlett-Packard Development Company, L.P. Method and apparatus for controlling communications in data storage complexes
US6889345B2 (en) * 2001-10-19 2005-05-03 Hewlett-Packard Development Company, Lp. System and method for locating a failed storage device in a data storage system
US6895467B2 (en) 2001-10-22 2005-05-17 Hewlett-Packard Development Company, L.P. System and method for atomizing storage
US8046469B2 (en) * 2001-10-22 2011-10-25 Hewlett-Packard Development Company, L.P. System and method for interfacing with virtual storage
US6931487B2 (en) * 2001-10-22 2005-08-16 Hewlett-Packard Development Company L.P. High performance multi-controller processing
US7644136B2 (en) * 2001-11-28 2010-01-05 Interactive Content Engines, Llc. Virtual file system
US7437472B2 (en) * 2001-11-28 2008-10-14 Interactive Content Engines, Llc. Interactive broadband server system
US7788396B2 (en) * 2001-11-28 2010-08-31 Interactive Content Engines, Llc Synchronized data transfer system
US7024586B2 (en) * 2002-06-24 2006-04-04 Network Appliance, Inc. Using file system information in raid data reconstruction and migration
US6957301B2 (en) * 2002-09-18 2005-10-18 International Business Machines Corporation System and method for detecting data integrity problems on a data storage device
US7085953B1 (en) 2002-11-01 2006-08-01 International Business Machines Corporation Method and means for tolerating multiple dependent or arbitrary double disk failures in a disk array
US8185602B2 (en) 2002-11-05 2012-05-22 Newisys, Inc. Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters
US7937421B2 (en) * 2002-11-14 2011-05-03 Emc Corporation Systems and methods for restriping files in a distributed file system
US7624158B2 (en) 2003-01-14 2009-11-24 Eycast Inc. Method and apparatus for transmission and storage of digital medical data
US8832758B2 (en) * 2003-03-17 2014-09-09 Qwest Communications International Inc. Methods and systems for providing video on demand
US9247288B2 (en) 2003-08-12 2016-01-26 Time Warner Cable Enterprises Llc Technique for effectively delivering targeted advertisements through a communications network having limited bandwidth
US8434118B2 (en) * 2004-05-27 2013-04-30 Time Warner Cable Enterprises Llc Playlist menu navigation
US8843978B2 (en) 2004-06-29 2014-09-23 Time Warner Cable Enterprises Llc Method and apparatus for network bandwidth allocation
US8051425B2 (en) 2004-10-29 2011-11-01 Emc Corporation Distributed system with asynchronous execution systems and methods
US8055711B2 (en) 2004-10-29 2011-11-08 Emc Corporation Non-blocking commit protocol systems and methods
US8238350B2 (en) 2004-10-29 2012-08-07 Emc Corporation Message batching with checkpoints systems and methods
US7516355B2 (en) * 2004-11-05 2009-04-07 Broadcom Corporation Method and computer program product for backing up and restoring online system information
US20060168410A1 (en) * 2005-01-24 2006-07-27 Andruszkiewicz John J Systems and methods of merge operations of a storage subsystem
US7567565B2 (en) * 2005-02-01 2009-07-28 Time Warner Cable Inc. Method and apparatus for network bandwidth conservation
US7904649B2 (en) 2005-04-29 2011-03-08 Netapp, Inc. System and method for restriping data across a plurality of volumes
US7551572B2 (en) 2005-10-21 2009-06-23 Isilon Systems, Inc. Systems and methods for providing variable protection
US7788303B2 (en) 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
US7917474B2 (en) * 2005-10-21 2011-03-29 Isilon Systems, Inc. Systems and methods for accessing and updating distributed data
US7797283B2 (en) 2005-10-21 2010-09-14 Isilon Systems, Inc. Systems and methods for maintaining distributed data
US7386675B2 (en) 2005-10-21 2008-06-10 Isilon Systems, Inc. Systems and methods for using excitement values to predict future access to resources
US7346720B2 (en) * 2005-10-21 2008-03-18 Isilon Systems, Inc. Systems and methods for managing concurrent access requests to a shared resource
US7848261B2 (en) 2006-02-17 2010-12-07 Isilon Systems, Inc. Systems and methods for providing a quiescing protocol
US8458753B2 (en) 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US8170065B2 (en) 2006-02-27 2012-05-01 Time Warner Cable Inc. Methods and apparatus for selecting digital access technology for programming and data delivery
US7756898B2 (en) * 2006-03-31 2010-07-13 Isilon Systems, Inc. Systems and methods for notifying listeners of events
US8539056B2 (en) 2006-08-02 2013-09-17 Emc Corporation Systems and methods for configuring multiple network interfaces
US7899800B2 (en) * 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7752402B2 (en) 2006-08-18 2010-07-06 Isilon Systems, Inc. Systems and methods for allowing incremental journaling
US7676691B2 (en) 2006-08-18 2010-03-09 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7822932B2 (en) * 2006-08-18 2010-10-26 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7962499B2 (en) * 2006-08-18 2011-06-14 Falconstor, Inc. System and method for identifying and mitigating redundancies in stored data
US7882071B2 (en) 2006-08-18 2011-02-01 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680836B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7953704B2 (en) 2006-08-18 2011-05-31 Emc Corporation Systems and methods for a snapshot of data
US7590652B2 (en) 2006-08-18 2009-09-15 Isilon Systems, Inc. Systems and methods of reverse lookup
US7680842B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US8286029B2 (en) * 2006-12-21 2012-10-09 Emc Corporation Systems and methods for managing unavailable storage devices
US7593938B2 (en) * 2006-12-22 2009-09-22 Isilon Systems, Inc. Systems and methods of directory entry encodings
US7509448B2 (en) 2007-01-05 2009-03-24 Isilon Systems, Inc. Systems and methods for managing semantic locks
US20080235746A1 (en) 2007-03-20 2008-09-25 Michael James Peters Methods and apparatus for content delivery and replacement in a network
US7900015B2 (en) 2007-04-13 2011-03-01 Isilon Systems, Inc. Systems and methods of quota accounting
US7779048B2 (en) 2007-04-13 2010-08-17 Isilon Systems, Inc. Systems and methods of providing possible value ranges
US8966080B2 (en) * 2007-04-13 2015-02-24 Emc Corporation Systems and methods of managing resource utilization on a threaded computer system
US7779175B2 (en) * 2007-05-04 2010-08-17 Blackwave, Inc. System and method for rendezvous in a communications network
US7770200B2 (en) * 2007-07-24 2010-08-03 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US7802286B2 (en) * 2007-07-24 2010-09-21 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US7966289B2 (en) * 2007-08-21 2011-06-21 Emc Corporation Systems and methods for reading objects in a file system
US7882068B2 (en) 2007-08-21 2011-02-01 Isilon Systems, Inc. Systems and methods for adaptive copy on write
US7949692B2 (en) 2007-08-21 2011-05-24 Emc Corporation Systems and methods for portals into snapshot data
US9071859B2 (en) 2007-09-26 2015-06-30 Time Warner Cable Enterprises Llc Methods and apparatus for user-based targeted content delivery
US8561116B2 (en) 2007-09-26 2013-10-15 Charles A. Hasek Methods and apparatus for content caching in a video network
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US8364892B2 (en) * 2008-01-11 2013-01-29 Verivue, Inc. Asynchronous and distributed storage of data
US8799535B2 (en) * 2008-01-11 2014-08-05 Akamai Technologies, Inc. Storage of data utilizing scheduling queue locations associated with different data rates
US8201056B2 (en) * 2008-02-19 2012-06-12 Nec Laboratories America, Inc. Anti-jamming piecewise coding method for parallel inference channels
US8813143B2 (en) 2008-02-26 2014-08-19 Time Warner Enterprises LLC Methods and apparatus for business-based network resource allocation
US8103775B2 (en) * 2008-03-13 2012-01-24 Harris Corporation System and method for distributing a client load from a failed server among remaining servers in a storage area network (SAN)
US7870345B2 (en) 2008-03-27 2011-01-11 Isilon Systems, Inc. Systems and methods for managing stalled storage devices
US7984324B2 (en) 2008-03-27 2011-07-19 Emc Corporation Systems and methods for managing stalled storage devices
US7953709B2 (en) * 2008-03-27 2011-05-31 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7949636B2 (en) * 2008-03-27 2011-05-24 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US8717435B2 (en) * 2008-04-09 2014-05-06 Hbc Solutions, Inc. Video monitoring device providing parametric signal curve display features and related methods
US8773469B2 (en) * 2008-04-09 2014-07-08 Imagine Communications Corp. Video multiviewer system with serial digital interface and related methods
US9172900B2 (en) * 2008-04-09 2015-10-27 Imagine Communications Corp. Video multiviewer system with switcher and distributed scaling and related methods
US9716854B2 (en) 2008-04-09 2017-07-25 Imagine Communications Corp. Video multiviewer system with distributed scaling and related methods
US9124847B2 (en) * 2008-04-10 2015-09-01 Imagine Communications Corp. Video multiviewer system for generating video data based upon multiple video inputs with added graphic content and related methods
US8811499B2 (en) * 2008-04-10 2014-08-19 Imagine Communications Corp. Video multiviewer system permitting scrolling of multiple video windows and related methods
US9615049B2 (en) * 2008-04-10 2017-04-04 Imagine Communications Corp. Video multiviewer system providing direct video data transfer to graphics processing unit (GPU) memory and related methods
US8954976B2 (en) * 2008-07-10 2015-02-10 Juniper Networks, Inc. Data storage in distributed resources of a network based on provisioning attributes
US8364710B2 (en) * 2008-07-10 2013-01-29 Juniper Networks, Inc. Model-based resource allocation
US8099402B2 (en) 2008-07-10 2012-01-17 Juniper Networks, Inc. Distributed data storage and access systems
US8887166B2 (en) * 2008-07-10 2014-11-11 Juniper Networks, Inc. Resource allocation and modification using access patterns
US9176779B2 (en) * 2008-07-10 2015-11-03 Juniper Networks, Inc. Data access in distributed systems
US8706900B2 (en) * 2008-07-10 2014-04-22 Juniper Networks, Inc. Dynamic storage resources
US8650270B2 (en) * 2008-07-10 2014-02-11 Juniper Networks, Inc. Distributed computing with multiple coordinated component collections
US8191070B2 (en) * 2008-07-10 2012-05-29 Juniper Networks, Inc. Dynamic resource allocation
US20100011091A1 (en) * 2008-07-10 2010-01-14 Blackwave Inc. Network Storage
US9066141B2 (en) * 2009-01-21 2015-06-23 Juniper Networks, Inc. Resource allocation and modification using statistical analysis
US8750315B2 (en) * 2009-01-23 2014-06-10 Akamai Technologies, Inc. Efficiently storing transport streams
US9866609B2 (en) 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US8813124B2 (en) 2009-07-15 2014-08-19 Time Warner Cable Enterprises Llc Methods and apparatus for targeted secondary content insertion
US8458515B1 (en) * 2009-11-16 2013-06-04 Symantec Corporation Raid5 recovery in a high availability object based file system
US8812799B2 (en) 2009-12-11 2014-08-19 International Business Machines Corporation Cluster families for cluster selection and cooperative replication
US8132044B1 (en) * 2010-02-05 2012-03-06 Symantec Corporation Concurrent and incremental repair of a failed component in an object based storage system for high availability
US8701138B2 (en) 2010-04-23 2014-04-15 Time Warner Cable Enterprises Llc Zone control methods and apparatus
US8856846B2 (en) 2010-11-29 2014-10-07 At&T Intellectual Property I, L.P. Content placement
EP2993585B1 (en) 2010-12-27 2017-06-28 Amplidata NV Distributed object storage system comprising performance optimizations
US9092385B2 (en) * 2011-08-17 2015-07-28 Cleversafe, Inc. Facilitating access of a dispersed storage network
US9135097B2 (en) 2012-03-27 2015-09-15 Oracle International Corporation Node death detection by querying
US9078040B2 (en) 2012-04-12 2015-07-07 Time Warner Cable Enterprises Llc Apparatus and methods for enabling media options in a content delivery network
US9854280B2 (en) 2012-07-10 2017-12-26 Time Warner Cable Enterprises Llc Apparatus and methods for selective enforcement of secondary content viewing
US8862155B2 (en) 2012-08-30 2014-10-14 Time Warner Cable Enterprises Llc Apparatus and methods for enabling location-based services within a premises
US9131283B2 (en) 2012-12-14 2015-09-08 Time Warner Cable Enterprises Llc Apparatus and methods for multimedia coordination
US9066153B2 (en) 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US10368255B2 (en) 2017-07-25 2019-07-30 Time Warner Cable Enterprises Llc Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks
US10631019B2 (en) * 2013-06-18 2020-04-21 Vecima Networks Inc. Remote storage digital video recording optimization method and system
US9313568B2 (en) 2013-07-23 2016-04-12 Chicago Custom Acoustics, Inc. Custom earphone with dome in the canal
US11540148B2 (en) 2014-06-11 2022-12-27 Time Warner Cable Enterprises Llc Methods and apparatus for access point location
US10028025B2 (en) 2014-09-29 2018-07-17 Time Warner Cable Enterprises Llc Apparatus and methods for enabling presence-based and use-based services
US9935833B2 (en) 2014-11-05 2018-04-03 Time Warner Cable Enterprises Llc Methods and apparatus for determining an optimized wireless interface installation configuration
US9986578B2 (en) 2015-12-04 2018-05-29 Time Warner Cable Enterprises Llc Apparatus and methods for selective data network access
US9918345B2 (en) 2016-01-20 2018-03-13 Time Warner Cable Enterprises Llc Apparatus and method for wireless network services in moving vehicles
US10492034B2 (en) 2016-03-07 2019-11-26 Time Warner Cable Enterprises Llc Apparatus and methods for dynamic open-access networks
US10586023B2 (en) 2016-04-21 2020-03-10 Time Warner Cable Enterprises Llc Methods and apparatus for secondary content management and fraud prevention
US10687115B2 (en) 2016-06-01 2020-06-16 Time Warner Cable Enterprises Llc Cloud-based digital content recorder apparatus and methods
US10164858B2 (en) 2016-06-15 2018-12-25 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and diagnosing a wireless network
US11212593B2 (en) 2016-09-27 2021-12-28 Time Warner Cable Enterprises Llc Apparatus and methods for automated secondary content management in a digital network
US10911794B2 (en) 2016-11-09 2021-02-02 Charter Communications Operating, Llc Apparatus and methods for selective secondary content insertion in a digital network
US10185507B1 (en) * 2016-12-20 2019-01-22 Amazon Technologies, Inc. Stateless block store manager volume reconstruction
US10921991B1 (en) 2016-12-20 2021-02-16 Amazon Technologies, Inc. Rule invalidation for a block store management system
US10809920B1 (en) 2016-12-20 2020-10-20 Amazon Technologies, Inc. Block store management for remote storage systems
US10268593B1 (en) 2016-12-20 2019-04-23 Amazon Technologies, Inc. Block store managamement using a virtual computing system service
US11507283B1 (en) 2016-12-20 2022-11-22 Amazon Technologies, Inc. Enabling host computer systems to access logical volumes by dynamic updates to data structure rules
US10645547B2 (en) 2017-06-02 2020-05-05 Charter Communications Operating, Llc Apparatus and methods for providing wireless service in a venue
US10638361B2 (en) 2017-06-06 2020-04-28 Charter Communications Operating, Llc Methods and apparatus for dynamic control of connections to co-existing radio access networks
US11109290B2 (en) 2017-08-04 2021-08-31 Charter Communications Operating, Llc Switching connections over frequency bands of a wireless network
US10939142B2 (en) 2018-02-27 2021-03-02 Charter Communications Operating, Llc Apparatus and methods for content storage, distribution and security within a content distribution network
US11429564B2 (en) 2019-06-18 2022-08-30 Bank Of America Corporation File transferring using artificial intelligence
US11609931B2 (en) 2019-06-27 2023-03-21 Datadog, Inc. Ring replication system
US20220076157A1 (en) 2020-09-04 2022-03-10 Aperio Global, LLC Data analysis system using artificial intelligence
US20260081964A1 (en) * 2024-09-18 2026-03-19 Netflix, Inc. Techniques for reducing the amount of resources used to stream live events

Family Cites Families (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3746780A (en) * 1971-02-25 1973-07-17 Mitre Corp Video display system
US4590516A (en) * 1982-06-01 1986-05-20 World Video Library, Inc. Recorded program communication system
US4905145A (en) * 1984-05-17 1990-02-27 Texas Instruments Incorporated Multiprocessor
US5113523A (en) 1985-05-06 1992-05-12 Ncube Corporation High performance computer system
US5228127A (en) * 1985-06-24 1993-07-13 Fujitsu Limited Clustered multiprocessor system with global controller connected to each cluster memory control unit for directing order from processor to different cluster processors
US5251299A (en) * 1985-12-28 1993-10-05 Fujitsu Limited System for switching between processors in a multiprocessor system
EP0232859A3 (en) * 1986-01-27 1989-08-30 International Business Machines Corporation Processor intercommunication network
US4729095A (en) 1986-05-19 1988-03-01 Ncube Corporation Broadcast instruction for use in a high performance computer system
EP0350478B1 (de) * 1987-03-19 1993-11-03 Siemens Aktiengesellschaft Verfahren zum betrieb einer multiprozessor-zentralsteuereinheit eines vermittlungssystemes
US5008882A (en) * 1987-08-17 1991-04-16 California Institute Of Technology Method and apparatus for eliminating unsuccessful tries in a search tree
US4868818A (en) * 1987-10-29 1989-09-19 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Fault tolerant hypercube computer system architecture
US4920432A (en) * 1988-01-12 1990-04-24 Eggers Derek C System for random access to an audio video data library with independent selection and display at each of a plurality of remote locations
US5072371A (en) * 1989-03-01 1991-12-10 The United States Of America As Represented By The United States Department Of Energy Method for simultaneous overlapped communications between neighboring processors in a multiple
US5014125A (en) * 1989-05-05 1991-05-07 Cableshare, Inc. Television system for the interactive distribution of selectable video presentations
US5202980A (en) * 1989-06-30 1993-04-13 Nec Corporation Information processing system capable of readily taking over processing of a faulty processor
US5150247A (en) * 1989-10-30 1992-09-22 Broadband Technologies, Inc. Fiber optic telecommunication system employing continuous downlink, burst uplink transmission format with preset uplink guard band
US5402428A (en) * 1989-12-25 1995-03-28 Hitachi, Ltd. Array disk subsystem
US5130792A (en) * 1990-02-01 1992-07-14 Usa Video Inc. Store and forward video system
US5166939A (en) * 1990-03-02 1992-11-24 Micro Technology, Inc. Data storage apparatus and method
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5088081A (en) * 1990-03-28 1992-02-11 Prime Computer, Inc. Method and apparatus for improved disk access
US5130992A (en) 1990-04-16 1992-07-14 International Business Machines Corporaiton File-based redundant parity protection in a parallel computing system
US5121483A (en) 1990-05-21 1992-06-09 International Business Machines Corporation Virtual drives in an automated storage library
US5155845A (en) * 1990-06-15 1992-10-13 Storage Technology Corporation Data storage system for providing redundant copies of data on different disk drives
CA2022302C (en) * 1990-07-30 1995-02-28 Douglas J. Ballantyne Method and apparatus for distribution of movies
US5265098A (en) * 1990-08-03 1993-11-23 International Business Machines Corporation Method and means for managing DASD array accesses when operating in degraded mode
US5367636A (en) 1990-09-24 1994-11-22 Ncube Corporation Hypercube processor network in which the processor indentification numbers of two processors connected to each other through port number n, vary only in the nth bit
US5093718A (en) * 1990-09-28 1992-03-03 Inteletext Systems, Inc. Interactive home information system
US5375128A (en) * 1990-10-18 1994-12-20 Ibm Corporation (International Business Machines Corporation) Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders
US5208813A (en) * 1990-10-23 1993-05-04 Array Technology Corporation On-line reconstruction of a failed redundant array system
US5155835A (en) * 1990-11-19 1992-10-13 Storage Technology Corporation Multilevel, hierarchical, dynamically mapped data storage subsystem
US5132992A (en) * 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US5271012A (en) * 1991-02-11 1993-12-14 International Business Machines Corporation Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs
US5191584A (en) * 1991-02-20 1993-03-02 Micropolis Corporation Mass storage array with efficient parity calculation
US5303244A (en) * 1991-03-01 1994-04-12 Teradata Fault tolerant disk drive matrix
US5357607A (en) * 1991-04-01 1994-10-18 Xerox Corporation File storage process for electronic printing systems having multiple disks
US5239659A (en) * 1991-06-19 1993-08-24 Storage Technology Corporation Phantom duplex copy group apparatus for a disk drive array data storge subsystem
EP0519669A3 (en) * 1991-06-21 1994-07-06 Ibm Encoding and rebuilding data for a dasd array
US5301297A (en) * 1991-07-03 1994-04-05 Ibm Corp. (International Business Machines Corp.) Method and means for managing RAID 5 DASD arrays having RAID DASD arrays as logical devices thereof
US5333143A (en) * 1991-08-29 1994-07-26 International Business Machines Corporation Method and means for b-adjacent coding and rebuilding data from up to two unavailable DASDS in a DASD array
US5247347A (en) * 1991-09-27 1993-09-21 Bell Atlantic Network Services, Inc. Pstn architecture for video-on-demand services
US5237658A (en) * 1991-10-01 1993-08-17 Tandem Computers Incorporated Linear and orthogonal expansion of array storage in multiprocessor computing systems
US5379417A (en) * 1991-11-25 1995-01-03 Tandem Computers Incorporated System and method for ensuring write data integrity in a redundant array data storage system
JPH05233570A (ja) * 1991-12-26 1993-09-10 Internatl Business Mach Corp <Ibm> 異オペレーティング・システム間分散データ処理システム
US5371882A (en) * 1992-01-14 1994-12-06 Storage Technology Corporation Spare disk drive replacement scheduling system for a disk drive array data storage subsystem
US5389963A (en) * 1992-02-05 1995-02-14 Dynacom, Inc. System for selectively interconnecting audio-video sources and receivers
JP2548480B2 (ja) * 1992-02-10 1996-10-30 富士通株式会社 アレイディスク装置のディスク装置診断方法
AU2313592A (en) 1992-02-11 1993-09-03 Masato Hata Adaptive video file server and methods for its use
JP3411300B2 (ja) 1992-02-18 2003-05-26 株式会社日立製作所 情報処理装置
US5423037A (en) * 1992-03-17 1995-06-06 Teleserve Transaction Technology As Continuously available database server having multiple groups of nodes, each group maintaining a database copy with fragments stored on multiple nodes
US5410667A (en) * 1992-04-17 1995-04-25 Storage Technology Corporation Data record copy system for a disk drive array data storage subsystem
US5708668A (en) * 1992-05-06 1998-01-13 International Business Machines Corporation Method and apparatus for operating an array of storage devices
US5371532A (en) * 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5305438A (en) * 1992-05-19 1994-04-19 Sony Electronics Inc. Video storage, processing, and distribution system using recording format independent hierarchical storages and processors
JPH05324579A (ja) 1992-05-25 1993-12-07 Hitachi Ltd 分散ファイルシステム及び記憶装置
JP2888401B2 (ja) 1992-08-03 1999-05-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 冗長ディスクドライブアレイに対する同期方法
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
US5396485A (en) * 1992-09-01 1995-03-07 Hitachi, Ltd. Information communication system for point-to-point communication and point-to-multipoint communication using same lines
US5412661A (en) * 1992-10-06 1995-05-02 International Business Machines Corporation Two-dimensional disk array
US5404508A (en) * 1992-12-03 1995-04-04 Unisys Corporation Data base backup and recovery system and method
US5819109A (en) * 1992-12-07 1998-10-06 Digital Equipment Corporation System for storing pending parity update log entries, calculating new parity, updating the parity block, and removing each entry from the log when update is complete
US6157967A (en) * 1992-12-17 2000-12-05 Tandem Computer Incorporated Method of data communication flow control in a data processing system using busy/ready commands
US5508732A (en) * 1993-03-22 1996-04-16 International Business Machines Corporation Data server, control server and gateway architecture system and method for broadcasting digital video on demand
US5390327A (en) * 1993-06-29 1995-02-14 Digital Equipment Corporation Method for on-line reorganization of the data on a RAID-4 or RAID-5 array in the absence of one disk and the on-line restoration of a replacement disk
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
US5481542A (en) * 1993-11-10 1996-01-02 Scientific-Atlanta, Inc. Interactive information services control system
JP3249868B2 (ja) * 1993-11-19 2002-01-21 株式会社日立製作所 アレイ形式の記憶装置システム
US5473362A (en) * 1993-11-30 1995-12-05 Microsoft Corporation Video on demand system comprising stripped data across plural storable devices with time multiplex scheduling
US5504861A (en) * 1994-02-22 1996-04-02 International Business Machines Corporation Remote data duplexing
US5544163A (en) * 1994-03-08 1996-08-06 Excel, Inc. Expandable telecommunications system
US5534913A (en) * 1994-03-31 1996-07-09 At&T Corp. Apparatus and method for integrating downstream data transfer over a cable television channel with upstream data carrier by other media
US5649092A (en) * 1994-04-21 1997-07-15 Unisys Corporation Fault tolerant apparatus and method for maintaining one or more queues that are shared by multiple processors
US5534912A (en) * 1994-04-26 1996-07-09 Bell Atlantic Network Services, Inc. Extended range video on demand distribution system
US5671377A (en) 1994-07-19 1997-09-23 David Sarnoff Research Center, Inc. System for supplying streams of data to multiple users by distributing a data stream to multiple processors and enabling each user to manipulate supplied data stream
US5638516A (en) 1994-08-01 1997-06-10 Ncube Corporation Parallel processor that routes messages around blocked or faulty nodes by selecting an output port to a subsequent node from a port vector and transmitting a route ready signal back to a previous node
US5682325A (en) * 1994-09-12 1997-10-28 Bell Atlantic Network Services, Inc. Level 1 gateway for video tone networks
US5623595A (en) 1994-09-26 1997-04-22 Oracle Corporation Method and apparatus for transparent, real time reconstruction of corrupted data in a redundant array data storage system
WO1996017306A2 (en) 1994-11-21 1996-06-06 Oracle Corporation Media server
US5521299A (en) * 1994-11-22 1996-05-28 National Science Council Oligonucleotides for detection of baculovirus infection
JPH08153113A (ja) * 1994-11-28 1996-06-11 Fujitsu Ltd マルチメディアサーバ
US5583995A (en) 1995-01-30 1996-12-10 Mrj, Inc. Apparatus and method for data storage and retrieval using bandwidth allocation
US5608448A (en) 1995-04-10 1997-03-04 Lockheed Martin Corporation Hybrid architecture for video on demand server
US5649093A (en) * 1995-05-22 1997-07-15 Sun Microsystems, Inc. Server disk error recovery system
US5848230A (en) * 1995-05-25 1998-12-08 Tandem Computers Incorporated Continuously available computer memory systems
US5799141A (en) * 1995-06-09 1998-08-25 Qualix Group, Inc. Real-time data protection system and method
US5740397A (en) * 1995-10-11 1998-04-14 Arco Computer Products, Inc. IDE disk drive adapter for computer backup and fault tolerance
US6449730B2 (en) * 1995-10-24 2002-09-10 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US5862312A (en) * 1995-10-24 1999-01-19 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US6567926B2 (en) * 1995-10-24 2003-05-20 Seachange International, Inc. Loosely coupled mass storage computer cluster
US5742752A (en) * 1995-12-29 1998-04-21 Symbios Logic Inc. Method for performing a RAID stripe write operation using a drive XOR command set
US5881311A (en) * 1996-06-05 1999-03-09 Fastor Technologies, Inc. Data storage subsystem with block based data management
US5928327A (en) * 1996-08-08 1999-07-27 Wang; Pong-Sheng System and process for delivering digital data on demand
US6055570A (en) * 1997-04-03 2000-04-25 Sun Microsystems, Inc. Subscribed update monitors
JPH11345095A (ja) * 1998-06-02 1999-12-14 Toshiba Corp ディスクアレイ装置およびその制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541207A (ja) * 2005-04-29 2008-11-20 ネットワーク・アプライアンス・インコーポレイテッド ストレージシステム・アーキテクチャ内のデータ・アロケーション

Also Published As

Publication number Publication date
DE69635669D1 (de) 2006-02-02
US6571349B1 (en) 2003-05-27
US20090055401A1 (en) 2009-02-26
WO1997015942A1 (en) 1997-05-01
US5862312A (en) 1999-01-19
US5996089A (en) 1999-11-30
EP0860017A1 (en) 1998-08-26
US8019941B2 (en) 2011-09-13
EP0860017A4 (en) 2001-02-28
EP0860017B1 (en) 2005-12-28

Similar Documents

Publication Publication Date Title
EP0860017B1 (en) Loosely coupled mass storage computer cluster
US6567926B2 (en) Loosely coupled mass storage computer cluster
US6449730B2 (en) Loosely coupled mass storage computer cluster
WO1997015942A9 (en) Loosely coupled mass storage computer cluster
US5430855A (en) Disk drive array memory system using nonuniform disk drives
US6862609B2 (en) Redundant storage for multiple processors in a ring network
KR100275900B1 (ko) 알에이아이디 서브시스템에 있어서 분할패러티 예비 디스크 구현방법
US7054927B2 (en) File system metadata describing server directory information
US8214590B2 (en) Systems and methods for storing parity groups
KR100221384B1 (ko) 직접 액세스 저장장치, 머신 판독가능한 데이타 저장시스템,데이타 저장시스템 및 데이타 저장 시스템 동작 방법
JP3187730B2 (ja) Raid記憶サブシステムにおけるデータのスナップショットコピー作成方法及びその装置
US20020165942A1 (en) Data path accelerator with variable parity, variable length, and variable extent parity groups
US20060041718A1 (en) Fault-tolerant computer network file systems and methods
EP4145265A2 (en) Storage system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A313 Final decision of rejection without a dissenting response from the applicant

Free format text: JAPANESE INTERMEDIATE CODE: A313

Effective date: 20071031

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071211