JP2015520435A - クラウド同期システムのためのテレメトリ・システム - Google Patents

クラウド同期システムのためのテレメトリ・システム Download PDF

Info

Publication number
JP2015520435A
JP2015520435A JP2015504693A JP2015504693A JP2015520435A JP 2015520435 A JP2015520435 A JP 2015520435A JP 2015504693 A JP2015504693 A JP 2015504693A JP 2015504693 A JP2015504693 A JP 2015504693A JP 2015520435 A JP2015520435 A JP 2015520435A
Authority
JP
Japan
Prior art keywords
synchronization
telemetry
file
matching
cloud
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.)
Granted
Application number
JP2015504693A
Other languages
English (en)
Other versions
JP2015520435A5 (ja
JP6385336B2 (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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2015520435A publication Critical patent/JP2015520435A/ja
Publication of JP2015520435A5 publication Critical patent/JP2015520435A5/ja
Application granted granted Critical
Publication of JP6385336B2 publication Critical patent/JP6385336B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Abstract

サービス・プロキシは、クラウド同期システムのクラウド・ユーザ・アカウント内に記憶されたマッチング・ファイルのマッチング・ファイル・メタデータ・セットを受信することができる。サービス・プロキシは、クライアント・デバイス内に記憶されたローカル・ファイルに対するマッチング・ファイル・メタデータ・セットの同期検証を実行することができる。サービス・プロキシは、同期検証により判定された同期エラーを記述するテレメトリ・レポートを作成することができる。

Description

最近のコンピュータ・ユーザは、デスクトップ・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータ、又は、「スマートフォン」と呼ばれる計算能力を備えた携帯電話等の複数のコンピュータ・デバイスを有する場合がある。ユーザは、1つのデバイス内のファイルを、複数の他のデバイスにわたるファイルと同期された状態に保つ場合がある。ユーザは、1つのデバイス内のファイルに対する任意の変更を、他のデバイス内のそのファイルの他のコピーに移す場合がある。
この概要は、詳細な説明において以下でさらに説明されるコンセプトのうち選択したものを簡略化した形で紹介するために提供される。この概要は、特許請求される主題の主要な特徴又は必要不可欠な特徴を特定することを意図するものではないし、特許請求される主題の範囲を限定するよう使用されることを意図するものでもない。
以下で説明する実施形態は、正確さ及びパフォーマンスを改善するためのクラウド同期システムをトラッキングするテレメトリ・システムに関する。サービス・プロキシは、クラウド同期システムのクラウド・ユーザ・アカウント内に記憶されたマッチング・ファイルのマッチング・ファイル・メタデータ・セットを受信することができる。サービス・プロキシは、クライアント・デバイス内に記憶されたローカル・ファイルに対するマッチング・ファイル・メタデータ・セットの同期検証を実行することができる。サービス・プロキシは、同期検証により判定された同期エラーを記述するテレメトリ・レポートを作成することができる。
上述した利点及び他の利点、並びに特徴を得ることができる態様を説明するために、添付の図面に例示される特定の実施形態を参照することにより、より詳細な記載が説明され提供される。これらの図面は典型的な実施形態のみを表すに過ぎず、したがって、その範囲を限定するものとして考えられるべきではないことを理解されたい。添付の図面を使用することにより、実施例が、追加的な具体性及び詳細さをもって記載され説明される。
クラウド同期ネットワークの一実施形態のブロック図を示す。 コンピューティング・デバイスの一実施形態のブロック図を示す。 マッチング・ファイル・メタデータ・セット・メッセージの一実施形態のブロック図を示す。 テレメトリ・レポートの一実施形態のブロック図を示す。 テレメトリ・レコードの一実施形態のブロック図を示す。 レビュー・レポートの一実施形態のブロック図を示す。 クライアント・デバイスを用いてローカル・ファイルを同期する方法の一実施形態のフローチャートを示す。 同期検証を実行する方法の一実施形態のフローチャートを示す。 クラウド・サーバを用いてマッチング・ファイルを同期する方法の一実施形態のフローチャートを示す。 テレメトリ・サーバにおいてテレメトリ・レポートを処理する方法の一実施形態のフローチャートを示す。
実施形態について、以下で詳細に説明する。特定の実施例について説明されるが、これは例示の目的で説明されるに過ぎないことを理解すべきである。当業者は、本開示の主題の精神及び範囲から逸脱することなく、他のコンポーネント及び構成を使用できることを認識するであろう。実施例は、マシンにより実施される方法であってもよいし、少なくとも1つのプロセッサのための、方法を詳述する命令のセットを記憶した有体のマシン読み取り可能な媒体であってもよいし、又は、クライアント・デバイスであってもよい。
ユーザは、タブレット・コンピュータ、ラップトップ・コンピュータ、デスクトップ・コンピュータ、及びスマートフォン等の複数のデバイス上に、データ・ファイルのコピーを維持する場合がある。データ・ファイルは、テキスト・ファイル、デジタル・イメージ・ファイル、オーディオ・ファイル、ビデオ・ファイル、又は実行可能なソフトウェア・アプリケーションであってよい。ユーザは、クラウド・コンピューティングを用いて、そのデータ・ファイルのコピーを保存することができる。クラウド・コンピューティングにより、サービス・プロキシが、ユーザ・デバイスの所定の機能を1以上のネットワーク・デバイスにオフロードすることが可能となる。これがクラウドと呼ばれる。
ユーザは、クラウド・ユーザ・アカウントを用いて、クラウドにより提供される任意のクラウド・サービスにアクセスすることができる。クラウドは、ユーザ・デバイスの代わりに、処理機能及びバックアップ記憶機能を実行することができる。ユーザは、ネットワークを介してユーザに関連付けられた各デバイスに少なくとも断続的に接続されるクラウド・サーバ上にデータ・ファイルのコピーを記憶することができる。データ・ファイルが、1つのユーザ・デバイス上で更新されるたびに、クラウド・ユーザ・アカウントを用いて、データ・ファイルを、クラウド・サーバ上及び任意の他のユーザ・デバイス上のコピーと同期することができる。
テレメトリ・システムは、クラウド同期システム等のクラウド・サービス中に正確さ及びパフォーマンスをトラッキングするために、クラウドの各エンドポイントからデータを収集することができる。クライアント・デバイスは、同期をトラッキングすることができ、テレメトリ・サーバに送信するために、テレメトリ・レポートを作成することができる。クライアント・デバイスは、同期が正しく生じたことを検証するために、ファイル・メタデータを使用することができる。クライアント・デバイスはまた、同期プロセス中に生じたアサーション失敗又は同期ストール(synchronization stall)をレポートすることができる。
次いで、テレメトリ・サーバは、同期プロセス中に生じた同期エラーを実証して同期エラーの原因を突き止めるために、そのデータを使用することができる。テレメトリ・サーバは、共通エラー又はエラー・パターンを特定することができ、そうしたエラーを修正するために、エラー・パッチを自動的に提供することができる。テレメトリ・サーバは、クライアント・デバイスのユーザ又はクラウド同期システムの管理者に、レビュー・レポートを送信することができる。レビュー・レポートは、テレメトリ・データを、クラウド同期システムをカバーするサービスワイド・パフォーマンス・レコード(service-wide performance record)、クラウド同期システム・ユーザの異なる層グループをカバーする集合的ユーザ・パフォーマンス・レコード(aggregate user performance record)、及び個別的ユーザ・パフォーマンス・レコードに整理し得る。
したがって、一実施形態において、テレメトリ・システムは、パフォーマンスを改善するために、クラウド同期システムをトラッキングすることができる。サービス・プロキシは、クラウド同期システムのクラウド・ユーザ・アカウント内に記憶されたマッチング・ファイルのマッチング・ファイル・メタデータ・セットを受信することができる。サービス・プロキシは、クライアント・デバイス内に記憶されたローカル・ファイルに対するマッチング・ファイル・メタデータ・セットの同期検証を実行することができる。サービス・プロキシは、同期検証により判定された同期エラーを記述するテレメトリ・レポートを作成することができる。
図1は、クラウド同期ネットワーク100の一実施形態のブロック図を示している。クライアント・デバイス110は、テキスト・ファイル、デジタル・オーディオ・ファイル、デジタル・イメージ・ファイル、デジタル・ビデオ・ファイル、アプリケーション、又は他のデータ・ファイル等のローカル・ファイル112を記憶することができる。クライアント・デバイス110は、デスクトップ・コンピュータ、ラップトップ・コンピュータ、ハンドヘルド・コンピュータ、スマートフォン、又は他のコンピューティング・デバイスであってよい。クライアント・デバイス110は、クラウド・クライアント・インタフェースとして動作してクラウド同期システム等のクラウド・サービスにサブスクライブするサービス・プロキシ114を使用することができる。サービス・プロキシ114は、クラウド同期ネットワーク100全体を通じてローカル・ファイル112の同期されたコピーを維持するために、クライアント同期エンジン116を実行することができる。
サービス・プロキシ114は、クラウド・サーバ130に接続するために、データ・ネットワーク接続120を用いることができる。クラウド・サーバ130は、クライアント・デバイス110に関連付けられたユーザのためのクラウド・ユーザ・アカウント132を記憶することができる。クラウド・ユーザ・アカウント132は、クライアント・デバイス110上に記憶されたローカル・ファイル112のためのマッチング・ファイル134を維持することができる。マッチング・ファイル134は、クライアント・デバイス110上に記憶されたローカル・ファイル112のバージョンのコピーである。クラウド・サーバ130は、予め設定されたスケジュールで、あるいは、ローカル・ファイル112又はマッチング・ファイル134のいずれかが更新されるたびに、ローカル・ファイル112とマッチング・ファイル134とを同期するために、クラウド同期エンジン136を実行することができる。
さらに、関連ユーザ・デバイス140は、マッチング・ファイル134を維持するクラウド・ユーザ・アカウント132のインカネーション(incarnation)として動作する関連サービス・プロキシ142を有することができる。関連ユーザ・デバイス140は、マッチング・ファイル134と、クラウド・サーバ130上のマッチング・ファイル134又はクライアント・デバイス110上のローカル・ファイル112のいずれかとを同期するために、関連同期エンジン144を使用することができる。関連ユーザ・デバイス140は、クラウド・ユーザ・アカウント132に登録された任意のデバイスである。関連ユーザ・デバイス140は、別のクライアント・デバイス110とみなされてもよいし、逆であってもよい。
テレメトリ・サーバ150は、クラウド同期システムの正確さ及びパフォーマンスをトラッキングするために、クラウド内にテレメトリ・システムを維持することができる。テレメトリ・サーバ150は、クラウド・サーバ130を介してアクセスされ得る、あるいは、データ・ネットワーク接続120を介して直接的にアクセスされ得る。テレメトリ・サーバ150は、クライアント・デバイス110又はクラウド・サーバ130からテレメトリ・レポートを受信することができる。テレメトリ・レポートは、同期の正確さ及びパフォーマンスを記述するものであり、生じた任意の同期エラーを含む。次いで、テレメトリ・サーバ150は、クラウド同期システムのパフォーマンスを記述する、ユーザに示されるレビュー・レポートを、クライアント・デバイス110に提供することができる。テレメトリ・サーバ150は、共通エラー又はエラー・パターン、及びそうしたエラーを修正することができるエラー・パッチ又はユーザ・アクションを記憶するための既知のエラー・データベース152を維持することができる。
図2は、クライアント・デバイス110、関連ユーザ・デバイス140、クラウド・サーバ130、又はテレメトリ・サーバ150として動作することができる例示的なコンピューティング・デバイス200のブロック図を示している。コンピューティング・デバイス200は、テレメトリ・システム又はクラウド同期システムを実装するために、ハードウェア、ソフトウェア、ファームウェア、及びシステムオンチップ技術のうち1以上を組み合わせることができる。コンピューティング・デバイス200は、バス210、プロセッサ220、メモリ230、読み取り専用メモリ(ROM)240、ストレージ・デバイス250、入力デバイス260、出力デバイス270、及びネットワーク・インタフェース280を含み得る。バス210又は他のコンポーネント間通信システムにより、コンピューティング・デバイス200のコンポーネント間での通信が可能となる。
プロセッサ220は、命令のセットを解釈し実行する少なくとも1つの従来型のプロセッサ又はマイクロプロセッサを含み得る。メモリ230は、ランダム・アクセス・メモリ(RAM)であってもよいし、又は、プロセッサ220により実行される情報及び命令を記憶する別のタイプの動的なストレージ・デバイスであってもよい。メモリ230はまた、プロセッサ220による命令の実行中に使用される一時変数又は他の中間情報を記憶することもできる。ROM240は、従来型のROMデバイス、又は、プロセッサ220のための静的な情報及び命令を記憶する別のタイプの静的なストレージ・デバイスを含み得る。ストレージ・デバイス250は、例えば、磁気記録媒体又は光記録媒体及びその対応するドライブといった任意のタイプの有体のマシン読み取り可能な媒体を含み得る。有体のマシン読み取り可能な媒体は、トランジトリな媒体又は信号ではなく、マシン読み取り可能なコード又は命令を記憶する物理媒体である。ストレージ・デバイス250は、方法を詳述した命令のセットを記憶することができ、命令のセットは、1以上のプロセッサにより実行されるときに、1以上のプロセッサに前述の方法を実行させる。ストレージ・デバイス250はまた、テレメトリ・レコードを記憶するための、データベース又はデータベース・インタフェースであってよい。
入力デバイス260は、キーボード、マウス、音声認識デバイス、マイクロフォン、ヘッドセット、タッチ・スクリーン等、ユーザが情報をコンピューティング・デバイス200に入力することを可能にする1以上の従来型の機構を含み得る。出力デバイス270は、ディスプレイ、プリンタ、1以上のスピーカ、ヘッドセット、又は、メモリ若しくは磁気ディスク若しくは光ディスク及び対応するディスクドライブ等の媒体等、ユーザに情報を出力する1以上の従来型の機構を含み得る。ネットワーク・インタフェース280は、コンピューティング・デバイス200が他のデバイス又はネットワークと通信することを可能にするトランシーバのような機構を含み得る。ネットワーク・インタフェース280は、無線インタフェースであってもよいし、有線インタフェースであってもよいし、又は光インタフェースであってもよい。
コンピューティング・デバイス200は、例えば、メモリ230、磁気ディスク、又は光ディスクといったコンピュータ読み取り可能な媒体に含まれる一連の命令をプロセッサ220が実行することに応じて、そのような機能を実行することができる。そのような命令は、ストレージ・デバイス250等の別のコンピュータ読み取り可能な媒体からメモリ230に読み込まれてもよいし、又は、ネットワーク・インタフェース280を介して別個のデバイスからメモリ230に読み込まれてもよい。
図3は、マッチング・ファイル・メタデータ・セット・メッセージ300の一実施形態のブロック図を示している。マッチング・ファイル・メタデータ・セット・メッセージ300は、マッチング・ファイル・メタデータ・セット・メッセージ300が送信されている先であるクライアント・デバイス110を示すために、クライアント・デバイス・アドレス302を有することができる。マッチング・ファイル・メタデータ・セット・メッセージ300は、マッチング・ファイル・メタデータ・セット304をクライアント・デバイス110に送信することができる。マッチング・ファイル・メタデータ・セット304は、マッチング・ファイル134の特性を記述するものである。マッチング・ファイル・メタデータ・セット304は、マッチング・ファイル134を識別するファイル名306、マッチング・ファイル134の記憶位置を記述するファイル階層308、マッチング・ファイル134のサイズ310、マッチング・ファイル134のファイル・ハッシュ312、及び、マッチング・ファイル134が変更された最後の時間を識別するタイムスタンプ314を有することができる。ファイル・ハッシュ312は、ハッシュ関数をマッチング・ファイル134の中身に適用することにより生成される値である。マッチング・ファイル134のファイル・ハッシュ312をローカル・ファイル112のファイル・ハッシュ312と比較することにより、プロセッサは、マッチング・ファイル134がローカル・ファイル112と同一であるかどうかを判定することができる。
図4は、テレメトリ・レポート400の一実施形態のブロック図を示している。テレメトリ・レポート400は、テレメトリ・レポート400が送信されている先であるテレメトリ・サーバ150を示すために、テレメトリ・サーバ・アドレス402を有することができる。テレメトリ・レポート400は、テレメトリ・データ・セット404をテレメトリ・サーバ150に送信することができる。テレメトリ・データ・セット404は、同期中のクラウド同期システムのパフォーマンスを記述することができる。テレメトリ・データ・セット404は、任意の数のタイプのテレメトリ・データを含むことができる。
例えば、テレメトリ・データ・セット404は、クライアント・デバイス110を説明するユーザ識別子406を有することができる。テレメトリ・データ・セット404は、ファイル・タイプ及びファイル作成者等、ローカル・ファイル112又はマッチング・ファイル134を説明するデータ・ファイル記述408を有することができる。テレメトリ・データ・セット404は、バージョン番号又は開発者等、ローカル・ファイル112又はマッチング・ファイル134を読むために使用されているソフトウェアを説明するソフトウェア(SW)記述410を有することができる。
テレメトリ・データ・セット404は、同期検証により特定された同期エラーを説明する同期エラー・データ412を、その同期エラーのイベント時間414とともに有することができる。イベント時間414は、同期検証の時間ではなく、メタデータ・タイムスタンプ314により決定される同期エラーの時間を示すことができる。
アサーション失敗時に取られるアサーション・ログ・データ418とともに、テレメトリ・データ・セット404内のアサーション失敗データ416は、ローカル・ファイル112とマッチング・ファイル134との同期中に生じたアサーション失敗を記述することができる。アサーション失敗データ416は、デバッグ・アサーション、リテール・アサーション、シッピング・アサーション(shipping assertion)、又は他のアサーション等、任意の失敗したアサーションを、デバッグのためにテレメトリ・サーバ150にレポートすることができる。
同期ストール時に取られるストール・ログ・データ422とともに、テレメトリ・データ・セット404内の同期ストール・データ420は、ローカル・ファイル112とマッチング・ファイル134との同期中に生じた同期ストールを記述することができる。サービス・プロキシ114は、同期を進展させるために、自己的に失敗の原因を突き止めようと試みることができる。例えば、アップロードが、「失敗した条件(precondition failed)」から失敗に終わったが、その後の変更列挙(change enumeration)が、修正がないこと、及び進展がないことを示すエラーを返す場合、サービス・プロキシ114は、ストールを特定することができる。サービス・プロキシ114は、クラウド・サービスが、アップロードを許可するまで、又は、クラウド・サービスが、アップロードが失敗した理由を返すまで、さらなる進展がないことに基づいて、ストールを特定することができる。
テレメトリ・データ・セット404は、同期が成功したかどうかを含む、ローカル・ファイル112とマッチング・ファイル134との同期をトラッキングする同期パフォーマンス・メトリック424を記述することができる。同期パフォーマンス・メトリック424は、成功率又は失敗率、同期コール時間、帯域幅使用、クライアント・デバイス110上でのプロセッサ使用率、及び他のメトリック等、同期の実行を記述する。同期パフォーマンス・メトリック424は、テレメトリ・プロセスにより使用されるリソースを除外することができる。
図5は、テレメトリ・レコード500の一実施形態のブロック図を示している。テレメトリ・サーバ150は、テレメトリ・レコード500を記憶することができる。テレメトリ・サーバ150又は管理者は、新たな問題を特定するために、テレメトリ・レコード500をテレメトリ・レポート400と比較することができる。テレメトリ・レコード500は、クラウド・ユーザ・アカウント132に関連付けられたユーザを記述するユーザ層データ・セット502を有することができる。例えば、ユーザ層データ・セット502は、ユーザの場所、ユーザにより同期されたファイルのタイプ、並びに、ユーザ及びユーザのファイルに関する他のデータを記述することができる。テレメトリ・レコード500は、テレメトリ・レポート400を送信するクライアント・デバイス110を説明するデバイス・プロファイル504を有することができる。例えば、デバイス・プロファイル504は、クライアント・デバイス110のタイプ、処理、接続速度、メモリ、又はクライアント・デバイス110の他の特性を記述することができる。テレメトリ・レコード500は、ユーザ層データ・セット502及びデバイス・プロファイル504を、テレメトリ・データ・セット404に関連付けることができる。
図6は、レビュー・レポート600の一実施形態のブロック図を示している。レビュー・レポート600は、レビュー・レポート600が送信されている先のクライアント・デバイス110を示すために、クライアント・デバイス・アドレス602を有することができる。レビュー・レポート600は、レビュー・データ・セット604をクライアント・デバイス110に送信することができる。レビュー・データ・セット604は、テレメトリ・レポート400内で特定された同期エラーを修正するためのエラー・パッチ606を有することができる。
レビュー・データ・セット604は、サービスワイド・パフォーマンス・レコード608、集合的ユーザ・パフォーマンス・レコード610、又は個別的ユーザ・パフォーマンス・レコード612を有することができる。サービスワイド・パフォーマンス・レコード608は、アップ時間、成功率、及びクラウド同期システムのパフォーマンスを説明する他のメトリック等、クラウド同期システムの全体的なパフォーマンスをトラッキングすることができる。さらに、サービスワイド・パフォーマンス・レコード608は、マッチング・ファイル134を伴わないローカル・ファイル112、ローカル・ファイル112を伴わないマッチング・ファイル134、マッチング・ファイル134とは異なるファイル・サイズを有するローカル・ファイル112、マッチング・ファイル134とは異なるバージョンを有するローカル・ファイル112、マッチング・ファイル134とは異なるタイムスタンプを有するローカル・ファイル112、及び他のメトリック等、クラウド同期システムにより正しく同期されたファイルの数をトラッキングすることができる。集合的ユーザ・パフォーマンス・レコード610は、ユーザ・グループのパフォーマンス及び正確さを示すために、層及びパフォーマンス傾向に基づいてユーザのグループを収集することができる。個別的ユーザ・パフォーマンス・レコード612は、クライアント・デバイス110のユーザに関連付けられたデバイスのパフォーマンス及び正確さをトラッキングすることができる。あるいは、個別的ユーザ・パフォーマンス・レコード612は、クライアント・デバイス110に限定されてもよい。個別的ユーザ・パフォーマンス・レコード612は、ユーザがカスタマイズ可能なタイムライン614として表現することができる。ユーザは、タイムライン・フォーム内にどのメトリックを表示すべきかを選択することにより、ユーザがカスタマイズ可能なタイムライン614をカスタマイズすることができる。
図7は、クライアント・デバイス110を用いてローカル・ファイル112を同期する方法700の一実施形態のフローチャートを示している。サービス・プロキシ114は、ローカル・ファイル112をクライアント・デバイス110上に記憶することができる(ブロック702)。サービス・プロキシ114は、ローカル・ファイル112を、クラウド同期システムのクラウド・ユーザ・アカウント132内に記憶されたマッチング・ファイル134と同期することができる(ブロック704)。サービス・プロキシ114は、同期パフォーマンス・メトリック424をテレメトリ・レポート400に記録するために、ローカル・ファイル112とマッチング・ファイル134との同期をトラッキングすることができる(ブロック706)。サービス・プロキシ114は、クラウド・サーバ130又は関連ユーザ・デバイス140の少なくとも一方から、クラウド同期システムのクラウド・ユーザ・アカウント内に記憶されたマッチング・ファイル134のマッチング・ファイル・メタデータ・セット304を受信することができる(ブロック708)。サービス・プロキシ114は、同期検証のためにマッチング・ファイル・メタデータ・セット304と比較するためのローカル・ファイル・メタデータ・セットを作成することができる(ブロック710)。
サービス・プロキシ114は、同期パフォーマンス・メトリック424をテレメトリ・レポート400に記録することができる(ブロック712)。サービス・プロキシ114は、ローカル・ファイル112とマッチング・ファイル134との同期の終了時に、クライアント・デバイス110内に記憶されたローカル・ファイル112に対するマッチング・ファイル・メタデータ・セット304の同期検証を実行することができる(ブロック714)。同期検証により、同期エラーが生じたと判定された場合(ブロック716)、サービス・プロキシ114は、同期エラー・データ412及びイベント時間414を、テレメトリ・レポート400に記録することができる(ブロック718)。サービス・プロキシ114は、ローカル・ファイル112とマッチング・ファイルとの再同期を実行することができる(ブロック720)。サービス・プロキシ114が、ローカル・ファイル112とマッチング・ファイル134との同期中にアサーション失敗を受信した場合(ブロック722)、サービス・プロキシ114は、アサーション失敗416及びアサーション・ログ・データ・セット418を、テレメトリ・レポート400に記録することができる(ブロック724)。サービス・プロキシ114が、ローカル・ファイル112とマッチング・ファイル134との同期中に同期ストールを認識した場合(ブロック726)、サービス・プロキシ114は、同期ストール420及びストール・ログ・データ・セット422を、テレメトリ・レポート400に記録することができる(ブロック728)。サービス・プロキシ114は、同期検証により判定された同期パフォーマンス、同期エラー412及びイベント時間414、アサーション失敗416及びアサーション・ログ・データ・セット418、並びに、同期ストール420及びストール・ログ・データ・セット422を記述するために、テレメトリ・レポート400を作成することができる(ブロック730)。サービス・プロキシ114は、テレメトリ・レポート400をテレメトリ・サーバ150に送信することができる(ブロック732)。
図8は、同期検証を実行する方法800の一実施形態のフローチャートを示している。サービス・プロキシ114は、ファイル名306及びファイル階層308を用いて、マッチング・ファイル134と対応するローカル・ファイル112を特定することができる(ブロック802)。サービス・プロキシ114は、マッチング・ファイル・メタデータ・セット304をローカル・ファイル・メタデータ・セットと比較することができる(ブロック804)。マッチング・ファイル・メタデータ・セット304のサイズが、ローカル・ファイル・メタデータ・セットのサイズと異なる場合(ブロック806)、サービス・プロキシ114は、同期エラーを特定することができる(ブロック808)。マッチング・ファイル・メタデータ・セット304のファイル・ハッシュ312が、ローカル・ファイル・メタデータ・セットのファイル・ハッシュと異なる場合(ブロック810)、サービス・プロキシ114は、同期エラーを特定することができる(ブロック808)。サービス・プロキシ114は、マッチング・ファイル・メタデータ・セット304のタイムスタンプ314から、同期エラーのイベント時間を決定することができる(ブロック812)。
クライアント・デバイス110により実行されるテレメトリ機能の多くは、クラウド・サーバ130により実行されてもよい。図9は、クラウド・サーバを用いてマッチング・ファイルを同期する方法900の一実施形態のフローチャートを示している。クラウド・サーバ130は、クライアント・デバイス110に記憶されたローカル・ファイル112を、クラウド同期システムのクラウド・ユーザ・アカウント132内に記憶されたマッチング・ファイル134と同期することができる(ブロック902)。クラウド・サーバ130は、ローカル・ファイル112とマッチング・ファイル134との同期をトラッキングすることができる(ブロック904)。クラウド・サーバ130は、クラウド同期システムのクラウド・ユーザ・アカウント132内に記憶されたマッチング・ファイル134のマッチング・ファイル・メタデータ・セット304を受信することができる(ブロック906)。クラウド・サーバ130は、同期検証のためにマッチング・ファイル・メタデータ・セット304と比較するためのローカル・ファイル・メタデータ・セットを受信することができる(ブロック908)。
クラウド・サーバ130は、同期パフォーマンス・メトリック424をテレメトリ・レポート400に記録することができる(ブロック910)。クラウド・サーバ130は、クライアント・デバイス110内に記憶されたローカル・ファイル112に対するマッチング・ファイル・メタデータ・セット304の同期検証を実行することができる(ブロック912)。同期検証により、同期エラーが生じたと判定された場合(ブロック914)、クラウド・サーバ130は、同期エラー・データ412及びイベント時間414を、テレメトリ・レポート400に記録することができる(ブロック916)。クラウド・サーバ130は、ローカル・ファイル112とマッチング・ファイル134との再同期を実行することができる(ブロック918)。クラウド・サーバ130が、ローカル・ファイル112とマッチング・ファイル134との同期中にアサーション失敗を受信した場合(ブロック920)、クラウド・サーバ130は、アサーション失敗416及びアサーション・ログ・データ・セット418を、テレメトリ・レポート400に記録することができる(ブロック922)。クラウド・サーバ130が、ローカル・ファイル112とマッチング・ファイル134との同期中に同期ストールを認識した場合(ブロック924)、クラウド・サーバ130は、同期ストール420及びストール・ログ・データ・セット422を、テレメトリ・レポート400に記録することができる(ブロック926)。クラウド・サーバ130は、同期検証により判定された同期パフォーマンス、同期エラー412及びイベント時間414、アサーション失敗416及びアサーション・ログ・データ・セット418、並びに、同期ストール420及びストール・ログ・データ・セット422を記述するために、テレメトリ・レポート400を作成することができる(ブロック928)。クラウド・サーバ130は、テレメトリ・レポート400をテレメトリ・サーバ150に送信することができる(ブロック930)。
図10は、テレメトリ・サーバ150においてテレメトリ・レポートを処理する方法1000の一実施形態のフローチャートを示している。テレメトリ・サーバ150は、クライアント・デバイス110から、ユーザのクラウド・ユーザ・アカウント132に関連付けられたクラウド・サービスを記述する、クライアント・デバイス110にて蓄積されたテレメトリ・データ・セット404を有するテレメトリ・レポート400を受信することができる(ブロック1002)。テレメトリ・サーバ150は、テレメトリ・データ・セット404を、クラウド・ユーザ・アカウント132のユーザ層データ・セット502に関連付けることができる(ブロック1004)。テレメトリ・サーバ150は、テレメトリ・データ・セット404を、クライアント・デバイス110のデバイス・プロファイル504に関連付けることができる(ブロック1006)。
テレメトリ・サーバ150は、マッチング・エラーを見つけるために、テレメトリ・レポート400内の同期エラーを既知のエラー・データベース152と比較することができる(ブロック1008)。既知のエラー・データベース152が、マッチング・エラーを生成した場合(ブロック1010)、テレメトリ・サーバ150は、マッチング・エラーに基づいて、レビュー・レポート600のエラー・パッチ606を選択することができる(ブロック1012)。テレメトリ・サーバ150は、その後にエラー・パッチが作成された場合、更新されたレビュー・レポート600を送信することができる。テレメトリ・サーバ150は、レビュー・レポート600のサービスワイド・パフォーマンス・レコード608を収集することができる(ブロック1014)。テレメトリ・サーバ150は、レビュー・レポート600の集合的ユーザ・パフォーマンス・レコード610を収集することができる(ブロック1016)。テレメトリ・サーバ150は、レビュー・レポート600の個別的ユーザ・パフォーマンス・レコード612を収集することができる(ブロック1018)。テレメトリ・サーバ150は、個別的ユーザ・パフォーマンス・レコード612に基づいて、ユーザがカスタマイズ可能なタイムライン614を作成することができる(ブロック1020)。テレメトリ・サーバ150は、テレメトリ・データ・セット404に部分的に基づいて、レビュー・レポート600を作成することができる(ブロック1022)。レビュー・レポート600は、サービスワイド・パフォーマンス・レコード608、集合的ユーザ・パフォーマンス・レコード610、個別的ユーザ・パフォーマンス・レコード612、又はユーザがカスタマイズ可能なタイムライン614を有することができる。テレメトリ・サーバ150は、レビュー・レポート600をクライアント・デバイス110に送信することができる(ブロック1024)。
主題が、構造的特徴及び/又は方法論的動作に特有の言葉で説明されてきたが、添付の特許請求の範囲における主題は、上述した特定の特徴又は動作に必ずしも限定される必要がないことを理解すべきである。むしろ、上述した特定の特徴及び動作は、請求項を実施するための例示的な形態として開示されたものである。
本発明の範囲内にある実施形態はまた、記憶されたコンピュータ実行可能命令又はデータ構造を運ぶ又は有する非トランジトリなコンピュータ読み取り可能な記憶媒体を含み得る。そのような非トランジトリなコンピュータ読み取り可能な記憶媒体は、汎用コンピュータ又は専用コンピュータによりアクセスされ得る任意の利用可能な媒体とすることができる。限定ではなく、例として、そのような非トランジトリなコンピュータ読み取り可能な記憶媒体は、RAM、ROM、EEPROM、CD−ROM、若しくは他の光ディスク・ストレージ・デバイス、磁気ディスク・ストレージ・デバイス若しくは他の磁気ストレージ・デバイス、又は、コンピュータ実行可能命令若しくはデータ構造の形態の所望のプログラム・コード手段を運ぶあるいは記憶するために使用され得る任意の他の媒体を含み得る。上記の組合せもまた、非トランジトリなコンピュータ読み取り可能な記憶媒体の範囲内に含まれるべきでる。
実施形態はまた、タスクが通信ネットワークを介して(有線リンク、無線リンク、又はそれらの組合せにより)リンクされるローカル処理デバイス及びリモート処理デバイスにより実行される分散コンピューティング環境においても実行され得る。
コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、又は専用処理デバイスに所定の機能又は機能の一群を実行させる命令及びデータを含む。コンピュータ実行可能命令はまた、スタンドアロン環境又はネットワーク環境におけるコンピュータにより実行されるプログラム・モジュールも含む。一般に、プログラム・モジュールは、特定のタスクを実行するか、あるいは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、及びデータ構造等を含む。コンピュータ実行可能命令、関連するデータ構造、及びプログラム・モジュールは、本明細書で開示した方法のステップを実行するプログラム・コード手段の例を表す。特定の一連のそのような実行可能命令又は関連するデータ構造は、そのようなステップにおいて記載される機能を実装する対応する動作の例を表す。
上記の説明は、特定の詳細を含み得るが、そのような詳細は、請求項を限定するものとして解釈すべきではない。説明した実施形態の他の構成も、本開示の範囲の一部である。例えば、本開示の原理を各個別のユーザに適用することができ、各ユーザは、個別にそのようなシステムを展開することができる。多数の可能な用途のいずれか1つが本明細書で説明した機能を使用しない場合であっても、これにより、各ユーザは、本開示の利点を利用することが可能となる。電子デバイスの多くの例の各々が、様々な形で、本内容を処理することができる。実施例は、必ずしも、全てのエンドユーザにより使用される一システムに含まれる必要はない。したがって、提供された特定の例ではなく、添付の請求項及びその正当な均等な構成だけが、本発明を定めるべきである。

Claims (10)

  1. マシンにより実施される方法であって、
    クラウド同期システムのクラウド・ユーザ・アカウント内に記憶されたマッチング・ファイルのマッチング・ファイル・メタデータ・セットを受信するステップと、
    クライアント・デバイス内に記憶されたローカル・ファイルに対する前記マッチング・ファイル・メタデータ・セットの同期検証を実行するステップと、
    前記同期検証により判定された同期エラーを記述するテレメトリ・レポートを作成するステップと、
    を含む、方法。
  2. 前記テレメトリ・レポートをテレメトリ・サーバに送信するステップ
    をさらに含む、請求項1記載の方法。
  3. 前記マッチング・ファイル・メタデータ・セットから、前記同期エラーのイベント時間を決定するステップ
    をさらに含む、請求項1記載の方法。
  4. 前記同期検証のために前記マッチング・ファイル・メタデータ・セットと比較するためのローカル・ファイル・メタデータ・セットを作成するステップ
    をさらに含む、請求項1記載の方法。
  5. 前記ローカル・ファイルと前記マッチング・ファイルとの再同期を実行するステップ
    をさらに含む、請求項1記載の方法。
  6. 前記テレメトリ・レポートのための、前記ローカル・ファイルと前記マッチング・ファイルとの同期中のアサーション失敗を受信するステップ
    をさらに含む、請求項1記載の方法。
  7. 同期パフォーマンス・メトリックを前記テレメトリ・レポートに記録するために、前記ローカル・ファイルと前記マッチング・ファイルとの同期をトラッキングするステップ
    をさらに含む、請求項1記載の方法。
  8. 方法を詳述した命令のセットを記憶した有体のマシン読み取り可能な媒体であって、前記命令のセットが1以上のプロセッサにより実行されるときに、前記命令のセットは前記1以上のプロセッサに前記方法を実行させ、前記方法は、
    クライアント・デバイスから、クラウド・サービスを記述する、前記クライアント・デバイスにて蓄積されたテレメトリ・データ・セットを有するテレメトリ・レポートを受信するステップと、
    前記テレメトリ・データ・セットに部分的に基づいて、レビュー・レポートを作成するステップと、
    前記レビュー・レポートを前記クライアント・デバイスに送信するステップと、
    を含む、有体のマシン読み取り可能な媒体
  9. クラウド同期システムのクラウド・ユーザ・アカウント内のマッチング・ファイルと同期されたローカル・ファイルを記憶するデータ・ストレージと、
    クラウド・サーバから、前記マッチング・ファイルのマッチング・ファイル・メタデータ・セットを受信するネットワーク・インタフェースと、
    前記ローカル・ファイルに対する前記マッチング・ファイル・メタデータ・セットの同期検証を実行し、前記同期検証により判定された同期エラーを記述するテレメトリ・レポートを作成するプロセッサと、
    を備えた、クライアント・デバイス。
  10. 前記テレメトリ・レポートは、アサーション失敗データ、同期ストール・データ、及び同期パフォーマンス・メトリックのうち少なくとも1つを有する、請求項9記載のクライアント・デバイス。
JP2015504693A 2012-04-05 2013-04-03 クラウド同期システムのためのテレメトリ・システム Active JP6385336B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/439,859 2012-04-05
US13/439,859 US10089323B2 (en) 2012-04-05 2012-04-05 Telemetry system for a cloud synchronization system
PCT/US2013/035049 WO2013152058A2 (en) 2012-04-05 2013-04-03 Telemetry system for a cloud synchronization system

Publications (3)

Publication Number Publication Date
JP2015520435A true JP2015520435A (ja) 2015-07-16
JP2015520435A5 JP2015520435A5 (ja) 2016-04-28
JP6385336B2 JP6385336B2 (ja) 2018-09-05

Family

ID=48142965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015504693A Active JP6385336B2 (ja) 2012-04-05 2013-04-03 クラウド同期システムのためのテレメトリ・システム

Country Status (10)

Country Link
US (2) US10089323B2 (ja)
EP (1) EP2834759B1 (ja)
JP (1) JP6385336B2 (ja)
KR (1) KR102051692B1 (ja)
CN (1) CN104246767B (ja)
AU (1) AU2013243512B2 (ja)
CA (1) CA2866449C (ja)
MX (1) MX352126B (ja)
RU (1) RU2648608C2 (ja)
WO (1) WO2013152058A2 (ja)

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8326814B2 (en) 2007-12-05 2012-12-04 Box, Inc. Web-based file management system and service
US10554426B2 (en) 2011-01-20 2020-02-04 Box, Inc. Real time notification of activities that occur in a web-based collaboration environment
US9015601B2 (en) 2011-06-21 2015-04-21 Box, Inc. Batch uploading of content to a web-based collaboration environment
US9063912B2 (en) 2011-06-22 2015-06-23 Box, Inc. Multimedia content preview rendering in a cloud content management system
WO2013009337A2 (en) 2011-07-08 2013-01-17 Arnold Goldberg Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
GB2503625A (en) 2011-07-08 2014-01-01 Box Inc Collaboration sessions in a workspace on cloud-based content management system
US9197718B2 (en) 2011-09-23 2015-11-24 Box, Inc. Central management and control of user-contributed content in a web-based collaboration environment and management console thereof
US8515902B2 (en) 2011-10-14 2013-08-20 Box, Inc. Automatic and semi-automatic tagging features of work items in a shared workspace for metadata tracking in a cloud-based content management system with selective or optional user contribution
US9098474B2 (en) 2011-10-26 2015-08-04 Box, Inc. Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience
WO2013062599A1 (en) 2011-10-26 2013-05-02 Box, Inc. Enhanced multimedia content preview rendering in a cloud content management system
US8990307B2 (en) 2011-11-16 2015-03-24 Box, Inc. Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform
GB2500152A (en) 2011-11-29 2013-09-11 Box Inc Mobile platform file and folder selection functionalities for offline access and synchronization
US9019123B2 (en) 2011-12-22 2015-04-28 Box, Inc. Health check services for web-based collaboration environments
US9904435B2 (en) 2012-01-06 2018-02-27 Box, Inc. System and method for actionable event generation for task delegation and management via a discussion forum in a web-based collaboration environment
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US9965745B2 (en) 2012-02-24 2018-05-08 Box, Inc. System and method for promoting enterprise adoption of a web-based collaboration environment
US9195636B2 (en) 2012-03-07 2015-11-24 Box, Inc. Universal file type preview for mobile devices
US9054919B2 (en) 2012-04-05 2015-06-09 Box, Inc. Device pinning capability for enterprise cloud service and storage accounts
US9307006B2 (en) * 2012-04-11 2016-04-05 Salesforce.Com, Inc. System and method for synchronizing data objects in a cloud based social networking environment
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
WO2013166520A1 (en) 2012-05-04 2013-11-07 Box, Inc. Repository redundancy implementation of a system which incrementally updates clients with events that occurred via cloud-enabled platform
US9691051B2 (en) 2012-05-21 2017-06-27 Box, Inc. Security enhancement through application access control
US9027108B2 (en) 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US8914900B2 (en) 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US9058471B2 (en) 2012-06-08 2015-06-16 Oracle International Corporation Authorization system for heterogeneous enterprise environments
US9021099B2 (en) 2012-07-03 2015-04-28 Box, Inc. Load balancing secure FTP connections among multiple FTP servers
US9792320B2 (en) 2012-07-06 2017-10-17 Box, Inc. System and method for performing shard migration to support functions of a cloud-based service
GB2505072A (en) 2012-07-06 2014-02-19 Box Inc Identifying users and collaborators as search results in a cloud-based system
US9712510B2 (en) 2012-07-06 2017-07-18 Box, Inc. Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform
US9473532B2 (en) 2012-07-19 2016-10-18 Box, Inc. Data loss prevention (DLP) methods by a cloud service including third party integration architectures
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
US8868574B2 (en) 2012-07-30 2014-10-21 Box, Inc. System and method for advanced search and filtering mechanisms for enterprise administrators in a cloud-based environment
US9369520B2 (en) 2012-08-19 2016-06-14 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US8745267B2 (en) 2012-08-19 2014-06-03 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US9558202B2 (en) 2012-08-27 2017-01-31 Box, Inc. Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9135462B2 (en) 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
US9117087B2 (en) 2012-09-06 2015-08-25 Box, Inc. System and method for creating a secure channel for inter-application communication based on intents
US9311071B2 (en) 2012-09-06 2016-04-12 Box, Inc. Force upgrade of a mobile application via a server side configuration file
US9195519B2 (en) 2012-09-06 2015-11-24 Box, Inc. Disabling the self-referential appearance of a mobile application in an intent via a background registration
US9203866B2 (en) * 2012-09-07 2015-12-01 Oracle International Corporation Overage framework for cloud services
US9069979B2 (en) 2012-09-07 2015-06-30 Oracle International Corporation LDAP-based multi-tenant in-cloud identity management system
US9467355B2 (en) 2012-09-07 2016-10-11 Oracle International Corporation Service association model
US9838370B2 (en) 2012-09-07 2017-12-05 Oracle International Corporation Business attribute driven sizing algorithms
US10521746B2 (en) 2012-09-07 2019-12-31 Oracle International Corporation Recovery workflow for processing subscription orders in a computing infrastructure system
US9667470B2 (en) 2012-09-07 2017-05-30 Oracle International Corporation Failure handling in the execution flow of provisioning operations in a cloud environment
US9542400B2 (en) 2012-09-07 2017-01-10 Oracle International Corporation Service archive support
US9621435B2 (en) 2012-09-07 2017-04-11 Oracle International Corporation Declarative and extensible model for provisioning of cloud based services
US9253113B2 (en) 2012-09-07 2016-02-02 Oracle International Corporation Customizable model for throttling and prioritizing orders in a cloud environment
US10148530B2 (en) 2012-09-07 2018-12-04 Oracle International Corporation Rule based subscription cloning
US9292833B2 (en) 2012-09-14 2016-03-22 Box, Inc. Batching notifications of activities that occur in a web-based collaboration environment
US10200256B2 (en) 2012-09-17 2019-02-05 Box, Inc. System and method of a manipulative handle in an interactive mobile user interface
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US10915492B2 (en) 2012-09-19 2021-02-09 Box, Inc. Cloud-based platform enabled with media content indexed for text-based searches and/or metadata extraction
US9959420B2 (en) 2012-10-02 2018-05-01 Box, Inc. System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment
US9705967B2 (en) 2012-10-04 2017-07-11 Box, Inc. Corporate user discovery and identification of recommended collaborators in a cloud platform
US9495364B2 (en) 2012-10-04 2016-11-15 Box, Inc. Enhanced quick search features, low-barrier commenting/interactive features in a collaboration platform
US9665349B2 (en) 2012-10-05 2017-05-30 Box, Inc. System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform
GB2507191B (en) 2012-10-17 2015-03-04 Box Inc Remote key management in a cloud-based environment
US9756022B2 (en) 2014-08-29 2017-09-05 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9396245B2 (en) 2013-01-02 2016-07-19 Box, Inc. Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
EP2755151A3 (en) * 2013-01-11 2014-09-24 Box, Inc. Functionalities, features and user interface of a synchronization client to a cloud-based environment
EP2757491A1 (en) 2013-01-17 2014-07-23 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
US9608958B2 (en) 2013-03-12 2017-03-28 Oracle International Corporation Lightweight directory access protocol (LDAP) join search mechanism
US9652460B1 (en) * 2013-05-10 2017-05-16 FotoIN Mobile Corporation Mobile media information capture and management methods and systems
US10846074B2 (en) 2013-05-10 2020-11-24 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
GB2515192B (en) 2013-06-13 2016-12-14 Box Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US10229134B2 (en) 2013-06-25 2019-03-12 Box, Inc. Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform
US10110656B2 (en) 2013-06-25 2018-10-23 Box, Inc. Systems and methods for providing shell communication in a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
GB2518298A (en) 2013-09-13 2015-03-18 Box Inc High-availability architecture for a cloud-based concurrent-access collaboration platform
US10509527B2 (en) 2013-09-13 2019-12-17 Box, Inc. Systems and methods for configuring event-based automation in cloud-based collaboration platforms
US9535909B2 (en) 2013-09-13 2017-01-03 Box, Inc. Configurable event-based automation architecture for cloud-based collaboration platforms
US9213684B2 (en) 2013-09-13 2015-12-15 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US8892679B1 (en) 2013-09-13 2014-11-18 Box, Inc. Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform
US9704137B2 (en) 2013-09-13 2017-07-11 Box, Inc. Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform
US10866931B2 (en) 2013-10-22 2020-12-15 Box, Inc. Desktop application for accessing a cloud collaboration platform
US9405904B1 (en) * 2013-12-23 2016-08-02 Symantec Corporation Systems and methods for providing security for synchronized files
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
US9602514B2 (en) 2014-06-16 2017-03-21 Box, Inc. Enterprise mobility management and verification of a managed application by a content provider
US10164901B2 (en) 2014-08-22 2018-12-25 Oracle International Corporation Intelligent data center selection
US10574442B2 (en) 2014-08-29 2020-02-25 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US9894119B2 (en) 2014-08-29 2018-02-13 Box, Inc. Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms
US10038731B2 (en) 2014-08-29 2018-07-31 Box, Inc. Managing flow-based interactions with cloud-based shared content
US9893952B2 (en) * 2015-01-09 2018-02-13 Microsoft Technology Licensing, Llc Dynamic telemetry message profiling and adjustment
US9639715B2 (en) 2015-04-27 2017-05-02 Microsoft Technology Licensing, Llc Protecting user identifiable information in the transfer of telemetry data
US10242024B1 (en) 2015-06-18 2019-03-26 EMC IP Holding Company LLC Dynamic reprioritization of content download during synchronization
US10721298B1 (en) 2015-06-18 2020-07-21 EMC IP Holding Company LLC Learning client preferences to optimize event-based synchronization
US10235331B1 (en) 2015-06-18 2019-03-19 EMC IP Holding Company LLC Event-based synchronization in a file sharing environment
US10992748B1 (en) * 2015-06-18 2021-04-27 EMC IP Holding Company LLC Verification of event-based synchronization
US10282255B2 (en) * 2015-07-15 2019-05-07 Microsoft Technology Licensing, Llc Coordinating file synchronization between a sync engine and another application that supports document collaboration
US10762054B2 (en) 2016-07-22 2020-09-01 Microsoft Technology Licensing, Llc Cloud content states determination logic
US10025671B2 (en) * 2016-08-08 2018-07-17 International Business Machines Corporation Smart virtual machine snapshotting
US10263835B2 (en) * 2016-08-12 2019-04-16 Microsoft Technology Licensing, Llc Localizing network faults through differential analysis of TCP telemetry
US20180335902A1 (en) * 2017-05-16 2018-11-22 Apple Inc. Techniques for dynamically displaying relevant files for selection
US10795812B1 (en) * 2017-06-30 2020-10-06 EMC IP Holding Company LLC Virtual copy forward method and system for garbage collection in cloud computing networks
US10970193B2 (en) 2018-05-23 2021-04-06 Dropbox, Inc. Debugging a client synchronization service
US10747643B2 (en) 2018-05-23 2020-08-18 Dropbox, Inc. System for debugging a client synchronization service
CN109032536B (zh) * 2018-08-31 2021-08-10 郑州云海信息技术有限公司 基于分布式集群系统的数据存储方法、装置、系统及设备
CN110995734B (zh) * 2019-12-12 2020-12-15 深圳大学 基于纠错码的云存储审计方法、系统及计算机设备
WO2021243344A1 (en) * 2020-05-26 2021-12-02 Hewlett-Packard Development Company, L.P. Repair instructions
US11880347B2 (en) * 2020-11-23 2024-01-23 Microsoft Technology Licensing, Llc. Tuning large data infrastructures
US11782764B2 (en) 2021-07-07 2023-10-10 International Business Machines Corporation Differentiated workload telemetry
US11928131B2 (en) 2021-09-27 2024-03-12 International Business Machines Corporation Synchronized activation of datasets in multicloud computing environment

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032254A (ja) * 2000-07-19 2002-01-31 Mitsubishi Electric Corp 情報整合性管理システム
JP2004171278A (ja) * 2002-11-20 2004-06-17 Nippon Telegr & Teleph Corp <Ntt> データの複製管理方法、ノードにおける情報処理方法、ノード、データの複製管理プログラム、および該プログラムを記載した記録媒体
JP2005537579A (ja) * 2002-09-03 2005-12-08 ノキア コーポレイション 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
EP1681652A2 (en) * 2005-01-14 2006-07-19 Microsoft Corporation Method nad system for synchronizing multiple user revisions to a shared object
JP2007520760A (ja) * 2003-08-01 2007-07-26 ニトゲン・テクノロジーズ・インコーポレーテッド ネットワーク環境でのコンテンツ同期化システム及び同期化方法
US20070283050A1 (en) * 2006-06-05 2007-12-06 Seagate Technology, Llc Scheduling reporting of synchronization states
JP2009510624A (ja) * 2005-09-27 2009-03-12 オナロ インコーポレイテッド 複製データの可用性及び最新性を検証するための方法及びシステム。
JP2010049647A (ja) * 2008-08-25 2010-03-04 Nec Corp クライアントサーバシステム、クライアントコンピュータ、サーバ、ファイル管理方法及びそのプログラム
JP2011511362A (ja) * 2008-01-31 2011-04-07 マイクロソフト コーポレーション マルチマスター同期環境のための知識ベース・フレームワークにおけるオブジェクトの起動および終了
JP2011118771A (ja) * 2009-12-04 2011-06-16 Sony Corp 情報処理装置、情報処理方法、データ管理サーバおよびデータ同期システム
EP2429134A1 (en) * 2009-06-09 2012-03-14 ZTE Corporation Method and apparatus for checking and synchronizing data block in distributed file system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401104B1 (en) 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
US7917628B2 (en) * 1999-12-02 2011-03-29 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
US7134116B1 (en) * 2001-04-30 2006-11-07 Mips Technologies, Inc. External trace synchronization via periodic sampling
US7216338B2 (en) * 2002-02-20 2007-05-08 Microsoft Corporation Conformance execution of non-deterministic specifications for components
US7735065B2 (en) 2003-11-14 2010-06-08 Kalpit Jain Aggregation and prioritization of application issue data
US7283986B2 (en) 2004-04-08 2007-10-16 International Business Machines Corporation End-to-end business integration testing tool
TWI252413B (en) * 2004-12-10 2006-04-01 Hon Hai Prec Ind Co Ltd System and method for updating remote computer files
US20060230349A1 (en) 2005-04-06 2006-10-12 Microsoft Corporation Coalesced per-file device synchronization status
CN100462995C (zh) 2005-12-10 2009-02-18 腾讯科技(深圳)有限公司 一种图像文件的验证及使用方法
CN101005428A (zh) 2006-01-19 2007-07-25 华为技术有限公司 一种检测与解决数据同步冲突的实现方法
CN101009516B (zh) 2006-01-26 2011-05-04 华为技术有限公司 一种进行数据同步的方法、系统及装置
US7840540B2 (en) 2006-04-20 2010-11-23 Datascout, Inc. Surrogate hashing
US7933296B2 (en) 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US20080254777A1 (en) 2007-04-10 2008-10-16 S5 Wireless, Inc. Systems and methods for facilitating automatic generation of metadata about data that is collected by a mobile device
US8825758B2 (en) * 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US9135321B2 (en) 2008-02-06 2015-09-15 Microsoft Technology Licensing, Llc Synchronization infrastructure for networked devices, applications and services in a loosely coupled multi-master synchronization environment
US20090300169A1 (en) 2008-06-03 2009-12-03 Microsoft Corporation Synchronization throttling based on user activity
US9208315B2 (en) 2009-03-17 2015-12-08 Microsoft Corporation Identification of telemetry data
US9419801B2 (en) * 2009-05-12 2016-08-16 Infrascale Inc. System and method for transmitting needed portions of a data file between networked computers
US8503984B2 (en) 2009-12-23 2013-08-06 Amos Winbush, III Mobile communication device user content synchronization with central web-based records and information sharing system
US8904352B2 (en) * 2010-06-23 2014-12-02 Sap Se Systems and methods for processing source code during debugging operations
US20120066759A1 (en) * 2010-09-10 2012-03-15 Cisco Technology, Inc. System and method for providing endpoint management for security threats in a network environment
US8707035B2 (en) * 2012-03-30 2014-04-22 Decho Corporation High privacy of file synchronization with sharing functionality

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032254A (ja) * 2000-07-19 2002-01-31 Mitsubishi Electric Corp 情報整合性管理システム
JP2005537579A (ja) * 2002-09-03 2005-12-08 ノキア コーポレイション 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
JP2004171278A (ja) * 2002-11-20 2004-06-17 Nippon Telegr & Teleph Corp <Ntt> データの複製管理方法、ノードにおける情報処理方法、ノード、データの複製管理プログラム、および該プログラムを記載した記録媒体
JP2007520760A (ja) * 2003-08-01 2007-07-26 ニトゲン・テクノロジーズ・インコーポレーテッド ネットワーク環境でのコンテンツ同期化システム及び同期化方法
EP1681652A2 (en) * 2005-01-14 2006-07-19 Microsoft Corporation Method nad system for synchronizing multiple user revisions to a shared object
JP2009510624A (ja) * 2005-09-27 2009-03-12 オナロ インコーポレイテッド 複製データの可用性及び最新性を検証するための方法及びシステム。
US20070283050A1 (en) * 2006-06-05 2007-12-06 Seagate Technology, Llc Scheduling reporting of synchronization states
JP2011511362A (ja) * 2008-01-31 2011-04-07 マイクロソフト コーポレーション マルチマスター同期環境のための知識ベース・フレームワークにおけるオブジェクトの起動および終了
JP2010049647A (ja) * 2008-08-25 2010-03-04 Nec Corp クライアントサーバシステム、クライアントコンピュータ、サーバ、ファイル管理方法及びそのプログラム
EP2429134A1 (en) * 2009-06-09 2012-03-14 ZTE Corporation Method and apparatus for checking and synchronizing data block in distributed file system
JP2011118771A (ja) * 2009-12-04 2011-06-16 Sony Corp 情報処理装置、情報処理方法、データ管理サーバおよびデータ同期システム

Also Published As

Publication number Publication date
AU2013243512B2 (en) 2017-11-02
CA2866449C (en) 2021-01-05
MX2014011988A (es) 2014-11-10
EP2834759A2 (en) 2015-02-11
MX352126B (es) 2017-11-09
CN104246767A (zh) 2014-12-24
US20130268491A1 (en) 2013-10-10
KR20150096312A (ko) 2015-08-24
KR102051692B1 (ko) 2019-12-03
WO2013152058A3 (en) 2014-06-05
US11086825B2 (en) 2021-08-10
RU2648608C2 (ru) 2018-03-26
CA2866449A1 (en) 2013-10-10
RU2014140203A (ru) 2016-04-20
JP6385336B2 (ja) 2018-09-05
AU2013243512A1 (en) 2014-09-25
WO2013152058A2 (en) 2013-10-10
US10089323B2 (en) 2018-10-02
CN104246767B (zh) 2018-08-14
EP2834759B1 (en) 2020-11-25
US20180365264A1 (en) 2018-12-20

Similar Documents

Publication Publication Date Title
JP6385336B2 (ja) クラウド同期システムのためのテレメトリ・システム
EP3387528B1 (en) Updating dependent services
WO2017124938A1 (zh) 一种数据同步方法、装置及系统
US10503905B1 (en) Data lineage management
US10180945B2 (en) Data replication from a cloud-based storage resource
US20150213100A1 (en) Data synchronization method and system
US9720753B2 (en) CloudSeer: using logs to detect errors in the cloud infrastructure
US10069942B2 (en) Method and apparatus for changing configurations
US9934229B2 (en) Telemetry file hash and conflict detection
US8683263B2 (en) Cooperative client and server logging
US9146841B2 (en) Proxy server assisted product testing
US10944549B2 (en) Blockchain-type data storage
AU2023241318B1 (en) Watermark-based techniques for change-data-capture
US8719622B2 (en) Recording and preventing crash in an appliance
EP3349416A1 (en) Relationship chain processing method and system, and storage medium
CN109389271B (zh) 应用性能管理方法及系统
US20150088958A1 (en) Information Processing System and Distributed Processing Method
CN107844491B (zh) 一种在分布式系统中实现强一致性读操作的方法与设备
US10289691B2 (en) Dynamic replication of networked files
US9559902B2 (en) Distributed state model for system configuration synchronization
BR112014023106B1 (pt) Método implementado por máquina, meio tangível legível por máquina e dispositivo cliente
CN117112690A (zh) 分布式集群的数据同步方法及其相关设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160309

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170612

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20171102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171121

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180807

R150 Certificate of patent or registration of utility model

Ref document number: 6385336

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250