(57)【要約】  方法は、分散されたバックアップおよびデータの回復を実行することを提供される。データは、サーバによって処理されて、複数のクライアント・デバイスによって送信され、データベースに格納される。データベースに格納される処理されたデータのサブセットは、複数のクライアント・デバイスの各々にバックアップされる。ユーザによって所有される一つ以上の特定のクライアント・デバイスのための、一つ以上の特定のクライアント・デバイスに格納される処理されたデータのサブセットは、ユーザと関連する処理されたデータのサブセットである。サーバおよびクライアント・デバイスは、データベースおよびバックアップに処理されたデータの同じ状態を保持するためにアップデートされる。データベースまたはクライアント・デバイスの故障のイベントにおいて、処理されたデータは、複数のクライアント・デバイスに格納されるデータベースまたはバックアップに格納される処理されたデータを使用して回復させてもよい。【選択図】図２
2011511975.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント・デバイスにサービスを提供する、一つ以上のサーバを備えるサービスによって、複数のデータのサブセットを含むデータのセットを保持するステップと、
前記データのセットのサブセットを前記複数のクライアント・デバイスに格納するステップであって、
前記データのセットの前記サブセットを前記複数のクライアント・デバイスに格納する前記ステップは、前記複数のクライアント・デバイスの各々の特定のクライアント・デバイスに対し、前記特定のクライアント・デバイスに格納されるべきデータのサブセットを決定し、かつ前記特定のクライアント・デバイスの記憶のために前記特定のクライアント・デバイスに前記データのサブセットを送信することを含む、ステップと、
前記データのセットの損失を検出するステップと、
前記データのセットの損失を検出することに応答して、前記複数のクライアント・デバイスに格納される前記データのサブセットから前記データのセットを回復するステップとを、
備える方法。
【請求項２】
前記データのセットを保持することは、
前記特定のクライアント・デバイスに格納される前記データのサブセットの状態の表示を受信し、
前記表示に基づいて前記特定のクライアント・デバイスの記憶のためにデータを送信することをさらに備える請求項1に記載の方法。
【請求項３】
前記クライアント・デバイスの少なくとも一つは、DVR、モバイル・デバイスまたはパーソナル・コンピュータである請求項1に記載の方法。
【請求項４】
データのサブセットの少なくとも一つは、暗号化された状態で前記複数のクライアント・デバイスに格納されている請求項1に記載の方法。
【請求項５】
データは、暗号化された転送を使用して送信される請求項1に記載の方法。
【請求項６】
特定のクライアント・デバイスに格納されている前記データのサブセットは、前記特定のクライアント・デバイスを制御するユーザに関連している請求項1に記載の方法。
【請求項７】
命令の一つ以上のシーケンスを格納しているコンピュータ可読の記憶媒体であって、
一つ以上のプロセッサによって実行されるときに、前記一つ以上のプロセッサに以下のステップ、
複数のクライアント・デバイスにサービスを提供する一つ以上のサーバを備えるサービスによって、複数のデータのサブセットを含むデータのセットを保持するステップ、
前記データのセットのサブセットを前記複数のクライアント・デバイスに格納するステップであって、
前記データのセットの前記サブセットを前記複数のクライアント・デバイスに格納する前記ステップは、前記複数のクライアント・デバイスの各々の特定のクライアント・デバイスのために、前記特定のクライアント・デバイスに格納されるべきデータのサブセットを決定し、かつ前記特定のクライアント・デバイスの記憶のために前記特定のクライアント・デバイスに前記データのサブセットを送信することを含む、ステップ、
前記データのセットの破損を検出するステップ、および
前記データのセットの破損を検出することに応答して、前記複数のクライアント・デバイスに格納される前記データのサブセットから前記データのセットを回復するステップ、
を実行させるコンピュータ可読の記憶媒体。
【請求項８】
前記データのセットを保持するステップは、
前記特定のクライアント・デバイスに格納される前記データのサブセットの状態の表示を受信するステップと、
前記表示に基づいて前記特定のクライアント・デバイスの記憶のためにデータを送信するステップと
をさらに備える請求項7に記載のコンピュータ可読の記憶媒体。
【請求項９】
前記クライアント・デバイスの少なくとも一つは、DVR、モバイル・デバイスまたはパーソナル・コンピュータである請求項7に記載のコンピュータ可読の記憶媒体。
【請求項１０】
データのサブセットの少なくとも一つは、暗号化された状態で前記複数のクライアント・デバイスに格納される請求項7に記載のコンピュータ可読の記憶媒体。
【請求項１１】
データは、暗号化された転送を使用して送信される請求項7に記載のコンピュータ可読の記憶媒体。
【請求項１２】
特定のクライアント・デバイスに格納される前記データのサブセットは、前記特定のクライアント・デバイスを制御するユーザに関連している請求項7に記載のコンピュータ可読の記憶媒体。
【請求項１３】
複数のクライアント・デバイスと、
一つ以上のサーバを備えているサービスと、
前記複数のクライアント・デバイスにサービスを提供するデータのセットを保持している前記サービスと、
前記データのセットは、複数のデータのサブセットを含み、
前記データのセットのサブセットを前記複数のクライアント・デバイスに格納し、
前記データのセットの前記サブセットを前記複数のクライアント・デバイスに格納する前記ステップは、前記複数のクライアント・デバイスの各々の特定のクライアント・デバイスのために、前記特定のクライアント・デバイスに格納されるべきデータのサブセットを決定し、前記特定のクライアント・デバイスの記憶のために前記特定のクライアント・デバイスに前記データのサブセットを送信することを含み、
前記データのセットの破損を検出し、
前記データのセットの破損を検出することに応答して、前記複数のクライアント・デバイスに格納される前記データのサブセットから前記データのセットを回復することを備えるシステム。
【請求項１４】
前記特定のクライアント・デバイスに格納される前記データのサブセットの状態の表示を受信し、
前記表示に基づいて前記特定のクライアント・デバイスの記憶のためにデータを送信することをさらに備える請求項13に記載のシステム。
【請求項１５】
前記クライアント・デバイスの少なくとも一つは、DVR、モバイル・デバイスまたはパーソナル・コンピュータであることをさらに備える請求項13に記載のシステム。
【請求項１６】
データのサブセットの少なくとも一つは、暗号化された状態で前記複数のクライアント・デバイスに格納されることをさらに備える請求項13に記載のシステム。
【請求項１７】
暗号化された転送を使用して送信されることをさらに備える請求項13に記載のシステム。
【請求項１８】
特定のクライアント・デバイスに格納される前記データのサブセットは、前記特定のクライアント・デバイスを制御するユーザに関連していることをさらに備える請求項13に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、企業システムのデータをバックアップすること、より具体的には、複数のクライアント・デバイス全体のサーバ・データをバックアップすることに関する。
【背景技術】
【０００２】
この背景技術に記載されるアプローチは、追求することができるアプローチであるが、必ずしも以前に想像されたかまたは追求されたアプローチではない。従って、特に明記しない限り、この背景技術に記載されている如何なるアプローチも、それがこの背景技術に含まれていると言う理由のみで、従来技術とみなすべきではない。
【０００３】
消費者分野への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  構造的な概要
図1Aは、実施例による分散バックアップおよび回復が実施されるシステム例を例示する。このシステムは、イーサネット（登録商標）・インターフェースまたは無線通信ポートのような任意の通信インターフェースを通してネットワーク105に通信で接続するDVR102AおよびDVR102Bを包含する。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は、ケーブル、衛星、地上波の通信または他の転送方法を介してDVR102Aおよび102Bに放送番組コンテンツを提供する。放送番組コンテンツは、任意のマルチメディア・コンテンツ（例えば、オーディオ、画像、または、ビデオのコンテンツ）を包含してもよい。他の実施例の場合、コンテンツ・プロバイダ106は、DVR 102Aおよび102B、パーソナル・コンピュータ108またはポータブル・デバイス110にネットワーク105を通してマルチメディア・コンテンツ（例えば、任意のダウンロード可能なコンテンツ）を提供する。
【００２５】
一実施例の場合、DVR102Aおよび102Bは、プログラム・ガイド・データ、グラフィック・リソース（例えば、フォント、画像、その他）、サービス情報、ソフトウェア、広告、イベント識別名およびデータの他の形式を提供するサービス・プロバイダ104と通信する。そのデータは、ユーザの興味を満たすためにDVR102Aおよび102Bがサービス・プロバイダ104と独立して動作することを可能にする。
【００２６】
他の実施例の場合、コンテンツ・プロバイダ106は、サービス・プロバイダ104に、プロモーションのデータ、アイコン、ウェブ・データおよびその他の情報を包含するコンテンツ・データまたは任意のメタデータを提供してもよい。サービス・プロバイダ104は、メタデータを解釈してもよく、DVR102Aおよび102B、パーソナル・コンピュータ108またはポータブル・デバイス110にコンテンツ・データおよびメタデータを提供してもよい。
【００２７】
図1Bを参照すると、一実施例の場合、一般に、DVR 102A（DVR102Bは、同じコンポーネントを含み、同じ機能を実行する）は、（アナログ・テレビ信号をデジタル化して、それをデジタル・データ・ストリームに変換、または、デジタル・データ・ストリームを受け入れるのに必要な）シグナル・コンバータ154によって示される複数のコンポーネントを備える。DVR102Aは、入力152Aを介して、アンテナ、ケーブル・テレビ・システム、衛星受信機、その他から放送信号を受信する。入力152Aは、複数の信号を受信し、同時に録画できる複数のチューニング・モジュールを備えてもよい。
【００２８】
録画モジュール160は、（デジタル・データ・ストリームのセグメントを保持するように設計されている記憶164によって示される）少なくとも一つの記憶機能にデジタル・データ・ストリームを格納することによって、着信データ・ストリームを録画する。記憶164は、DVRのユーザと関連している処理されたデータのバックアップを格納するために使用することもできる。シグナル・コンバータ154は、データ・ストリームのセグメントを読み出して、データ・ストリームをアナログ信号に変換し、信号が標準のテレビ受像機または受信デバイスに配信される出力152Bを介して、RF搬送波上へ信号を変調する。あるいは、出力152Bは、テレビ受像機または表示装置にデジタル信号を配信してもよい。例えば、DVR102Aは、HDCP（High-bandwidth Digital Content Protection）ポートにHDMIケーブルを介してTVにデジタル信号を送信するために利用してもよい。
【００２９】
また、DVR102Aは、DVR102Aがイーサネット（登録商標）、ワイヤレス・ネットワーク、モデム、USB、その他の通信の標準規格を介してネットワーク105に通信する通信インターフェース162を含む。さらに、DVR102Aは、上記のコンポーネントがDVR102Aの各々のコンポーネントの機能を実行することができるテレビ受像機に収容されるように、テレビ・システムに組み込んでもよい。
【００３０】
他の実施例の場合、一般にDVR102Aは、パソコン、DVR、サービス・プロバイダ、または、コンテンツ・サーバのような複数のソースから、デジタル・データ信号を受信、録画、格納、転送、表示、再生するのに必要な複数のコンポーネントを備える。DVR 102Aは、別のDVR、ポータブル・デバイスまたはパソコンにデジタル・データ信号を伝達することができる。これは、2つのDVRとの通信を可能にしているDVR102AとDVR102Bとの接続に関する図1Aに示すことができる。DVR102Aは、再生、表示、記憶または伝達のための複数のフォーマットに、エンコーダー156Aおよびデコーダー156Bを介してデジタル信号をエンコードまたはデコードしてもよい。さらにDVR 102Aは、デジタル・データ信号の蓄積、伝達、表示または再生のためにエンコーダー／デコーダー158を用いてデジタル・データ信号をエンコードまたはデコードすることができる。
【００３１】
一実施例の場合、DVR 102Aは、番組ガイド・データ、ブランド・アイコンのようなグラフィック・リソースおよび画像、サービス情報、ソフトウェア・プログラム、広告、補助的プログラム・データ、および、DVR 102が自律的な録画機能を実行するためにサービス・プロバイダ104から独立して動作することを可能にするデータの他の形式を提供するサービス・プロバ イダ103と通信する。サービス・データおよびユーザのプライバシーが保護されるように、DVR102Aおよびサービス・プロバイダ104間の通信は DVR102Aおよびサービス・プロバイダ104間のデータを転送するのに安全な配布アーキテクチャーを利用する。
【００３２】
3.0  DVRサービス・プロバイダの分散バックアップ
一実施例の場合、DVRサービス・プロバイダのバックアップは、クライアント・デバイスに分散された方式で格納される。DVRサービスは、分散されたネットワークのサービス・プロバイダによって提供される。セントラル・サーバ処理データは、多数のクライアント・デバイスから送信され、DVRサービスを提供するために、その処理されたデータを格納する。本明細書で用いられる「セントラル・サーバ」は、データを処理する一つ以上のサーバに関するものでもよい。セントラル・サーバは、処理されたデータを主データベースに格納してもよい。本明細書で用いられる「主データベース」は、セントラル・サーバがデータを格納する、回復する、または、修正する一つ以上のデータベースに関するものでもよい。本明細書で用いられる「クライアント・デバイス」は、DVR、モバイル・デバイスまたはパーソナル・コンピュータに関するものでもよいが、これに制限されさるものではない。モバイル・デバイスは、ポータビリティを求めて設計されたデバイスであって、バッテリを使用して駆動してもよい。モバイル・デバイスは、携帯電話、PDA、ポータブル・ビデオプレーヤ、ポータブル・ミュージック・プレーヤ、ポータブル・メディア・プレーヤまたはポータブルDVRを含むが、これに限定されるものではない。
【００３３】
一実施例の場合、クライアント・デバイス自体にバックアップされる処理されたデータのサブセットに関して、セントラル・サーバは、セントラル・データベースのバックアップを分散された方式で格納する。ユーザは、一つ以上のクライアント・デバイスを所有してもよく、これらのクライアントを彼らの自宅またはオフィスに置いておいてもよい。ユーザによって所有される一つ以上のクライアントにバックアップされる処理されたデータのサブセットは、ユーザまたは特別のクライアント・デバイスと関連する処理されたデータのサブセットである。
【００３４】
クライアント・デバイスに接続されるセントラル・サーバおよび主データベースの例は、図2に例示される。図2において、主データベースを有するセントラル・サーバ200は、ネットワーク202を介して複数のクライアント・デバイスに接続されている。ポータブル・デバイス204A、DVR204BおよびDVR204Cは、同じユーザによって所有される3つのクライアント・デバイスを表す。パーソナル・コンピュータ206AおよびDVR206Bは、同じユーザによって所有され、ネットワーク202によってセントラル・サーバ200に接続された2つのクライアント・デバイスを表す。DVR 208は、ネットワーク202によってセントラル・サーバ200に接続された単一のクライアント・デバイスである。
【００３５】
一実施例の場合、処理されたデータのバックアップは、各々のクライアント・デバイスに対して、セントラル・サーバ・データベースに格納されるデータのサブセットが特定のクライアント・デバイスに格納されるべきかについて決定することによってなされる。データのサブセットの決定は、特定のクライアント・デバイスを所有するユーザ、特定のクライアント・デバイスに利用可能な暗号化または特定のクライアント・デバイスに利用可能なスペースを含むがこれに限定されるものではなく、多数の要因のいずれかに基づいてもよい。データのサブセットの決定は、実装ごとに異なる。一旦、データのサブセットの決定がなされると、データのサブセットは、特定のクライアント・デバイスに送信されて、格納される。
【００３６】
バックアップ・データのバックアップおよびその後のアップデートを実行するために用いてもよい一つの方法は、同期である。本明細書で用いられる「同期」は、2つの別々の場所に置かれた同じ状態のデータを保持することに関するものでもよい。同期は、セントラル・サーバまたはクライアント・デバイスのいずれから開始されてよい。例えば、処理されたデータは、主データベース、さらにクライアント・デバイスに格納させてもよい。同期は、クライアント・デバイスに格納されるデータのサブセットが主データベースに格納した対応するデータと同じ状態にあるように実行される。
【００３７】
データの状態が主データベースおよびバックアップ内で整合した状態を維持するように、同期を使用してもよい。このシナリオのバックアップの行先は、クライアント・デバイス自体である。一実施例の場合、任意の同期プロトコルは、バックアップ・システムによって使用させてもよい。同期プロトコルは、バックアップ・データが正確に主データベースのデータを反映することを確保にするために適用される手順である。
【００３８】
一実施例の場合、バックアップは、終日にわたって多くの時間、セントラル・サーバとクライアント・デバイスとの間で更新される。バックアップが単一の、大規模なデータベースになされるとき、格納し、転送する必要があるデータの量によっては、バックアップは1日につき1回しか行わなくてもよい。バックアップが分散されている実施例の場合、バックアップは、より小さいインクリメントに格納され、かつバックアップが、クライアント・ベースごとに変わる情報と関連する非同期のイベントであるので、追加の作業なしでより頻繁に実行させることができる。アップデートが増加すると、クライアントシステムにバックアップとして格納されるデータは、より小さいアップデートによって格納されるデータより、より完全性を持つ（または、より最新となる）ことになる。他の実施例の場合、データの変化がユーザによる行動の結果として検出されるたびに、アップデートが生じる。このような状況で、ユーザが多数の行動を実行する場合、アップデートが多く生じ得るが、ユーザがそれほど活動的でない場合には、ほとんどアップデートは生じない場合もある。他の実施例の場合、さらにユーザが多数の行動を実行するとき、アップデートはサービスによるクライアント通信にのみ定期的に生じる。任意のシナリオにおいて、バックアップとして格納されるデータは、最後のアップデートに基づいて主データベースに格納されるデータにより新しいものとして残る。
【００３９】
一実施例の場合、クライアント・デバイスからサーバに送信される要求は、クライアント・デバイスに格納されるデータの状態を確認する昇順の識別番号を持つ。他の実施例の場合、同様にサーバからクライアント・デバイスに送信される要求は、主データベースに格納されるデータの状態を確認する昇順の識別番号を持つ。例えば、クライアント・デバイスからサーバへの要求は、識別番号1005を持ってもよい。サーバが要求を受信すると、サーバはその特定のユーザに関連する格納される情報を検査する。サーバが要求1004からの情報を包含する場合、サーバは、主データベースに格納される情報と異なるクライアント・デバイスに関する特別の情報のみを要求する。識別番号が順次高くなるので、識別番号が一つ増加したという事実は、クライアント・デバイスおよび主データベース上のデータの状態がそれほど違っていなくてもよいことを示す。識別番号の違いがより大きい場合、データの状態の変化はより著しくてもよい。
【００４０】
サーバまたはクライアント・デバイスからの要求が、要求の受取人より低い番号を持つ場合、これは要求をしているサーバまたはクライアントが、その受取人より古いデータを持つことを明示する。このシナリオにおいて、データのアップデートは行われなくてもよく、または、より古いデータを更新するために、更新されたデータは、サーバまたはクライアント・デバイスに、より最新のデータを有する要求の受取人によって転送させてもよい。要求の受取人が、ユーザへの要求に適合させることができない場合、これは、受取人がその特定のデータをまだ格納しなくてもよく、または、データの特定のサブセットがなくなっていることを明示する。適合が発見できない場合、全てのデータの転送は、要求をしている特定のユーザの受取人のサーバまたはクライアントに実行される。
【００４１】
一実施例の場合、データ転送は、完全な転送または部分的な転送で行われてもよい。完全な転送において、特定のユーザの全てのデータは、クライアント・デバイスからデータベースに送信される。これは、サーバ故障または破滅的なデータ損失の場合のように、その特定のユーザに対して発見される情報がないところで生じてもよい。同様に、全体のデータ・レコードを送信せずに、データの2つのソースとの間の変化を転送する部分的な転送でもよい。
【００４２】
本発明の一実施例によるクライアント・デバイスにバックアップを格納するステップは、図3に例示される。ステップ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または携帯電話）を含むが、これに限定されるものではない。データの完全性は、データを複数の場所に格納することによって確保される。また、データは、複数のデバイスが故障すれば、別のクライアント・デバイスから回復させることができる。
【００５３】
セントラル・データが損なわれた場合、セントラル・データは、クライアント・デバイスの複数から損なわれた任意のデータを読み出すことによって回復される。したがって、セントラル・データのデータの小さいサブセットは損なわれても構わないし、また、全体のセントラル・データは損なわれて構わなく、データは、いずれかのシナリオでクライアント・デバイスから回復される。一実施例の場合、セントラル・データ全体が損なわれたことをセントラル・サーバが検出すると、サーバはサーバと通信する任意のクライアント・デバイスによってアップデートを実行する。特定のユーザの情報がセントラル・データで損なわれた場合、クライアント・デバイスは、主データベースに特定のユーザの全ての情報を転送する。これは、喪失した全てのセントラル・データを素早く回復させることを可能にする。
他の実施例の場合、セントラル・データが損なわれたことをセントラル・サーバが検出  
【００５４】
すると、セントラル・サーバは、損失したデータを読み出すためにクライアント・デバイスの各々からのアップデート要求を待つ。この処理は、アップデート要求を作成するサーバより長くかかるが、セントラル・サーバが制限された接続数のみを処理することができるように、セントラル・サーバに対してより小さい負担を課すようにしてもよい。この実施例の利点は、サーバは、その特定のクライアント・デバイスの必要なものを処理するのに各々のクライアント・デバイスがサーバと交信するので、セントラル・サーバのみが、サーバが必要とするデータによって機能するということである。
【００５５】
さらに別の実施例では、セントラル・サーバがセントラル・データの損失を検出すると、全てのクライアント・デバイスが交信されるまで、セントラル・サーバは、特定された多数のクライアント・デバイスのアップデート要求を実行する。クライアント・デバイスのどのグループを最初にアップデートするかという選択は、各状況による。これは、地理的な領域によって、または、（その情報が利用可能である場合、どのクライアント・デバイスが最も活動的であったかを明示する）記録によって、クライアント・デバイスを選択することを含んでもよい。サーバおよびクライアント・デバイスとの多数の接続を制限することは、アップデート、および、接続が適切に処理されることを確保する。
【００５６】
一実施例の場合、クライアント・デバイスに格納されたデータが損なわれた場合、クライアント・デバイスに以前に格納されていたデータは、別のクライアント・デバイスから損失したデータに対応するデータを読み出すことによって回復される。これは、ユーザが一つ以上のクライアント・デバイスを所有することにより可能である。ユーザが一つ以上のクライアント・デバイスを所有する場合、処理されたデータのバックアップは、クライアント・デバイスの各々に格納される。データが損なわれたことをクライアント・デバイスが検出すると、クライアント・デバイスは、データのバックアップを格納する別のクライアント・デバイスに要求を送信してもよい。この要求は、格納されたバックアップが特定のユーザに関連するデータのサブセットに制限されているので、同じユーザが所有するデバイスに限定される。一実施例の場合、クライアントには、サーバによって共有証明書が支給される。共有証明書は、各クライアント・デバイスに、クライアント・デバイスがデータを共有することを認証した他のクライアント・デバイスについて、通知する。
【００５７】
本発明の一実施例によるクライアントがオンラインであるときデータ回復のためにとるステップの実例は、図4に示される。ステップ400において、データは、主データベースの故障に起因して主データベースで損なわれる。ステップ402において、クライアント・デバイスの一つは、損失したデータの検出に、次のアップデート要求をする。セントラル・サーバは、要求を受けて、主データベースおよびクライアント・デバイスに格納されるデータの状態を比較する。ステップ404に示されるように、この特定の状況において、ユーザと関連するデータは、損失のため、主データベースに発見されない。ステップ406で、データは、特定のクライアント・デバイスに対し、全てのバックアップ・データを主データベースに送信しているクライアント・デバイスによって、回復される。クライアント・デバイスがセントラル・サーバのアップデート要求をするとき、これらのデータ回復ステップは、各々の特定のユーザの一つ以上のクライアント・デバイスのデータ損失の検出に応じて繰り返される。
【００５８】
4.0  企業システムの分散バックアップ
分散バックアップは、任意の社内ネットワーク・システムが使用してもよく、DVRサービス・プロバイダのシステムのみに限定されるものではない。多くのクライアントが有するセントラル・サーバを持つ企業システムは、このバックアップ・システムを実装してもよい。大きなデータ量が適切なバックアップ・システムで格納されなければならないので、企業システムは同じ問題点を有する。単一の、大きなデータベースにバックアップに必要なものを移すことは、多くのコスト削減が得られる。
【００５９】
ネットワーク上の多くのクライアントを有するセントラル・サーバを備える任意のタイプのシステムは、分散されたバックアップを使用してもよい。例えば、ユーザが集中型サービスを申し込む携帯電話ネットワークまたはパーソナルコンピュータネットワークの場合、セントラル・データのバックアップは、重要になる。
【００６０】
分散されたバックアップの技術および方法は、セントラル・サーバを利用している任意の企業システムまたはシステムに適用させてもよい。セントラル・サーバおよびデータベースによって格納されるデータのサブセットは、企業システムのクライアントのバックアップとして格納される。会社の記録、顧客データまたは人事管理情報を含むが、これに限らず、いかなるデータのタイプも、このようにしてバックアップさせてもよい。アップデートは、バックアップとして格納されるデータが最新であることを確保するために、しばしば実行される。データが機密に関わるとみなされる場合、データおよびデータの転送はプライバシーのために暗号化される。主データベースのデータ損失の検出に応じて、データは、クライアントから回復させてもよい。また、クライアント・デバイスの一つのデータ損失の検出に応じて、新しいバックアップは、主データベースからのデータによる修復されたクライアントに格納させてもよい。
【００６１】
5.0  実装メカニズム
図5は、本発明の実施例を実行することができるコンピュータシステム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  サーバ
【図１Ａ】
2011511975.tif 000003
【図１Ｂ】
2011511975.tif 000004
【図２】
2011511975.tif 000005
【図３】
2011511975.tif 000006
【図４】
2011511975.tif 000007
【図５】
2011511975.tif 000008
【国際調査報告】
2011511975.tif 000009