JP2002529878A - 記憶システム - Google Patents
記憶システムInfo
- Publication number
- JP2002529878A JP2002529878A JP2000580372A JP2000580372A JP2002529878A JP 2002529878 A JP2002529878 A JP 2002529878A JP 2000580372 A JP2000580372 A JP 2000580372A JP 2000580372 A JP2000580372 A JP 2000580372A JP 2002529878 A JP2002529878 A JP 2002529878A
- Authority
- JP
- Japan
- Prior art keywords
- blocks
- storage
- data unit
- data
- storage units
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 39
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/2312—Data placement on disk arrays
- H04N21/2318—Data placement on disk arrays using striping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/1088—Reconstruction on already foreseen single or plurality of spare disks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21815—Source of audio or video content, e.g. local disk arrays comprising local storage units
- H04N21/2182—Source of audio or video content, e.g. local disk arrays comprising local storage units involving memory arrays, e.g. RAID disk arrays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/232—Content retrieval operation locally within server, e.g. reading video streams from disk arrays
- H04N21/2326—Scheduling disk or memory reading operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
(57)【要約】
ビデオオンデマンドシステムのような記憶システムはディスクドライブのような複数の記憶ユニットからなる。記憶ユニットの各々は相互に異なる予想されたデータ検索時間を有する多数の記憶ゾーンを有する。データはデータユニットに記憶され、各データユニットはN個のブロックからなり、ここでN≧2である。データユニットのブロックは記憶ユニットにわたり分布される。ブロックはN個のブロックのN−Kからなる複数の選択のいずれの一つもデータユニットを検索するために満足され、ここでK≧1である。記憶ユニットからデータユニットを検索するために、リーダーは選択過程に基づいて検索するためにN個のブロックのどのN−Kかを決定する。選択過程は帯域幅利用を最適化するために予想されたデータ検索時間を考慮に入れる。
Description
【0001】 本発明はビデオ又はオーディオデータのようなデータのブロックを記憶する複
数の記憶ユニットと複数の記憶ユニットからブロックを検索するリーダーとから
なるビデオオンデマンドのような記憶システムに関する。
数の記憶ユニットと複数の記憶ユニットからブロックを検索するリーダーとから
なるビデオオンデマンドのような記憶システムに関する。
【0002】 ビデオオンデマンドシステムは論文“Randomized data Al
location for Real−time Disk I/O”,Com
pcon‘96(41st IEEE Computer Society In
ternational Conference,Santa Clara,2
5−28 Febr,1996)から知られている。知られているシステムでは
、データユニットは各々がディスク上で一のフルトラックを占有する一群のGブ
ロックを形成するGディスク上にストライプされる。Gディスクのこの群はDの
利用可能なディスクの組からランダムに選択される。Gブロックの一つはパリテ
ィブロックである。群のランダムな分布からディスク上のロードのバランスが得
られる。ランダムパリティブロックは更なるロードバランスを可能にし、これは
ロードを最小化する一群のGブロックの(G−1)ブロックのみを読みとること
により達成される。読まれなかったブロックがデータブロックである場合にはパ
リティブロックは読まれなかったブロックを再構成するために用いられる。
location for Real−time Disk I/O”,Com
pcon‘96(41st IEEE Computer Society In
ternational Conference,Santa Clara,2
5−28 Febr,1996)から知られている。知られているシステムでは
、データユニットは各々がディスク上で一のフルトラックを占有する一群のGブ
ロックを形成するGディスク上にストライプされる。Gディスクのこの群はDの
利用可能なディスクの組からランダムに選択される。Gブロックの一つはパリテ
ィブロックである。群のランダムな分布からディスク上のロードのバランスが得
られる。ランダムパリティブロックは更なるロードバランスを可能にし、これは
ロードを最小化する一群のGブロックの(G−1)ブロックのみを読みとること
により達成される。読まれなかったブロックがデータブロックである場合にはパ
リティブロックは読まれなかったブロックを再構成するために用いられる。
【0003】 本発明の目的は請求項の前半に規定されるような記憶システムを提供すること
にあり、これはディスクの帯域幅をより効率的に用いることである。この目的の
ために、本発明は請求項1に規定される記憶システムを提供する。
にあり、これはディスクの帯域幅をより効率的に用いることである。この目的の
ために、本発明は請求項1に規定される記憶システムを提供する。
【0004】 データの検索に対して記憶媒体に関して読み取りヘッドの動きを用いる記憶ユ
ニットでは、そのような記憶ユニットの一例はディスクドライブであるが、デー
タのある部分の予想された検索時間は第一の成分として例えばトラック内の右の
トラック及び右の位置である右位置でヘッドを位置決めするために要求されるス
イッチ時間と、第二の成分として実際の読み取り処理に対して必要な時間とから
なる。連続データの大きな量が一度に読み込まれたと仮定する場合に、一つのデ
ータの予想される検索時間はこの第二の成分により大幅に決定される。ほとんど
の記憶ユニットで、データの任意の一つを実際に読み取るために必要とされる時
間は記憶空間内のその一つのデータの場所に依存する。例えばディスクドライブ
では外側のトラックの記憶容量は内側トラックよりも高い。現在のディスクドラ
イブでは、トラック容量は連続的ではなく段階的に変化し、それにより、記憶ゾ
ーンの限定された数が典型的には十から二十のオーダーで識別され、それらの各
々で、すべてのトラックが等しい記憶容量を有する。ディスクドライブの一定の
角速度の観点からディスクドライブのスピンドルに近接した記憶ゾーンに記憶さ
れたブロックの予想される検索時間はディスクドライブの外周部近くの記憶ゾー
ンに記憶されたブロックより高い。本発明によれば、選択手順は予想された検索
時間を考慮に入れて用いられ、これは検索に対して低く予想された検索時間を有
する好ましい選択ブロックにより利用可能なディスク帯域幅のより効率的な使用
を可能にする。これはディスク帯域幅が記憶容量の代わりにシステムボトルネッ
クを決定するビデオサーバーに対して特に好ましい。ディスク帯域幅のより効率
的な使用によりまたより厳しくないバッファ要求及びより良い応答時間が得られ
る。
ニットでは、そのような記憶ユニットの一例はディスクドライブであるが、デー
タのある部分の予想された検索時間は第一の成分として例えばトラック内の右の
トラック及び右の位置である右位置でヘッドを位置決めするために要求されるス
イッチ時間と、第二の成分として実際の読み取り処理に対して必要な時間とから
なる。連続データの大きな量が一度に読み込まれたと仮定する場合に、一つのデ
ータの予想される検索時間はこの第二の成分により大幅に決定される。ほとんど
の記憶ユニットで、データの任意の一つを実際に読み取るために必要とされる時
間は記憶空間内のその一つのデータの場所に依存する。例えばディスクドライブ
では外側のトラックの記憶容量は内側トラックよりも高い。現在のディスクドラ
イブでは、トラック容量は連続的ではなく段階的に変化し、それにより、記憶ゾ
ーンの限定された数が典型的には十から二十のオーダーで識別され、それらの各
々で、すべてのトラックが等しい記憶容量を有する。ディスクドライブの一定の
角速度の観点からディスクドライブのスピンドルに近接した記憶ゾーンに記憶さ
れたブロックの予想される検索時間はディスクドライブの外周部近くの記憶ゾー
ンに記憶されたブロックより高い。本発明によれば、選択手順は予想された検索
時間を考慮に入れて用いられ、これは検索に対して低く予想された検索時間を有
する好ましい選択ブロックにより利用可能なディスク帯域幅のより効率的な使用
を可能にする。これはディスク帯域幅が記憶容量の代わりにシステムボトルネッ
クを決定するビデオサーバーに対して特に好ましい。ディスク帯域幅のより効率
的な使用によりまたより厳しくないバッファ要求及びより良い応答時間が得られ
る。
【0005】 好ましくは選択過程は複数の記憶ユニットでのロード分布を更に考慮に入れる
。このようにして、冗長な情報により提供された自由度はロードバランスと用い
られる帯域幅の改善の両方を同時に達成するために用いられる。更なる利点はデ
ータユニットの最少全体検索時間の一のデータユニットから他への変動はより少
ない。選択過程は各リクエストされたユニットそれぞれでなされ、この場合には
選択過程は他のデータユニットを参照することなしにある基準により最適な選択
を決定するよう試行する。或いは選択過程は提供をペンディングされたデータユ
ニットのバッチでなされる。後者の方法で、自由度は帯域幅利用をロードバラン
スし及び/又は改善するためにすら、より良く用いられうる。例えば、特定のデ
ータユニットに対して最適である選択はロードバランスの観点からそれに続くデ
ータユニットに対して問題を引き起こすことがある。そのような場合には、選択
過程に対して、一度に多数のデータユニットにアドレスすることがより好ましい
。
。このようにして、冗長な情報により提供された自由度はロードバランスと用い
られる帯域幅の改善の両方を同時に達成するために用いられる。更なる利点はデ
ータユニットの最少全体検索時間の一のデータユニットから他への変動はより少
ない。選択過程は各リクエストされたユニットそれぞれでなされ、この場合には
選択過程は他のデータユニットを参照することなしにある基準により最適な選択
を決定するよう試行する。或いは選択過程は提供をペンディングされたデータユ
ニットのバッチでなされる。後者の方法で、自由度は帯域幅利用をロードバラン
スし及び/又は改善するためにすら、より良く用いられうる。例えば、特定のデ
ータユニットに対して最適である選択はロードバランスの観点からそれに続くデ
ータユニットに対して問題を引き起こすことがある。そのような場合には、選択
過程に対して、一度に多数のデータユニットにアドレスすることがより好ましい
。
【0006】 任意の時点で、各記憶ユニットは記憶ユニットから検索されるのを待つそれぞ
れのブロックに対する読み取りリクエストのエンプティ又はエンプティでないキ
ューを有する。考慮に入れられるロード分布として、選択過程はキュー長さを開
始点とし、即ち、選択過程はキュー長さを均衡させることを目的とする。或いは
選択過程は実際のキュー長さを無視して、記憶ユニットにわたりデータの現在リ
クエストされたデータユニット又はバッチのロードを等しく分配するよう試行す
るのみである。両方の方法は選択過程がその時点でキュー長さがゼロである故に
、前のデータユニット又はデータユニットのバッチのブロックが検索された後に
なされたときには本質的に同一である。
れのブロックに対する読み取りリクエストのエンプティ又はエンプティでないキ
ューを有する。考慮に入れられるロード分布として、選択過程はキュー長さを開
始点とし、即ち、選択過程はキュー長さを均衡させることを目的とする。或いは
選択過程は実際のキュー長さを無視して、記憶ユニットにわたりデータの現在リ
クエストされたデータユニット又はバッチのロードを等しく分配するよう試行す
るのみである。両方の方法は選択過程がその時点でキュー長さがゼロである故に
、前のデータユニット又はデータユニットのバッチのブロックが検索された後に
なされたときには本質的に同一である。
【0007】 本発明の更なる利点は従属請求項に記載されている。
【0008】 本発明は又記憶システムのデータユニットを記憶する複数の記憶ユニット及び
ローダーからなる。本発明は更に複数の記憶ユニットからなるシステムのデータ
ユニットを検索する方法及び記憶方法に関する。
ローダーからなる。本発明は更に複数の記憶ユニットからなるシステムのデータ
ユニットを検索する方法及び記憶方法に関する。
【0009】 本発明のこれら及び他の特徴は以下の実施例を参照した詳細な説明から明らか
となる。
となる。
【0010】 図面では、 図1は本発明によるシステムの概略図を示す。
【0011】 図2は本発明のシステムで用いられる選択過程の第二の実施例の段階を示す。
【0012】 図1は本発明によるシステムの概略図を示す。各水平バー110から120は
記憶ユニットの概略を示す。この実施例では、各記憶ユニット110から120
はディスクドライブであることが仮定されている。各記憶ユニット110から1
20は6つの記憶ゾーンに副分割される。例えば記憶ユニット110は記憶ゾー
ン121から126からなる。各記憶ゾーン121から126は同一の記憶容量
を有する多数の円形トラックからなる。或いは各記憶ゾーン121から126は
概略同一の記憶容量を有する多数のトラックからなる。故に、記憶ゾーンとして
考えられるのは実際には一定の記憶容量の幾つかの物理的な記憶ゾーンの堆積(
collection)である。ディスクドライブの外周部近くに配置されたトラックはデ
ィスクドライブのスピンドルに近く配置されたトラックより高い記憶容量を有す
る。ディスクドライブの一定の角速度の観点からディスクドライブのスピンドル
に近接した記憶ゾーンに記憶されたブロックの予想される検索時間はディスクド
ライブの外周部近くの記憶ゾーンに記憶されたブロックより高い。図1では、予
想された検索時間は左から右へ減少すると仮定している。例えば、記憶ゾーン1
21はスピンドル付近のトラックからなり、記憶ゾーン126は外周付近のトラ
ックからなる。
記憶ユニットの概略を示す。この実施例では、各記憶ユニット110から120
はディスクドライブであることが仮定されている。各記憶ユニット110から1
20は6つの記憶ゾーンに副分割される。例えば記憶ユニット110は記憶ゾー
ン121から126からなる。各記憶ゾーン121から126は同一の記憶容量
を有する多数の円形トラックからなる。或いは各記憶ゾーン121から126は
概略同一の記憶容量を有する多数のトラックからなる。故に、記憶ゾーンとして
考えられるのは実際には一定の記憶容量の幾つかの物理的な記憶ゾーンの堆積(
collection)である。ディスクドライブの外周部近くに配置されたトラックはデ
ィスクドライブのスピンドルに近く配置されたトラックより高い記憶容量を有す
る。ディスクドライブの一定の角速度の観点からディスクドライブのスピンドル
に近接した記憶ゾーンに記憶されたブロックの予想される検索時間はディスクド
ライブの外周部近くの記憶ゾーンに記憶されたブロックより高い。図1では、予
想された検索時間は左から右へ減少すると仮定している。例えば、記憶ゾーン1
21はスピンドル付近のトラックからなり、記憶ゾーン126は外周付近のトラ
ックからなる。
【0013】 システム100に記憶されたデータ(例えばムービー)は4ブロックのデータ
ユニットに配列される。各データユニットはデータの自己充足的(self-contain
ed)部分(例えばビデオフレーム)又はデータの特徴に関連した特定の関係を有
さず、データの固定された量のみに対応する。好ましくはブロックの大きさはト
ラックの整数番号である。通常、各ブロックは記憶ゾーンを部分的に満たすのみ
である。或いは記憶ゾーンの数又はブロックの大きさはブロック及び記憶ゾーン
が概略同一の大きさを有するように増加される。システム100は更にブロック
を記憶ユニット110から120へ検索し、検索されたブロックをクライアント
に配布するリーダー140を含む。
ユニットに配列される。各データユニットはデータの自己充足的(self-contain
ed)部分(例えばビデオフレーム)又はデータの特徴に関連した特定の関係を有
さず、データの固定された量のみに対応する。好ましくはブロックの大きさはト
ラックの整数番号である。通常、各ブロックは記憶ゾーンを部分的に満たすのみ
である。或いは記憶ゾーンの数又はブロックの大きさはブロック及び記憶ゾーン
が概略同一の大きさを有するように増加される。システム100は更にブロック
を記憶ユニット110から120へ検索し、検索されたブロックをクライアント
に配布するリーダー140を含む。
【0014】 データユニットを形成する4ブロックは記憶ユニット110から120にわた
りランダム又はランダムに近い形で分配される。図1で、任意の例示的データユ
ニットの4つのブロックからなる4つの記憶ゾーンは記憶ゾーン123、127
、128、129である。4つのブロックは4つのブロックのいずれの2つの検
索も例示的なデータユニットの検索に十分であるように冗長な情報からなる。故
に、例示的データユニットの検索に対して、合計で4ブロックからの6つの選択
がなされる。それにより、リーダー140では選択過程がある基準に基づいて検
索に対するその選択を決定することに責任を持つように設定される。データユニ
ットは正確に2つのみのブロックだけが検索される必要がある4つのブロックか
らなることは本発明に本質的ではない。本発明の文脈から、データユニットはN
≧2であるN個のブロックからなり、加えられた冗長性はN−Kブロックが検索
される必要があるようになされ、ここでK≧1である。
りランダム又はランダムに近い形で分配される。図1で、任意の例示的データユ
ニットの4つのブロックからなる4つの記憶ゾーンは記憶ゾーン123、127
、128、129である。4つのブロックは4つのブロックのいずれの2つの検
索も例示的なデータユニットの検索に十分であるように冗長な情報からなる。故
に、例示的データユニットの検索に対して、合計で4ブロックからの6つの選択
がなされる。それにより、リーダー140では選択過程がある基準に基づいて検
索に対するその選択を決定することに責任を持つように設定される。データユニ
ットは正確に2つのみのブロックだけが検索される必要がある4つのブロックか
らなることは本発明に本質的ではない。本発明の文脈から、データユニットはN
≧2であるN個のブロックからなり、加えられた冗長性はN−Kブロックが検索
される必要があるようになされ、ここでK≧1である。
【0015】 知られたシステムでは、ブロックの選択の自由度が又表され、記憶ユニット上
の一時的なロードをバランスする目的で用いられる。図1のシステムでは、記憶
ユニットにわたるブロックの多少のランダム分布により既に達成されたロードバ
ランスに加えて、更なるロードバランスが以下のように達成される。通常の動作
中に、各記憶ユニットは記憶ユニットから検索されるのを待機する各ブロックに
対する読み取りリクエストのエンプティ又はエンプティでないキューを有する。
ある時点で、記憶ユニット114が過重なロード下に置かれている、即ち、記憶
ユニット114に対する読み取りリクエストのキューが他の記憶ユニット110
、112、116−120のそれより長いことを想定する。例示的なデータユニ
ットに対して記憶ユニット114が含まれていない3つの選択のどの一つを選択
することもバランスしたロードを達成するために記憶ユニット114のキューが
更に成長することを防止する。そのような選択は、例えば、記憶ゾーン123に
記憶されたブロック、及び記憶ゾーン128に記憶されたブロックからなる。選
択の自由度を有することの更なる利点は記憶ユニット110から120が故障又
は置き換えられたプロセスにある場合にも、システム100はなおデマンドに対
して協働可能であり、即ち、リクエストされたデータユニットを配布することが
できる。ロードバランスに対して、記憶ユニット110から120のいずれもデ
ータユニット当たり一以上のブロックを含まず、それにより代替的なブロックの
数は最大である。本発明の文脈で、データユニット当たりのブロック数はシステ
ム内の記憶ユニットの数と等しく、この場合に対応する冗長データを含むデータ
ユニットはすべての記憶ユニットにわたりストライプ化される。
の一時的なロードをバランスする目的で用いられる。図1のシステムでは、記憶
ユニットにわたるブロックの多少のランダム分布により既に達成されたロードバ
ランスに加えて、更なるロードバランスが以下のように達成される。通常の動作
中に、各記憶ユニットは記憶ユニットから検索されるのを待機する各ブロックに
対する読み取りリクエストのエンプティ又はエンプティでないキューを有する。
ある時点で、記憶ユニット114が過重なロード下に置かれている、即ち、記憶
ユニット114に対する読み取りリクエストのキューが他の記憶ユニット110
、112、116−120のそれより長いことを想定する。例示的なデータユニ
ットに対して記憶ユニット114が含まれていない3つの選択のどの一つを選択
することもバランスしたロードを達成するために記憶ユニット114のキューが
更に成長することを防止する。そのような選択は、例えば、記憶ゾーン123に
記憶されたブロック、及び記憶ゾーン128に記憶されたブロックからなる。選
択の自由度を有することの更なる利点は記憶ユニット110から120が故障又
は置き換えられたプロセスにある場合にも、システム100はなおデマンドに対
して協働可能であり、即ち、リクエストされたデータユニットを配布することが
できる。ロードバランスに対して、記憶ユニット110から120のいずれもデ
ータユニット当たり一以上のブロックを含まず、それにより代替的なブロックの
数は最大である。本発明の文脈で、データユニット当たりのブロック数はシステ
ム内の記憶ユニットの数と等しく、この場合に対応する冗長データを含むデータ
ユニットはすべての記憶ユニットにわたりストライプ化される。
【0016】 本発明の特徴によれば、選択の自由度はシステムの帯域幅を増加するために更
に用いられる。それにより、選択過程は記憶ゾーンのより速いもののブロックに
対して、即ちディスクドライブの外周に最も近接した可能な4つのブロックのそ
れらのブロックに対して利点を有する。換言すると、選択過程はブロックの予想
される検索時間をあれこれと考慮に入れる。例えば、例示的なデータユニットを
検索するために選択過程は記憶ゾーン127に記憶されたブロック及び記憶ゾー
ン129に記憶されたブロックを選択する。
に用いられる。それにより、選択過程は記憶ゾーンのより速いもののブロックに
対して、即ちディスクドライブの外周に最も近接した可能な4つのブロックのそ
れらのブロックに対して利点を有する。換言すると、選択過程はブロックの予想
される検索時間をあれこれと考慮に入れる。例えば、例示的なデータユニットを
検索するために選択過程は記憶ゾーン127に記憶されたブロック及び記憶ゾー
ン129に記憶されたブロックを選択する。
【0017】 好ましくは選択の自由度はロードバランス及び帯域幅の両方の同時の最適化に
対して用いられる。それに対して、選択過程はさらに該複数の記憶ユニットの一
時的なロード分布を考慮に入れる。図1の例示的なデータユニットを検索するこ
とに対して、実際の記憶ユニット114が相対的に高いロードの下にあるときに
好ましいシステムは記憶ゾーン123、129の2つのブロックを検索するため
に例えば選択され、それにより記憶ユニット114を緩和するのみならず、シス
テム帯域幅利用を改善し、即ちデータユニットの全検索時間を最小化する。両方
の目的を達成する選択過程の幾つかの可能な実施例は良い結果が得られた。第一
の実施例は以下のように動作する。まず、選択過程が最も過酷に用いられた記憶
ユニットを廃棄する選択候補の数を減少する。次に残りの3つの選択候補から比
較的ブロックの多い数がより速い記憶ゾーンに配置される選択が選択される。よ
り一般的には、データユニットを形成するN個のブロックの内からL(L<K)
ブロックがロードバランスに対して廃棄され、それに続いて、残りのN−Lブロ
ックの最も遅い(K−L)ブロックがシステム帯域幅を最適化するために廃棄さ
れる。
対して用いられる。それに対して、選択過程はさらに該複数の記憶ユニットの一
時的なロード分布を考慮に入れる。図1の例示的なデータユニットを検索するこ
とに対して、実際の記憶ユニット114が相対的に高いロードの下にあるときに
好ましいシステムは記憶ゾーン123、129の2つのブロックを検索するため
に例えば選択され、それにより記憶ユニット114を緩和するのみならず、シス
テム帯域幅利用を改善し、即ちデータユニットの全検索時間を最小化する。両方
の目的を達成する選択過程の幾つかの可能な実施例は良い結果が得られた。第一
の実施例は以下のように動作する。まず、選択過程が最も過酷に用いられた記憶
ユニットを廃棄する選択候補の数を減少する。次に残りの3つの選択候補から比
較的ブロックの多い数がより速い記憶ゾーンに配置される選択が選択される。よ
り一般的には、データユニットを形成するN個のブロックの内からL(L<K)
ブロックがロードバランスに対して廃棄され、それに続いて、残りのN−Lブロ
ックの最も遅い(K−L)ブロックがシステム帯域幅を最適化するために廃棄さ
れる。
【0018】 図2は本発明のシステムで用いられうる選択過程の第二の実施例の段階を示す
。ロードバランスのために、これは各データユニットにそれぞれアドレスするの
ではなく一度にデータユニットリクエストのバッチに選択過程を適用するために
一般的に好ましい。これは国際出願PCT/IB98/00720及び対応する
米国特許出願09/083693(PHN16375)で説明され、ここではま
たそのような多数のロードバランス選択過程が又示され、それは多数のデータユ
ニットを同時に考慮に入れる。これらの選択過程は以下のような方法で新たな選
択過程を形成するよう本発明と結合される。第一段階で、ロードバランスは例え
ば上記の国際出願PCT/IB98/00720の選択過程の一つであるような
任意のロードバランス選択により達成される。第二段階では、各ディスクのロー
ドを不変に保つ間に、ディスクの外側トラックから読み取られたブロックの数を
増加することが目的である。この第二の段階は以下のように実施される。第一の
段階で得られた初期選択を与えるために、方向付け重み付けグラフが構成され、
ここで各ディスクドライブ110から120はノードとして表される。そのよう
なグラフの例は図2に示される。更にまた、第一のデータユニットのブロックは
図1の例示的なデータユニットのブロックと同様に分布され、これはグラフにノ
ード110、114、118の下にダッシュにより示され、ダッシュはこれらの
記憶ユニットが第一のデータユニットのブロックを含むことを示す。同様に、第
二のデータユニットは記憶ユニット110、114、118、120に含まれた
ブロックと共に表されると仮定され、これは図2に関連するノード110、11
4、118、120上のダッシュにより示される。更にまた第一の段階の後に、
ロードバランスの観点から受容可能な初期的な選択が存在し、この選択は記憶ユ
ニット110から116(図2に円により示される)から第一のデータユニット
を検索し、記憶ユニット118から120(図2に三角により示される)から第
二のデータユニットを検索することを含む。
。ロードバランスのために、これは各データユニットにそれぞれアドレスするの
ではなく一度にデータユニットリクエストのバッチに選択過程を適用するために
一般的に好ましい。これは国際出願PCT/IB98/00720及び対応する
米国特許出願09/083693(PHN16375)で説明され、ここではま
たそのような多数のロードバランス選択過程が又示され、それは多数のデータユ
ニットを同時に考慮に入れる。これらの選択過程は以下のような方法で新たな選
択過程を形成するよう本発明と結合される。第一段階で、ロードバランスは例え
ば上記の国際出願PCT/IB98/00720の選択過程の一つであるような
任意のロードバランス選択により達成される。第二段階では、各ディスクのロー
ドを不変に保つ間に、ディスクの外側トラックから読み取られたブロックの数を
増加することが目的である。この第二の段階は以下のように実施される。第一の
段階で得られた初期選択を与えるために、方向付け重み付けグラフが構成され、
ここで各ディスクドライブ110から120はノードとして表される。そのよう
なグラフの例は図2に示される。更にまた、第一のデータユニットのブロックは
図1の例示的なデータユニットのブロックと同様に分布され、これはグラフにノ
ード110、114、118の下にダッシュにより示され、ダッシュはこれらの
記憶ユニットが第一のデータユニットのブロックを含むことを示す。同様に、第
二のデータユニットは記憶ユニット110、114、118、120に含まれた
ブロックと共に表されると仮定され、これは図2に関連するノード110、11
4、118、120上のダッシュにより示される。更にまた第一の段階の後に、
ロードバランスの観点から受容可能な初期的な選択が存在し、この選択は記憶ユ
ニット110から116(図2に円により示される)から第一のデータユニット
を検索し、記憶ユニット118から120(図2に三角により示される)から第
二のデータユニットを検索することを含む。
【0019】 グラフは更に4つの初期的な選択されたブロックの各一つに対してノードvか
らwへの3つの矢印(v、w)からなり、ここでノードvは選択されたブロック
を含み、ノードwは関連するデータユニットの代替的なブロックを含む3つのノ
ードの一つである。例えば3つの矢印はノード110を離れ、それぞれノード1
14から118へ向かい、後者は第一のデータユニットの他のブロックを含む。
各矢印(v、w)に対して重みはデータユニットを検索するためにノードvの代
わりにノードwを用いることにより増加されるものを表すように属性を付与され
る。これにより記憶ユニットの各記憶ゾーンは序数1から6を与えられ、これら
は予想されるデータ検索時間と共に増加する。重みは記憶ゾーンに関連するノー
ドの序数間の差と考えられ、これらの重みは矢印の隣に示される。例えばノード
110からノード118への矢印は重み2を有し、一方第一のデータユニットの
ブロックを含む記憶ユニット110の記憶ゾーンが序数3を有し、第一のデータ
ユニットのブロックを含む記憶ユニット118の記憶ゾーンが序数5を有し、こ
れは図1に示される。更に、第二のデータユニットに関するブロックが各記憶ユ
ニットの最も遅い記憶ゾーンにすべて配置されると仮定される。これにより、第
二のデータユニットに関する矢印の重みがゼロである結果を生じ、この重みは明
確に示すために図2の左の外にある。矢印に重みを付与する多くの代替的な方法
は本発明の原理から離れることなく可能である。
らwへの3つの矢印(v、w)からなり、ここでノードvは選択されたブロック
を含み、ノードwは関連するデータユニットの代替的なブロックを含む3つのノ
ードの一つである。例えば3つの矢印はノード110を離れ、それぞれノード1
14から118へ向かい、後者は第一のデータユニットの他のブロックを含む。
各矢印(v、w)に対して重みはデータユニットを検索するためにノードvの代
わりにノードwを用いることにより増加されるものを表すように属性を付与され
る。これにより記憶ユニットの各記憶ゾーンは序数1から6を与えられ、これら
は予想されるデータ検索時間と共に増加する。重みは記憶ゾーンに関連するノー
ドの序数間の差と考えられ、これらの重みは矢印の隣に示される。例えばノード
110からノード118への矢印は重み2を有し、一方第一のデータユニットの
ブロックを含む記憶ユニット110の記憶ゾーンが序数3を有し、第一のデータ
ユニットのブロックを含む記憶ユニット118の記憶ゾーンが序数5を有し、こ
れは図1に示される。更に、第二のデータユニットに関するブロックが各記憶ユ
ニットの最も遅い記憶ゾーンにすべて配置されると仮定される。これにより、第
二のデータユニットに関する矢印の重みがゼロである結果を生じ、この重みは明
確に示すために図2の左の外にある。矢印に重みを付与する多くの代替的な方法
は本発明の原理から離れることなく可能である。
【0020】 サイクルは矢印{(v1,v2),(v2,v3),...(vk,v1)}
の閉じた連続である。矢印に沿った重みの和が正であるサイクルはより速い記憶
ゾーンから読み出されたブロックの数の増加を生ずるために矢印に沿って一ブロ
ックを“転送”することにより初期検索選択の調整に対応する。明らかに、各デ
ィスクのロードは変化せず、何故ならば、交換に含まれる各ディスクはなお同数
のブロックを検索しなければならないからである。交換をなした後に、グラフは
次のように調整されなければならない:交換に含まれる各矢印(v、w)は矢印
(w,v)により置き換えられ、ここで新たな矢印の重みは消去された矢印の重
みの否定(negation)である。
の閉じた連続である。矢印に沿った重みの和が正であるサイクルはより速い記憶
ゾーンから読み出されたブロックの数の増加を生ずるために矢印に沿って一ブロ
ックを“転送”することにより初期検索選択の調整に対応する。明らかに、各デ
ィスクのロードは変化せず、何故ならば、交換に含まれる各ディスクはなお同数
のブロックを検索しなければならないからである。交換をなした後に、グラフは
次のように調整されなければならない:交換に含まれる各矢印(v、w)は矢印
(w,v)により置き換えられ、ここで新たな矢印の重みは消去された矢印の重
みの否定(negation)である。
【0021】 図2の簡単な例では、記憶ユニット110、118のみがこれらが両方のデー
タユニットのブロックを含む次の第一の段階で選択された記憶ユニットのみであ
るようなスワップ処理で用いられうる。故に、ロード分布を変化することなく帯
域幅使用を増加するためになされる唯一のスワップは太い矢印により示されるス
ワップであり、即ち、第一のデータユニットは記憶ユニット110からの代わり
に記憶ユニット118からブロックを読み取り、第二のデータユニットに対して
も逆も成立する。より多くのデータユニットが同時に考慮されるときに、問題は
即座に解決するためには複雑すぎ、サイクルの捜索は自動化しなければならない
。上記の戦略は種々の方法で実施されうる。例えば、与えられた最大長さのサイ
クルに対する捜索を限定することも考えられる。或いはグラフ表現も又可能であ
り、ここで2つのノードv、wの間で、唯一の(方向付けられていない)“矢印
”を有し、それは4つの重み表現を有する:(1)wのより速い記憶から検索さ
れうるvから検索されたブロックの数、(2)wのより遅い記憶ゾーンから検索
されうるvから検索されたブロックの数、(3)vのより速い記憶ゾーンから検
索されうるwから検索されたブロックの数、(4)vのより遅い記憶から検索さ
れうるwから検索されたブロックの数。
タユニットのブロックを含む次の第一の段階で選択された記憶ユニットのみであ
るようなスワップ処理で用いられうる。故に、ロード分布を変化することなく帯
域幅使用を増加するためになされる唯一のスワップは太い矢印により示されるス
ワップであり、即ち、第一のデータユニットは記憶ユニット110からの代わり
に記憶ユニット118からブロックを読み取り、第二のデータユニットに対して
も逆も成立する。より多くのデータユニットが同時に考慮されるときに、問題は
即座に解決するためには複雑すぎ、サイクルの捜索は自動化しなければならない
。上記の戦略は種々の方法で実施されうる。例えば、与えられた最大長さのサイ
クルに対する捜索を限定することも考えられる。或いはグラフ表現も又可能であ
り、ここで2つのノードv、wの間で、唯一の(方向付けられていない)“矢印
”を有し、それは4つの重み表現を有する:(1)wのより速い記憶から検索さ
れうるvから検索されたブロックの数、(2)wのより遅い記憶ゾーンから検索
されうるvから検索されたブロックの数、(3)vのより速い記憶ゾーンから検
索されうるwから検索されたブロックの数、(4)vのより遅い記憶から検索さ
れうるwから検索されたブロックの数。
【0022】 上記選択過程で、それがデータユニットに対応する4ブロックのどの2つの検
索に対しても十分なまでデータユニットを検索することが仮定されている。より
簡単な実施はシステムに記憶されたデータユニットの2つのブロックの各一つの
2つのコピーを記憶することからなる。換言すると、各データユニットは対とし
て同一である4つのブロックからなる。これはデータユニットの大きさNを2に
減少し、ランダムブロックKの数を1に減少し、データユニットのブロックは相
互にコピーされる。図2のグラフから、矢印の数はデータユニットのすべてのブ
ロックがもはや相互に交換されないように消去されなければならない。状況(N
,K)=(2,1)の場合は上記国際出願PCT/IB98/00720に詳細
に記載されている。
索に対しても十分なまでデータユニットを検索することが仮定されている。より
簡単な実施はシステムに記憶されたデータユニットの2つのブロックの各一つの
2つのコピーを記憶することからなる。換言すると、各データユニットは対とし
て同一である4つのブロックからなる。これはデータユニットの大きさNを2に
減少し、ランダムブロックKの数を1に減少し、データユニットのブロックは相
互にコピーされる。図2のグラフから、矢印の数はデータユニットのすべてのブ
ロックがもはや相互に交換されないように消去されなければならない。状況(N
,K)=(2,1)の場合は上記国際出願PCT/IB98/00720に詳細
に記載されている。
【0023】 上記選択過程では、ロードバランス及びシステム帯域幅利用の改善は2つの別
の段階で達成される。本発明のシステムで用いられる選択過程の第三の実施例は
唯一の段階しか要求しない。これに関して、選択過程はブロックの位置を考慮に
入れた変更されたキュー長さに基づいて選択される。キューの各エントリは予想
されたより悪い場合の検索時間に対して考慮するよう重み付けられる。例えば、
スピンドル付近のブロックに対する読み取りリクエストは外周部分に近いブロッ
クに対するリクエストより重い重みを有する。これらの(N−K)ブロックは最
少の変更されたキュー長さで記憶ユニットに記憶されるよう選択される。或いは
データユニットのバッチが選択過程により同時に取り扱われるときに、選択され
たブロックは変更されたキュー長さの均衡化(leveling)を達成するものであり
、それにより記憶ユニットの一時的に変更されたキュー長さ、又はそれらの間の
記憶ユニットにわたり均衡な分布を有するものを考慮に入れる。上記国際出願P
CT/IB98/00720の例のようなロードバランス選択過程のどの種類も
ロードバランス及び最適帯域幅利用を同時に達成するためにここに記載されたよ
うに変更される。
の段階で達成される。本発明のシステムで用いられる選択過程の第三の実施例は
唯一の段階しか要求しない。これに関して、選択過程はブロックの位置を考慮に
入れた変更されたキュー長さに基づいて選択される。キューの各エントリは予想
されたより悪い場合の検索時間に対して考慮するよう重み付けられる。例えば、
スピンドル付近のブロックに対する読み取りリクエストは外周部分に近いブロッ
クに対するリクエストより重い重みを有する。これらの(N−K)ブロックは最
少の変更されたキュー長さで記憶ユニットに記憶されるよう選択される。或いは
データユニットのバッチが選択過程により同時に取り扱われるときに、選択され
たブロックは変更されたキュー長さの均衡化(leveling)を達成するものであり
、それにより記憶ユニットの一時的に変更されたキュー長さ、又はそれらの間の
記憶ユニットにわたり均衡な分布を有するものを考慮に入れる。上記国際出願P
CT/IB98/00720の例のようなロードバランス選択過程のどの種類も
ロードバランス及び最適帯域幅利用を同時に達成するためにここに記載されたよ
うに変更される。
【0024】 本発明による記憶システムの性能は大部分ロード戦略、即ちデータが複数の記
憶ユニット上に記憶される方法により決定されることは明らかである。ローダー
はシステム内に記憶されるデータをNの記憶されるブロックに変換するタスクを
有し、それによりN−Kブロックのみがデータユニットを検索するよう検索され
る必要があるように冗長なデータをブロックに含み、記憶ユニットの異なる一つ
に記憶されるN個のブロックの各一つに記憶される。ロードバランスの観点から
既に指摘したように、それはN個のブロックをNの異なる記憶ユニットにランダ
ム又は疑似ランダムに分配するために好ましい。本発明の観点で、N個のブロッ
クをデータユニットのブロックがデータ検索時間がより多く予測された記憶ゾー
ン及びより少なく予測された記憶ゾーンにわたり多少とも等しく分布されるよう
にN個のブロックを分配する間に予想されたデータ検索時間を考慮に入れること
は更なる利点である。これは同様に記憶ゾーンをランダム又は疑似ランダムに選
択することにより達成されうる。或いは各データユニットのブロックはあるアル
ゴリズムによりより遅い及びより速いゾーンにわたり注意深く分配される。
憶ユニット上に記憶される方法により決定されることは明らかである。ローダー
はシステム内に記憶されるデータをNの記憶されるブロックに変換するタスクを
有し、それによりN−Kブロックのみがデータユニットを検索するよう検索され
る必要があるように冗長なデータをブロックに含み、記憶ユニットの異なる一つ
に記憶されるN個のブロックの各一つに記憶される。ロードバランスの観点から
既に指摘したように、それはN個のブロックをNの異なる記憶ユニットにランダ
ム又は疑似ランダムに分配するために好ましい。本発明の観点で、N個のブロッ
クをデータユニットのブロックがデータ検索時間がより多く予測された記憶ゾー
ン及びより少なく予測された記憶ゾーンにわたり多少とも等しく分布されるよう
にN個のブロックを分配する間に予想されたデータ検索時間を考慮に入れること
は更なる利点である。これは同様に記憶ゾーンをランダム又は疑似ランダムに選
択することにより達成されうる。或いは各データユニットのブロックはあるアル
ゴリズムによりより遅い及びより速いゾーンにわたり注意深く分配される。
【0025】 例えば、各データユニットが相互に協働する2つのブロックからなる(即ちN
=2、K=1)場合に、ローダーは第一のブロックをディスクドライブの内側ト
ラックの一つに記憶し第二のブロックを外側トラックの一つに記憶する。この例
で、選択過程は内側トラックの群と外側トラックの群とをそれぞれ考慮する記憶
ゾーンが物理的な記憶ゾーンと実際には一致していないが、ディスクドライブの
後者は通常丁度2よりも大きい数からなる。選択過程は一度にデータユニットの
バッチを考慮すると仮定した場合にそれは外側のトラックのできるだけ多くのブ
ロックを選択しようと試み、同時に、ロードバランスを達成するよう試みる。こ
れにより、本発明による選択過程は任意のロードバランスアルゴリズムに基づき
、これは異なる記憶ゾーンの予想された検索時間が考慮されるように提供される
。例えば、外側トラック(外側ブロック)のブロックの予想された検索時間は内
側トラック(内側ブロック)のブロックの予想された検索時間の4/5である場
合には、選択過程は記憶ユニット当たりのブロックの最大数を最小化するように
試みる代わりに、内側ブロック及び外側ブロックの数の重み付けられた和を最小
化するように試みる。それにより内側ブロックは重み5を外側ブロックは重み4
を得る。ここで幾つかの異なる選択により同一の重み付けられた和が得られる。
例えば4つの内側ブロック及び5つの外側ブロックが40の重み付けられた和を
有するが、また8つの内側ブロック又は10の外側ブロックが重み付けられた和
を有する。更なる詳細として、スイッチ時間がより少ない故により少ないブロッ
クを読み取ることが好ましいことを考慮に入れる。内及び外側ブロック間の明ら
かな識別により、最悪のスイッチ時間が生ずる場合はより少ない。これは更に帯
域幅利用を改善する。余分の獲得された帯域幅利用はより少ないバッファリング
に変換されうる。
=2、K=1)場合に、ローダーは第一のブロックをディスクドライブの内側ト
ラックの一つに記憶し第二のブロックを外側トラックの一つに記憶する。この例
で、選択過程は内側トラックの群と外側トラックの群とをそれぞれ考慮する記憶
ゾーンが物理的な記憶ゾーンと実際には一致していないが、ディスクドライブの
後者は通常丁度2よりも大きい数からなる。選択過程は一度にデータユニットの
バッチを考慮すると仮定した場合にそれは外側のトラックのできるだけ多くのブ
ロックを選択しようと試み、同時に、ロードバランスを達成するよう試みる。こ
れにより、本発明による選択過程は任意のロードバランスアルゴリズムに基づき
、これは異なる記憶ゾーンの予想された検索時間が考慮されるように提供される
。例えば、外側トラック(外側ブロック)のブロックの予想された検索時間は内
側トラック(内側ブロック)のブロックの予想された検索時間の4/5である場
合には、選択過程は記憶ユニット当たりのブロックの最大数を最小化するように
試みる代わりに、内側ブロック及び外側ブロックの数の重み付けられた和を最小
化するように試みる。それにより内側ブロックは重み5を外側ブロックは重み4
を得る。ここで幾つかの異なる選択により同一の重み付けられた和が得られる。
例えば4つの内側ブロック及び5つの外側ブロックが40の重み付けられた和を
有するが、また8つの内側ブロック又は10の外側ブロックが重み付けられた和
を有する。更なる詳細として、スイッチ時間がより少ない故により少ないブロッ
クを読み取ることが好ましいことを考慮に入れる。内及び外側ブロック間の明ら
かな識別により、最悪のスイッチ時間が生ずる場合はより少ない。これは更に帯
域幅利用を改善する。余分の獲得された帯域幅利用はより少ないバッファリング
に変換されうる。
【0026】 上記の実施例は本発明を制限するものではなく、例示のためであり、請求項の
範囲から離れることなく多くの代替実施例を設計することは当業者には明らかで
ある。請求項では、括弧内の如何なる符号も請求項を制限するものではない。本
発明は幾つかの異なる要素からなるハードウエア手段及び適切にプログラムされ
たコンピュータにより実施される。幾つかの手段を列挙する装置請求項では、こ
れらの手段の幾つかは一及び同一のハードウエアアイテムにより実施されうる。
範囲から離れることなく多くの代替実施例を設計することは当業者には明らかで
ある。請求項では、括弧内の如何なる符号も請求項を制限するものではない。本
発明は幾つかの異なる要素からなるハードウエア手段及び適切にプログラムされ
たコンピュータにより実施される。幾つかの手段を列挙する装置請求項では、こ
れらの手段の幾つかは一及び同一のハードウエアアイテムにより実施されうる。
【図1】 本発明によるシステムの概略図を示す。
【図2】 本発明のシステムで用いられる選択過程の第二の実施例の段階を示す。
───────────────────────────────────────────────────── フロントページの続き (71)出願人 Groenewoudseweg 1, 5621 BA Eindhoven, Th e Netherlands Fターム(参考) 5C052 AA01 AB03 AC08 DD04 DD06 5C053 FA20 FA23 FA28 GB06 GB11 HA29 JA01 JA21 5D044 AB05 AB07 BC01 CC05 DE03 DE25 DE53 DE72 DE92 5D077 AA22 BA18 CB04 EA04 EA31 EA35
Claims (7)
- 【請求項1】 複数の記憶ユニットと; 該複数の記憶ユニットからデータユニットを検索するリーダーとからなり、 該複数の記憶ユニットのそれぞれ一つは相互に異なる予想されたデータ検索時間
を有する複数の記憶ゾーンからなり、少なくとも一つのデータユニットは該複数
の記憶ユニットに記憶され、該データユニットはN個のブロックからなり(N≧
2)、このブロックはN個のブロックの内のN−Kからなる複数の選択のどの一
つもデータユニットを検索するために満足される(K≧1)ように冗長な情報か
らなり、 リーダーは選択過程に基づいて該複数の選択の特定の一つを決定するように配置
され、選択過程は該予想されたデータ検索時間を考慮に入れる記憶システム。 - 【請求項2】 N個のブロックが該記憶ユニットのN個の異なる一つに記憶
され、選択過程は更に該複数の記憶ユニットの一時的なロード分布を更に考慮に
入れる請求項1記載の記憶システム。 - 【請求項3】 第一段階で選択過程がロードバランスを目的とし、第二段階
で帯域幅利用を改善することを目的とする請求項2記載の記憶システム。 - 【請求項4】 選択過程はシステムのその時点と、予想された検索時間の両
方を考慮に入れる請求項2記載の記憶システム。 - 【請求項5】 複数の記憶ユニットと; 該複数の記憶ユニットにデータユニットを記憶するローダーとからなり、 該複数の記憶ユニットのそれぞれ一つは相互に異なる予想されたデータ検索時間
を有する複数の記憶ゾーンからなり、 該ローダーは該データユニットをN個のブロックに変換するために配置され(N
≧2)、該ブロックはN個のブロックのN−Kからなる複数の選択のどの一つも
データユニットを検索するために満足される(K≧1)ように冗長な情報からな
り、各記憶ユニットは多くとも該N個のブロックの一つからなり、該N個のブロ
ックが該記憶ゾーンのより速い及びより遅い一つの中で少なくとも概略等しいよ
うに分布されるように該複数の記憶ユニットに該N個のブロックを記憶する記憶
システム。 - 【請求項6】 複数の記憶ユニットからなり、該複数の記憶ユニットのそれ
ぞれ一つは相互に異なる予想されたデータ検索時間を有する複数の記憶ゾーンか
らなり、少なくとも一つのデータユニットは該複数の記憶ユニットに記憶され、
該データユニットはN個のブロックからなり(N≧2)、このブロックはN個の
ブロックのN−Kからなる複数の選択のどの一つもデータユニットを検索するた
めに満足される(K≧1)ように冗長な情報からなり、 該複数の選択の特定の一つを決定し、それにより該予想されたデータ検索時間
を考慮に入れ; その特定の選択に関するブロックを検索する各段階からなるシステムからデー
タユニットを検索する方法。 - 【請求項7】 複数の記憶ユニットからなり、該複数の記憶ユニットのそれ
ぞれ一つは相互に異なる予想されたデータ検索時間を有する複数の記憶ゾーンか
らなり、 該データユニットをN個のブロックに変換し(N≧2)、このブロックはN個
のブロックのN−Kからなる複数の選択のどの一つもデータユニットを検索する
ために満足される(K≧1)ように冗長な情報からなり、 各記憶ユニットが多くとも該N個のブロックの一つであり、該N個のブロック
は該記憶ゾーンのより速い及びより遅い一つの中で少なくとも概略均等に分配さ
れるように該複数の記憶ユニットに該N個のブロックを記憶する各段階からなる
システムのデータユニットを記憶する方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98203681 | 1998-10-30 | ||
EP98203681.6 | 1998-10-30 | ||
PCT/EP1999/007498 WO2000027108A1 (en) | 1998-10-30 | 1999-10-05 | Storage system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002529878A true JP2002529878A (ja) | 2002-09-10 |
Family
ID=8234282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000580372A Pending JP2002529878A (ja) | 1998-10-30 | 1999-10-05 | 記憶システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US6446162B1 (ja) |
EP (1) | EP1046280A1 (ja) |
JP (1) | JP2002529878A (ja) |
WO (1) | WO2000027108A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6657070B2 (en) | 2000-12-13 | 2003-12-02 | Wyeth | Production of chirally pure α-amino acids and N-sulfonyl α-amino acids |
JP3950720B2 (ja) * | 2002-03-18 | 2007-08-01 | 株式会社日立製作所 | ディスクアレイサブシステム |
US7761678B1 (en) | 2004-09-29 | 2010-07-20 | Verisign, Inc. | Method and apparatus for an improved file repository |
US9071608B2 (en) * | 2008-04-28 | 2015-06-30 | International Business Machines Corporation | Method and apparatus for load balancing in network based telephony application |
US8862847B2 (en) | 2013-02-08 | 2014-10-14 | Huawei Technologies Co., Ltd. | Distributed storage method, apparatus, and system for reducing a data loss that may result from a single-point failure |
CN103984607A (zh) * | 2013-02-08 | 2014-08-13 | 华为技术有限公司 | 分布式存储的方法、装置和系统 |
US20140281157A1 (en) * | 2013-03-13 | 2014-09-18 | Kabushiki Kaisha Toshiba | Memory system, memory controller and method |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH046672A (ja) * | 1990-04-25 | 1992-01-10 | Canon Inc | 情報記録方法 |
JPH0756691A (ja) * | 1993-08-12 | 1995-03-03 | Toshiba Corp | ストライピングディスクのデータブロック自動再配置機能を持つ情報処理装置 |
JPH0869359A (ja) * | 1994-08-29 | 1996-03-12 | Hitachi Ltd | ディスクアレイ装置 |
JPH08115172A (ja) * | 1994-10-18 | 1996-05-07 | Fuji Xerox Co Ltd | ディスクアレイ装置 |
JPH0926854A (ja) * | 1995-04-28 | 1997-01-28 | Hewlett Packard Co <Hp> | データを格納し供給するサーバー・システム |
JPH0970013A (ja) * | 1995-03-27 | 1997-03-11 | Hewlett Packard Co <Hp> | ビデオ・データ・レイアウト方法およびシステム |
JPH09154109A (ja) * | 1995-05-22 | 1997-06-10 | Sun Microsyst Inc | ビデオサーバシステムに於いて平均的なシーク時間及びバンド幅を達成するための方法及びシステム |
JPH09198194A (ja) * | 1995-12-18 | 1997-07-31 | Symbios Logic Inc | ディスクのゾーンに基づいてビデオ・データを配置するための方法および装置 |
JPH09305328A (ja) * | 1996-05-13 | 1997-11-28 | Fujitsu Ltd | ディスクアレイ装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5287459A (en) * | 1991-10-03 | 1994-02-15 | International Business Machines Corporation | Method and apparatus for reducing response time in automated library data retrieval systems |
US5926649A (en) * | 1996-10-23 | 1999-07-20 | Industrial Technology Research Institute | Media server for storage and retrieval of voluminous multimedia data |
EP0919035B1 (en) * | 1997-05-26 | 2005-07-27 | Koninklijke Philips Electronics N.V. | System for retrieving data in a video server |
-
1999
- 1999-10-05 JP JP2000580372A patent/JP2002529878A/ja active Pending
- 1999-10-05 WO PCT/EP1999/007498 patent/WO2000027108A1/en not_active Application Discontinuation
- 1999-10-05 EP EP99947476A patent/EP1046280A1/en not_active Withdrawn
- 1999-10-28 US US09/428,774 patent/US6446162B1/en not_active Expired - Lifetime
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH046672A (ja) * | 1990-04-25 | 1992-01-10 | Canon Inc | 情報記録方法 |
JPH0756691A (ja) * | 1993-08-12 | 1995-03-03 | Toshiba Corp | ストライピングディスクのデータブロック自動再配置機能を持つ情報処理装置 |
JPH0869359A (ja) * | 1994-08-29 | 1996-03-12 | Hitachi Ltd | ディスクアレイ装置 |
JPH08115172A (ja) * | 1994-10-18 | 1996-05-07 | Fuji Xerox Co Ltd | ディスクアレイ装置 |
JPH0970013A (ja) * | 1995-03-27 | 1997-03-11 | Hewlett Packard Co <Hp> | ビデオ・データ・レイアウト方法およびシステム |
JPH0926854A (ja) * | 1995-04-28 | 1997-01-28 | Hewlett Packard Co <Hp> | データを格納し供給するサーバー・システム |
JPH09154109A (ja) * | 1995-05-22 | 1997-06-10 | Sun Microsyst Inc | ビデオサーバシステムに於いて平均的なシーク時間及びバンド幅を達成するための方法及びシステム |
JPH09198194A (ja) * | 1995-12-18 | 1997-07-31 | Symbios Logic Inc | ディスクのゾーンに基づいてビデオ・データを配置するための方法および装置 |
JPH09305328A (ja) * | 1996-05-13 | 1997-11-28 | Fujitsu Ltd | ディスクアレイ装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2000027108A1 (en) | 2000-05-11 |
EP1046280A1 (en) | 2000-10-25 |
US6446162B1 (en) | 2002-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3308814B2 (ja) | ビデオサーバシステムに於いて平均的なシーク時間及びバンド幅を達成するための方法及びシステム | |
US6233607B1 (en) | Modular storage server architecture with dynamic data management | |
KR100377092B1 (ko) | 다중 사용자 데이터 분배 시스템내 저장장치 서브세트상에 데이터 스트림을 스트라이핑하는 방법 | |
US5915094A (en) | Disk access method for delivering multimedia and video information on demand over wide area networks | |
US6061732A (en) | Data streaming system utilizing an asynchronous technique for retrieving data from a stream server | |
US5510905A (en) | Video storage server using track-pairing | |
US5721950A (en) | Method for scheduling I/O transactions for video data storage unit to maintain continuity of number of video streams which is limited by number of I/O transactions | |
US6240243B1 (en) | Method and apparatus for storing and retrieving scalable video data in a disk-array-based video server | |
US5732239A (en) | Method for operating a disk storage system which stores video data so as to maintain the continuity of a plurality of video streams | |
JP3117390B2 (ja) | 複数のディスク間でデータ・セットを分配する方法及び関連する装置・方法 | |
JP2902975B2 (ja) | メモリバッファ管理方法及びシステム | |
EP0740247A2 (en) | Data stream server system | |
US20030103055A1 (en) | Digital video recorder file system | |
US5758151A (en) | Serial data storage for multiple access demand | |
US6415328B1 (en) | System for retrieving data in a video server | |
JP2002528817A (ja) | シームレスな拡張容易性分散型メディアサーバ | |
JP2002529878A (ja) | 記憶システム | |
KR20020019597A (ko) | 저장 매체로부터 블록들을 판독하는 방법 및 시스템 | |
US6678469B1 (en) | Recorded information reproducing apparatus | |
CN1574052A (zh) | 将可交换存储装置用于存储节目数据的系统和方法 | |
US20060167959A1 (en) | Storing programs on disk for multiple-user retrieval | |
JPH0285962A (ja) | 画像データ検索システム | |
KR100444524B1 (ko) | 비디오서버의대화형편집기능지원방법 | |
TW402700B (en) | Method of allocating the service request | |
JPH10191299A (ja) | データ配送用サーバ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061002 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070626 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071120 |