JP5059847B2 - ハードディスク記憶システム - Google Patents

ハードディスク記憶システム Download PDF

Info

Publication number
JP5059847B2
JP5059847B2 JP2009502184A JP2009502184A JP5059847B2 JP 5059847 B2 JP5059847 B2 JP 5059847B2 JP 2009502184 A JP2009502184 A JP 2009502184A JP 2009502184 A JP2009502184 A JP 2009502184A JP 5059847 B2 JP5059847 B2 JP 5059847B2
Authority
JP
Japan
Prior art keywords
data
data storage
hdd
hard disk
storage element
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.)
Active
Application number
JP2009502184A
Other languages
English (en)
Other versions
JP2009531799A (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
Application filed by ヴェラシティ ユーケー リミテッド filed Critical ヴェラシティ ユーケー リミテッド
Publication of JP2009531799A publication Critical patent/JP2009531799A/ja
Application granted granted Critical
Publication of JP5059847B2 publication Critical patent/JP5059847B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21815Source of audio or video content, e.g. local disk arrays comprising local storage units
    • H04N21/2182Source of audio or video content, e.g. local disk arrays comprising local storage units involving memory arrays, e.g. RAID disk arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2087Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring with a common controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23116Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving data replication, e.g. over plural servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • H04N21/2315Data placement on disk arrays using interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Filtering Of Dispersed Particles In Gases (AREA)

Description

本発明は、データ記憶システムの分野に関し、特に、シーケンシャル記録用途向けのシーケンシャルデータ記録手法を用いた、ハードディスクドライブ(HDD)におけるデータ記憶の、改良された方法及び装置に関する。
最近のハードディスクドライブは、一般に、典型的なデータ記憶用途に対しては非常に信頼性が高い。しかしながら、近年では、デジタルビデオ記録(DVR)システムなどのデータ集約型記憶用途が、厳密にシーケンシャルに生成されるビデオ、オーディオ、及び他のデータの記憶のために、HDDのスピード及び容量を利用している。
このようなデータ集約型アプリケーションは、限界までHDDにストレスをかけるため、ディスク故障事象の発生は、不可避ではない場合でも、より普通のことになってきており、実際、当業者の間では、どのような大規模ディスクベースデータ記憶システムにおいても信頼性の点で最も弱い箇所はHDDである、というのが一般的な認識である。
記録プロセスで生成されるデータが大量である場合、及び/又は(上書きがある場合には上書きされるまでの)必要な記憶期間が拡大される場合には、ディスク故障事象の問題を軽減するために、典型的には、HDDのアレイを用いてデータの記憶が行われる。多数のHDDが使用される場合、ドライブ故障が発生する可能性は、存在するドライブの数に正比例して増加する。
記録されたデータは、非常に重要なものである場合があるため、トータルシステム全体の信頼性を高めるために、一般IT業界向けに開発された各種の冗長(又はフォールトトレラント)ディスクアレイ方式(例えば、RAID1、RAID5など)が、大規模記憶要件に対して活用されている。
HDDシステムの実際の設計は非常に洗練されたものであることが可能であるが、基本的な概念は非常にシンプルである。記録面(磁性材料)の1つ又は複数のスタックされた回転プラッタが、可動アーム上の、同数のスタックされた読み出し/書き込みヘッドによってアドレス指定され、可動アームは、記録領域の全範囲にわたって回転することが可能である(昔ながらのレコードプレーヤのピックアップアームによく似ている)。関連付けられた回転プラッタに対する可動アームの位置は、アームアクチュエータ(磁石及びコイル)によって制御される。
関係するデータ密度及び速度からすると、記録ヘッドに求められる位置決め精度は極限的である。例えば、可動アームを読み出し/書き込みポイントに素早く到達させるために、アームアクチュエータは、アームの加速及び減速を急速に行うように設計される。アーム及び読み出し/書き込みヘッドのアセンブリは、可能な限り軽量になるように設計されるが、関係する急速な加速は、かなりのエネルギーを必要とし、このエネルギーは、おおむね熱として、アクチュエータアセンブリ内で放散される。この理由により、(アームがディレクトリとデータ領域との間をスキップで常時行ったり来たりして)連続的に読み出し/書き込みを行っているHDDは、読み出し/書き込みをまったく行わないで動作しているHDDより、かなり熱くなる。
上に略述された理由から、当該技術分野において知られているHDDシステムのインターフェース電子回路は、典型的には、非常にロバストであるように設計されているため、実際にはめったに故障しない。しかしながら、プラッタの物理面が損傷を受けたり、汚れたりすると、HDDが故障する頻度は高くなる。原因としては、衝撃又は振動によってヘッドがプラッタ面に接触したことや、衝撃、振動、又は全般的な擦り切れによって読み出し/書き込みアームの位置決め精度が低下したことが考えられる。高温がHDDの寿命を縮めることや、アームの連続的な動きがアクチュエータを消耗させるように働くことも知られている。したがって、アームの位置決め精度は、最後には、HDDがよりエラーを生じやすくなる程度まで低下する。これは、書き込みサイクルにおいて最も顕著であることがわかっている。
振動、過熱、及び擦り切れは、最終的なHDD故障の根本的原因である。したがって、任意の所与のHDDにおいては、(動作中の)振動のレベルが上がるほど、及び動作温度が上がるほど、平均故障間隔(MTBF)が短くなる。これらの要因は、ほとんどのHDDメーカーに認知されており、したがって、それらのHDDメーカーは、動作温度によって変化する予想MTBFを示すグラフを提供している。典型的には、これらのグラフは、動作温度が上がるにつれて(特に安価なHDDにおいて)ドライブ故障率が指数関数的に上昇することを示している。
当業者には認知されているように、ほとんどのHDD故障(すなわち、回復不能なデータ損失)は、書き込みプロセスにおいて発生する。これは、データの書き込みでは、データ自体を書き込むことと、HDDのファイルディレクトリを更新することとの両方において、記録面の磁性状態を活発に変更することが必要なためである。ファイルディレクトリは、ディスク上にあるすべてのファイルのすべての部分のロケーションのインデックスが保管されている場所である。このディレクトリは、書き込みが最も頻繁に行われるため、HDDの故障が最も起こりやすい領域である。ファイルディレクトリはHDD全体にわたるデータファイルの物理ロケーションのインデックスなので、残念なことに、ファイルディレクトリにおける深刻なエラーは、データの壊滅的損失を引き起こす可能性がある。典型的には、HDDのデータ領域にあるファイルはすべて断片化されているため、これらのファイルの回復は、少なくとも専門のHDDデータ回復サービスを利用しない限り、不可能又は非常に困難である可能性がある。そのようなサービスは、高価であり、また、特に、データが法的に、又は営利的に、又は公務上、又はその他の理由で機密である場合や、できるだけ早くそのデータにアクセスしなければならない場合には、非常に不便である。
一方、当業者であれば理解されるように、単にHDDからデータを読み出すことは、記録面が不変状態のままであるために比較的受動的な処理である(それでも、外部衝撃又は振動によるヘッドクラッシュ(ヘッドがプラッタに接触すること)によってデータ損失が引き起こされる可能性はある)。
HDDシステムに高いデータ保全性を与える従来のソリューションは、何らかのかたちの冗長性(例えば、ミラー化、パリティ方式など)を有するHDDアレイ(RAID(Redundant Array of Inexpensive Disks)など)の使用を伴う。例えば、企業レベルのDVR記憶システムは、典型的には、RAID5システムを用いる。RAID5システムでは、n台のHDDからなるアレイが、n−1台のHDDからなる有効アレイを提供する。これは、各HDDからのパリティデータが、ある定義済みパターンで、他のすべてのドライブに拡散されるためである。故障が発生した場合には、RAID5コントローラは、存続している他のすべてのHDDにあるパリティデータを用いて、故障したHDDのデータを新しいHDDに再生成する。
この特定の方式の問題は、失われたデータを新しいHDDに再構築するためにプロセッサ及びHDDを徹底的に使用することと、どちらかと言えば複雑な方式であることである。リアルタイム記録用途では、この方式は、失われたデータを再構築しながら、同時に、新しいデータの書き込みを(新しいHDDを含む「すべて」のHDDにわたって)続ける必要があるため、ますます複雑になる。
大規模なHDD(すなわち、数百GBのオーダーのHDD)であれば、再構築のプロセスには何時間もかかる可能性がある。この期間の全体にわたって、ドライブアレイは、大幅に増加した読み出し/書き込みストレスにさらされる(特に、(記録されるべき)着信データストリームが高帯域である場合)。ここでの根本的な問題は、このプロセスの間(実際には、故障したドライブが交換される前)に別のHDDが故障してしまうと、アレイ全体にわたるすべてのデータが失われることである。このような事象は、壊滅的データ損失と呼ばれている。結果として、RAID5システムは、(DVRシステムにおいて見られるような)データ集約型アプリケーションには、特に不向きである。そのようなアプリケーションでは、高帯域データストリーム(例えば、ビデオデータ、オーディオデータ、リアルタイム計測データなど)が常時生成されるからである。本願発明者らが注目しているのは、このような事実にもかかわらず、そうしたアプリケーションに対してRAID5システムが指定されることが多い、という点である。これは、おそらくは、コスト効率のよいフォールトトレラントなソリューションが他にないからであろう。
当該技術分野において知られている代替選択肢の1つが、ドライブアレイのミラー化(RAID1)である。これは、データ保全性の観点からは、より魅力的であるが、当然のことながら、2倍のコストがかかる。RAID1システムでは、同じデータが2台のHDD(又は2つのアレイ)に同時に書き込まれる。故障したHDDの再構築は、故障したHDDのペアである、存続しているHDDが、故障したHDDと交換される新しいHDDにコピーされるだけなので、比較的単純である。しかしながら、この場合も、存続しているHDDは、新しいHDDの全体にわたってすべてのデータを書き込まなければならず、同時に新しいデータを記録し続けなければならないため、いっそう大きなストレスにさらされる。
当該技術分野において知られている、あらゆるディスクアレイシステムに共通する1つの問題として、HDDは、コスト、スペース、及びアクセスしやすさの理由から、通常は、密集して詰め込まれ、取り出しやすいようにフロントマウントされる。一般的な19インチラックディスクアレイであれば、最大15台のドライブを、縦向きにマウントし、横方向にスタックして収容することが可能である。この方式は非常に一般的であり、縦方向及び横方向のマウントのしかたには様々なバリエーションがあるものの、総じて結果は同じである。すべてのドライブが常時動作中であること(及び、通常はデータが複数のドライブにまたがって分散形式で書き込まれること)から、1台のHDDの熱の放散が、それを直接取り巻くHDDの温度を上げるように働く。したがって、実際には、密集してマウントされた15台のドライブのアレイは、非常に高熱になる可能性がある。そこで、そのようなアレイに対しては強制冷却が行われる。そのような冷却は、多数のファン(及び吸入冷気源、したがって、コストがかさみがちな空調)を必要とし、たいていは、密集したHDDの周囲で気流が制限されるために不十分である。前述のように、通常は、HDDの動作温度が上がるにつれて、故障率が指数関数的に上昇する。
既知のHDDアレイに固有の、別の問題として、1台のHDDの(駆動モータ及び読み出し/書き込みアームの急速運動による)振動が他のドライブに伝わり、擦り切れが増加して、個々のHDDのMTBFが短くなる。この作用は、すべてのドライブが同時に書き込みを行っている場合には複雑になるが、そのような動作は、ほとんどのデータ集約型ファイリングシステムでは典型的な動作であり、RAID5を含むほとんどのRAID方式では基本的な動作である。
温度及び振動の問題に加えて、HDDアレイは、消費電力が大きい。一例として、ある15台のディスクのアレイは、ディスクが1台当たり12Wを消費し、400Wの電源ユニットが75%の効率で動作して、75Wを自身で消費し、冷却ファンが25Wを使用し、制御電子回路(通常は、PCマザーボード及び複雑なRAID制御のための超高速プロセッサ)が100Wを消費して、合計380Wを消費する。すなわち、特に、そのようなアレイが1日24時間、1年365日使用される場合には、機器室の冷却に必要な空調のコストを考慮に入れると、膨大な電力が、高いランニングコストで使用されることになる。
先行技術によるシステムのさらに別の問題は、停電及び電力変動の影響である。電源の出力変動は、HDDの信頼性に影響を及ぼす可能性がある。電源の出力スパイクは、特に、コントローラの電源ユニット(PSU)のDC出力側で過電圧を引き起こす可能性があり、HDDの電子回路を損傷したり、書き込みプロセスにおいてデータエラーを引き起こしたりする可能性がある。さらに、電圧低下(低電圧)、サージ(過電圧)、及び瞬時停電(ドロップアウト)はすべて、システムの電子回路に予測不能な影響を及ぼす可能性がある。多数の異なるタイプの商工業の現場に何千ものディスク記憶システムを設置してきた経験からすると、電源の出力の問題は、HDDの信頼性にただちに影響を及ぼすことはないかもしれないが、時間が経過するにつれて、スパイク、電圧低下、及びサージの影響は、HDDの寿命を縮め、最後には、HDDの故障を引き起こす。HDDは、データを書き込んでいるときに、電源の問題に対して最も敏感であり、それは、どのような振動でもデータを破損したり、制御エラーを引き起こしたりする可能性があるからであるが、HDDシステム内の他の部分に永続的影響を及ぼすことはないと見てよい。したがって、ビデオやオーディオの記録(実際には、あらゆるタイプの連続的なデータ記録)などの用途では、データの連続書き込みが必要であり、したがって、HDDが常に書き込みを行っているために、HDDは、電源の問題に、より深刻にさらされる。
停電及び電力変動の影響の結果として、(企業レベルのディスクアレイを含む)ほとんどのIT機器は、無停電電源(UPS)装置を用いる傾向があり、これによってシステム全体のコストは大幅に増加する。実際には、電源の出力をコンディショニング及びフィルタリングする、本物のラインインタラクティブ式UPS装置を用いなければならないことがわかっている(安価なUPS装置はそれらを行わない)。
HDDメーカーは、その製品が様々な用途において遭遇する、上に略述された問題の多くを認識している。そこで、HDDメーカーは、動作特性及び性能特性が異なるHDD製品レンジを提供している。当然のことながら、HDDは、ロバストであるほど(例えば、デューティサイクルが高い設計ほど、或いは、振動や高動作温度に対するトレランスが高いほど)、価格も高くなる。そのレンジのトップエンドでは、HDDメーカーは、いわゆる企業性能HDDを生産している。これは、一般的な故障モードに対して妥当にロバストである。しかしながら、そのようなドライブは、非常に高価であり、したがって、(データ書き込みスピード及び高性能が極めて重要である)いわゆるクリティカルオンライン記憶装置にのみ用いられる。これらのドライブはまた、消費電力が多く、高温になる傾向がある。たとえそうであっても、これらのような高性能ドライブは、やはり動作温度の上昇及び振動の増加に伴ってMTBFが短くなる。さらに、(ビデオ/オーディオ記録又はITアーカイブ及びバックアップの用途などの)大容量記憶用途では、これらのディスクはあまりにも高価になるため、企業向けHDDを多数使用するソリューションは、まったく非現実的である場合が多い。
以上をまとめると、先行技術のHDDアレイには、温度、振動、冷却、消費電力、電源変動に常にさらされること、コストなどを含む、様々な問題がある。これらの問題に対して、強制冷却又はより高価なディスクを使用すること以外の、先行技術によるソリューションは、概して、HDD故障を処理することのみを意図された手法を用いることであって、そもそもなぜHDDが故障するのかという根本的原因に対処するものではない。したがって、それらのソリューションで用いられる技術的アプローチは、症状に対処するものであって、治癒させようとするものではない。
そこで、本発明の目的は、1つ又は複数のシーケンシャルデータ記録手法を用いるデータ記憶のための、より安価で、より信頼性が高く、より便利なHDDシステムを提供することである。そのようなシーケンシャル記録は、低コストHDDのアレイのシーケンシャル使用、及び/又は、個々のHDD自体の内部にあるセクタ又はセクタグループのシーケンシャル使用によって行われることが可能である。
本発明の第1の態様によれば、ハードディスクドライブシステムにデータを記憶させる方法が提供され、この方法は、
1)シーケンシャルに配置されたデータ記憶エレメントのアレイから第1のデータ記憶エレメントを選択するステップと、
2)第1のデータ記憶エレメントが容量一杯になるまで、第1のデータ記憶エレメント内にデータを記録するステップと、
3)シーケンシャルに配置されたデータ記憶エレメントのアレイから、次位のデータ記憶エレメントを選択するステップと、
4)次位のデータ記憶エレメントが容量一杯になるまで、次位のデータ記憶エレメント内にデータを記録するステップと、
5)アレイ中の、所定の数のシーケンシャルに配置されたデータ記憶エレメントが容量一杯になるまで、ステップ3及び4を繰り返すステップと
を含む。
上述の、ハードディスクドライブシステムにデータを記憶させる方法は、特に、厳密にシーケンシャルな時間ベースで生成されたデータを記録することに適しており、そのデータは、連続であってもなくてもよく、データレートが変動してもしなくてもよい。厳密にシーケンシャルな時間ベースで生成されるデータの例として、ビデオ及びオーディオの記録、リアルタイム計測データ、アーカイブデータ、フルバックアッププロセスの間に転送されるデータなどがある。シーケンシャルに生成されるデータは、必ずしも、一定又は連続ではない。データレートが一定ではない一例がデジタルビデオ記録であり、この場合は、画像レート、画質、及び画像チャネル数が、すべて、時間とともに変動する可能性がある。不連続データ生成の例として、固定又は可変のスケジュールに従って記録したり、場合によっては、ビデオ動き検出又は他のセンサによってトリガされたりする地震監視及びデジタルビデオ記録システムのような、外部事象によってトリガされてデータを生成する計測システムがある。
最も好ましくは、データを記憶させるこの方法はさらに、アレイ中の、所定の数のシーケンシャルに配置されたデータ記憶エレメントが容量一杯になった場合、ステップ1から5を繰り返すステップを含む。
重要なこととして、この方法を用いることにより、データは一切削除されず、新しいデータで上書きされたときにのみ失われることに注意されたい。このことは、証拠的なデータを記録することを意図されたデータ記憶システムであれば、必須の特徴である。データの上書きは、データアレイが記憶容量一杯まで書き込まれて、書き込みポイントが開始ポイントまで折り返して戻った際にのみ行われる。任意のポイントにおける、システムに記憶された総データ量は、そのデータが生成された時間枠に直接対応する。これは、データの書き込み及び記憶がシーケンシャルに行われるためである。したがって、システムの記憶期間は、システムの総容量、及びその期間に生成されたデータの量によって決まる。代替として、必要に応じて、より短い記憶期間をシステムに設定することが可能であり、これは、必要な記憶期間に達した後に最初の開始点に戻る書き込みポイントを早めに設定することにより可能である。これは、例えば、特定タイプのデータを記憶することに関して地方の法律又は規則が時間制限を設けている場合に、用いられることが可能である。
データ記憶エレメントは、ハードディスクドライブを備えることが好ましい。
最も好ましくは、第1のデータ記憶エレメントは、2台以上のシーケンシャルに配置されたハードディスクドライブの第1のグループを備える。そのような構成により、第1のグループの各ハードディスクドライブは、同時に同じデータを記録する。
好ましくは、次位のデータ記憶エレメントは、2台以上のハードディスクドライブの第2のグループを備え、第2のグループのハードディスクドライブの通し番号づけは、前のグループのハードディスクドライブの通し番号づけから少なくとも1だけオフセットしている。この配置により、書き込みプロセスにおいて1台又は複数台のハードディスクドライブが万一故障した場合にデータ損失を防ぐミラー化データ記憶システムが実現される。
最も好ましくは、この方法はさらに、データが記録されている途中のハードディスクドライブが故障したことを受けて、次位のデータ記憶エレメントを選択するステップを含む。したがって、ハードディスクドライブの1台が故障した結果として、次に使用可能な、動作するデータ記憶エレメントがただちに選択されるため、データ損失の可能性が最小限に抑えられる。
最も好ましくは、次位のデータ記憶エレメントを選択するステップは、1台又は複数台のハードディスクドライブの電源をオンにするステップを含む。
最も好ましくは、データを記憶させるこの方法はさらに、データ記憶エレメントが容量一杯になった時点で1台又は複数台のハードディスクドライブの電源をオフにするステップを含む。
ハードディスクドライブの電源をオフにすることには、個々のハードディスクのそれぞれが、そのハードディスクドライブのアレイの記憶期間のうちのわずかの間だけ動作する、という大きな利点がある。結果として、振動、熱放散、及び擦り切れの有害な影響は、大幅に低減され、ハードディスクドライブの故障事象が発生するリスクが小さくなる。
代替として、データ記憶エレメントは、ハードディスクドライブ内にあるディスクセクタのアロケーションブロックを備える。好ましくは、アロケーションブロックは、1つ又は複数のデータセクタと、少なくとも1つのヘッダセクタとを備える。HDDにおいてシーケンシャルデータ記憶手法を用いることには、次のような大きな利点がある。すなわち、シーケンシャルに生成されるデータの書き込み速度の最適化、記録済みデータの高速シーケンシャル再生、関連付けられた読み出し/書き込みアームの必要な動きが最小であることは、アームの摩耗を減らし、HDD動作温度を下げ、したがってよりロバスト且つ信頼性が高いデータ記憶システムを実現する。
オプションとして、データを記憶させるこの方法はさらに、記憶されたデータに対応するランニングインデックスを記録するステップを含む。ランニングインデックスは、メインのデータ記憶システムの外部に記憶されることが可能であり、或いは、オプションとして、データ記憶システムの内部に保管されることも可能である。ランニングインデックスを組み込むことにより、より短時間で、任意の必要なデータシーケンスを見つけて読み出すことが可能になり、或いは、より短時間で、必要な時間枠をカバーするデータ記憶エレメントのグループをシステムから便利に取り外すことが可能になる。
好ましくは、ランニングインデックスは、データ記憶エレメント内に記憶されているデータの開始時刻を含む。好ましくは、ランニングインデックスは、データ記憶エレメント内に記憶されているデータの終了時刻を含む。オプションで、ランニングインデックスは、データ記憶エレメント内に記憶されているデータの時間枠を含む。
最も好ましくは、ランニングインデックスは、最初にRAM内に記憶され、周期的に不揮発性メモリ(例えば、フラッシュメモリ)にバックアップされる。
代替として、ランニングインデックスは、ハードディスクドライブシステム内にあるヒントインデックスとして記憶される。そのようなインデックスが更新される頻度は、従来のディスクファイルディレクトリより、ずっと低くてよい。さらに、そのようなインデックスは、HDDからデータを読み出すことに不可欠ではない。
オプションとして、データをデータ記憶エレメント内に記録するステップはさらに、データを暗号化するステップを含む。
本発明の第2の態様によれば、ハードディスクドライブにデータを記憶させる方法が提供され、この方法は、
1)ハードディスクドライブ内にある、シーケンシャルに配置されたアロケーションブロックのアレイから、第1のアロケーションブロックを選択するステップと、
2)第1のアロケーションブロックが容量一杯になるまで、第1のアロケーションブロック内にデータを記録するステップと、
3)シーケンシャルに配置されたアロケーションブロックのアレイから、次位のアロケーションブロックを選択するステップと、
4)次位のアロケーションブロックが容量一杯になるまで、次位のアロケーションブロック内にデータを記録するステップと、
5)アレイ中の、所定の数のシーケンシャルに配置されたアロケーションブロックが容量一杯になるまで、ステップ3及び4を繰り返すステップと
を含む。
最も好ましくは、データを記憶させるこの方法はさらに、アレイ中の、所定の数のシーケンシャルに配置されたアロケーションブロックが容量一杯になった場合、ステップ1から5を繰り返すステップを含む。
好ましくは、アロケーションブロック内にデータを記録するステップはさらに、ランニングインデックスを記録するステップを含む。最も好ましくは、ランニングインデックスを記録するステップは、1つ又は複数のデータプラッタにヒントインデックスを記録するステップを含む。
本発明の第3の態様によれば、ハードディスクドライブのシーケンシャルに配置されたアレイにデータを記憶させる方法が提供され、この方法は、
1)シーケンシャルに配置されたハードディスクドライブのアレイから、ハードディスクドライブの第1のグループを選択するステップと、
2)ハードディスクドライブの第1のグループが容量一杯になるまで、ハードディスクドライブの第1のグループにデータを記録するステップと、
3)シーケンシャルに配置されたハードディスクドライブのアレイから、ハードディスクドライブの次位のグループを選択するステップと、
4)ハードディスクドライブの次のグループが容量一杯になるまで、ハードディスクドライブの次のグループにデータを記録するステップと、
5)シーケンシャルに配置されたハードディスクドライブのアレイのうちの、所定の数のハードディスクドライブが容量一杯になるまで、ステップ3及び4を繰り返すステップと
を含む。
最も好ましくは、データを記憶させるこの方法はさらに、所定の数のハードディスクドライブが容量一杯になった場合、ステップ1から5を繰り返すステップを含む。
最も好ましくは、1つ又は複数のデータディスクにデータを記録するステップは、本発明の第2の態様に従ってデータを記憶させる方法を含む。
オプションとして、ハードディスクドライブの第1のグループ及びハードディスクドライブの次のグループのそれぞれは、単一のハードディスクドライブを備える。
好ましくは、ハードディスクドライブの第1のグループは、2台以上のシーケンシャルに配置されたハードディスクドライブを備える。そのような構成により、第1のグループの各ハードディスクドライブは、同時に同じデータを記録する。
好ましくは、次位のデータ記憶エレメントは、2台以上のハードディスクドライブの第2のグループを備え、第2のグループのハードディスクドライブの通し番号づけは、前のグループのハードディスクドライブの通し番号づけから少なくとも1だけオフセットしている。
本発明の第4の態様によれば、データを記憶することに適したハードディスクドライブシステムが提供され、このハードディスクドライブシステムは、データ記憶エレメントのアレイと、ハードディスクドライブシステムコントローラとを備え、ハードディスクドライブシステムコントローラは、ハードディスクドライブシステム内でデータがシーケンシャルに記録されるように、アレイの中のデータ記憶エレメントをシーケンシャルに選択する手段を提供する。
データ記憶エレメントは、ハードディスクドライブを備えることが好ましい。
オプションで、ハードディスクドライブは、シーケンシャルに配置されたデータ記憶エレメントの1次元アレイを形成するように配置される。代替として、ハードディスクドライブは、シーケンシャルに配置されたデータ記憶エレメントの2次元アレイを形成するように配置される。オプションで、ハードディスクドライブは、シーケンシャルに配置されたデータ記憶エレメントの3次元アレイを形成するように配置される。
最も好ましくは、データ記憶エレメントは、2台以上のシーケンシャルに配置されたハードディスクドライブのグループを備える。
好ましくは、ハードディスクシステムコントローラは、1台又は複数台の関連付けられたハードディスクドライブの動作状態に関する情報を提供する1つ又は複数のインジケータを備える。
代替として、データ記憶エレメントは、1台又は複数台のハードディスクドライブの中に配置されたアロケーションブロックを備える。
好ましくは、アロケーションブロックは、1つ又は複数のデータセクタと、少なくとも1つのヘッダセクタとを備える。
以下の詳細な説明を読み、添付の図面を参照すれば、本発明の態様及び利点が明らかになるであろう。
本発明の各種態様の理解を支援するために、図1a及び図1bは、HDDデータ記憶システム1の正面図及び概略図を、それぞれ示す。
HDDデータ記憶システム1は、15台のハードディスクドライブ(HDD)2からなるアレイを備えており、HDD 2の動作は、HDDアレイコントローラシステム3によって制御されている。コントローラシステム3は、(イーサネット、SCSI、USB、ファイバチャネル、又は他の高速インターフェースなどの)データインターフェース4と、CPUコントローラ6及びHDDコントローラ7を含むコントローラボード5と、電源8とを備えている。コントローラシステム3はさらに、各HDD 2に関連付けられた、3個のLEDステータスインジケータ9を備えている。動作時には、アレイ内の各HDD 2に対応するステータスインジケータ9は、CPUコントローラ6によってアドレス指定及び制御される。インジケータ9は、関連付けられたHDD 2のステータスについての情報を提供し、例えば、HDD 2が、いつ「選択されている」か、「アクティブ」か、「読み出し中」か、「書き込み中」か、「故障中」かについての情報を提供する。
HDD 2のさらなる詳細を、図2に示す。図2aに示された例では、HDD 2は、アクチュエータアセンブリ10を備えており、アクチュエータアセンブリ10は、読み出し/書き込みアーム12の遠心端にある読み出し/書き込みヘッド11と、関連付けられたプラッタ13のデータ面との相対的な位置関係を制御している。当該技術分野では標準的なやり方であるが、HDD 2内のプラッタ13は、スピンドル14にマウントされている。
当業者であれば理解されるように、各ハードディスクプラッタ13は、(潜在的に)2つの記録面を有する。ディスクプラッタ13と読み出し/書き込みヘッド11との組み合わせを複数備える代替のHDD2も、当該技術分野では知られている。あくまで例であるが、図2bに示されたHDD 2は、共通スピンドル14にマウントされた4枚のプラッタ13を備えており、4枚のプラッタは、関連付けられた8個の読み出し/書き込みヘッド11を有する。これらの読み出し/書き込みヘッド11はすべて、関連付けられた読み出し/書き込みアーム12を介して、アクチュエータアセンブリ10によって制御されている。
プラッタ13のデータ記録面は、微細な間隔をおいて配置された、一連の同心のシリンダ(円筒)15に分割されている。これらのシリンダ15のそれぞれは、記録トラックとして動作しており、各トラックはさらに、等サイズのセクタ16に分割されている(したがって、セクタの数は、内側のトラックより外側のトラックのほうが多い)。最近のたいていのハードディスクのプラッタ13は、各セクタが、512バイトの情報を記録することが可能である。ただし、本願発明者らは、当該技術分野において、ディスクセクタの標準的な容量をセクタ当たり4096バイトに増やす提案がなされていることに注目している。しかしながら、HDD 2内のセクタのアドレス指定はすべて、HDD 2内の電子回路によって、メーカー固有のファームウェアを介して制御されているため、図2bのシステムは、単純に、図2aのシングルプラッタHDD 2の拡張と見なしてよい。どのディスクファイリングシステム(DFS)が用いられていても、そのDFSが、プラッタ13上に記録されているすべてのファイル及びそれらのロケーションを追跡するために必要な手段を提供している。
本システムにおいては、HDD 2とデータ容量との任意の組み合わせを用いることが可能である。この点はRAIDシステムと異なる。RAIDシステムでは、HDD 2は、性能及び容量の観点から、同一でなくても十分一致していなければならない。
本システムでは、ミラー化書き込みモードの1つで可変容量のHDDを使用する場合、このHDDの最適配置は、容量が大きくなる順番であって、このようにすれば、有効記憶容量が最大になることを理解されたい。さらに、各HDD 2では、任意の標準的なタイプのプラッタ13、及び既知の読み出し/書き込み方法を用いることが可能であることも理解されたい。
次に、図1bを参照しながら、データ記憶システム1の第1の動作モードについて説明する。まず第一に、データが、第1のHDD 2からなるデータ記憶エレメントに記録され、そのHDD 2が一杯になった場合、次のデータが次のデータ記憶エレメント、すなわち、第2のHDDに記録される。このプロセスは、第3及び第4のHDD 2を経て、このHDDアレイが一杯になるまで続く。このHDDアレイが一杯になった場合、次のデータはまた第1のHDD 2に記録され、このシーケンスで最も古いデータが上書きされていく。このプロセスは、無限ループとして有効に続くことが可能である。ここで説明されている実施形態では、利用可能な記録済みデータの時間枠は、生成されるデータの平均レート(ビット毎秒)及びHDDアレイの総容量によって設定される。
CPUコントローラ6は、ファイル保持期限(FRL(File Retention Limit))設定を提供することが好ましい。この設定は、データ記憶の時間枠の上限をユーザが定義することを可能にする(例えば、30日)。この制限時間は、所与の平均データレートで、必ずHDDアレイの可能な総容量より少ない。この実施形態では、FRLに達した時点で、最も古いデータから上書きされ始め、残りのHDD容量はすべて空白のまま残される。これは、国によっては、特定の用途に関して地域法、規制、及びベストプラクティスガイドラインに従うための、重要な機能になりうる。
時間ベースのデータを、この厳密にシーケンシャルな形式で記録することには、様々な利点がある。まず第一に、CPUコントローラ6は、書き込みも読み出しも行われていないすべてのHDD 2を完全にオフにする(すなわち、電源を切り離す)ように動作する。したがって、通常の状況では、1台のHDD 2だけがいつでも電源がオンになっている。CPUコントローラ6は、データが記録されている際のHDD 2の容量の使用の平均レートを監視し、シーケンスにおける次のHDD 2の電源を、十分な時間の余裕を持ってオンにする。これは、今のHDD 2が一杯になる前に、次のHDD 2の回転を立ち上げてデータ受け入れ準備をさせるためである。この事前の電源投入期間はさらに、CPUコントローラ6が、シーケンスにおける次のHDD 2をチェックし、そのHDDの、利用可能な最初のセクタを見つけ、そのHDD 2の容量を読み出すことを可能にする。最近のドライブと良好なディスクファイリングシステムとを用いれば、事前の電源投入プロセスは、HDDのチェックも含めて、数秒しかかからない。
通常使用では、記録プロセスは、一度に1台のHDD 2だけがアクティブであることを意味する。しかしながら、データ記憶システム1は、現在アレイに記憶されている時間枠の任意の場所からデータセグメントを読み出す要求を、いつでも受け取ることが可能である。そのような要求に対応するために、CPUコントローラ6は、アレイ内の各HDD 2に記憶されているデータの開始時刻及び終了時刻のランニングインデックスを保管する。ランニングインデックスは、フラッシュメモリの形態の不揮発性メモリ、又はさらに、CPUコントローラ6によって直接アクセスされる別のHDD 2に記憶されることが可能である。代替として、ランニングインデックスは、CPUコントローラ6のRAMに記憶されることも可能である。
ランニングインデックスを別のHDD 2に記憶させることも動作可能な選択肢であるが、このHDD 2は常時オンでなければならないため、特に望ましい選択肢ではない。
ランニングインデックスの概念をさらに拡張して、データ記憶システム1内のすべてのデータファイルを追跡するために用いられるデータベース管理システム(DBMS)の全機能をランニングインデックスが複製できるようにすることが可能である。当業者であれば理解されるように、そのようなインデックスは、スピード、或いは、読み出し、修正、及び書き込みの各プロセスのためには、RAMに記憶されるのが最良である。しかしながら、停電が起こると、そのデータベースインデックスは完全に失われるであろう。単純なランニングインデックスは、電源の回復時に比較的素早く再構築されることが可能であるが、完全なDBMSインデックスの再構築は、定期的なバックアップがない場合には、相当の時間を要するであろう。
したがって、これらの様々な選択肢を上手く吸収するためには、ランニングインデックスを、まずRAMに記憶させ、その後、定期的に不揮発性フラッシュメモリにバックアップすることが好ましい。
ランニングインデックスの厳密な記憶形態に関係なく、データを取り出すプロセスは同じままである。CPUコントローラ6は、読み出し要求を受け取ると、単純に、対応するHDD 2の電源をオンにして、しかるべきデータを読み出す。最近のHDD 2システムは、非常に素早く立ち上がるため、電源投入から、要求されたデータを返すまでの遅延がほんの数秒である。通常、データを格納していて、その中からデータが読み出されているHDD 2は、ユーザ定義可能なタイムアウト期間(例えば、10分)が過ぎると、自動的に電源オフになる。
上述のデータ記憶システム1では、データは、新しいデータで上書きされる場合を除き、削除されることはない。このことは、この方式の不可欠な要素であり、特に、潜在的に証拠となるデータを記憶する場合には不可欠であるため、データは、いったん記録されると、いかなる場合でも修正不可能であり、期限が切れて上書きされるまで削除も不可能である。したがって、説明しているデータ記憶システム1は、HDDサブシステムの最大帯域幅でフルオンラインデータ書き込みを実施し、同時に、記録済みの時間ベースデータの再生を要求された場合にニアラインデータアクセスを実施する。
データ記憶システム1はさらに、先行技術の項で説明されたシステムに対する、さらなる利点をいくつか提供する。まず第一に、データ記憶システム1は、使用電力が、従来のHDDアレイよりかなり少ない。例えば、15台のドライブのアレイでは、使用される電力は、平均で、従来のアレイの1/15強である。同様に、64台のディスクのアレイでは、使用される電力は、わずか1/64である。言い換えれば、一度に1台のHDD 2だけが動作しているという事実は、各HDD 2が、一般的な運用に比べて、ごくわずかの時間だけ、電源をオンにされて使用されるため、HDD 2の寿命が劇的に延びることを意味する。例えば、説明している15台のドライブのアレイでは、各ドライブは、14/15(93%)の時間の間は、電源オフにされている。別の見方をすれば、従来のデータ記憶システムでは、すべてのドライブが年中無休で電源がオンであるのに対し、各HDD 2は、1年のうちの26日間だけ使用されることになる。
どの時点においても、通常、動作しているHDD 2は1台だけであるため、他のHDD 2からの熱放散は最小限であり、強制冷却は過剰であるか、少なくともかなり抑えられる。HDD 2はさらに、非常に低い温度で動作することがわかっており、これによって、MTBFが長くなり、信頼性が向上する。
一度に1台のHDD 2だけが動作しているという事実のさらなる利点として、他のHDD 2から伝わる振動が最小限であるため、ドライブにつきものの擦り切れがかなり抑えられ、やはり、これによって、MTBFが長くなり、全体の信頼性が向上する。
各HDD 2上の記録は、1つの完結した、連続的な時間枠(例えば、2006年1月12日の10:03:27から2006年1月14日の12:32:13)をカバーすることに注意されたい。したがって、各HDD 2がHDD コントローラ7によって順に選択される際に、CPUコントローラ6を用いて、この時間枠を表示することが可能である。代替として、この時間枠を、監視ソフトウェアを実行しているネットワークコンピュータのディスプレイに表示することが可能である。したがって、任意の特定の時間枠に対応するデータが含まれる実際の物理HDD 2を、非常に迅速且つ便利に識別することが可能である。このことは、(監視記録などの)証拠データシステムにとって非常に有用な機能である。それは特に、特定の事象又は事件の時刻に対応するHDD 2を素早く識別して、(例えば、警察又は他の権限機関による)保管のために物理的に取り外すことが可能なためである。そのように、物理的にアレイ内にあるデータを容易に見つけることは、従来の方法(特にRAID構成)では不可能である。なお、RAID5システムでは、各HDD 2が収容しているのは、他のすべてのHDD 2がないと使い物にならない、部分的な情報でしかないため、何らかの実用に供するためには、シャシ及びコントローラを含むアレイ全体を持ち出さなければならない。
説明しているデータ記憶システム1の重要且つ有用な成果は、記録済みHDD 2を、上書きされる前の任意の時点で取り外して、それらを新しい空のHDD 2に置き換えることによって、記憶される時間枠を、事実上、無限にすることが可能なことである。したがって、HDD 2の取り外し及び交換を連続的に行うことによって、非常に長いデータアーカイブを作成することが可能である。さらに、アレイの基本的な時間枠は、数週間(例えば、30日間)の規模になると予想されるため、HDD 2の交換は、都合のよいときに、30日間の例で言えば30日未満の任意の不規則な時間間隔で行われることが可能である。
現在説明しているデータ記憶システム1においては、MTBF及びHDD 2の寿命が延びているために、HDD 2が故障する可能性は非常に低い。しかしながら、あるHDD 2が万一故障した場合は、データが、HDD 2シーケンスにおける次のHDD 2に自動的にリダイレクトされ、故障したHDD 2は、対応するステータスインジケータ9によってハイライトされる。HDD 2の故障の通知は、可聴音、CPUコントローラのディスプレイ、又は、ネットワークコンピュータで実行されている任意のリモート管理アプリケーションのディスプレイによってなされることが可能である。したがって、データ損失は、1台のHDD 2に限定されるが、いかなるデータ損失も、本システムでは起こりにくいとはいえ、重大な不利益であることに変わりはない。
データ記憶システム1の有利な成果の1つとして、データ記憶システム1内に、アクティブになっていないか、故障したHDD 2があれば、いつでも取り外して交換することが可能である。さらに、任意のアクティブな(すなわち、書き込み中の)HDD 2を取り外すことが可能であり、これは、コントローラボード5により、シーケンスにおける次のHDD 2へ強制スキップすることによって、又は単純にドライブを取り外して、実質的に「故障」させることによって可能である。
以下では、前述のデータ記憶システム1に対するいくつかの代替実施形態について詳述する。
2次元及び3次元アレイデータ記憶システム
図3は、2次元アレイデータ記憶システム17の正面図である。図に見られるように、2次元アレイデータ記憶システム17は、前述のデータ記憶システム1の拡張であって、シーケンシャルに配列されたHDD 2からなる2次元アレイが用いられている。2次元アレイデータ記憶システム17は、マスタコントローラボード5に接続された、複数の、スタックされた、スレーブアレイのユニット1a、1b、及び1cの使用を考慮した、便利な配置を可能にする。このような方式では、どの時点においても1台のHDD 2だけを常にアクティブにして、本当に何百台ものHDD 2をアドレス指定することが可能である。そのような大容量の設備の場合は、結果として、相当の電力、冷却、及び空調のコストを節約することが可能である。
2次元アレイデータ記憶システム17の原理を、ほぼ同一の様式で動作する3次元アレイデータ記憶システムを形成するために拡張することが容易に可能であることは、自ずと明らかであろう。しかしながら、シーケンスにおける次のHDD 2を、前のHDD 2のすぐ隣に物理的に配置することが不要であることに注意されたい。すべてのシステムに不可欠の要件は、個々のHDD 2がアクセスされる順序との間にシーケンシャルな関係が存在し、この関係がシステムの動作中は維持されることである。
2個以上のマスタコントローラボード5を用いることにより、説明しているアレイデータ記憶システムに対する機能性が高まる。各マスタコントローラボード5は、セカンダリマスタボード5が実質的にスレーブとして動作する構成で、起点データソース(イーサネット又はSCSIなど)に接続される(ただし、セカンダリマスタボード5もディスク時間枠インデックスのコピーを保持する)。したがって、万一マスタコントローラボード5が故障した場合には、セカンダリマスタボード5がただちにコントローラタスクを引き取ることが可能であり、アレイシステムは、動作し続けることが可能である。そのような構成のアーキテクチャにより、故障したマスタボード5に関連付けられていたHDD 2を取り外して、代替アレイ(又は、場合によってはスレーブユニットのHDDアレイ)に装填し、この代替アレイを、故障したユニットに関連付けられていたアレイの代わりにシステムに組み込むことが可能である。これはすべて、ホットスワップ式で行われることが可能である。
ミラー化書き込みデータ記憶システム
既に詳述されたように、HDD 2のほぼすべての故障は、書き込みプロセスにおいて発生し、データ損失が発生すれば、たとえそれが小さいものであれ、いかなるデータ記憶システムにとっても重大な不利益であることに変わりはない。以下では、図4を用いて、(例えば、RAID1システムの場合に必要とされる)2倍の記憶容量をシステムに対してコミットすることを必要とせずにミラー化書き込み及び保護を実施するデータ記憶システムについて説明する。
ミラー化書き込みデータ記憶システム18は、以下のように実装される。単一のHDD 2からなるデータ記憶エレメントにデータを書き込む代わりに、HDD 2のペアからなるデータ記憶エレメントに同じデータが同時に書き込まれる。現在説明している例では、データは、最初に第1及び第2のHDD 2(図4aの「書き込み1及び2」)に書き込まれる。
これらのHDDが一杯になった場合、第3のHDD 2の電源がオンにされ、使用可能になる。次に、データ書き込みは、第1及び第2のHDD 2(「書き込み1及び2」)から次のデータ記憶エレメント、すなわち、第2及び第3のHDD 2(図4bの「書き込み2及び3」)に切り替わる。その後、第1のHDD 2は、電源をオフにされる。結果として、第2のHDD 2に書き込まれたばかりのデータは、この時点で、ただちに新しいデータで上書きされる。第2のHDD 2に書き込まれたばかりのデータのコピーが第1のHDD 2に安全に記憶されており、第1のHDD 2は電源がオフになっているので、失敗する可能性は非常に低い。
データ書き込みは、このパターンで続けられ、HDD 2のペア(例えば、(図4cの)「書き込み3及び4」、「書き込み4及び5」など)からなる後続のデータ記憶エレメントに書き込みが行われる。書き込みのペアの組み合わせが移動するにつれ、後に残る一杯のHDD 2の電源がオフにされていく。オーバーラップするHDD 2のペアへのこの書き込みは、HDD nに達するまで(図4dを参照)続けられ、HDD nに達した時点での書き込みシーケンスペアは「書き込み(n−1)及びn」であり、その後は「書き込みn及び1」(図4eを参照)(すなわち、最後のHDD 2と第1のHDD 2)になり、「書き込み1及び2」、「書き込み2及び3」などのシーケンスに戻る。
このミラー化書き込みデータ記憶システム18は、クリティカルな書き込みの部分ではミラー化された冗長性を提供し、RAID5システムと同等の効率で総容量n−1を提供する。この方式はさらに、既に説明されたデータ記憶システム1のすべての利点を維持しているが、使用電力、温度、及び振動隔離の点では、わずかながら劣る。
ミラー化書き込みデータ記憶システム18を用いることにより、データをまったく失わずにHDD 2の故障に対処できるデータ記憶システムが実現される。例えば、書き込み中のペアが「書き込み3及び4」であるときに第4のHDD 2が故障したとする。第4のHDD 2においてHDD 2の故障が検出されると、ただちに、書き込みが第3のHDD 2において通常どおりに続けられると同時に、第5及び第6のHDD 2(「書き込み5及び6」)の電源がオンにされる。数秒後、これらのドライブはデータの受け入れが可能になり、すべての書き込みがこれらのドライブに切り替えられる。次に、第3及び第4のHDD 2は、電源をオフにされ、データは第3のHDD 2(正常なHDD)に保存され、都合のよいときに第4のHDD 2(故障したHDD)を交換することが可能になる。その後、第4のHDD 2に関連付けられた「故障」ステータスインジケータ9が明るくなって、どのHDD 2が故障したか、したがって、どのHDDが交換されるべきかを示す。
故障したHDD 2を交換することについては、RAIDシステムの場合のような緊急性がないことに注意されたい(RAIDシステムの場合は、第2のHDD 2が故障すると、新しいHDD 2が装着されて、故障したHDD 2が完全に再構築されるまで、すべてのデータの壊滅的損失が続く)。ミラー化書き込みデータ記憶システム18内では、故障したHDD 2を交換した場合、書き込みプロセスが折り返して戻ってきて、データをそのHDD 2に記録することが必要になるまで、そのHDDについて何も行う必要がない。そのHDD 2に記録することが必要になるのは、一杯のデータアレイの記憶期間が過ぎてからに限られる。注意すべき、さらに重要な点として、故障ペアにおいて存続しているHDD 2が非ミラー化書き込みを余儀なくされるのはほんの数秒間なので、データが完全に失われる可能性は無視できるほど小さい。
説明しているミラー化書き込みデータ記憶システムは、第1のデータ記憶エレメントが、シーケンシャルに配置されたm台のHDD 2からなるように、さらに拡張されることが可能である。そして、次のオーバーラップするデータ記憶エレメントも、シーケンシャルに配置されたm台のHDD 2からなり、第1及び第2のデータ記憶エレメントのHDD 2のシーケンシャル番号づけの間にはm未満のオフセットが導入される。
例えば、mを3に設定し、データ記憶エレメント間のシーケンシャルオフセットを2に設定すると、デュアルミラー化データ記憶を実現する三重ミラー化データ書き込みシステムが得られる。同じデータを3台のHDD 2に書き込み、その後、2台のHDD 2をシーケンシャルにスキップしてから、次の書き込みプロセスを行うことにより、データ記憶エレメントの3台のHDD 2のうちの1台だけが常に上書きされるため、2つの同一コピーが残る。記憶されたミラー化ペアを提供するこの方法は、特に、非常にデータクリティカルなシステムにおいて用いられる。さらに、この手法は、HDD 2が故障した場合でも、完全に記憶されたHDD 2のミラー化ペアが得られる点で、普通のミラー化記憶システム(例えば、RAID1システム)より優位である。RAID1システムであれば、単一のコピーが残るだけであり、HDD 2ペアを再構築するためには、そのコピーを複製しなければならないが、その場合は、1台しかない、存在しているオリジナルのHDD 2から、収容されているデータを読み出す際に、そのディスクにさらなる負荷及び故障リスクがかかる。
さらに、現在説明している三重書き込みデュアル記憶の手法を用いることにより、永続的記憶又は引き渡しのために各データ記憶エレメントから1台のHDD 2を取り出すことが可能になる。
ハードディスクファイリングシステム
ここまで説明したように、データ記憶システム1、17、又は18は、当業者に知られている標準的な読み出し/書き込み方法を用いることが可能である。従来のHDD 2の内部にある集積電子回路及びファームウェアは、一般に、HDD 2内のすべてのセクタをセクタ番号でアドレス指定することを可能にしている。そして、従来のディスクファイリングシステム(DFS)は、典型的には、いくつかのセクタをクラスタとしてグループ化し、HDD 2は、これらのクラスタサイズに従ってフォーマットされる。例えば、最近のDFSの典型的なクラスタサイズは16セクタであり、合計すると4096バイト(4kB)になる。4kBより大きなファイルであれば、そのファイルに必要なだけのクラスタが使用されるが、4kBより小さなファイルであっても、4kBが丸々使用される。これは、このファイリングシステムにおいて、4kBが、アドレス指定可能な最小ブロックであるためである。当業者には認識されているように、標準のディスクセクタサイズは、現行の512バイトから、将来は4096バイトに増える可能性が高い。したがって、従来のDFSも、将来は、別のクラスタサイズを採用することになる。
当該技術分野において知られているDFSは、記録されたすべてのファイル及びそのロケーションを追跡するために、様々なディレクトリ方式を用いている。通常、ディレクトリは、データプラッタの先頭に保存されている。これは、このロケーションの読み出しが最も高速で行われるためである。DFSにより、大きなファイルは多数のクラスタに分割され、これらのクラスタは、HDD空間を最も効率的に使用するために、複数のプラッタにまたがって分散される場合がある。これは断片化と呼ばれ、数千個ものファイルの記録、修正、及び削除が行われて、HDD 2が多数の断片化ファイルで一杯になった場合、結果として、断片化が深刻になり、HDD 2の性能が鈍化する。しかしながら、最近のいくつかのDFS方式は、断片化の影響をある程度まで軽減することが注目される。従来のDFS方法はまた、すべてのファイル及びファイル断片のすべてのクラスタロケーションが記録されるために、ディレクトリ構造が大規模且つ複雑になる。空のHDD 2であっても、標準的なDFSでフォーマットされると、ディレクトリ構造のためだけに記録容量の1.8%〜4%のうちのいずれかの部分を使用する可能性があり、多数の小さなファイルがHDD 2に書き込まれると、DFSのタイプに応じて、ディレクトリ構造は、拡張使用がさらに増える可能性がある。
ほとんどのDFS方式では、あるファイルが削除されても、それは単にディレクトリから削除されるだけで、実際にはファイルデータ領域から削除されていないことに注意されたい。これにより、ファイル削除時間が非常に短くなる。
以下では、図2a及び図5を参照しながら、代替の、好ましいハードディスクファイリングシステムについて詳しく説明する。図5は、本ハードディスクファイリングシステムを組み込んだデータディスクプラッタ13の概略図である。本ハードディスクファイリングシステムも、厳密にシーケンシャルな時間ベースで生成されたデータのシーケンシャルデータ記憶の原理を活用している。以下では、本ディスクファイリングシステムを、シーケンシャルファイリングシステム(SFS)と呼ぶ。
図5に見られるように、SFSでは、セクタが、アロケーションブロック(AB)19と呼ばれる、シーケンシャルに配置された、いくつかのデータ記憶エレメントに区分される。各AB 19は、129個のセクタ16からなり、詳細には、ヘッダセクタ20及び128個のデータセクタ21からなる。したがって、各AB 19のサイズは、129×512バイト(すなわち64.5kB)である。AB 19は、典型的なディスククラスタより格段に大きいことが理解されよう。通常、これは、記録されるファイルサイズが劇的に変動し、多数の非常に小さなファイルが記憶される記憶システムの場合には非効率的であろう。しかしながら、記録アプリケーションが概して大きなファイルを生成するシーケンシャルデータ記録の場合には、ABサイズが大きいことは理想的である。
AB 19のヘッダセクタ20は、AB 19に記憶されているデータの開始日時を少なくとも収容しているので、SFSシステムの動作の鍵である。このコンテキストでは、「ファイル」は、外部データ生成アプリケーションによって定義され、一般には、複数のAB 19にまたがる。オプションとして、ヘッダセクタ20はさらに、チャネル番号、このチャネルに対応する、前のABの位置、このチャネルに対応する、次のABの位置、ファイル開始マーカ及びファイル終了マーカ、並びに、オプションでさらに、このAB 19に対応する暗号化データを記憶することが可能である。
動作時には、SFSは、AB 19に対するデータの読み出し及び書き込みを、時間ベースで、厳密にシーケンシャルな様式で行う。しかしながら、このデータレートは、劇的に変動する場合がある。予期せず開始及び終了する場合もあり、また、多数の異なるチャネル(例えば、ビデオチャネル、オーディオトラック、データストリームなど)が同時に記録されている可能性が高い。したがって、SFSは、これらすべての事象を適正に管理することが求められるため、SFSは、不規則且つ変動するマルチチャネルデータの総合管理、及び、したがって、ディスク書き込み/読み出しプロセスの完全制御を達成する方法を含む。
上述の要件を達成するために、SFSは、CPUコントローラ6を用いて、記録される情報の各チャネルごとに64kBバッファを保持する。各バッファが一杯になるとただちに、CPUコントローラ6は、第1の利用可能なAB 19を選択し、ブロック全体を、このAB 19、並びに、追加が必要であれば、シーケンシャルに配置されたAB 19に書き込む。このようにして、HDD 2全体がシーケンシャルに埋められるので、HDD容量の完全利用及びデータの完全シーケンシャルストリーミングが保証される。このHDD 2が一杯になると(且つ、アレイ内の他のすべてのHDDも一杯になっていると)、CPUコントローラ6は、折り返して戻って、いかなる後続のデータも、第1のAB 19に最初に記憶されていたデータを上書きするようにする。
注目すべき点として、複数の別々のデータチャネルが使用されている場合、個々のチャネルは必ずしも厳密なシーケンスでない場合があるが、このことは、前及び次のチャネルAB 19の情報がヘッダセクタ20に収容されているので、システム性能には関係しない。
別の注目すべき点として、SFSは、128個のデータセクタごとに1個のヘッダセクタ20を用いており、これは、HDD 2の容量のわずか0.78%がファイルヘッダ情報に使用されていることを意味する。これに対し、従来のディレクトリシステムの場合は、最大5%である。
SFSがこのようなシンプルな様式で動作可能なのは、データが(記憶期間の最後に)新しいデータで完全に上書きされるだけで、削除も修正もされないためである。実際、SFS制御システムは、「削除」コマンドをまったく含まない。したがって、SFSは、各HDD 2を、それが非常に大規模な(長い)テープであるかのように扱う。結果として、SFSは、稼働中のフォーマッティングが可能であるため、まったくフォーマットされていない新品のディスクを(或いは、他の何らかのファイリングシステムでプリフォーマットされているディスクでさえ)時間のかかるフォーマッティング作業をまったく行わずに使用することが可能である。
このアプローチの結果として、以下を含む、いくつかの非常に有用且つ有利な特徴が現れてくる。
1)書き込みスループット(最大ディスク速度)の最適化。
2)連続シーケンスの高速再生。
3)読み出し/書き込みアームの動きが最小。したがって、
・アームアクチュエータの摩耗が少なくなる。
・ディスク動作温度が下がる(アクチュエータの使用電力が少なくなる)。
・振動が少なくなる(ほとんどの時間帯で、アーム及びアクチュエータは実質的に制止している)。
4)ディレクトリがないことによる、よりロバストなデータ構造。
5)シンプルなデータ回復。
6)ディレクトリがなくても日時のシークが容易。
書き込みスループットの最適化
読み出し/書き込みアーム12は、ディレクトリを更新するために常時行ったり来たりする必要がないため、ディスクシステムの持続可能な最大スループットの達成が可能である。このことは、大量のデータが生成され、それらが、ロバスト且つ信頼性の高い様式で記録されることが必要なシステムで使用するのに理想的である。
高速再生
シーケンシャルデータ記録用途は、読み出し(すなわち、再生)がシーケンシャルに行われる可能性が最も高い。SFSでは、データは、生成時の様式と同じである、厳密にシーケンシャルな様式でHDD 2内に配置される(すなわち、データは、従来のディスクファイリングシステムの場合のように断片化されたりランダムブロック順序で配置されたりしない)。したがって、SFSファイル構成は、読み出し速度が最適化される、最も一般的なデータ取り出し要件に理想的に適合している。これは、読み出し/書き込みヘッド11が、完全なファイルを再構築したり、次のファイルを取得したりするために常に前後にシークする必要がなく、単純に、1つのシリンダ15の上にとどまって、AB 19内のデータを読み出し、現在のシリンダから次のシリンダへ移動する際に、プラッタ13を横切ってゆっくりトラッキングするためである。
逆方向の読み出し(ビデオ用途では普通に行われる逆方向再生)でさえも高速である。これは、AB 19が読み出し/書き込みヘッド11の真下で回転しながら、単純に逆の順序で読み出されるためであり、ヘッド11は、この場合も、1つのシリンダ15から前のシリンダ15へ移動する際に(ここでは逆方向に)ゆっくりトラッキングする。
読み出し/書き込みアームの動きが最小
SFSの明らかな成果として、読み出し/書き込みアーム12は、AB 19とディレクトリの間を常時行ったり来たりする必要がない。実際、これまで見てきたように、アーム12は、シリンダ15に収容されたすべてのAB 19を埋め(又は読み出し)、次のシリンダ15に移る際に、非常にゆっくり動くだけでよい。これによって、アーム12の駆動に必要なエネルギーが劇的に減少するため、熱の放散が少なくなり、したがって、動作温度が下がる。
この有利な状況は、結果として、アクチュエータアセンブリ10の擦り切れが少なくなり、振動が極めて少なくなることによって、さらに有利になる(これらの擦り切れ及び振動は、この有利な状況でなければ、アーム12の急加速及び急減速によって当然引き起こされているであろう)。
ロバストなデータ構造
SFSデータ構造は、その簡潔さ及びシーケンシャルな順序づけの直接の成果として、非常にロバストである。万一、データプラッタ13の表面の領域が何らかの原因で(ほこり、又はヘッドクラッシュ、又は振動や衝撃に起因するヘッドの精度不足による単純な読み出しエラーによって)汚れたり損傷したりしても、残りのデータは完全に使用可能である。従来のシステムの場合は、中に損傷した領域がある1つのセクタ16にファイルの一部分が置かれただけでも、ファイル全体が失われる。さらに重要なことに、SFSは、ディレクトリに関する要件がないため、(データの完全な消失を招きかねない)ディレクトリのエラーの影響を受けにくい。したがって、(読み出し/書き込みヘッドがまだ動作しているとして)深刻な損傷を受けたディスクであっても、いまだ読み出しが可能なデータはすべて有用のまま残っている。
シンプルなデータ回復
SFSはまた、万一、HDD 2が故障し、それが壊滅的であって、専門のデータ回復サービスを呼ぶ必要がある場合でも、ある一定のいっそうの優位性を提供する。データセクタAB 19は実質的に自己完結しているので、損傷していないAB 19があれば、そのAB 19は読み出し可能のままである。したがって、深刻な損傷を受けたデータプラッタ13から、(不完全であっても)有用なデータシーケンスを再形成することが引き続き可能である。
ディレクトリがなくても日時のシークが容易
マスタコントローラボード5を用いると、各HDD 2における時間枠を追跡することが可能になる。さらに、データは各HDD 2に厳密なシーケンスとして記憶されるので、その時間枠の中で特定の時刻を見つけることは、ディレクトリがない場合でも、まったく容易なことである。
ある特定のデータプラッタ13に対して開始時刻及び終了時刻が与えられると、システムは、必要なすべてのデータシーケンスの開始ポイントのロケーションについて、直線補間による、妥当な推定を行うことが可能である。次に、推定されたポイントにおける、ブロック内のデータのタイムスタンプ及び時間枠がヘッダセクタ20から読み出され、次に、さらなる、より精度の高い推定が行われ、その時刻がヘッダセクタ20から読み出され、というような反復プロセスが、要求されたデータが見つかるまで続けられる。
上述のデータシーケンスを見つける方法は、記憶されたデータが、厳密に連続的には生成されず、実際にはステップ単位の連続性で記憶されている場合でも当てはまることに注意されたい。例えば、記録によっては、正確に時間的に連続でない場合があり、アラームトリガなどの何らかの外部事象に従って開始及び停止する場合があり、或いは、データは、ビデオ監視用途におけるフレームレートや画質などに応じて、量が変動する場合がある。そのようなデータレート変動や非連続性は、要求されたデータシーケンスの開始ポイントにアクセスするために必要なシーク時間(シーク試行の回数)のわずかな増加をもたらすだけである。
読み出し/書き込みアーム12は非常に素早く動くことが可能なので、多数の反復ステップを必要とするシークプロセスであっても、数ミリ秒以内に完了する。これは、現在説明しているシステム1、17、又は18、並びにそれらの意図された用途におけるデータ読み出しに関しては、問題ではない。さらに、このシステムアーキテクチャ全体が与えられた場合、再生に必要なデータは、実際には、電源がオフになっているデータディスクに配置されている可能性があり、その場合は、そのデータディスクの回転を立ち上げて問合せに応答できるようにするための約5〜6秒を要する。しかしながら、要求されたデータシーケンスの開始ポイントがいったん見つかれば、再生自体は(たとえ、逆方向であっても)シーケンシャルなので、データは、HDD 2の最大読み出し速度で、再生用としてストリーム出力されることが可能である。
ヒントインデックス
HDDデータ記憶エレメントの先頭(又は末尾)にヒントインデックス22を組み込むことが有利であることがわかっている。ヒントインデックス22は、各記録済みファイルの開始時刻(及び日付)、ファイル名、及びチャネル番号のリストである。ヒントインデックス22の目的は、特定のファイルを日付、時刻、及びチャネル番号で見つける、より高速な方法を提供することである。
ヒントインデックス22は、それ自体が時間的にシーケンシャルであり、十分小さいために、インデックス全体がCPUコントローラのメモリに極めて素早く読み込まれることが可能であり、したがって、特定の時刻及びチャネルに対応するヒントインデックスの検索は、非常に容易で高速なプロセスである。ヒントインデックス22は、特定のファイルの開始時刻に対応するAB 19の番号をポイントするため、読み出し/書き込みアームは、その位置へ直接動いて、適切なファイルを読み出すことが可能である。現在説明しているシステムでは、各ヒントインデックス22のエントリの長さは32バイトであり、したがって、セクタ当たり16個のエントリが含まれる。したがって、ヒントインデックス22は、HDD 2の利用可能なスペースのうちの0.0001%前後を占めるに過ぎない。
明確にするために、ヒントインデックス22は、先行技術のシステム内で典型的に用いられているディレクトリと同じものではないことに注意されたい。ヒントインデックス22には、そのようなディレクトリにはない特徴がいくつかあり、これには、ヒントインデックス22が以下のとおりであるという事実が含まれる。
・非常にコンパクトであるため、データプラッタ13の有効容量が多い(従来のディレクトリシステムではディスクスペースの4〜5%が使用されるのに対し、0.0001%未満しか使用しない)。
・更新が頻繁ではない(例えば、数分に1回、或いは代替として、所定数のファイルが書き込まれるたびに1回)。
・データシーケンスを見つけるプロセスに不可欠ではない。
・必要であれば、再構築が非常に容易且つ迅速である。
ヒントインデックス22は、単純に、任意の特定のデータシーケンスを、タイムスタンプに従って見つけるためのガイドとして用いられ、これによって、特に、短時間の間に多数の異なるポイントから再生を要求された場合のシーク時間が改善される。
上述の論考からわかることとして、SFSは、先に説明されたデータ記憶システム1、17、又は18において残る未解決の温度及び振動の問題のいずれをもさらに軽減し、同時に、ミラー化書き込みデータシステム18において2台のHDD 2を一度に用いることによる消費電力の増加を抑える。
SFSを活用することにより、データ記憶システム1、17、又は18の信頼性をさらに向上させることが可能であり、データ書き込み速度に関して最適な状況を実現することが可能である。この方法は、デジタルビデオ記録、デジタルオーディオ記録、計測記録、データバックアップ、アーカイブ、及び同様の、大容量データがシーケンシャルに記録され、典型的には、読み出しがめったに行われない用途に理想的である。
データディスクの暗号化
HDD 2に記憶されたデータは、機密性又は証拠性であることが多いため、前述の読み出しプロセス又は書き込みプロセスのいずれにも、暗号化システムを追加することが可能である。データディスクの暗号化プロセスは、基礎的な低レベルにおいて用いられるため、高レベルで(例えば、DVRによって)実施されてもされなくてもよい、あらゆる暗号化から独立している。したがって、様々な暗号化方式を実装することにより、(例えば、許可されたユーザだけがデータを読み出せるようにする)データセキュリティを提供することが可能であり、或いは、より重要なこととして、データを後で修正したり、改ざんしたり、記録し直したりできないように、機械生成暗号化鍵を使用してデータをセキュアに符号化する方法を提供することが可能である。後者の方式は、データがいつ、どこで書き込まれたかを、データ記憶システム1、17、又は18の製造元が検証可能な様式で識別する、セキュアな方法を提供する。
したがって、前述のデータ記憶システムは、先行技術の項で説明されたシステムより、安価で、信頼性が高く、電力効率が高く、便利なデータ記憶方法及び装置を提供する。説明されたデータ記憶システムは、1つ又は複数のシーケンシャルデータ記録手法を用いる。そのようなシーケンシャル記録は、低コストのHDD 2のアレイのシーケンシャル使用、及び/又は、HDD 2自体の内部にある個々のセクタのシーケンシャル使用によって実現される。
以上の、本発明についての記載は、例示及び説明を目的としたものであり、網羅的であることや、又は、開示された厳密な形態に本発明を限定することを意図するものではない。記載された実施形態は、本発明の原理及びその実際的応用を最もよく説明することにより、他の当業者が、本発明を、様々な実施形態で、且つ、考えられる具体的な用途に適するように様々に修正して、最もよく利用することを可能にするために、選択及び説明されている。したがって、添付の特許請求項によって定義される、本発明の範囲から逸脱することなく、さらなる修正又は改良が組み込まれることが可能である。
本発明の一態様によるHDDデータ記憶システムの正面図である。 本発明の一態様によるHDDデータ記憶システムの概略図である。 シングルプラッタハードディスクドライブの上面図であり、図1のHDDデータ記憶システムでの使用に適するものである。 4プラッタハードディスクドライブの概略図であり、図1のHDDデータ記憶システムでの使用に適するものである。 本発明の一実施形態による2次元アレイHDDデータ記憶システムの正面図である。 本発明の一実施形態によるミラー化書き込みHDDデータ記憶システムの第1段階の概略図であり、第1のHDDペアに書き込まれていることを示す図である。 本発明の一実施形態によるミラー化書き込みHDDデータ記憶システムの第2段階の概略図であり、第2の、オーバーラップするHDDペアに書き込まれていることを示す図である。 本発明の一実施形態によるミラー化書き込みHDDデータ記憶システムの第3段階の概略図であり、第3の、オーバーラップするHDDペアに書き込まれていることを示す図である。 本発明の一実施形態によるミラー化書き込みHDDデータ記憶システムの第4段階の概略図であり、最後の、オーバーラップするHDDペアに書き込まれていることを示す図である。 本発明の一実施形態によるミラー化書き込みHDDデータ記憶システムの第5段階の概略図であり、データディスクアレイにおける最後のHDD及び第1のHDDからなるHDDペアに書き込まれていることを示す図である。 本発明の一態様による、シーケンシャルファイリングシステム(SFS)を用いたデータディスクプラッタの概略図である。

Claims (10)

  1. ハードディスクドライブシステムにデータを記憶する方法であって、
    1)シーケンシャルに配置されたm台のハードディスクドライブを備える第1のデータ記憶エレメントを選択するステップであって、mは2以上である、ステップと、
    2)前記第1のデータ記憶エレメントが容量一杯になるまで、前記第1のデータ記憶エレメントの前記m台のハードディスクドライブの各々に同時に前記データをシーケンシャルに書き込むステップと、
    3)シーケンシャルに配置されたm台のハードディスクドライブからなる次位のデータ記憶エレメントを選択するステップと、
    4)前記次位のデータ記憶エレメントが容量一杯になるまで、前記次位のデータ記憶エレメントの前記m台のハードディスクドライブの各々に同時に前記データをシーケンシャルに書き込むステップと、
    5)定の数のデータ記憶エレメントが容量一杯になるまで、前記ステップ3及び前記ステップ4を繰り返すステップと
    を含み、
    前記次位のデータ記憶エレメントは、前のデータ記憶エレメントと、該前のデータ記憶エレメントのm台未満のハードディスクだけオーバーラップする、方法。
  2. 記所定の数のデータ記憶エレメントが容量一杯になったとき、前記ステップ1から前記ステップ5までを繰り返すステップをさらに含む、請求項1に記載の方法。
  3. 前記データ記憶エレメントが、シーケンシャルに配置された3台のハードディスクドライブを備える、請求項1又は2に記載の方法。
  4. 前記次位のデータ記憶エレメントは、前記前のデータ記憶エレメントと、該前のデータ記憶エレメントの前記ハードディスクの2台だけオーバーラップする、請求項3に記載の方法。
  5. データが書き込まれているハードディスクドライブが故障したことを受けて、前記次位のデータ記憶エレメントを選択するステップをさらに含む、請求項1又は2に記載の方法。
  6. 前記データを前記データ記憶エレメント内に記録する前記ステップが、前記データを暗号化するステップをさらに含む、請求項1〜のいずれか一項に記載の方法。
  7. ハードディスクドライブにデータをシーケンシャルに書き込む前記ステップは
    )前記ハードディスクドライブ内にある、シーケンシャルに配置されたアロケーションブロックのアレイから、第1のアロケーションブロックを選択するステップと、
    )前記第1のアロケーションブロックが容量一杯になるまで、前記第1のアロケーションブロック内にデータを記録するステップと、
    )シーケンシャルに配置されたアロケーションブロックの前記アレイから、次位のアロケーションブロックを選択するステップと、
    )前記次位のアロケーションブロックが容量一杯になるまで、前記次位のアロケーションブロック内にデータを記録するステップと、
    )前記アレイ中の、所定の数の前記シーケンシャルに配置されたアロケーションブロックが容量一杯になるまで、前記ステップ及び前記ステップを繰り返すステップと
    を含む、請求項1〜6のいずれか一項に記載の方法。
  8. 前記アレイ中の、前記所定の数の前記シーケンシャルに配置されたアロケーションブロックが容量一杯になったとき、前記ステップから前記ステップまでを繰り返すステップをさらに含む、請求項に記載の方法。
  9. アロケーションブロック内にデータを記録する前記ステップが、前記アロケーションブロック内に記録された前記データの開始時刻及び終了時刻を記録するステップをさらに含む、請求項又はに記載の方法。
  10. データを記憶するハードディスクドライブシステムであって、当該システムは、シーケンシャルに配置された複数のハードディスクドライブとハードディスクドライブコントローラとを備えており、前記ハードディスクコントローラは、
    1)シーケンシャルに配置されたm台のハードディスクドライブを備える第1のデータ記憶エレメントを選択し、mは2以上であり、
    2)前記第1のデータ記憶エレメントが容量一杯になるまで、前記第1のデータ記憶エレメントの前記m台のハードディスクドライブの各々に同時に前記データをシーケンシャルに書き込み、
    3)シーケンシャルに配置されたm台のハードディスクドライブからなる次位のデータ記憶エレメントを選択し、
    4)前記次位のデータ記憶エレメントが容量一杯になるまで、前記次位のデータ記憶エレメントの前記m台のハードディスクドライブの各々に同時に前記データをシーケンシャルに書き込み、
    5)所定の数のデータ記憶エレメントが容量一杯になるまで、前記ステップ3及び前記ステップ4を繰り返すように動作可能であり、
    前記次位のデータ記憶エレメントは、前のデータ記憶エレメントと、該前のデータ記憶エレメントのm台未満のハードディスクだけオーバーラップする、システム。
JP2009502184A 2006-03-28 2007-03-12 ハードディスク記憶システム Active JP5059847B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US78636406P 2006-03-28 2006-03-28
US60/786,364 2006-03-28
PCT/GB2007/000857 WO2007110577A1 (en) 2006-03-28 2007-03-12 Hard disk storage system

Publications (2)

Publication Number Publication Date
JP2009531799A JP2009531799A (ja) 2009-09-03
JP5059847B2 true JP5059847B2 (ja) 2012-10-31

Family

ID=38134156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009502184A Active JP5059847B2 (ja) 2006-03-28 2007-03-12 ハードディスク記憶システム

Country Status (8)

Country Link
US (1) US8190837B2 (ja)
EP (1) EP1999554B1 (ja)
JP (1) JP5059847B2 (ja)
AT (1) ATE509310T1 (ja)
AU (1) AU2007231179B2 (ja)
DK (1) DK1999554T3 (ja)
ES (1) ES2366591T3 (ja)
WO (1) WO2007110577A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101259706B1 (ko) 2002-10-22 2013-05-06 제이슨 에이. 설리반 향상된 방열 특성을 갖는 비주변 처리 제어 모듈
CA2503791A1 (en) 2002-10-22 2004-05-06 Jason A. Sullivan Non-peripherals processing control module having improved heat dissipating properties
WO2004038555A2 (en) 2002-10-22 2004-05-06 Isys Technologies Robust customizable computer processing system
PT2300904E (pt) * 2008-05-08 2013-05-03 V S K Electronics Sistema e método para gravar de forma sequencial e arquivar grandes volumes de dados de vídeo
JP5346175B2 (ja) * 2008-05-30 2013-11-20 パナソニック株式会社 データ保存システム及び記憶ユニット
US8208215B2 (en) * 2009-02-10 2012-06-26 Hitachi Global Storage Technologies Netherlands, B.V. Techniques for emulating sequential device with constrained disk drive
WO2011061783A1 (en) * 2009-11-17 2011-05-26 Hitachi, Ltd. Storage control device and rotation speed control method for storage device
US9569312B2 (en) * 2011-09-27 2017-02-14 Xcube Research And Development, Inc. System and method for high-speed data recording
US20130170129A1 (en) * 2011-11-10 2013-07-04 Jason A. Sullivan Systems and methods for providing a dynamic electronic storage unit
US9430157B2 (en) 2012-02-29 2016-08-30 Hewlett Packard Enterprise Development Lp Continuous recording multichannel disk-based data logging
US8810941B2 (en) 2012-07-10 2014-08-19 HGST Netherlands B.V. System, method and apparatus for selection of reserved area data tracks
US9055711B2 (en) 2012-07-16 2015-06-09 HGST Netherlands B.V. System and method for maintaining data integrity on a storage medium
CN103777725A (zh) * 2012-10-18 2014-05-07 鸿富锦精密工业(深圳)有限公司 存储装置电源管理系统及方法
US8879180B2 (en) 2012-12-12 2014-11-04 HGST Netherlands B.V. System, method and apparatus for data track usage sequence to reduce adjacent track interference effect
US8988805B1 (en) 2014-03-26 2015-03-24 Toshiba Global Commerce Solutions Holdings Corporation Method for clipping hard drives while preserving full actuator arm movement
US9619157B2 (en) 2014-04-03 2017-04-11 Analysis Solution Llc High-speed data storage
CN104615505B (zh) * 2015-02-11 2018-03-23 浪潮(北京)电子信息产业有限公司 一种远程复制记录数据变化的方法
US9563376B2 (en) 2015-05-01 2017-02-07 International Business Machines Corporation Low power storage array with metadata access
CN105306860B (zh) * 2015-10-12 2019-01-22 东方网力科技股份有限公司 一种录像数据存储方法及装置
WO2017084015A1 (zh) * 2015-11-16 2017-05-26 华为技术有限公司 存储系统、存储设备及硬盘调度方法
US9886209B2 (en) * 2016-02-16 2018-02-06 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Controlling file placement on a disk drive to improve file access
US11455182B2 (en) 2019-05-03 2022-09-27 Vmware, Inc. In-place encryption of a swap file on a host machine
CN114327278A (zh) 2021-12-30 2022-04-12 北京百度网讯科技有限公司 数据的追加写方法、装置、设备以及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3184763B2 (ja) 1995-06-07 2001-07-09 インターナショナル・ビジネス・マシーンズ・コーポレ−ション マルチメディア直接アクセス記憶装置及びフォーマット方法
WO1997001139A1 (en) 1995-06-23 1997-01-09 Elonex Plc Disk array controller with enhanced synchronous write
JP3788677B2 (ja) 1997-11-14 2006-06-21 富士通株式会社 連続録画システム及び方法並びに長時間録画プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4325817B2 (ja) * 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
EP1178390A3 (en) * 2000-08-04 2006-12-27 Hitachi, Ltd. Information storage system with increased reliability for continuous operation, and recording control method
JP4231639B2 (ja) * 2000-08-04 2009-03-04 株式会社日立グローバルストレージテクノロジーズ 情報記録システム及び情報記録制御方法
JP2002216421A (ja) * 2001-01-16 2002-08-02 Onkyo Corp 録音再生装置
JP2002230952A (ja) * 2001-01-31 2002-08-16 Tietech Co Ltd ハードディスクへのデータ記録方法
JP3879702B2 (ja) * 2003-05-14 2007-02-14 船井電機株式会社 ディスク記録装置
JP2005063591A (ja) 2003-08-18 2005-03-10 Matsushita Electric Ind Co Ltd ディスクアレイ装置
JP4518541B2 (ja) 2004-01-16 2010-08-04 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
GB2410098B (en) 2004-01-16 2006-10-11 Sony Uk Ltd Security system
US20050240691A1 (en) * 2004-04-26 2005-10-27 Alexander Yurusov Vehicle media player unit

Also Published As

Publication number Publication date
US8190837B2 (en) 2012-05-29
AU2007231179A1 (en) 2007-10-04
DK1999554T3 (da) 2011-09-05
AU2007231179B2 (en) 2013-06-06
WO2007110577A1 (en) 2007-10-04
ES2366591T3 (es) 2011-10-21
EP1999554B1 (en) 2011-05-11
ATE509310T1 (de) 2011-05-15
JP2009531799A (ja) 2009-09-03
EP1999554A1 (en) 2008-12-10
US20090310242A1 (en) 2009-12-17

Similar Documents

Publication Publication Date Title
JP5059847B2 (ja) ハードディスク記憶システム
US9070390B2 (en) Modified areal densities for degraded storage device read heads
KR101574844B1 (ko) Smr raid용의 대블록 무작위 쓰기 핫 스페어 ssd 구현
US6529995B1 (en) Method and apparatus for maintaining and restoring mapping table entries and data in a raid system
US6886108B2 (en) Threshold adjustment following forced failure of storage device
JP5285611B2 (ja) グローバルホットスペアディスクが存在するときに、切断されたドライブを復元、及びコピーバックする最適化された方法
US7487400B2 (en) Method for data protection in disk array systems
JP2016530637A (ja) Raidパリティストライプ再構成
CN103246478B (zh) 一种基于软raid支持无分组式全局热备盘的磁盘阵列系统
JP2007334593A (ja) Raidコントローラおよびraid装置
WO2014067270A1 (zh) 基于光盘的数据库存储系统及利用该系统的方法
US7454686B2 (en) Apparatus and method to check data integrity when handling data
Tanabe et al. Redundant optical storage system using DVD-RAM library
CN110827861A (zh) 使用多个卷提供复制的多致动器驱动器
US6594724B1 (en) Enhanced DASD with smaller supplementary DASD
JP2006059347A (ja) ジャーナリングを使用した記憶システム
JPWO2013005418A1 (ja) 記憶装置および記憶方法
US10642508B2 (en) Method to limit impact of partial media failure of disk drive and detect/report the loss of data for objects due to partial failure of media
US7386754B2 (en) Method and apparatus to improve magnetic disc drive reliability using excess un-utilized capacity
US7073029B2 (en) Storage system using fast storage and log-structured storage
JP2005539303A (ja) 電力効率高容量なスケーラブルな記憶システムのための方法および装置
US20130212428A1 (en) Information storage medium library array apparatus, information recording method and information recording program
JP3669103B2 (ja) 記憶装置および記憶装置サブシステム
JP2010191499A (ja) ストレージシステム
JP2002278706A (ja) ディスクアレイ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110726

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111026

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120703

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120802

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

Free format text: PAYMENT UNTIL: 20150810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5059847

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250