JP4186963B2 - 記録装置および方法、読み出し装置および方法、並びにプログラム - Google Patents

記録装置および方法、読み出し装置および方法、並びにプログラム Download PDF

Info

Publication number
JP4186963B2
JP4186963B2 JP2005211754A JP2005211754A JP4186963B2 JP 4186963 B2 JP4186963 B2 JP 4186963B2 JP 2005211754 A JP2005211754 A JP 2005211754A JP 2005211754 A JP2005211754 A JP 2005211754A JP 4186963 B2 JP4186963 B2 JP 4186963B2
Authority
JP
Japan
Prior art keywords
data
recording medium
content
reading
recorded
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.)
Expired - Fee Related
Application number
JP2005211754A
Other languages
English (en)
Other versions
JP2007026621A (ja
Inventor
正明 五十崎
昌昭 福田
応志 齊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005211754A priority Critical patent/JP4186963B2/ja
Priority to US11/457,663 priority patent/US20070019511A1/en
Publication of JP2007026621A publication Critical patent/JP2007026621A/ja
Application granted granted Critical
Publication of JP4186963B2 publication Critical patent/JP4186963B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B17/00Guiding record carriers not specifically of filamentary or web form, or of supports therefor
    • G11B17/22Guiding record carriers not specifically of filamentary or web form, or of supports therefor from random access magazine of disc records
    • G11B17/26Guiding record carriers not specifically of filamentary or web form, or of supports therefor from random access magazine of disc records the magazine having a cylindrical shape with vertical axis

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Description

本発明は記録装置および方法、記録装置および方法、読み出し装置および方法、並びにプログラムに関し、特に、コンテンツのデータを記録するか、または読み出しできるようにした記録装置および方法、読み出し装置および方法、並びにプログラムに関する。
複数の記録媒体に、コンテンツのデータを記録し、記録媒体のドライブへの装着を自動化することで、多量のコンテンツを簡単に取り扱えるようにした記録再生システムがある。
図1は、従来の記録再生システムの構成を示すブロック図である。ビデオ/オーディオエンコーダ11は、入力された入力画像信号に対応したベースバンドの画像データをMPEG(Moving Pictures Experts Group)方式で符号化する。また、ビデオ/オーディオエンコーダ11は、入力された音声信号(図示せず)に対応したベースバンドの音声データをMPEG方式で符号化する。ビデオ/オーディオエンコーダ11は、符号化により得られたデータをストリームエンコーダ12に供給する。
ストリームエンコーダ12は、ビデオ/オーディオエンコーダ11から供給された、符号化されているデータを多重化して、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームに変換し、変換により得られたストリームをライトバッファ13に供給する。
ライトバッファ13は、ストリームエンコーダ12から供給されたストリーム(データ)を一時的に記憶して、記憶しているストリーム(データ)をドライブ14に供給する。
ドライブ14は、装着されている光ディスク15に、ライトバッファ13から供給されたデータをファイルとして記録する。
ジュークシステム16は、ドライブ14への光ディスク15の着脱を制御する。ジュークシステム16は、複数の光ディスク15のそれぞれを格納するディスクスロット17からいずれかの光ディスク15をピッカー18に選択させる。ピッカー18は、ジュークシステム16の制御の基に、選択した光ディスク15を搬送し、ドライブ14に装着させる。また、ピッカー18は、ジュークシステム16の制御の基に、ドライブ14から取り出された光ディスク15を搬送して、いずれかのディスクスロット17に格納させる。すなわち、ジュークシステム16は、ピッカー18を制御する。
また、ドライブ14は、装着されている光ディスク15からファイルとして記録されているデータを読み出して、読み出したデータをリードバッファ19に供給する。リードバッファ19は、半導体メモリまたはハードディスクからなり、ドライブ14から供給されたデータ(ストリーム)を一時的に記憶する。リードバッファ19は、読み出しジッタを吸収し、データレートを一定となるように平坦化して、記憶しているデータ(ストリーム)をストリームデコーダ20に供給する。
ストリームデコーダ20は、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームを、画像データおよび音声データに分離して、分離した画像データおよび音声データをビデオ/オーディオデコーダ21に供給する。
ビデオ/オーディオデコーダ21は、符号化されている画像データおよび音声データを、いわゆるベースバンドの画像データおよび音声データに復号する。また、ビデオ/オーディオデコーダ21は、復号により得られたベースバンドの画像データおよび音声データを基にした、出力画像信号および音声信号(図示せず)をモニタ22に供給する。モニタ22は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
ここで、光ディスク15へのデータの記録方式は、図2で示されるように3通りの方式が考えられる。
第1の記録方式は、図2の上段で示されるように、1つのコンテンツのデータを1枚の光ディスク15に記録する方式である。第1の記録方式においては、所望のコンテンツのデータを1枚の光ディスク15で持ち出すことができるが、光ディスク15に空き領域が生じやすく、光ディスク15の使用効率が悪い。また、1つのコンテンツのデータのデータ量が、1枚の光ディスク15の容量を超える場合、そのデータを記録することができない。
第2の記録方式は、図2の中段で示されるように、1つのコンテンツのデータのデータ量が1枚の光ディスク15の空き領域の容量を超える場合、そのデータを光ディスク15の空き領域に収まるように圧縮して、1つのコンテンツのデータを1枚の光ディスク15に記録する方式である。第2の記録方式においては、光ディスク15に空き領域が生じにくくなり、光ディスク15の使用効率が良くなる。しかしながら、データが圧縮されるので、画質または音質が劣化してしまう。さらに、データの圧縮の処理が追加されるので、処理に時間がかかることになる。
第3の記録方式は、図2の下段で示されるように、1つのコンテンツのデータを、複数枚の光ディスク15にまたがって記録する方式である。第3の記録方式においては、1つのコンテンツのデータのデータ量が、1枚の光ディスク15の容量を超える場合であっても、コンテンツのデータを光ディスク15に記録することができる。
しかしながら、第3の記録方式においては、コンテンツを再生中に、ドライブ14に装着されている光ディスク15を交換しなければならない。光ディスク15を交換している間、コンテンツのデータを読み出すことができないので、再生の処理が中断される。
図3は、第3の記録方式で記録されているコンテンツのデータの読み出しの処理を説明するフローチャートである。ステップS11において、ディスクスロット17に格納されている光ディスク15は、ピッカー18によって搬送され、ドライブ14に装着される。ステップS12において、ドライブ14に装着された光ディスク15からのデータの読み出しが開始される。
ステップS13において、光ディスク15から読み出されたデータが、リードバッファ19に記憶される。ステップS14において、所定のデータ量のデータがリードバッファ19に記憶されたか否かが判定され、所定のデータ量のデータがリードバッファ19に記憶されるまで、判定の処理が繰り返される。ステップS14において、所定のデータ量のデータがリードバッファ19に記憶されたと判定された場合、ステップS15において、リードバッファ19に記憶されたデータの復号が開始される。ステップS16において、出力画像信号および音声信号の出力が開始され、コンテンツの再生が開始される。
ステップS17において、コンテンツの最後まで再生したか否かが判定される。ステップS17において、コンテンツの最後まで再生していないと判定された場合、ステップS18に進み、ドライブ14に装着されている光ディスク15のデータが最後まで読み出されたか否かが判定される。ステップS18において、ドライブ14に装着されている光ディスク15のデータが最後まで読み出されていないと判定された場合、手続きは、ステップS17に戻り、判定の処理が繰り返される。
ステップS18において、ドライブ14に装着されている光ディスク15のデータが最後まで読み出されたと判定された場合、ステップS19に進み、ドライブ14に装着されている光ディスク15がピッカー18によってディスクスロット17に戻される。
ステップS20において、次の光ディスク15が、ピッカー18によってディスクスロット17から搬送され、ドライブ14に装着される。ステップS21において、ドライブ14に装着された光ディスク15からのデータの読み出しが開始される。
ステップS22において、光ディスク15から読み出されたデータが、リードバッファ19に記憶される。ステップS23において、所定のデータ量のデータがリードバッファ19に記憶されたか否かが判定され、所定のデータ量のデータがリードバッファ19に記憶されるまで、判定の処理が繰り返される。ステップS23において、所定のデータ量のデータがリードバッファ19に記憶されたと判定された場合、ステップS24において、リードバッファ19に記憶されたデータの復号が開始される。ステップS25において、出力画像信号および音声信号の出力が開始され、コンテンツの再生が開始され、手続きは、ステップS17に戻る。
ステップS17において、コンテンツの最後まで再生したと判定された場合、処理は終了する。
このように、光ディスク15を交換して、マウントして、光ディスク15からデータの読み出しを開始するのに必要な時間だけ、再生が中断されることになる。この再生の中断の長さは、ピッカー18の機構の構成にも依存するが、20秒から30秒程度である。
この中断は、光ディスク15を交換するたびに毎回発生するので、使用者は、これにより、非常に大きなストレスを感じることになる。
一方、HSM(Hierarchical Storage Management:階層型記憶域管理)ソフトウェアが使用されている。HSMソフトウェアは、ハードディスクなどの高速な補助記録装置に保存されているファイルを、より低速で安価な記録媒体に自動的に移動する管理を行う(例えば、特許文献1参照)。
一般的なHSMにおいては、データの先頭部分が、高速な1次ストレージであるハードディスクにキャッシュファイルとして保持され、データの全体が、低速な2次ストレージである光ディスクに保持される。このデータへのアクセスが発生した場合、1次ストレージにキャッシュされているデータの先頭部分がアクセスされている間に、データの残りの部分が、2次ストレージから1次ストレージにコピーされる。このようにすることで、ユーザからは、1次ストレージにデータの全体が記録されているように見える。
以上のように、記録容量当たりのコストが安い2次ストレージにデータの全体を配置し、1次ストレージをキャッシュメモリとして用いることにより、ユーザには、見かけ上、巨大な1次ストレージを利用しているように思わせることができる。
特開2003−296151号公報
しかしながら、HSMを採用したとしても、光ディスク15を交換するときに生じる、再生の中断をなくすことはできない。
本発明は、このような状況に鑑みてなされたものであり、データ量の大きなコンテンツであっても、コンテンツのデータの読み出しにおいて、中断が生じないようにするものである。
本発明の第1の側面の記録装置は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録する第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、コンテンツの部分のデータを記録する第3の記録媒体と、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御する記録制御手段とが設けられ、記録制御手段は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録を制御する。
本発明の第1の側面の記録装置は、第1のデータ量を計算する計算手段をさらに設け、記録制御手段は、計算された第1のデータ量の、コンテンツの第1の部分のデータを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御するようにすることができる。
本発明の第1の側面の記録装置には、コンテンツのデータにおける第1の部分のデータの先頭位置および第1のデータ量を示す情報と、コンテンツのデータにおける第2の部分のデータの先頭位置および第2の部分のデータの第3のデータ量を示す情報とを格納する格納手段をさらに設けることができる。
記録制御手段は、第1の記録媒体、第2の記録媒体、または第3の記録媒体からコンテンツのデータを読み出す読み出し装置が、第1の記録媒体または第2の記録媒体に記録されているコンテンツのデータを読み出して、読み出したデータを第3の記録媒体に記録させてから、第3の記録媒体からコンテンツのデータを読み出す場合、第1のデータ量のデータであって、コンテンツの前の部分のデータを第1のデータとして第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御するようにすることができる。
本発明の第1の側面の記録装置は、第2の記録媒体に記録されているコンテンツのデータのうち、第3の記録媒体に記録されている領域と記録されていない領域とのそれぞれについて、第1の記録媒体に記録されているデータに続くデータの領域であるか否かを示す情報を格納する格納手段をさらに設けることができる。
本発明の第1の側面の記録方法は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録する第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、コンテンツの部分のデータを記録する第3の記録媒体とを備える記録装置の記録方法であって、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御する記録制御ステップを含み、記録制御ステップにおいて、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録を制御する
本発明の第1の側面のプログラムは、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録する第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、コンテンツの部分のデータを記録する第3の記録媒体とを備える記録装置のコンピュータに、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御する記録制御ステップを実行させ、記録制御ステップにおいて、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録を制御する
本発明の一側面においては、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録が制御され、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録が制御される。
本発明の第2の側面の読み出し装置は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録している第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとの切り替えに要する期間においてコンテンツのデータを読み出させることができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体と、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御する読み出し制御手段とが設けられ、第1のデータ量は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められる。
読み出し制御手段は、第1の記録媒体または第2の記録媒体に記録されているコンテンツのデータを読み出して、読み出したデータを第3の記録媒体に記録させてから、第3の記録媒体からデータを読み出すように、コンテンツのデータの読み出しを制御するようにすることができる。
読み出し制御手段は、第3の記録媒体に予め記録されていないデータであって、第1の記録媒体または第2の記録媒体から読み出されたデータを第3の記録媒体に記録させるようにすることができる。
読み出し制御手段は、コンテンツのデータのうち、第3の記録媒体に記録されていないデータを第1の記録媒体または第2の記録媒体から読み出すように、第1の記録媒体または第2の記録媒体からのデータの読み出しを制御するようにすることができる。
読み出し制御手段は、第1の記録媒体または第2の記録媒体から、通常の読み出しに比較して速い読み出し速度でデータを読み出すように、第1の記録媒体または第2の記録媒体からのデータの読み出しを制御するようにすることができる。
本発明の第2の側面の読み出し方法は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録している第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとの切り替えに要する期間においてコンテンツのデータを読み出させることができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体とからデータを読み出す読み出し装置の読み出し方法であって、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御する読み出し制御ステップを含み、第1のデータ量は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められる。
本発明の第2の側面のプログラムは、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録している第1の記録媒体と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとの切り替えに要する期間においてコンテンツのデータを読み出させることができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体とからデータを読み出す読み出し装置のコンピュータに、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御する読み出し制御ステップを実行させ、第1のデータ量は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められる。
本発明の第2の側面においては、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しが制御される。
以上のように、本発明の第1の側面によれば、コンテンツのデータを記録することができる。
また、本発明の第1の側面によれば、コンテンツのデータの読み出しにおいて、中断が生じないようにすることができる。
本発明の第2の側面によれば、コンテンツのデータを読み出すことができる。
また、本発明の第2の側面によれば、コンテンツのデータの読み出しにおいて、中断が生じないようにすることができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の第1の側面の記録装置は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録する第1の記録媒体(例えば、図12の光ディスク119−1)と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体(例えば、図12の光ディスク119−2)と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、コンテンツの部分のデータを記録する第3の記録媒体(例えば、図5のHDD116)と、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができる第1のデータ量の、コンテンツの第1の部分のデータ(例えば、図12のスタブデータ)と、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御する記録制御手段(例えば、図5のストレージマネージャ114)とを備え、記録制御手段は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録を制御する。
本発明の第1の側面の記録装置は、第2に、第1のデータ量を計算する計算手段(例えば、図5のマイグレーションファイルシステム164)をさらに備え、記録制御手段は、計算された第1のデータ量の、コンテンツの第1の部分のデータを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御するようにすることができる。
本発明の第1の側面の記録装置は、第3に、第2の記録媒体に記録されているコンテンツのデータのうち、第3の記録媒体に記録されている領域と記録されていない領域とのそれぞれについて、第1の記録媒体に記録されているデータに続くデータの領域であるか否かを示す情報(例えば、スパン)を格納する格納手段(例えば、図5のストレージサーバ165)をさらに備える。
本発明の第1の側面の記録方法またはプログラムは、第1の記録媒体(例えば、図12の光ディスク119−1)からのデータの読み出しと第2の記録媒体(例えば、図12の光ディスク119−2)からのデータの読み出しとを切り替える期間において第3の記録媒体(例えば、図5のHDD116)からコンテンツのデータを読み出すことができるデータ量の、コンテンツの第1の部分のデータ(例えば、図12のスタブデータ)と、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御する記録制御ステップ(例えば、図17のステップS54およびステップS64)を含み、記録制御ステップにおいて、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められた第1のデータ量を基に、第3の記録媒体への第1の部分のデータの記録を制御する。
本発明の第2の側面の読み出し装置は、時間的に連続するコンテンツの全体のデータのうちの、コンテンツの前の部分のデータを記録している第1の記録媒体(例えば、図12の光ディスク119−1)と、コンテンツの全体のデータのうちの、第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体(例えば、図12の光ディスク119−2)と、第1の記録媒体および第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとの切り替えに要する期間においてコンテンツのデータを読み出させることができる第1のデータ量の、コンテンツの第1の部分のデータと、コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体(例えば、図5のHDD116)と、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御する読み出し制御手段(例えば、図5のストレージマネージャ)とを備え、第1のデータ量は、第1の記録媒体に記録されているコンテンツのデータであって第3の記録媒体に記録されていないコンテンツのデータの第2のデータ量と第1の記録媒体からのデータの読み出しの速度とに応じて決められる。
本発明の第2の側面の読み出し方法またはプログラムは、第1の記録媒体(例えば、図12の光ディスク119−1)からのデータの読み出しと第2の記録媒体(例えば、図12の光ディスク119−2)からのデータの読み出しとを切り替える期間(例えば、図27のステップS244乃至ステップS246が実行される期間)において、第3の記録媒体(例えば、図5のHDD116)からコンテンツの第1の部分のデータを読み出し、コンテンツのデータの予め定められた優先度が所定の優先度より高いシーンのデータから読み出しが開始される場合、第3の記録媒体から第2の部分のデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御する読み出し制御ステップ(例えば、図27のステップS243)を含む。
本発明は、画像および音声のコンテンツのデータを記録し、記録したデータを再生する記録再生システムに適用できる。
以下、画像および音声のコンテンツのデータを記録し、記録したデータを再生する記録再生システムを例に説明するが、同様に、画像および音声のコンテンツのデータを記録する記録システム、または画像および音声のコンテンツのデータを再生する再生システムをそれぞれ個々に構成するようにしてもよいことは言うまでもない。
図4は、本発明の一実施の形態の記録再生システム101の構成を示すブロック図である。記録再生システム101は、ビデオ/オーディオエンコーダ111、ストリームエンコーダ112、HSM113、ストレージマネージャ114、バッファ115、HDD(Hard Disk Drive)116、バッファ117、ドライブ118、光ディスク119、ジュークシステム120、ディスクスロット121、ピッカー122、ストリームデコーダ123、およびビデオ/オーディオデコーダ124により構成されている。
ビデオ/オーディオエンコーダ111は、入力された入力画像信号に対応したベースバンドの画像データをMPEG方式で符号化する。また、ビデオ/オーディオエンコーダ111は、入力された音声信号(図示せず)に対応したベースバンドの音声データをMPEG方式で符号化する。ビデオ/オーディオエンコーダ111は、符号化により得られたデータをストリームエンコーダ112に供給する。
ストリームエンコーダ112は、ビデオ/オーディオエンコーダ111から供給された、符号化されているデータを多重化して、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームに変換し、変換により得られたストリームをHSM113に供給する。
HSM113は、記録媒体へのコンテンツのデータの階層的な記録を管理する(階層構造の記録媒体へのコンテンツのデータの記録を管理するとも言える)。HSM113は、ストレージマネージャ114の制御の基に、ストリームエンコーダ112から供給されたストリームをバッファ115を介してHDD116に供給する。HDD116は、高速な1次ストレージの一例であり、HSM113の制御の基に、バッファ115を介して、HSM113から供給されたストリーム(データ)を記録する。また、HDD116は、記録しているストリーム(データ)をバッファ115またはバッファ117に供給する。
バッファ115は、半導体メモリまたはHDD116の一部の記録領域からなり、HSM113またはHDD116から供給されたストリーム(データ)を一時的に記憶して、記憶しているストリーム(データ)をHSM113またはHDD116に供給する。バッファ117は、半導体メモリまたはHDD116の一部の記録領域からなり、HDD116またはドライブ118から供給されたストリーム(データ)を一時的に記憶して、記憶しているストリーム(データ)をHDD116またはドライブ118に供給する。
バッファ115およびバッファ117は、読み出しジッタを吸収し、データレートを一定となるように平坦化する。
ドライブ118は、装着されている光ディスク119に、バッファ117から供給されたデータをファイルとして記録する。光ディスク119は、低速な2次ストレージの一例であり、例えば、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)、またはCD(Compact Disc)などである。
ジュークシステム120は、ドライブ118への光ディスク119の着脱を制御する。ジュークシステム120は、複数の光ディスク119のそれぞれを格納するディスクスロット121からいずれかの光ディスク119をピッカー122に選択させる。ピッカー122は、ジュークシステム120の制御の基に、選択した光ディスク119を搬送し、ドライブ118に装着させる。また、ピッカー122は、ジュークシステム120の制御の基に、ドライブ118から排出された光ディスク119を搬送して、いずれかのディスクスロット121に格納させる。すなわち、ジュークシステム120は、ピッカー122を制御する。
また、ドライブ118は、装着されている光ディスク119からファイルとして記録されているデータを読み出して、読み出したデータをバッファ117に供給する。光ディスク119から読み出されたデータは、バッファ117を介して、HDD116に供給されて、HDD116に記録される。
HSM113は、光ディスク119から読み出され、HDD116に記録されたデータ(ストリーム)を、HDD116からバッファ115を介して読み出して、読み出したデータ(ストリーム)をストリームデコーダ123に供給する。
ストリームデコーダ123は、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームを、画像データおよび音声データに分離して、分離した画像データおよび音声データをビデオ/オーディオデコーダ124に供給する。
ビデオ/オーディオデコーダ124は、符号化されている画像データおよび音声データを、いわゆるベースバンドの画像データおよび音声データに復号する。また、ビデオ/オーディオデコーダ124は、復号により得られたベースバンドの画像データおよび音声データを基にした、出力画像信号および音声信号(図示せず)をモニタ125に供給する。モニタ125は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
ビデオ/オーディオエンコーダ111において、コンテンツを記録する場合、入力された入力画像信号に応じたコンテンツの全てのデータがHDD116に記録される。そして、ドライブ118の空き時間において、HDD116に記録されている所定のコンテンツのデータのすべてが、光ディスク119にコピーされる。この場合、HSM113が、どの光ディスク119にどのコンテンツのデータが書き込まれたかを示す情報を、後述するストアデータベースに記録させる。詳細は後述するが、この情報には、コンテンツのデータを格納するファイルを識別する情報、コンテンツの全てのデータが書き込まれた光ディスク119を識別する情報、書き込んだ日時、またはコンテンツのデータを格納するファイルの名前などが含まれる。
なお、外部から直接入力されたストリームを記録するようにしてもよく、ストリームを出力するようにしてもよい。また、データの符号化の方式は、MPEGに限らず、所定の圧縮伸張のための符号化方式であればよい。さらに、ストリームの方式は、本発明を限定するものではない。
図5は、記録再生システム101のより詳細な構成を示すブロック図である。より詳細には、記録再生システム101において、図示せぬCPU(Central Processing Unit)によって、アプリケーションプログラム141が実行され、記録再生システム101は、コンテンツマネージャ142、チェンジャドライブ143、およびジュークボックス制御部144を備える。
アプリケーションプログラム141は、使用者とのインターフェースの機能を有し、使用者からの指示を取得するか、使用者に記録再生システム101に関する各種の情報を通知する。アプリケーションプログラム141は、記録再生システム101全体を制御する。
例えば、アプリケーションプログラム141は、使用者からの操作に応じて、ビデオ/オーディオエンコーダ111、ストリームエンコーダ112、ビデオ/オーディオデコーダ124、ストリームデコーダ123、コンテンツマネージャ142、およびストレージマネージャ114を制御する。アプリケーションプログラム141は、ビデオカメラ171からの入力画像信号および音声信号を取得し、取得した入力画像信号および音声信号をビデオ/オーディオエンコーダ111に供給する。また、アプリケーションプログラム141は、ビデオ/オーディオデコーダ124から出力画像信号および音声信号を取得し、取得した出力画像信号および音声信号をモニタ125に供給する。さらに、アプリケーションプログラム141は、ストレージマネージャ114を介して、HSM113から供給されたストリーム(データ)をストリームデコーダ123に供給する。
コンテンツマネージャ142は、記録再生システム101に記録されているコンテンツの内容を管理し、コンテンツの内容を検索する。コンテンツマネージャ142は、コンテンツデータベース(DB)161へのコンテンツに関する各種の情報の記録およびコンテンツデータベース161からのコンテンツに関する情報の読み出しを制御する。
図6で示されるように、コンテンツデータベース161には、コンテンツに関する情報として、コンテンツに関連するファイルの情報(例えば、ファイル名、パス名など)、コンテンツの内容および付加情報(例えば、コンテンツの名前、コンテンツのジャンルなど)、コンテンツの圧縮形式(方式)、再生時間、およびインデックス情報(例えば、コンテンツにおけるインデックスの位置など)、並びにアクセス可能なユーザ(使用者)のユーザ情報(例えば、使用者の名前、パスワードなど)などが記録される。
ストレージマネージャ114は、HSM113を上位から制御する。すなわち、ストレージマネージャ114は、アプリケーションプログラム141からの要求に基づいて、HSM113を制御する。ストレージマネージャ114には、システムマネージャ162およびファイルI/Oマネージャ163が設けられている。
システムマネージャ162は、ストレージ制御関連のシステムを設定し、システムログを記録し、エラーログを管理し、メンテナンス処理を実行する。ファイルI/Oマネージャ163は、アプリケーションプログラム141からのファイルの読み出しまたは書き込みの要求を受け付ける。ファイルI/Oマネージャ163は、HDD116に記録されているコンテンツのファイルの、例えば、画像コンテンツまたは音楽コンテンツの一部分である、指定された一部分のデータをスタブデータとして保持するスタブファイル(状態)への変換を指示する。ファイルI/Oマネージャ163は、光ディスク119からHDD116へのデータの読み出し(後述するリロード)の処理の中断または再開を指示する。さらに、ファイルI/Oマネージャ163は、HDD116から光ディスク119へのデータの書き込みの処理の中断または再開を指示する。
HSM113は、HDD116、ドライブ118、光ディスク119、ジュークシステム120、ディスクスロット121、およびピッカー122を仮想ストレージ化し、HDD116によるコンテンツのデータの一時的な記録を制御する。HSM113は、マイグレーションファイルシステム164、ストレージサーバ165、ストアデータベース(DB)166、メディアサーバ167、およびボリウムデータベース(DB)168を含むように構成される。
マイグレーションファイルシステム164は、HSM113に管理されているファイルの拡張属性を管理し、拡張属性を書き換える。マイグレーションファイルシステム164は、HSM113に管理されているファイルに対するアクセスイベントを管理する。マイグレーションファイルシステム164は、光ディスク119からHDD116にデータを読み出す処理を制御し、HDD116から光ディスク119にデータを書き込む処理を制御する。
ストレージサーバ165は、光ディスク119からHDD116にデータに読み出すか、または、HDD116から光ディスク119にデータを書き込む。また、ストレージサーバ165は、HDD116に記録されている、コンテンツのデータを格納するキャッシュファイルに関する情報のストアデータベース166への記録およびキャッシュファイルに関する情報のストアデータベース166からの読み出しを管理する。また、ストレージサーバ165は、コンテンツのデータの全体と、そのデータが記録されている光ディスク119とのリンク情報を管理する。
ストアデータベース166は、コンテンツのデータを格納するキャッシュファイルであって、HDD116に記録されているキャッシュファイルに関する情報を記録する。
図6で示されるように、ストアデータベース166には、HDD116に記録されているキャッシュファイルの名前であるキャッシュファイル名と、キャッシュファイルを特定するための値(識別番号)であるキャッシュファイルIDとの関連付けが格納される。また、ストアデータベース166には、キャッシュファイルが書き込まれた時間(日時)またはキャッシュファイルが最後にアクセスされた時間(日時)を示すキャッシュファイルデート情報、並びにコンテンツの全体のデータが保存されている光ディスク119を特定するボリウムID(識別コード)が記録されている。さらに、ストアデータベース166には、ジュークボックス145内の各光ディスク119の空き容量が記録される。
より詳細には、ストアデータベース166に格納されるキャッシュファイルに関する情報は、キャッシュファイルID、ファイルサイズ、書き込まれた日時、キャッシュファイル名、およびパスを含む。ファイルサイズは、キャッシュファイルのデータ量を、例えば、バイト単位で示す。パスは、HDD116上の、キャッシュファイルの記録されている位置を示す位置情報である。
さらに、ストアデータベース166に格納されるキャッシュファイルに関する情報は、それぞれのコンテンツの全体のデータが記録(保存)されている光ディスク119の数(枚数)、それぞれのコンテンツの全体のデータが記録されている光ディスク119のボリウムID、および光ディスク119に記録されているデータのオフセット値とサイズを含む。コンテンツの全体のデータが、複数の光ディスク119にまたがって記録されている場合(コンテンツの全体のデータが、複数の光ディスク119に分けて記録されている場合)、光ディスク119の数は、2以上になる。
1つのコンテンツのデータを記録する光ディスク119の数が2以上である場合、その1つのコンテンツに対して、光ディスク119の数と同じ数の、ボリウムID、データの先頭位置、およびサイズが、キャッシュファイルに関する情報に含まれることになる。この場合、それぞれのボリウムIDは、コンテンツの全体のデータがまたがって記録されている光ディスク119のそれぞれを特定する。また、オフセット値は、例えば、バイトを単位として、それぞれの光ディスク119について、その光ディスク119の先頭から、その光ディスク119に記録されているコンテンツのデータの先頭位置までの距離を示す。サイズは、例えば、バイトを単位として、それぞれの光ディスク119について、その光ディスク119に記録されているコンテンツのデータのデータ量を示す。
メディアサーバ167は、それぞれのディスクスロット121に格納されている光ディスク119を管理する。メディアサーバ167は、チェンジャドライバ143に対し、指定された光ディスク119のドライブ118への装着(マウント)を要求する。また、メディアサーバ167は、チェンジャドライバ143に対し、ドライブ118に装着されている光ディスク119のディスクスロット121への格納(アンマウント)を要求する。
メディアサーバ167に設けられているボリウムデータベース168は、光ディスク119に関係する情報を格納する。
図6で示されるように、ボリウムデータベース168には、各光ディスク119の生ディスク状態での記録容量、並びに各光ディスク119のメディアとしての種類(MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)+R、またはDVD+RWなど)と書き込み専用または読み書き可能などの属性が記録される。また、ボリウムデータベース168には、ジュークボックス145内の各ディスクスロット121に格納されている光ディスク119のボリウムID、およびジュークボックス145に搭載されているドライブ118の使用状況が記録される。
チェンジャドライバ143は、ドライブ118を制御し、ジュークボックス制御部144とHSM113とのインターフェースの機能を有する。
ジュークボックス制御部144は、ジュークシステム120およびジュークサーボ169を含む。ジュークシステム120は、ドライブ118、光ディスク119、ジュークシステム120、ディスクスロット121、およびピッカー122からなるシステムを制御する。ジュークサーボ169は、ジュークボックス145を駆動する。
ジュークボックス145は、ドライブ118、光ディスク119、ディスクスロット121、およびピッカー122からなる。
なお、コンテンツデータベース161、ストアデータベース166、およびボリウムデータベース168のそれぞれに記録されているデータを、1つのデータベースに記録するようにしてもよい。
また、図6で示されるように、コンテンツの拡張属性として、キャッシュファイルにおけるコンテンツの部分についての領域情報、コンテンツのどの部分をキャッシュファイルとしてHDD116に記録するかのヒントを示すヒント情報、およびキャッシュファイルIDがマイグレーションファイルシステム164に記録される。
なお、コンテンツの拡張属性は、オペレーティングシステムのファイルシステムにより記録および読み出しをするようにしてもよく、また、コンテンツデータベース161に記録するようにしてもよい。
より詳細には、領域情報は、キャッシュファイルにおけるコンテンツの部分についての、コンテンツのデータの先頭からその部分の先頭までのオフセット値(バイト)を示すオフセット、コンテンツの部分のデータ量を示すサイズ、並びに、詳細は後述するが、コンテンツの部分がストア済みであるかまたはホール状態であるかを示すフラグ、およびコンテンツの部分がその前のコンテンツの部分と同じ光ディスク119に記録されているか否かを示すスパンを含む。また、ヒント情報は、コンテンツのどの部分をキャッシュファイルとしてHDD116に記録するかを示し、コンテンツのデータの先頭からその部分の先頭までのオフセット値(バイト)を示すヒントオフセット、コンテンツの部分のデータ量を示すヒントサイズ、詳細は後述するが、部分の属性を示すリージョンフラッグス、および、この部分をマイグレーションする場合の優先順位を示すヒントプライオリティなどからなる。
さらに、図6で示されるように、コンテンツを格納するファイルの属性として、読み出し専用(リードオンリ)または読み書き(リードライト)可能であるかを示す情報がファイルシステムによって記録される。
次に、図7乃至図10を参照して、HDD116に記録されるキャッシュファイルおよびキャッシュファイルを用いたコンテンツのデータの読み出しについて説明する。
図7は、HDD116に記録されるキャッシュファイルの状態を説明する図である。ビデオ/オーディオエンコーダ111によって、符号化され、ストリームエンコーダ112によって、多重化された、ストリーム(コンテンツ)は、キャッシュファイルとしてHDD116(のキャッシュ領域)に書き込まれる。図7で示されるように、入力された所定のストリーム(コンテンツ)の全体のデータが記録されたキャッシュファイルの状態を、レギュラー状態と称する。
ジュークボックス145の空き時間において実行される、HDD116に記録されているレギュラー状態のキャッシュファイルを光ディスク119に書き込むシャドウド化によって、所定のコンテンツの全体のデータは、HDD116に記録されると共に、光ディスク119にも記録される。所定のコンテンツの全体のデータがHDD116に記録されると共に光ディスク119に記録されている場合の、キャッシュファイルの状態をビットファイル状態と称する。
なお、シャドウド化の処理が実行される場合、シャドウド化の処理によって、光ディスク119に書き込まれたキャッシュファイルのキャッシュファイル名、キャッシュファイルID、またはファイルサイズなどがストアデータベース166に格納される。
キャッシュファイルがレギュラー状態またはビットファイル状態である場合、言い換えれば、ストリームの全体、すなわち、コンテンツのデータの全体がHDD116に記録されている場合、コンテンツのデータの全体は、HDD116から読み出されるので、高速に、そのコンテンツのデータを読み出すことができる。しかし、キャッシュファイルがレギュラー状態またはビットファイル状態である場合、キャッシュファイルのデータ量が多いので、多数のコンテンツについて、レギュラー状態またはビットファイル状態のキャッシュファイルをHDD116に記録していると、HDD116の記録領域の消費量が大きくなり、HDD116がすぐに一杯になってしまう(HDD116の全ての記録領域にデータが記録された状態になってしまう)。
そこで、例えば、キャッシュファイルがHDD116に記録されてからの経過時間を参照して、古いキャッシュファイルから順に、コンテンツの全体のデータを光ディスク119に記録させて、HDD116に記録しているキャッシュファイルのデータ量を小さくすることで、HDD116に記録されるキャッシュファイルのデータ量の総量を一定の範囲内に納めることができる。
図7で示されるように、所定のコンテンツの全体のデータが記録されていないが、そのコンテンツのデータの所定の部分が記録されたキャッシュファイルの状態を、スタブファイル状態と称する。特に、コンテンツのデータの所定の部分であって、複数の部分が記録されたキャッシュファイルの状態を、マルチスタブ状態と称する。キャッシュファイルからコンテンツのデータの全てを無くし、コンテンツの拡張属性およびキャッシュファイルIDだけをHDD116に記録している状態を、例外的に、ゼロスタブ状態と称する。
コンテンツの全体のデータが記録されている光ディスク119から、所定のコンテンツのデータを読み出して、読み出したデータをHDD116に記録することをリロードと称する。例えば、光ディスク119から、コンテンツのデータを読み出して、HDD116にコンテンツの全体のデータを記録することができる。
図8で示されるように、アプリケーションプログラム141から取得された入力画像信号および音声信号に対応するデータがHDD116に記録され、さらに、HDD116に記録されたデータがドライブ118に装着された光ディスク119に記録される。このデータを読み出す場合には、HDD116からデータが読み出されるか、または装着された光ディスク119からドライブ118によってデータが読み出される。光ディスク119からドライブ118によって読み出されたデータは、一旦、HDD116に記録されて、HDD116からアプリケーションプログラム141に読み出される。
より具体的には、データを読み出す場合には、図9で示されるように、ドライブ118に装着された光ディスク119からドライブ118によってデータが読み出され、バッファ117に一時的に記憶される。バッファ117に一時的に記憶されたデータは、HDD116に供給され、HDD116によって記録される。
HDD116に予め記録されているデータ(後述するスタブ領域のデータ)はバッファ115に読み出されて、バッファ115に一時的に記憶される。同様に、データの読み出しの要求に応じて、バッファ117を介して光ディスク119から読み出されて、HDD116に記録されたデータ(後述するホール領域のデータ)も、バッファ115に読み出されて、バッファ115に一時的に記憶される。
アプリケーションプログラム141は、バッファ115に一時的に記憶されたデータを読み出して、出力画像信号および音声信号を出力する。
HDD116に記録される、ビットファイル状態のキャッシュファイルには、コンテンツの全体のデータが格納され、スタブ状態のキャッシュファイルには、コンテンツの部分のデータが格納される。
スタブデータで再生されるコンテンツの時間の長さは、ディスクスロット121に格納されている光ディスク119をディスクスロット121から取り出してドライブ118に装着し、ドライブ118が装着された光ディスク119からコンテンツのデータを読み出すまでに必要な時間より長く、例えば、20秒から30秒程度とされる。
ここで、スタブとは、キャッシュファイルとして、HDD116のキャッシュ領域に記録されているデータに対応するコンテンツの部分をいう。スタブ領域とは、スタブデータがHDD116に記録されているコンテンツ上の領域、すなわち、スタブの領域をいう。ホール領域とは、スタブデータがHDD116に記録されていないコンテンツ上の領域をいう。
スタブ領域およびホール領域を区別しない場合、単に領域と称する。
図10を参照して、領域および拡張属性における領域情報について説明する。図10で示す例において、コンテンツのデータの先頭に、スタブ領域が配置され、そのスタブ領域に続いて、ホール領域が配置されている。また、そのホール領域に続いて、スタブ領域が配置され、さらに、そのスタブ領域に続いて、ホール領域が配置されている。言い換えれば、コンテンツの先頭の部分のデータであるスタブデータは、HDD116のキャッシュファイルに記録され(ストア済みとされ)、コンテンツの先頭のその部分に続く領域であって、所定の長さの領域のデータは、HDD116のキャッシュファイルに記録されていない(ホール状態とされる)。また、そのホール状態の領域に続く、コンテンツの所定の部分のデータであるスタブデータは、HDD116のキャッシュファイルに記録され(ストア済みとされ)、その部分に続く領域であって、所定の長さの領域のデータは、HDD116のキャッシュファイルに記録されていない(ホール状態とされる)。すなわち、コンテンツの部分のデータがHDD116のキャッシュファイルに記録されている領域と、記録されていない領域とが交互に配置される。
領域情報は、領域それぞれの、領域番号、オフセット、サイズ、およびフラグを含む。領域番号は、ファイルの先頭から0乃至N(整数)の連続した値をとる。すなわち、領域番号は、0を初期値として、コンテンツのデータの先頭から順に、領域のそれぞれに付加される整数の通し番号である。オフセットは、ファイルの先頭(コンテンツのデータの先頭)からその領域の先頭までのオフセット値を示す。オフセットは、例えば、バイトを単位とする。サイズは、その領域のデータのデータ量を示す。サイズは、例えば、バイトを単位とする。フラグは、スタブ領域(ストア済み)であるかまたはホール領域(ホール状態)であるかを示す。例えば、1であるフラグは、スタブ領域(ストア済み)であることを示し、0であるフラグは、ホール領域(ホール状態)であることを示す。
例えば、コンテンツのデータの先頭のスタブ領域は、コンテンツのデータの先頭に位置し、この領域のデータ量が150バイトであり、スタブ領域(ストア済み)なので、コンテンツのデータの先頭のスタブ領域には、0である領域番号、0であるオフセット、150であるサイズ、および1であるフラグが付加される。コンテンツのデータにおける先頭から2番目の領域は、この領域の本来のデータ量が800バイトであり、ホール領域(ホール状態)なので、この領域には、1である領域番号、150であるオフセット、800であるサイズ、および0であるフラグが付加される。
同様に、コンテンツのデータにおける先頭から3番目の領域は、この領域のデータ量が150バイトであり、スタブ領域(ストア済み)なので、この領域には、2である領域番号、950(150+800)であるオフセット、150であるサイズ、および1であるフラグが付加される。コンテンツのデータにおける先頭から4番目の領域は、この領域の本来のデータ量が1400バイトであり、ホール領域(ホール状態)なので、この領域には、3である領域番号、1100(950+150)であるオフセット、1400であるサイズ、および0であるフラグが付加される。
このように、コンテンツの拡張属性における領域情報は、キャッシュファイルにおける各領域の状態を示す。領域情報を参照することにより、キャッシュファイルにおける領域の状態を知ることができる。
次に、コンテンツのデータの全体が、複数の光ディスク119にまたがって記録されている場合について説明する。
図11は、3つのコンテンツの全体のデータが、3枚の光ディスク119−1乃至光ディスク119−1に記録されている場合の、スタブ状態のキャッシュファイルを説明する図である。1つ目のコンテンツの全体のデータは、光ディスク119−1の記録領域の先頭側に記録されている。1つ目のコンテンツのキャッシュファイルは、スタブ状態とされ、コンテンツの先頭に、スタブ領域が配置されている。すなわち、コンテンツの先頭のデータが、スタブデータとしてキャッシュファイルに記録されている。
2つ目のコンテンツの全体のデータのうち、コンテンツの前の部分のデータは、光ディスク119−1に、1つ目のコンテンツのデータに続いて記録されている。2つ目のコンテンツの全体のデータのうちの、光ディスク119−1に記録されるデータに続くデータは、光ディスク119−2の記録領域の先頭側に記録されている。2つ目のコンテンツのキャッシュファイルは、スタブ状態とされている。2つ目のコンテンツの先頭に、スタブ領域が配置されている。また、光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの部分の先頭に、スタブ領域が配置されている。すなわち、光ディスク119−2の記録領域に記録されている2つ目のコンテンツのデータのうち、先頭のデータが、スタブデータとしてキャッシュファイルに記録されている。
3つ目のコンテンツの全体のデータのうち、コンテンツの前の部分のデータは、光ディスク119−2に、2つ目のコンテンツのデータに続いて記録されている。3つ目のコンテンツの全体のデータのうちの、光ディスク119−2に記録されるデータに続くデータは、光ディスク119−3の記録領域の先頭側に記録されている。3つ目のコンテンツのキャッシュファイルは、スタブ状態とされている。3つ目のコンテンツの先頭に、スタブ領域が配置されている。また、光ディスク119−3に記録されているコンテンツのデータに対応するコンテンツの部分の先頭に、スタブ領域が配置されている。すなわち、光ディスク119−3の記録領域に記録されている3つ目のコンテンツのデータのうち、先頭のデータが、スタブデータとしてキャッシュファイルに記録されている。
このように、1つのコンテンツのデータの全体が、複数の光ディスク119にまたがって記録されている場合、2枚の光ディスク119の記録領域の境界の近傍に記録されるコンテンツのデータに対応する領域は、スタブ領域とされる。すなわち、2枚の光ディスク119の記録領域の境界の近傍に記録されるコンテンツのデータは、スタブデータとして、キャッシュファイルに記録される(HDD116に記録される)。
このようにすることで、複数の光ディスク119にまたがって記録されているコンテンツのデータを読み出す場合、ドライブ118に装着されている光ディスク119を交換するとき(光ディスク119を入れ替えるとき)、スタブデータをHDD116から読み出すことができるので、読み出されるコンテンツのデータが途切れることなく、アプリケーションプログラム141に供給されることになる。従って、コンテンツが途切れることなく、再生されることになる。
図12を参照して、コンテンツのデータの全体が、複数の光ディスク119にまたがって記録されている場合の、領域および拡張属性における領域情報について説明する。
領域情報は、その領域のコンテンツのデータがその前の領域のコンテンツのデータと同じ光ディスク119に記録されているか否かを示すスパンをさらに含む。言い換えれば、スパンは、1つ前の領域のデータが、スパンが付されている領域のデータが記録されている光ディスク119とは別の光ディスク119に記録されているか否かを示す。
0であるスパンは、その領域のコンテンツのデータがその前の領域のコンテンツのデータと同じ光ディスク119に記録されている(1つ前の領域のデータが、スパンが付されている領域のデータを記録している光ディスク119に記録されている)ことを示す。1であるスパンは、その領域のコンテンツのデータがその前の領域のコンテンツのデータと異なる光ディスク119に記録されている(1つ前の領域のデータが、スパンが付されている領域のデータを記録している光ディスク119とは別の光ディスク119に記録されている)ことを示す。
図12で示されるコンテンツの全体のデータのうち、コンテンツの前の部分のデータは、光ディスク119−1に記録されている。コンテンツの全体のデータのうちの、光ディスク119−1に記録されているデータに続くデータは、光ディスク119−2に記録されている。
図12で示される例において、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、所定の長さの先頭の領域がスタブ領域とされ、残りの領域がホール領域とされている。すなわち、光ディスク119−1の記録領域に記録されているコンテンツのデータのうち、先頭の部分のデータが、スタブデータとしてキャッシュファイルに記録され、その先頭の部分より後のデータは、キャッシュファイルには記録されていない。また、光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域のうち、所定の長さの先頭の領域がスタブ領域とされ、残りの領域がホール領域とされている。
光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうちのスタブ領域は、コンテンツの先頭に位置し、この領域のデータ量が30バイトなので、このスタブ領域には、0である領域番号、0であるオフセット、30であるサイズ、および1であるフラグが付加される。コンテンツの先頭に位置する領域については、0であるスパンが付加される。
光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうちのホール領域は、このホール領域のデータが前のスタブ領域のデータと同じ光ディスク119−1に記録され、コンテンツにおける先頭から2番目の領域であり、この領域の本来のデータ量が170バイトなので、このホール領域には、1である領域番号、30であるオフセット、170であるサイズ、0であるフラグ、および0であるスパンが付加される。
光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域のうちのスタブ領域は、このスタブ領域のデータが光ディスク119−2に記録され、1である領域番号が付された前のホール領域のデータが光ディスク119−1に記録されており、コンテンツにおける3番目の領域であり、この領域のデータ量が30バイトなので、このスタブ領域には、2である領域番号、200であるオフセット、30であるサイズ、1であるフラグ、および1であるスパンが付加される。光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域のうちのホール領域は、このホール領域のデータが前のスタブ領域のデータと同じ光ディスク119−2に記録され、コンテンツのデータにおける先頭から4番目の領域であり、この領域の本来のデータ量が140バイトなので、このホール領域には、3である領域番号、230であるオフセット、140であるサイズ、0であるフラグ、および0であるスパンが付加される。
2である領域番号が付加されたスタブ領域のスタブデータは、光ディスク119の交換に要する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされる。ここで、光ディスク119の交換に要する期間とは、例えば、光ディスク119−1からのコンテンツのデータの読み出しが終了してから、ドライブ118から排出された光ディスク119−1を搬送して、ディスクスロット121に格納させて、ディスクスロット121に格納されている光ディスク119−2を搬送して、ドライブ118に装着させ、光ディスク119−2からデータの読み出しができるようになるまでをいう。
すなわち、例えば、光ディスク119の記録領域の境界の近傍に記録されるコンテンツのデータに対応するスタブ領域のスタブデータは、光ディスク119−1からのデータの読み出しと光ディスク119−2からのデータの読み出しとを切り替える期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされる。
なお、このスタブ領域は、光ディスク119の交換の後にデータが読み出される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置しても、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置してもよい。
図13を参照して、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応するスタブ領域を示す図である。図13で示されるコンテンツの全体のデータのうち、コンテンツの前の部分のデータは、光ディスク119−1に記録されている。コンテンツの全体のデータのうちの、光ディスク119−1に記録されるデータに続くデータは、光ディスク119−2に記録されている。
図13で示される例において、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、所定の長さの先頭の領域がスタブ領域とされ、また、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、所定の長さの最後の領域がスタブ領域とされている。光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、残りの領域がホール領域とされている。また、光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域はホール領域とされている。
光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの先頭の領域であるスタブ領域は、コンテンツにおける最初の領域であり、この領域のデータ量が30バイトなので、このスタブ領域には、0である領域番号、0であるオフセット、30であるサイズ、1であるフラグ、および0であるスパンが付加される。光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうちのホール領域は、このホール領域のデータが前のスタブ領域のデータと同じ光ディスク119−1に記録され、コンテンツにおける先頭から2番目の領域であり、この領域の本来のデータ量が140バイトなので、このホール領域には、1である領域番号、30であるオフセット、140であるサイズ、0であるフラグ、および0であるスパンが付加される。
光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうちの最後の領域であるスタブ領域は、このスタブ領域のデータが前のホール領域のデータと同じ光ディスク119−1に記録され、コンテンツにおける先頭から3番目の領域であり、この領域のデータ量が30バイトなので、このスタブ領域には、2である領域番号、170であるオフセット、30であるサイズ、1であるフラグ、および0であるスパンが付加される。
光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域は、ホール領域であり、このホール領域のデータが光ディスク119−2に記録され、2である領域番号が付された前のスタブ領域のデータが光ディスク119−1に記録されており、コンテンツにおける先頭から4番目の領域であり、この領域の本来のデータ量が170バイトなので、このホール領域には、3である領域番号、200であるオフセット、170であるサイズ、0であるフラグ、および1であるスタブが付加される。
2である領域番号のスタブ領域のスタブデータは、光ディスク119−1からのホール領域のコンテンツのデータの読み出しが終了してから、光ディスク119−1からのデータの読み出しと光ディスク119−2からのデータの読み出しとを切り替える期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされる。
次に、図14および図15を参照して、ディスク119の記録領域の境界の近傍に記録されるコンテンツのデータに対応するスタブ領域のスタブデータのデータ量について説明する。
図14および図15において、データ量Dsは、MB(megabyte)を単位とする、次の光ディスク119(光ディスク119−2)への交換が実行されるコンテンツ上の位置に最も近い位置にある(最後の)スタブ領域のデータ量(スタブデータのデータ量)を示す。
例えば、図14で示されるように、データ量Ds1は、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、先頭に配置されたスタブ領域のデータ量を示す。データ量Ds2は、光ディスク119−2に記録されているコンテンツのデータに対応するコンテンツの領域のうち、先頭に配置されたスタブ領域のデータ量を示す。
データ量Dxは、MBを単位とする、光ディスク119の交換時間を補うため、すなわち、光ディスク119の交換に要する時間において継続してコンテンツのデータを読み出すためのスタブ領域のデータ量(スパン用のスタブデータのデータ量)を示す。例えば、図15で示されるように、データ量Dxは、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、最後に配置されたスタブ領域であって、光ディスク119−1から光ディスク199−2への交換に要する時間において継続してコンテンツのデータを読み出すためのスタブ領域のデータ量(スパン用のスタブデータのデータ量)を示す。
読み出しレートVcは、固定レートの平均値MB/s(megabyte/second)を単位とする、コンテンツのデータの通常の読み出しの速度を示す。読み出しレートVcは、アプリケーションプログラム141によるデータの読み出し速度とも言える。リロードレートRdは、MB/sを単位とする、光ディスク119から読み出したデータをHDD116に書き込む速度、すなわち、リロードの速度を示す。
時間tmountは、光ディスク119のドライブ118へのマウント(装着)を指示してから、光ディスク119をドライブ118にマウントして、光ディスク119からデータを読み出すことができる状態になるまでに要する時間を示す。時間tchangeは、ドライブ118にマウントされている光ディスク119の入れ替えを指示してから、ドライブ118にマウントされている光ディスク119を入れ替えて、入れ替えた後の光ディスク119からデータを読み出すことができる状態になるまでに要する時間を示す。
データ量Daは、MBを単位とする、光ディスク119の交換の前にデータが読み出される光ディスク119に記録されているコンテンツのデータに対応する領域のうちの最後のホール領域のデータ量を示す。
時間Taは、光ディスク119の交換の前にデータが読み出される光ディスク119に記録されているコンテンツのデータを、光ディスク119からHDD116に書き込む時間、すなわち、リロードに要する時間であり、Da/Rdで求められる。
時間Trは、コンテンツのデータの読み出しの開始が指示されてから、交換された光ディスク119からデータの読み出しができるようになるまでの時間を示す。換言すれば、時間Trは、コンテンツのデータの読み出しの開始が指示されてから、交換された光ディスク119からデータの読み出しができるようになるまで、HDD116からアプリケーションプログラム141にデータが継続して読み出される時間である。時間Trは、(Da+Ds1+Ds2)/Vcまたは(Da+Ds+Dx)/Vcで求められる。
以上を前提として、光ディスク119−1に記録されているコンテンツのデータに対応するコンテンツの領域のうち、最後に配置されたスタブ領域のデータ量Dxであって、光ディスク119の交換に要する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量Dxを求めると次のようになる。
アプリケーションプログラム141へのコンテンツのデータの供給が途切れないようにするには、式(1)を満足する必要がある。
Tr>Ta+tmount+tchange ・・・(1)
式(1)は、式(2)に変形することができる。
(Da+Ds+Dx)/Vc>Da/Rd+(tmount+tchange) ・・・(2)
読み出しレートVcに対してk倍の速度(平均速度)で光ディスク119からデータを読み出すとすると、Rd=k×Vcとなるので、式(3)が成立する。
Ds+Dx>(tmount+tchange)×Vc−Da(1−1/k) ・・・(3)
ここで、Ds=tmount×Vcとすると、データ量Dxを計算するための式(4)が得られる。
Dx=tchange×Vc−Da(1−1/k) ・・・(4)
同様に、データ量Ds2は、式(5)によって求めることができる。
Ds2=tchange×Vc−Da(1−1/k) ・・・(5)
このように、光ディスク119の記録領域の境界の近傍に記録されるコンテンツのデータに対応するスタブ領域のスタブデータを、適切なデータ量とすることで、光ディスク119を交換しても、アプリケーションプログラム141に供給されるデータが途切れることがなくなる。
ここで、図16に、HD画像データである24Mbpsの画像データまたはSD画像データである8Mbpsの画像データを記録して、読み出す場合の、データ量Dxの例を示す。
時間tchangeは30秒とし、時間tmountは30秒とする。
HD画像データにおいて、読み出しレートVcは、3MB/sであり、データ量Dsは90MBとし、データ量Daは90MBとする。
この場合において、光ディスク119からのデータの読み出しの速度の倍数kが1.2であるとき、データ量Dxは、75MBとなる。同様に、倍数kが1.5であるとき、データ量Dxは、60MBとなり、倍数kが2であるとき、データ量Dxは、45MBとなり、倍数kが2.5であるとき、データ量Dxは、36MBとなる。また、倍数kが3であるとき、データ量Dxは、30MBとなり、倍数kが4であるとき、データ量Dxは、22.5MBとなる。
SD画像データにおいて、読み出しレートVcは、1MB/sであり、データ量Dsは30MBとし、データ量Daは30MBとする。
この場合において、光ディスク119からのデータの読み出しの速度の倍数kが1.2であるとき、データ量Dxは、25MBとなる。同様に、倍数kが1.5であるとき、データ量Dxは、20MBとなり、倍数kが2であるとき、データ量Dxは、15MBとなり、倍数kが2.5であるとき、データ量Dxは、12MBとなる。また、倍数kが3であるとき、データ量Dxは、10MBとなり、倍数kが4であるとき、データ量Dxは、7.5MBとなる。
これからわかるように、光ディスク119からのデータの読み出しの速度が速いほど、データ量Dxを小さくすることができる。
例えば、マイグレーションファイルシステム164は、スタブデータの必要なデータ量として、このような、データ量Dxを計算する。
例えば、記録再生システム101において、読み出しの速度がそれぞれ異なる、複数の種類の光ディスク119が用いられる場合、それぞれの光ディスク119の読み出しの速度などを考慮したスタブデータの必要なデータ量が計算される。その結果、不要に大きなスタブデータがHDD116に記録されることがなくなる。
つぎに、図17のフローチャートを参照して、アプリケーションプログラム141からコンテンツのデータの書き込みが指示された場合に実行される、コンテンツのデータの書き込みの処理を説明する。ステップS51において、ストレージマネージャ114は、HSM113に、アプリケーションプログラム141から供給されるコンテンツのデータの書き込みを指示する。HSM113は、HDD116に、アプリケーションプログラム141から供給されたコンテンツのデータを書き込む。
シャドウド化が要求されると、HDD116に記録されたコンテンツのデータが、光ディスク119にも記録される。
すなわち、ステップS52において、HSM113は、コンテンツのデータを書き込む光ディスク119を特定する。例えば、ストレージサーバ165は、ストアデータベース166から、記録領域の空いている光ディスク119を特定するボリウムIDを読み出し、HSM113は、読み出したボリウムIDで特定される光ディスク119を、コンテンツのデータを書き込む光ディスク119とする。
ストレージサーバ165は、メディアサーバ167に、ボリウムIDで特定される光ディスク119が格納されているディスクスロット121の特定を要求する。メディアサーバ167は、ボリウムデータベース168に、ジュークボックス145の各ディスクスロット121に格納されている光ディスク119を特定するボリウムIDのうち、ストレージサーバ165からの要求に含まれているボリウムIDと一致するボリウムIDを検索させる。ボリウムデータベース168が、ストレージサーバ165からの要求に含まれているボリウムIDで特定される光ディスク119が格納されているディスクスロット121を示す情報を出力してくるので、メディアサーバ167は、ディスクスロット121を示す情報をストレージサーバ165に供給する。これにより、ストレージサーバ165は、コンテンツのデータを書き込む光ディスク119である、ボリウムIDで特定される光ディスク119が格納されているディスクスロット121を特定する。
ステップS53において、HSM113は、ディスクスロット121に格納されている光ディスク119を、ピッカー122によって搬送させ、ドライブ118に装着させる。
これを詳細に説明すれば、ストレージサーバ165は、メディアサーバ167に、特定されたディスクスロット121に格納されている光ディスク119のドライブ118への装着を指示する。メディアサーバ167は、チェンジャドライバ143を介して、ジュークシステム120に、特定されたディスクスロット121に格納されている光ディスク119をドライブ118に装着させる。すなわち、ジュークシステム120の制御の基に、ジュークボックス145のピッカー122は、特定されたディスクスロット121から、光ディスク119を取り出して、搬送し、その光ディスク119をドライブ118に装着(マウント)させる。
ステップS54において、HSM113は、HDD116に記録されているコンテンツのデータの、ドライブ118に装着されている光ディスク119への書き込みを開始させる。また、このとき、ストレージサーバ165は、ストアデータベース166に、コンテンツのデータを書き込んでいる光ディスク119のボリウムIDおよびデータの先頭位置などを記録する。
ステップS55において、HSM113は、コンテンツのデータのすべてを、ドライブ118に装着されている光ディスク119に書き込んだか否かを判定する。ステップS55において、コンテンツのデータのすべてを、ドライブ118に装着されている光ディスク119に書き込んでいないと判定された場合、ステップS56に進み、HSM113は、ドライブ118に装着されている光ディスク119に、空き領域があるか否かを判定する。
ステップS56において、空き領域があると判定された場合、ドライブ118に装着されている光ディスク119に、さらにコンテンツのデータを書き込むことができるので、光ディスク119へのコンテンツのデータの書き込みを継続して、ステップS55に戻り、判定の処理を繰り返す。
ステップS56において、ドライブ118に装着されている光ディスク119に、空き領域がないと判定された場合、コンテンツのデータが、ドライブ118に装着されている光ディスク119にはいりきらず、光ディスク119を交換して、次の光ディスク119にコンテンツのデータを書き込む必要があるので、ステップS57に進み、HSM113は、ステップS52と同様の処理で、コンテンツのデータを書き込む、次の光ディスク119を特定する。このとき、ストレージサーバ165は、ストアデータベース166に、コンテンツのデータの書き込みを終了した光ディスク119に記録されたコンテンツのデータのサイズ(データ量)を記録する。
ステップS58において、HSM113は、光ディスク119へのデータの書き込みを中断させて、ドライブ118に装着されている光ディスク119を、ピッカー122によって搬送させ、ディスクスロット121に戻させる。
これを詳細に説明すれば、ストレージサーバ165は、メディアサーバ167に、ドライブ118に装着されている光ディスク119の、ステップS52の処理で特定されたディスクスロット121への格納を指示する。ジュークシステム120の制御の基に、ジュークボックス145のピッカー122は、ドライブ118から排出された光ディスクを搬送して、特定されたディスクスロット121に格納させる。
ステップS59において、HSM113は、ステップS53と同様の処理で、次の光ディスク119を、ディスクスロット121からピッカー122によって搬送させ、ドライブ118に装着させる。ステップS60において、HSM113のマイグレーションファイルシステム164は、スタブデータの必要なデータ量を計算する。例えば、ステップS60において、マイグレーションファイルシステム164は、コンテンツのデータを読み出す場合に、光ディスク119を交換する期間において、HDD116からコンテンツのデータを継続して読み出すことができるスタブデータのデータ量を、式(4)または式(5)を基に計算する。
ステップS61において、HSM113のマイグレーションファイルシステム164は、コンテンツの拡張属性に、計算した必要なデータ量以上のヒントサイズを含むヒント情報を格納する。なお、この場合、ヒントプライオリティは、最も優先度の高い、例えば、0に設定される。ヒントプライオリティの詳細は後述する。
ステップS61の処理の後、手続きは、ステップS54に戻り、光ディスク119へのコンテンツのデータの書き込みの処理を再開すると共に、判定の処理を繰り返す。
ステップS55において、コンテンツのデータのすべてを、ドライブ118に装着されている光ディスク119に書き込んだと判定された場合、ステップS62に進み、ヒント情報の書き込みの処理が実行される。ヒント情報の書き込みの処理の詳細は後述する。
ステップS63において、HSM113は、マイグレーションの処理の実行が指示されたか否かを判定し、マイグレーションの処理の実行が指示されていないと判定された場合、マイグレーションの処理の実行が指示されるまで、ステップS63の判定の処理を繰り返す。
ステップS63において、マイグレーションの処理の実行が指示されたと判定された場合、ステップS64に進み、スタブファイル状態のキャッシュファイルの生成の処理が実行されて、処理は終了する。スタブファイル状態のキャッシュファイルの生成の処理の詳細は後述する。
このように、1枚の光ディスク119にコンテンツのデータのすべてを記録できない場合には、複数枚の光ディスク119にコンテンツのデータのすべてが記録される。コンテンツのデータが複数枚の光ディスク119に記録された場合には、コンテンツのデータを読み出すときに、光ディスク119を交換する期間において、HDD116からコンテンツのデータを継続して読み出すことができるスタブデータのデータ量が計算される。計算されたデータ量は、マイグレーションファイルシステム164に、ヒント情報のヒントサイズとして格納される。
次に、図18のフローチャートを参照して、ヒント情報の書き込みの処理を説明する。ステップS81において、アプリケーションプログラム141は、コンテンツマネージャ142を介して、コンテンツデータベース161から、コンテンツにおけるインデックスの位置を示すインデックス情報を取得する。インデックスは、シーンの先頭などを示す。ステップS82において、アプリケーションプログラム141は、インデックス情報を基に、インデックスで示されるコンテンツ上の位置を特定する。
ステップS83において、アプリケーションプログラム141は、特定された位置をヒントセクションの開始位置とするヒント情報を生成する。ヒントセクションは、ヒント情報で示される、コンテンツにおける部分(範囲)である。
ヒント情報は、コンテンツのどの部分をキャッシュファイルとしてHDD116に記録するかのヒントを示す情報である。コンテンツ(コンテンツのデータ)にヒント情報を付与することで、コンテンツのデータのうち、任意の部分のデータをスタブデータとしてHDD116のキャッシュ領域に記録することができる。すなわち、コンテンツのデータのうち、ヒント情報で示される部分のデータがスタブデータとしてキャッシュファイルに格納されてHDD116に記録される。また、ヒント情報を参照することにより、段階的なマイグレーションの処理を実行することができる。
ヒント情報は、バージョンナンバ、ヒントセクションレングス、ヒントオフセット、ヒントサイズ、リージョンフラッグス、ヒントプライオリティ、およびタイムスタンプからなる。1つのヒント情報に、1つのバージョンナンバおよび1つのヒントセクションレングスが配置される。1つのヒント情報に、ヒントセクションの数に応じた、ヒントオフセット、ヒントサイズ、リージョンフラッグス、ヒントプライオリティ、およびタイムスタンプが配置される。すなわち、1組のヒントオフセット、ヒントサイズ、リージョンフラッグス、ヒントプライオリティ、およびタイムスタンプは、1つの領域の情報を示す。
バージョンナンバは、ヒント情報のバージョンを示し、システムおよびソフトウェアの互換性を保つために利用される。ヒントセクションレングスは、このヒント情報で示される全てのヒントセクションのデータ量の合計を示す。1つのヒントセクションのデータ量を一定とすれば、ヒントセクションレングスを、1つのヒントセクションのデータ量で割り算することにより、ヒントセクションの数を求めることができる。
ヒントオフセットは、それぞれのヒントセクションの開始位置を、コンテンツのデータの先頭からのオフセットで示す。例えば、ヒントオフセットの単位は、データ量(バイトなど)とされる。ヒントサイズは、ヒントセクションのデータ量を示す。ヒントサイズの単位は、例えば、バイトとされる。
リージョンフラッグスは、それぞれのヒントセクションについて、インデックスに対応するヒントセクションであるか、盛り上がりシーンに対応するヒントセクションであるか、または重要シーンに対応するヒントセクションであるかなどの属性を示す。オペレーティングシステムなどが、リージョンフラッグスを参照して、アクセスに応じてイベントを発生させることができる。
ヒントプライオリティは、それぞれのヒントセクションをマイグレーションする場合の優先順位を示す。ヒントプライオリティの値が大きいほど、そのヒントセクションに対応する部分のデータがマイグレーションされやすい。ヒントプライオリティに0が設定された場合、そのコンテンツが記録再生システム101から削除されるまで、一次ストレージであるHDD116に、そのヒントセクションに対応する部分のデータがキャッシュされる。アプリケーションプログラム141またはオペレーティングシステムにより、頻繁にアクセスされるコンテンツの部分(データ)に対応するヒントセクションのヒントプライオリティに0を設定するなど、ヒントプライオリティの値を管理することができる。
タイムスタンプは、そのヒントセクションに対応するコンテンツの部分(データ)に最後にアクセスされた日時を示す。タイムスタンプは、アプリケーションプログラム141またはオペレーティングシステムにより設定される。
例えば、アプリケーションプログラム141は、予め定めた値をバージョンナンバに設定する。
例えば、アプリケーションプログラム141は、ステップS82の処理で特定された、コンテンツの再生における時刻であるコンテンツ上の位置から、コンテンツのデータの先頭からその位置までのデータ量を求める。アプリケーションプログラム141は、そのデータ量をヒントオフセットとする。また、例えば、アプリケーションプログラム141は、予め定めた値をヒントサイズとする。さらに、例えば、アプリケーションプログラム141は、インデックスに対応することを示す所定の値をリージョンフラッグスとする。
さらにまた、アプリケーションプログラム141は、予め定めた値をヒントプライオリティに設定する。例えば、アプリケーションプログラム141は、コンテンツの最初のインデックスについては0、その他のインデックスについては1である値をヒントプライオリティに設定する。アプリケーションプログラム141は、最後にアクセスされた日時をタイムスタンプとする。
また、アプリケーションプログラム141は、ヒントセクションの数にヒントサイズを掛け算して得られた値をヒントセクションレングスとする。
アプリケーションプログラム141は、このように生成したバージョンナンバ、ヒントセクションレングス、ヒントオフセット、ヒントサイズ、リージョンフラッグス、ヒントプライオリティ、およびタイムスタンプを所定の順序で配置することによりヒント情報を生成する。
ステップS84において、アプリケーションプログラム141は、ストレージマネージャ114を介して、HSM113のマイグレーションファイルシステム164に記録されているコンテンツの拡張属性に、ヒント情報を格納させる。
ステップS85において、アプリケーションプログラム141は、コンテンツマネージャ142に問い合わせた結果を基に、コンテンツデータベース161に盛り上がりシーンを示す情報があるか否かを判定する。ステップS85において、盛り上がりシーンを示す情報があると判定された場合、ステップS86に進み、アプリケーションプログラム141は、コンテンツマネージャ142を介して、コンテンツデータベース161から盛り上がりシーンを示す情報を取得する。
ステップS87において、アプリケーションプログラム141は、盛り上がりシーンを示す情報を基に、コンテンツ上の盛り上がりシーンの先頭の位置を特定する。例えば、アプリケーションプログラム141は、盛り上がりシーンを示す情報を基に、コンテンツの再生における時刻で決まる、盛り上がりシーンの先頭の位置を特定する。
ステップS88において、アプリケーションプログラム141は、盛り上がりシーンの先頭の位置をヒントセクションの開始位置とするヒント情報を生成する。ステップS89において、アプリケーションプログラム141は、ストレージマネージャ114を介して、HSM113のマイグレーションファイルシステム164に記録されているコンテンツの拡張属性に、ヒント情報を格納させ、処理は終了する。
ステップS85において、盛り上がりシーンを示す情報がないと判定された場合、ステップS86乃至ステップS89の処理はスキップされて、処理は終了する。
このように、コンテンツのデータを読み出す場合に、光ディスク119を交換する期間において、HDD116からコンテンツのデータを継続して読み出すことができるスタブデータのデータ量を示すヒント情報に加えて、インデックス情報または盛り上がりシーンを示す情報を基に、ヒント情報が生成されて、記録される。コンテンツ(コンテンツのデータ)にヒント情報を付与することで、コンテンツのデータのうち、任意の部分のデータ、例えば、インデックスで示される位置のデータや盛り上がりシーンのデータをスタブデータとしてHDD116にキャッシュさせ、コンテンツのデータの読み出しをより迅速に行うことができるようになる。
なお、ヒント情報は、インデックス情報または盛り上がりシーンを示す情報に限らず、重要シーンを示す情報またはプレイリスト情報などユーザが所望する他の情報を基に生成するようにしてもよい。
このように記録されたヒント情報を参照して、段階的なマイグレーションの処理を行うことができる。
なお、ヒント情報には、使用者からの操作に応じた値が直接設定されるようにしてもよく、また、アプリケーションプログラム141に限らず、オペレーティングシステムなどの他のプログラムによって書き込まれるようにしてもよい。
図19は、スタブファイル状態のキャッシュファイルの生成の処理を説明するフローチャートである。ステップS101において、ストレージマネージャ114は、HSM113のマイグレーションファイルシステム164からコンテンツの拡張属性を読み出して、コンテンツの拡張属性にヒント情報があるか否かを判定する。ステップS101において、ヒント情報があると判定された場合、ステップS102に進み、ストレージマネージャ114は、HSM113のマイグレーションファイルシステム164からコンテンツの拡張属性を読み出して、読み出したコンテンツの拡張属性からヒント情報を抽出する。そして、ストレージマネージャ114は、ヒント情報のうちの、全てのヒントセクションのデータ量の合計を示すヒントセクションレングスを取得する。
ステップS103において、ストレージマネージャ114は、ヒントセクションレングスを1つのヒントセクションのデータ量で割り算することによりヒントセクションの数を算出する。
なお、ストレージマネージャ114は、個々のヒント情報を読み出して、ヒント情報の数からヒントセクションの数を求めるようにしてもよい。
ストレージマネージャ114は、ステップS104およびステップS112において、それぞれのヒントセクションについてステップS105乃至ステップS111の処理を実行し、ステップS104乃至ステップS112の処理をヒントセクションの数だけ繰り返すようにループ制御の処理を実行する。
ステップS105において、ストレージマネージャ114は、ヒント情報から、所定のヒントセクションの開始位置を示すヒントオフセットを取得する。ステップS106において、ストレージマネージャ114は、ヒント情報から、そのヒントセクションのデータ量を示すヒントサイズを取得する。ステップS107において、ストレージマネージャ114は、ヒント情報から、そのヒントセクションの優先順位を示すヒントプライオリティを取得する。
ステップS108において、ストレージマネージャ114は、ヒント情報が設定されていない領域を、HDD116に記録されているキャッシュファイル上から削除するホール領域に設定する。
ステップS109において、ストレージマネージャ114は、ヒントプライオリティが設定されているマイグレーションレベル以下であるか否かを判定する。ステップS109において、ヒントプライオリティが設定されているマイグレーションレベル以下であると判定された場合、ステップS110に進み、ストレージマネージャ114は、そのヒントプライオリティが設定されているヒントセクションをスタブ領域(キャッシュする領域)に設定する。
マイグレーションレベルは、ヒントセクションをキャッシュするか否かを決める基準である。例えば、ストレージマネージャ114は、予め定めたマイグレーションレベルを記憶しておくか、または、ファイル属性に含まれるコンテンツが最後にアクセスされた日時を基に、マイグレーションレベルを決定する。また、ストレージマネージャ114は、使用者の操作に応じてアプリケーションプログラム141から供給されるマイグレーションレベルを基に判定の処理を行うようにしてもよい。
一方、ステップS109において、ヒントプライオリティが設定されているマイグレーションレベル以下でない判定された場合、ステップS111に進み、ストレージマネージャ114は、そのヒントプライオリティが設定されているヒントセクションをキャッシュファイル上から削除するホール領域に設定する。
それぞれのヒントセクションについてステップS105乃至ステップS111の処理が実行され、それぞれのヒントセクションを包括する領域は、スタブ領域に設定されるか、またはホール領域に設定されることになる。なお、ヒント情報が設定されていない領域はホール領域に設定される。
ステップS104乃至ステップS112の処理がヒントセクションの数だけ繰り返された後、手続きは、ステップS114に進む。
ステップS101において、コンテンツの拡張属性にヒント情報がないと判定された場合、ステップS113に進み、ストレージマネージャ114は、初期設定に従って、ファイル内部領域を設定する。すなわち、ステップS113において、ストレージマネージャ114は、初期設定に従って、コンテンツの領域を、スタブ領域か、ホール領域かに設定し、ステップS114に進む。
ステップS114において、ストレージマネージャ114は、ホール領域のデータがキャッシュファイルに記録されているか否か、すなわち、ホール領域のデータがキャッシュされているか否かを判定し、ホール領域のデータがキャッシュされていると判定された場合、ステップS115に進み、HSM113に、ホール領域のデータをキャッシュファイルから削除(消去)させる。HSM113は、ストレージマネージャ114の制御に基づいて、HDD116のキャッシュファイルからホール領域のデータを消去させる。その後、手続きは、ステップS116に進む。
ステップS114において、ホール領域のデータがキャッシュされていないと判定された場合、キャッシュファイルからデータを削除する処理を実行する必要がないので、ステップS115の処理はスキップされ、手続きは、ステップS116に進む。
ステップS116において、ストレージマネージャ114は、スタブ領域のデータがキャッシュファイルに記録されていないか否か、すなわち、スタブ領域のデータがキャッシュされていないか否かを判定し、スタブ領域のデータがキャッシュされていないと判定された場合、ステップS117に進み、HSM113に、スタブ領域のデータをキャッシュファイルにリロードさせる。HSM113は、ストレージマネージャ114の制御に基づいて、コンテンツの全体のデータを記録している光ディスク119をドライブ118に装着させる。HSM113は、ドライブ118に、光ディスク119からコンテンツのデータを読み出させて、読み出したコンテンツのデータをHDD116のキャッシュファイルに格納することにより、スタブ領域のデータをリロードする。その後、手続きは、ステップS118に進む。
ステップS116において、スタブ領域のデータがキャッシュされていると判定された場合、スタブ領域のデータをリロードする処理を実行する必要がないので、ステップS117の処理はスキップされ、手続きは、ステップS118に進む。
ステップS118において、ストレージマネージャ114は、HSM113のマイグレーションファイルシステム164に、キャッシュファイルからのデータの消去またはキャッシュファイルへのデータのリロードの結果に対応するように、コンテンツの拡張属性の領域情報を書き換えらせて、処理は終了する。
以上のように、スタブファイル状態のキャッシュファイルが生成される。
このような、スタブファイル状態のキャッシュファイルに、任意の値iのマイグレーションレベルを基にした、スタブファイル状態のキャッシュファイルの生成の処理が適用されると、i以下のヒントプライオリティのヒントセクションに対応した部分からなるスタブファイル状態のキャッシュファイルが生成されることになる。
このように、ヒントプライオリティを基に、段階的なマイグレーションの処理を実行できる。
なお、例えば、コンテンツのデータを読み出す場合に、光ディスク119を交換する期間において、HDD116からコンテンツのデータを継続して読み出すことができるデータ量のスタブデータが記録されるスタブ領域のヒント情報のヒントプライオリティに、0が設定された場合には、そのコンテンツが記録再生システム101から削除されるまで、HDD116に、そのスタブ領域のスタブデータがキャッシュされることになる。
次に、このように生成された、スタブファイル状態のキャッシュファイルを用いた、コンテンツのデータの読み出しの処理を説明する。
図20は、インデックス_nからのデータの読み出しの処理を説明するフローチャートである。ステップS131において、ストレージマネージャ114のファイルI/Oマネージャ163は、データの読み出しを開始するインデックス_nの指定を受け付ける。より詳細には、アプリケーションプログラム141は、使用者の操作に応じた、再生を開始するインデックスの選択を受け付ける。アプリケーションプログラム141は、使用者に選択され、再生を開始するインデックスを指定するデータをファイルI/Oマネージャ163に供給する。ファイルI/Oマネージャ163は、アプリケーションプログラム141からのデータを取得することにより、使用者により選択された、データの読み出しを開始するインデックス_nの指定を受け付ける。ストレージマネージャ114は、インデックス_nからの再生をHSM113に指示する。
ステップS132において、ストレージマネージャ114は、読み出しが指示されたコンテンツの全てのデータがキャッシュファイルとしてHDD116に記録されているか、すなわち、読み出しが指示されたコンテンツの全てのデータがHDD116にストアされているか否かを判定する。ステップS132において、全てのデータがHDD116にストアされていると判定された場合、ステップS133に進み、ストレージマネージャ114は、HSM113に、インデックス_nに対応する位置からコンテンツのデータの読み出しを指示する。HSM113は、HDD116に、インデックス_nに対応する位置から、キャッシュファイルのデータの読み出しを開始させる。ステップS133の処理の後、手続きは、ステップS144に進む。
一方、ステップS132において、全てのデータがHDD116にストアされていないと判定された場合、ステップS134に進み、ストレージマネージャ114は、HSM113に、インデックス_nに対応する位置からコンテンツのデータの読み出しを指示する。HSM113は、HDD116に、HDD116のキャッシュファイルのインデックス_nに対応するスタブ領域の先頭位置からデータの読み出しを開始させる。
これにより、コンテンツが即座に再生されることになる。
ストレージマネージャ114は、HSM113に、光ディスク119からHDD116への該当するコンテンツのデータの読み出し要求であるリロードコマンドを発行する。
ステップS135において、HSM113は、ストアデータベース166に格納されている、コンテンツの全体のデータが記録(保存)されている光ディスク119の枚数を示す情報を基に、コンテンツのデータが複数の光ディスク119に記録されているか否かを判定する。ステップS135において、コンテンツのデータが複数の光ディスク119に記録されていると判定された場合、ステップS136に進み、HSM113は、ストアデータベース166から、対応するキャッシュファイルIDと、それぞれの光ディスク119のボリウムIDを参照する。
ステップS137において、HSM113は、ストアデータベース166から、それぞれの光ディスク119について、記録領域の先頭から、読み出そうとするコンテンツのデータであって、記録されているコンテンツのデータの先頭までのオフセット値を取得する。ステップS138において、HSM113は、ストアデータベース166から、それぞれの光ディスク119について、ストアされていない領域、すなわちホール領域の最後の位置を取得する。例えば、ステップS138において、HSM113は、それぞれの光ディスク119について、読み出そうとするコンテンツのデータであって、その光ディスク119に記録されているデータのうち、HDD116に記録されていないデータの最も後ろの位置を示す、光ディスク119上のアドレスを取得する。
ステップS139において、ストレージサーバ165は、ボリウムデータベース168を基に、最初にデータを読み出す光ディスク119のボリウムIDで特定される光ディスク119が格納されているディスクスロット121を特定する。ステップS139の後、手続きは、ステップS142に進む。
一方、ステップS135において、コンテンツのデータが複数の光ディスク119に記録されていない、すなわち、コンテンツのデータが1枚の光ディスク119に記録されていると判定された場合、ステップS140に進み、HSM113は、ストアデータベース166から、対応するキャッシュファイルIDと、コンテンツのデータが記録されている光ディスク119のボリウムIDを参照する。
ステップS141において、ストレージサーバ165は、ボリウムデータベース168を基に、ボリウムIDで特定される光ディスク119が格納されているディスクスロット121を特定する。ステップS141の後、手続きは、ステップS142に進む。
ステップS142において、ストレージサーバ165は、メディアサーバ167に、特定されたディスクスロット121に格納されている光ディスク119のドライブ118への装着を指示する。メディアサーバ167は、チェンジャドライバ143を介して、ジュークシステム120に、特定されたディスクスロット121に格納されている光ディスク119をドライブ118に装着させる。すなわち、ジュークシステム120の制御の基に、ジュークボックス145のピッカー122は、特定されたディスクスロット121から、光ディスク119を取り出して、搬送し、その光ディスク119をドライブ118に装着(マウント)させる。
ステップS143において、リロードの処理が実行される。リロードの処理の詳細は図21のフローチャートを参照して後述する。
ステップS143の処理の後、手続きは、ステップS144に進む。
ステップS144において、ストレージマネージャ114は、キャッシュファイルの最後までデータを読み出したか否かを判定し、キャッシュファイルの最後までデータを読み出していないと判定された場合、ステップS144に戻り、判定の処理を繰り返す。
ステップS144において、キャッシュファイルの最後までデータを読み出したと判定された場合、処理は終了する。
次に、図21のフローチャートを参照して、図20のステップS143のリロードの処理の詳細を説明する。ステップS161において、ストレージマネージャ114は、HSM113に、所定の位置を指定して、リロードの開始を指示する。HSM113のマイグレーションファイルシステム164は、リロードの開始位置を、現在、HDD116から読み出されているデータの位置の後の領域であって、もっとも近い領域の先頭とする。
ステップS162において、HSM113のストレージサーバ165は、リロードを開始する。すなわち、ストレージサーバ165は、リロードの開始位置におけるデータを、光ディスク119が装着されたドライブ118から読み出させ、読み出したデータをキャッシュファイルの所定の領域に格納させるように、HDD116に記録させる。
ステップS163において、マイグレーションファイルシステム164は、その領域がストアされているか否かを判定し、その領域がストアされていると判定された場合、ステップS164において、リロードの開始位置を、その領域の後のホール領域であって、最も近いホール領域の先頭に移動する。ステップS163において、その領域がストアされていないと判定された場合、ステップS164の処理はスキップされる。
ステップS165において、HSM113のストレージサーバ165は、リロードを開始する。
ステップS166において、マイグレーションファイルシステム164は、その領域のリロードが完了したか否かを判定し、その領域のリロードが完了していないと判定された場合、ステップS166に戻り、判定の処理を繰り返す。
ステップS166において、その領域のリロードが完了したと判定された場合、ステップS167に進み、マイグレーションファイルシステム164は、リロードを完了した領域と隣接するスタブ領域とを結合させるように拡張属性を書き換える。
ステップS168において、マイグレーションファイルシステム164は、領域情報のスパンを基に、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置までリロードが完了したか否かを判定する。
例えば、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域が、光ディスク119の交換の後にデータが読み出される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置されている場合、マイグレーションファイルシステム164は、データを現在読み出しているホール領域の最後までデータのリロードが完了したか否かを判定し、次のスタブ領域の領域情報のスパンを基に、次のスタブ領域のデータが、ドライブ118に現在装着されている光ディスク119と異なる光ディスク119に記録されているか否かを判定することで、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置までリロードが完了したか否かを判定する。
例えば、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域が、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置されている場合、マイグレーションファイルシステム164は、データを現在読み出している領域の最後までデータのリロードが完了したか否かを判定し、次のホール領域の領域情報のスパンを基に、次にリロードしようとするデータが、ドライブ118に現在装着されている光ディスク119と異なる光ディスク119に記録されているか否かを判定することで、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置までリロードが完了したか否かを判定する。
なお、ステップS168において、マイグレーションファイルシステム164は、ステップS138の処理で取得した位置を基に、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置までリロードが完了したか否かを判定するようにしてもよい。
ステップS168において、ストアされていない領域の最後の位置までリロードが完了していないと判定された場合、ドライブ118に装着されている光ディスク119に記録されているコンテンツのデータのすべてがリロードされていないので、ステップS169に進み、マイグレーションファイルシステム164は、リロードの開始位置を、その領域の後のホール領域であって、最も近いホール領域の先頭に移動し、ステップS165に戻り、上述した処理を繰り返す。
ステップS168において、ストアされていない領域の最後の位置までリロードが完了したと判定された場合、ステップS170に進み、マイグレーションファイルシステム164は、コンテンツのデータが最後までストアされたか、すなわち、キャッシュファイルの最後までリロードが完了したか否かを判定する。
ステップS170において、コンテンツのデータが最後までストアされていない、すなわち、キャッシュファイルの最後までリロードが完了していないと判定された場合、次の光ディスク119からデータを読み出す必要があるので、ステップS171に進み、マイグレーションファイルシステム164は、ドライブ118に装着されている光ディスク119を、ピッカー122によって搬送させ、ディスクスロット121に戻させる。
ステップS172において、マイグレーションファイルシステム164は、ボリウムデータベース168を基に、次にデータを読み出す光ディスク119のボリウムIDで特定される、光ディスク119が格納されているディスクスロット121を特定する。ステップS173において、マイグレーションファイルシステム164は、特定されたディスクスロット121に格納されている光ディスク119をドライブ118に装着させる。
ステップS174において、マイグレーションファイルシステム164は、リロードの開始位置を、装着された光ディスク119についてのオフセット値で示される位置とし、ステップS162に戻り、上述した処理を繰り返す。
ステップS170において、コンテンツのデータが最後までストアされた、すなわち、キャッシュファイルの最後までリロードが完了したと判定された場合、処理は終了する。
このように、HDD116のキャッシュファイルからコンテンツのデータが読み出されている間であって、予めキャッシュファイルに記録されていないデータの読み出しが実行される前に、ドライブ118に装着された光ディスク119からホール領域のデータが読み出されて、読み出されたデータがキャッシュファイルに格納される。ドライブ118は、コンテンツの再生に必要なデータの読み出し速度に比較して、より速い速度で光ディスク119からデータを読み出すので、コンテンツの再生が始まる前にHDD116のキャッシュファイルに格納されていなかったデータは、そのデータがコンテンツの再生のために読み出される前に、HDD116のキャッシュファイルに格納される。従って、コンテンツの再生のために必要なデータは、常に、HDD116のキャッシュファイルから読み出すことができるようになる。
光ディスク119を交換する期間において、HDD116からコンテンツのデータを継続して読み出すことができるデータ量のスタブデータがHDD116に記録されているので、ステップS171乃至ステップS173の処理で光ディスク119が交換される期間においても、コンテンツのデータが途切れることなく、HDD116から読み出すことができる。
その結果、コンテンツのデータの読み出しが要求されると、待ち時間をほとんど生じさせることなく、迅速に、なおかつ、途切れることなく、コンテンツのデータを読み出すことができる。すなわち、例えば、音声または画像のコンテンツである場合、画像または音声が途切れることがなく、画像または音声を再生することができる。
さらに、光ディスク119からコンテンツのデータを先読みして、HDD116に記録させるので、光ディスク119から読み出したデータを直接再生に用いる場合に比較して、ドライブ118をより早く開放することができる。すなわち、光ディスク119の高速読み出しなど、ドライブ118の能力をより十分に発揮させることができ、ドライブ118をより効率的に使用できるようになる。
なお、図12および図13を参照して既に説明したが、図22で示されるように、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域は、光ディスク119の交換の後にデータが読み出される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置しても、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置してもよい。
さらに、光ディスク119からドライブ118によって読み出されたデータが、一旦、HDD116に記録されて、HDD116からアプリケーションプログラム141に読み出されるようにした場合には、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域は、光ディスク119の交換の前にデータが読み出される光ディスク119に記録されるコンテンツのデータに対応する最初のスタブ領域と連続するように配置してもよく、または、光ディスク119に記録されるコンテンツのデータに対応する最後のスタブ領域と連続するように配置するようにしてもよい。この場合、スタブデータのデータ量は、2つのスタブ領域をあわせたと同様の量、例えば、データ量Ds+データ量Dxとされる。
なお、詳細は後述するが、キャッシュファイルに記録されていないデータを、光ディスク119から読み出して、光ディスク119から読み出したデータから直接コンテンツを再生する場合には、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域を、光ディスク119の交換の後にデータが読み出される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置するか、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置するようにすればよい。
次に、100枚のそれぞれ43GBの光ディスクにコンテンツのデータを記録する場合、1つのコンテンツのデータを1枚の光ディスクに記録させるようにしたとき(以下、ノースパンモードと称する)と、1つのコンテンツのデータを複数枚の光ディスクに記録させるようにしたとき(以下、スパンモードと称する)の、記録できるコンテンツの数を比較した結果を図23に示す。
コンテンツのビットレートは、24Mbpsとした。また、ノースパンモードにおいて1つのコンテンツ当たり512KBのマージンを設けた。
図23は、コンテンツの再生時間の長さが30分乃至240分のいずれかとした場合に、記録できるコンテンツの数を示す。図23の三角は、スパンモードにおいて記録できるコンテンツの数を示し、四角は、ノースパンモードにおいて記録できるコンテンツの数を示す。
コンテンツの再生時間の長さが30分である場合、スパンモードにおいて記録できるコンテンツの数は、約800であるのに対して、ノースパンモードにおいて記録できるコンテンツの数は、約700である。コンテンツの再生時間の長さが60分である場合、スパンモードにおいて記録できるコンテンツの数は、約400であるのに対して、ノースパンモードにおいて記録できるコンテンツの数は、約300である。コンテンツの再生時間の長さが120分である場合、スパンモードにおいて記録できるコンテンツの数は、約200であるのに対して、ノースパンモードにおいて記録できるコンテンツの数は、約100である。
コンテンツの再生時間の長さが120分乃至240分のいずれかである場合、ノースパンモードにおいて記録できるコンテンツの数は、一定の約100である。コンテンツの再生時間の長さが120分乃至240分のいずれかである場合、スパンモードにおいて記録できるコンテンツの数は、コンテンツの再生時間の長さが長くなるに従って、約200から約100に変化する。
コンテンツの再生時間の長さにかかわらず、スパンモードにおいて記録できるコンテンツの数は、ノースパンモードにおいて記録できるコンテンツの数以上となる。
また、キャッシュファイルに記録されていないデータを、光ディスク119から読み出して、光ディスク119から読み出したデータから直接コンテンツを再生するようにしてもよい。
図24は、この場合における、本発明の一実施の形態の記録再生システム101の他の構成を示すブロック図である。図24の記録再生システム101は、ビデオ/オーディオエンコーダ111、ストリームエンコーダ112、HSM113、ストレージマネージャ114、バッファ115、HDD116、ドライブ118、光ディスク119、ジュークシステム120、ディスクスロット121、ピッカー122、ストリームデコーダ123、およびビデオ/オーディオデコーダ124が設けられている点で図4の記録再生システム101と共通するが、バッファ117が設けられず、バッファ201およびセレクタ202が新たに設けられている点で、図4の記録再生システム101と異なっている。
図4に示す場合と共通する部分の説明は省略する。
HDD116は、記録しているストリーム(データ)をバッファ201またはセレクタ202に供給する。
バッファ201は、半導体メモリまたはHDD116の一部の記録領域からなり、HDD116から供給されたストリーム(データ)を一時的に記憶して、記憶しているストリーム(データ)をドライブ118に供給する。
セレクタ202は、HSM113の制御の基に、ドライブ118から出力されるデータまたはHDD116から出力されるデータのいずれか一方を選択する。バッファ115は、セレクタ202に選択された、ドライブ118から出力されるデータまたはHDD116から出力されるデータのいずれか一方を取得し、取得したデータを記憶する。
なお、セレクタ202は、ハードウェアとして設けても良いが、ソフトウェア(処理)によりセレクタ202と等価の機能を実現するようにしてもよい。
また、セレクタ202は、ストレージマネージャ114の制御の基に、ドライブ118から出力されるデータまたはHDD116から出力されるデータのいずれか一方を選択するようにしてもよい。
キャッシュファイルに記録されていないデータを、光ディスク119から読み出して、光ディスク119から読み出したデータから直接コンテンツを再生する場合、図25で示されるように、HDD116のキャッシュファイルに格納されているデータは、HDD116から読み出され、HDD116のキャッシュファイルに格納されてしないデータは、ドライブ118に装着された光ディスク119からドライブ118によって読み出される。
すなわち、HDD116に予め記録されているスタブ領域のデータはHDD116からバッファ115に読み出されて、バッファ115に一時的に記憶される。HDD116に予め記録されていないホール領域のデータは光ディスク119から読み出されて、HDD116によって記録されずに、バッファ115に直接供給されて、バッファ115に一時的に記憶される。
アプリケーションプログラム141は、バッファ115に一時的に記憶されたデータを読み出して、出力画像信号および音声信号を出力する。
図24の記録再生システム101における、データの書き込みの処理は、図17のフローチャートを参照して説明した処理と同様なので、その説明は省略する。
図26は、キャッシュファイルに記録されていないデータを、光ディスク119から読み出して、光ディスク119から読み出したデータから直接コンテンツを再生する場合の、インデックス_nからのデータの読み出しの処理を説明するフローチャートである。ステップS201乃至ステップS209の処理は、図20のステップS131乃至ステップS139の処理と同様なのでその説明は省略する。
ステップS210において、ストレージサーバ165は、メディアサーバ167に、ステップS209で特定されたディスクスロット121に格納されている光ディスク119のドライブ118への装着を指示する。メディアサーバ167は、チェンジャドライバ143を介して、ジュークシステム120に、特定されたディスクスロット121に格納されている光ディスク119をドライブ118に装着させる。すなわち、ジュークシステム120の制御の基に、ジュークボックス145のピッカー122は、特定されたディスクスロット121から、光ディスク119を取り出して、搬送し、その光ディスク119をドライブ118に装着(マウント)させる。
ステップS211において、HSM113は、指定されたインデックス_nに対応するスタブ領域のデータの読み出しが完了したか否かを判定する。ステップS211において、スタブ領域のデータの読み出しが完了していないと判定された場合、スタブ領域のデータの読み出しが完了するまで判定の処理が繰り返される。
ステップS211において、HDD116からの、スタブ領域のデータの読み出しが完了したと判定された場合、ステップS212に進み、HSM113は、ドライブ118に装着された光ディスク119からのコンテンツのデータの読み出しを開始する。
ステップS213において、光ディスク119の交換の処理が実行されて、処理は終了する。光ディスク119の交換の処理の詳細は、図27のフローチャートを参照して後述する。
ステップS214およびステップS215の処理は、それぞれ、図20のステップS140およびステップS141の処理と同様なので、その説明は省略する。
ステップS216において、HSM113は、指定されたインデックス_nに対応するスタブ領域のデータの読み出しが完了したか否かを判定する。ステップS216において、スタブ領域のデータの読み出しが完了していないと判定された場合、スタブ領域のデータの読み出しが完了するまで判定の処理が繰り返される。
ステップS216において、HDD116からの、スタブ領域のデータの読み出しが完了したと判定された場合、ステップS217に進み、HSM113は、ドライブ118に装着された光ディスク119からのコンテンツのデータの読み出しを開始する。
ステップS218において、ストレージマネージャ114は、コンテンツの最後までデータを読み出したか否かを判定し、最後までデータを読み出していないと判定された場合、ステップS218に戻り、判定の処理を繰り返す。
ステップS218において、コンテンツの最後までデータを読み出したと判定された場合、処理は終了する。
図27は、ステップS213の光ディスク119の交換の処理の詳細を説明するフローチャートである。ステップS241において、ストレージマネージャ114は、コンテンツの最後までデータを読み出したか否かを判定し、最後までデータを読み出していないと判定された場合、ステップS242に進み、マイグレーションファイルシステム164は、領域情報のスパンを基に、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置まで読み出しが完了したか否かを判定する。
例えば、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域が、光ディスク119の交換の後にデータが読み出される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置されている場合、マイグレーションファイルシステム164は、データを現在読み出しているホール領域の最後までデータの読み出しが完了したか否かを判定し、次のスタブ領域の領域情報のスパンを基に、次のスタブ領域のデータが、ドライブ118に現在装着されている光ディスク119と異なる光ディスク119に記録されているか否かを判定することで、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置まで読み出しが完了したか否かを判定する。
例えば、光ディスク119を交換する期間において、HDD116からコンテンツのデータを読み出すことができるデータ量とされるスタブ領域が、光ディスク119の交換の前にデータが読み出される光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置されている場合、マイグレーションファイルシステム164は、データを現在読み出している領域の最後までデータの読み出しが完了したか否かを判定し、次のホール領域の領域情報のスパンを基に、次に読み出ししようとするデータが、ドライブ118に現在装着されている光ディスク119と異なる光ディスク119に記録されているか否かを判定することで、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置まで読み出しが完了したか否かを判定する。
なお、ステップS242において、マイグレーションファイルシステム164は、ステップS208の処理で取得した位置を基に、ドライブ118に装着されている光ディスク119について、ストアされていない領域の最後の位置まで読み出しが完了したか否かを判定するようにしてもよい。
ステップS242において、ストアされていない領域の最後の位置まで読み出しが完了していないと判定された場合、光ディスク119からのデータの読み出しが継続されて、ステップS241に戻り、判定の処理が繰り返される。
ステップS242において、ストアされていない領域の最後の位置まで読み出しが完了したと判定された場合、ステップS243に進み、マイグレーションファイルシステム164は、ストレージサーバ165に、HDD116上のキャッシュファイルのスタブ領域からのデータの読み出しを開始させる。ステップS243においてHDD116から読み出しが開始されるコンテンツのデータは、次にドライブ118に装着される光ディスク119の記録領域の先頭の近傍に記録されるコンテンツのデータに対応して配置されているスタブ領域のスタブデータであるか、または、現在ドライブ118に装着されている光ディスク119の記録領域の最後の近傍に記録されるコンテンツのデータに対応して配置されているスタブ領域のスタブデータである。
ステップS244において、マイグレーションファイルシステム164は、ドライブ118に装着されている光ディスク119を、ピッカー122によって搬送させ、ディスクスロット121に戻させる。
ステップS245において、マイグレーションファイルシステム164は、ボリウムデータベース168を基に、次にデータを読み出す光ディスク119のボリウムIDで特定される、光ディスク119が格納されているディスクスロット121を特定する。ステップS246において、マイグレーションファイルシステム164は、特定されたディスクスロット121に格納されている光ディスク119をドライブ118に装着させる。
ステップS247において、マイグレーションファイルシステム164は、スタブ領域のデータの読み出しが完了したか否かを判定する。ステップS247において、スタブ領域のデータの読み出しが完了していないと判定された場合、スタブ領域のデータの読み出しが完了するまで判定の処理が繰り返される。
ステップS247において、HDD116からの、スタブ領域のデータの読み出しが完了したと判定された場合、ステップS248に進み、マイグレーションファイルシステム164は、ドライブ118に装着された光ディスク119からのコンテンツのデータの読み出しを開始し、ステップS241に戻り、上述した処理を繰り返す。
ステップS241において、コンテンツの最後までデータを読み出したと判定された場合、処理は終了する。
このように、HDD116のキャッシュファイルに格納されているデータは、HDD116から読み出され、HDD116のキャッシュファイルに格納されてしないデータは、ドライブ118に装着された光ディスク119からドライブ118によって読み出される。
このようにすることで、HDD116へのアクセスをより少なくすることができる。また、HDD116の記録領域の使用量をより少なくすることができる。
光ディスク119をドライブ118に装着(マウント)した後は、ホール領域を含めた、コンテンツ上の任意の部分のデータを迅速に読み出すことができる。
なお、図4で示される記録再生システム101の処理および図24で示される記録再生システム101の処理を適応的に切り替えるようにしてもよい。
さらに、記録しているコンテンツをネットワークを介して送信するようにすることもできる。
図28は、記録しているコンテンツをネットワークを介して送信する、本発明の一実施の形態の記録再生システムのさらに他の構成を示すブロック図である。
図4または図5に示す場合と同様に部分には同一の符号を付してあり、その説明は省略する。
この場合、記録再生システムは、サーバ301と、サーバ301にネットワーク302を介して接続されるクライアント303とからなる。
サーバ301は、HSM113、ストレージマネージャ114、アプリケーションプログラム141、コンテンツマネージャ142、チェンジャドライバ143、ジュークボックス制御部144、ジュークボックス145、ストリーミングサーバ321、およびネットワークライブラリ322を含むように構成される。
アプリケーションプログラム141は、ネットワーク302を介してクライアント303から送信されてきた画像データおよび音声データを含むストリームを受信し、受信したストリームをストレージマネージャ163に供給する。また、アプリケーションプログラム141は、ストレージマネージャ163から供給されたストリームを、ストリーミングサーバ321に送信させる。
ストリーミングサーバ321は、ネットワークライブラリ322として記述されている手続きを基に、アプリケーションプログラム141から供給されたストリームを、ネットワーク302を介して、クライアント303に送信する。ストリーミングサーバ321は、クライアント303から送信されてきた、所定の位置からのコンテンツの再生を要求するデータ(ストリームの送信要求)が受信されると、要求された位置からコンテンツを再生するためのストリームをネットワーク302を介して、クライアント303に送信する。
ネットワークライブラリ322には、ネットワーク302を介した、ストリームまたはデータを送信または受信する手続きが記述されている。
ネットワーク302は、無線または有線を伝送媒体とする、ホームネットワークなどのLAN(Local Area Network)、インターネット、公衆回線、または専用回線などからなり、各種のデータ(ストリームを含む)を伝送する。
クライアント303は、アプリケーションプログラム341、ストリーミングクライアント342、ネットワーククライアント343、ビデオ/オーディオデコーダ344、およびビデオオーディオエンコーダ345を含むように構成される。
アプリケーションプログラム341は、使用者とのインターフェースの機能を有し、使用者からの指示を取得するか、使用者にクライアント303に関する各種の情報を通知する。アプリケーションプログラム141は、クライアント303全体を制御する。
ストリーミングクライアント342は、ネットワーク302を介して、サーバ301から送信されてきたストリームを受信して、受信したストリームをビデオ/オーディオデコーダ344に供給する。ネットワーククライアント343は、ネットワーク302を介して、サーバ301と各種のデータを送受信する。ネットワーククライアント343は、ビデオオーディオエンコーダ345から供給されたストリームを、ネットワーク302を介して、サーバ301に送信する。また、ネットワーククライアント343は、所望の位置からのコンテンツの再生を要求するデータ(ストリームの送信要求)を、ネットワーク302を介して、サーバ301に送信する。
ビデオ/オーディオデコーダ344は、ストリームを画像データおよび音声データに分離する。そして、ビデオ/オーディオデコーダ344は、符号化されている画像データおよび音声データを、いわゆるベースバンドの画像データおよび音声データに復号し、復号により得られたベースバンドの画像データおよび音声データを基にした、出力画像信号および音声信号(図示せず)をモニタ125に供給する。
ビデオオーディオエンコーダ345は、ビデオカメラ171からの入力画像信号および音声信号を取得し、取得した入力画像信号および音声信号をベースバンドの画像データおよび音声データに変換する。ビデオオーディオエンコーダ345は、ベースバンドの画像データおよび音声データを符号化し、符号化された画像データおよび音声データを多重化することでストリームを生成する。ビデオオーディオエンコーダ345は、生成したストリームをネットワーククライアント343に供給する。
このように、サーバ301は、ネットワーク302を介して、クライアント303に、所望の位置からコンテンツを再生するストリームを、迅速に送信することができる。
以上のように、本発明によれば、面倒な操作をすることなく、任意の部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができる。
このように、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において第3の記録媒体からコンテンツのデータを読み出すことができるデータ量の、コンテンツの部分のデータを第3の記録媒体に記録させるように、第3の記録媒体へのデータの記録を制御するようにした場合には、コンテンツのデータの読み出しにおいて、中断が生じないようにすることができる。また、第1の記録媒体からのデータの読み出しと第2の記録媒体からのデータの読み出しとを切り替える期間において、第3の記録媒体からコンテンツのデータを読み出すように、第1の記録媒体、第2の記録媒体、または第3の記録媒体からのデータの読み出しを制御するようにした場合には、中断が生じないようにすることができる。
なお、1次ストレージとして、HDD116に代えて、半導体メモリなどの他の高速な記録媒体を用いるようにしもよく、また、2次ストレージとして、光ディスク119に代えて、磁気ディスクまたは磁気テープなどの1次ストレージに比較して記録容量当たりの価格が安い他の記録媒体を用いるようにしてもよい。
また、コンテンツは、画像または音声に限られるものではなく、時間的に連続的に使用される使用者にとって有意なデータであればよく、例えば、ゲームに用いるデータ、時間の経過に対応して計測されたデータ、または時間の経過に対応して計算されたシミュレーションの結果のデータなどであってもよい。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
図29は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU(Central Processing Unit)401は、ROM(Read Only Memory)402、記憶部408、または記憶部409に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)403には、CPU401が実行するプログラムやデータなどが適宜記憶される。これらのCPU401、ROM402、およびRAM403は、バス404により相互に接続されている。
なお、CPU401として、”Cell誕生”、日経エレクトロニクス、日経BP社、2005年2月28日、89頁乃至117頁に記載されているCellを採用することができる。
CPU401にはまた、バス404を介して入出力インターフェース405が接続されている。入出力インターフェース405には、キーボード、マウス、マイクロホンなどよりなる入力部406、ディスプレイ、スピーカなどよりなる出力部407が接続されている。CPU401は、入力部406から入力される指令に対応して各種の処理を実行する。そして、CPU401は、処理の結果を出力部407に出力する。
入出力インターフェース405に接続されている記憶部408は、例えばHDD115に対応し、CPU401が実行するプログラムや各種のデータを記録する。記憶部409は、例えばジュークボックス145に対応し、各種のデータやCPU401が実行するプログラムを記録する。通信部410は、インターネットやLANなどのネットワーク302を介してクライアント303などの外部の装置と通信する。
また、通信部410を介してプログラムを取得し、記憶部408または記憶部409に記憶してもよい。
入出力インターフェース405に接続されているドライブ411は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア412が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部408または記憶部409に転送され、記録される。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図29に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)を含む)、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア412、または、プログラムが一時的もしくは永続的に格納されるROM402や、記憶部408を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部410を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
従来の記録再生システムの構成を示すブロック図である。 従来の記録の方式を説明する図である。 従来の読み出しの処理を説明するフローチャートである。 本発明の一実施の形態の記録再生システムの構成を示すブロック図である。 記録再生システムのより詳細な構成を示すブロック図である。 記録再生システムにおいて用いる情報を説明する図である。 HDDに記録されるキャッシュファイルを説明する図である。 HDDに記録されるキャッシュファイルおよびキャッシュファイルを用いたコンテンツのデータの読み出しを説明する図である。 キャッシュファイルを用いたコンテンツのデータの読み出しを説明する図である。 領域および拡張属性における領域情報について説明する図である。 コンテンツのデータが複数の光ディスクに記録されている場合の、スタブ状態のキャッシュファイルを説明する図である。 領域および拡張属性における領域情報について説明する図である。 領域および拡張属性における領域情報について説明する図である。 スタブ領域のスタブデータのデータ量について説明する図である。 スタブ領域のスタブデータのデータ量について説明する図である。 データ量Dxの例を示す図である。 コンテンツのデータの書き込みの処理を説明するフローチャートである。 ヒント情報の書き込みの処理を説明するフローチャートである。 スタブファイル状態のキャッシュファイルの生成の処理を説明するフローチャートである。 インデックス_nからのデータの読み出しの処理を説明するフローチャートである。 リロードの処理の詳細を説明するフローチャートである。 スタブ領域の位置を説明する図である。 ノースパンモードおよびスパンモードにおいて記録できるコンテンツの数を比較する図である。 本発明の一実施の形態の記録再生システムの他の構成を示すブロック図である。 キャッシュファイルを用いたコンテンツのデータの読み出しを説明する図である。 インデックス_nからのデータの読み出しの処理を説明するフローチャートである。 光ディスクの交換の処理を説明するフローチャートである。 本発明の一実施の形態の記録再生システムのさらに他の構成を示すブロック図である。 パーソナルコンピュータの構成の例を示すブロック図である。
符号の説明
101 記録再生システム, 113 HSM, 114 ストレージマネージャ, 116 HDD, 118 ドライブ, 119 光ディスク, 120 ジュークシステム, 121 ディスクスロット, 122 ピッカー, 141 アプリケーションプログラム, 142 コンテンツマネージャ, 144 ジュークボックス制御部, 145 ジュークボックス, 161 コンテンツデータベース, 162 システムマネージャ, 163 ファイルI/Oマネージャ, 164 マイグレーションファイルシステム, 165 ストレージサーバ, 166 ストアデータベース, 167 メディアサーバ, 168 ボリウムデータベース, 301 サーバ, 302 ネットワーク, 303 クライアント, 321 ストリーミングサーバ, 401 CPU, 402 ROM, 403 RAM, 408 記憶部, 409 記憶部, 412 リムーバブルメディア

Claims (14)

  1. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録する第1の記録媒体と、
    前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、
    前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記コンテンツの部分のデータを記録する第3の記録媒体と、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において前記第3の記録媒体から前記コンテンツのデータを読み出すことができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを前記第3の記録媒体に記録させるように、前記第3の記録媒体へのデータの記録を制御する記録制御手段と
    を備え、
    前記記録制御手段は、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められた前記第1のデータ量を基に、前記第3の記録媒体への前記第1の部分のデータの記録を制御する
    記録装置。
  2. 前記第1のデータ量を計算する計算手段をさらに備え、
    前記記録制御手段は、計算された前記第1のデータ量の、前記コンテンツの前記第1の部分のデータを前記第3の記録媒体に記録させるように、前記第3の記録媒体へのデータの記録を制御する
    請求項1に記載の記録装置。
  3. 前記コンテンツのデータにおける前記第1の部分のデータの先頭位置および前記第1のデータ量を示す情報と、前記コンテンツのデータにおける前記第2の部分のデータの先頭位置および前記第2の部分のデータの第3のデータ量を示す情報とを格納する格納手段をさらに備える
    請求項2に記載の記録装置。
  4. 前記記録制御手段は、前記第1の記録媒体、前記第2の記録媒体、または前記第3の記録媒体から前記コンテンツのデータを読み出す読み出し装置が、前記第1の記録媒体または前記第2の記録媒体に記録されている前記コンテンツのデータを読み出して、読み出したデータを前記第3の記録媒体に記録させてから、前記第3の記録媒体から前記コンテンツのデータを読み出す場合、前記第1のデータ量のデータであって、前記コンテンツの前の部分のデータを前記第1のデータとして前記第3の記録媒体に記録させるように、前記第3の記録媒体へのデータの記録を制御する
    請求項1に記載の記録装置。
  5. 前記第2の記録媒体に記録されている前記コンテンツのデータのうち、前記第3の記録媒体に記録されている領域と記録されていない領域とのそれぞれについて、前記第1の記録媒体に記録されているデータに続くデータの領域であるか否かを示す情報を格納する格納手段をさらに備える請求項1に記載の記録装置。
  6. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録する第1の記録媒体と、前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記コンテンツの部分のデータを記録する第3の記録媒体とを備える記録装置の記録方法において、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において前記第3の記録媒体から前記コンテンツのデータを読み出すことができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを前記第3の記録媒体に記録させるように、前記第3の記録媒体へのデータの記録を制御する記録制御ステップを含み、
    前記記録制御ステップにおいて、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められた前記第1のデータ量を基に、前記第3の記録媒体への前記第1の部分のデータの記録を制御する
    記録方法。
  7. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録する第1の記録媒体と、前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されるデータに続くデータを記録する第2の記録媒体と、前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記コンテンツの部分のデータを記録する第3の記録媒体とを備える記録装置のコンピュータに、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において前記第3の記録媒体から前記コンテンツのデータを読み出すことができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを前記第3の記録媒体に記録させるように、前記第3の記録媒体へのデータの記録を制御する記録制御ステップを含む処理を実行させ、
    前記記録制御ステップにおいて、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められた前記第1のデータ量を基に、前記第3の記録媒体への前記第1の部分のデータの記録を制御する
    プログラム。
  8. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録している第1の記録媒体と、
    前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、
    前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとの切り替えに要する期間において前記コンテンツのデータを読み出させることができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体と、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において、前記第3の記録媒体から前記コンテンツの前記第1の部分のデータを読み出し、前記コンテンツのデータの前記優先度が前記所定の優先度より高いシーンのデータから読み出しが開始される場合、前記第3の記録媒体から前記第2の部分のデータを読み出すように、前記第1の記録媒体、前記第2の記録媒体、または前記第3の記録媒体からのデータの読み出しを制御する読み出し制御手段と
    を備え、
    前記第1のデータ量は、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められる
    読み出し装置。
  9. 前記読み出し制御手段は、前記第1の記録媒体または前記第2の記録媒体に記録されている前記コンテンツのデータを読み出して、読み出したデータを前記第3の記録媒体に記録させてから、前記第3の記録媒体からデータを読み出すように、前記コンテンツのデータの読み出しを制御する
    請求項8に記載の読み出し装置。
  10. 前記読み出し制御手段は、前記第3の記録媒体に予め記録されていないデータであって、前記第1の記録媒体または前記第2の記録媒体から読み出されたデータを前記第3の記録媒体に記録させる
    請求項9に記載の読み出し装置。
  11. 前記読み出し制御手段は、前記コンテンツのデータのうち、前記第3の記録媒体に記録されていないデータを前記第1の記録媒体または前記第2の記録媒体から読み出すように、前記第1の記録媒体または前記第2の記録媒体からのデータの読み出しを制御する
    請求項8に記載の読み出し装置。
  12. 前記読み出し制御手段は、前記第1の記録媒体または前記第2の記録媒体から、通常の読み出しに比較して速い読み出し速度でデータを読み出すように、前記第1の記録媒体または前記第2の記録媒体からのデータの読み出しを制御する
    請求項8に記載の読み出し装置。
  13. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録している第1の記録媒体と、前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとの切り替えに要する期間において前記コンテンツのデータを読み出させることができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体とからデータを読み出す読み出し装置の読み出し方法において、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において、前記第3の記録媒体から前記コンテンツの前記第1の部分のデータを読み出し、前記コンテンツのデータの前記優先度が前記所定の優先度より高いシーンのデータから読み出しが開始される場合、前記第3の記録媒体から前記第2の部分のデータを読み出すように、前記第1の記録媒体、前記第2の記録媒体、または前記第3の記録媒体からのデータの読み出しを制御する読み出し制御ステップを含み、
    前記第1のデータ量は、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められる
    読み出し方法。
  14. 時間的に連続するコンテンツの全体のデータのうちの、前記コンテンツの前の部分のデータを記録している第1の記録媒体と、前記コンテンツの全体のデータのうちの、前記第1の記録媒体に記録されているデータに続くデータを記録している第2の記録媒体と、前記第1の記録媒体および前記第2の記録媒体からのデータの読み出し速度よりも速い読み出し速度でのデータの読み出しが可能であり、前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとの切り替えに要する期間において前記コンテンツのデータを読み出させることができる第1のデータ量の、前記コンテンツの第1の部分のデータと、前記コンテンツのうちの予め定められた優先度が所定の優先度より高いシーンの第2の部分のデータとを記録している第3の記録媒体とからデータを読み出す読み出し装置のコンピュータに、
    前記第1の記録媒体からのデータの読み出しと前記第2の記録媒体からのデータの読み出しとを切り替える期間において、前記第3の記録媒体から前記コンテンツの前記第1の部分のデータを読み出し、前記コンテンツのデータの前記優先度が前記所定の優先度より高いシーンのデータから読み出しが開始される場合、前記第3の記録媒体から前記第2の部分のデータを読み出すように、前記第1の記録媒体、前記第2の記録媒体、または前記第3の記録媒体からのデータの読み出しを制御する読み出し制御ステップを含む処理を実行させ、
    前記第1のデータ量は、前記第1の記録媒体に記録されている前記コンテンツのデータであって前記第3の記録媒体に記録されていない前記コンテンツのデータの第2のデータ量と前記第1の記録媒体からのデータの読み出しの速度とに応じて決められる
    プログラム。
JP2005211754A 2005-07-21 2005-07-21 記録装置および方法、読み出し装置および方法、並びにプログラム Expired - Fee Related JP4186963B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005211754A JP4186963B2 (ja) 2005-07-21 2005-07-21 記録装置および方法、読み出し装置および方法、並びにプログラム
US11/457,663 US20070019511A1 (en) 2005-07-21 2006-07-14 Recording apparatus, recording methods, reading apparatus reading methods and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005211754A JP4186963B2 (ja) 2005-07-21 2005-07-21 記録装置および方法、読み出し装置および方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2007026621A JP2007026621A (ja) 2007-02-01
JP4186963B2 true JP4186963B2 (ja) 2008-11-26

Family

ID=37678921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005211754A Expired - Fee Related JP4186963B2 (ja) 2005-07-21 2005-07-21 記録装置および方法、読み出し装置および方法、並びにプログラム

Country Status (2)

Country Link
US (1) US20070019511A1 (ja)
JP (1) JP4186963B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8055841B2 (en) * 2009-02-19 2011-11-08 International Business Machines Corporation System and method for caching data on a hard disk drive
CN103177127B (zh) * 2013-04-18 2016-03-09 陶光毅 基于光盘库的数据库存储系统及利用该系统的方法

Also Published As

Publication number Publication date
JP2007026621A (ja) 2007-02-01
US20070019511A1 (en) 2007-01-25

Similar Documents

Publication Publication Date Title
JP2007011565A (ja) 記録装置および方法、プログラム並びにプログラム記録媒体
KR100333299B1 (ko) 디스크 기록매체의 데이터 복사방법, 데이터 기록방법, 데이터편집방법 및 디스크 기록장치
JP2010273327A (ja) 記録装置
JP4256075B2 (ja) ファイルシステム及び記憶領域の管理方法
EP1811519A2 (en) Recording apparatus, recording method, program, encoding apparatus, and encoding method
JP2014096759A (ja) 画像処理装置
JP4186963B2 (ja) 記録装置および方法、読み出し装置および方法、並びにプログラム
JPH11327800A (ja) ディスク記録媒体のデータコピー方法及びディスク記録装置
JP2005190637A (ja) 情報記録装置と情報記録媒体と情報記録方法とプログラム
JP4419919B2 (ja) 記録再生装置および方法、プログラム並びにプログラム記録媒体
JP4264777B2 (ja) データ再生方法及びデータ再生装置
US20070014198A1 (en) Recording device, recording method, recording program, and program recording medium
JP2004265507A (ja) 記録装置及び方法
JP4263927B2 (ja) 蓄積制御装置
JP2001101050A (ja) ファイル管理方法
JP4174696B2 (ja) 記録装置および方法、並びに記録媒体
JP3975586B2 (ja) 記録再生装置および方法、並びにプログラム記録媒体
JP2004355767A (ja) 再生装置
JP2003022653A (ja) データ記録方法、データ再生方法及びその装置
JP2007080147A (ja) 読み出し装置および方法、情報処理装置および方法、並びにプログラム
KR100497365B1 (ko) 개선된 파일 시스템, 이에 적합한 기록 매체 및 파일액세스 방법
JP2001014110A (ja) ファイル記録再生方法および装置
JP2003051155A (ja) 再生装置、再生方法、及び記憶媒体
JP2004362168A (ja) データ管理装置、データ管理方法、プログラム及び記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080312

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080723

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: 20080819

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: 20080901

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

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees