JP2017201546A - 予測ストレージサービス - Google Patents

予測ストレージサービス Download PDF

Info

Publication number
JP2017201546A
JP2017201546A JP2017120081A JP2017120081A JP2017201546A JP 2017201546 A JP2017201546 A JP 2017201546A JP 2017120081 A JP2017120081 A JP 2017120081A JP 2017120081 A JP2017120081 A JP 2017120081A JP 2017201546 A JP2017201546 A JP 2017201546A
Authority
JP
Japan
Prior art keywords
file
data
computer
storage service
files
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
JP2017120081A
Other languages
English (en)
Other versions
JP6482602B2 (ja
Inventor
アンソニー アイズナー ノア
Anthony Eisner Noah
アンソニー アイズナー ノア
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.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
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 Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of JP2017201546A publication Critical patent/JP2017201546A/ja
Application granted granted Critical
Publication of JP6482602B2 publication Critical patent/JP6482602B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】別の場所で使用するために利用可能なファイルを作成するファイル構造からファイルを選択的にストレージサービスに送信する。【解決手段】予測ストレージアプリケーションは、ファイルを別のコンピューティングシステムで使用可能にする予測ストレージサービスに送るべきコンピューティングシステムからのファイルを選択的に決定する。予測ストレージアプリケーションは、ファイルの使用を示すイベントを受信することができる。予測ストレージアプリケーションは、ファイルが十分な重要度を有していると判断し、それを予測ストレージサービスに送ることができる。【選択図】図3

Description

文書は、ワークフローの重要な一部となっており、これらは、追跡、報告、教育や支払い機能など様々な機能を果たす。例えば、子供と教師が配布資料やレポートに取り組んでいる。別の例では、整備士が修理中に部品、労働及び完了を追跡する。これらの文書を使用すると、ワークフローの状態が文書に反映され得るため、ワークフローが継続することを可能にする。
文書やコンテンツが構築されると、人々はますます検討し、様々なデバイス上にコンテンツを編集する。例えば、自身のスマートフォン上のスプレッドシートを検討することができるように、主要なビジネス指標を伴う最新のスプレッドシートを幹部は自分自身へ電子メールする。別の例では、弁護士の秘書はUSBドライブ上にファイルを置き、旅行中にノートパソコンで確認できるよう、弁護士に与える。更に別の例では、アーティストはリモートサーバへ変更を同期させる予め確認されたフォルダに資産や取り組み中の作業を保存する。
本発明による様々な実施形態が図面を参照して説明されるが、図において、
少なくとも1つの実施形態による予測ストレージサービスの説明に役立つ実例を示す図である。 少なくとも1つの実施形態によるファイル構造を使用して予測ストレージサービスの説明に役立つ実例を示す図である。 少なくとも一実施形態による予測ストレージサービスにファイルを同期させるために使用することができるプロセスの説明に役立つ実例を示す図である。 少なくとも一実施形態による予測ストレージサービスで選択するファイルを決定するために使用されるプロセスの説明に役立つ実例を示す図である。 少なくとも一実施形態による予測ストレージサービスで選択するファイルを決定するために使用されるプロセスの説明に役立つ実例を示す図である。 少なくとも一実施形態による予測ストレージサービスでファイルを同期させるために使用することができるプロセスの説明に役立つ実例を示す図である。 少なくとも一実施形態による予測ストレージサービスにファイルを格納するために使用され得るプロセスの説明に役立つ実例を示す図である。 少なくとも一実施形態によるデータセンタ組織の説明に役立つ実例を示す図である。 種々の実施形態が実装される環境を説明する。
以下の記述では、様々な実施形態を説明する。説明の目的のために、特定の構成及び詳細が実施形態の完全な理解を提供するために記載されている。しかし、実施形態は特定の詳細なしに実施できることも当業者には明らかであろう。また、記述されている実施形態を不明瞭にしないために、周知の特徴は省略または簡略化してもよい。
ここに記載され推奨される技術は、別の場所で使用するために利用可能なファイルを作成するファイル構造からストレージサービスに送信するファイルを選択的に決定することを含んでいる。例えば、ユーザは、デスクトップコンピュータやモバイルデバイスなどのコンピューティングシステムをアカウントに登録してもよい。ユーザは、デスクトップコンピュータ及び/またはモバイルデバイスに、これらの登録されたコンピューティングシステム上でアクティビティを監視する予測ストレージアプリケーションをインストールさせることができる。
説明に役立つ実施例として、予測ストレージアプリケーションは、ユーザがラップトップコンピュータ上でダウンロードし、PDFファイルを開いたことを判断することができる。PDFファイルがラップトップコンピュータ上で開いている間は、予測ストレージアプリケーションは、ユーザがワードプロセッシング文書も開いたという通知を受け取ることができる。そして、予測ストレージアプリケーションは、ウィンドウフォーカスがラップトップコンピュータ上でPDFとワードプロセッシング文書との間で複数回シフトするイベントを受け取る場合がある。ワードプロセッシング文書のためのイベントを保存すると、ユーザがファイルと対話し、PDFとワードプロセッシング文書が予測ストレージサービスに送信されるようになるという事実に少なくとも部分的に基づいて十分な重要性をPDFとワードプロセッシング文書が持っていることを予測ストレージアプリケーションが決定してもよい。一度予測ストレージサービスに入ると、PDFやワードプロセッシング文書は存続し、或いは登録携帯電話に送信することができる。ラップトップコンピュータ上でのPDFまたはワードプロセッシング文書のいずれかに行った任意の更なる変更も、予測ストレージアプリケーション及び/または携帯電話に同期させることができる。ユーザがラップトップコンピュータをシャットダウンすると、ユーザは携帯電話上でPDFを検討し、ワードプロセッシング文書の編集を続けることができる。
予測ストレージアプリケーションは、コンピューティングシステムのファイル構造を監視することができる。一実施形態では、サービスとして提供する仮想デスクトップには、ファイルシステムを監視する予測ストレージアプリケーションが含まれている。ファイルシステムは、ボリューム、オブジェクト記憶装置または他のデータコンテナに基づいてもよい。監視情報は、イベント、通知、ポーリングまたは他のプッシュ或いはプルベースの情報またはそれらの組合せを介して決定することができる。監視情報は、アプリケーション、オペレーティングシステム、ハイパーバイザー、プラグイン及び/またはそれらの組合せの監視情報の他のソースから受信することができる。例えば、アプリケーションは、一連のファイルタイプからのファイルが開かれ、閉じられ、作成され、修正され、及び/または破壊されたときに、通知を受信することをオペレーションシステムに登録することができる。別の実施例では、アプリケーションは、プラグインをワードプロセッサに含ませることができ、ファイルが開かれ、閉じられ、保存され、自動保存され及び/または保存オファーが拒否されると、アプリケーションに通知する。更に別の実施例では、アプリケーションは、ファイル構造に格納されている修正された、開いた、作成または他の日付及び情報に対する最近の変更のために、ボリューム内のファイル構造を定期的にスキャンすることができる。スキャンの間、他のファイルのメタデータは、著者、タイトル、主題、タグ、カテゴリ、最後に保存したユーザ名、リビジョン番号、バージョン番号、アプリケーション名、作成日、最後に保存した日付、最後に印刷した日付、最後にアクセスした日付、持ち込まれた日付、取得した日付、著作権、寸法、幅、高さ、解像度、圧縮、カメラ、ISO速度、シリアル番号、ファイル構造パス、ページ、単語、文字、線、段落及び/またはサイズのようなものを収集することが可能である。
予測ストレージアプリケーションは、定量化されたデータの推論アルゴリズムに少なくとも部分的に基づいて、どのファイルをアップロードするかを決定することができる。アルゴリズムは、ファイルをアップロードすることの重要性を決定するために、経験則のような重要度の指標を使用することが可能である。どのファイルをアップロードするのが重要であるかを決定することによって、アップロード帯域幅及びストレージリソースをより効率的に使用することができるようになる。例えば、ファイル構造の全体(またはその一部)をアップロードする代わりに、特定されたファイルだけがアップロードされる。この選択的なアップロードは、ユーザがフォルダ内のすべてのものを強制的に保存する代わりに、予測ストレージアプリケーションを、測定された重要性を持つファイルの同期に集中させることが可能となる。また、この選択的なアップロードは、当座のまたは管理のファイルとして有用ではないかもしれないドキュメントのアップロードを避けることができる。ファイル構造内のファイルの構造及び/またはファイルについて収集された情報を使用して、予測ストレージアプリケーションは、重要度の指標に基づいて、ストレージサービスにどのファイルをアップロードするかを決定することができる。例えば、重要度の指標は、ユーザが時間をかけてファイルと相互作用した回数であってもよい。アルゴリズムは、重要度の指標に応じてファイルを評価するために使用することができる。アプリケーションは、ファイルの上位Xパーセント(ここでXは構成可能な変数である)をサービスにアップロードするように構成することができる。別の構成では、アルゴリズムは、その全体的な評価を調整するために、ファイルをランク付けし、各ファイルの格付けを重み付けすることができる。ファイルの重要度の格付けを計算する重要度の指標を決定するために、監視プログラムは、例えば、ドキュメントタイプ、ファイルオープニングリーセンシー、ファイルが開いていた時間の長さ、それが開かれたときから閉じられたときまでのファイル全体のサイズの変化、キーワードや著者情報を使用することができる。マシンログインとマッチングする著者によって最近開かれた、ワードプロセッシングタイプを有するファイルは、より高い重要度格付けを受けることができる。アップロードスケジュールも、決定した重要度によって優先順位付けすることができる。別の実施例では、決定された重要度は、コンピューティングシステムにインストールされたアプリケーションに少なくとも部分的に基づいてもよい。一実施形態では、ファイルは、もしアイコンがファイルのファイルタイプに関連付けられている場合、インストールされたアプリケーションとの関係を有するように決定されてもよい。例えば、「txt」ファイル拡張子は、すべての「txt」拡張子ファイルのためにアイコンを提供するワードプロセッシングプログラムに起因して、アイコンとの関連を有していてもよい。コンピューティングシステムがインストールされたワードプロセッサを有しているが、しかしスプレッドシートを持っていない場合は、ワードプロセッシングに関連するファイルは重要度の高い格付けを得るが、スプレッドシートに関連するファイルは重要性の格付けが低下する可能性がある。
一実施形態では、予測ストレージサービスがファイルを格納している。予測ストレージサービスは、登録されたコンピューティングシステム上の予測ストレージアプリケーションとの通信を介してのように、登録コンピューティングシステムからファイルを受信することができる。登録されたコンピューティングシステムは、顧客のアカウントに関連付けられたコンピューティングシステムであってもよい。一実施形態では、クライアントは、顧客のアカウントに関連するファイルを受信するために、予測ストレージサービスに登録してもよい。例えば、顧客は、コンピューティングシステムにソフトウェアクライアントをインストールすることができる。インストールの一部として、ソフトウェアクライアントは、ユーザ名とパスワード或いはキーなどのアカウント情報を要求し、予測ストレージサービスに登録してもよい。その後、予測ストレージサービスは、将来の接続でソフトウェアクライアントを識別するために使用することができるソフトウェアクライアントに識別子またはキーを提供することができる。別の実施形態では、予測ストレージサービスは、仮想デスクトップサービスと連携させることができる。仮想デスクトップサービスの顧客は、サービスのプロバイダにアカウントを作成することができる。ソフトウェアクライアントを備えたオペレーティングシステムを含む仮想マシンは、仮想デスクトップサービスによってプロビジョニングすることができ、オペレーティングシステムによって作成されたグラフィカルユーザインターフェイスをクライアントデバイスにストリーミングすることができる。この構成では、ソフトウェアクライアントは、予測ストレージサービスと通信することを可能にするためのアカウント情報を事前にプロビジョニングすることができる。
予測ストレージサービスは、その後にファイルを格納してもよい。一実施形態では、予測ストレージサービスは、ファイルに関連する他のサービスを提供してもよい。例えば、ストレージサービスは、ファイル及び/またはファイル内の情報を見付けるため検索が実行され得るように、ファイルにインデックスを付けてもよい。検索は、検索した情報の前と後の双方で、コンテンツを有するファイルからスニペットを返還することがある。別の実施形態では、予測ストレージサービスは、暗号化したファイルを受信して保存する。ファイルは送信装置によって暗号化されているので、予測ストレージサービスはファイルを保存し、ファイルを復号化することができる他の登録コンピューティングシステムにファイルを中継して送ることができる。侵入工作のリスクは、ストレージサービスがデータへのアクセスを持っておらず、唯一、暗号化されたペイロードを格納するだけという事実によって軽減することができる。別の実施形態では、暗号化されたペイロードが格納されている場合にハイブリッドアプローチが採られるが、予測ストレージサービスも暗号化キーを有している。別のハイブリッドアプローチでは、暗号化されたペイロードは、暗号化されたペイロードにインデックスと共に格納される。
いくつかの実施形態では、格納されたファイルは、予測ファイルサービスから削除されてもよい。削除は、現在における決定された重要性、使用、空間及び/または時間に基づいてもよい。例えば、ファイルは、時間切れモデルに排除してもよい。保存されたファイルが一定の時間に亘って登録されたコンピューティングシステム上でアクセスされていない場合、ファイルは、予測ストレージサービスから削除されてもよい。別の実施例では、ファイルは、最低使用頻度(LRU)モデルに追いやってもよい。予測ストレージサービスは、ファイルがストレージから削除されなければならないと判断した場合、予測ストレージサービスは、それがアクセスされて以来、最も長い時間が経過している削除すべきファイルを選択することができる。他の実施形態では、予測ストレージサービスは、予測ストレージサービスに保存されたファイルのために、登録されたデバイスから重要度の格付け及び/または重要度の指標を受信したり要求したりすることができる。これらの格付けは、重要度の格付けを有し、閾値をパスしないファイルや、重要度の格付け分布の統計的解析からの低い外れ値のファイルのようなものがもしあるならば、どのファイルをストレージサービスから削除するかを判断することができる。
いくつかの実施形態では、予測ストレージサービスは、登録されたデバイスにファイルを中継する。予測ストレージサービスは、ファイルを配布するための媒介として作用してもよい。一実施形態では、登録されたデバイスがファイルを受信しながら、予測ストレージサービスは一時的にファイルを格納することができる。一実施形態では、デバイスが互いにファイルを送信し、予測ストレージサービスがファイルを格納しないように、予測ストレージサービスはピア接続を容易にする。
次に図1を検討するが、少なくとも1つの実施形態による予測ストレージサービス100の例示的な実施例が示されている。図示された実施形態では、第1のコンピューティングシステム上でアクセスされたファイル102は、ユーザによる更なるアクセスのために予測ストレージサービス100によって促進されるよう第2のコンピューティングシステムに転送される。予測ストレージサービス100は、どのファイルを転送するかを決定するために重要度の指標を用いることができる。例えば、ユーザは、デスクトップコンピュータ104上でアクセスされる、ワードプロセッシングファイルのようなファイル102にアクセスする。デスクトップコンピュータ104上の予測ストレージアプリケーションレジデントは、ファイルへの最近のアクセスが重要度の指標であり得るため、アクセスされたファイル102はユーザにとって重要であると判断する。いくつかの実施形態では、重要度は、いくつかの測定値を用いたアルゴリズムまたはヒューリスティックによって計算される一連の重要度インジケータから算出されたものである。測定は上述のように監視情報、及び/またはファイルのメタデータを含んでもよい。ファイル102は、十分に高く決定された重要度を有しているので、予測ストレージサービス110に接触してよいことになる。いくつかの実施形態では、ファイルをインターネット108経由で予測ストレージサービス110に送信してもよい。1つまたは複数のサーバ112を使用して、予測ストレージサービス110はファイル102を格納することができる。いくつかの実施形態では、予測ストレージサービス110は次にモバイルデバイス106との接触を試み、プッシュ通知や他のプッシュ技法を介するなどして、ファイル102をモバイルデバイスに送信することが可能である。他の実施形態では、モバイルデバイス106は予測ストレージサービス110と接触することができ、ファイル102を受け取るために予測ストレージサービス110からの更新を要求してもよい。モバイルデバイス106からの更新のためのこの要求は、モバイルデバイス106上で予測ストレージアプリケーションの立ち上げ、モバイルデバイス106からの定期的なポーリング要求、モバイルデバイス106上のイベント、或いは他のプル技法によるものである。
他の実施形態では、予測ストレージサービス110は、ファイル102をモバイルデバイス106に直接送信するように準備してもよい。一実施形態では、登録されたデバイスは、予測ストレージサービス110と接触したままであってもよい。例えば、重要なファイルが他のコンピュータシステムと共有されるべきと判断されたとき、デスクトップシステム104は予測ストレージサービス110に接触して、モバイルデバイス106のような他のコンピューティングシステムのために接触情報を取り出すことができる。構成に応じて、デスクトップシステム104は直接モバイルデバイス106に接続することができ、モバイルデバイス106は直接デスクトップシステム104に接続することができ、予測ストレージサービス110は、デスクトップシステム104とモバイルデバイス106との間のプロキシまたは他の接続が開設されるように機能してもよい。接続を利用して、デスクトップシステム104はファイル102をモバイルデバイス106に送信することができる。
デスクトップ及び/またはモバイルデバイス106は、予測ストレージサービス110に登録することが可能である。一実施形態では、顧客は予測ストレージサービス110でアカウントを作成する。次に、顧客は、デスクトップコンピュータ104やモバイルデバイス106のようなコンピューティングシステムの各々にアプリケーションをインストールすることができる。アプリケーションは、コンピューティングシステムを予測ストレージサービス110に登録して、顧客のアカウントとコンピューティングシステムを関連付けることができる。
別の実施形態では、予測ストレージサービス110は、仮想デスクトップサービス114と連携して動作することも可能である。例えば、仮想デスクトップサービス114を操作するサービスプロバイダは、ユーザのためにオペレーティングシステムを備える仮想マシンを起動することができる。オペレーティングシステムのためのユーザインターフェイス118は、ユーザによって操作されるコンピューティングシステムにストリーミングすることができる。仮想デスクトップサービス114は1つまたは複数の物理マシン116を備えていてもよく、仮想マシンでプログラムを実行すると共にオペレーティングシステムのためのユーザインターフェイス118をクライアントにストリーミングする1つまたは複数の仮想マシンを物理マシンが提供する。ユーザインターフェイス118からの入力は、デスクトップサービス114にストリーミングすることができる。例えば、仮想マシンは、オペレーティングシステムのグラフィカルユーザインターフェイスを遠隔のラップトップにエクスポートすることができ、遠隔のラップトップからキーボードやマウスの入力を受け取ることができる。データセンタ内での仮想マシンの構成の一例を、図8に見ることができる。仮想デスクトップサービス114は、ユーザインターフェイス118で使用可能なファイル102を作成するために、ネットワーまたはインターネットを介して、予測ストレージサービス110と通信することができる。一実施形態では、仮想デスクトップ環境は、ファイル102にアクセス及び/またはファイル102を修正する仮想マシンでプログラムを実行することができる。仮想デスクトップサービス114のディスプレイは、クライアントコンピューティングリソース上に表示するためにエクスポートされてもよく、一方、ファイル102の処理とデスクトップ環境プログラムの実行は、デスクトップサービス114内で行われる。マウス、タッチ及び/またはキーボードのような入力は、ユーザインターフェイス118から仮想デスクトップサービス114に伝えられてもよい。
いくつかの実施形態では、予測ストレージサービス110は、Webインターフェイスを介してファイル102へのアクセスを提供する。一実施形態では、Webインターフェイスは、重要なファイルをダウンロードするためのダウンロード機能が含まれている。別の実施形態では、Webインターフェイスは、Webインターフェイスを介してファイルを編集する編集機能を備えている。例えば、ワードプロセッシング文書は、Webインターフェイスを介して利用できるワードプロセッシングWebアプリケーションに起因したWebインターフェイスを介して編集することができる。スプレッドシートファイルタイプのためのスプレッドシートWebアプリケーションまたはオーディオファイルタイプのためのオーディオプレーヤーのように、他のファイルタイプ及びアプリケーションもまた、利用できるようにすることが可能である。いくつかの実施形態において、使いやすさを促進する目的で、あるファイル形式から別の種類のファイル形式に変換するための変換器も使用することができる。例えば、オーディオファイルは、あまりサポートされていないファイルタイプからより広く一般的なファイルタイプまたはクライアントブラウザによってサポートされているファイルタイプに変換することができる。
次に図2を検討するが、図にはファイル構造206を使用する少なくとも1つの実施形態に従った予測ストレージサービスの例示的な実施例が示されている。ファイル構造206は、監視情報及びファイルメタデータを介して識別され得る重要なファイル212のために監視されることが可能である。他のファイル210は、あまり重要でないと見なされてもよい。例えば、コンピューティングシステム202上の予測ストレージアプリケーションは、コンピューティングシステム202に接続された記憶装置204を監視することができる。図示の実施形態では、記憶装置204は、階層的な性質を有するファイル構造206を備えている。フォルダ208は、他のフォルダ208及び/またはファイル210及び/または212を包含していてもよい。予測ストレージアプリケーションは、ファイルイベントが通知されるように随時ファイル構造206を登録及び/またはスキャンすることができる。
例えば、予測ストレージアプリケーションは、バックグラウンドサービスとして動作するコンピューティングシステム202にインストールすることができる。予測ストレージアプリケーションは、上述のように情報やファイルメタデータを監視するため、ハードドライブなどの記憶装置204を監視することができる。予測ストレージアプリケーションは、スキャン及び/またはファイルのイベントから調製した重要度の指標に基づいた特定のファイルのために重要度の格付けを決定することができる。重要度の格付けを用いて、一連214の重要なファイル212が確定され、予測ストレージサービスに送信される。一実施例では、24時間が経過すると1ポイントがマイナスされる、5ポイントから始まって減少する重要度指標スコアが与えられる。編集可能なファイルには2ポイントが与えられる一方で、テキストを含んだ文書に対しては1ポイントが与えられている。6ポイントまたはそれ以上の重要度スコアを有するファイルは重要であると判断され、5ポイントまたはそれ以下のスコアでは予測ストレージサービスに送信されない場合がある。
いくつかの実施形態では、ファイルが暗号化される。一実施形態では、ファイルは、TLS/SSLを介して送信される。他の実施形態では、ファイルは、暗号化されたファイルとして保存するためにコンピューティングシステム202を離れる前に暗号化される。ファイルを暗号化することにより、予測ストレージアプリケーションは、傍受及び/または機密情報の漏洩の危険性を低減することができる。
予測ストレージアプリケーションは、ファイル、ファイルタイプ、フォルダ、監視情報及びファイルメタデータを含むように及び/または排除するために、ユーザ及び/または管理者によって構成してもよい。一実施形態では、管理者は、一連のビジネスコンピューティングシステムのために予測ストレージアプリケーションを構成することができる。重要なファイルは、少なくとも他のチームメンバーに関係すると判断された最新の情報をチームメンバーが閲覧することができるように、チームメンバーのコンピューティングシステムに送信されてもよい。
次に図3を検討するが、この図には少なくとも一実施形態に従ってファイルを予測ストレージサービスと同期させるために使用され得るプロセス300の例示的な実施例が示されている。プロセス300は、デスクトップコンピュータシステム104、モバイルデバイス106、ファイル102、予測ストレージサービス110、インターネット108及びサーバ112のような図1に見られる1つまたは複数のコンピューティングリソースを使用することによって達成することができる。予測ストレージアプリケーションは、コンピューティングシステムにインストール302してもよい。コンピューティングシステムは、予測ストレージサービスに登録304することもできる。例えば、インストールの一部として、ソフトウェアクライアントは、予測ストレージサービスに接触して、クライアントが顧客のアカウントに関連付けられていることを識別するために使用することができるユーザ名とパスワードまたはデジタルキーなどの資格証明書を提供することができる。ソフトウェアクライアントは、予測ストレージサービスによって、クライアントの識別に使用するキーのような一連の資格情報を与えられてもよい。他の実施形態では、MACアドレス、システムに関する1つまたは複数の識別情報或いはその他の識別情報のハッシュは、予測ストレージサービスに登録し、クライアントを識別するために使用することができる。オペレーティングシステムに適したアプリケーションをインストールすること及び予測ストレージサービスにデバイスを登録することによって、他のシステムを追加することができる。予測ストレージアプリケーション(複数可)は、ファイルの潜在的な重要度を示すものとして判断される測定及び/またはイベントのためにファイル308を監視することができる。いくつかの実施形態では、イベントは、ファイルとのユーザ相互作用を測定するために使用することができる。もし重要度の高いファイル310が発見されない場合、そして新規なシステムを登録する必要がない場合、ファイルは監視308し続けてもよい。潜在的に重要なファイルが検出310された場合、ファイルの重要度を計算312することができる。例えば、ワードプロセッシングファイルが保存されたイベントを予測ストレージアプリケーションが受け取った場合、予測ストレージアプリケーションが反応し、ファイルの重要度の格付けを判断することができる。もし格付けがファイルは十分に重要であると示した場合314は、ファイルは予測ストレージサービスに送られ316、他の登録されたデバイスに送信することができる。次いで、プロセスはブロック308から始まる繰り返しをしてもよい。しかし、ファイルが十分に重要でない314場合は、プロセスはブロック308から始まる繰り返しをしてもよい。事後を含む、種々の時点で他のデバイスを追加してもよいことに留意すべきである。
プロセス300(または本明細書に記載の任意の他のプロセス、またはその変形及び/またはそれらの組合せ)のいくつか或いは全部は、実行可能な命令で構成された1つまたは複数のコンピュータシステムの制御下で実行されてもよいし、ハードウェアまたはそれらの組合せにより、1つまたは複数のプロセッサ上で一括して実行するコード(例えば、実行可能な命令、1つまたは複数のコンピュータプログラム、或いは1つまたは複数のアプリケーション)として実施することができる。コードは、例えば、1つまたは複数のプロセッサによって実行可能な複数の命令からなるコンピュータプログラムの形で、コンピュータ読み取り可能な記憶媒体に格納してもよい。コンピュータ可読記憶媒体は、非一時的なものであってもよい。
プロセスの特定の実施例が示されているが、プロセス操作の一部は直列の代わりに並列に実行されてもよいことに留意すべきである。例えば、サービスへファイルを送信316し、登録されたデバイスに送信する操作は並列に実行することができる。別の実施例では、アプリケーションのインストール302と、コンピューティングシステムの登録304は、別のコンピューティングシステム上で並行して実行することができる。
別の実施例では、第1のデバイスが第1のファイルは重要であると判断し、第2のデバイスが第2のファイルは重要であると判断してもよい。第1のデバイスは、第1のファイルを予測ストレージサービス及び/または第2のデバイスに同期させることができる。そして第2のデバイスは、第2のファイルを予測ストレージサービス及び/または第1のデバイスに同期させることができる。その結果、第1のファイル及び第2のファイルは、予測ストレージサービス及び/または第1と第2のデバイスの双方に格納することが可能となる。
コンピューティングシステム上での予測ストレージアプリケーションの責任は、どのファイルを予測ストレージサービスまたは他のデバイス上のようなコンピューティングシステムの外側で使用可能なものにするべきかを確定することである。図4は、少なくとも一実施形態による予測ストレージサービスで選択するファイルを決定するために使用されるプロセス400の例示的な実施例を示している。プロセス400は、デスクトップコンピュータシステム104、モバイルデバイス106、ファイル102、予測ストレージサービス110、インターネット108及びサーバ112のような図1に見られる1つまたは複数の計算リソースを使用することによって達成することができる。予測ストレージアプリケーションは、コンピューティングシステム上に存在する。予測ストレージアプリケーションは、ファイルがコンピューティングシステムの外側で共有されるべきと表示するためにファイル構造を監視402する。ファイルのメタデータのような監視及び/または他の情報に基づくアルゴリズム及び/または経験則を使用して、予測ストレージアプリケーションは、どのファイルを予測ストレージサービスに送信するかを選択的に決定404することができる。例えば、重要度の格付けは、ファイルが最近開かれた、最近保存された、ワードプロセッシング拡張機能を有しているなどの属性によって増加させることができる。重要度の格付けが十分に高い場合、ファイルは、予測ストレージサービスに送信するように選択することができる。選択されると、ファイルは予測ストレージサービス406にアップロードすることができる。例えば、予測ストレージアプリケーションは、TLS/SSLなどのセキュア通信チャネルを使用して予測ストレージサービスへのアプリケーションプログラミングインターフェイス呼び出しを行うことができる。いくつかの実施形態では、ファイルは、予測ストレージサービスに送信する前に、予測ストレージアプリケーションによってコンピューティングシステム上で暗号化することが可能である。
図5に示した一実施形態では、モニタリングはイベントベースの監視を含んでもよい。プロセス500は、デスクトップコンピュータシステム104、モバイルデバイス106、ファイル102、予測ストレージサービス110、インターネット108及びサーバ112のような図1に示した1つまたは複数の計算リソースを使用することによって達成することができる。予測ストレージアプリケーションは、ファイル操作に関連するファイルの重要度決定をトリガーするファイル操作のイベント通知を受信502することができる。決定がなされる前に、ファイルに関する情報を収集してもよい。図示の実施形態では、他のデバイス間でのファイルの使用は、ファイルを開く、保存する或いは削除することで確定504することができる。ファイルタイプは、判断506することが可能である。いくつかの実施形態では、ワードプロセッシング文書、スプレッドシート、画像及び/または文書のように共用されているファイルは、構成ファイル、バックアップファイル及び/または実行可能ファイルのように、通常使用されていないファイルより高い重要度が与えられてもよい。ファイルに関連するイベントの履歴は確定508することができる。例えば、ファイルが最後の日に複数の保存をして、複数のオープニングイベント及び/または閾値を超えるアクティブなウィンドウの継続時間を持った場合、その後、ファイルの重要度の格付けは増加させることができる。他のアプリケーションと連携してファイルを使用することも決定510される。例えば、ファイルの重要度の格付けは、ファイルが別の重要なファイルと連携して開かれているときに向上させることができる。別の実施例では、既に決定された重要性を有するファイルと審査中のファイルとの間でフォーカスを変更すると、審査中ファイルの重要度格付けを増大させることができる。操作504から510で収集されたこの情報は潜在的な情報収集の実施例であるので、他の考察も用いることができる。収集した情報を用いて、ファイルの重要度格付けを決定することができる512。もし十分に重要であると決定した場合は514、ファイルはサービス516に送信され、その後、プロセスは操作502で繰り返される。もしファイルが十分な重要度を有しない場合514、予測ストレージアプリケーションは戻され、操作502で新しいイベントを待つことになる。
いくつかの実施形態では、重要度の格付けは、クライアントのニーズに合わせることができる。一実施形態では、予測ストレージシステムはユーザと一体になって使用されてもよい。ユーザは、フォルダ(システムフォルダなど)が含まれるように、または除外するように文書を構成し、USBドライブなどの一時的なボリュームを含めるかどうかを決定することができる。同様に、重要度の格付け計算も構成することができまる。例えば、写真家は文書よりも画像により興味がある可能性があり、一方で弁理士は画像よりも文書や技術的な図面に興味がある可能性がある。予測ストレージアプリケーションは、デフォルトの構成を含んでいてもよい。
別の実施形態では、予測ストレージシステムは、企業環境またはチーム環境で管理者と共に使用することができる。予測ストレージサービスにアップロードされたファイルは、ファイルのユーザに与えられたファイルのアクセス権を尊重することできる。例えば、チームには読み取り専用であるが、重要であると判断されたファイルは、読み取り専用状態のままであってもよい。ワードプロセッシング文書を一連の画像に変換するように、ファイルは必要に応じて、文書を受け取るデバイス上で読み取り専用の条件を順守する形式に変換することができる。別の実施例では、アクセス許可は、文書を閲覧/または編集する権限を持っているチームメンバーに重要と見なされるファイルを配布するだけの予測ストレージサービスによって順守され得る。
いくつかの実施形態では、予測ストレージサービスは、ファイルのレポジトリとして動作するより、むしろデバイス間でのファイル伝達を促進することができる。図6には、少なくとも一実施形態による予測ストレージサービスでファイルを同期させるために使用することができるプロセス600の例示的な実施例が示されている。プロセス600は、デスクトップコンピュータシステム104、モバイルデバイス106、ファイル102、予測ストレージサービス110、インターネット108及びサーバ112のような図1に示した1つまたは複数の計算リソースを使用することによって達成することができる。予測ストレージサービスは、アカウントを顧客に登録することができる602。クライアントはアカウントを参照し、コンピューティングシステムを登録604することができる。それ以上のコンピューティングシステムが利用可能である場合、登録プロセスは複数のデバイスで複数回実行することができるので、それらもまた登録しても構わない。予測ストレージシステムは、他の登録されているシステムと同期するファイルを受け取る606ことができる。いくつかの実施形態では、登録されたシステム上で動作している予測ストレージアプリケーションからファイルを受け取ることができる。一実施形態では、受信されたファイルが暗号化されている。別の実施形態では、暗号鍵が登録システムに知られているが、予測ストレージサービスには知られていない。
ファイルを受信606した後、1つ以上の登録されたデバイスまたはシステムはファイルを同期608させることができる。いくつかの実施形態では、予測ストレージサービスは、成功が達成されるまでファイルを同期化しようと試みてもよい。他の登録されたシステムも同期させることができる。すべてのシステムが同期されると、ファイルをサービスから除去する610ことができる。一実施形態では、予測ストレージサービスは実際にはファイルを保存しないが、デバイスとの間で同期が発生するよう動作する。例えば、第1のコンピューティングシステムは、ファイルを同期させる第2のコンピューティングシステムのアドレスを受信することができる。このようにして、予測ストレージシステムは、同期のためのアドレス帳としての役割を果たす。いくつかの実施形態では、登録されたコンピューティングシステムは、ネットワークを変更するか或いはファイアウォールの背後にあるので、コンピューティングシステム上の予測ストレージアプリケーションは、接触した箇所のアドレスを定期的に更新すること可能となる。
いくつかの実施形態では、予測ストレージサービスは、登録されたコンピューティングシステムによって検索されるファイルのレポジトリとして機能してもよい。図7には、少なくとも一実施形態による予測ストレージサービスにファイルを格納するために使用され得るプロセス700の例示的な実施例が示されている。プロセス700は、デスクトップコンピュータシステム104、モバイルデバイス106、ファイル102、予測ストレージサービス110、インターネット108及びサーバ112のような図1に見られる1つ以上の計算リソースを使用することによって達成することができる。予測ストレージサービスは、アカウントを顧客に登録702することができる。クライアントはアカウントを参照し、コンピューティングシステムを登録する704ことができる。もし、それ以上のコンピューティングシステムが利用可能である場合、それらもまた、登録してもよい。予測ストレージシステムは、格納するために登録されたコンピューティングシステムからファイルを受信する706ことができる。予測ストレージサービスは、ファイルを同期708させるべき1つまたは複数の登録されたコンピューティングシステムを選択することができ、必要に応じて、成功するまでファイルを同期化しようと試みてもよい。いくつかの実施形態では、複数のデバイスの同期を並行して行うことができる。ファイルがもはや重要でないと判断されるまでは、ファイルを予測ファイルストレージサービスに格納する710ことができる。
いくつかの実施形態では、ファイルは、本実施形態の構成に応じて、予測ストレージサービスから抹消しても構わない。LRUアルゴリズムは、サイズ、ファイルの数、或いはストレージの他の測定値のようなストレージクォータに基づいて、最も古くアクセスされたファイルを抹消する。他の実施形態では、登録されたデバイスは、格納されたファイルの重要度の格付けのために照会することができる。重要度の閾値未満に低下したファイルは、予測ストレージサービスから抹消することができる。一実施形態では、重要度の格付けは、予測ストレージサービスによってアクセスされたことと保持された時間とによって決定することができる。
いくつかの実施形態では、ファイルは、発信デバイスを除いて、同期デバイスから除去することができる。例えば、同期化したファイルは、仮フォルダに格納してもよい。ファイルのオリジナルは、コンピューティングシステムのファイル構造に存在していてもよい。デバイス要件に応じて、仮フォルダは、予測ストレージサービスとは異なる時間と方法でファイルを抹消することができる。いくつかの実施形態では、仮フォルダからファイルを抹消することは、デバイス上で動作する予測ストレージアプリケーションの重要度格付け及び/またはコンフィギュレーションに基づいてもよい。他の実施形態では、仮フォルダからのファイルの抹消は、予測ストレージサービスによって制御することができる。
他の実施形態では、予測ストレージサービスは他のサービスを提供する。例えば、予測ストレージサービスは、受信したファイルにインデックスを付ける検索サービスを提供することが可能である。要求に応じて、インデックスは格納されたファイルの中から検索するために参考にすることができる。別の実施例では、予測ストレージサービスは、ダウンロードやWebアプリケーションを介してのように、ファイルへのアクセスを提供してもよい。例えば、ワードプロセッシングWebアプリケーションは、ファイルへの編集アクセスを提供することができる。
一実施形態では、予測ストレージサービスは、重要なファイルのバージョンを含むことができる。例えば、ユーザが深夜にモバイルデバイス上でファイルを編集することができる。翌朝、ユーザは深夜に行った変更を後悔することがあり得る。ドロップダウンボックスでは、ユーザはコンピューティングシステムに同期させる先行のバージョンを選択し、この先行バージョンを受信することもできる。ファイルが削除された場合、先行バージョンは、ファイルを復元するために使用することができる。別の実施形態では、バージョンは、アプリケーションの自動保存機能を介して取得することができる。例えば、ユーザは数時間に亘ってファイルに取り組んでもよい。差分ファイルのような自動保存ファイルは、他のコンピューティングシステム上で使用するために予測ストレージサービスにアップロードすることができる。ユーザがコンピューティングシステムをスリープ状態にさせ、その後、第2のコンピューティングシステムに移動したとき、前のコンピューティングシステム上のアプリケーションによってファイルが技術的に保存されなかった場合でも、ユーザは最後の自動保存から編集を続行することができる。一実施形態では、前の自動保存は先行のバージョンとして選択することができる。コンピューティングシステムと自動保存に応じて、予測ストレージサービスは、選択したバージョンの正確な再生を提示するために、オリジナルファイルと自動保存ファイルを使用することが可能である。
いくつかの実施形態では、予測ストレージサービスは、既存ファイルの新しいコピーを作成するのではなく、予測ストレージサービスによって格納された既存のファイルを更新することを決定する。予測ストレージサービスは、ファイルの内部分析を利用してもよいし、ファイル分析のためのクライアントエージェントに依頼してもよい。1つの内部分析の実施形態では、ローカルコンピューティングデバイスの予測ストレージアプリケーションは、ファイルが十分な重要度格付けを有しており、予測ストレージサービスにファイルをアップロードすることを前もって決定した。その後、予測ストレージアプリケーションは、ファイルが予測ストレージサービスによって格納されたファイルのバージョンと比較して分析する必要があることを決定してもよい。ファイル形式を理解している事実を利用して、ファイルが現在のものか変更されたものか、或いは古いバージョンであるかどうかを決定するために、予測ストレージアプリケーションはファイル内のデータを分析し、解釈することができる。変更された場合、予測ストレージアプリケーションは、予測ストレージサービス内のファイルの更新を準備することができる。アップデートを送信することで全部のファイルは送信する必要がなくなり、帯域幅を節約することとなる。
クライアントエージェントの実施形態では、ローカルコンピューティングデバイス上の予測ストレージアプリケーションは、ファイルが十分な重要度の格付け有していると判断し、クライアントエージェントからの一意識別子と共にファイルを予測ストレージサービスに前もってアップロードしている。その後、予測ストレージアプリケーションは、予測ストレージサービスによって格納されたファイルのバージョンと比較してファイルを分析する必要があることを決定してもよい。この決定は、ローカル保存イベントまたは予測ストレージサービスでのファイルのアップロードイベントのような周期的スキャンまたはイベントに基づいてもよい。予測ストレージアプリケーションは、ファイルの分析を実行しているクライアントエージェントから一意識別子を受け取ることができる。一意識別子は、予測ストレージサービスが、ファイルが新しいバージョンか、現在のバージョンか、或いはファイルの古いバージョンであるかどうかを決定することを可能にするために、予測ストレージサービスに送信することが可能である。新しいバージョンである場合には、予測ストレージアプリケーションは、ファイルを予測ストレージサービスにアップロードすることができる。古いバージョンである場合は、予測ストレージサービスは、ファイルの現在のバージョンを要求することができる。
ファイルの更新されたバージョンは、予測ファイルサービスによって保存することができる。いくつかの実施形態では、ファイルの更新バージョンが他のバージョン及び/またはバージョンの分岐でツリー構造に格納される。他の実施形態では、新しいバージョンが古いバージョンを上書きする。ファイルのバージョンも一意識別子のメタデータを含むことができる。一意識別子メタデータは、ファイルのバージョンが、予測ファイルサービスによって格納されたバージョンと比較して、古いか新しいか或いは最新のものであるか否かについての情報を提供してもよい。例えば、一意識別子は、自動でインクリメントされた値、タイムスタンプ及び変更制作者識別子を含むことが可能である。この実施例では、最新バージョンは、自動インクリメント値によって決定してもよい。一意識別子が同じである場合、ファイルは最新のものと見倣すことが可能である。しかし、自動インクリメント値が同じであっても、他のフィールドが一致しない場合には、矛盾する編集が存在する可能性がある。
図8は、予測ストレージサービス及び/またはストリーミングデスクトップサービスをサポートするために使用することができるデータセンタ環境800の態様を示している。データセンタ800は、共有コンピューティングリソース及び/または共有インフラストラクチャのコレクションを含むことができる。例えば、図5に示すように、データセンタ800は、仮想マシンスロット804、物理ホスト802、電源806、ルータ808、分離領域810及び地理的な場所812を含んでいる。物理ホスト802は複数の仮想マシンスロット804によって共有されてもよく、各スロット804は、ゲストオペレーティングシステムを含む仮想マシンをホストするために使用することが可能である。複数の物理ホスト804は、サーバラックに設けられた電源806のように、電源806を共有することができる。ルータ808は、いくつかの電源装置806に亘って複数の物理ホスト804をルートネットワークトラフィックに提供することが可能である。隔離区域810は、多数のルータ808を提供することできると共に、隔離区域810は、バックアップ発電機のような冗長性によって提供されているコンピューティングリソースのグループである。複数の隔離領域810は、データセンタ800のような地理的位置812に存在していてもよい。1つまたは複数のプロビジョニングサーバ814は、ユーザデータを分析するための命令で構成されたメモリとプロセッサを含むことができ、決定した役割及び/または共有するリソース/計算のインフラストラクチャを使用して利用可能な実装リソースを格付けすることができる。プロビジョニングサーバ814はまた、コンピューティングリソースのプロビジョニング及びプロビジョニング解除のためのワークフローも管理すると同時に、コンピューティングリソースの健康状態及び/または故障を検出することができる。
一実施形態では、ストリーミングデスクトップが、使用可能なスロット804における仮想マシンとしてインスタンス化することができる。プロビジョニングプロセスの一部として、スロット804はまた、予測ストレージサービス及び/または予測ストレージサービスのアカウントにリンクすることができる。予測ストレージサービスに格納されたファイルは、ブロックストレージ、オブジェクトストレージ、及び/または他の高または低レイテンシのデータストアなど、他のストレージサービスに加えて或いは代わりに、ストリーミングデスクトップサービスで利用可能にすることができる。オペレーティングシステムの表示出力は、物理ホスト804及びルータ808を介して外部のコンピューティングシステムにルーティングされてもよい。入力は、ホスト802にルーティングされ、仮想マシンの内部にルーティングされ、オペレーティングシステムに提供することができる。
本発明の実施形態は、以下の文節を考慮して説明することができる。
1.データを提供するためのコンピュータ実行方法であって、
実行可能な命令で構成された1つまたは複数のコンピュータシステムの制御下で、
サービスプロバイダの顧客のためのマルチテナント環境内のオペレーティングシステムを含む仮想マシンをサービスプロバイダによって実行し、
オペレーティングシステムのファイル構造内のデータファイルへのアクセスのためのオペレーティングシステムを監視し、
ファイル構造内のデータファイルの少なくとも一部のために重要度指標を決定し、各重要度指標はファイル構造内のそれぞれのデータファイルへの最近のアクセスに少なくとも部分的に基づいており、そして
アップロードされたデータファイルが他のコンピューティングデバイスへ配布するためにサーバにキャッシュされているように、重要度指標に少なくとも部分的に基づいて、ファイル構造からデータファイルの少なくとも一部をストレージサービスにアップロードすることからなる方法。
2.重要度指標がブルームフィルタに少なくとも部分的に基づいている、文節1に記載のコンピュータ実行方法。
3.更に、アップロードされたデータファイルの複数のバージョンを第2のコンピューティングシステム上で利用できるようにさせることを含む、文節1に記載のコンピュータ実行方法。
4.更に、アップロードされたデータファイルのうちの1つまたは複数の重要度指標の第2の決定に少なくとも部分的に基づいて、サーバ上のアップロードされたデータファイルのうちの1つまたは複数を除去するようにさせることを含む、文節1の記載のコンピュータ実行方法。
5.更に、アップロードされたデータファイルを、サーバにキャッシュされるべきアップロードされたデータファイルでサポートするように補足データファイルを促すことを含む、文節1に記載のコンピュータ実行方法。
6.更に
アップロードされたデータファイルへ1つまたは複数の変更のために仮想マシンを監視し、
データファイルの新しいバージョンを形成するため、第1のコンピューティングシステムからデータファイルへの1つまたは複数の前記変更をアップロードすることからなる、文節1に記載の実行方法。
7.データ記憶のためのコンピュータ実行方法であって、
実行可能な命令で構成された1つまたは複数のコンピュータシステムの制御下で、
第1のコンピューティングシステムのデータファイルを監視し、
少なくとも定量化データ推論アルゴリズムに部分的に基づいて1つまたは複数のデータファイルの重要度を決定し、
一連のデータファイルの決定された重要性に少なくとも部分的に基づいて、ストレージサービスに送るべき1つまたは複数のデータファイルから一連のデータファイルを選択的に決定し、そして
他のコンピューティングデバイス上での一連のデータファイルの可用性のために、一連のデータファイルをアップロードさせるようにすることからなる実行方法。
8.更に、1つまたは複数のデータファイルの重要度を決定することは、データファイルを記述するメタデータに少なくとも部分的に基づいて重要度の格付けを計算することを含む、文節7に記載のコンピュータ実行方法。
9.メタデータは、文書の種類、文書のアクセス履歴、文書の編集履歴、キーワード、または制作者の情報を含む、文節8に記載のコンピュータ実行方法。
10.更に、1つまたは複数のデータファイルの重要度を決定することは、第1のコンピューティングシステムにインストールされた1つまたは複数のアプリケーションとの関係に少なくとも部分的に基づいて重要度格付けを計算することを含む、文節7に記載のコンピュータ実行方法。
11.定量データ推論アルゴリズムは、1つ以上のデータファイルからの1つのデータファイルとのユーザの相互作用に少なくとも部分的に基づいている、文節7に記載のコンピュータ実行方法。
12.更に、第2のコンピューティングデバイスへの一連のデータファイルの送信を可能にするために、ストレージサービスのアカウントに登録された第2のコンピューティングデバイスのアドレスを受信することを含む、文節7に記載のコンピュータ実行方法。
13.更に、一連のデータファイルがストレージサービスによって格納されるようにすることを含む、文節7に記載のコンピュータ実行方法。
14.更に、一連のデータファイルの検索を可能にするために、一連のデータファイルを索引付けることを含む、文節13に記載のコンピュータ実行方法。
15.一連のデータファイルをアップロードされるようにすることは、一連のデータファイルがストレージサービスに暗号化された形式で格納されるように、一連のデータファイルを暗号化することを更に含む、文節13に記載のコンピュータ実行方法。
16.更に、ファイルイベントまたはファイル属性に少なくとも部分的に基づいて、一連のデータファイルから少なくとも1つのファイルの重要度格付けを決定することを含む、文節7に記載のコンピュータ実行方法。
17.データ記憶のためのコンピュータシステムであって、
1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに少なくとも、 データファイルの決定された重要度に基づいて、ストレージサービスに送信するデータ構造内の一連のデータファイルを選択的に決定するように構成された第1のコンピューティングシステムのアプリケーションと、
ストレージサービスからデータファイルを受信するように構成された第2のコンピューティングシステムのアプリケーションと、及び
第1のコンピューティングシステムと第2のコンピューティングシステムとの間でのデータファイルの同期を管理するように構成されるストレージサービスと、
を実行させる実行可能な命令を含む1つまたは複数のプロセッサとメモリを有する1つまたは複数のコンピューティングリソースからなるコンピュータシステム。
18.第2のコンピューティングシステムは、携帯電話である、文節17記載のコンピュータシステム。
19.第1のコンピューティングシステムは更に、ファイル構造を収容するボリュームを備え、データ構造はファイル構造である、文節17に記載のコンピュータシステム。
20.ストレージサービスは更に、一連のデータファイルを格納するための記憶装置を備える、文節17に記載のコンピュータシステム。
21.ストレージサービスは更に、記憶装置によって格納される一連のデータファイルからの少なくとも1つのデータファイルのためにエディタを提供するWebアプリケーションを含む、文節20に記載のコンピュータシステム。
22.更に、記憶装置に格納された一連のファイルに索引を付け、検索インターフェイスを提供する検索サービスを含む、文節20に記載のコンピュータシステム。
23.1つまたは複数のプロセッサによって実行されたとき、コンピュータシステムに少なくとも、
第1のコンピューティングシステムのデータファイルの重要度を決定させ、
一連のデータファイルの決定された重要度に少なくとも部分的に基づいて、ストレージサービスに送信する一連のデータファイルを第1のコンピューティングシステムから選択的に決定させ、そして
第1のコンピューティングシステムと第2のコンピューティングシステムを関連付け、第2のコンピューティングシステムにアップロードされたファイルを送信するように構成されたシステムへ一連のデータファイルをアップロードさせる、
実行可能な命令を集合的に格納してある1つまたは複数のコンピュータ可読記憶媒体。
24.命令は更に、実行されたとき、コンピュータシステムに少なくとも一時的に一連のファイルを格納させる命令を含み、そして
一連のデータファイルをアップロードすることは、一連のデータファイルを第2のコンピューティングシステムへ配布することを含む、文節23に記載のコンピュータ可読記憶媒体。
25.命令は更に、実行されたとき、第2のコンピューティングシステムのユーザに付与されたアクセス権に少なくとも部分的に基づいて、コンピュータシステムに一連のファイルを一連のファイルの部分集合へ少なくとも限定させる命令を含む、文節23に記載のコンピュータ可読記憶媒体
26.決定された重要度は、一連のデータファイル内の各データファイルへのアクセスのリーセンシーに少なくとも部分的に基づいている、文節23に記載のコンピュータ可読記憶媒体。
27.決定された重要度が第1のコンピューティングシステムにインストールされた一連のアプリケーションに少なくとも部分的に基づいている、文節23に記載のコンピュータ可読記憶媒体。
28.一連の前記データファイルは、第2のコンピューティングシステムに送るべきと決定されたデータファイルのリストであり、及び
一連のデータファイルをアップロードすることは、第1のコンピューティングシステムによって第2のコンピューティングシステムへの一連のファイルの直接通信を容易にするために第2のコンピューティングシステムのアドレスを受信することを含む、文節23に記載のコンピュータ可読記憶媒体。
29.一連のデータファイルは、部分集合の外側にあるフォルダ内の一連のデータファイルからの少なくとも1つのファイルと共に、フォルダ内の一連のデータファイルの部分集合を含む、文節23に記載のコンピュータ可読記憶媒体。
図9は、様々な実施形態に従った態様を実装するための例示的環境900の態様を示す。認識されるように、Webベースの環境が説明の目的のために使用されているが、様々な実施形態を実現するためには、適宜、異なる環境を使用することができる。環境は、電子クライアントデバイス902を含み、電子クライアントデバイス902は、適切なネットワーク904経由でリクエスト、メッセージまたは情報を送信して受け取り、情報をデバイスのユーザに返して伝達するよう動作可能な任意の適切な装置を含み得る。このようなクライアントデバイスの例として、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージング装置、ラップトップコンピュータ、セットトップボックス、パーソナルデータアシスタント、電子ブックリーダーなどが挙げられる。ネットワークは、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、または任意の他のそのようなネットワークまたはそれらの組合せを含む任意の適切なネットワークを含んでいてもよい。このようなシステムに使用されるコンポーネントは、選択したネットワーク及び/または環境のタイプに少なくとも部分的に依存することが可能である。そのようなネットワークを介して通信するためのプロトコル及びコンポーネントは周知であり、本明細書では詳細には論じない。ネットワークを介した通信は、有線または無線接続、或いはこれらの組合せで有効にすることができる。この実施例では、当業者には明らかであるように、他のネットワークのためには類似の目的を果たす代替的なデバイスを使用できるが、要求を受信しそれに応答してコンテンツを提供するためのWebサーバ906を環境が備えているので、ネットワークはインターネットを含む。
例示的な環境は、少なくとも1つのアプリケーションサーバ908とデータストア910を含んでいる。いくつものアプリケーションサーバ、レイヤー、または他のエレメント、プロセスまたはコンポーネントが存在し、それが連鎖され或いは別の方法で構成され、適切なデータストアからデータを取得するなどのタスクを実行するために相互作用することが可能なことは理解されるべきである。本明細書で使用する用語「データストア」は、データを格納し、アクセスしてデータ検索することが可能な任意の機器または機器の組合せを指し、データサーバ、データベース、データ記憶装置及び任意の標準の、分布された或いはクラスタ化された環境のデータ記憶媒体の任意の組合せ及び任意の数を含む。アプリケーションサーバは、アプリケーションのためのデータアクセス、ビジネスロジックの大部分を処理するクライアントデバイスのために1つ以上のアプリケーションの態様を実行するのに必要に応じて、データストアと統合するための任意の適切なハードウェア及びソフトウェアを含むことができる。アプリケーションサーバは、データストアと協働してアクセス制御サービスを提供し、ユーザに転送されるテキスト、グラフィックス、オーディオ及び/またはビデオなどのコンテンツを生成することができ、この実施例では、これらはハイパーテキストマークアップ言語(「HTML」)、拡張マークアップ言語(「XML」)、または別の適切な構造化言語の形態でWebサーバによりユーザに提供することができる。すべての要求と応答、並びにクライアントデバイス902とアプリケーションサーバ908との間のコンテンツの配信操作は、Webサーバによって処理することが可能である。本明細書で述べられた構造化されたコードは、他の箇所で説明するように、任意の適切なデバイスまたはホストマシン上で実行することができるので、Web及びアプリケーションサーバが必要とされず、これらは単に例示的コンポーネントであることが理解されるべきである。
データストア910は、特定の態様に関連するデータを格納するためのいくつかの別個のデータテーブル、データベースまたは他のデータ記憶機構及び媒体を含むことができる。例えば、図示したデータストアは、生産データ912とユーザ情報916を記憶するための機構を含み、これらは生産側へコンテンツを提供するために使用することができる。データストアはまた、ログデータ914を格納するための機構を含むように示されており、報告、分析、または他のそのような目的のために使用すること可能である。例えば、ページ画像情報のため及び適切な情報にアクセスするため、データストアに格納する必要があるかもしれない多くの他の態様であってもよいし、これらは上述の列記されたメカニズムのいずれかに、データストア910内の適切な或いは追加の機構として格納することが可能であることは理解されるべきである。データストア910は、アプリケーションサーバ908からの命令を受信するために、それに関連するロジックを介して動作可能であり、それに応答してデータを取得し、アップデートし、或いは別の方法で処理する。一実施例では、ユーザは、アイテムのある型に関して検索要求を送信するかもしれない。この場合、データストアはユーザの身元を確認するためにユーザ情報にアクセスする可能性があり、そのタイプのアイテムについての情報を取得するために、カタログ詳細情報にアクセスすることができる。その後、情報は、例えば、ユーザがユーザデバイス902上でブラウザを介して見ることができるWebページ上の結果リストの中で、ユーザに返すことができる。関心のある特定のアイテムの情報は、専用ページまたはブラウザのウィンドウを開いて見ることができる。
各サーバには、典型的には、そのサーバの全般的な管理及び動作のための実行可能なプログラム命令を提供するオペレーティングシステムが含まれ、サーバのプロセッサによって実行されたとき、サーバにその意図された機能を実行させる命令を格納したコンピュータ可読記憶媒体(例えば、ハードディスク、ランダムアクセスメモリ、読み出し専用メモリ等の)が典型的には含まれることになろう。サーバのオペレーティングシステムと一般的な機能性のための適切な実装は知られているかまたは市販され、特に本明細書の開示に照らして、当該技術分野において通常の技術を有する者によって容易に実装されている。
一実施形態における環境は、1つまたは複数のコンピュータネットワークまたは直接接続を使用し、通信リンクを介して相互に接続されているいくつかのコンピュータシステム及びコンポーネントを利用する分散コンピューティング環境である。しかしながら、このようなシステムは、図9に示されるものよりも少ない或いは多数のコンポーネントを有するシステムで等しく良好に動作することが可能であることが当業者によって理解されるであろう。それ故に、図9におけるシステム900の図解は、実際には例示的なものであって、本発明の範囲を限定するものではないと解釈されるべきである。
種々の実施形態は、更に、多種多様な動作環境に実装することができ、いくつかの場合では、多数のアプリケーションのうちのいずれかを操作するために使用することができる1つまたは複数のユーザコンピュータ、コンピューティングデバイスまたは処理装置を含むことができる。ユーザまたはクライアントデバイスは、標準的なオペレーティングシステムを実行するデスクトップまたはラップトップコンピュータなど数々の汎用パーソナルコンピュータ、並びにモバイルソフトウェアを実行して多数のネットワークキング及びメッセージングプロトコルをサポートすることができる携帯電話、携帯無線や携帯デバイスのいずれかを含むことが可能である。このようなシステムはまた、商業的に入手可能な様々なオペレーティングシステムと、開発及びデータベース管理などの目的のための他の公知のアプリケーションのいずれかを実行する数々のワークステーションを含むことができる。これらのデバイスは、ネットワークを介して通信することができるダミー端子、シンクライアント、ゲームシステムや他の装置等の他の電子デバイスを含むことができる。
殆どの実施形態は、伝送制御プロトコル/インターネットプロトコル(「TCP/IP」)、オープンシステムインターコネクション(「OSI」)、ファイル転送プロトコル(「FTP」)、ユニバーサルプラグアンドプレイ(「UpnP」)、ネットワークファイルシステム(「NFS」)、共通インターネットファイルシステム(「CIFS」)及びAppleTalkのような商業的に利用可能な種々のプロトコルで任意のものを使用して通信をサポートするための、当業者によく知られているであろう少なくとも一つのネットワークを活用する。ネットワークは、例えば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆切り替え電話網、赤外線ネットワーク、無線ネットワーク、及びこれらの任意の組合せとなり得る。
Webサーバを利用する実施形態では、Webサーバは、ハイパーテキスト転送プロトコル(「HTTP」)サーバ、FTPサーバ、コモン・ゲートウェイ・インターフェイス(Common Gateway Interface)「CGI」)サーバ、データサーバ、Java(登録商標)サーバ及びビジネスアプリケーションサーバなどを含む種々豊富なサーバまたはミッドティアアプリケーションのうち任意のものを実行することができる。これらのサーバ(複数可)は、ユーザデバイスからの要求に応答して、1つまたは複数のWebアプリケーションを実行することでプログラムまたはスクリプトを実行することが可能であり、Webアプリケーションは、Java(登録商標)、C、C#またはC++、或いはPerl(登録商標)、Python(登録商標)またはTCL、並びにそれらの組合せなどのような任意のプログラミング言語で書かれた1つまたは複数のスクリプトまたはプログラムとして実装することができる。同様にして、サーバ(複数可)もOracle(登録商標)、マイクロソフト(登録商標)、Sybase(登録商標)及びIBM(登録商標)から市販されているものを含むデータベース・サーバを備えることが可能であるががこれらに限定されない。
上述のように、環境は、多様なデータストアと他のメモリや記憶媒体を含むことができる。これらは、ネットワーク経由でコンピュータのいずれかから或いはすべてから1つまたは複数のコンピュータかリモートに対する(及び/または内部に備えられた)ローカル記憶媒体上のように、様々な場所に存在してもよい。特定の実施形態では、情報は、当業者によく知られているストレージエリアネットワーク(「SAN」)内に常駐することが可能である。同様に、コンピュータ、サーバまたは他のネットワークデバイスに起因する機能を実行するための任意の必要なファイルは、必要に応じてローカル及び/またはリモートに格納されてもよい。システムがコンピュータ化したデバイスを含む場合、そのような各デバイスは、例えば、少なくとも1つの中央処理装置(「CPU」)、少なくとも1つの入力装置(例えば、マウス、キーボード、コントローラ、タッチスクリーンまたはキーパッド)、及び少なくとも1つの出力装置(例えば、表示装置、プリンタまたはスピーカ)を含む要素とバスを介して電気的に結合することができるハードウェア要素を含んでもよい。同様に、このようなシステムはまた、ディスクドライブ、光学記憶装置、及びランダムアクセスメモリ(「RAM」)または読み出し専用メモリ(「ROM」)のような固体記憶装置のような1つまたは複数の記憶装置を含むか、またはメモリカード、フラッシュカードなどのようなリムーバブルメディアデバイスを含んでもよい。
このような装置は、上述したようにコンピュータ可読記憶媒体読取装置、通信装置(例えば、モデム、ネットワークカード(無線または有線の)、赤外線通信装置など)及び作業メモリを備えることが可能である。コンピュータ可読記憶媒体読取装置は、遠隔の、ローカルの、固定及び/または取り外し可能な記憶装置を意味するコンピュータ読み取り可能な記憶媒体、並びに一時的に及び/またはより永続的にコンピュータ読み取り可能な情報を収容し、格納し、送信し及び検索するための記憶媒体に接続され、或いはこれらの媒体を受け取るように構成することができる。また、システム及び様々なデバイスは、典型的には、クライアントアプリケーションやWebブラウザなどのオペレーティングシステム及びアプリケーションプログラムを含む少なくとも1つの作業メモリ装置内に位置する多数のソフトウェアアプリケーション、モジュール、サービスまたは他のエレメントを含むことになろう。代替的な実施形態として、上述のものから多数の変形を有し得ることが理解されるべきである。例えば、カスタマイズされたハードウェアも使用され得るし、及び/または特定のエレメントがハードウェア、ソフトウェア(例えば、アプレットのようなポータブルソフトウェアを含む)、或いは両方に実装されるかもしれない。更に、ネットワーク入力/出力装置などの他のコンピューティングデバイスへの接続を使用することができる。
コードまたはコードの一部を収容するための記憶媒体とコンピュータ可読媒体は、RAM、ROM、電気的消去可能プログラマブル読み取り専用メモリ(「EEPROM」)、フラッシュまたは他のメモリ技術、コンパクトディスク読み出し専用メモリ(「CD-ROM」)、デジタル多用途ディスク(DVD)または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、または所望する情報を格納するために使用することができシステムのデバイスによってアクセスすることができる他の任意の媒体を含むコンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータのような情報の記憶及び/または伝送のために、任意の方法または技術で実装される、揮発性及び不揮発性、リムーバブル及び非リムーバブルなどの記憶媒体及び通信媒体を含む、当技術分野では公知で使用されている適切な任意の媒体を含むことになるが、これらに限定されるものではない。本明細書で提供される開示及び教示に基づき、当業者は、様々な実施形態を実施する他の手段及び/または方法を認識するであろう。
従って、明細書及び図面は、限定的な意味ではなく例示と見なされるべきである。しかしながら、様々な修正及び変更を特許請求の範囲に記載された本発明のより広い主旨及び範囲から逸脱することなく行うことができることは明らかであろう。
他の変形例は、本発明の主旨の範囲内である。このように、開示された技術は様々な修正及び代替構成が可能でありながら、例示した特定の実施形態は、図面に示して詳細に上述されている。しかし、本発明を特定の形態または開示された形態に限定する意図がなく、逆に、その意図するところは、添付の特許請求の範囲に定義されるように、本発明の主旨及び範囲内に入るすべての修正、代替構成及び均等物を包含するものであることは理解されるべきである。
開示された実施形態を説明する文脈(特に以下の特許請求の範囲の文脈において)における「a」及び「an」並びに「the」なる用語の使用、及び類似の指示物は、本明細書で特に明記しない限り或いは文脈に明らかに矛盾しない限り、単数及び複数の両方をカバーすると解釈されるべきである。「備える」、「有する」、「含む」及び「収容する」という用語は、特に断りのない限り制限のない用語(すなわち、「含むが、これらに限定されない」を意味する)として解釈されるべきである。「接続される」という用語は、結合されるようなものの介在があっても、部分的にまたは完全にそのものの内に収容され、そのものに取り付けられ、或いは一緒に接続されたものと解釈されるべきである。本明細書における値の範囲の列挙は、本明細書で他に示されない限り、範囲内に入るそれぞれ別個の値に個々に言及する省略表現方法としての役目を果たすように単に意図され、それぞれ別個の値は、それが個々に本明細書に記載されているかのように本明細書に組み込まれるものである。本明細書に示され、またはそうでなければ文脈により明らかに矛盾しない限り、本明細書に記載のすべての方法は、任意の適切な順序で行うことができる。任意の及びすべての実施例、または本明細書での例示的な文言(例えば、「のような」)の使用は、単に本発明の実施形態をよりよく解明するように意図され、別に特許請求がない限り、本発明の範囲を限定するものではない。明細書中の用語は、本発明の実施に不可欠として、特許請求しない任意の要素を示すものと解釈されるべきではない。
本開示の好ましい実施形態は、発明を実施するために発明者に知られている最良の形態を含んで本明細書中に記載されている。これらの好ましい実施形態の変形は、前述の説明を読むことにより当業者にとって明らかになるであろう。本発明者らは、当業者が適宜このような変形を採用することを期待し、そして本発明者らは、本発明が本明細書に具体的に記載した以外の方法で実施されることを意図している。従って、本発明は、適用法によって許容されるように、添付の特許請求の範囲に記載の主題のすべての修正及び均等物を含んでいる。また、本明細書に示されていないか、そうでなければ文脈に明らかに矛盾しない限り、すべての可能な変形における上述した要素の任意の組合せが本発明に包含される。
各文献が個々にかつ具体的に参照により本明細書に組み込まれるべきであると示され、全体がここに記載されたかのように、刊行物、特許出願及び特許を含む本明細書で引用したすべての参考文献は、参照により同程度までここに組み込まれる。

Claims (17)

  1. データ記憶装置のためのコンピュータ実行方法であって、
    実行可能な命令で構成された1つまたは複数のコンピュータシステムの制御下で、
    第1のコンピューティングシステムのデータファイルを監視するステップと、
    定量化データ推論アルゴリズムに少なくとも部分的に基づいて1つまたは複数のデータファイルの重要度を決定するステップと、
    データファイルの内部分析及びデータファイルのセットの決定された前記重要性に少なくとも部分的に基づいて前記1つまたは複数のデータファイルからの前記データファイルのセットの更新をストレージサービスに送ることを選択的に決定するステップと
    第2のコンピューティングシステムでの前記データファイルのセットの可用性のために前記データファイルのセットの更新をアップロードさせるステップと、を備え、
    前記重要性は、前記第1のコンピューティングシステム及び第2のコンピューティングシステムで決定されることを特徴とするコンピュータ実行方法。
  2. 1つまたは複数のデータファイルの重要度を決定するステップは、前記データファイルを記述したメタデータに少なくとも部分的に基づいて重要度格付けを計算するステップを更に含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  3. 前記メタデータは、文書の種類、文書へのアクセス履歴、文書の編集履歴、キーワード、または制作者の情報を含むことを特徴とする請求項2に記載のコンピュータ実行方法。
  4. 1つまたは複数のデータファイルの重要度を決定するステップは、前記第1のコンピューティングシステムにインストールされた1つまたは複数のアプリケーションとの関係に少なくとも部分的に基づいて、重要度格付けを計算するステップを更に含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  5. 前記定量化データ推論アルゴリズムは、1つまたは複数の前記データファイルからの1つのデータファイルとのユーザインターフェイスに少なくとも部分的に基づいていることを特徴とする請求項1に記載のコンピュータ実行方法。
  6. 前記ストレージサービスのアカウントに登録された前記第2のコンピューティングシステムへの前記データファイルのセットの更新の送信を可能にするために、前記第2のコンピューティングシステムのアドレスを受信するステップを更に備えたことを特徴とする請求項1に記載のコンピュータ実行方法。
  7. 前記データファイルのセットを前記ストレージサービスによって格納させるステップを更に備えたことを特徴とする請求項1に記載のコンピュータ実行方法。
  8. 前記データファイルのセットの検索を可能にするために、前記データファイルのセットを索引付けするステップを更に備えたことを特徴とする請求項1に記載のコンピュータ実行方法。
  9. 前記データファイルのセットをアップロードさせるステップは、前記データファイルのセットが前記ストレージサービスに暗号化された形式で格納されるように、前記データファイルのセットを暗号化するステップを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  10. ファイルイベントまたはファイル属性に少なくとも部分的に基づいて、前記データファイルのセットから少なくとも1つのファイルの重要度の格付けを決定するステップを更に備えたことを特徴とする請求項1に記載のコンピュータ実行方法。
  11. データ記憶のためのコンピュータシステムであって、
    1つまたは複数のプロセッサによって実行されると、1つまたは複数の前記プロセッサに少なくとも、
    データファイルの内部分析及びデータファイルの決定された重要度に基づいて、ストレージサービスに送信するデータ構造内のデータファイルのセットの更新を選択的に決定するように構成された第1のコンピューティングシステムのアプリケーションと、
    前記ストレージサービスから前記データファイルのセットの更新を受信するように構成された第2のコンピューティングシステムのアプリケーションと、
    前記第1のコンピューティングシステムと前記第2のコンピューティングシステムとの間での前記データファイルのセットの更新の同期を管理するように構成される前記ストレージサービスと、を実行させ、
    前記重要性を第1のコンピューティングシステムのアプリケーション及び前記第2のコンピューティングシステムのアプリケーションで決定する実行可能な命令を含む、1つまたは複数のプロセッサとメモリとを有する1つまたは複数のコンピューティングリソースを備えたコンピュータシステム。
  12. 前記第1のコンピューティングシステムは、更に、ファイル構造を収容するボリュームを備え、前記データ構造はファイル構造であることを特徴とする請求項11に記載のコンピュータシステム。
  13. 前記ストレージサービスは、更に、前記データファイルのセットを格納する記憶装置を備えることを特徴とする請求項11のコンピュータシステム。
  14. 前記ストレージサービスは、更に、前記ストレージによって格納される前記データファイルのセットからの少なくとも1つのデータファイルのためのエディタを提供するWebアプリケーションを含むことを特徴とする請求項13に記載のコンピュータシステム。
  15. 更に、前記ストレージによって格納される前記ファイルのセットを索引付けする検索サービスを含み、検索インターフェイスを提供することを特徴とする請求項13に記載のコンピュータシステム。
  16. 前記第2のコンピューティングシステムにアップロードされた前記データファイルのセットを同期させるステップと、
    前記アップロードされたデータファイルのセットが同期した後、前記ストレージサービスから前記アップロードされたデータファイルの少なくとも一部を削除するステップと、を備える請求項1に記載のコンピュータ実行方法。
  17. 定量化データ推論アルゴリズムに少なくとも部分的に基づいて、アップロードされたデータファイルの重要度を決定するステップと、
    前記重要度を決定するステップが、アップロードされたデータファイルセット部分のアップデートされた前記データファイルの重要度が閾値よりも低いファイルと決定したときに、前記閾値よりも低い少なくとも一部のファイルを前記ストレージサービスから削除するステップと、を備える請求項1に記載のコンピュータ実行方法。
JP2017120081A 2013-02-25 2017-06-20 予測ストレージサービス Active JP6482602B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/776,498 2013-02-25
US13/776,498 US10318492B2 (en) 2013-02-25 2013-02-25 Predictive storage service

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015559283A Division JP2016509317A (ja) 2013-02-25 2014-02-25 予測ストレージサービス

Publications (2)

Publication Number Publication Date
JP2017201546A true JP2017201546A (ja) 2017-11-09
JP6482602B2 JP6482602B2 (ja) 2019-03-13

Family

ID=51389245

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015559283A Pending JP2016509317A (ja) 2013-02-25 2014-02-25 予測ストレージサービス
JP2017120081A Active JP6482602B2 (ja) 2013-02-25 2017-06-20 予測ストレージサービス

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015559283A Pending JP2016509317A (ja) 2013-02-25 2014-02-25 予測ストレージサービス

Country Status (9)

Country Link
US (1) US10318492B2 (ja)
EP (1) EP2959411A4 (ja)
JP (2) JP2016509317A (ja)
KR (2) KR101800592B1 (ja)
CN (2) CN105009121B (ja)
AU (2) AU2014218538B2 (ja)
CA (1) CA2901677C (ja)
SG (2) SG11201506528UA (ja)
WO (1) WO2014131041A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104053019A (zh) * 2013-03-12 2014-09-17 中兴通讯股份有限公司 基于虚拟桌面的视频播放、处理方法及装置
WO2014172037A1 (en) * 2013-03-14 2014-10-23 Good Technology Corporation Application registration and interaction
US9858052B2 (en) * 2013-03-21 2018-01-02 Razer (Asia-Pacific) Pte. Ltd. Decentralized operating system
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US9998555B2 (en) 2014-04-08 2018-06-12 Dropbox, Inc. Displaying presence in an application accessing shared and synchronized content
US9053124B1 (en) 2014-09-30 2015-06-09 Code 42 Software, Inc. System for a distributed file system element collection
RU2683482C2 (ru) * 2014-10-01 2019-03-28 Общество с ограниченной ответственностью "СликДжамп" Метод отображения релевантной контекстно-зависимой информации
US9361349B1 (en) * 2015-01-30 2016-06-07 Dropbox, Inc. Storage constrained synchronization of shared content items
US9846528B2 (en) 2015-03-02 2017-12-19 Dropbox, Inc. Native application collaboration
US10248933B2 (en) 2015-12-29 2019-04-02 Dropbox, Inc. Content item activity feed for presenting events associated with content items
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
US20180074812A1 (en) * 2016-09-09 2018-03-15 Takuji Kawaguchi Information terminal, information processing system, method, and recording medium
CN110008050B (zh) * 2019-04-11 2023-06-30 北京百度网讯科技有限公司 用于处理信息的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087349A (ja) * 2005-09-20 2007-04-05 Mitsuhiro Ishizaka 情報共有システム
JP2008301248A (ja) * 2007-05-31 2008-12-11 Victor Co Of Japan Ltd 記録再生装置
US20090150569A1 (en) * 2007-12-07 2009-06-11 Avi Kumar Synchronization system and method for mobile devices
US20090254572A1 (en) * 2007-01-05 2009-10-08 Redlich Ron M Digital information infrastructure and method
US20110173299A1 (en) * 2009-07-19 2011-07-14 Simon Samuel Lightstone Website-based network file explorer
US20130212067A1 (en) * 2012-02-15 2013-08-15 Citrix Systems, Inc. Selective synchronization of remotely stored content

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301579B1 (en) 1998-10-20 2001-10-09 Silicon Graphics, Inc. Method, system, and computer program product for visualizing a data structure
US6571245B2 (en) * 1998-12-07 2003-05-27 Magically, Inc. Virtual desktop in a computer network
US6834120B1 (en) 2000-11-15 2004-12-21 Sri International Method and system for estimating the accuracy of inference algorithms using the self-consistency methodology
US7233933B2 (en) 2001-06-28 2007-06-19 Microsoft Corporation Methods and architecture for cross-device activity monitoring, reasoning, and visualization for providing status and forecasts of a users' presence and availability
US20060206447A1 (en) 2005-03-10 2006-09-14 Kabushiki Kaisha Toshiba Document managing apparatus
US20070276723A1 (en) 2006-04-28 2007-11-29 Gideon Samid BiPSA: an inferential methodology and a computational tool
US7509855B2 (en) 2007-07-25 2009-03-31 The Lubrizol Corporation Sensor manifolds
FR2924839B1 (fr) * 2007-12-06 2010-03-19 Agematis Procede de sauvegarde automatique de donnees numeriques conservees en memoire dans une installation informatique, support de donnees lisible par un ordinateur, installation informatique et systeme pour la mise en oeuvre de ce procede
US20090171960A1 (en) * 2008-01-02 2009-07-02 Ziv Katzir Method and system for context-aware data prioritization
US8649276B2 (en) * 2008-07-31 2014-02-11 Microsoft Corporation Content transfer
US10447804B2 (en) * 2008-10-28 2019-10-15 Hewlett-Packard Development Company, L.P. File type association in a remote computing session
US8195617B2 (en) * 2008-12-30 2012-06-05 International Business Machines Corporation Managing data across a plurality of data storage devices based upon collaboration relevance
US8219526B2 (en) * 2009-06-05 2012-07-10 Microsoft Corporation Synchronizing file partitions utilizing a server storage model
US8285681B2 (en) * 2009-06-30 2012-10-09 Commvault Systems, Inc. Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites
US8280899B2 (en) 2009-10-14 2012-10-02 Microsoft Corporation Abstracting events for data mining
US20110107042A1 (en) * 2009-11-03 2011-05-05 Andrew Herron Formatting data storage according to data classification
US8315502B2 (en) 2009-12-08 2012-11-20 Echostar Technologies L.L.C. Systems and methods for selective archival of media content
US9386098B2 (en) * 2010-06-11 2016-07-05 Fidelithon Systems, Llc Smartphone management system and method
CN102447723B (zh) 2010-10-12 2015-09-09 运软网络科技(上海)有限公司 客户端虚拟化架构
US20120143806A1 (en) 2010-12-06 2012-06-07 Microsoft Corporation Electronic Communications Triage
TW201227395A (en) * 2010-12-22 2012-07-01 Hon Hai Prec Ind Co Ltd Cloud data security controlling system and method
US8825572B2 (en) 2011-02-01 2014-09-02 Microsoft Corporation Program synthesis with existentially and universally quantified belief propagation using probabilistic inference
JP5664441B2 (ja) 2011-04-27 2015-02-04 日本電気株式会社 資源管理システム、データ更新方法およびプログラム
EP2710510A4 (en) * 2011-05-14 2015-05-06 Bitcasa Inc CLOUD FILE SYSTEM WITH SERVER DEPLOYMENT OF USER UNKNOWN ENCRYPTED FILES
CN102855236B (zh) * 2011-06-27 2015-04-29 北京东方通科技股份有限公司 文件传输系统及文件传输方法
US10474691B2 (en) * 2012-05-25 2019-11-12 Dell Products, Lp Micro-staging device and method for micro-staging
CN102857570A (zh) 2012-09-13 2013-01-02 清华大学 文件的云同步方法及云存储服务器
US9185742B2 (en) * 2012-12-13 2015-11-10 Google Technology Holdings LLC System and methods for a cloud based wireless personal area network service enabling context activity handoffs between devices
US9489440B2 (en) * 2012-12-13 2016-11-08 Microsoft Technology Licensing Llc Opportunistic, priority-based object synchronization
US9678978B2 (en) * 2012-12-31 2017-06-13 Carbonite, Inc. Systems and methods for automatic synchronization of recently modified data
US10120891B2 (en) * 2013-02-11 2018-11-06 International Business Machines Corporation Data placement optimization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087349A (ja) * 2005-09-20 2007-04-05 Mitsuhiro Ishizaka 情報共有システム
US20090254572A1 (en) * 2007-01-05 2009-10-08 Redlich Ron M Digital information infrastructure and method
JP2008301248A (ja) * 2007-05-31 2008-12-11 Victor Co Of Japan Ltd 記録再生装置
US20090150569A1 (en) * 2007-12-07 2009-06-11 Avi Kumar Synchronization system and method for mobile devices
US20110173299A1 (en) * 2009-07-19 2011-07-14 Simon Samuel Lightstone Website-based network file explorer
US20130212067A1 (en) * 2012-02-15 2013-08-15 Citrix Systems, Inc. Selective synchronization of remotely stored content

Also Published As

Publication number Publication date
JP2016509317A (ja) 2016-03-24
CN115344548A (zh) 2022-11-15
AU2014218538B2 (en) 2016-06-23
KR101699654B1 (ko) 2017-01-24
AU2016222323B2 (en) 2017-10-12
JP6482602B2 (ja) 2019-03-13
US20140244580A1 (en) 2014-08-28
SG10201609089SA (en) 2016-12-29
SG11201506528UA (en) 2015-09-29
AU2014218538A1 (en) 2015-09-03
EP2959411A1 (en) 2015-12-30
CN115344548B (zh) 2024-03-15
KR20170010098A (ko) 2017-01-25
WO2014131041A1 (en) 2014-08-28
CA2901677A1 (en) 2014-08-28
CN105009121A (zh) 2015-10-28
KR20150119105A (ko) 2015-10-23
KR101800592B1 (ko) 2017-11-22
EP2959411A4 (en) 2016-08-03
CN105009121B (zh) 2022-08-16
US10318492B2 (en) 2019-06-11
CA2901677C (en) 2019-07-16
AU2016222323A1 (en) 2016-09-15

Similar Documents

Publication Publication Date Title
JP6482602B2 (ja) 予測ストレージサービス
US9992200B2 (en) System and method for secure content sharing and synchronization
JP6621543B2 (ja) ハイブリッドアプリケーションの自動更新
US20240036695A1 (en) System and methods for configuring event-based automation in cloud-based collaboration platforms
JP6797290B2 (ja) メッセージングサービス向けのコンテンツ管理機能
US8447801B1 (en) Content sharing with limited cloud storage
US9904435B2 (en) System and method for actionable event generation for task delegation and management via a discussion forum in a web-based collaboration environment
US20130111336A1 (en) Platform and application independent system and method for networked file access and editing
JP2016535381A (ja) ファイルレベル・コメンティング
JP2017528795A (ja) コンテンツアイテムの共有のための未登録ユーザアカウントの生成
US10021050B2 (en) Secure conversation and document binder
US9590999B2 (en) Preview serving from an external preview service
GB2499097A (en) Discussion forum with integrated task assignment function
US11983181B1 (en) Data stream processing instruction set previews using batch conversion
CN112181975A (zh) 用于在数据仓库中创建数据库的方法和装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180618

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181112

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190212

R150 Certificate of patent or registration of utility model

Ref document number: 6482602

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