(57)【要約】      （修正有）【課題】記録されたデータのデータ損傷を有効に軽減する。【解決手段】外部からのデータを記憶する複数のドライブ１０〜１３と、前記データの記録再生を制御するＲＡＩＤ制御装置１とを備え、各ドライブ１０〜１３は、予め設定されたデータ単位に前記データを記憶する複数の記録単位領域を有し、前記ＲＡＩＤ制御装置１が、各ドライブ１０〜１３に対して前記データを前記データ単位で記憶および再生を行うドライブ毎データ分配部９と、前記データを記録するに際に前記記録単位領域より小さい残余データが生じる場合に、前記残余データに予め設定されたパディングデータを追加して前記データの記録を行うｎＥＣＣデータ生成部５と、を備えた。【選択図】図１
2009301148.tif 000002
【特許請求の範囲】
【請求項１】
外部からのデータを記憶する複数の光ディスク記憶装置と、前記複数の光ディスク記憶装置における前記データの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムであって、
前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、
前記データ制御装置は、前記複数の光ディスク装置に対して前記データ単位で前記データを記憶すると共に当該記憶されたデータを前記データ単位で再生する記録再生手段と、前記データを記録する際に前記データ単位より小さい残余データが生じる場合、前記残余データに対して予め設定されたパディングデータを追加し前記データ単位を充填するデータ充填手段と、を備えたことを特徴とする分散記憶制御システム。
【請求項２】
前記請求項１に記載の分散記憶制御システムにおいて、
前記データ制御装置が、前記残余データが生じた前記データ単位内で、前記パディングデータの追加される不足データ量が前記残余データ量を上回る場合に、前記残余データを前記データ単位中に複数回記録するデータ多重記録手段を備えたことを特徴とする分配記憶制御システム。
【請求項３】
前記請求項１、２に記載の分散記憶制御システムにおいて、
前記データ単位には、前記記憶されたデータと当該データの内容に基づく誤り訂正符号であるパリティが含まれることを特徴とした分配記憶制御システム。
【請求項４】
前記請求項１、２に記載の分散記憶制御システムにおいて、
前記データ充填手段が、前記データ単位中に記録された前記残余データおよび前記パディングデータの配置構成情報を、前記パディングデータの付与された前記データ単位中に追加し記録する配置構成記録手段を備えたことを特徴とする分配記憶制御システム。
【請求項５】
複数の光ディスク記憶装置と、前記光ディスク記憶装置におけるデータの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムにあって、外部から転送されたデータを前記複数の光ディスク装置に渡って記録する分散記憶制御方法であって、
前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、前記転送されたデータが前記複数の光ディスク装置に渡って前記データを分配されるデータ分配工程と、
前記データが記録される際に前記データ単位より小さい残余データが生じる場合、前記残余データに追加するパディングデータが設定されるパディングデータ設定工程と、
前記残余データに前記パディングデータが追加され前記データ単位が充填されるデータ充填記録工程と、を備えたことを特徴とする分配記憶制御方法。
【請求項６】
複数の光ディスク記憶装置と、前記光ディスク記憶装置におけるデータの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムにあって、外部から転送されたデータを前記複数の光ディスク装置に渡って記録するための分散記憶制御プログラムであって、
前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、前記転送されたデータが前記複数の光ディスク装置に渡って前記データを分配し記憶する処理を行うデータ分配機能と、
前記データが記録される際に前記データ単位より小さい残余データが生じる場合、前記残余データに追加するパディングデータを設定するパディングデータ設定機能と、
前記残余データに前記パディングデータが追加された前記残余データを前記データ単位に記録するデータ充填記録機能と、
を備えたことを特徴とする分配記憶制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＡＩＤ構成を用いたデータの記憶、再生を行うファイルシステムに関する。
【背景技術】
【０００２】
コンピュータシステムでは、処理対象であるデータの大容量化に伴い、高速にデータを記録すると共に、高いデータ信頼性を有する大容量記憶装置が求められている。
こうした大容量記憶装置として、並列に接続された複数の記録ディスクを並列に組み合わせたシステムであるディスクアレイが利用されている。このディスクアレイの最も一般的な形式は、ＲＡＩＤ(Redundant Array of Inexpensive Disks)である。
これは、複数台の記録ディスクをまとめて1台の記録ディスクとして管理する技術であって、ＲＡＩＤ(レイド)には、ＲＡＩＤ０、ＲＡＩＤ１、ＲＡＩＤ２、…等、その機能や性質により多数の方式が定義されている。
【０００３】
また、例えばＲＡＩＤ４は、パリティと呼ばれる誤り訂正符号を記録されるデータに付加する。これにより、１台の記録ディスクに再生不良が発生した場合でも、他の正常な記録ディスク内のデータから誤り訂正処理を行うことで、再生不良が生じた記録ディスクにおけるデータの復元を図ることができる。
【０００４】
ここで、上記ＲＡＩＤ４を有するシステムは、例えば図２に示すように、４台のデータ記録ドライブに対して1台のパリティドライブを付加されているものとする。ここでは、パリティは４台の記録ドライブのデータから生成されたデータであり、４台の記録ドライブのうちの１台が再生不良となった場合でも、他の３台の記録ドライブと1台のパリティドライブのデータ内容に基づき、再生不良記録ドライブのデータを復元することができる。
【０００５】
ところで、ＲＡＩＤの記録ディスクは、大容量データの記録再生及び高速データの転送処理に対するコスト、性能、可用性等により、ハードディスクで実現される場合が多い。
これに対して、記録ディスクとして光ディスクドライブを利用することにより、ＲＡＩＤを構成することも可能である。現状の光ディスクはハードディスクに比べると、記録容量、データ転送速度に関して劣ってはいるものの、データの保存性、ライトワンスメディアでのデータの改竄のしにくさ等に優れている。
【０００６】
また、ＲＡＩＤを光ディスクドライブにより構成する場合、市販されている光ディスクドライブを用いることになる。ハードディスクＲＡＩＤでは、ハードディスクドライブをそのまま用いるように、光ディスクＲＡＩＤでは、例えば、ＤＶＤ(Digital Versatile Disk)ドライブ等を構成として用いることにより、新規に光ディスクドライブを開発する工数が省け、安価にＲＡＩＤを構成できる。
【０００７】
また、ＤＶＤドライブでの記録を行う場合、ＤＶＤフォーマットでの記録処理を行うことになる。
ここで、ＤＶＤフォーマットの記録単位である１ＥＣＣ(Error Check and Correct Memory)ブロック構成を図３に示す。
この１ＥＣＣブロック構成は、ＰＩ（Parity of Inner-Code：内符号パリティ）とＰＯ（Parity of Outer-Code：外符号パリティ）と呼ばれるリードソロモン符号が、縦および横に配置されており、バーストエラーに強い積符号構成となっている。
【０００８】
また、図３のＲＡＩＤ４システムの構成をＤＶＤドライブで実現する場合、記録データは、光ディスクドライブ０、１、２、３へと記録されると共に、これら記録データに対応したパリティが生成され、光ディスクドライブ４に記録されることになる。これにより、ＤＶＤドライブにおけるデータ構成は、４ＥＣＣブロックのデータに対して１ＥＣＣブロックのパリティが生成された構成となる。ＤＶＤでは、上記データ構成を、各光ディスクドライブ上で繰り返し構築していくことにより、対象の全記録データを記録していく。
【０００９】
しかしながら、記録データは、常に４ＥＣＣブロック単位でＤＶＤドライブに転送されるわけではないため、記録データの最後が４ＥＣＣブロック分のデータの最後と一致するとは限らない。
また、ＤＶＤでは、通常1セクタ(２０４８バイト)単位を基本としてデータ管理を行われる。この場合でも、記録されるデータの終端が４ＥＣＣブロックの終端と揃うことは希である。
このため、終端側のブロックには、ブロックを充填するにはデータ量が不足しているデータ(以下「端数データ」という：残余データに相当)が生じることになる。
【００１０】
これに対して、上記端数データに続く残りの領域に対して、次の記録データが転送され書き込まれるのを待ってから記録(書込み)を実行する、または、既存の書き込み領域からデータを読み出して、この読み出されたデータを用いてＥＣＣブロックを構成すると共にパリティを生成して記録を行う手法が開示されている(特許文献１)。
【特許文献１】特開平１０−２５４６４５
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記特許文献１に開示された関連技術では、記録された端数データ以降におけるデータ記録処理が、転送されるか否かが不確定な記録データの待ち状態下で行わなければならず、データの記録処理全体における遅延と負荷増大が生じてしまうという不都合がある。
【００１２】
また、ＲＡＩＤを構成する複数の異なるＥＣＣブロック内に異なるファイルデータの終端および始端が記録されることにより、記録データに対するアクセスや読出しにかかる処理が煩雑となるため、ＲＡＩＤシステム全体に処理速度の低下や処理負荷の増大といった不都合が生じ得る。
【００１３】
また、何も記録されていない初期ディスクや、ライトワンスメディアにおいては、前述のように既存の書き込み領域から読み出されたデータを書き込むことができないという不都合もある。
【００１４】
［発明の目的］
本発明は、上記従来例の有する不都合を改善し、データの記録再生に伴うデータ損傷を有効に軽減する分散記憶制御システム、分散記憶制御方法、および分散記憶制御プログラムを提供することを、その目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために、本発明に係る分散記憶制御システムは、外部からのデータを記憶する複数の光ディスク記憶装置と、前記複数の光ディスク記憶装置における前記データの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムであって、前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、前記データ制御装置は、前記複数の光ディスク装置に対して前記データ単位で前記データを記憶すると共に当該記憶されたデータを前記データ単位で再生する記録再生手段と、前記データを記録する際に前記データ単位より小さい残余データが生じる場合、前記残余データに対して予め設定されたパディングデータを追加し前記データ単位を充填するデータ充填手段と、を備えた構成をとっている。
【００１６】
又、本発明にかかる分散記憶制御方法は、複数の光ディスク記憶装置と、前記光ディスク記憶装置におけるデータの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムにあって、外部から転送されたデータを前記複数の光ディスク装置に渡って記録する分散記憶制御方法であって、前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、前記転送されたデータが前記複数の光ディスク装置に渡って前記データを分配されるデータ分配工程と、前記データが記録される際に前記データ単位より小さい残余データが生じる場合、前記残余データに追加するパディングデータが設定されるパディングデータ設定工程と、前記残余データに前記パディングデータが追加され前記データ単位が充填されるデータ充填記録工程と、を備えたことを特徴としている。
【００１７】
更に、本発明にかかる分散記憶制御プログラムは、複数の光ディスク記憶装置と、前記光ディスク記憶装置におけるデータの記録および再生を制御するデータ制御装置とを備えた分散記憶制御システムにあって、外部から転送されたデータを前記複数の光ディスク装置に渡って記録するための分散記憶制御プログラムであって、前記複数の光ディスク装置に渡って記録されるデータのデータ単位を、前記各光ディスク装置に予め設定された記録単位の前記光ディスク装置の台数倍の大きさで構成し、前記転送されたデータが前記複数の光ディスク装置に渡って前記データを分配し記憶する処理を行うデータ分配機能と、前記データが記録される際に前記データ単位より小さい残余データが生じる場合、前記残余データに追加するパディングデータを設定するパディングデータ設定機能と、前記残余データに前記パディングデータが追加された前記残余データを前記データ単位に記録するデータ充填記録機能とを、前記データ制御装置が備えたコンピュータに実行させることを特徴としている。
【発明の効果】
【００１８】
本発明は、以上のように構成され機能するので、これによると、光ディスク記憶装置のデータ記録および再生を制御するデータ制御装置が、光ディスク記憶装置の記録単位領域におけるデータ不足分を充填するパディングデータを設定する手段と、パディングデータを付与された記録単位データを生成する手段とを備えた構成とし、これら各手段が有効に機能することにより、記録されたデータにおけるデータ損傷を効果的に軽減する分散記憶制御システム、分散記憶制御方法、および分散記憶制御プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１９】
［実施形態］
次に、本発明の実施形態について、その基本的構成内容を説明する。
【００２０】
本実施形態の分散記憶制御システムは、図１に示すように、外部から送り込まれたユーザデータの記録および再生を制御するＲＡＩＤ制御装置(データ制御装置)１と、このＲＡＩＤ制御装置１に並列に接続された複数のドライブ(光ディスク記憶装置)０、１、２、およびｍ(１０、１１、１２、および１３)を備えている。
ここで、上記複数のドライブ０、１、２、およびｍ(総称として「光ドライブ」という)は、それぞれ予め設定された複数のＥＣＣブロック(記録単位領域)からなり、ユーザデータを記憶する光ディスクドライブである。
【００２１】
また、ＲＡＩＤ制御装置１は、ユーザデータを一時的に記憶するメモリ２と、メモリ２に記憶されたユーザデータの和を計数するデータ数計測部３と、計数されたユーザデータの量と予め設定されたドライブ０〜ｍ(以下総称として「光ドライブ」という)における記録単位領域とに基づき、各ＥＣＣブロックにおけるデータ不足分を充填するパディングデータを生成するパディングデータ生成部(データ充填手段)４と、ＥＣＣブロック(記録単位)の数に基づき、メモリ２記憶されたユーザデータを分割し、パディングデータを付与された記録単位データを生成するｎＥＣＣデータ生成部(記録単位生成手段)５とを備えた構成となっている。
【００２２】
ここで、上記ｎＥＣＣデータ生成部(ｎは１以上の整数)５について、例えば、４台の光ドライブが設けられている場合(ｎ＝４)には、このうち３台の光ドライブをＥＣＣデータの記録先ドライブとして設定し、残りの１台の光ドライブをパリティ記録用のドライブに設定する。
このとき、上記５ＥＣＣデータ生成部５は、メモリ２からユーザデータを読出し、読み出されたユーザデータを分割すると共に、分割されたデータそれぞれについて、パリティおよびパディングデータ付加して４ＥＣＣブロック分のデータ(記録単位データ)を生成する。
【００２３】
ここで、上記記録単位データの大きさは、複数の光ディスク装置に渡って記録されるデータのデータ単位であって、各光ディスク装置に設定された記録単位(領域)を、光ディスクの台数倍(ここでは、４倍)されたサイズであるものとする。
【００２４】
更に、ＲＡＩＤ制御装置１は、パリティを生成するパリティ生成部８と、光ドライブに対して記録単位データの単位でデータ書込み(記録)、及びデータ読出し(再生)を行うドライブ毎データ分配部(記録再生手段)９とを備えている。
【００２５】
以上のように、本実施形態は、複数の光ディスク装置にユーザデータを分割して記録再生するＲＡＩＤ装置であり、この複数の光ディスク装置における記録単位であるＲＡＩＤデータ単位を、前記光ディスク装置１台あたりの記録単位の上記台数分で構成する。
【００２６】
また、このＲＡＩＤデータ単位は、前記ユーザデータと、前記光ディスク装置１台あたりの記録単位の整数倍のパリティデータを追加して、前記ＲＡＩＤデータ単位を生成し、前記ＲＡＩＤデータ単位を記録再生の単位とする
【００２７】
更に、パディングデータを含んでＲＡＩＤデータ単位を生成するときには、ＲＡＩＤ制御装置１は、外部から送り込まれるユーザデータ量が光ディスク装置１台あたりの記録単位の数の整数倍以下の場合に、当該ユーザデータを上記整数の台数分の光ディスク装置に配置(記録する)する。
【００２８】
以下、これを詳説する。
【００２９】
メモリ２は、送り込まれた(書き込まれた)データを一時的に記憶するデータ記憶機能を備えている。
また、データ数計測部３は、メモリ２に記憶されたデータのデータ数をカウントすると共に総データ数を算出するデータ数計測機能を備えている。
さらに、パディングデータ生成部４は、算出された総データ数に応じてパディングデータを生成するパディングデータ生成機能を備えている。
【００３０】
ｎＥＣＣブロックデータ生成部(nは1以上の整数である)５は、メモリ２からデータを読み出すと共に、当該データに生成されたパディングデータを付加しｎＥＣＣブロック５を充填する記憶単位充填データを生成する充填データ単位生成機能を有する。
【００３１】
また、ｎＥＣＣブロックデータ生成部５は、多重書き構成部６で多重書きを行う多重書き構成生成部(データ多重記録手段)６と、データ単位中に記録された前記残余データおよびパディングデータの配置構成を示す情報(配置構成情報)を、パディングデータの付与されたデータ単位中に追加し記録する構成情報生成部(配置構成記録手段)７を備えていてもよい。
【００３２】
パリティ生成部８は、ＲＡＩＤ制御装置１に転送されたユーザデータ総転送量とｎＥＣＣ単位ブロック領域とが一致していた場合、あるいは、パディングデータ等を追加することによりユーザデータの終端とｎＥＣＣ単位ブロックとが一致した場合に、予め設定されたＲＡＩＤ方式に応じて、記録されるユーザデータに応じたパリティを生成するパリティ生成機能を備えている。
【００３３】
ドライブ毎データ分配部９は、接続されたドライブ０(１０)、ドライブ１(１１)、ドライブ２(１２)、…、ドライブｍ(１３)(ｍは１以上の整数)に対して、記録単位データおよびパリティの分配を行うデータ分配転送機能を備えている。
【００３４】
ここで、本実施形態に示すように、記録ドライブとしてＤＶＤ等の光ディスクドライブでＲＡＩＤを構成する場合、記録されるデータは、図５に示すように、ＥＣＣブロックを形成して光ディスクドライブに記録される。
【００３５】
このＥＣＣブロックは、２０４８バイトのメインデータに対して、ＩＤ４バイト、ＩＥＤ２バイト、ＲＳＶ６バイト、ＥＤＣ４バイトが付加された２０６４バイトのデータフレーム(Data Frame)と、このデータフレームを１６個配置したものに、ＰＩパリティ１０バイト、およびＰＯパリティ１６バイトが付加された構成である。
【００３６】
ここで、本実施形態である、光ディスクドライブでＲＡＩＤ４を構成した場合のＥＣＣブロック構成を図５に示す。
ここでは、本システムは、４台の光ディスクドライブを備え、このうち、３台の光ディスクドライブにユーザデータが記録され、残りの1台に、上記３台の光ディスクドライブのユーザデータに基づき生成されたパリティが記録される。
また、上記図５のＲＡＩＤレベル４システムからユーザデータ部およびパリティ部を抜き出したデータ構成を図６に示す。
【００３７】
ここでは、ユーザデータは、ＥＣＣ０、１、２、および３で示されるそれぞれのデータ領域に順次配置され、それぞれデータ０、データ１、データ２、データ３を構成する。また、これらユーザデータに対応して設定されたパリティがＥＣＣ４に生成される。
【００３８】
尚、本実施形態では、ＲＡＩＤ４をユーザデータ、４ＥＣＣブロック、およびパリティ１ＥＣＣブロックとして設定する場合を例示しているが、ドライブ数は、これに限定されない。
例えば、ユーザデータをn台の光ディスクドライブに記録し、パリティを1台の光ディスクドライブに記録する設定としてもよい。
【００３９】
また、光ディスクドライブの場合は、通常ユーザデータは２０４８バイト単位、つまり2Kバイト単位を基準にしてデータ転送が行われる。このため、１ＥＣＣブロックは３２Ｋバイトで構成されており、上記のようにユーザデータが４ＥＣＣブロックで構成されるなら１２８ＫバイトがＲＡＩＤ４のデータになる。
【００４０】
ここで、ユーザデータ総転送量が、ｎ×３２Ｋバイトで割り切れるデータ量である場合には、ｎ×ＥＣＣブロック分が全て転送されたユーザデータで充填されることになる。
【００４１】
また、ユーザデータ総転送量が、ｎ×３２Ｋバイトで割り切れるデータ量ではない場合には、図７に示すように、伝送されたユーザデータのうち終端側のユーザデータを含み、ＥＣＣブロックを充填するには満たないユーザデータ(以下「端数ユーザデータ」という)が生じる。
【００４２】
このとき、パディングデータ生成部４は、ｎ×ＥＣＣブロックとなるように、ブロック内におけるユーザデータの記録されていない領域(以下、「残り領域」という)分のパディングデータを生成すると共に、上記端数ユーザデータにこのパディングデータを付与する機能を有する。
【００４３】
これにより、図８に示すように、端数ユーザデータに続く残り領域が、パディングデータで充填される。また、これに続くＥＣＣ２およびＥＣＣ３のＥＣＣブロックの領域にパディングデータを挿入することにより全てのＥＣＣブロックが充填される。
【００４４】
また、パリティ生成部８は、データ終端部を含む最終のｎ×ＥＣＣブロック(ここでは、ｎ＝４)に記録されるユーザデータに基づき、パリティを生成するができる。
【００４５】
また、ユーザデータの記録順序を変えることにより、端数ユーザデータが生した状態を図９に示す。この場合にも、図１０に示すように、記録されるユーザデータ終端部に続く残り領域を、パディングデータで充填する。
【００４６】
尚、上記パディングデータは全て予め定められた値とする。
ここで、ユーザデータの記録順序のみを変えて、単数データが各ＥＣＣブロックで発生した状態を図９に示す。この場合も、上記の場合と同様に、残り領域をパディングデータで充填することにより、最終のｎ×ＥＣＣブロック(最下段のブロック)でパリティが生成される。
これにより、転送された全てのユーザデータを記録することができ、且つそれらのユーザデータに基づくパリティを設定することができる。
【００４７】
ところで、ＲＡＩＤレベル４では、上述の場合と同様に、1つのＥＣＣブロック(ドライブ)からデータが得られない、つまり、読み出しが行えない場合でも、図１１に示すように、他のＥＣＣブロック(ドライブ)に記録されたユーザデータに基づいて、読み出しのできなかったＥＣＣブロック(ドライブ)のデータを復元することができる。
【００４８】
尚、本実施形態におけるパディングデータは、全て予め設定された値とする。
例えば、ＲＡＩＤレベル４システムでは、２つのドライブからのデータの読み出しができなかった場合、データの復元はできない。
しかしながら、パディングデータが、予め定められた値で既知のものである場合、再生時にユーザデータ部とパディングデータ部の２つが同時に得られなくなっても、パディングデータ値が分かる。これにより、図１２に示すように、もう1つの得られなかったユーザデータを復元することが可能となる。
【００４９】
例えば、仮にパディングデータの値が、全て０であるとする。この場合、ＥＣＣ０とＥＣＣ３のデータが得られないという状態である。
ここで、ＥＣＣ３が、パディングデータであると分かっている場合は、値は全て０であると判断することができ、同様にして、ＥＣＣ１〜４の値に基づいてＥＣＣ０のユーザデータを復元することが可能である。
【００５０】
尚、上記の例においては、パディングデータを仮に全て０としたが、例えばインクリメントデータのように、パディングデータが、全て同一値でなくても、データの記録された位置を示す情報を得ることができるデータが含まれるように設定してもよい。
【００５１】
尚、図８と図１０を比べた場合に、共にＥＣＣ０とＥＣＣ３のデータが得られなくなった場合について説明する。ここでは、図８のＥＣＣ３は全てパディングデータであり、図１０におけるＥＣＣ３は、ユーザデータとパディングデータとが混在している。
【００５２】
例えば、パディングデータが予め定められた値である場合、図８におけるＥＣＣ３は、全て値を得ることができるので、ＥＣＣ０のデータ復元を行うことができる。
一方で、図１０におけるＥＣＣ３は、ユーザデータ部の値が分からないので、２箇所の復元をできないＲＡＩＤ４においては、ＥＣＣ０のデータ復元を行うことができない。
【００５３】
このため、パディングデータを追加することにより、ｎ×ＥＣＣブロックを構成する場合、データ復元率を高めるためには、ユーザデータはＥＣＣブロック単位でよりまとめて配置された状態で記憶されることが望ましいといえる。
【００５４】
ここで、上記ユーザデータおよびパディングデータの２重書きについて説明する。
記録されるユーザデータのうちユーザデータの終端を含むｎ×ＥＣＣブロックは、ユーザデータおよびパディングデータで構成される。
このとき、ｎ×ＥＣＣブロックの半分以上が、パディングデータで占められる場合には、以下に示すように、データの多重書きを行う設定としてもよい。これにより、データの信頼性向上を図ることができる。
【００５５】
上記データの多重書きとして、ユーザデータとパディングデータの２重書きは、図１３に示すように、データ０、データ１およびパディングデータを、同じデータ構成でＥＣＣ２およびＥＣＣ３のブロックに記録する。
これにより、２つのドライブ、例えばＥＣＣ２およびＥＣＣ３からデータの再生を行うことができない場合でも、ＥＣＣ０およびＥＣＣ１に基づきデータ復元を行うことができるため、ＲＡＩＤシステムとして、データ損失に対する信頼性を高めることができる。
【００５６】
また、例えば、ｎ×ＥＣＣブロック(全体)の３／４以上をパディングデータが占める場合についても、図１４に示すように、同様にして４重書きを行う設定としてもよい。
これにより、例えば3つのドライブ、ＥＣＣ１とＥＣＣ２とＥＣＣ３からデータの再生を行うことができない場合でも、ＥＣＣ０に基づきデータが再生できる(復元する)ことができる。
尚、何重書きにするかは記録ドライブ数とパディングデータ量に応じて規定する設定としてもよい。
【００５７】
ところで、ＲＡＩＤでは、記録されるユーザデータは、複数のドライブにまたがった記録されたデータ構成となるので、ユーザデータの記録された位置の管理が重要となる。
ここでは、ｎＥＣＣブロックに記録されるパディングデータの一部の領域に、特別なデータを記録する場合について説明する。
この場合、図１５に示すように、例えば２Ｋ(キロ)バイト分のエリアを使って、記録されるユーザデータの構成情報を記録するものとする。
【００５８】
ここでは、ｎＥＣＣデータ生成部５が、記録されるユーザデータ(各ファイル)について、ドライブ１０〜１３における記録位置、記録されるＲＡＩＤ方式、ファイルデータの分配方式、記録範囲等、を示す記録ファイル管理情報(以下「管理情報」という)を生成する管理情報生成機能(配置構成記録手段)を有するものとする。
【００５９】
これにより、例えば、ドライブ毎データ分配部９は、この管理情報を参照することにより、特定のユーザデータ(ファイル)へのアクセスが容易となり、迅速に読出し処理を行うことができる。
【００６０】
尚、上記管理情報は、通常は記録ディスクの管理情報専用エリアや、それとは別のメモリ等に書き込まれ、保存されているものとする。
【００６１】
ところで、ユーザデータとパディングデータで構成されるＲＡＩＤデータでは、ユーザデータだけで構成されるＲＡＩＤデータとは異なるデータ構成を採用することができる。
このため、どのようなデータ構成を採用したかのを示す情報(以下「構成情報」という)をパディングデータの一部を使って保存してもよい。
【００６２】
構成情報は、ＲＡＩＤデータのうち、どこまでがユーザデータであって、どこからがパディングデータであるかを示す情報、パディングデータ値は何であるか、ユーザデータとパディングデータの組み合わせは何重書きしているか、どのＲＡＩＤレベルで構成しているか、どの記録ドライブにどのデータを書き込んだかといった情報から成る。
【００６３】
また、ユーザデータとパディングデータで構成されるＲＡＩＤデータ専用の構成情報は、この部分を読み出された場合に、一緒に情報が得られれば、それにあわせてユーザデータの再生を行うことができる。
【００６４】
例えば、配置の一例としては、図１５に示すように、ユーザデータとパディングデータの境界に配置する設定としてもよい。
全体のユーザデータ数は管理情報で把握されているため、管理情報を参照することにより構成情報の位置を求めることができる。
【００６５】
また、例えば図１６に示すように、ＲＡＩＤデータの先端領域に配置する設定としてもよい。
この場合にも、全体のユーザデータ数から最後のRAIDデータを把握できるので、構成情報位置を容易に求めることができる。または、図示しないが、パディングデータの末尾に配置しても最後のRAIDデータというのが分かれば構成情報は求めることができる。配置場所はどこかというのを明確に規定すれば構成情報の取得は可能であり、図１６のような例は、図１５と比べて構成情報がきまった場所に配置されるので、情報の取得を容易にするメリットがある。
【００６６】
ただし、図１６のようにユーザデータがn×ＥＣＣブロックと同サイズである場合には、構成情報は、次のＲＡＩＤデータに配置することになる。しかし、そこでのＲＡＩＤデータ内にはユーザデータは存在しないので、敢えて配置する必要性はない。よって、管理情報内で、このファイルには構成情報は存在していないことを、フラグで示しておけばよい。
【００６７】
尚、前述では構成情報のエリアを設けて記録を行うとしたが、図４に示すＲＳＶに格納しても良い。ＲＳＶは予備として空けているデータ領域であり、１ＥＣＣブロックにＲＳＶは６バイト×１６で９６バイト存在する。
よって、ここに構成情報を分散して格納しても良い。
尚、前述の構成、動作は主にＲＡＩＤ４について説明したが、他のＲＡＩＤ構成を用いて適宜実現してもよい。
【００６８】
前述の構成では、パディングデータの追加はユーザデータの最後のＲＡＩＤデータでのみ発生したが、他のＲＡＩＤデータ、或いは、全ＲＡＩＤデータにて、パディングデータを発生するような構成にしても良い。
尚、前述の光ディスクドライブは、ＤＶＤを用いて説明を行ったが、ＤＶＤの代わりにＨＤ ＤＶＤ、Ｂｌｕ−ｒａｙ Ｄｉｓｃを用いてもよい。
また、ＤＶＤは３２ＫＢｙｔｅでＥＣＣブロックを構成しているが、ＨＤ ＤＶＤでは６４ＫＢｙｔｅのＥＣＣブロックに、Ｂｌｕ−ｒａｙ Ｄｉｓｃでは６４ＫＢｙｔｅのＬＤＣクラスタになり、データの配置は変わるが、適宜規定することにより構成してもよい。
【００６９】
［実施形態の動作説明］
次に、本実施形態の全体の動作について、説明する。
【００７０】
先ず、データ数計測部３が、外部から転送されたデータのデータ転送数を計数すると共に、計数されたデータ量とドライブ１０〜１３におけるＥＣＣブロックの数に基づき、ｎＥＣＣデータ生成部が、ユーザデータを分割し分配する(データ分配工程)。
ここで、ｎＥＣＣブロックにおけるデータ不足領域が生じる場合に、パディングデータ生成部４が、データ不足領域を充填する分のパディングデータを設定し(パディングデータ設定工程)、このパディングデータを残余データに付与する。
次に、ドライブ毎データ分配部９が、ドライブ１０〜１３に対してパディングデータの付与されたデータをドライブに書込み、単位領域を充填する(データ充填記録工程)。
【００７１】
ここで、上記データ分配工程、パディングデータ設定工程、およびデータ充填記録工程については、その実行内容をプログラム化し、コンピュータに実行させるように構成してもよい。
【００７２】
次に、上記実施形態の動作について、図１８のフローチャートに基づき説明する。
まず、データ転送数計測部２１が、メモリ２に転送されたデータのデータ数を計測する(ステップＳ１０１：データ転送数計測行程)。データ全てが転送されたか否かの判定を行う(ステップS１０２：データ転送終了判定工程)。
ここで、データ転送が完了していなければデータ転送を継続する。
【００７３】
ここで、データ転送が、完了している場合、計数されたデータ量とドライブ１０〜１３におけるＥＣＣブロックの数に基づき、ｎＥＣＣデータ生成部が、ユーザデータを分割する(ステップＳ１０３：データ分割工程)と共に、データ総データ転送量がｎＥＣＣブロック単位数と一致するか否かの判定を行う(ステップＳ１０４：データ量一致判定工程)。
ここで、一致していない場合には、記録されるユーザデータの終端が、ｎＥＣＣブロック終端と一致するように、パディングデータの追加を行う(ステップＳ１０５：パディングデータ追加行程)。
【００７４】
ここで、多重書き構成生成部６が、多重書き用にｎＥＣＣデータを生成してもよい(ステップS１０６：多重書き設定工程)。また、構成情報生成部７が、構成情報を含むｎＥＣＣデータを生成するようにしてもよい(ステップS１０７：構成情報設定工程)。
【００７５】
次いで、総データ転送数がｎＥＣＣ単位ブロックの終端とが一致していた場合、或いは、パディングデータ等を追加することによりｎＥＣＣ単位ブロックとが一致した場合は、パリティ生成部８が、選択されたＲＡＩＤ方式に応じてパリティを生成する(ステップＳ１０８：パリティ生成行程)、
【００７６】
最後に、ドライブ毎データ分配部９が、接続しているドライブ１０〜１３に対してｎＥＣＣデータの分配書き込みを行う(ステップＳ１０９：データ分配工程)。
【００７７】
以上のように、本実施形態では、上位からの転送データ数がｎＥＣＣブロック領域に一致する場合以外にも、パディングデータを追加することにより、ＲＡＩＤデータを生成することができる。
また、例えばＲＡＩＤレベル４では、パディングデータを全て予め定められた値にすることで、ユーザデータ部とパディングデータ部が1つずつ再生できなくても、パディングデータは自動的に復元できるので、ユーザデータ部もパリティを用いて復元することができる。また、ユーザデータを複数配置することによりデータ信頼性を向上させることができる。
【００７８】
更には、ＲＡＩＤデータ内に、ユーザデータとパディングデータの配置に関する構成情報を含ませることにより、データ構成情報を記憶することができ、このため、記録されたデータに対するアクセス、記録、再生処理を容易、且つ迅速に行うことができる。
【産業上の利用可能性】
【００７９】
本発明は、光ディスクによるＲＡＩＤ構成を用いた記録再生装置に適用することができる。
【図面の簡単な説明】
【００８０】
【図１】本発明による分配記憶制御システムの一実施形態を示す概略ブロック図である。
【図２】ＲＡＩＤシステムで特定の記録ディスクに再生不良が生じた場合に実行されるデータ復元の一例を示す説明図である。
【図３】図１に開示した分配記憶制御システムにおける光ディスク記憶装置における記録単位構成の一例を示す説明図である。
【図４】図１に開示した分配記憶制御システムにおける光ディスクドライブの記録単位領域上のデータ構成の一例を示す説明図である。光ディスクドライブを用いる場合、記録データは、図４に示すように、ＥＣＣブロックを形成して光ディスク
【図５】図１に開示した分配記憶制御システムにおける(ＲＡＩＤ４による)データ構成の一例を示す説明図である。
【図６】図５に開示した(ＲＡＩＤ４システムの)データ構成図からユーザデータ部およびパリティ部を抜き出した説明図である。
【図７】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、伝送されたユーザデータが記録単位領域を充填するには満たない場合を示す説明図である。
【図８】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、伝送されたユーザデータおよびパディングデータにより記録単位領域が充填された場合を示す説明図である。
【図９】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、伝送されたユーザデータが記録単位領域を充填するには満たない場合を示す説明図である。
【図１０】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、伝送されたユーザデータおよびパディングデータにより記録単位領域が充填された場合を示す説明図である。
【図１１】図１に開示した分配記憶制御システムにおけるＲＡＩＤシステムで特定の記録ディスクに再生不良が生じた場合に実行されるデータ復元の一例を示す説明図である。
【図１２】図１に開示した分配記憶制御システムにおけるＲＡＩＤシステムで特定の記録ディスクに再生不良が生じた場合に実行されるデータ復元の一例を示す説明図である。
【図１３】図１に開示した分配記憶制御システムにおけるＲＡＩＤシステムで記録ディスクに対するデータ記録のうちの２重書きの一例を示す説明図である。
【図１４】図１に開示した分配記憶制御システムにおけるＲＡＩＤシステムで記録ディスクに対するデータ記録のうちの４重書きの一例を示す説明図である。
【図１５】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、記録されたパディングデータ内の一部の領域に構成情報を記録する場合の一例を示す説明図である。
【図１６】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、記録されたデータ内の一部の領域に構成情報を記録する場合の一例を示す説明図である。
【図１７】図１に開示した分配記憶制御システムにおけるデータ構成の一例であり、記録されたパディングデータ内の一部の領域に構成情報を記録する場合の一例を示す説明図である。
【図１８】図１に開示した分配記憶制御システムにおける動作処理ステップを示したフローチャートである。
【符号の説明】
【００８１】
１  転送データ
２  メモリ
３  データ数計測部
４  パディングデータ生成部
５  ｎＥＣＣブロックデータ生成部
６  多重書き構成生成部
７  構成情報生成部
８  パリティ生成部
９  ドライブ毎データ分配部
１０  ドライブ０
１１  ドライブ１
１２  ドライブ２
１３  ドライブｍ
【図１】
2009301148.tif 000003
【図２】
2009301148.tif 000004
【図３】
2009301148.tif 000005
【図４】
2009301148.tif 000006
【図５】
2009301148.tif 000007
【図６】
2009301148.tif 000008
【図７】
2009301148.tif 000009
【図８】
2009301148.tif 000010
【図９】
2009301148.tif 000011
【図１０】
2009301148.tif 000012
【図１１】
2009301148.tif 000013
【図１２】
2009301148.tif 000014
【図１３】
2009301148.tif 000015
【図１４】
2009301148.tif 000016
【図１５】
2009301148.tif 000017
【図１６】
2009301148.tif 000018
【図１７】
2009301148.tif 000019
【図１８】
2009301148.tif 000020