(57)【特許請求の範囲】
【請求項１】
再生されるデータをテープ媒体に書き込む装置であって、
前記テープ媒体に書き込むデータを取得する取得部と、
前記取得部により取得されたデータを前記テープ媒体上の第１の領域に書き込む書込み部と、
前記取得部により取得されたデータのうち、前記テープ媒体上の前記第１の領域よりも前方の第２の領域に書き込まれる先頭部分のデータ量を、所定のデータ量に決定する決定部と、
前記取得部により取得されたデータから前記決定部により決定されたデータ量の前記先頭部分を抽出する抽出部と、
前記抽出部により抽出された前記先頭部分を記憶する記憶部と
を備え、
前記所定のデータ量は、前記データの書込みが開始した前記第１の領域内の第１の位置と前記先頭部分の書込みが開始する前記第２の領域内の第２の位置との間の距離を、前記テープ媒体の走行速度で除して得られた時間内に再生されるデータ量より大きいデータ量である、装置。
【請求項２】
前記書込み部は、前記記憶部に記憶された前記先頭部分を前記テープ媒体上の前記第２の領域に前記第２の位置から書き込む、請求項１の装置。
【請求項３】
再生されるデータをテープ媒体に書き込む装置であって、
前記テープ媒体に書き込む第１のデータと第２のデータとを取得する取得部と、
前記取得部により取得された第１のデータから第１のデータの第１の部分を抽出し、前記取得部により取得された第２のデータから第２のデータの第１の部分を抽出する抽出部と、
前記抽出部により抽出された前記第１のデータの第１の部分を前記テープ媒体上の所定の位置に書き込み、前記抽出部により抽出された前記第２のデータの第１の部分を当該第１のデータの第１の部分に連続して書き込む書込み部と、
前記書込み部により書き込まれた前記第１のデータの第１の部分に続く第１のデータの第２の部分のデータ量を、所定のデータ量に決定する決定部と
を備え、
前記所定のデータ量は、前記第２のデータの第１の部分が書き込まれた前記テープ媒体上の長さから、前記第１のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第１の距離を減じ、前記第２のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第２の距離を加えて得られた前記テープ媒体上の長さに書き込まれるデータ量であり、
前記抽出部は、前記取得部により取得された第１のデータから前記決定部により決定されたデータ量の前記第１のデータの第２の部分を抽出し、前記取得部により取得された第２のデータから前記第２のデータの第１の部分に続く第２のデータの第２の部分を抽出し、
前記書込み部は、前記抽出部により抽出された前記第１のデータの第２の部分を、前記第１のデータの第１の部分の書込みが終了した前記テープ媒体上の位置よりも後方に前記第１の距離以下の間隔を空けた位置から書き込み、前記抽出部により抽出された前記第２のデータの第２の部分を当該第１のデータの第２の部分に連続して書き込む、装置。
【請求項４】
再生されるデータをテープ媒体に書き込む方法であって、
前記テープ媒体に書き込むデータを取得するステップと、
取得された前記データを前記テープ媒体上の第１の領域に書き込むステップと、
取得された前記データのうち、前記テープ媒体上の前記第１の領域よりも前方の第２の領域に書き込まれる先頭部分のデータ量を、所定のデータ量に決定するステップと、
取得された前記データから、決定された前記データ量の前記先頭部分を抽出するステップと、
抽出された前記先頭部分を所定の記憶手段に記憶するステップと
を含み、
前記所定のデータ量は、前記データの書込みが開始した前記第１の領域内の第１の位置と前記先頭部分の書込みが開始する前記第２の領域内の第２の位置との間の距離を、前記テープ媒体の走行速度で除して得られた時間内に再生されるデータ量より大きいデータ量である、方法。
【請求項５】
再生されるデータをテープ媒体に書き込む方法であって、
前記テープ媒体に書き込む第１のデータと第２のデータとを取得するステップと、
取得された前記第１のデータから第１のデータの第１の部分を抽出するステップと、
取得された前記第２のデータから第２のデータの第１の部分を抽出するステップと、
抽出された前記第１のデータの第１の部分を前記テープ媒体上の所定の位置に書き込むステップと、
抽出された前記第２のデータの第１の部分を前記第１のデータの第１の部分に連続して書き込むステップと、
書き込まれた前記第１のデータの第１の部分に続く第１のデータの第２の部分のデータ量を、所定のデータ量に決定するステップと
を含み、
前記所定のデータ量は、前記第２のデータの第１の部分が書き込まれた前記テープ媒体上の長さから、前記第１のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第１の距離を減じ、前記第２のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第２の距離を加えて得られた前記テープ媒体上の長さに書き込まれるデータ量であり、
取得された前記第１のデータから、決定された前記データ量の前記第１のデータの第２の部分を抽出するステップと、
取得された前記第２のデータから前記第２のデータの第１の部分に続く第２のデータの第２の部分を抽出するステップと、
抽出された前記第１のデータの第２の部分を、前記第１のデータの第１の部分の書込みが終了した前記テープ媒体上の位置よりも後方に前記第１の距離以下の間隔を空けた位置から書き込むステップと、
抽出された前記第２のデータの第２の部分を前記第１のデータの第２の部分に連続して書き込むステップと
を更に含む、方法。
【請求項６】
再生されるデータをテープ媒体に書き込む装置としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
前記テープ媒体に書き込むデータを取得する取得部と、
前記取得部により取得されたデータを前記テープ媒体上の第１の領域に書き込む書込み部と、
前記取得部により取得されたデータのうち、前記テープ媒体上の前記第１の領域よりも前方の第２の領域に書き込まれる先頭部分のデータ量を、所定のデータ量に決定する決定部と、
前記取得部により取得されたデータから前記決定部により決定されたデータ量の前記先頭部分を抽出する抽出部と、
前記抽出部により抽出された前記先頭部分を記憶する記憶部と
して機能させ、
前記所定のデータ量は、前記データの書込みが開始した前記第１の領域内の第１の位置と前記先頭部分の書込みが開始する前記第２の領域内の第２の位置との間の距離を、前記テープ媒体の走行速度で除して得られた時間内に再生されるデータ量より大きいデータ量である、プログラム。
【請求項７】
再生されるデータをテープ媒体に書き込む装置としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
前記テープ媒体に書き込む第１のデータと第２のデータとを取得する取得部と、
前記取得部により取得された第１のデータから第１のデータの第１の部分を抽出し、前記取得部により取得された第２のデータから第２のデータの第１の部分を抽出する抽出部と、
前記抽出部により抽出された前記第１のデータの第１の部分を前記テープ媒体上の所定の位置に書き込み、前記抽出部により抽出された前記第２のデータの第１の部分を当該第１のデータの第１の部分に連続して書き込む書込み部と、
前記書込み部により書き込まれた前記第１のデータの第１の部分に続く第１のデータの第２の部分のデータ量を、所定のデータ量に決定する決定部と
して機能させ、
前記所定のデータ量は、前記第２のデータの第１の部分が書き込まれた前記テープ媒体上の長さから、前記第１のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第１の距離を減じ、前記第２のデータの第１の部分の再生に要する時間に前記テープ媒体の走行速度を乗じて得られた第２の距離を加えて得られた前記テープ媒体上の長さに書き込まれるデータ量であり、
前記抽出部は、前記取得部により取得された第１のデータから前記決定部により決定されたデータ量の前記第１のデータの第２の部分を抽出し、前記取得部により取得された第２のデータから前記第２のデータの第１の部分に続く第２のデータの第２の部分を抽出し、
前記書込み部は、前記抽出部により抽出された前記第１のデータの第２の部分を、前記第１のデータの第１の部分の書込みが終了した前記テープ媒体上の位置よりも後方に前記第１の距離以下の間隔を空けた位置から書き込み、前記抽出部により抽出された前記第２のデータの第２の部分を当該第１のデータの第２の部分に連続して書き込む、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データをテープ媒体に書き込む装置及び方法に関する。特に、本発明は、再生されるデータをテープ媒体に書き込む装置及び方法に関する。
【背景技術】
【０００２】
近年、映像コンテンツを始めとした各種コンテンツのデータをインターネット等のネットワークを介して配信するようなシステムが広く見られるようになっている。そのようなシステムでは、コンテンツのデータを如何なる記録媒体に記録して蓄積しておくかが問題となる。コンテンツのデータがそれほど大容量でなければ、価格と性能のバランスから、磁気ディスクが利用されることも多い。一方で、コンテンツのデータが大容量になってくると、使用頻度が低いコンテンツのデータは磁気テープに記録する、といった階層型の記憶システムが採用されることもある。
しかしながら、コンテンツのデータを磁気テープに記録する場合、コンテンツのデータを磁気ディスクに記録した場合に比べて、コンテンツの再生を開始するまでに多くの時間を要するという問題がある。こうした問題を解決するため、従来から種々の技術が提案されている（例えば、特許文献１、２参照）。
【０００３】
特許文献１では、１つ以上のディスク・アレイに対して、２００の最もポピュラーな映画の最初の５分間に関する「プリ・ストライピング」を実施し、これらの映画の１つが要求されると、プリ・ストライピングを施したビデオ・データによって迅速にサービスを行い、同時に、ビデオ・データ・プログラムの残りをアーカイバル記憶装置から呼び出して、ディスク・アレイに転記することで、ユーザがビデオ・データを受け取る際の遅延を最小限に抑えている。
特許文献２では、第１の記憶装置（例えば、磁気テープ）の中にあるビデオ・データの一部分をあらかじめ第２の記憶装置（例えば、磁気ディスク）にロードしておき、ビデオに対するリクエストを受信した時、第２の記憶装置の中にあるビデオ・データの一部分をユーザに転送し、同時に、第１の記憶装置にあるビデオ・データの残りの部分をユーザに転送するために第２の記憶装置へ転送することで、第１の記憶装置に付随する遅延時間を最小化している。
【０００４】
【特許文献１】特開平８−１８９４７号公報
【特許文献２】特開平９−１８２０２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、従来から、磁気テープに記録されたコンテンツの再生を開始するまでの時間を短縮するための種々の試みがなされている。しかしながら、何れの技術も、コンテンツ等のデータの全ての部分が磁気テープ等のテープ媒体に記録される場合において、かかる時間の短縮を図るものではなかった。
本発明の目的は、データの全ての部分がテープ媒体に記録される場合において、データの再生を開始するまでの時間を短縮することにある。
【課題を解決するための手段】
【０００６】
かかる目的のもと、本発明は、再生されるデータをテープ媒体に書き込む装置であって、テープ媒体に書き込むデータを取得する取得部と、取得部により取得されたデータをテープ媒体に書き込む書込み部と、テープ媒体からのデータの読出し時間を短縮するためにデータとは別に記憶されるデータの先頭部分のデータ量を、先頭部分の再生の終了までに先頭部分に続く部分の再生が開始できるように決定する決定部と、取得部により取得されたデータから決定部により決定されたデータ量の先頭部分を抽出する抽出部と、抽出部により抽出された先頭部分を記憶する記憶部とを備えた、装置を提供する。
【０００７】
ここで、決定部は、先頭部分のデータ量を、テープ媒体上の先頭部分に続く部分が書き込まれた位置に基づいて決定する、ものであってよい。
また、書込み部は、取得部により取得されたデータが書き込まれたテープ媒体に先頭部分を書き込む、ものであってよい。この場合、書込み部は、取得部により取得されたデータをテープ媒体にデータよりも前方に空き領域を設けて書き込み、先頭部分を空き領域に書き込む、ようにしてもよい。
更に、書込み部は、取得部により取得されたデータが書き込まれたテープ媒体とは異なる他のテープ媒体に先頭部分を書き込む、ものであってよい。この場合、書込み部は、取得部により取得されたデータをテープ媒体にデータよりも前方に空き領域を設けずに書き込み、先頭部分を他のテープ媒体に先頭部分よりも前に空き領域を設けずに書き込む、ようにしてもよい。
【０００８】
また、本発明は、再生されるデータをテープ媒体に書き込む装置であって、テープ媒体に書き込むデータを取得する取得部と、取得部により取得されたデータから第１の部分及び第１の部分に続く第２の部分を抽出する抽出部と、第１の部分の再生の終了までに第２の部分の再生が開始できるように、テープ媒体上の第１の部分が書き込まれる位置と第２の部分が書き込まれる位置との距離を決定する決定部と、テープ媒体上の所定の位置に第１の部分を書き込み、所定の位置から決定部により決定された距離の間隔を空けた位置に第２の部分を書き込む書込み部とを備えた、装置も提供する。
【０００９】
ここで、取得部は、テープ媒体に書き込むデータとして、第１のデータ及び第２のデータを取得し、書込み部は、テープ媒体に対して、第１のデータの第１の部分の再生の終了までに第１のデータの第２の部分の再生が開始できるように、第１のデータの第１の部分及び第２の部分を書き込み、第２のデータの第１の部分の再生の終了までに第２のデータの第２の部分の再生が開始できるように、第２のデータの第１の部分及び第２の部分を書き込む、ものであってよい。この場合、決定部は、第１のデータの第２の部分のデータ量を、テープ媒体上の第２のデータの第１の部分が書き込まれる位置と第２のデータの第２の部分が書き込まれる位置との距離に基づいて決定し、書込み部は、テープ媒体に対して、第１のデータの第１の部分及び第２のデータの第１の部分を連続して書き込み、第１のデータの第２の部分及び第２のデータの第２の部分を連続して書き込む、ものであってもよい。
【００１０】
更に、本発明は、再生されるデータをテープ媒体に書き込む方法であって、テープ媒体に書き込むデータを取得するステップと、取得されたデータをテープ媒体に書き込むステップと、テープ媒体からのデータの読出し時間を短縮するためにデータとは別に記憶されるデータの先頭部分のデータ量を、先頭部分の再生の終了までに先頭部分に続く部分の再生が開始できるように決定するステップと、取得されたデータから、決定されたデータ量の先頭部分を抽出するステップと、抽出された先頭部分を所定の記憶手段に記憶するステップとを含む、方法も提供する。
【００１１】
更にまた、本発明は、再生されるデータをテープ媒体に書き込む方法であって、テープ媒体に書き込むデータを取得するステップと、取得されたデータの第１の部分の再生の終了までに第１の部分に続くデータの第２の部分の再生が開始できるように、テープ媒体上の第１の部分が書き込まれる位置と第２の部分が書き込まれる位置との距離を決定するステップと、テープ媒体上の所定の位置に第１の部分を書き込み、所定の位置から決定された距離の間隔を開けた位置に第２の部分を書き込むステップとを含む、方法も提供する。
【００１２】
また、本発明は、再生されるデータをテープ媒体に書き込む装置としてコンピュータを機能させるプログラムであって、コンピュータを、テープ媒体に書き込む複数のデータを取得する取得部と、取得部により取得された複数のデータの各データの第１の部分の再生の終了までに第１の部分に続く各データの第２の部分の再生が開始できるように、テープ媒体上の第１の領域に各データの第１の部分を書き込み、テープ媒体上の第２の領域に各データの第２の部分を書き込む書込み部として機能させる、プログラムも提供する。
【発明の効果】
【００１３】
本発明によれば、データの全ての部分がテープ媒体に記録される場合において、データの再生を開始するまでの時間を短縮できる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面を参照して、本発明を実施するための最良の形態（以下、「実施の形態」という）について詳細に説明する。
図１は、本実施の形態が適用されるコンピュータシステム１００の構成例を示した図である。このコンピュータシステム１００は、テープライブラリ１０と、コンテンツサーバ２０と、クライアント３０ａ，３０ｂ，３０ｃ，…とが、ネットワーク８０により通信可能に接続されることにより構成されている。
【００１５】
テープライブラリ１０は、複数の磁気テープカートリッジの中から所望の磁気テープカートリッジを選択してテープドライブにロードすることで、磁気テープへのデータの書き込みや磁気テープからのデータの読み出しを行う装置である。例えば、複数の磁気テープカートリッジを複数のスロットにそれぞれ収納しておき、ロボット機構（チェンジャ）が要求された磁気テープカートリッジをスロットから取り出し、テープドライブまで搬送してロードする。尚、テープライブラリ１０にてデータの読み書きがなされるテープ媒体としては、磁気テープが代表例であるが、磁気テープ以外のテープ媒体でもよい。従って、以下では「磁気テープ」と表記せず、単に「テープ」と表記する。
【００１６】
コンテンツサーバ２０は、クライアント３０ａ，３０ｂ，３０ｃ，…の何れかからの要求に応じて、テープに記録されたコンテンツを、要求元のクライアントに提供するサーバコンピュータである。ここで、コンテンツとは、クライアント３０ａ，３０ｂ，３０ｃ，…にてユーザが鑑賞可能なひとまとまりの情報をデジタル化したデジタルデータを意味する。また、本実施の形態では、再生可能なコンテンツを対象としている。例えば、映像（動画）、音楽等である。更に、このコンテンツサーバ２０は、コンテンツの提供事業者により運営されるものでも、コンテンツの提供事業者以外の事業者によって運営されるものでもよい。そして、何れの場合であっても、新たなコンテンツの保存を要求する端末装置（例えば、クライアント３０ａ，３０ｂ，３０ｃ，…）に接続されていることが望ましい。尚、本実施の形態では、データの一例としてコンテンツを用いるが、ユーザによる鑑賞の対象という性質を持たない情報をデジタル化したデジタルデータであっても、再生できるものであれば、本実施の形態を適用することは可能である。
【００１７】
クライアント３０ａ，３０ｂ，３０ｃ，…は、ユーザがコンテンツを鑑賞するために用いる端末装置であり、例えば、ＰＣ（Personal Computer）によって実現するとよい。尚、ここでは、クライアントとして、クライアント３０ａ，３０ｂ，３０ｃ，…を示したが、以下の説明でこれらの何れかに限定しない場合は、単にクライアント３０と表記するものとする。
【００１８】
このようなシステム構成において、本実施の形態では、コンテンツサーバ２０内にディスクキャッシュを設け、ディスクキャッシュとテープライブラリ１０にてデジタルアーカイブシステムのストレージ装置を構成する。この場合、ディスクキャッシュにヒットするコンテンツの再生に比べて、ディスクキャッシュにヒットせずにテープからの呼び戻し（Recall）を必要とするコンテンツは、再生要求から再生開始までの時間が長くなる。
【００１９】
そこで、本実施の形態では、コンテンツを、先頭部分（以下、「先導部」（Leading Part）という）と、全体（以下、「全コンテンツ」（Full Content）という）とに分けて保管する。ビデオデータに代表されるコンテンツのデータストリーム速度は、ディスクキャッシュとテープドライブの間のデータ転送速度に比べて遅い。例えば、ＭＰＥＧ２データの転送速度は５０Ｍｂｐｓであるのに対して、ＬＴＯ（Linear Tape-Open）第４世代は、９６０Ｍｂｐｓのデータ転送速度を持つ。従って、ある量の先導部がディスクキャッシュ内にあれば、コンテンツの再生要求に応えることができる。そして、先導部の再生が終了する前にディスクキャッシュとテープドライブの間の全コンテンツのデータ転送を開始できれば、再生を継続することが可能となる。
【００２０】
次に、このような動作を行うコンテンツサーバ２０の機能構成について説明する。
図２は、コンテンツサーバ２０の機能構成例を示したブロック図である。
図示するように、コンテンツサーバ２０は、通信部２１と、保存制御部２２と、データ抽出部２３と、第１キャッシュ２４と、第２キャッシュ２５とを備える。また、入出力部２６と、再生制御部２７と、ステージングバッファ２８とを備える。
【００２１】
通信部２１は、保管の目的で送られてきたコンテンツやコンテンツの再生要求を、例えばクライアント３０から受信する。また、コンテンツの再生要求に応じて読み出されたコンテンツを、例えばクライアント３０に送信する。本実施の形態では、データを取得する取得部の一例として、通信部２１を設けている。
【００２２】
保存制御部２２は、通信部２１からコンテンツを受け取り、全コンテンツを第１キャッシュ２４に保管した後、そのコピーをテープに記録するために入出力部２６に送る。尚、ここでのテープへの記録を、本明細書では、事前移動（Pre-Migrate）と呼ぶ。このように、第１キャッシュ２４へのコンテンツの記録とほぼ同時に事前移動することにより、第１キャッシュ２４の障害時にコンテンツのデータが消失するのを防ぐことができる。また、保存制御部２２は、そのコンテンツの先導部を第２キャッシュ２５に保存する。この場合、保存する先導部のサイズは、先導部に続くコンテンツの部分（以下、「追尾部」（Trailing Part）という）のはじめの部分をテープからステージングバッファ２８に読み出すのに要する時間に対応する。本実施の形態では、先導部のデータ量やテープ媒体上の書き込み位置間の距離を決定する決定部の一例として、保存制御部２２を設けている。
データ抽出部２３は、保存制御部２２により渡されたコンテンツから指定されたデータを抽出する。ここで、指定されたデータとしては、例えば、上述した先導部がある。本実施の形態では、データから所定の部分を抽出する抽出部の一例として、データ抽出部２３を設けている。
【００２３】
第１キャッシュ２４は、保存制御部２２から送られたコンテンツを記憶する。但し、第１キャッシュ２４に記憶されるコンテンツの数が増加し、コンテンツの総データ量が第１キャッシュ２４の容量を超える場合、最後に使用した時間が最も古い（Least Recently Used）コンテンツで、第１キャッシュ２４への保存要求の低いものから順に、第１キャッシュ２４から削除される。このように第１キャッシュ２４からコンテンツが削除されると、この時点で、そのコンテンツはテープのみに存在することになる。このことを、本明細書では、移動（Migrate）と呼ぶ。尚、第１キャッシュ２４は、例えば半導体メモリによって実現すればよく、テープに対するディスクキャッシュとしての性格を有するものである。
第２キャッシュ２５は、第１キャッシュ２４に保存されたコンテンツの先導部を記憶する。但し、コンテンツの総データ量が第２キャッシュ２５の容量を超える場合、最後に使用した時間が最も古い（Least Recently Used）コンテンツから順に、第２キャッシュ２５から削除される。尚、第２キャッシュ２５は、例えば半導体メモリによって実現すればよい。本実施の形態では、データの先頭部分の一例として、先導部を用い、先頭部分を記憶する記憶部の一例として、第２キャッシュ２５を設けている。
【００２４】
入出力部２６は、コンテンツをテープに書き込むためにテープライブラリ１０に出力する。また、再生のためにテープから読み出されたコンテンツをテープライブラリ１０から受け取る。本実施の形態では、データをテープ媒体に書き込む書込み部の一例として、入出力部２６を設けている。
【００２５】
再生制御部２７は、通信部２１からコンテンツの再生要求を受け取ると、コンテンツが第１キャッシュ２４に存在すれば、第１キャッシュ２４からコンテンツを読み出して通信部２１に送る。また、コンテンツが第１キャッシュ２４に存在しなければ、第２キャッシュ２５から読み出した先導部と、テープから読み出した全コンテンツとを用いて、コンテンツの再生を制御する。但し、コンテンツが第１キャッシュ２４に存在しても、第１キャッシュ２４からのコンテンツの読出し及び再生が現在既に進行中で、新たなコンテンツの読出し及び再生が現在のコンテンツの再生品質に影響を及ぼす可能性がある場合がある。そのような場合は、第２キャッシュ２５から読み出した先導部と、テープから読み出した全コンテンツとを用いて、コンテンツの再生を制御するようにしてもよい。このように先導部と全コンテンツとを用いてコンテンツの再生を制御する場合、再生制御部２７は、第２キャッシュ２５から先導部を読み出して通信部２１に送り、テープから読み出された全コンテンツを入出力部２６から受け取ってステージングバッファ２８に送る。或いは、全コンテンツをステージングバッファ２８に送るのではなく、先導部に続く追尾部をステージングバッファ２８に送るようにしてもよい。先導部と追尾部とを組み合わせることにより、全コンテンツを構成することができるからである。再生制御部２７は、先導部を通信部２１に送るのに引き続き、追尾部を通信部２１に送る。尚、追尾部の再生は、追尾部の全部がテープから読み出されていなくとも開始できる。これは、コンテンツの再生のための再生データの転送速度に比べて、テープからステージングバッファ２８へのデータ転送速度が十分に速いためである。
【００２６】
ステージングバッファ２８は、テープから読み出した全コンテンツを一時的に格納するバッファである。尚、ステージングバッファ２８は、例えば磁気ディスクによって実現すればよい。
【００２７】
このように、コンテンツサーバ２０は、第２キャッシュ２５にコンテンツの先導部を記憶することにより、テープに記録されたコンテンツの再生開始までの時間を短縮している。しかしながら、第２キャッシュ２５の容量は有限であるので、保存される先導部が増加し続けた場合、例えば、最後に使用された時間が古いものからテープに移動される。
その際、本実施の形態では、次のような記録方式によりテープにコンテンツを記録するようにしている。即ち、まず、先導部のバッファリングがより短時間で行えるよう、テープ上の領域を先導部用の部分と全コンテンツ用の部分とに分け、テープに記録されたデータを最も早く読み出せる部分を先導部用として用い、この部分に先導部を集めている。また、先導部の再生が終了した時点で追尾部の再生が開始できるよう、先導部の記録長さを決定している。
【００２８】
図３は、第１の記録方式におけるテープ上の記録フォーマットの一例を示した図である。
この第１の記録方式では、先導部と全コンテンツとを同一のテープ上に保存する。つまり、１つのテープ上の領域を、先導部用領域と全コンテンツ用領域とに分け、先導部用領域にはコンテンツの先導部を、全コンテンツ用領域にはその先導部に対応する全コンテンツを記録する。
そして、先導部用領域に記録する先導部の長さを、先導部の記録位置からそれに対応する全コンテンツのうちの追尾部の記録位置までの距離に応じて決定する。この距離が長い場合は、先導部の記録長さも長くする。また、この距離が短い場合は、先導部の記録長さも短くする。これにより、先導部用領域を効率的に使用する。
【００２９】
ここで、ｊ番目のコンテンツの先導部をＬｊ、全コンテンツをＦｊとし、テープの先頭からＬｊの記録開始位置までの距離をｍｊ（ｍｍ）、テープの先頭からＦｊの記録開始位置までの距離をｋｊ（ｍｍ）とする（ｊ＝１，２，３，…）。但し、テープの先頭とは、テープ上の記録可能な領域の先頭を意味するものとし、ｍ１＝０とする。また、Ｌｊのデータ量をｂｊ（ｂｙｔｅ）、テープ上のデータの記録密度をＢｐｌ（ｂｙｔｅ／ｍｍ）、テープの走行速度をＬｓ（ｍｍ／ｓｅｃ）、コンテンツの再生速度をＢｐｐｓ（ｂｙｔｅ／ｓｅｃ）とする。この場合、ｍｊとｋｊとｂｊの間には、次の関係が成り立つ。
ｂｊ／Ｂｐｐｓ＝（ｋｊ−（ｍｊ＋ｂｊ／Ｂｐｌ）＋ｂｊ／Ｂｐｌ）／Ｌｓ＋α  （式１）
【００３０】
この式１は、先導部Ｌｊの再生が終了した時点で、テープが全コンテンツＦｊのうち少なくとも先導部Ｌｊに続く追尾部の記録開始位置に達していることを意味している。
式１の右辺の「ｋｊ−（ｍｊ＋ｂｊ／Ｂｐｌ）」は、先導部Ｌｊの記録終了位置から全コンテンツＦｊの記録開始位置までの距離を表す。但し、全コンテンツＦｊは先導部Ｌｊも含んでいるので、先導部Ｌｊに続く追尾部の記録開始位置までの距離とするため、これに「ｂｊ／Ｂｐｌ」を加えている。
また、一般に、テープから読み出されたデータはすぐ次の工程へ転送されるのではなく、例えばブロック単位でエラーのチェック等を行ってから転送される。つまり、このデータのブロック分の遅れの後、データの転送が始まることになる。そこで、式１では、先導部Ｌｊの再生が終了するのが、全コンテンツＦｊ中の追尾部の記録開始位置に達するのと同時ではなく、全コンテンツＦｊ中の追尾部の記録開始位置に達してから若干時間を経過した時点であるのが望ましいと考え、右辺に余裕分αを加えている。
そして、式１から、ｂｊは次のように表される。
ｂｊ＝（ｋｊ−ｍｊ＋α×Ｌｓ）×Ｂｐｐｓ／Ｌｓ  （式１’）
【００３１】
図４は、第２の記録方式におけるテープ上の記録フォーマットの一例を示した図である。
この第２の記録方式では、先導部と全コンテンツとを異なるテープ上に保存する。つまり、複数のテープを、先導部用テープと全コンテンツ用テープとに分け、先導部用テープにはコンテンツの先導部を、全コンテンツ用テープにはその先導部に対応する全コンテンツを記録する。これにより、１つのテープに多くの先導部を保存できるようになる。従って、そのテープがテープドライブにロードされていれば、テープを再ロードすることなく、より多くの先導部を読み出すことができる。また、一度に多くの先導部をテープから第２キャッシュ２５へ呼び戻すことができる。
そして、先導部用テープに記録する先導部の長さを、全コンテンツ用テープの先頭からその先導部に対応する全コンテンツのうちの追尾部の記録位置までの距離に応じて決定する。この距離が長い場合は、先導部の記録長さも長くする。また、この距離が短い場合は、先導部の記録長さも短くする。
【００３２】
ここで、ｊ番目のコンテンツの先導部をＬｊ、全コンテンツをＦｊとし、テープの先頭からＬｊの記録開始位置までの距離をｍｊ（ｍｍ）、テープの先頭からＦｊの記録開始位置までの距離をｋｊ（ｍｍ）とする（ｊ＝１，２，３，…）。但し、テープの先頭とは、テープ上の記録可能な領域の先頭を意味するものとし、ｍ１＝０、ｋ１＝０とする。また、Ｌｊのデータ量をｂｊ（ｂｙｔｅ）、テープ上のデータの記録密度をＢｐｌ（ｂｙｔｅ／ｍｍ）、テープの走行速度をＬｓ（ｍｍ／ｓｅｃ）、コンテンツの再生速度をＢｐｐｓ（ｂｙｔｅ／ｓｅｃ）とする。この場合、ｍｊとｋｊとｂｊの間には、次の関係が成り立つ。
ｂｊ／Ｂｐｐｓ＝（ｋｊ＋ｂｊ／Ｂｐｌ）／Ｌｓ＋α＋β  （式２）
【００３３】
この式２は、先導部Ｌｊの再生が終了した時点で、テープが全コンテンツＦｊのうち少なくとも先導部Ｌｊに続く追尾部の記録開始位置に達していることを意味している。
式２の右辺の「ｋｊ」は、テープの先頭から全コンテンツＦｊの記録開始位置までの距離を表す。但し、全コンテンツＦｊは先導部Ｌｊも含んでいるので、先導部Ｌｊに続く追尾部の記録開始位置までの距離とするため、これに「ｂｊ／Ｂｐｌ」を加えている。
また、式１に関して述べたのと同様の理由により、右辺に余裕分αを加えている。更に、この記録方式の場合、先導部用テープは常時テープドライブにロードしておき、全コンテンツ用テープは、要求があった時点でロボット機構が搬送してテープドライブにロードするような運用を行うのが好ましい。そこで、この搬送等に要する時間も余裕分βとして加えている。
そして、式２から、ｂｊは次のように表される。
ｂｊ＝（ｋｊ＋（α＋β）×Ｌｓ）×Ｂｐｌ×Ｂｐｐｓ／（Ｂｐｌ×Ｌｓ−Ｂｐｐｓ）  （式２’）
【００３４】
また、本実施の形態におけるコンピュータシステム１００では、第１キャッシュ２４から全コンテンツがテープに移動する場合がある。この場合におけるテープ上の記録方式として、次のような記録方式を第３の記録方式として採用してもよい。
図５は、第３の記録方式におけるテープ上の記録フォーマットの一例を示した図である。
この第３の記録方式は、複数のコンテンツを並行してバッファリングすることで、擬似的に複数コンテンツの同時再生を可能とするものである。つまり、テープ上の領域を複数の部分領域に分割する。図では、テープ上の領域を、部分領域Ｒ１、Ｒ２、Ｒ３に分割している。そして、部分領域Ｒｉに、第１のコンテンツの一部である部分コンテンツＰｉ，１と、第２のコンテンツの一部である部分コンテンツＰｉ，２と、第３のコンテンツの一部である部分コンテンツＰｉ，３とを連続して記録している。また、同じ方法での追加記録を可能とするため、空き領域Ｚｉも用意している（ｉ＝１，２，３）。
【００３５】
ところで、本実施の形態では、前述の通り、テープドライブにおけるデータの読み出し速度又は転送速度が、読み出されたデータのデータ再生装置における再生速度（例えば、ビデオ再生速度）に対して十分に速いことを前提とする。尚、この速度差は、テープドライブとデータ再生装置との間に設置されるバッファ装置によって吸収されるものとする。従って、部分領域Ｒｉ−１に記録された部分コンテンツＰｉ−１，ｊとこれに継続する部分コンテンツＰｉ，ｊの距離ｍｉ，ｊ−ｍｉ−１，ｊを、部分コンテンツＰｉ−１，ｊの再生時間と等しいか又はそれ以下の時間でテープを走行できる距離とすれば、データ再生装置に継続してデータを供給できる。例えば、データの読み出し又は転送の速度がデータの再生速度の１０倍であれば、ｍｉ，ｊ−ｍｉ−１，ｊをＰｉ−１，ｊの記録長さの１０倍に設定することが可能である。
【００３６】
ここで、部分領域Ｒｉに記録されたｊ番目のコンテンツの部分コンテンツをＰｉ，ｊとし、テープの先頭からＰｉ，ｊの記録開始位置までの距離をｍｉ，ｊ（ｍｍ）とする（ｉ＝１，２，３，…、ｊ＝１，２，３，…）。但し、テープの先頭とは、テープ上の記録可能な領域の先頭を意味するものとし、ｍ１，１＝０とする。また、Ｐｉ，ｊのデータ量をｂｉ，ｊ（ｂｙｔｅ）、テープ上のデータの記録密度をＢｐｌ（ｂｙｔｅ／ｍｍ）、テープの走行速度をＬｓ（ｍｍ／ｓｅｃ）、コンテンツの再生速度をＢｐｐｓ（ｂｙｔｅ／ｓｅｃ）とする。この場合、ｂｉ−１，ｊとｂｉ−１，ｊ＋１とｂｉ，ｊの間には、次の関係が成り立つ。
ｂｉ−１，ｊ＋１／Ｂｐｌ＋（ｂｉ−１，ｊ＋１／Ｂｐｐｓ）×Ｌｓ＝（ｂｉ−１，ｊ／Ｂｐｐｓ）×Ｌｓ＋ｂｉ，ｊ／Ｂｐｌ  （式３）
【００３７】
この式３は、部分コンテンツＰｉ−１，ｊ＋１の記録長さと、この部分コンテンツＰｉ−１，ｊ＋１の記録終了位置からこれに継続する部分コンテンツＰｉ，ｊ＋１の記録開始位置までの長さとの和が、部分コンテンツＰｉ−１，ｊの記録終了位置からこれに継続する部分コンテンツＰｉ，ｊの記録開始位置までの長さと、部分コンテンツＰｉ，ｊの記録長さの和に等しいことを意味している。
そして、式３から、ｂｉ，ｊは次のように表される。
ｂｉ，ｊ＝ｂｉ−１，ｊ＋１＋（ｂｉ−１，ｊ＋１−ｂｉ−１，ｊ）×Ｂｐｌ×Ｌｓ／Ｂｐｐｓ  （式３’）
【００３８】
次いで、本実施の形態におけるコンテンツサーバ２０の動作について説明する。
まず、コンテンツサーバ２０の動作のうち、コンテンツを保管する際の動作を説明する。
この場合、まず、通信部２１がコンテンツの保管要求を受け付ける。尚、このコンテンツの保管要求は、コンテンツの識別情報（コンテンツＩＤ）を伴うものとする。そして、通信部２１は、そのコンテンツ及び保管要求を保存制御部２２に渡す。これにより、保存制御部２２の動作が開始する。
【００３９】
図６は、保存制御部２２の動作例を示したフローチャートである。尚、以下では、先導部Ｌｊ及び全コンテンツＦｊ（ｊ＝１，２，３，…）を図３又は図４のように記録する場合を例にとり、説明する。
保存制御部２２は、まず、通信部２１からコンテンツを受け取る（ステップ２０１）。そして、このコンテンツの全体である全コンテンツＦｊを第１キャッシュ２４に保存する（ステップ２０２）。また、その一方で、全コンテンツＦｊのコピーを入出力部２６に渡して、テープに保存するように指示する（ステップ２０３）。
これにより、入出力部２６が、全コンテンツＦｊのコピーをテープに書き込むためにテープライブラリ１０に送り、その結果として、テープの識別情報（テープＩＤ）及びテープ上の記録開始位置ｋｊをテープライブラリ１０から受け取るので、保存制御部２２は、それらの情報を取得する（ステップ２０４）。そして、先導部Ｌｊのデータ量ｂｊを求める（ステップ２０５）。
【００４０】
この場合、先導部Ｌｊのデータ量ｂｊは、次のようにして求められる。
例えば、第１の記録方式を採用した場合、先導部Ｌｊのデータ量ｂｊは、先に述べた通り、
ｂｊ＝（ｋｊ−ｍｊ＋α×Ｌｓ）×Ｂｐｐｓ／Ｌｓ  （式１’）
で求められる。ここで、ｍｊは、先導部Ｌｊ−１を第２キャッシュ２５に記憶した際に算出されメモリに記憶されたｍｊ−１とｂｊ−１とを用いて、ｍｊ＝ｍｊ−１＋ｂｊ−１／Ｂｐｌで求められる。また、Ｂｐｌ、Ｌｓ、Ｂｐｐｓ、αは、予め与えられた定数である。
また、第２の記録方式を採用した場合、先導部Ｌｊのデータ量ｂｊは、先に述べた通り、
ｂｊ＝（ｋｊ＋（α＋β）×Ｌｓ）×Ｂｐｌ×Ｂｐｐｓ／（Ｂｐｌ×Ｌｓ−Ｂｐｐｓ）  （式２’）
で求められる。ここで、Ｂｐｌ、Ｌｓ、Ｂｐｐｓ、αは、予め与えられた定数である。また、βは、予め与えられた定数であってもよいし、ステップ２０４で取得したテープＩＤに基づいてロボット機構によるテープの搬送時間を推測して得られた数値であってもよい。
【００４１】
その後、保存制御部２２は、データ抽出部２３に対して、コンテンツの先頭からｂｊバイトを先導部Ｌｊとして切り出すよう指示する（ステップ２０６）。すると、データ抽出部２３は、指示に応じて先導部Ｌｊを切り出し、これを保存制御部２２に戻す。
これにより、保存制御部２２は、先導部Ｌｊを受け取って第２キャッシュ２５に記憶する（ステップ２０７）。そして、最後に、コンテンツＩＤと、テープＩＤと、先導部Ｌｊの記録開始位置ｍｊと、先導部Ｌｊのデータ量ｂｊとを対応付けて、メモリに記憶しておく（ステップ２０８）。ここで、記録開始位置ｍｊは、前述の通り、ｍｊ＝ｍｊ−１＋ｂｊ−１／Ｂｐｌで求められる。
【００４２】
その後、第２キャッシュ２５からテープへ先導部Ｌｊの移動がなされる場合、保存制御部２２は、次のような動作を行う。
例えば、第１の記録方式を採用した場合であれば、移動対象のコンテンツのコンテンツＩＤをキーとしてテープＩＤを取得し、このテープＩＤにより先導部Ｌｊの移動先のテープを特定する。そして、コンテンツＩＤに対応付けられている記録開始位置ｍｊまでテープを進めるコマンドを発行し、これに続けて先導部Ｌｊを書き込む。
また、第２の記録方式を採用した場合であれば、例えばテープドライブに既にロードされているテープを、先導部Ｌｊの移動先のテープとして特定する。そして、コンテンツＩＤに対応付けられている記録開始位置ｍｊまでテープを進めるコマンドを発行し、これに続けて先導部Ｌｊを書き込む。
【００４３】
ところで、本実施の形態では、ステップ２０３で全コンテンツをテープに移動する際に、第３の記録方式を採用してもよい。
そこで、第３の記録方式にて全コンテンツを記録する際の動作について説明する。
図７は、このときの保存制御部２２の動作例を示したフローチャートである。
まず、保存制御部２２は、部分領域をカウントするための変数ｉに「１」を代入し（ステップ２２１）、コンテンツをカウントするための変数ｊに「１」を代入する（ステップ２２２）。以下、ｉ＝１，２，３，…Ｒｎ、ｊ＝１，２，３，…Ｃｎの全ての（ｉ，ｊ）について、次の処理を行う。ここで、Ｒｎはテープ上に設けられた部分領域の数、Ｃｎはテープ上に記録するコンテンツの数を意味する。
【００４４】
即ち、まず、保存制御部２２は、Ｐｉ,ｊのデータ量ｂｉ，ｊを決定する（ステップ２２３）。
ここで、ｉ＝１であれば、データ量ｂｉ，ｊは、任意に決定してよい。例えば、最小バッファデータ量の２０倍とすることが考えられる。尚、最小バッファデータ量とは、上述したエラーチェックを行う単位であるブロックのデータ量である。
また、ｉ＞１であれば、データ量ｂｉ，ｊは、
ｂｉ，ｊ＝ｂｉ−１，ｊ＋１＋（ｂｉ−１，ｊ＋１−ｂｉ−１，ｊ）×Ｂｐｌ×Ｌｓ／Ｂｐｐｓ  （式３’）
で求められる。ここで、ｂｉ−１，ｊ、ｂｉ−１，ｊ＋１は、部分コンテンツＰｉ−１，ｊ、Ｐｉ−１，ｊ＋１をテープに書き込んだ際に算出されメモリに記憶されたものを用いるとよい。また、Ｂｐｌ、Ｌｓ、Ｂｐｐｓは、予め与えられた定数である。
【００４５】
その後、保存制御部２２は、データ抽出部２３に対して、コンテンツの先頭からｂｉ，ｊバイトを部分コンテンツＰｉ，ｊとして切り出すよう指示する（ステップ２２４）。すると、データ抽出部２３は、指示に応じて部分コンテンツＰｉ，ｊを切り出し、これを保存制御部２２に戻す。
これにより、保存制御部２２は、部分コンテンツＰｉ，ｊを受け取って、テープに書き込むよう入出力部２６に指示する（ステップ２２５）。すると、入出力部２６は、部分コンテンツＰｉ，ｊをテープに書き込むため、テープライブラリ１０に出力する。その際、コンテンツＩＤも部分コンテンツＰｉ，ｊに付加して書き込まれるものとする。また、保存制御部２２は、ｂｉ，ｊ、ｍｉ，ｊをメモリに記憶する。尚、ｍｉ，ｊは、ｍｉ，ｊ＝ｍｉ−１，ｊ＋（ｂｉ−１，ｊ／Ｂｐｐｓ）×Ｌｓで求められる。
そして、最後に、保存制御部２２は、ｊがＣｎよりも小さいかどうかを判定する（ステップ２２６）。ｊがＣｎよりも小さければ、ｊに「１」を加算して（ステップ２２７）、ステップ２２３に戻る。また、ｊがＣｎに達していれば、ｉがＲｎよりも小さいかどうかを判定する（ステップ２２８）。ｉがＲｎよりも小さければ、テープを先頭からｍｉ＋１，１の位置まで走行させるコマンドを発行し（ステップ２２９）、ｉに「１」を加算して（ステップ２３０）、ステップ２２２に戻る。尚、ｍｉ＋１，１は、ｍｉ＋１，１＝ｍｉ，１＋（ｂｉ，１／Ｂｐｐｓ）×Ｌｓで求められる。
【００４６】
次に、コンテンツサーバ２０の動作のうち、コンテンツを読み出す際の動作を説明する。
この場合、まず、通信部２１がコンテンツの再生要求を受け付ける。尚、このコンテンツの再生要求は、コンテンツの識別情報（コンテンツＩＤ）を伴うものとする。そして、通信部２１は、そのコンテンツＩＤ及び再生要求を再生制御部２７に渡す。これにより、再生制御部２７の動作が開始する。
【００４７】
図８は、再生制御部２７の動作例を示したフローチャートである。
再生制御部２７は、まず、通信部２１からコンテンツの再生要求を受け付ける（ステップ２４１）。次に、このコンテンツの全体である全コンテンツＦｊが第１キャッシュ２４に記憶されているかどうかを判定する（ステップ２４２）。
その結果、全コンテンツＦｊが第１キャッシュ２４に記憶されていれば、これを第１キャッシュ２４から読み出して、通信部２１に渡す（ステップ２４３）。
【００４８】
一方、全コンテンツＦｊが第１キャッシュ２４に記憶されていなければ、再生制御部２７は、このコンテンツの先導部Ｌｊが第２キャッシュ２５に記憶されているかどうかを判定する（ステップ２４４）。ここで、先導部Ｌｊが第２キャッシュ２５に記憶されていなければ、テープから先導部Ｌｊを読み出すよう入出力部２６に指示する（ステップ２４５）。具体的には、コンテンツＩＤをキーとして先導部Ｌｊの記録開始位置ｍｊを特定し、そこまでテープを走行させるコマンドと、そこからデータを読み出すコマンドとを発行するよう、入出力部２６に指示する。そして、これにより入出力部２６が読み出した先導部Ｌｊを取得して第２キャッシュ２５に記憶し、これを通信部２１にも受け渡す（ステップ２４６）。また、先導部Ｌｊが第２キャッシュ２５に記憶されていれば、そのまま第２キャッシュ２５から読み出して、通信部２１に受け渡す（ステップ２４６）。
【００４９】
その後、再生制御部２７は、このコンテンツの追尾部Ｔｊがステージングバッファ２８に記憶されているかどうかを判定する（ステップ２４７）。ここで、追尾部Ｔｊがステージングバッファ２８に記憶されていなければ、テープから追尾部Ｔｊを読み出すよう入出力部２６に指示する（ステップ２４８）。具体的には、コンテンツＩＤをキーとして追尾部Ｔｊの記録開始位置を特定し、そこまでテープを走行させるコマンドと、そこからデータを読み出すコマンドとを発行するよう、入出力部２６に指示する。尚、追尾部Ｔｊの記録開始位置は、ｋｊ＋（ｍｊ−ｍｊ−１）／Ｂｐｌにより求められる。そして、これにより入出力部２６が読み出した追尾部Ｔｊを取得してステージングバッファ２８に記憶し、これを通信部２１にも受け渡す（ステップ２４９）。また、追尾部Ｔｊがステージングバッファ２８に記憶されていれば、そのままステージングバッファ２８から読み出して、通信部２１に受け渡す（ステップ２４９）。
【００５０】
尚、この動作例では、ステップ２４８で１つのコンテンツの追尾部を読み出すようにしたが、これには限らない。例えば、複数のコンテンツが図５のようなフォーマットで記録されている場合に、同一テープに記憶された複数のコンテンツの再生要求があった場合に、これらを同時に読み出して再生することもできる。
【００５１】
図９は、このときの再生制御部２７の動作例を示したフローチャートである。
再生制御部２７は、まず、テープから読み出したコンテンツを入出力部２６から受け取る（ステップ２６１）。次に、読み出したコンテンツに付加されたコンテンツＩＤに基づいて、読み出したコンテンツを蓄積すべきバッファを特定する（ステップ２６２）。そして、ステップ２６１で受け取ったコンテンツを、ステップ２６２で特定したバッファに格納する（ステップ２６３）。
【００５２】
このような動作により、図５の部分領域に記録されたコンテンツごとのデータは、それぞれのデータに対応するコンテンツ用バッファに蓄積される。
図１０は、このようなバッファへのデータの読み込みの様子を示したものである。即ち、第１のコンテンツの部分コンテンツＰ１，１、Ｐ２，１、Ｐ３，１が、バッファ２８ａに格納され、第２のコンテンツの部分コンテンツＰ１，２、Ｐ２，２、Ｐ３，２が、バッファ２８ｂに格納され、第３のコンテンツの部分コンテンツＰ１，３、Ｐ２，３、Ｐ３，３が、バッファ２８ｃに格納されている。尚、この図において、各バッファは、連続アクセスが可能であることを示す概念的な図として示したに過ぎず、各バッファが連続した物理メモリアドレスを持つ必要はない。また、白抜きの矢印は、データが格納される方向を示している。このようにバッファリングがほぼ並行して進行することから、複数のコンテンツの効率的な再生が可能となる。
【００５３】
また、再生要求が発生した場合、最初に再生される部分を予めバッファに蓄積しておくこともできる。例えば、図１０において、テープの先頭に近い部分領域Ｒ１とＲ２に記録されたデータをメモリバッファに事前蓄積しておいてもよい。この事前蓄積により、テープロード時間等によって発生する再生遅延時間を吸収することが可能となる。
【００５４】
ところで、上記説明では、テープ上のデータの記録密度Ｂｐｌ、テープの走行速度Ｌｓ、コンテンツの再生速度Ｂｐｐｓを固定の値とした。しかしながら、必ずしも固定の値にしなくてもよい。例えば、テープ上のデータの記録密度Ｂｐｌ、テープの走行速度Ｌｓは、コンテンツが記録されるテープによって異なるようにしてもよい。また、コンテンツの再生速度Ｂｐｐｓは、コンテンツによって異なるようにしてもよい。
【００５５】
このように、本実施の形態では、第１の記録方式、第２の記録方式、第３の記録方式でテープにコンテンツを記録するようにした。つまり、コンテンツの第１の部分（例えば先導部）の再生の終了までに第１の部分に続く第２の部分（例えば、追尾部）の再生が開始できるように、第１及び第２の部分を記録するようにした。これにより、コンテンツの全ての部分がテープに記録される場合において、コンテンツの再生を開始するまでの時間を短縮することができるようになった。また、その際、第１の部分の再生の終了時期と、第２の部分の再生の準備が整う時期とができるだけ近づくように、第１の部分が再生している間にテープが走行する距離だけ離れた位置に第２の部分を記録することで、第１の部分と第２の部分との間の領域を有効に利用できるようにした。
【００５６】
最後に、本実施の形態を適用するのに好適なコンピュータのハードウェア構成について説明する。図１１は、このようなコンピュータのハードウェア構成の一例を示した図である。図示するように、コンピュータは、演算手段であるＣＰＵ(Central Processing Unit）９０ａと、Ｍ／Ｂ(マザーボード）チップセット９０ｂを介してＣＰＵ９０ａに接続されたメインメモリ９０ｃと、同じくＭ／Ｂチップセット９０ｂを介してＣＰＵ９０ａに接続された表示機構９０ｄとを備える。また、Ｍ／Ｂチップセット９０ｂには、ブリッジ回路９０ｅを介して、ネットワークインターフェイス９０ｆと、磁気ディスク装置（ＨＤＤ）９０ｇと、音声機構９０ｈと、キーボード／マウス９０ｉと、フレキシブルディスクドライブ９０ｊとが接続されている。
【００５７】
尚、図１１において、各構成要素は、バスを介して接続される。例えば、ＣＰＵ９０ａとＭ／Ｂチップセット９０ｂの間や、Ｍ／Ｂチップセット９０ｂとメインメモリ９０ｃの間は、ＣＰＵバスを介して接続される。また、Ｍ／Ｂチップセット９０ｂと表示機構９０ｄとの間は、ＡＧＰ（Accelerated Graphics Port）を介して接続されてもよいが、表示機構９０ｄがＰＣＩ Ｅｘｐｒｅｓｓ対応のビデオカードを含む場合、Ｍ／Ｂチップセット９０ｂとこのビデオカードの間は、ＰＣＩ Ｅｘｐｒｅｓｓ（ＰＣＩｅ）バスを介して接続される。また、ブリッジ回路９０ｅと接続する場合、ネットワークインターフェイス９０ｆについては、例えば、ＰＣＩ Ｅｘｐｒｅｓｓを用いることができる。また、磁気ディスク装置９０ｇについては、例えば、シリアルＡＴＡ（AT Attachment）、パラレル転送のＡＴＡ、ＰＣＩ（Peripheral Components Interconnect）を用いることができる。更に、キーボード／マウス９０ｉ、及び、フレキシブルディスクドライブ９０ｊについては、ＵＳＢ（Universal Serial Bus）を用いることができる。
【００５８】
ここで、本発明は、全てハードウェアで実現してもよいし、全てソフトウェアで実現してもよい。また、ハードウェア及びソフトウェアの両方により実現することも可能である。また、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線又は半導体システム（装置又は機器）、或いは、伝搬媒体が考えられる。また、コンピュータにより読取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、リジッド磁気ディスク、及び光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク−リードオンリーメモリ（ＣＤ−ＲＯＭ）、コンパクトディスク−リード／ライト（ＣＤ−Ｒ／Ｗ）及びＤＶＤが含まれる。
【００５９】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態が適用されるコンピュータシステムの全体構成を示したブロック図である。
【図２】本発明の実施の形態におけるコンテンツサーバの機能構成例を示した図である。
【図３】本発明の実施の形態によりデータが記録されたテープのフォーマットの例を示した図である。
【図４】本発明の実施の形態によりデータが記録されたテープのフォーマットの例を示した図である。
【図５】本発明の実施の形態によりデータが記録されたテープのフォーマットの例を示した図である。
【図６】本発明の実施の形態におけるコンテンツサーバのコンテンツ書込み時の動作例を示したフローチャートである。
【図７】本発明の実施の形態におけるコンテンツサーバのコンテンツ書込み時の動作例を示したフローチャートである。
【図８】本発明の実施の形態におけるコンテンツサーバのコンテンツ読出し時の動作例を示したフローチャートである。
【図９】本発明の実施の形態におけるコンテンツサーバのコンテンツ読出し時の動作例を示したフローチャートである。
【図１０】本発明の実施の形態による複数のコンテンツのバッファへの読出しの様子を示した図である。
【図１１】本発明の実施の形態を適用可能なコンピュータのハードウェア構成を示した図である。
【符号の説明】
【００６１】
２０…コンテンツサーバ、２１…通信部、２２…保存制御部、２３…データ抽出部、２４…第１キャッシュ、２５…第２キャッシュ、２６…入出力部、２７…再生制御部、２８…ステージングバッファ
【図１】
0005068197.tif 000002
【図２】
0005068197.tif 000003
【図３】
0005068197.tif 000004
【図４】
0005068197.tif 000005
【図５】
0005068197.tif 000006
【図６】
0005068197.tif 000007
【図７】
0005068197.tif 000008
【図８】
0005068197.tif 000009
【図９】
0005068197.tif 000010
【図１０】
0005068197.tif 000011
【図１１】
0005068197.tif 000012