【手続補正書】
【提出日】平成30年5月11日(2018.5.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
サードパーティアプリケーションデータをクラウドストレージにアップロードするための方法であって、その方法は、
サードパーティアプリケーションに関連するデータを前記クラウドストレージにアップロードすることをクライアントデバイスが決定するステップであって、前記サードパーティアプリケーションに関連するデータがバイナリデータおよびメタデータを含む、ステップと、
前記サードパーティアプリケーションのバイナリデータを前記クラウドストレージに送信するステップと、
前記サードパーティアプリケーションのメタデータを前記クラウドストレージに送信するステップと
を含み、
前記バイナリデータは、ストレージアドレスを有する第１のクラウドストレージロケーションに格納されることになっており、
前記メタデータは、更新されたメタデータを取得するために前記ストレージアドレスが付加されることになっており、
前記更新されたメタデータは、前記第１のクラウドストレージロケーションとは異なる第２のクラウドストレージロケーションに格納されることになっている、方法。
【請求項２】
前記サードパーティアプリケーションのバイナリデータは、前記サードパーティアプリケーションについての全データを含む、請求項１に記載の方法。
【請求項３】
前記サードパーティアプリケーションに関連するデータをアップロードするかどうかを前記クライアントデバイスが決定するステップは、
前記クライアントデバイスに格納された前記サードパーティアプリケーションに関連する格納されたバイナリデータを識別するステップと、
前記サードパーティアプリケーションに関連する以前にアップロードされたバイナリデータを識別するステップと、
前記格納されたバイナリデータと前記以前にアップロードされたバイナリデータとの間の差を計算するステップと、
前記差を閾値と比較するステップと
をさらに含む、請求項１または２に記載の方法。
【請求項４】
前記差が前記閾値以上である場合、前記クライアントデバイスは、前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項３に記載の方法。
【請求項５】
前記クライアントデバイスは、複数のサードパーティアプリケーションに関連するデータを格納し、前記複数のサードパーティアプリケーションにおける各サードパーティアプリケーションは、対応するバイナリデータおよび対応するメタデータに関連付けられ、各サードパーティアプリケーションについての前記対応するバイナリデータおよび前記対応するメタデータは、１回のアップロードで前記クライアントデバイスからアップロードされる、請求項１乃至４のいずれか１項に記載の方法。
【請求項６】
前記サードパーティアプリケーションに関連するデータは、送信前に前記クライアントデバイス上で完全には複製されない、請求項１乃至５のいずれか１項に記載の方法。
【請求項７】
前記クライアントデバイスは、所定のアップロードスケジュールに基づいて前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項１乃至６のいずれか１項に記載の方法。
【請求項８】
前記クライアントデバイスは、前記サードパーティアプリケーションによって報告される前記サードパーティアプリケーションへの変更の検出に基づいて前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項１乃至７のいずれか１項に記載の方法。
【請求項９】
前記クライアントデバイスは、前記クライアントデバイスのユーザーからバックアップ要求を受信したときに、前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項１乃至８のいずれか１項に記載の方法。
【請求項１０】
前記バイナリデータおよび前記メタデータを送信するステップは、
前記クライアントデバイスが前記サードパーティアプリケーションのバイナリデータおよびメタデータを単一のファイルに集約するステップと、
前記単一のファイルを前記クラウドストレージ内のアップロードサーバーに送信して前記バイナリデータを前記メタデータから分離させるステップと
を含み、前記バイナリデータは、前記第１のクラウドストレージロケーションに格納するために送信され、前記第１のクラウドストレージロケーションの前記ストレージアドレスは、更新されたメタデータを取得するために前記メタデータに付加され、前記更新されたメタデータは、前記第２のクラウドストレージロケーションに格納するために送信される、請求項１乃至９のいずれか１項に記載の方法。
【請求項１１】
前記単一のファイルは、「．ｔａｒ」ファイルタイプを有する、請求項１０に記載の方法。
【請求項１２】
前記サードパーティアプリケーションに関連するデータは、アプリケーションデータ、ユーザープリファレンス、およびアプリケーションコンテンツを含む、請求項１乃至１１のいずれか１項に記載の方法。
【請求項１３】
前記第２のクラウドストレージロケーションへの参照を前記クライアントデバイスにおいて受信するステップをさらに含む、請求項１乃至１２のいずれか１項に記載の方法。
【請求項１４】
前記バイナリデータが前記クラウドストレージに送信されることにより、以前にアップロードされた前記サードパーティアプリケーションのバイナリデータが前記第１のクラウドストレージロケーションにおいて上書きされ、前記メタデータが前記クラウドストレージに送信されることにより、以前にアップロードされた前記サードパーティアプリケーションのメタデータが前記第２のクラウドストレージロケーションにおいて上書きされる、請求項１乃至１３のいずれか１項に記載の方法。
【請求項１５】
送信された前記バイナリデータおよび前記メタデータは、前記クラウドストレージへのアクセスを有するユーザーインタフェースを介してユーザーがアクセス可能である、請求項１乃至１４のいずれか１項に記載の方法。
【請求項１６】
前記クライアントデバイスは第１のクライアントデバイスであり、前記バイナリデータおよび前記更新されたメタデータが第２のクライアントデバイスにダウンロードされることにより、前記第１のクライアントデバイス上の前記サードパーティアプリケーションデータが第２のデバイス上のサードパーティアプリケーションデータと同期化される、請求項１乃至１５のいずれか１項に記載の方法。
【請求項１７】
前記バイナリデータおよび前記メタデータは、前記クラウドストレージ内のアップロードサーバーに送信され、前記アップロードサーバーは、前記バイナリデータを前記第１のクラウドストレージロケーションに書き込み、前記更新されたメタデータを書き込みのために前記第２のクラウドストレージロケーションに送信する、請求項１乃至１６のいずれか１項に記載の方法。
【請求項１８】
前記アップロードサーバーは、前記第２のクラウドストレージロケーションから前記更新されたメタデータを読み出して前記第２のクラウドストレージロケーションに書き込むように構成されているクラウドストレージサービスに前記更新されたメタデータを送信する、請求項１７に記載の方法。
【請求項１９】
前記バイナリデータの送信はキーと値のペアを使用しない、請求項１乃至１８のいずれか１項に記載の方法。
【請求項２０】
前記サードパーティアプリケーションに関連するデータを全データバックアッププロセスまたは部分データバックアッププロセスを使用して送信することが前記サードパーティアプリケーションに関連付けられたマニフェストに示されているかどうかを判定するステップと、
部分データバックアッププロセスを使用するという決定に応答して、前記バイナリデータのいずれも前記クラウドストレージに送信することなく前記クラウドストレージに前記メタデータの一部を送信するステップと
をさらに含む、請求項１乃至１９のいずれか１項に記載の方法。
【請求項２１】
前記クラウドストレージへの前記メタデータの一部の送信は、キーと値のペアを使用することを含む、請求項２０に記載の方法。
【請求項２２】
請求項１乃至２１のいずれか１項に記載の方法を実行するためのシステム。
【請求項２３】
サードパーティアプリケーションデータをクラウドストレージに格納するための方法であって、
クライアントデバイスに格納されたサードパーティアプリケーションに関連するデータをクラウドストレージサーバーにダウンロードすることを決定するステップであって、前記サードパーティアプリケーションに関連するデータがバイナリデータおよびメタデータを含む、ステップと、
ストレージアドレスを有する第１のクラウドストレージロケーションに格納しようとする前記サードパーティアプリケーションのバイナリデータをアップロードするステップと、
第２のクラウドストレージロケーションに格納しようとする前記サードパーティアプリケーションのメタデータをアップロードするステップであって、前記メタデータは、前記ストレージアドレスを含むように更新されることになっている、ステップと
を含む方法。
【請求項２４】
前記サードパーティアプリケーションのバイナリデータは、前記サードパーティアプリケーションについての全データを含む、請求項２３に記載の方法。
【請求項２５】
前記クライアントデバイスは、前記データをアップロードするかどうかを
前記クライアントデバイスに格納された前記サードパーティアプリケーションに関連する格納されたバイナリデータを識別することと、
前記サードパーティアプリケーションに関連する以前にアップロードされたバイナリデータを識別することと、
前記格納されたバイナリデータと前記以前にアップロードされたバイナリデータとの間の差を計算することと、
前記差を閾値と比較することと
によって決定する、請求項２３または２４に記載の方法。
【請求項２６】
前記差が前記閾値以上である場合、前記クライアントデバイスは、前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項２５に記載の方法。
【請求項２７】
前記クライアントデバイスは、複数のサードパーティアプリケーションに関連するデータを格納し、前記複数のサードパーティアプリケーションにおける各サードパーティアプリケーションは、対応するバイナリデータおよび対応するメタデータに関連付けられ、各サードパーティアプリケーションについての前記対応するバイナリデータおよび前記対応するメタデータは、１回のアップロードで前記クライアントデバイスからアップロードされる、請求項２３乃至２６のいずれか１項に記載の方法。
【請求項２８】
前記サードパーティアプリケーションに関連するデータは、前記データのアップロード前に前記クライアントデバイス上で完全には複製されない、請求項２３乃至２７のいずれか１項に記載の方法。
【請求項２９】
前記クライアントデバイスは、所定のアップロードスケジュールに基づいて前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項２３乃至２８のいずれか１項に記載の方法。
【請求項３０】
前記クライアントデバイスは、前記サードパーティアプリケーションによって報告される前記サードパーティアプリケーションへの変更の検出に基づいて前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項２３乃至２９のいずれか１項に記載の方法。
【請求項３１】
前記クライアントデバイスは、前記クライアントデバイスのユーザーからバックアップ要求を受信したときに、前記サードパーティアプリケーションに関連するデータをアップロードすることを決定する、請求項２３乃至３０のいずれか１項に記載の方法。
【請求項３２】
前記クライアントデバイスが前記サードパーティアプリケーションのバイナリデータおよびメタデータを単一のファイルに集約するステップと、
前記単一のファイルを前記クラウドストレージ内のアップロードサーバーに送信して前記バイナリデータを前記メタデータから分離させるステップと
を含み、前記バイナリデータは、前記第１のクラウドストレージロケーションに格納するために送信され、前記第１のクラウドストレージロケーションの前記ストレージアドレスは、更新されたメタデータを取得するために前記メタデータに付加され、前記更新されたメタデータは、前記第２のクラウドストレージロケーションに格納するために送信される、請求項２３乃至３１のいずれか１項に記載の方法。
【請求項３３】
前記単一のファイルは、「．ｔａｒ」ファイルタイプを有する、請求項３２に記載の方法。
【請求項３４】
前記サードパーティアプリケーションに関連するデータは、アプリケーションデータ、ユーザープリファレンス、およびアプリケーションコンテンツを含む、請求項２３乃至３３のいずれか１項に記載の方法。
【請求項３５】
前記第２のクラウドストレージロケーションへの参照を前記クライアントデバイスにおいて受信するステップをさらに含む、請求項２３乃至３４のいずれか１項に記載の方法。
【請求項３６】
前記バイナリデータが前記第１のクラウドストレージロケーションに格納されると、以前にアップロードされた前記サードパーティアプリケーションのバイナリデータが上書きされ、前記更新されたメタデータが前記第２のクラウドストレージロケーションに格納されると、以前にアップロードされた前記サードパーティアプリケーションのメタデータが上書きされる、請求項２３乃至３５のいずれか１項に記載の方法。
【請求項３７】
送信された前記バイナリデータおよび前記メタデータは、前記クラウドストレージへのアクセスを有するユーザーインタフェースを介してユーザーがアクセス可能である、請求項２３乃至３６のいずれか１項に記載の方法。
【請求項３８】
前記クライアントデバイスは第１のクライアントデバイスであり、前記バイナリデータおよび前記更新されたメタデータが第２のクライアントデバイスにダウンロードされることにより、前記第１のクライアントデバイス上の前記サードパーティアプリケーションデータが第２のデバイス上のサードパーティアプリケーションデータと同期化される、請求項２３乃至３７のいずれか１項に記載の方法。
【請求項３９】
前記バイナリデータおよび前記メタデータは、前記クラウドストレージ内のアップロードサーバーに送信され、前記アップロードサーバーは、前記バイナリデータを前記第１のクラウドストレージロケーションに書き込み、前記更新されたメタデータを書き込みのために前記第２のクラウドストレージロケーションに送信する、請求項２３乃至３８のいずれか１項に記載の方法。
【請求項４０】
前記アップロードサーバーは、前記第２のクラウドストレージロケーションから前記更新されたメタデータを読み出して前記第２のクラウドストレージロケーションに書き込むように構成されているクラウドストレージサービスに前記更新されたメタデータを送信する、請求項３９に記載の方法。
【請求項４１】
前記バイナリデータの格納はキーと値のペアを使用しない、請求項２３乃至４０のいずれか１項に記載の方法。
【請求項４２】
前記サードパーティアプリケーションに関連するデータを全データバックアッププロセスまたは部分データバックアッププロセスを使用して送信することが前記サードパーティアプリケーションに関連付けられたマニフェストに示されているかどうかを判定するステップと、
部分データバックアッププロセスを使用するという決定に応答して、前記バイナリデータのいずれも前記クラウドストレージに送信することなく前記クラウドストレージに前記メタデータの一部を送信するステップと
をさらに含む、請求項２３乃至４１のいずれか１項に記載の方法。
【請求項４３】
前記メタデータの一部は、キーと値のペアを使用して前記クラウドストレージに送信される、請求項４２に記載の方法。
【請求項４４】
請求項２３乃至４３のいずれか１項に記載の方法を実行するためのシステム。
【請求項４５】
サードパーティアプリケーションデータをクライアントデバイスにリストアするための方法であって、
サードパーティアプリケーションに関連するデータを前記クライアントデバイスにダウンロードするかどうかを前記クライアントデバイスが決定するステップであって、前記サードパーティアプリケーションに関連するデータは、ストレージアドレスを有する第１のクラウドストレージロケーションに格納されたバイナリデータと、第２のクラウドストレージロケーションに格納されたメタデータとを含む、ステップと、
前記第２のクラウドストレージロケーションへの第１の参照を受信するステップと、
前記第２のクラウドストレージロケーションへの前記第１の参照を使用して前記第２のクラウドストレージロケーションから前記メタデータを取得することにより、前記第２のクラウドストレージロケーションへの前記第１の参照を、前記第１のクラウドストレージロケーションの前記ストレージアドレスを決定するサーバーに送信するステップであって、前記メタデータは、前記第１のクラウドストレージロケーションへの第２の参照を含む、ステップと、
前記第１のクラウドストレージロケーションから前記クライアントデバイスに前記バイナリデータをダウンロードするステップと
を含む方法。
【請求項４６】
前記サードパーティアプリケーションのバイナリデータは、前記サードパーティアプリケーションについての全データを含む、請求項４５に記載の方法。
【請求項４７】
前記クライアントデバイスは、複数のサードパーティアプリケーションに関連するデータを格納し、前記複数のサードパーティアプリケーションにおける各サードパーティアプリケーションは、対応するバイナリデータおよび対応するメタデータに関連付けられ、各サードパーティアプリケーションについての前記対応するバイナリデータは、１回のダウンロードで前記クライアントデバイスにダウンロードされる、請求項４５または４６に記載の方法。
【請求項４８】
前記クライアントデバイスは、前記クライアントデバイスのユーザーからリストア要求を受信したときに、前記サードパーティアプリケーションに関連するデータをダウンロードすることを決定する、請求項４５乃至４７のいずれか１項に記載の方法。
【請求項４９】
前記サードパーティアプリケーションに関連するデータは、アプリケーションデータ、ユーザープリファレンス、およびアプリケーションコンテンツを含む、請求項４５乃至４８のいずれか１項に記載の方法。
【請求項５０】
前記クライアントデバイスは第１のクライアントデバイスであり、前記バイナリデータおよび更新されたメタデータが第２のクライアントデバイスにダウンロードされることにより、前記第１のクライアントデバイス上の前記サードパーティアプリケーションデータが第２のデバイス上のサードパーティアプリケーションデータと同期化される、請求項４５乃至４９のいずれか１項に記載の方法。
【請求項５１】
前記バイナリデータおよび前記メタデータは、クラウドストレージ内のダウンロードサーバーに送信され、前記ダウンロードサーバーは、前記第１のクラウドストレージロケーションに前記バイナリデータを以前に書き込んでおり、かつ前記第２のクラウドストレージロケーションに書き込むために前記メタデータを以前に送信している、請求項４５乃至５０のいずれか１項に記載の方法。
【請求項５２】
前記ダウンロードサーバーは、前記第２のクラウドストレージロケーションから更新されたメタデータを読み出すクラウドストレージサービスに前記メタデータを以前に送信して、更新されたメタデータを前記第２のクラウドストレージロケーションに書き込んでいる、請求項５１に記載の方法。
【請求項５３】
第２のサードパーティアプリケーションに関連するデータは、第３のクラウドストレージロケーションに格納されたメタデータを含み、前記第２のサードパーティアプリケーションに関連するバイナリデータが存在しない、請求項４５乃至５２のいずれか１項に記載の方法。
【請求項５４】
前記第２のサードパーティアプリケーションに関連するデータを前記クライアントデバイスにダウンロードするかどうかを決定するステップであって、前記第２のサードパーティアプリケーションに関連する前記メタデータは、前記第３のクラウドストレージロケーションに格納された一組のキーと値のペアとして識別される、ステップと、
前記一組のキーと値のペアを前記クライアントデバイスにダウンロードするステップとをさらに含む請求項５３に記載の方法。
【請求項５５】
請求項４５乃至５４のいずれか１項に記載の方法を実行するためのシステム。
【請求項５６】
クライアントデバイスへのサードパーティアプリケーションデータのリストアを提供するための方法であって、
サードパーティアプリケーションに関連するデータを前記クライアントデバイスに提供するかどうかをサーバーが決定するステップであって、前記サードパーティアプリケーションに関連するデータは、ストレージアドレスを有する第１のクラウドストレージロケーションに格納されたバイナリデータと、第２のクラウドストレージロケーションに格納されたメタデータとを含む、ステップと、
前記第２のクラウドストレージロケーションから前記メタデータをダウンロードするステップと、
前記メタデータを使用して前記第１のクラウドストレージロケーションの前記ストレージアドレスを決定するステップと、
前記第１のクラウドストレージロケーションから前記クライアントデバイスに前記バイナリデータを提供するステップと
を含む方法。
【請求項５７】
前記サードパーティアプリケーションのバイナリデータは、前記サードパーティアプリケーションについての全データを含む、請求項５６に記載の方法。
【請求項５８】
前記クライアントデバイスは、複数のサードパーティアプリケーションに関連するデータを格納し、前記複数のサードパーティアプリケーションにおける各サードパーティアプリケーションは、対応するバイナリデータおよび対応するメタデータに関連付けられ、各サードパーティアプリケーションについての前記対応するバイナリデータは、１回のダウンロードで前記クライアントデバイスにダウンロードされる、請求項５６または５７に記載の方法。
【請求項５９】
前記サーバーは、前記クライアントデバイスからの信号の受信に応答して、前記サードパーティアプリケーションに関連するデータを提供することを決定する、請求項５６乃至５８のいずれか１項に記載の方法。
【請求項６０】
前記サードパーティアプリケーションに関連するデータは、アプリケーションデータ、ユーザープリファレンス、およびアプリケーションコンテンツを含む、請求項５６乃至５９のいずれか１項に記載の方法。
【請求項６１】
前記クライアントデバイスは第１のクライアントデバイスであり、前記バイナリデータおよび更新されたメタデータが第２のクライアントデバイスにダウンロードされることにより、前記第１のクライアントデバイス上の前記サードパーティアプリケーションデータが第２のデバイス上のサードパーティアプリケーションデータと同期化される、請求項５６乃至６０のいずれか１項に記載の方法。
【請求項６２】
前記サーバーは、前記第１のクラウドストレージロケーションに前記バイナリデータを以前に書き込んでおり、かつ前記第２のクラウドストレージロケーションに書き込むために前記メタデータを以前に送信している、請求項５６乃至６１のいずれか１項に記載の方法。
【請求項６３】
前記サーバーは、前記第２のクラウドストレージロケーションから更新されたメタデータを読み出すように構成されているクラウドストレージサービスに前記メタデータを以前に送信して、更新されたメタデータを前記第２のクラウドストレージロケーションに以前に書き込んでいる、請求項６２に記載の方法。
【請求項６４】
第２のサードパーティアプリケーションに関連するデータは、第３のクラウドストレージロケーションに格納されたメタデータを含み、前記第２のサードパーティアプリケーションに関連するバイナリデータが存在しない、請求項５６乃至６３のいずれか１項に記載の方法。
【請求項６５】
前記第２のサードパーティアプリケーションに関連するデータを前記クライアントデバイスに提供するかどうかを前記サーバーにおいて決定するステップと、
前記第２のサードパーティアプリケーションに関連する前記メタデータを、前記第３のクラウドストレージロケーションに格納された一組のキーと値のペアとして識別するステップと、
前記一組のキーと値のペアを前記クライアントデバイスに提供するステップと
をさらに含む請求項６４に記載の方法。
【請求項６６】
請求項５６乃至６５のいずれか１項に記載の方法を実行するためのシステム。