(57)【特許請求の範囲】
【請求項１】
データの複数のサブセットを備えるデータのセットを一つ以上のサーバに保持するステップであって、データの各サブセットが、複数のクライアント・デバイスの内の特定クライアントに関連し、かつ特定クライアント・デバイスに関連するデータの各サブセットのバックアップ・コピーが、暗号化されかつ前記特定クライアント・デバイスに格納されている、ステップと、
前記一つ以上のサーバが、前記複数のクライアント・デバイスの特定クライアント・デバイスに関連する前記データの複数のサブセットの内のデータのサブセットが、破損していると決定するステップと、
前記一つ以上のサーバが、前記特定のクライアント・デバイスからのリクエストを受信するステップと、
前記リクエストの受信に応答して、前記一つ以上のサーバが、前記クライアント・デバイスから前記データのサブセットの前記バックアップ・コピーを取得し、かつ前記取得された前記データのサブセットの前記バックアップ・コピーにより前記破損しているデータのサブセットを修理するステップと、
を備える方法。
【請求項２】
前記クライアント・デバイスから前記データのサブセットの前記バックアップ・コピーを取得することが、暗号化された送信を用いて行われる、請求項１に記載の方法。
【請求項３】
前記特定のクライアント・デバイスが、前記特定のクライアント・デバイスに格納されている前記暗号化されたデータのサブセットを読み出すことが出来ない、請求項１に記載の方法。
【請求項４】
前記特定のクライアント・デバイスからの前記リクエストが、前記クライアント・デバイスの前記データのサブステップを、前記一つ以上のサーバに格納されている前記データのセットに同期させる同期化リクエストである、請求項１に記載の方法。
【請求項５】
特定のクライアント・デバイスに格納されている、特定のクライアント・デバイスに関連する前記複数のデータのサブセットの内の前記データのサブセットが、前記特定クライアント・デバイスを制御するユーザに関連している、請求項１に記載の方法。
【請求項６】
前記複数のクライアント・デバイスの少なくとも一つが、DVR、モバイル・デバイスまたはパーソナル・コンピュータである、請求項１に記載の方法。
【請求項７】
前記一つ以上のプロセッサに請求項１〜６の何れか１項に記載の方法を実行させる一つ以上の命令のシーケンスを格納するコンピュータ可読の格納媒体。
【請求項８】
プロセッサを備え、かつ請求項１〜６の何れか１項に記載の方法を実行するように構成されている装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、企業システムのデータをバックアップすること、より具体的には、複数のクライアント・デバイス全体のサーバ・データをバックアップすることに関する。
【背景技術】
【０００２】
この背景技術に記載されるアプローチは、追求することができるアプローチであるが、必ずしも以前に想像されたかまたは追求されたアプローチではない。従って、特に明記しない限り、この背景技術に記載されている如何なるアプローチも、それがこの背景技術に含まれていると言う理由のみで、従来技術とみなすべきではない。
【０００３】
消費者分野へのDVRの導入は、ユーザがテレビ番組を見る、および、録画する方法に革命をもたらした。DVRは、多数のテレビ番組を格納することができるハード・ドライブにテレビ番組を録画する。DVRのユーザは、近い将来、放送されまたは転送されることになる特定コンテンツをDVRに録画することを予約するようにDVRに命令することができる。例えば、ユーザは、特定日時に開始しかつ他の特定時刻に終了する特定チャンネルで放送されるであろう不特定コンテンツを録画するように、DVRに命令することができる。別の例としては、ユーザは、特定映画、特定イベント、または、マルチ・エピソード・テレビ・シリーズの特定エピソードの（特定チャンネルで、特定日時に開始する）特定の放映を、録画するようDVRに命令することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第6,233,389号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
DVRサービスのサービス・プロバイダは、特有のサービスを提供するために、特定ユーザに関係のあるデータを中央化されたサーバに格納することができる。例えば、ユーザは、（例えば、ウェブサイトを通して）リモート・インターフェースで、特定チャンネルに関するマルチ・エピソード・テレビ・シリーズの全てのエピソードを、ユーザのDVRに録画するように命令することができる。このような状況で、録画の命令に関するデータは、中央サーバによって処理され、特定ユーザのために中央サーバに格納される。中央サーバは、要求されたコンテンツをDVRが録画するために、録画する命令についてのデータをユーザのDVRに送信する。
【０００６】
サービスを提供するための中央サーバの使用は、特にインターネットの使用と共に、はるかに拡がって来ている。例えば、DVRサービスに加えて、携帯電話のような他の個人的またはモバイル・デバイスによるサービスは、より一般的になっている。これらの中央化されたサービスが日々の生活に加わることにより、これらのサービスを提供するためにデータをバックアップすることは、ますます重要になって来ている。
【図面の簡単な説明】
【０００７】
本発明は、添付図面において、一例として示され、かつ、これに限定されるものではなく、また、類似する参照番号は、同種の要素を示す。
【図１Ａ】本発明の一実施例による分散バックアップおよび回復が実装されるシステム例を例示する。
【図１Ｂ】本発明の一実施例によるデジタル・ビデオテープ・レコーダー（DVR）のコンポーネントの一般的な概要を例示するブロック図である。
【図２】本発明の一実施例による中央サーバに接続された複数のクライアント・デバイス／DVRを例示するダイアグラムである。
【図３】本発明の一実施例によるクライアント・デバイスにデータのバックアップを実行するためのステップを例示するフローチャートのダイアグラムである。
【図４】本発明の一実施例によるクライアント・デバイスがオンラインであるときのデータの回復を実行するためのステップを例示するフローチャートのダイアグラムである。
【図５】本発明の実施例が実装することができるシステムのブロック図である。
【発明を実施するための形態】
【０００８】
以下の説明では、説明の必要上、本発明の完全な理解を提供するために、多くの具体的な詳細が記載される。しかしながら、本発明がこれらの具体的な詳細なしで実行できることは、明らかである。その他の場合では、本発明を不必要に不明瞭にすることを避けるため、周知の構造及び装置は、ブロック図の形式で示される。
【０００９】
実施例は、本願明細書において以下の概要に従って記載される。
1.0  全体的な概要
2.0  構造的な概要
3.0  DVRサービス・プロバイダの分散バックアップ
3.1  データ競合およびポリシー
3.2  格納されるデータのタイプ
3.3  プライバシーおよび暗号化
3.3  データ回復
4.0  企業システムの分散バックアップ
5.0  実装メカニズム
6.0  実施例
【００１０】
1.0  全体的な概要
上記の背景において認識された必要性、および、以下の記載から明らかになるその他の必要性および目的は、分散されたバックアップおよび回復を実行する方法を備える本発明により達成される。
【００１１】
DVRサービスのある種の特徴を提供するために、サービス・プロバイダは、中央化された場所にデータを保持することができる。本明細書で用いられるデータを「保持すること」は、サービスを提供するために使用されるデータを処理すること、格納すること、回復することおよび修正することのいずれに関するものとすることができる。データは、特定ユーザから始まってもよくて、サービス・プロバイダが特定ユーザのために特別のサービスを実行することを可能にすることができる。例えば、ユーザは、映画が放送されるであろう日付または時間を特定することなく、特定されたチャンネルで最初に上映された映画をそのDVRに録画するように命令することができる。このような状況で、録画に関するデータは、少なくとも一つのサーバによって処理され、サービス・プロバイダの特定ユーザのために一つ以上のサーバによって保持される。
【００１２】
多数のサービスが何千ものユーザに提示される状況において、保持されるデータ量は、極めて大規模になる。データなしでDVRサービスを適切に提供することはできないので、データを保持することは重要である。したがって、突発故障または中央データが失われた場合に、データを回復できるように、バックアップ・システムを持つことは、如何なるデータ格納システムにとっても重要である。本明細書で用いられるデータの「破損」とは、完全若しくは部分的なデータの破損、データの読み込み、回復若しくは修正ができなくなるエラー、又は、データの正確な保守に影響を及ぼすイベントを意味する。
【００１３】
DVRサービスのプロバイダと同様に、大規模なデータ量を格納しかつバックアップすることは、多数の企業システムにより行われている。これらの大規模なデータ量は、一つ以上のサーバによって制御されるデータセンタの格納デバイス上のデータベースに格納させることができる。本明細書で用いられるデータセンタは、多数の異なるユーザに関する情報を保有する格納デバイスの大規模な数を収容する。格納デバイスは、ディスクドライブおよびテープドライブを含むことができる。データセンタは、単一の地理的な領域に位置させることができる。
【００１４】
一つのバックアップ・システムの場合、各々のデータベースは、スタンバイ・データベースに複製される。中央化されたデータのセットが何らかの方法で損なわれた場合、データは、スタンバイ・データベースから回復させることができる。このバックアップ・システムは、多くの態様でデータ破損を防止する。例えば、データベースが、電力サージまたはハードディスクの故障のために機能しなくなった場合、データベースに格納されたデータは、スタンバイ・データベースから使用することができ、かつサービスは、少ししか中断させないことができる。
【００１５】
しかしながら、ローカル・スタンバイ・システムは、破損がデータおよびスタンバイ・データベースのセントラル・セットで同時に生じる状況では使用できないかもしれない。例えば、中央データおよびスタンバイ・データベースが位置するデータセンタが、地震またはハリケーンのような大破を受けた場合、中央データおよびバックアップ・データベースは破損してしまう。このため、スタンバイまたはバックアップ・データベースは、データセンタから地理的に異なる領域に位置させることができる。
【００１６】
残念なことに、中央データをデータセンタに格納して、バックアップ・データベースを別の地理的に異なる場所に格納するには、高いコスト（例えば、経済的および総工数）が、発生することになる。バックアップ場所の土地のコスト、ユーティリティおよびオペレーションは、単一のデータセンタしか保持しない場合には発生しないコストである。加えて、リモート施設でバックアップ・データベースを格納することは、より多くの時間を必要とする。2つの場所における作業を調整してバックアップを正確に保持するためには、手順を、生成する必要がある。また、2つの施設を保持する場合、バックアップのエラーを検出することは、より難しくなるであろう。
【００１７】
中央データおよびリモート・バックアップ施設のデータセンタを保持することには、さらなる問題がある。機密に関わる顧客データが転送の間に傍受されるかもしれないとき、データを転送することは、プライバシーに対する懸念を発生させるかもしれない。同様に、データが2つの場所に格納されている場合、一つの場所はデータ侵入から適切に保全されるかもしれないが、もう一方の場所は侵入攻撃を受けやすいままにおかれるかもしれない。
【００１８】
データベースにバックアップを格納することは、データ量が飛躍的に増大するにつれてより高価となりかつ時間がかかるものとなり、リモート・バックアップ施設を保持することが複雑になることが認識されつつある。DVRサービス・プロバイダによって使用される分散ネットワークでは、中央サーバの処理データは、多数のクライアントから送信され、その処理されたデータはデータベースに格納することができる。一実施例の場合、中央サーバは、単一の大規模なバックアップ・データベースに処理されたデータのバックアップを格納するのではなく、中央サーバは、処理されたデータの部分またはサブセットをクライアント自体にバックアップさせて、分散方式でバックアップを格納することができる。
【００１９】
一実施例の場合、ユーザは、一つ以上のクライアントを所有しかつこれらのクライアントを彼らの自宅に置くことができる。ユーザが所有する一つ以上のクライアントにバックアップされる処理されたデータのサブセットは、ユーザまたはユーザの特別なクライアント・デバイスに関連する処理されたデータのサブセットである。
【００２０】
分散バックアップを実行することは、単一の大規模なデータベースのバックアップを格納することに勝る多くの効果を提供する。ユーザに関連する処理されたデータを彼ら自身のクライアントにバックアップすることは、コスト効率がより良くなり、保持するのがより容易になる。オンサイト、または、リモート施設で別々のバックアップを保持するためのコストは、避けられる。クライアント上にバックアップされたデータは、単一のデータベースになされるバックアップより最新のものとすることができる。例えば、クライアント・デバイスに格納されるデータは、一日に複数回中央サーバのデータにアップデートさせることができるが、単一のデータベースにバックアップされるデータは、1日に1回しかアップデートさせないようにすることもできる。同様に、ユーザまたはクライアントに関連するデータがバックアップされるユーザ自身のクライアントは、ユーザのデータが、多くの他のユーザの情報を有するリモートの場所には格納されずに、彼ら自身のデバイスにバックアップされるので、プライバシー問題が解消される。
【実施例】
【００２１】
2.0  構造的な概要
図１Ａは、実施例による分散バックアップおよび回復が実施されるシステム例を例示する。このシステムは、イーサネット（登録商標）・インターフェースまたは無線通信ポートのような任意の通信インターフェースを通してネットワーク105に通信で接続されるDVR 102AおよびDVR 102Bを包含する。DVRの機能は、本出願人が所有する米国特許第6,233,389号において典型的に示され、これは、本願明細書に引用されているものとする。さらにこのシステムは、サービス・プロバイダ104、コンテンツ・プロバイダ106、パーソナル・コンピュータ108およびポータブル・デバイス110を含む。
【００２２】
パーソナル・コンピュータ108は、パーソナル・コンピューティング・デバイス（例えば、デスクトップ・コンピュータまたはラップトップ・コンピュータ） でもよく、また、無線を含む任意の通信インターフェースを通してネットワーク105に接続される。ポータブル・デバイス110は、任意の携帯コンピューティング・デ バイス、携帯電話、ポータブル・メディア・プレーヤ、または、マルチメディア・コンテンツを表示することが可能でかつ無線を含む任意の通信インターフェースを通してネットワーク105に接続される他の任意のポータブル・デバイスとすることができる。DVR 102Aおよび102B、パーソナル・コンピュータ108およびポータブル・デバイス110は、各々ネットワー ク105を通してサービス・プロバイダ104と通信する。他の実施例の場合、各々のパーソナル・コンピュータ108およびポータブル・デバイス110は、ネットワーク105を通してコンテンツ・プロバイダ110と通信する。
【００２３】
ネットワーク105は、通信システムの装置間のデータの交換を提供する任意の媒体またはメカニズムによって実施することができる。ネットワーク105の一例としては、ネットワーク（例えば、ローカル・エリア・ネットワーク（LAN）、ワイド・エリア・ネットワーク（WAN）、インターネット、一つ以上の地上波、衛星、または、無線リンク、その他）が挙げられるが、これらに限定されるものではない。これらに代えて、または、加えて、ネットワーク105に接続されている多くのデバイスを、通信リンクを通して各々直接接続させることができる。
【００２４】
一実施例において、コンテンツ・プロバイダ106は、ケーブル、衛星、地上波の通信または他の転送方法を介してDVR 102Aおよび102Bに放送番組コンテンツを提供する。放送番組コンテンツは、任意のマルチメディア・コンテンツ（例えば、オーディオ、画像、または、ビデオのコンテンツ）を包含することができる。他の実施例の場合、コンテンツ・プロバイダ106は、DVR 102Aおよび102B、パーソナル・コンピュータ108またはポータブル・デバイス110にネットワーク105を通してマルチメディア・コンテンツ（例えば、任意のダウンロード可能なコンテンツ）を提供する。
【００２５】
一実施例の場合、DVR 102Aおよび102Bは、プログラム・ガイド・データ、グラフィック・リソース（例えば、フォント、画像、その他）、サービス情報、ソフトウェア、広告、イベント識別名およびデータの他の形式を提供するサービス・プロバイダ104と通信する。そのデータは、ユーザの興味を満たすためにDVR 102Aおよび102Bがサービス・プロバイダ104と独立して動作することを可能にする。
【００２６】
他の実施例の場合、コンテンツ・プロバイダ106は、サービス・プロバイダ104に、プロモーションのデータ、アイコン、ウェブ・データおよびその他の情報を包含するコンテンツ・データまたは任意のメタデータを提供することができる。サービス・プロバイダ104は、メタデータを解釈し、DVR 102Aおよび102B、パーソナル・コンピュータ108またはポータブル・デバイス110にコンテンツ・データおよびメタデータを提供することができる。
【００２７】
図１Ｂを参照すると、一実施例の場合、一般に、DVR 102A（DVR 102Bは、同じコンポーネントを含み、同じ機能を実行する）は、（アナログ・テレビ信号をデジタル化して、それをデジタル・データ・ストリームに変換、または、デジタル・データ・ストリームを受け入れるのに必要な）シグナル・コンバータ154によって示される複数のコンポーネントを備える。DVR 102Aは、入力152Aを介して、アンテナ、ケーブル・テレビ・システム、衛星受信機、その他から放送信号を受信する。入力152Aは、複数の信号を受信し、同時に録画できる複数のチューニング・モジュールを備えることができる。
【００２８】
録画モジュール160は、（デジタル・データ・ストリームのセグメントを保持するように設計されている格納装置164によって示される）少なくとも一つの格納装置にデジタル・データ・ストリームを格納することによって、着信データ・ストリームを録画する。格納装置164は、DVRのユーザに関連している処理されたデータのバックアップを格納するために使用することもできる。シグナル・コンバータ154は、データ・ストリームのセグメントを読み出して、データ・ストリームをアナログ信号に変換し、信号が標準のテレビ受像機または受信デバイスに配信される出力152Bを介して、RF搬送波上へ信号を変調する。これに代えて、出力152Bが、テレビ受像機または表示装置にデジタル信号を配信することもできる。例えば、DVR 102Aは、HDCP（High-bandwidth Digital Content Protection）ポートにHDMIケーブルを介してTVにデジタル信号を送信するために利用することができる。
【００２９】
また、DVR 102Aは、DVR 102Aがイーサネット（登録商標）、ワイヤレス・ネットワーク、モデム、USB、その他の通信の標準規格を介してネットワーク105に通信する通信インターフェース162を含む。さらに、DVR 102Aは、上記のコンポーネントがDVR 102Aの各々のコンポーネントの機能を実行することができるテレビ受像機に収容されるように、テレビ・システムに組み込むことができる。
【００３０】
他の実施例の場合、一般にDVR 102Aは、パソコン、DVR、サービス・プロバイダ、または、コンテンツ・サーバのような複数のソースから、デジタル・データ信号を受信、録画、格納、転送、表示、再生するのに必要な複数のコンポーネントを備える。DVR 102Aは、別のDVR、ポータブル・デバイスまたはパソコンにデジタル・データ信号を伝達することができる。これは、2つのDVRとの通信を可能にしているDVR 102AとDVR 102Bとの接続に関する図１Ａに示すことができる。DVR 102Aは、再生、表示、格納または伝達のための複数のフォーマットに、エンコーダー156Aおよびデコーダー156Bを介してデジタル信号をエンコードまたはデコードすることができる。さらにDVR 102Aは、デジタル・データ信号の蓄積、伝達、表示または再生のためにエンコーダー／デコーダー158を用いてデジタル・データ信号をエンコードまたはデコードすることができる。
【００３１】
一実施例の場合、DVR 102Aは、番組ガイド・データ、ブランド・アイコンのようなグラフィック・リソースおよび画像、サービス情報、ソフトウェア・プログラム、広告、補助的プログラム・データ、および、DVR 102が自律的な録画機能を実行するためにサービス・プロバイダ104から独立して動作することを可能にするデータの他の形式を提供するサービス・プロバイダ103と通信する。DVR 102Aとサービス・プロバイダ104間の通信は、サービス・データおよびユーザのプライバシーが保護されるように、DVR 102Aとサービス・プロバイダ104間のデータを転送するのに安全な配布アーキテクチャーを利用する。
【００３２】
3.0  DVRサービス・プロバイダの分散バックアップ
一実施例の場合、DVRサービス・プロバイダのバックアップは、クライアント・デバイスに分散された方式で格納される。DVRサービスは、分散ネットワークのサービス・プロバイダによって提供される。中央サーバは、多数のクライアント・デバイスから送信されたデータを処理し、かつDVRサービスを提供するために、その処理されたデータを格納する。本明細書で用いられる「中央サーバ」は、データを処理する一つ以上のサーバとすることができる。中央サーバは、処理されたデータを主データベースに格納することができる。本明細書で用いられる「主データベース」は、中央サーバがデータを格納する、回復する、または、修正する一つ以上のデータベースとすることができる。本明細書で用いられる「クライアント・デバイス」は、DVR、モバイル・デバイスまたはパーソナル・コンピュータとすることができるが、これに制限されさるものではない。モバイル・デバイスは、携帯用に設計されたデバイスであって、バッテリを使用して駆動することができる。モバイル・デバイスは、携帯電話、PDA、ポータブル・ビデオプレーヤ、ポータブル・ミュージック・プレーヤ、ポータブル・メディア・プレーヤまたはポータブルDVRを含むが、これに限定されるものではない。
【００３３】
一実施例の場合、クライアント・デバイス自体にバックアップされる処理されたデータのサブセットに関して、中央サーバは、中央データベースのバックアップを分散された方式で格納する。ユーザは、一つ以上のクライアント・デバイスを所有しかつこれらのクライアントを彼らの自宅またはオフィスに置くこともできる。ユーザが所有する一つ以上のクライアントにバックアップされる処理されたデータのサブセットは、ユーザまたは特別のクライアント・デバイスに関連する処理されたデータのサブセットである。
【００３４】
クライアント・デバイスに接続される中央サーバおよび主データベースの例が、図２に例示される。図２において、主データベースを有する中央サーバ200は、ネットワーク202を介して複数のクライアント・デバイスに接続されている。ポータブル・デバイス204A、DVR 204BおよびDVR 204Cは、同じユーザによって所有される3つのクライアント・デバイスを表す。パーソナル・コンピュータ206AおよびDVR 206Bは、同じユーザによって所有され、ネットワーク202によって中央サーバ200に接続された2つのクライアント・デバイスを表す。DVR 208は、ネットワーク202によって中央サーバ200に接続された単一のクライアント・デバイスである。
【００３５】
一実施例の場合、処理されたデータのバックアップは、各々のクライアント・デバイスに対して、中央サーバ・データベースに格納されているどのデータのサブセットを特定クライアント・デバイスに格納すべきかを決定することによってなされる。データのサブセットの決定は、特定クライアント・デバイスを所有するユーザ、特定クライアント・デバイスに利用可能な暗号化または特定クライアント・デバイスに利用可能なスペースに基づいて行うことができるが、多数の要因のいずれかに基づいて行うこともできる。データのサブセットの決定は、実装ごとに異なる。一旦、データのサブセットの決定がなされると、このデータのサブセットは、特定クライアント・デバイスに送信されて、格納される。
【００３６】
バックアップ・データのバックアップおよびその後のアップデートを実行するために用いることができる一つの方法は、同期である。本明細書で用いられる「同期」は、2つの別々の場所に置かれた同じ状態のデータを保持することに関するものとすることができる。同期は、中央サーバまたはクライアント・デバイスのいずれからも開始させることができる。例えば、処理されたデータは、主データベース、さらにクライアント・デバイスに格納させることができる。同期は、クライアント・デバイスに格納されるデータのサブセットが、主データベースに格納されている対応するデータと同じ状態となるように実行される。
【００３７】
データの状態が主データベースおよびバックアップ内で整合した状態を維持するように、同期を使用することができる。このシナリオのバックアップの行先は、クライアント・デバイス自体である。一実施例の場合、バックアップ・システムには、任意の同期プロトコルを使用することができる。同期プロトコルは、バックアップ・データが正確に主データベースのデータを反映することを確保にするために適用される手順である。
【００３８】
一実施例の場合、バックアップは、終日にわたって多くの時間、中央サーバとクライアント・デバイスとの間で更新される。バックアップが、単一の、大規模なデータベースになされる場合、格納しかつ転送する必要があるデータの量によっては、バックアップは1日に1回しか行わなくてもよい。バックアップが分散されている実施例の場合、バックアップは、より小さいインクリメントで格納される。しかもバックアップが、クライアント・ベースごとに変わる情報に関連する非同期イベントであると言う理由から、このバックアップは、追加の作業なしでより頻繁に実行させることができる。アップデートがより頻繁に行われると、クライアントシステムにバックアップとして格納されるデータは、アップデートの頻度が低い場合に比較し、完全性が向上する（または、より最新となる）。他の実施例の場合、ユーザによる行動の結果としてデータの変化が検出されるたびに、アップデートが生じる。このような状況で、ユーザが大量の行動を実行すると、アップデートが多く生じるかもしれないが、ユーザがそれほど活動的でない場合には、アップデートはほとんど生じないかもしれない。他の実施例の場合、ユーザが大量の行動を実行しても、アップデートは、サービスとクライアントの通信時に定期的にしか行われない。如何なるシナリオにおいても、バックアップとして格納されるデータは、最後のアップデートに基づいて主データベースに格納される最新のデータとして残る。
【００３９】
一実施例の場合、クライアント・デバイスからサーバに送信される要求は、クライアント・デバイスに格納されているデータの状態を識別する昇順の識別番号を持つ。他の実施例の場合、サーバからクライアント・デバイスに送信される要求も、同様に、主データベースに格納されているデータの状態を識別する昇順の識別番号を持つ。例えば、クライアント・デバイスからサーバへの要求は、識別番号1005を持つかもしれない。サーバがこの要求を受信すると、サーバは、その特定ユーザに関連する格納されている情報を検査する。サーバが要求1004からの情報を含む場合、サーバは、主データベースに格納されている情報とは異なるクライアント・デバイスに関する特別の情報しか要求しないであろう。識別番号がシーケンシャルでかつ昇順であるので、識別番号が一つしか増加していないという事実は、クライアント・デバイスと主データベース上のデータの状態がそれほど異なっていない可能性を示すであろう。識別番号の相違がより大きい場合、データの状態の変化はより重要になる。
【００４０】
サーバまたはクライアント・デバイスからの要求が、要求を受取る側より低い番号を持つ場合、これは、要求しているサーバまたはクライアントが、その受取る側よりも古いデータを持つことを示す。このシナリオでは、データのアップデートは行う必要はなく、また、最新のデータを有する要求を受取る側は、古いデータを更新するために、更新されたデータをサーバまたはクライアント・デバイスに、転送することができる。要求を受取る側が、ユーザへの要求に適合することができない場合、これは、要求を受取る側がその特定データをまだ格納していない、または、データのこの特定サブセットが既に失われてしまっていることを示す。適合が発見できない場合、全てのデータ転送が、この要求をする特定ユーザのために、受取る側のサーバまたはクライアントに実行される。
【００４１】
一実施例の場合、データ転送は、完全転送または部分転送で行うことができる。完全転送の場合、特定ユーザの全てのデータが、クライアント・デバイスからデータベースに送信される。これは、サーバの故障または壊滅的なデータ破損の場合のように、その特定ユーザに対する情報が発見されない場合に、発生する可能性がある。同様に、データ・レコードを全て送信せずに、データの2つのソースの間の変化のみを転送する部分転送も可能である。
【００４２】
本発明の一実施例によるクライアント・デバイスにバックアップを格納するステップは、図３に例示される。ステップ300において、中央サーバは、バックアップとして特定クライアント・デバイスに格納するために、主データベースに格納されているデータの、データのサブセットを決定する。格納されるデータのサブセットは、クライアント・デバイスを所有する特定ユーザ、またはこのデバイスを共有する特定ユーザ（例えば、4家族が、このデバイスに関して異なる利用者プロファイルを持つ）に関連するサブセットとすることができる。次に、ステップ302で、中央サーバは、先に決定されたデータのサブセットを、バックアップのために特定クライアント・デバイスに送信する。ステップ304において、サーバは、バックアップで格納されたデータの状態を検査する。その状態は、低い番号より高い番号の方が最近のデータに関連している、増加する番号によって示すことができる。ステップ308において、サーバは、バックアップ・データをアップデートするために、データをクライアント・デバイスに送信する。サーバによって送信されるデータは、クライアント・デバイスのデータの状態に基づく。その状態が接近している場合、ほとんどデータは更新させなくてもよい。その状態が非常に異なる場合、バックアップ・データをアップデートするためにより多くのデータを送信させる。
【００４３】
3.1  データ競合およびポリシー
サーバとクライアントとのデータが競合する場合、ポリシーは、どの情報がデータベースに格納されるべきかを制御する。本明細書で用いられる「ポリシー」は、格納させることができるデータの二つ以上のセットがあるときに、どの特定データがデータベースに格納されるべきかを命ずる命令である。このポリシーは、ソースにかかわらず最新の情報のみをバックアップに格納させるべきであるとするものかもしれない。他のポリシーは、クライアント・デバイスから送信される情報が、最も最近に更新されたものであり、かつクライアントが、常に、データベースに格納されているデータをオーバーライトした情報であるとすることを含むが、これに限定されるものではない。
【００４４】
一実施例の場合、ポリシーは、サーバによってのみ制御される。サーバがポリシーにより制御されるので、バックアップ・システムの複雑さは、サーバ内に保たれる。これは、クライアント・デバイスにポリシーを実装する複雑さを発生させない。加えて、ポリシーを訂正する必要がある場合、サーバに依存している一つ一つのクライアント・デバイスではなく、サーバのみをアップデートさせれば良い。他の実施例の場合、クライアント・デバイスに、ポリシーを排他的に制御させてもよい。さらに別の実施例では、ポリシーは、サーバとクライアント・デバイスの両方によってかつコンフリクト情報のもとに制御され、そしてこのサーバとクライアント・デバイスは、どのデータが格納されるべきかを決定するために互に協議する。
【００４５】
3.2  格納されるデータのタイプ
一実施例の場合、バックアップに格納されるデータは、サーバを正確に動作させるために必要なデータのみである。したがって、サーバのオペレーションに関係があるデータと特定ユーザに関連するデータのみが、クライアント・デバイスのバックアップ・データとして格納される。
【００４６】
一実施例の場合、バックアップは、コンテンツ・データのメタデータのみを含むことができる。本明細書で用いられるメタデータは、録画されるリスト、録画時間、ロードショーを録画する命令またはテレビ・ショーのリピート・エピソード、ダウンロードまたは購入したコンテンツのリスト、クライアント・デバイスに再生されたゲームのハイ・スコア、ユーザが特定した好み、観察したユーザの好み、シーズン・パス、ユーザ個人情報（クレジット・カード情報、ホームアドレス、送り先住所、他のアカウント情報、その他）、および、特定の録画の評価に関するものとすることができるが、これに制限されさるものではない。このメタデータは、サービス・プロバイダがユーザに対してDVRサービスを実行することを可能にする。
【００４７】
他の実施例の場合、コンテンツとこのコンテンツに関連するメタデータについてバックアップを作成することができる。本明細書で用いられるコンテンツは、放送コンテンツ、ビデオ、ダウンロード可能なコンテンツ、ゲーム、ミュージック、および、クライアント・デバイスによってプレイ可能か表示可能であるユーザによって体験することが可能な任意のその他のメディアに関するものとすることができるが、これに制限されさるものではない。
【００４８】
一実施例の場合、ユーザによって所有される各々のクライアント・デバイスは、ユーザに関係しているデータのバックアップを格納するために使用される。一つのクライアント・デバイスが主データベースと同時に故障したとしても、このデータは、別のクライアント・デバイスに格納されていて、かつそのクライアント・デバイスからこのデータを回復することができるように、この冗長性は実行される。一つは、DVRクライアント・デバイスのみのバックアップを格納することに制限されない。バックアップは、ユーザによって所有されるパーソナル・コンピュータ・クライアント・デバイスまたはモバイル・クライアント・デバイスに格納させることができる。同様に、メタデータのみまたはコンテンツおよびメタデータのバックアップを、ユーザが所有する他のクライアント・デバイスにバックアップさせることもできる。
【００４９】
一実施例の場合、格納されるタイプおよびデータ量は、クライアント・デバイスとサーバとの間のデータ転送の形式に依存させることができる。例えば、電話回線によるクライアント・デバイスとサーバ間のデータ転送は、ハイ・スピード・ブロードバンド・ネットワークによる、または、ロウ・ビットレートによる方法とすることができる。クライアント・デバイスとサーバとの間の接続がロウ・スピードの電話回線によることをサーバが検出する場合、バックアップとして格納されるデータ量は、最小の量とすることができる。クライアント・デバイスとサーバとの間の接続がハイ・スピード・ブロードバンド・ネットワークによる場合、より多くのデータを、バックアップとして格納させることができ、コンテツンツのようなより多くのデータのタイプを含ませることができる。
【００５０】
3.3  プライバシーおよび暗号化
特定ユーザのクライアント・デバイスにバックアップされている情報は、その特定ユーザまたはクライアント・デバイスを共有するユーザに関連するデータであるので、ユーザのプライバシーの問題は減少する。例えば、一つがユーザAによって所有され、もう一方がユーザBによって所有される二つのクライアント・デバイスがある場合、ユーザA自身の情報は、ユーザA自身のクライアント・デバイスにバックアップされ、ユーザBの情報は、ユーザBのクライアント・デバイスのみにバックアップされる。この実施例の場合、一つのクライアント・デバイスに関連する一人のユーザの個人情報は、別のユーザのクライアント・デバイスに格納されない。他の実施例の場合、個人情報を有するデータは、別のユーザのクライアント・デバイスに安全な暗号化によって格納される。
【００５１】
一実施例の場合、クライアント・デバイスに格納されるデータは、アドレスまたは財務データを含んでいるユーザ情報のような機密に関わる情報を含むことができる。財務データは、購入するのに用いるクレジット・カード情報、アカウント情報および他の財務データを含むが、これに限定されるものではない。機密に関わるデータがクライアント・デバイスにバックアップされる場合、この情報は、暗号化されるとともに、格納されて、転送される。暗号化には任意の形式が使用可能で、情報がきわめて機密に関わる（例えば、社会保障番号）と考えられる場合には、暗号化のより安全な形式を、使用することができる。一実施例の場合、サーバのみが暗号化データを復号することができる。
【００５２】
3.4  データ回復
一実施例の場合、データは、ユーザによって所有されるクライアント・デバイスの各々に格納される。バックアップを複数のクライアント・デバイスに格納することによって、データが失われてしまう場合にも、これはデータを安全に保つ。例えば、サーバが、ユーザの一つのDVRまたはクライアント・デバイスと同時に、故障しかつデータを喪失してしまう場合がある。このような状況で、サーバは、別のユーザのクライアント・デバイスの一つからデータを回復させることができる。バックアップ・データの格納装置は、ユーザのDVRのデータを格納することのみに限定されず、ユーザの任意のクライアント・デバイスとすることができる。これは、ユーザがDVRサービスと対話することができる任意のクライアント・デバイスを含むことができる。これは、ポータブルDVR、パーソナル・コンピュータおよびモバイル・デバイス（例えば、PDAまたは携帯電話）を含むことができるが、これに限定されるものではない。データの完全性は、データを複数の場所に格納することによって確保される。また、複数のデバイスが故障したとしても、データは、別のクライアント・デバイスから回復させることができる。
【００５３】
中央データが損なわれた場合、中央データは、複数のクライアント・デバイスから損なわれた任意のデータを読み出すことによって回復される。したがって、中央データの、データの小さいサブセットが損なわれても構わないし、また、中央データ全体が損なわれて構わない。何れの状況においても、データは、クライアント・デバイスから回復される。一実施例の場合、中央データ全体が損なわれたことを中央サーバが検出すると、サーバはサーバと通信する任意のクライアント・デバイスによってアップデートを実行する。特定ユーザの情報が中央データ内で損なわれた場合、クライアント・デバイスは、特定ユーザの全ての情報を主データベースに転送する。これは、喪失した全ての中央データを素早く回復させることを可能にする。
【００５４】
他の実施例の場合、中央データが損なわれたことを中央サーバが検出すると、中央サーバは、破損したデータを読み出すためにクライアント・デバイスの各々からのアップデート要求を待つ。この処理は、サーバがアップデート要求を作成するより長くかかるが、中央サーバに対する負担が小さくなるように、中央サーバが制限された接続数しか処理しないようにさせることもできる。この実施例の利点は、各々のクライアント・デバイスがサーバと交信する際、サーバが、その特定クライアント・デバイスの必要なものを処理するので、中央サーバが、サーバが必要とするデータによってしか機能しないことである。
【００５５】
さらに別の実施例では、中央サーバが中央データの破損を検出すると、全てのクライアント・デバイスが交信されるまで、中央サーバは、特定された多数のクライアント・デバイスのアップデート要求を実行する。クライアント・デバイスのどのグループを最初にアップデートするかという選択は、各状況による。これは、地理的な領域によって、または、（その情報が利用可能である場合、どのクライアント・デバイスが最も活動的であったかを示す）記録によって、クライアント・デバイスを選択することを含むことができる。サーバとクライアント・デバイスとの接続数を制限することにより、アップデートおよび接続が、適切に処理されることが、確実になる。
【００５６】
一実施例の場合、クライアント・デバイスに格納されたデータが損なわれた場合、クライアント・デバイスに以前に格納されていたデータは、別のクライアント・デバイスから破損したデータに対応するデータを読み出すことによって回復される。これは、ユーザが二つ以上のクライアント・デバイスを所有することにより可能である。ユーザが二つ以上のクライアント・デバイスを所有する場合、処理されたデータのバックアップは、クライアント・デバイスの各々に格納される。データが損なわれたことをクライアント・デバイスが検出すると、クライアント・デバイスは、データのバックアップを格納する別のクライアント・デバイスに要求を送信することができる。この要求は、格納されたバックアップが特定ユーザに関連するデータのサブセットに制限されているので、同じユーザが所有するデバイスに限定される。一実施例の場合、クライアントには、サーバによって共有証明書が支給される。共有証明書は、各クライアント・デバイスに、クライアント・デバイスがデータを共有することを認証した他のクライアント・デバイスについて、通知する。
【００５７】
本発明の一実施例によるクライアントがオンラインであるときデータ回復のためにとるステップの実例は、図４に示される。ステップ400において、データは、主データベースの故障に起因して主データベースで損なわれる。ステップ402において、クライアント・デバイスの一つは、破損したデータの検出に、次のアップデート要求をする。中央サーバは、要求を受けて、主データベースのデータの状態とクライアント・デバイスに格納されるデータの状態を比較する。ステップ404に示されるように、この特定の状況において、ユーザに関連するデータは、破損のため、主データベースに発見されない。ステップ406で、クライアント・デバイスが、全てのバックアップ・データを主データベースに送信することによって、特定クライアント・デバイスに対し、データが、回復される。クライアント・デバイスが中央サーバのアップデート要求をすると、各々の特定ユーザの一つ以上のクライアント・デバイスに対し、これらのデータ回復ステップが、データ破損の検出に応じて、繰り返される。
【００５８】
4.0  企業システムの分散バックアップ
分散バックアップは、任意の社内ネットワーク・システムを使用することができるが、DVRサービス・プロバイダのシステムのみに限定されるものではない。多くのクライアントを有する中央サーバを持つ企業システムは、このバックアップ・システムを実装することができる。大量のデータ量を適切なバックアップ・システムにより格納しなければならないので、企業システムは同じ問題点を有する。バックアップに必要なものを単一の、大きなデータベースに移すことは、多くのコスト削減が得られる。
【００５９】
ネットワーク上の多くのクライアントを有する中央サーバを備える任意のタイプのシステムは、分散バックアップを使用することができる。例えば、ユーザが中央サービスを申し込む携帯電話ネットワークまたはパーソナルコンピュータネットワークの場合、中央データのバックアップは、重要になる。
【００６０】
分散バックアップの技術および方法は、中央サーバを利用している任意の企業システムまたはシステムに適用させることができる。中央サーバおよびデータベースによって格納されるデータのサブセットは、企業システムのクライアントのバックアップとして格納される。会社の記録、顧客データまたは人事管理情報を含むが、これに限らず、いかなるデータのタイプも、このようにしてバックアップさせることができる。アップデートは、バックアップとして格納されるデータが最新であることを確保するために、しばしば実行される。データが機密に関わるとみなされる場合、データおよびデータの転送はプライバシー保護のために暗号化される。主データベースのデータ破損の検出に応じて、データは、クライアントから回復させることができる。また、クライアント・デバイスの一つのデータ破損の検出に応じて、新しいバックアップは、主データベースからのデータにより修復されたクライアントに格納させることができる。
【００６１】
5.0  実装メカニズム
図５は、本発明の実施例を実行することができるコンピュータシステム500を例示するブロック図である。コンピュータシステム500は、バス502すなわち情報を通信するための他の通信手法と、情報を処理するためにバス502に結合されているプロセッサ504とを含む。コンピュータシステム500は、さらに、情報およびプロセッサ504によって実行される命令を格納するためにバス502に結合されている、ランダム・アクセス・メモリ（RAM）または他のダイナミックなメモリ・デバイスのようなメイン・メモリ506を含む。メイン・メモリ506は、さらに、プロセッサ504によって実行されるべき命令の実行中に、一時的な変数または他の中間の情報を格納するために用いることができる。コンピュータシステム500は、さらに、プロセッサ504に対するスタティックな情報および命令を格納するためにバス502に結合されている、読出し専用メモリ（ROM）508、すなわち他のスタティックな格納デバイスを含む。磁気ディスクまたは光ディスクのようなメモリ・デバイス510が、設けられていて、これは、情報および命令を格納するために、バス502に結合されている。
【００６２】
コンピュータシステム500は、コンピュータユーザに情報を表示するためのブラウン管（CRT）などのディスプレイ512に、バス502を介して結合することができる。英数字および他のキーを含む入力デバイス514は、プロセッサ504によって選択される情報および命令を通信するために、バス502に結合されている。他のタイプのユーザ入力デバイスとは、プロセッサ504によって選択される方向情報および命令を通信し、かつ、ディスプレイ512上のカーソル移動をコントロールするための、マウス、トラックボール、または、カーソル方向キーなどのカーソル・コントロール516である。この入力デバイスは、通常、デバイスによって平面の位置指定が可能となる、第1の軸（たとえば、x軸）および、第2の軸（たとえば、y軸）といった2軸の自由度を有する。
【００６３】
本発明は、本願明細書において記載されている技術を実行するコンピュータシステム500の使用に関する。本発明の一実施例によれば、これらの技術は、プロセッサ504がメイン・メモリ506に含まれている一つ以上の命令の一つ以上のシーケンスが実行されると、コンピュータシステム500によって実行される。この種の命令は、格納デバイス510などの他の機械読み取り可読媒体からメイン・メモリ506へ読み出すことができる。メイン・メモリ506に含まれている命令シーケンスの実行によって、プロセッサ504は、本願明細書において記載されているプロセスステップを実行する。これに代わる実施例では、ハードウェアに組み込まれている回路を、本発明を実行するために、ソフトウェア命令の代わりに、または、これとともに用いることができる。このように、本発明の実施形態は、ハードウェア回路とソフトウェアとの特有の組み合わせに限定されるものではない。
【００６４】
本明細書で用いられる用語「機械読み取り可読媒体」とは、機械に特有の方法の動作をさせるデータの提供に関与するいかなる媒体も指す。コンピュータシステム500を用いて実行される実施例では、様々な機械読み取り可読媒体は、たとえば、実行用のプロセッサ504に命令を提供するものも含まれる。この種の媒体は、これに限定されるものではないが、記憶媒体、および、転送媒体を含む、多様な形式を採用することができる。記憶媒体は、不揮発性媒体および揮発性媒体を含む。不揮発性媒体は、たとえば、格納デバイス510などの光学ディスクまたは磁気ディスクを含む。揮発性媒体は、メイン・メモリ506などのダイナミック・メモリを含む。転送媒体は、バス502を備えるワイヤーを含む、同軸ケーブル、銅ワイヤー、および、ファイバー・オプティックスを含む。転送媒体は、さらに、電波および赤外線通信中に生成されるような音響または光波の形式とすることができる。この種のすべての媒体によって、媒体によって担持されている命令を、機械に命令を読み込ませる物理的機構で効果的に検出可能となる。
【００６５】
一般的な形式の機械読み取り可読媒体は、たとえば、フロッピー（登録商標）ディスク、フレキシブル・ディスク、ハードディスク、磁気テープ、または、他のいかなる磁気媒体、CD-ROM、他のいかなる光媒体、パンチカード、紙テープ、ホールパターンを有する他のいかなる物理的な媒体、RAMPROM、および、EPROM、フラッシュEPROM、他のいかなるメモリチップもまたはカートリッジ、後述するような搬送波、または、コンピュータが読み出し可能な他のいかなる媒体も含む。
【００６６】
様々な形式の機械読み取り可読媒体は、プロセッサ504が実行する一つ以上の命令の一つ以上のシーケンスを担持することができる。たとえば、命令は、まず、リモート・コンピュータの磁気ディスクに搬送される。リモート・コンピュータは、そのダイナミック・メモリに命令をロードし、かつ、モデムを用いている電話線を通じて、命令を送信することができる。コンピュータシステムに500に用いるモデムは、電話線上のデータを受信することができ、かつ、そのデータを赤外線信号に変換する赤外線送信器を用いる。赤外線検出器は、赤外線信号で搬送されるデータを受信することができ、かつ、適切な回路は、バス502にデータを配置することができる。バス502は、命令を検索し、かつ、実行するプロセッサ504から、メイン・メモリ506にデータを搬送する。メイン・メモリ506によって受信される命令は、オプションとして、プロセッサ504によって実行される前と実行された後とのいずれかに、格納デバイス510に格納することができる。
【００６７】
コンピュータシステム500は、さらに、バス502に結合されている通信インターフェース518を含む。通信インターフェース518は、ローカル・ネットワーク422に結合されているネットワーク・リンク420に、2つのデータ通信カップリングを提供する。たとえば、通信インターフェース518は、電話線に対応するタイプのデータ通信接続を提供する、総合デジタル通信網（ISDN）カードまたはモデムとすることができる。別の例として、通信インターフェース518は、互換性を有するLANにデータ通信接続を提供するローカル・エリア・ネットワーク（LAN）カードとすることができる。無線リンクも、実装することができる。いずれの種類の実施態様においても、通信インターフェース518は、様々なタイプの情報を示すデジタル・データ・ストリームを搬送する、電気信号、電磁信号、または、光学信号を送受信する。
【００６８】
ネットワーク・リンク420は、通常、他のデータ・デバイスに一つ以上のネットワークを通じてデータ通信を提供する。たとえば、ネットワーク・リンク420は、ローカル・ネットワーク422を介して、ホストコンピュータ424との、または、インターネットサービスプロバイダ（ISP）426によって動作されるデータ装置との、接続を提供することができる。ISP426は、結局、現在では、一般に「インターネット」428と呼ばれるワールドワイドなパケット・データ通信回路ネットワークを通じてデータ通信サービスを提供する。ローカル・ネットワーク422およびインターネット428は、両者とも、デジタル・データ・ストリームを搬送する、電気信号、電磁信号、または、光学信号を使用する。コンピュータシステム500に対するデジタル・データ、および、コンピュータシステム500からのデジタル・データを搬送する、様々なネットワークを通る信号、および、ネットワーク・リンク420上および通信インターフェース518を通る信号は、情報を運ぶ搬送波の例示的な形式である。
【００６９】
コンピュータシステム500は、ネットワーク、ネットワーク・リンク420、および、通信インターフェース518を通る、プログラムコードを含む、メッセージの送信およびデータを受信することができる。インターネットの例では、サーバ430は、インターネット428、ISP426、ローカル・ネットワーク422、および、通信インターフェース518を通る、アプリケーション・プログラム用のリクエストされたコードを伝達することができる。
【００７０】
受信されたコードは、それが受信されることにより、プロセッサ504によって実行され、および／または、格納デバイス510または後の実行のために他の不揮発性格納装置に格納される。このように、コンピュータシステム500は、搬送波の形式のアプリケーションコードを取得することができる。
【００７１】
上述した明細書において、本発明の実施例は、実装毎に異なる可能性がある、多数の特有の詳細を参照して記載されている。したがって、何が本発明であるか、かつ何が本願出願人が意図するものであるかを示す唯一のものは、将来の如何なる補正も含む、本出願の特許される特許請求の範囲である。請求項において用いられる用語の意味は、これらの請求項に含まれる用語に対する本願明細書に明確に記載される定義により決められる。これ故、請求項において明示的に詳述されない、制限、素子、特性、機能、利点または属性により、いかなる形であれかかる請求項の範囲は制限されるべきでない。したがって、明細書および図面は、限定的な意味ではなく例示と考えるべきである。
【００７２】
6.0  実施例
一実施例の場合、方法、または、コンピュータ可読媒体は、命令の一つ以上のシーケンスを備えまたは担持し、一つ以上のプロセッサによって実行されるときに、命令が、一つ以上のプロセッサに次のステップを実行させる。複数のクライアント・デバイスにサービスを提供する一つ以上のサーバを備えるサービスによってデータのセットを保持し、前記データのセットは、複数のデータのサブセットを含み、前記データのセットのサブセットを前記複数のクライアント・デバイスに格納し、前記データのセットの前記サブセットを前記複数のクライアント・デバイスに格納する前記ステップは、前記複数のクライアント・デバイスの各々の特定クライアント・デバイスのために、前記特定クライアント・デバイスに格納されるべきデータのサブセットを決定し、前記特定クライアント・デバイスの格納のために前記特定クライアント・デバイスに前記データのサブセットを送信することを含み、前記データのセットの破損を検出し、前記データのセットの破損を検出することに応答して、前記複数のクライアント・デバイスに格納される前記データのサブセットから前記データのセットを回復することを備える。
【００７３】
一実施例の場合、方法またはコンピュータ可読媒体において、前記データのセットを保持することは、前記特定クライアント・デバイスに格納される前記データのサブセットの状態の表示を受信し、前記表示に基づいて前記特定クライアント・デバイスの格納のためにデータを送信することをさらに備える。
【００７４】
一実施例の場合、方法またはコンピュータ可読媒体において、前記クライアント・デバイスの少なくとも一つは、DVR、モバイル・デバイスまたはパーソナル・コンピュータであることをさらに備える。
【００７５】
一実施例の場合、方法またはコンピュータ可読媒体において、データのサブセットの少なくとも一つは、暗号化された状態で前記複数のクライアント・デバイスに格納されることをさらに備える。
【００７６】
一実施例の場合、方法またはコンピュータ可読媒体において、データは、暗号化された転送を使用して送信されることをさらに備える。
【００７７】
一実施例の場合、方法またはコンピュータ可読媒体において、特定デバイスに格納される前記データのサブセットは、前記特定デバイスを制御するユーザに関連していることをさらに備える。
【００７８】
一実施例の場合、システムは、複数のクライアント・デバイスと、一つ以上のサーバを備えているサービスと、前記複数のクライアント・デバイスにサービスを提供するデータのセットを保持している前記サービスと、前記データのセットは、複数のデータのサブセットを含み、前記データのセットのサブセットを前記複数のクライアント・デバイスに格納し、前記データのセットの前記サブセットを前記複数のクライアント・デバイスに格納する前記ステップは、前記複数のクライアント・デバイスの各々の特定クライアント・デバイスのために、前記特定クライアント・デバイスに格納されるべきデータのサブセットを決定し、前記特定クライアント・デバイスの格納のために前記特定クライアント・デバイスに前記データのサブセットを送信することを含み、前記データのセットの破損を検出し、前記データのセットの破損を検出することに応答して、前記複数のクライアント・デバイスに格納される前記データのサブセットから前記データのセットを回復することを備える。
【００７９】
一実施例の場合、システムにおいて、前記特定クライアント・デバイスに格納される前記データのサブセットの状態の表示を受信し、前記表示に基づいて前記特定クライアント・デバイスの格納のためにデータを送信することをさらに備える。
【００８０】
一実施例の場合、システムにおいて、前記クライアント・デバイスの少なくとも一つは、DVR、モバイル・デバイスまたはパーソナル・コンピュータであることをさらに備える。
【００８１】
一実施例の場合、システムにおいて、データのサブセットの少なくとも一つは、暗号化された状態で前記複数のクライアント・デバイスに格納されることをさらに備える。
【００８２】
一実施例の場合、システムにおいて、データは、暗号化された転送を使用して送信されることをさらに備える。
【００８３】
一実施例の場合、システムにおいて、特定デバイスに格納される前記データのサブセットは、前記特定デデバイスを制御するユーザに関連していることをさらに備える。
【符号の説明】
【００８４】
102A  DVR
102B  DVR
104  サービス・プロバイダ
105  ネットワーク
108  コンテンツ・プロバイダ
110  パーソナル・コンピュータ
110  ポータブル・デバイス
152A  入力
152B  出力
154  シグナル・コンバータ
156A  エンコーダー
156B  デコーダー
158  暗号器／復号器
160  記録モジュール
162  通信インターフェース
164  格納装置
200  中央サーバ
202  ネットワーク
204A  ポータブル・デバイス
204B  DVR
204C  DVR
206A  パーソナル・コンピュータ
206B  DVR
208  DVR
500  コンピュータシステム
502  バス
504  プロセッサ
506  主格納装置
508  ROM
510  格納装置
512  ディスプレイ
514  入力装置
516  カーソル・コントロール
518  通信インターフェース
520  ネットワーク・リンク
522  ローカル・ネットワーク
524  ホストコンピュータ
526  ISP
528  インターネット
530  サーバ
【図１Ａ】
0005411346.tif 000002
【図１Ｂ】
0005411346.tif 000003
【図２】
0005411346.tif 000004
【図３】
0005411346.tif 000005
【図４】
0005411346.tif 000006
【図５】
0005411346.tif 000007