JP5204099B2 - グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置 - Google Patents

グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置 Download PDF

Info

Publication number
JP5204099B2
JP5204099B2 JP2009510109A JP2009510109A JP5204099B2 JP 5204099 B2 JP5204099 B2 JP 5204099B2 JP 2009510109 A JP2009510109 A JP 2009510109A JP 2009510109 A JP2009510109 A JP 2009510109A JP 5204099 B2 JP5204099 B2 JP 5204099B2
Authority
JP
Japan
Prior art keywords
data
file
storage medium
descriptor
backup
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.)
Active
Application number
JP2009510109A
Other languages
English (en)
Other versions
JP2009536418A5 (ja
JP2009536418A (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.)
Hybir Inc
Original Assignee
Hybir 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=38668596&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP5204099(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Hybir Inc filed Critical Hybir Inc
Publication of JP2009536418A publication Critical patent/JP2009536418A/ja
Publication of JP2009536418A5 publication Critical patent/JP2009536418A5/ja
Application granted granted Critical
Publication of JP5204099B2 publication Critical patent/JP5204099B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/11File system administration, e.g. details of archiving or snapshots
    • G06F16/113Details of archiving
    • 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/13File access structures, e.g. distributed indices
    • 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
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Description

本発明は、概して、コンピュータ・データ権限およびデータ同一性に関する。特に、本発明は、それがファイル・システム、コンピュータ・データ・バックアップ、およびコンピュータ一般に適用される際に、データ管理を改善するために適用可能である。
近代社会は、コンピュータおよびコンピュータ・ネットワーク(コンピュータ・システム)に極度に依存しており、続いて、本質的に大きなコンピュータ・システムであるインターネットに極度に依存している。どの人またはどのエンティティが特定のファイルに対する権限を有しているかを管理することは、非常に困難であり、資源消費が大きいが、データのプライバシーの維持には重要である。権限管理およびファイル識別についての現在の実施は非常に非効率的であるので、コンピューティング分野に亘って大きな譲歩および妥協がなされてきた。
先行技術にかかる権限管理は、典型的には、ユーザ単位で行なわれる。ユーザは、一般に、認証され、個人またはグループ単位で権限を与えられる。各ユーザに関連したファイルについては、ビット毎にまたは或るアルゴリズムの使用を通じて比較されるのが一般的である。一般的な比較方法は、crc−32署名、ファイル・サイズ・チェック、および典型的にはより大きなファイルに利用されるよりロバストなmd5法を含んでいる。ファイル比較は、典型的には、大きなダウンロードファイルに対して手動処理で行なわれる。大きなファイルには、md5チェック・サムが提供される。ユーザは、ファイルをダウンロードし、ダウンロードしたファイル上でmd5ユーティリィティを実行し、チェック・サムが一致することを確認する。従来的には、各ユーザに対してファイルの別個のコピーが維持される。
比較が行なわれる際に導入される1つの非効率は、コンピュータ・バックアップの処理に関するものである。殆どのバックアップ技術は、コンピュータ・システムの内容全体の初期イメージまたは完全バックアップを取ることに依存している。初期イメージまたは完全バックアップの使用は、非常に大きなバックアップをコンピュータ・バックアップ処理中に生じさせる。ファイル・システムの一部を除外すること、既にバックアップされているデータをコピーしないこと、またはその両方を行ってバックアップのサイズを低減するための様々な技術がある。バックアップのサイズを低減するための1つの技術は、未だ存在しないファイルのみをコピーすることである。この方法は、ファイルが既にリポジトリにあるか否かを判断するために、ファイル名識別子と共にチェック・サムとしてcrc−32を利用する。crc−32技術の利用は、同一のcrc−32データを生成する同一の大きさのデータの多くの可能な組合せが存在するので、ファイルの独自性を論理的に保証しない。さらに、crc−32技術の使用には、固有のファイル権限問題およびファイル同一性問題が存在する。複製(duplicate)ファイルがバックアップされない場合、バックアップ空間は本質的に共有システムである。この共有システムでは、各バックアップ・クライアントがどのファイルに対して権限を有しているかを判断しなければならない。
別のそのような非効率は、構成処理の進行中に存在する。構成処理は、コンピュータ・システムの構成を管理する処理である。この処理は、構成の組をキャプチャし、復元することを含んでいる。構成の組は、ファイル構造および構成情報のほか、構成情報を更新するかまたはファイル・システムを操作するスクリプトを含むことが可能である。その非効
率は、ファイルの独自性を保証するシステムの能力不足にある。構成の組は、関連データの完全な束である。多くの構成の組は、単に、ユニークであると保証されないファイルを管理することの複雑さのために、同一のファイルの複数のコピーを有する。
コンピュータ記憶装置、管理、およびデータ・バックアップ・システムに伴う非効率の列挙は、ほぼ無限に続く。たとえば、電子メール記憶および他のメッセージ記憶のほか、アプリケーション・データ記憶技術の処理において、非常に多くの非効率が存在している。
したがって、本発明の目的は、ファイル、ファイル権限、およびファイル同一性を管理するためのより効率的な方法およびシステムを提供することにある。
本発明の1つ以上の実施形態によれば、論理的にユニークなクレデンシャルを判断する方法が提供される。この方法は、概して、
第1の遠隔記憶媒体上に記憶された電子データの第1のインベントリを受信することと、第1のインベントリは1つ以上の記述子を含んでいることと、
第1のインベントリの該1つ以上の記述子を、バックアップ・データ記憶媒体上に記憶された電子データの第2のインベントリに関連した一連の記述子と比較することと、電子データの第2のインベントリは、第1の遠隔記憶媒体と異なる複数の記憶媒体からの電子データを含んでいることと、
第1のインベントリの該1つ以上の記述子からの第1の記述子が、第2のインベントリに関連した一連の記述子からの第2の記述子と実質的に一致することを判断することと、
第1の記述子に関連した電子データが前記バックアップ・データ記憶媒体に既に記憶されていることを第1の遠隔記憶媒体に報知することとを含む。
本明細書で使用される「電子データ」は、電子ファイル、電子ファイルの一部分、データの塊(chunk)、データ構造、メタデータ、または電子データの任意の他の部分に対応することが可能である。
記述子は、ファイル・メタデータ(たとえば、ファイル記憶域およびファイルに関する他の書誌的情報)および1つ以上の暗号署名の組合せであることが可能である。記述子の使用は、1つの実施形態では、実質的に同一のファイルが2回以上記憶されることなく、多くのファイルが記憶されることを可能にする。これは、ファイルを実際に提供せずに、且つ、ビット単位でファイルを比較することなく可能になることができる。データベースおよび/または他のソフトウェア・アプリケーションは、より高いレベルの機能を提供するシステムにおける記述子を管理することができる。1つの実施形態では、多くのファイルが他のファイルの正確なコピーであり、ファイル管理問題が克服されることができる場合には記憶される必要がないので、より高いレベルの機能が使用される。冗長に記憶されたファイルの量を低減することは、メモリ、記憶装置、およびネットワーク資源におけるコストおよび制限に対して重要である。
本発明の別の態様は、論理的にユニークな記述子を判断することができる方法およびシステムである。判断された記述子は、ファイル・メタデータおよび1つ以上の暗号署名の組合せであることが可能である。1つの実施形態では、記述子は、ユーザがプロセッサに関連したことを該記述子の所有者が認証することを可能にするので、続いて、プロセッサは、該プロセッサが記述子を所有しているだけであり、もはやファイルを所有していない場合であってもファイルに対する権限を有する。そのような実施形態では、プロセッサは
、そのプロセッサが特定のファイルに対する権限を有することを判断することができるが、これは、記述子を生成するために比較的弱い暗号ルーチンが使用されるときであっても、ファイルを所有せずにそのファイルに対する記述子を判断することは非常に困難であるためである。
本発明のさらなる態様は、暗号ルーチンまたはアルゴリズムの使用を提供する。暗号アルゴリズムは、ルーチンを破ろうとするエンティティ(「攻撃者」)が秘密およびメッセージの両方へのアクセスを有しない場合には破るのが実質的により困難である。本発明の少なくとも幾つかの実施形態によれば、攻撃者は、どちらへのアクセスも有していない。これによって、認可されていないエンティティはファイル・メタデータや1つ以上の署名を推測する必要があるが、それは完全に実行不可能ではないとしても非常に困難な作業であるので、ファイルの認証は非常に安全(secure)となる。実際、ファイルを識別するために複数の署名が使用されるとき、有効な記述子を生成する1つの方法は、実際のファイルで始まる。その場合、攻撃者によって遂行されるのは、それらの攻撃者が既に有しているファイルへのアクセスを与えられることだけである。
本明細書で使用される用語「自動」およびその変形物は、処理または動作が行なわれるときに実質的な人間の入力なしになされる任意の処理または動作を参照している。しかしながら、或る処理または動作の実行の前に受けた人間の入力(実質的または非実質的)をその処理または動作の実行が使用しても、その処理または動作は自動であることができる。人間の入力は、その処理または動作がどのように行なわれるかにそのような入力が影響する場合に、実質的であると考えられる。その処理または動作の実行に同意する人間の入力は、「実質的」であるとは考えられない。
本明細書で使用される用語「判断する」、「演算する」、および「演算する」、ならびにその変形物は、置換可能に使用され、任意の種類の方法、処理、数学的な操作または技術を含んでいる。
本明細書で使用される用語「モジュール」は、任意の公知またはその後開発されたハードウェア、ソフトウェア、ファームウェア、人工知能、ファジー理論、またその要素に関連した機能を行なうことができるハードウェアおよびソフトウェアの組合せを参照している。さらに、当然のことながら、本発明が典型的な実施形態の点から記載されているが、本発明の個々の態様は、別個に請求されることができる。
これらおよび他の利点は、ここに含まれた本発明の開示から明白になる。上記実施形態および構成は、完全でなければ、包括的でもない。当然のことながら、本発明の他の実施形態は、上述したまたは下に詳細に記載される一または複数の特徴を単独または組み合わせて利用可能である。
本発明は、典型的なデータ記憶およびバックアップ・システムと共に下に例示される。たとえば、サーバおよび/またはデータベースを使用したシステムでの使用に良く適しているが、本発明は、任意の特定の種類の通信システム、または任意の特定の構成のシステム要素での使用に限定されるものではない。当業者には、グループ・ベースのファイル・バックアップ・システムを提供することが望ましい任意の通信用途で開示された技術が使用されることが可能であることが認識される。
この発明の典型的なシステムおよび方法は、通信用ソフトウェア、モジュール、および関連する通信用ハードウェアに関しても記載される。しかしながら、本発明を不必要に不明瞭にしないようにするために、次の記載は、ブロック図の形態で示されることがあるか
、周知であるか、または要約される周知の構造、ネットワーク構成要素、および装置を省略している。
説明の目的のために、数々の詳細が本発明についての完全な理解を与えるために述べられている。しかしながら、本発明が本明細書に記載の特定の詳細を超えた様々な方法で実行されることが可能であることは認識されるべきである。
さらに、本明細書に例示される典型的な実施形態が、配置されたシステムの様々な構成要素を示している一方で、本システムの様々な構成要素が、通信ネットワークおよび/またはインターネット、あるいは、専用の安全な、安全でないおよび/または暗号化されたシステムのような分散型ネットワークの離れた部分に位置することができることは認識されるべきである。このように、本システムの構成要素は、エンタープライズ・サーバのような一または複数の装置に組み合わせられることができ、任意の装置が、永続記録機能を備えているか、または、アナログおよび/またはデジタル通信網のような分散型ネットワークの特定のノード上に配置されることは認識されるべきである。次の記載から当然に、また、演算効率の理由で、本システムの構成要素は、本システムの動作に影響せずに分散型ネットワーク内の任意の位置に配置されることができる。たとえば、様々な構成要素は、一または複数のユーザの敷地でのバックアップ・サーバまたはその幾つかの組合せに位置することができる。同様に、本システムの一または複数の機能部分は、サーバ、ゲートウェイ、および/または関連した通信装置の間で分散されることができる。
まず図1を参照して、通信システム100は、本発明の少なくとも幾つかの実施形態に従って記載される。通信システム100は、概して、通信ネットワーク104、一または複数の通信装置108、エンタープライズ・サーバ112、バックアップ・アプリケーション124およびリストア・アプリケーション120を含んだバックアップ・サーバ116、およびデータ記憶領域128を含んでいる。
通信ネットワーク104は、任意の種類の情報輸送媒体を備え、エンドポイント間でメッセージを輸送するための任意の種類のプロトコルを使用することが可能である。通信ネットワーク104は、有線および/または無線通信技術を含むことが可能である。通信ネットワーク104の例は、限定することなく、アナログ音声通話のみ可能な旧来の電話サービス(POTS)、総合デジタル通信網(ISDN)、公衆交換電話網(PSTN)、ローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)、インターネット、および本技術分野で公知の任意の他の種類のパケット交換または回線交換網を含んでいる。加えて、当然のことながら、通信ネットワーク104は、任意の1つの種類のネットワークに限定される必要がなく、代わりに、数々の異なるネットワークおよび/または数々の異なる種類のネットワークで構成されることも可能である。
通信装置108は、パケット交換および/または回線交換であることが可能であり、たとえば、電話機、IP電話機、携帯情報端末(PDA)、パーソナル・コンピュータ(PC)、ノート型パーソナル・コンピュータ、パケット・ベースのH.320テレビ電話機能付携帯電話機および会議ユニット、パケット・ベースのボイス・メッセージおよび応答ユニット、パケット・ベースの古典的なコンピュータ電話通信付属物、従来の有線または無線電話機、携帯電話機などを含むことができる。
エンタープライズ・サーバ112は、選択されたクライアント装置(たとえば、通信装置108)にサービスを提供するように機能する専用プロセッサを備えていることが可能である。エンタープライズ・サーバ112は、概して、企業内で接続されている複数の通信装置108間の通信を可能にし、さらに、企業に通信ネットワーク104への接続ポイントを提供する。エンタープライズ・サーバ112は、電子データ記憶領域上に記憶され
た命令を実行するために操作可能な任意の種類の処理媒体を備えていることが可能である。本明細書で使用される用語「スイッチ」または「サーバ」は、エンタープライズ・サーバ、永続記録機能を備えた装置、または、他の種類の電気通信システム・スイッチまたはサーバのほか、メディア・サーバ(つまり、電子メール・サーバ、音声メール・サーバ、ウェブ・サーバなど)、コンピュータ、付属物などのような他の種類のプロセッサ・ベースの通信制御装置を含むと理解されるべきである。
バックアップ・サーバ116は、ファイル・バックアップ設備を提供するように構成されている。バックアップ・サーバ116は、ユーザのグループのためのファイル・バックアップ・システムを管理する機能によって特徴づけられており、その各々は、一または複数の通信装置108を伴うことが可能である。本発明の或る実施形態によれば、バックアップ・サーバ116には、ユーザがそのそれぞれの通信装置108からバックアップ・サーバ116またはデータ記憶装置128のいずれかへのファイルのバックアップを可能にするバックアップ・アプリケーション124が設けられている。バックアップ・アプリケーション124は、契約ユーザまたは或る通信装置108に対してだけ利用可能である。代わりに、非契約ユーザ/通信装置108は、或る通信装置108から遠隔の記憶装置128設備上に一または複数のバージョンのデータを記憶するためにバックアップ・アプリケーション124を利用することを許可されることが可能である。通信装置108上に存在する媒体のようなコンピュータ媒体は、多くの使用シナリオでは、どこか他の場所に残しておくためにデータのコピーを必要とするような故障率を有している。これらの遠隔バックアップ・コピーは、元の媒体の故障の際に通信装置108に復元されることができる。この処理は、バックアップおよびリストアと呼ばれ、それぞれ、バックアップ・アプリケーション124およびリストア・アプリケーション120によってサポートされている。バックアップ・サーバ116上に維持されるバックアップ・アプリケーション124およびリストア・アプリケーション120は、グループ・ベースのバックアップ・システムの管理のための中央サポートを提供する。バックアップおよび復元処理は、2つの主要な手法を有している。1つは、通信装置108上に存在する媒体のイメージまたはブロック・ベースのバックアップである。いま1つは、ファイル・ベースのバックアップである。ファイル・ベースおよびブロック・ベースのバックアップ手法の組合せには、様々なものが存在する。本発明の幾つかの実施形態によれば、通信装置108上の既存のデータ構造の完全コピーは、バックアップ・アプリケーション124によってバックアップされることができ、続いて、増分および/または完全バックアップが行なわれることができる。各通信装置108の増分バックアップは、最後の完全または増分バックアップ以来、その通信装置108上で変更されたデータだけをコピーすることが可能である。復元は、個々のファイルから完全な媒体復元まで様々である。
本発明の実施形態にかかるバックアップ・システムは、典型的には、複数のボリューム・セットによってグループ・バックアップを行なう。ここで、ボリューム・セットは、全体イメージおよび増分バックアップからなっている。このように、各ボリューム・セット・バックアップは、全体イメージおよび変更のスナップショットを含んでいる。従来的には、この情報のいずれも、典型的にはこれらのファイルの殆どが同一であるという事実にも拘わらず、複数のボリューム・セットに亘って共有されない。同一のファイルが、各通信装置108上のファイルの大多数に相当する。バックアップ・サーバ116は、電子データのインデックスを付した記憶装置のマネージャとして働く機能によって特徴づけられ、通信装置108に応答し、特定の1つの電子データが既に記憶されているか否かをそれらの通信装置に報知する機能を有している。通信装置108は、それぞれ、バックアップ・サーバ116に対して各ファイルをユニークに識別することができ、たとえ数々の通信装置108が同一のファイルをバックアップしたとしても、1つのコピーだけが実際に記憶されることを保証する。バックアップ・アプリケーション124は、すべての通信装置108のバックアップを組み合わせ、記憶およびネットワークの要件を劇的に低減する。
ボリューム・セットの理由は、ファイルに対する権限を有している者によってのみ該ファイルが取り出されることを保証することである。従来的には、これは、バックアップ・リポジトリおよび様々なアクセス権限へのアクセスの制限によってボリューム・セット・バックアップにおいて保証される。本発明の実施形態によれば、リストア・アプリケーション120は、ファイルのファイル名、サイズ、およびユニークな署名を提供することを復元者(つまり、復元を要求する人または通信装置108)に要求することによって、ファイルへのアクセスを制限する。この情報は、内部的にソフトウェアにのみ知られており、また、以前に生成されたインベントリから取り出し可能である。したがって、バックアップ・アプリケーション124およびリストア・アプリケーション120は協働し、それによって、ユニークなファイルの1つのコピーだけを維持し、且つ、それらの通信装置108が適切な情報を通常は記述子の形態でバックアップ・サーバ116に提供することができる場合に複数の通信装置108によってそのようなファイルへのアクセスを許可する、データ記憶装置128上のグループ・ベースのファイル・バックアップ・システムを維持する。その情報がバックアップ・サーバ116へ提供される場合、要求する通信装置108は、データ記憶装置128からのファイルを復元するかそうでなければアクセスすることを許可される。当業者にとっては当然のことながら、エンタープライズ・サーバ112は、バックアップ・サーバ116によって提供されるバックアップ設備を利用することも可能である。特に、エンタープライズ・サーバ112は、それ自身のデータのバックアップを行なうか、および/または、エンタープライズ・サーバ112に接続された様々な通信装置108のバックアップを調整することが可能である。
バックアップ・サーバ116によって提供されるアプリケーションは、本発明の1つ以上の実施形態によれば、本質的にクライアント/サーバ・アプリケーションであるが、各クライアントは、先に述べたようなサーバであることができる。バックアップ・サーバ116は、すべてのバックアップのインベントリを維持し、したがって、特定のファイルを有しているか、または、有しているべき通信装置108にファイルを提供することができる。本システムが通信装置の一覧または部分的な一覧を提供する機能をサポートした場合、特定のファイルおよび部分的なファイル転送をサーバに提供する機能と共に、本システムは、分散されたファイル分散アプリケーションになる。
本質的に、バックアップ・サーバ116は、ユーザのコミュニティまたはグループに対して、ファイル記憶およびコミュニティまたはグループ内の複数のユーザ間で一般的なファイルへの共有アクセスを調整するための機能を提供する。したがって、バックアップ・サーバ116は、各通信装置108にファイル・バックアップ用のリモート位置を提供することができるが、必ずしも各通信装置108上のファイルの各々にメモリを割り付ける必要はない。むしろ、バックアップ・サーバ116は、ファイルの単一のコピーを記憶することができ、コミュニティまたはグループの各ユーザにそのファイルを提供し、それらのユーザが、提供された記述子(たとえば、ユニークなファイルの識別子およびアクセス許可を証明するクレデンシャル)に基づいてそのファイルへのアクセスを有していることを証明することができる。
データ記憶装置128は、任意の種類の公知のデータ記憶媒体または記憶媒体の組合せに対応することが可能である。データ記憶装置128は、ハード・ドライブ、光記憶ドライブ、不揮発性RAM、ストレージ・エリア・ネットワークまたはネットワーク接続ストレージのような永続的な記憶装置に対して使用される任意の媒体を含むことが可能である。
サーバ112、116、ユーザ通信装置108、および図1に示されるような他の要素の構成は、例示のみを目的とし、本発明を要素の任意の特定の配置に限定するものとして
解釈されるべきでないことが強調されるべきである。
バックアップ・サーバ116が、本発明の或る実施形態に従う必要がないことも注記しておく。むしろ、データ記憶装置128は、ローカル・リポジトリ(たとえば、通信装置108またはエンタープライズ・サーバ112に対してローカル)として実施されることが可能であり、著しい効率を依然として実現することができる。
さて、図2を参照して、通信または演算装置のような通信装置108の構成要素は、本発明の実施形態に従ってブロック図の形態で図示されている。その構成要素は、プログラム命令を実行することができるプロセッサ204を含むことが可能である。したがって、プロセッサ204は、任意の汎用のプログラム可能なプロセッサ、デジタル・シグナル・プロセッサ(DSP)、またはアプリケーション・プログラムを実行するコントローラを含むことが可能である。代わりに、プロセッサ204は、特別に構成された特定用途向け集積回路(ASIC)を含むことが可能である。プロセッサ204は、概して、通信装置108によって行なわれる様々な機能を実施するプログラム・コードを実行するように機能する。
通信装置108は、さらに、プロセッサ204によるプログラムの実行に関する使用のための、およびデータまたはプログラム命令の一時的または長期保存のためのメモリ208を備えることが可能である。メモリ208は、DRAMおよびSDRAMのような除去可能または遠隔に存在する固体メモリを含むことが可能である。プロセッサ204がコントローラを含む場合、メモリ208は、プロセッサ204に一体化されることが可能である。メモリ208は、揮発性および/または不揮発性のメモリであることが可能である。
さらに、通信装置108は、一または複数のユーザ入力212と、一または複数のユーザ出力216とを備えることが可能である。ユーザ入力212の例は、限定することなく、キーボード、キーパッド、タッチ・スクリーン、タッチ・パッド、およびマイクロホンを含んでいる。ユーザ出力216の例は、スピーカ、表示スクリーン(タッチ・スクリーン・ディスプレイを含む)、およびインジケータ灯を含むが、これらに限定されるものではない。さらに、ユーザ入力212が、ユーザ出力216と組み合わせられるか、または、ユーザ出力216と共に操作されることが可能であることは、当業者によって認識されることができる。そのような統合ユーザ入力212およびユーザ出力216の例は、ユーザに視覚情報を提示し、また、ユーザから入力選択を受信することの両方を行なうことができるタッチ・スクリーン・ディスプレイである。
通信装置108は、アプリケーション・プログラムおよび/またはデータ保存用のデータ記憶装置220を備えることも可能である。さらに、オペレーティング・システム・ソフトウェア224は、データ記憶装置220に記憶されることが可能である。データ記憶装置220は、たとえば、磁気記憶装置、固体記憶装置、光学記憶装置、論理回路、またはそのような装置の任意の組合せを含むことが可能である。当然のことながら、データ記憶装置220に維持されることが可能であるプログラムおよびデータが、データ記憶装置220の特定の実施に応じて、ソフトウェア、ファームウェア、またはハードウェア・ロジックを含むことができる。
データ記憶装置220は、バックアップ・アプリケーション228と、図1に関して記載されたバックアップ・サーバ116と同様の機能を提供するリストア・アプリケーション240とを含むことも可能である。通信装置108上に存在するバックアップ・アプリケーション228は、通信装置108からデータ記憶装置128のような遠隔の記憶先への様々なファイルおよび他の電子データをバックアップする機能を提供することが可能である。グループ・ベースのバックアップ・システムの調整を容易にするために、バックア
ップ・アプリケーション228は、スキャン・モジュール232およびファイル解析モジュール236を備えることが可能である。スキャン・モジュール232は、ファイル・データが、変更、更新、追加などされたかに関して迅速な判断をなす、ローカル・ファイルの初期スキャンを行なうように設けられている。バックアップ・アプリケーション228は、ドライブのシャドー・コピーを生成するために、選択数の記憶ドライブまたは他の記憶媒体をスキャンするためにスキャン・モジュール232を利用することが可能である。特定のドライブまたは同様の記憶媒体のスキャンによって、スキャン・モジュール232は、選択されたドライブのためのファイル・インベントリを生成することができる。ファイル・インベントリは、ドライブの現在の状態を反映し、ドライブの階層構造の記載を含むことが可能である。スキャン・モジュール232は、連続的なリアルタイム・バックアップ・ソリューションのための変更を連続的に追跡するファイル・システム・モニタとして実施されることも可能である。
スキャン・モジュール232は、選択された媒体を大まかにスキャンするように構成されている一方で、ファイル解析モジュール236は、スキャン・モジュール232恐らく変更、更新、追加などされたとして識別したファイルのより詳細な解析を行なうように構成されている。スキャン・モジュール232は、恐らく変更されたと識別された各ファイルに記述子アルゴリズムを適用するように構成されることが可能である。記述子アルゴリズムのアプリケーションは、各ファイルのユニークな記述子を生成する。本発明の或る実施形態によれば、解析モジュール236は、ファイル・データ自体に基づいた一意な英数字の文字列を含んだハッシュを生成することができる。記述子アルゴリズムは、入力として、生データと、恐らくファイルまたは該ファイルの一部分をユニークに(つまり、実質的にユニークに)識別する記述子を生成するメタデータとを含んだファイル・データを使用する。記述子アルゴリズムのアプリケーションの結果(たとえば、各ファイルまたはファイルの一部分に対応する生成されたハッシュ)は、ドライブの現在の状態について記載するのを助けるためにインベントリに追加されることも可能である。
その後、バックアップ・アプリケーション228は、記述子の更新されたインベントリまたは記述子のインベントリへの変更だけをバックアップ・サーバ116に送信することが可能であり、ここでは、バックアップ・サーバ116は、インベントリをデータ記憶装置128に既に記憶されているファイルと比較することができ、その結果、どのファイルが、そのようなファイルのバックアップを完了させるために通信装置108からバックアップ・サーバ116に送信される必要があるかを判断する。
リストア・アプリケーション240は、バックアップ・サーバ116から通信装置108へのファイルの転送を容易にするように提供されることが可能である。特に、リストア・アプリケーション240は、スキャン・モジュール232と、バックアップ・アプリケーション228に対して提供されるものと同様のファイル解析モジュール236とを利用することが可能であり、その結果、どのファイルが、復元動作中にバックアップ・サーバ116から通信装置108に転送される必要があるかを判断する。ファイルがバックアップ・サーバ116にダウンロードされる必要があると判断するためにファイルの記述子を使用するのではなく、リストア・アプリケーション240は、データ記憶装置128に既に記憶されているファイルへのアクセスを必要とするために記述子を利用する。リストア・アプリケーション240は、ローカル・メモリ(つまり、通信装置108のメモリ)に現在記憶されている任意のファイルが、要求された復元に対応する時点から変更されたか否かを判断するために、スキャン・モジュール232を利用することが可能である。スキャン・モジュール232は、ファイルのメタデータをチェックし、作成時刻を比較し、要求された復元に対応する時点にファイルの時刻を編集することが可能である。ファイルが識別された時点の後で変更されるように印を付された場合、リストア・アプリケーション240は、その修正がファイルの任意の内容に影響したか否かを判断するために、ファイ
ル解析モジュール236を利用することが可能である。ファイル解析モジュール236は、識別されたファイルの各々に記述子生成アルゴリズムを適用し、それを、識別された時点からの記述子のインベントリ履歴と比較することが可能である。その後、異なる記述子を有する任意のファイルまたはファイルの一部分は、復元動作中に置換を必要とするものとしてリストア・アプリケーション240によって識別されることが可能である。そうでなければ、ファイルまたはファイルの一部分が変更されていない場合、リストア・アプリケーション240は、そのファイルまたはファイルの一部分が、復元動作中にバックアップ・サーバから通信装置108に送信される必要がないと判断することが可能である。
バックアップ・アプリケーション228およびリストア・アプリケーション240は、専用のスキャン・モジュール232およびファイル解析モジュール236を有しているように図示されているが、当業者には、単一のスキャン・モジュール232およびファイル解析モジュール236が、データ記憶装置220内に設けられ、バックアップ・アプリケーション228およびリストア・アプリケーション240によって共有されることが可能であることが認識される。
データ記憶装置220は、通信装置108の他の機能の性能に関連して使用されるアプリケーション・プログラムおよびデータを備えることも可能である。たとえば、電話またはIP電話のような通信装置108に関連して、データ記憶装置220は、通信アプリケーション・ソフトウェアを備えることが可能である。別の例として、携帯情報端末(PDA)または汎用のコンピュータのような通信装置108は、データ記憶装置220に文書処理アプリケーションを備えることが可能である。さらに、携帯型の音楽/動画記憶および再生装置のような通信装置108は、様々な記憶されたコンテンツの再生に関するアプリケーションを備えることが可能である。
通信装置108は、一または複数の通信ネットワーク・インタフェース244を備えることも可能である。通信ネットワーク・インタフェース244の例は、ネットワーク・インタフェース・カード、モデム、有線電話通信ポート、シリアルまたはパラレルのデータ・ポート、無線周波数放送送受信器、USBポート、または他の有線または無線通信ネットワーク・インタフェースを含むが、これらに限定されるものではない。
さて、図3を参照して、ファイルを管理するために使用されるデータ構造300およびバックアップ/復元動作におけるデータ構造は、本発明の少なくとも幾つかの実施形態に従って記載される。データ構造300は、ファイル名(またはデータ構造名)フィールド304、ファイル・データ・フィールド308、記述子生成アルゴリズム・フィールド312、および記述子フィールド316を含むことが可能である。データ構造300は、通信装置108、エンタープライズ・サーバ112、バックアップ・サーバ116で、またはデータ記憶装置128内で、完全にまたは部分的に維持されることが可能である。ファイル名フィールド304は、電子ファイル名またはデータ構造識別子を記憶するために使用されることが可能である。ファイル名フィールド304は、メモリなどにおける位置のような任意の他の識別情報と共に、ファイルの生成に際して電子ファイルに提供される名前を記憶することが可能である。
ファイル・データ・フィールド308は、ファイル・データを記憶または表わすために利用されることが可能である。ファイル・データ・フィールド308に表わされることが可能であるファイル・データの非限定例は、実際のファイル・データ、記述メタデータ(たとえば、題名、要約、著者、およびキーワードのような要素を含んだ発見および識別などの目的のための資源について記述するメタデータ)、構造メタデータ(たとえば、どのように複合オブジェクトが組み立てられているか、たとえば、どのようにページが並べられ章を形成しているかを示すメタデータ、)、管理メタデータ(たとえば、資源がいつお
よびどのように生成されたか(生成および修正タイムスタンプ)、ファイル種類および他の技術情報、ならびに誰がその資源にアクセスすることができるかなど、資源を管理するのを助けるための情報を提供するメタデータ)を含んでいる。
記述子生成アルゴリズム・フィールド312は、様々なファイルに対する記述子を生成するために使用される記述子生成アルゴリズムに関するデータを含むことが可能である。本発明の少なくとも幾つかの実施形態によれば、記述子生成アルゴリズムは、すべてのファイルに一様に適用されるアルゴリズムである。通信装置108、エンタープライズ・サーバ112、およびバックアップ・サーバ116は、同様に、記述子生成アルゴリズムを一様に適用するべきであり、その結果、共通のファイルは、どのエンドポイントが記述子を生成したかに拘わらず、それに関連する同一の記述子を有している。この記述子による電子ファイルの一様な表示は、いつ特定のファイルがデータ記憶装置128に既に記憶されているかをバックアップ・サーバ116が妥当な程度の確実性で知ることを可能にする。記述子は、記憶されたファイルの単一のコピーにアクセスすることを望む通信装置108のためのクレデンシャルとして機能することも可能である。記述子が各エンドポイントで適切に生成される場合、一様な識別システムが生成され、電子データの効率的なグループ・ベースのバックアップ記憶装置を利用可能にする。利用されることが可能である記述子生成アルゴリズムの例は、限定することなく、MD5ハッシュ、SHA256、ssh256、crc−32、および本技術分野で公知の他のハッシュ生成アルゴリズムを含んでいる。記述子生成アルゴリズムは、所望のレベルのセキュリティに応じて暗号または非暗号アルゴリズムのいずれかであることが可能である。記述子生成アルゴリズム・フィールド312中には、記述子の処理に含まれ得る様々な入力を記述する追加のデータが提供されることが可能である。たとえば、記述子は、単に実際のファイル・データに基づいて生成されることがある。メタデータの一部分が、記述子生成アルゴリズムへの入力として含まれることもある。
その後、生成された記述子は、記述子フィールド316に記憶されることが可能である。上で注記したように、各電子ファイルまたはファイルの一部分は、それに関連した記述子を有することが可能である。記述子は、概して、グループ・ベースのバックアップ・システムの全体に亘る電子ファイルの共通の簡略化表現として使用される。したがって、通信装置108およびバックアップ・サーバ116は、記述子生成アルゴリズムにおける同意を使用してファイルに対する記述子を独立して生成することによって、共通のファイルを参照することができる。図4で見ることができるように、特定のファイルに対する記述子は、記述子404a−M(ここで、Mは一般に1以上である)のような数々の記述子の組合せであることが可能である。各記述子404は、共通のファイルにおけるデータの異なる部分を表わすために使用されることが可能であり、各記述子は、所定のデータの長さを表わすことが可能である。たとえば、そのメタデータによって判断されるように、ファイルが頻繁に更新されないものである場合、そのファイルは、10MBの塊に分割されることが可能であり、各塊は、それに関連したユニークな記述子を有することが可能である。代わりに、頻繁に更新されるファイルは、より粒度の大きな組の記述子を提供するために1MBの塊に分割されることが可能である。
その後、この塊の記述子は、ファイル全体を表わす組み合わされた記述子408を生成するために、通常は付加的に組み合わせられることが可能である。塊の記述子の使用は、最後にバックアップされてからファイルの一部分だけが変更された状況において有用である。ファイル解析モジュール236による解析中に、変更された塊は、それらの新しい記述子によって識別されることが可能である。それらの変更された塊は、ファイル全体の完全なバックアップを行なうためにバックアップ・サーバ116が必要とするただ1つのデータである場合がある。特に、通信装置108は、ファイル全体を送る代わりに、変更されたファイルの一部分を送信する必要だけがあることがあり、それは、バックアップ動作
を完了するのに必要な時間を低減する。
記述子の個々のインベントリは、通信装置108、エンタープライズ・サーバ112、および/またはバックアップ・サーバ116上に維持されることが可能である。これは、共通のデータ記憶装置128への様々な通信装置108に対する別個のバックアップのインベントリおよび許可、ならびにそこに記憶された共通のファイルを維持する機能を提供している。
さて、図5を参照して、グループ・ベースのバックアップ・データ構造が、本発明の少なくとも幾つかの実施形態に従って記載される。バックアップ・データ構造は、典型的には、ファイルの同一性や、それらのファイルがいつユーザ単位でバックアップされたかについての参照として、バックアップ・サーバ116に維持される。特に、バックアップ・サーバ116は、各ユーザ・アカウントのインベントリ504を維持するように設計されることが可能である。第1のインベントリ504aは、ユーザAに対応することが可能であり、第2のインベントリ504bは、ユーザBに対応することが可能であり、第3のインベントリ504cは、ユーザCに対応することが可能である。インベントリ504は、特定のユーザの単一の通信装置108に関連することが可能である。代わりに、インベントリ504は、同一のユーザに関連した異なる通信装置108からのファイルを識別するユーザのために維持されることが可能である。このように、1つの通信装置108が故障した場合、ユーザは、以前に故障した通信装置108に、その人の通信装置108のすべてからのファイルを復元するためにその人のインベントリ全体を利用することが可能である。ユーザのインベントリには、一連の記述子508が含まれることが可能である。各ユーザの一連の記述子508は、ユーザの通信装置108用に最近バックアップされた実際のファイルまたはファイルの一部分の簡略化表現である。
バックアップ・サーバ116は、さらに、共通のデータ記憶装置128に現在記憶されている一連のバックアップ・ファイル512を維持することが可能である。バックアップ・サーバ116は、記述子マッピングを通じて一連のバックアップ・ファイル512を参照することが可能である。換言すれば、ファイル・データ自身がデータ記憶装置128上に維持されることが可能であり、バックアップ・サーバ116は、その一連のバックアップ・ファイル512を一連の記述子として維持することが可能である。したがって、バックアップ・サーバ116は、どのファイルに各ユーザがアクセスしたかを判断するために、各ユーザに関連した記述子を、一連のバックアップ・ファイル512中の概略の記述子と迅速に比較することができる。したがって、バックアップ・サーバ116は、単にデータ記憶装置128内に任意のファイルの1つのコピーを維持しなければならず、どのユーザおよび/または通信装置108がファイルの1つのコピーへのアクセスを与えられたかを判断するために記述子マッピングを利用することができる。これは、単一のファイルが数々の異なる通信装置108上に記憶される状況において特に有用である。各通信装置108は、ファイルをローカルに利用することが可能であるが、データ記憶装置128上にファイルのバックアップを望む。バックアップ・サーバ116は、ファイルに対してバックアップ設備を提供することができるが、通信システム100における各コピーに対応した別個のコピーを維持する必要はない。たとえば、ユーザAは、その人の通信装置108上の記述子1に対応するファイルを有している。ユーザBは、さらに、記述子1に対応する同一のファイルを有することが可能である。記述子1に対応するファイルは、マイクロソフト・ワード(登録商標)のような一般に利用される文書処理アプリケーションであることが可能であり、ユーザ間の差異はない。一方、記述子2に対応するファイルは、ユーザAに特有のファイル(たとえば、文書処理アプリケーション用のマクロまたは設定)であることが可能であり、したがってこれもバックアップされる。ユーザAは、別のユーザが全く同一の設定を有していない限り、それらの設定にアクセスすることができる唯一のユーザになる。なぜならば、ユーザAは、記述子2をもたらすデータを持つ唯一の者であ
るからである。
さらなる例として、記述子Nに対応するファイルは、すべてのユーザに共通であるオペレーティング・システムのような基本アプリケーション、または少なくともそれらの大部分を含むことが可能である。同一のファイルの別個のコピーを複数回維持するのではなく、ファイルを持った各ユーザおよび記述子Nを生成することができる対応機能は、そのようなアクセスが復元動作中に必要である場合、バックアップからファイルにアクセスすることができる。
3つのユーザ・アカウントだけが図示されているが、当業者には、バックアップ・サーバ116が、任意の数のユーザ・バックアップ・アカウントをサポートすることが可能であることが認識される。有利に、バックアップ・アカウントを利用するユーザの数が増大するときに、複数の通信装置108上に複製ファイルを有している可能性が増加するので、システムの全体的効率は増加する。さらに、データの効率的なバックアップ、そしてその後の復元は、記述子の使用によって自動的に行なわれる。これは、バックアップ効率を増大させようとして、バックアップ中にネットワーク104を介してそのユーザがどのファイルを送りたいかを識別するためのユーザの必要性を取り除く。むしろ、バックアップ・サーバ116は、複製ファイルまたはファイルの一部分を自動的に識別し、次に、通信装置108から保存用のバックアップ・サーバ116に非複製ファイルまたはファイルの一部分を送信することを要求する。
図6を参照して、バックアップ・ルーチンは、本発明の少なくとも幾つかの実施形態に従って記載される。次の記載は、殆ど、ファイル全体およびファイル全体に対応する記述子に関するものであるが、当業者には、同様の方法が、ファイルの一部分、データ塊、データ構造、および対応する記述子に適用可能であることが認識される。本ルーチンは、1つ以上の媒体が通信装置108またはエンタープライズ・サーバ112でバックアップのために選択されたときに開始する(ステップ604)。媒体に対する典型的な選択は通信装置108またはネットワーク・ドライブのC:ドライブであることが可能である。ユーザは、さらに、媒体から除外を選択することが可能であり、それは、バックアップすることができないファイルの組である。除外は、共通の基準に基づいて定義可能である。ユーザによって定義されることが可能である除外の例は、選択された媒体上に存在する一時ファイルまたはキャッシュ・ファイルを含んでいる。勿論、ユーザは、いかなる除外を選択することも要求されるわけではない。
バックアップ用に一または複数の媒体を選択した後に、本方法は、選択された媒体をスキャンする通信装置108上のスキャン・モジュール232によって継続する(ステップ608)。このステップでは、スキャン・モジュール232は、ドライブのシャドー・コピーを生成することが可能であり、それは、ドライブのクラッシュ一貫性バージョンを、シャドー・コピーが生成された時点でそれが存在したときに読み取る機能を提供する。特に、スキャン・モジュール232は、最低限、選択された媒体上に存在する電子データ(たとえば、ファイル)と、それらのファイルがそこに存在した時間とを識別するスナップショットを生成することが可能である。選択された媒体中の様々なファイルのメタデータは、いずれかのファイルが最後のバックアップよりも最近変更されたタイムスタンプを有しているか否かを判断するためにスキャンされることが可能である。
その後、スキャン・モジュール232は、選択された媒体用のファイル・インベントリを更新することが可能である(ステップ612)。スキャン・モジュール232は、選択された媒体を再帰的に検査することが可能であり、それを最後のインベントリにあるものと比較する。選択された媒体用の前のバックアップがなかった場合、選択された媒体上のすべての電子データは、バックアップに対して新しいと考えられる。代わりに、前のバッ
クアップがあった場合、スキャン・モジュール232は、最後のバックアップから変更または追加された電子データだけを識別するように試みることが可能である。ステップ616では、スキャン・モジュール232は、データが変更または追加された選択媒体上にあるか否かを判断する。任意の変更または追加が識別された場合、スキャン・モジュール232は、変更されたまたは新しい電子データの識別によって継続する(ステップ620)。変更されたまたは新しい電子データは、ファイル名または記憶域によって識別されることが可能である。媒体から削除された電子データは、変更されたと見なされることも可能である。変更を識別することの一部として、スキャン・モジュール232は、ファイル名に基づいてそのファイルのインベントリを更新することが可能である。
媒体上の様々なファイルおよび他の電子データへの変更の識別に続いて、バックアップ・アプリケーション228は、データの各々の識別された部分に所定の記述子生成アルゴリズムを適用するためにファイル解析モジュール236を使用する(ステップ624)。換言すれば、ファイル解析モジュール236は、そのデータの一部分に対応する新しい記述子を生成するために、変更されたまたは新しいと識別された任意のファイル、ファイルの一部分、データの塊、またはデータ構造に記述子生成アルゴリズムを適用する。
記述子生成アルゴリズムがデータの各々の識別された部分に適切に適用されると、ファイル解析モジュール236は、記述子のインベントリをローカルで更新することによって継続する(ステップ628)。更新された記述子のインベントリは、変更または追加されたデータ用の新しい記述子のほか、選択された媒体から削除されたかまたは取り除かれたファイルのための空きを含むことが可能である。記述子生成アルゴリズムのアプリケーションの結果に加えて、ファイルの塊のサイズを識別する印と、対応する記述子とは、更新された記述子のインベントリに含まれることがある。記述子のインベントリを更新しつつ、バックアップ・アプリケーション228は、記述子のインベントリを圧縮する(ステップ632)。任意の公知の種類のファイル圧縮アルゴリズムが、このステップで使用されることが可能である。記述子のインベントリの圧縮は、通信ネットワーク104を通じて記述子のインベントリを送信するのに必要な、帯域幅の量およびその後のアップロード時間を低減するのを助ける。
その後、圧縮した記述子のインベントリは、通信ネットワーク104を通じて送信され、バックアップ・サーバ116にアップロードされる(ステップ636)。続いて、記述子のインベントリは、バックアップ・サーバ116によって伸張され、一連の記述子508中のユーザのインベントリ504の一部として記憶される。一連の記述子508の更新に加えて、バックアップ・サーバ116は、さらに、バックアップが将来の復元動作の実行のために生じた時刻を記録することが可能である。
その後、バックアップ・サーバ116は、そのバックアップ・アプリケーション124を利用し、受信した記述子のインベントリを一連のバックアップ・ファイル512中の記述子と比較することが可能である(ステップ644)。この比較ステップでは、その後、バックアップ・アプリケーション124は、対応するファイル、ファイルの一部分、データの塊、またはデータ構造が、データ記憶装置128に既に記憶されているかを、受信した記述子のインベントリ中の各記述子に対して判断する。比較ステップに基づいて、バックアップ・アプリケーション124は、データ記憶装置128に未だ記憶されない電子データ部分を識別する(ステップ648)。その後、バックアップ・アプリケーション124は、アップロードされる必要のある一連のデータ部分(たとえば、一連のファイル)を生成する。なぜならば、それらがデータ記憶装置128上に現在ないからである。その後、通常は記述子の形態である一連のデータ部分は、通信装置108に送り返される(ステップ652)。
通信装置108は、一連の記述子を受信し、バックアップ動作を完了するためにバックアップ・サーバ116にアップロードされる必要のある、対応するファイル、ファイルの一部分、データの塊、またはデータ構造を識別する(ステップ656)。その後、通信装置108は、バックアップ・アプリケーション228を利用し、識別された電子データを圧縮する(ステップ660)。前に注記したように、このステップ中に利用される圧縮アルゴリズムは、本技術分野で公知の任意の圧縮アルゴリズムに対応することが可能である。さらに、圧縮は、ファイル送信サイズを低減するのを助けるものであるが、省略されてもよい。
その後、圧縮した電子データは、それらの対応する記述子と共に、バックアップ・サーバ116にアップロードされる(ステップ664)。記述子を比較するステップは、通信装置108からバックアップ・サーバ116にファイルをすべて単にアップロードすることに対立するものとして、付加的な処理を必要とする。しかしながら、記述子のこの予備チェックを行なうことによって、バックアップ・サーバ116が殆どのファイルのコピーを有している場合、送信されるデータ量は大幅に低減される。ファイル・データが、特により大きなアプリケーションに対して、多くの場合、非常に大きいサイズを有することがあるので、送信に必要なデータ量のいかなる低減も、バックアップ動作の速度を大幅に増大させることができる。
通信装置108から電子データを受信する際、バックアップ・サーバ116は、圧縮アルゴリズムの逆のアルゴリズムを利用することによって随意にデータを伸張することが可能である(ステップ668)。代わりに、電子データは、保存のためにその圧縮したフォーマットで維持されることが可能であり、その結果、必要な記憶容量が低減される。その後、バックアップ・サーバ116は、データ記憶装置128内の電子データを、一連のバックアップ・ファイル512中の記述子におけるそれらの対応する記述子と共に記憶する(ステップ672)。その後、バックアップ・サーバ116は、ユーザの記述子のインベントリ(つまり、通信装置108上のすべてのファイルに対応する記述子のすべて)をバックアップ完了の時刻と共に記憶する(ステップ676)。ユーザの記述子のインベントリの記憶に続いて、本方法は終了する(ステップ680)。
ステップ616に戻って参照して、バックアップ・アプリケーション228が、選択された媒体に変更がなかったと判断した場合(たとえば、ファイルを変更、追加、または削除することによる)、本方法は、ステップ676にスキップし、ユーザ記述子のインベントリが、同一のものとして維持され、新しいバックアップ時刻と共に記憶される。
さて、図7を参照して、復元/回復ルーチンが、本発明の少なくとも幾つかの実施形態に従って記載される。次の記載は、殆どファイル全体およびファイル全体に対応する記述子に関してのものであるが、当業者には、同様の方法がファイルの一部分、データ塊、データ構造、および対応する記述子に適用可能であることが認識される。回復ルーチンは、復元用のバックアップのインベントリの選択から開始する(ステップ704)。このステップでは、ユーザは、それらのユーザがそれらの通信装置108を復元させることを望む時点を本質的に選択する。これは、特定の通信装置108用に1つのバックアップだけがある場合に自動的に選択されることが可能である。そうでなければ、複数のバックアップがある場合、ユーザは、所望の時点に対応するバックアップのうちの1つを選択することができる。インベントリまたは一連のインベントリがユーザの通信装置に存在しない場合、それは、バックアップ・サーバ116から取り出されることが可能である。
その後、ユーザは、復元用の対象媒体を選択することができる(ステップ708)。典型的な選択は、通信装置108のC:ドライブ、またはエンタープライズ・サーバ112に関連した特定のネットワーク・ドライブを復元することである。
対象媒体が選択された後、通信装置108のリストア・アプリケーション240は、選択された対象媒体をスキャンし、選択された媒体をインベントリと比較する(ステップ712)。スキャン・ステップでは、リストア・アプリケーション240は、スキャン・モジュール232を利用することが可能であり、これによって、媒体上に記憶された様々なファイルのメタデータをチェックし、ファイルまたは他の電子データが、選択された時点よりも最近の更新されたタイムスタンプを有しているか否かを判断する。更新されたタイムスタンプが選択された時点よりも古い場合、特定のファイルまたは電子データを復元する必要はない場合がある。なぜならば、それが、バックアップ・ステップ中に行なった形態で通信装置108上に既に存在するからである。しかしながら、スキャン・モジュール232が、ファイルまたは電子データの幾つかの変更、追加、または削除が、識別された時点から生じていると判断した場合、リストア・アプリケーション240は、最後の媒体インベントリを、選択された媒体自体と比較する。比較ステップに基づいて、リストア・アプリケーション240は、媒体とインベントリとの間の差があるか否かを判断する(ステップ720)。最後のインベントリが生じてから媒体に生じ得る変更は、ファイル、ファイルの一部分、データの塊、またはデータ構造を媒体から変更、追加、または削除することを含むことが可能である。
何らかの差が検出された場合、本方法は、インベントリから、変更された電子データおよびその対応する記述子を識別することによって継続する(ステップ724)。より詳しくは、スキャンおよび比較ステップの後に、タイムスタンプの差により潜在的に異なるものとして識別される電子データが、記述子を生成すると解析される。記述子が前の記述子とは異なる場合、前の記述子は、復元するべきファイルの一覧に追加される。これは、或るシナリオにおいて大量のデータを復元する必要性を排除することができる。たとえば、別の通信装置108上の通信装置108の特定のバックアップの復元中に、そのような特徴は有用であることがある。しかしながら、殆どの電子データは、その前のバックアップから通常は変わらず、そのようなデータは、スキャン・ステップでなければ、その後、記述子の比較によって変化なしと識別される。インベントリからの記述子は、最後のバックアップが生じたときの電子データを表わしている。その後、識別された時点から変化したそれらのファイルまたは電子データは、復元用に印を付される(ステップ728)。特に、本発明の或る実施形態によれば、電子データに対応する記述子が復元用に印を付される。
記述子が復元用に印を付されると、リストア・アプリケーション240は、インベントリ中のいかなるディレクトリも対象媒体の中に存在しないか否かを判断することによって継続する(ステップ732)。インベントリ中に任意のディレクトリがあり、媒体中にはない場合、リストア・アプリケーション240は、対象媒体にそれらのディレクトリを生成する(ステップ736)。そのようなディレクトリを生成するのに必要な情報は、インベントリの構造から提供されることが可能である。本発明の構成およびインベントリ中のデータに応じて、既存のディレクトリおよびファイルは、そのままにしておかれ、可能であれば、インベントリによって定義される構造を反映するために名前を変更されるかまたは削除される。必要なディレクトリの生成の後、または、そのような生成が必要ではない場合、リストア・アプリケーション240は、バックアップ・サーバが電子データを取り出すことを要求する(ステップ740)。このステップでは、リストア・アプリケーション240は、通信装置108自体または幾つかの他のローカルの媒体上の最も新しいバックアップを最初に調べることが可能である。同一のまたは論理的に類似の記述子が存在し、同一のファイルがローカルの通信装置108にローカルに存在することを示している場合、電子データのコピーは、バックアップ・サーバ116ではなくローカル・コピーから行われる。この最適化は、別のマシンへ続いてインストールされるドライブにバックアップを復元するために別個のマシンが使用されている場合に、非常に有効である。これは、
たとえば、オペレーティング・システムが同一または類似であると仮定して、オペレーティング・システムのダウンロードの必要性を排除する。電子データがローカルで利用可能でない場合、リストア・アプリケーション240は、バックアップ・サーバ116へ復元し戻すために印を付された一連の記述子を提供する。バックアップ・サーバ116は、要求された電子データをデータ記憶装置128から取り出すためにファイル・マッピングへの記述子を利用する。バックアップ・サーバ116は、通信装置108が、それらのファイルおよび通信装置108に関連したインベントリに一覧された他の電子データだけにアクセスすることを可能にすることができる。通信装置108が対応する記述子を有することがない、したがって生成することができないファイルは、データ記憶装置128内で安全に維持される。したがって、このステップの記述子は、通信装置108から前にバックアップされたファイルまたは電子データへのクレデンシャルとして機能する。
バックアップ・サーバ116が、識別された電子データを取り出した後、バックアップ・サーバ116は、要求している通信装置108に電子データをダウンロードする(ステップ748)。その後、受信データは、通信装置108によって受信および伸張され、続いて、対象媒体に集められる(ステップ752)。その後、リストア・アプリケーション240は、対象媒体上の電子データのすべてを記憶する(ステップ756)。このステップでは、ファイルは、可能であれば、その元の位置に移動され、すべてのメタデータは、タイムスタンプ、属性、アクセス制御一覧(ACL)などを含むようにファイナライズされる。電子データを組み立てて対象媒体上にそれを記憶することに加えて、リストア・アプリケーション240は、電子データ用のメタデータを設定する(ステップ760)。対象媒体上になかった(つまり、ステップ736の対象媒体に追加された)インベントリ中のディレクトリは、リストア・アプリケーション240によってそれらのメタデータを復元させることも可能である。対象媒体上に現在存在するがインベントリにないファイルおよびディレクトリは、随意に、ユーザ設定に応じて、名前を変更されるか、削除されるか、修正されるか、またはそのままにされることが可能である。
対象媒体の再アセンブリおよび復元に続いて、リストア・アプリケーション240は、現在復元することができるファイルまたは他の電子データがあるか否かを判断する(ステップ764)。そのような状況は、典型的には、ファイルが現在開いているかまたは別のアプリケーションによって使用中である場合に生じる。そのような状況が存在する場合、リストア・アプリケーション240は、リブートの際に復元用のそのようなファイルおよび電子データを識別および設定し、バックアップ・サーバ116から受信した対応するファイルおよび電子データは、システム・リブートまで一時データ記憶領域に維持される(ステップ768)。現在復元することができないファイルおよび電子データがリブートの際に復元用に設定された後、または、そのようなファイルがない場合、本方法は終了する(ステップ772)。
本発明の付加的な実施形態として、保護された媒体のインベントリを生成することができる。このインベントリは、対応する記述子を備えたすべてのファイルの一覧である。ファイル記述子は、ファイル長、ACLまたはファイル権限、完全パスおよびファイル名、ファイル署名、生成タイムスタンプ、修正タイムスタンプ、および最後にアクセスしたタイムスタンプのようなファイル情報を含むことが可能である。ファイル記述子は、実際には、md5 ssh256およびファイル長のような複数の種類の暗号アルゴリズムを使用した複数のファイル記述子からなることが可能である。記述子は、ファイルの独自性を論理的に保証する。したがって、同一の長さの2つの異なるファイルおよび使用可能なデータは、それらのファイルが幾つかの小さな差を有する限り、論理的な程度の保証と共に同一の署名を有しない。インベントリは、ローカルおよびサーバ上の両方に記憶される。
本発明の代替の実施形態によれば、新しいインベントリが生成されるときに、その生成
は、完全な生成であることができ、バックアップ構成全体は、インベントリ生成におけるようになされる。この生成は、すべてのファイルの一覧を通じて繰り返されることによって生じることができ、新しい署名を生成するだけであり、ここでは、修正タイムスタンプは、変更されている。この生成は、オペレーティング・システムがそのようなAPIを提供する場合、保護された媒体へのすべてのファイル書き込みのアプリケーションによって維持されるログを通じて生じることができる。この新しいインベントリは、最後の完全なインベントリおよびそれに続くすべての増分のインベントリと比較されることができる。これは、変更されたすべての保護されたファイルの部分集合を提供する。その後、このインベントリは、バックアップ・サーバ116上のマスタ・インベントリと比較されることができる。署名(つまり、記述子)が存在する場合、ファイルはバックアップされない。記述子がサーバに存在しない場合、ファイルは圧縮され、サーバ上にバックアップされる。
幾つかの近代的なオペレーティング・システムは、ファイル・システムの変更のアプリケーションに報知するためのAPIを提供する。オペレーティング・システムがそのようなAPIを提供する場合、通信装置108は、リアルタイムの増分バックアップを行なう機能を提供することができる。オペレーティング・システムが、保護されたファイルに書き込みが行なわれ、続いてそのファイルが閉じられたことを通信装置108に報知したとき、クライアントは、ファイルを解析し、そして、記述子が存在し、ファイルがバックアップされていなければ、バックアップ・サーバ116上のマスタ・インベントリをチェックする。記述子がサーバに存在しない場合、ファイルは、圧縮され、サーバ上にバックアップされる。その後、リアルタイムの増分ログが、新しい解析に付与される。
ユーザは、前のインベントリから復元するべきファイルを選択することが可能である。その後、本システムは、ファイルが存在しないかをチェックし、ファイルが存在する場合、ファイルは、そのファイルの記述子を提供するクライアントによってサーバから取り出される。ファイルが存在する場合、記述子がチェックされる。記述子が一致しない場合、ファイルは、そのファイルの記述子の提供によってサーバから取り出される。記述子がそのバージョンと一致する場合、ファイルは、記述子の提供によってサーバから取り出され、復元される。その後、ファイルはビット単位で比較され、それらが一致しない場合、両方がさらなる解析用のエラー・トラッキング領域にアップロードされる。
完全なまたは複数のファイル復元は、選択されたインベントリまたは部分集合を経て、個々の復元におけるように各ファイルを復元する。
或るファイルは、バックアップするのが特に困難であることがある。これらのファイルは、典型的には、特別のオペレーティング・システム・ファイルまたはデータベース・データ・ファイルである。スワップ・ファイル、レジストリ、およびログのようなオペレーティング・システム・ファイルは、バックアップが難しい。なぜならば、それらが通常は大きいか、または揮発性が大きいか、またはその両方であるからである。データベース・ファイルは、オペレーティング・システム・ファイルと同じ理由でバックアップが難しく、揮発性の問題は、典型的には、複数のファイルに及ぶ。これらの問題は、様々なオペレーティング・システムおよびデータベースAPIによって扱われる。これらのAPIは、通常はOSレベルでスクリプトされることができ、保護されたディレクトリに一貫性のあるデータをコピーする。その後、実際のファイルは、除外される。理想的には、これらのAPIは、一貫性を保証するために使用される。代わりに、本システムは、個々のファイルおよびファイルのグループの一貫性のあるイメージを得るための幾つかの技術を利用する。その場合、ファイルは、そのファイルまたはファイルの組をバックアップする処理において修正される。1つの技術は、ローカルにファイルをコピーし、記述子を二重確認すること。この技術は、ファイルが変化しておらず一貫性があることを保証する。別の技術は、ファイルまたはファイルのグループをコピーし、各ファイルをブロックに論理上分け
ることであり、各ブロックは、記述子によって確認される。コピー・ブロックがソース・ブロックと一致しない場合、そのブロックは、再びコピーされ、記述子の確認は、最初からまた始められる。記述子がすべて一致すると、コピーには一貫性がある。ファイル揮発性のために一貫性のあるコピーを得られない場合、ファイルまたはファイルの組のバックアップは中止される。この技術は、ログ・ファイルおよび揮発性の低いデータベースに対してはうまくいく。別の技術は、ファイル・システム・モニタリングを利用し、それは、前の技術のようなものであり、ファイルまたはファイルのグループをコピーし、各ファイルをブロックに論理上分けることであり、各ブロックは、記述子によって確認される。ブロックを再びコピーする代わりに、すべての書き込みは、コピーが完了した直後の時点まで、遮られ、コピーされたブロック上で実行される。これは、そのコピーに一貫性があることを保証する。
本発明の1つ以上の実施形態にかかるバックアップ・コミュニティは、特定のアプリケーションに属するものとしてファイルにフラグを設定することができる。これは、スナップショット・レベルおよびファイル・レベルにある。名称およびセキュリティ上のレベルのような他の情報である。コミュニティ・ユーザは、これらの設定を個々に遡及して設定することができ、グループの合意や個々のコメントが利用可能になる。これによって、コミュニティは、ファイルの有効性を判断し、どのファイルがコミュニティ・フィードバックに基づいているかを迅速に確認することができる。このように、特定のOSリビジョンを得るためにマルウェアおよびスパイウェアや適切なファイルが識別される。以前にベンダーによって不可能だったかまたはサポートされていなかったロールバックアップグレードが可能である。
バックアップの組を共有することができるので、このシステムは、P2Pアプリケーションになることができる。個々の署名が検索可能な形式で共有され、ポストされる場合には、いかなるファイルも、検索することができる人であれば誰でも共有することができ、アクセス可能である。
上記のフローチャートは、特定のイベントのシーケンスに関して議論されているが、このシーケンスへの変更が、本発明の動作に物質的に影響することなく生じることができることは認識されるべきである。さらに、正確なイベントのシーケンスが典型的な実施形態において述べられるように生じる必要はない。本明細書に例示される典型的な技術は、特に図示の実施形態に限定されないが、他の典型的な実施形態によって利用されることもでき、各々の記載された特徴は、個々に且つ別々に請求可能である。
さらに、この発明のシステム、方法、およびプロトコルは、特殊目的のコンピュータ、プログラムされたマイクロプロセッサまたはマイクロコントローラおよび周辺集積回路要素、ASICまたは他の集積回路、デジタル・シグナル・プロセッサ、個別素子回路のような配線接続電子または論理回路、PLD、PLA、FPGA、PALのようなプログラム可能論理装置、電話のような通信装置、任意の比較可能な手段などに実装されることができる。一般に、本明細書に例示される方法を順番に実施することができる状態機械を実装することができる任意の装置は、この発明にかかる様々な通信方法、プロトコルおよび技術を実施するために使用されることができる。
さらに、開示された方法は、様々なコンピュータまたはワークステーションのプラットフォーム上で使用されることができるポータブル・ソース・コードを提供するオブジェクトまたはオブジェクト指向のソフトウェア開発環境を使用するソフトウェアに容易に実施されることが可能である。代わりに、開示されたシステムは、標準論理回路またはVLSI設計を使用したハードウェアに部分的または完全に実装されることが可能である。ソフトウェアまたはハードウェアがこの発明にかかるシステムを実施するために使用されるか
否かは、本システムの速度および/または効率要件に依存しており、特定の機能、および特定のソフトウェアもしくはハードウェア・システムまたはマイクロプロセッサもしくはマイクロコンピュータ装置が利用される。本明細書に例示される通信システム、方法、およびプロトコルは、本明細書に提供される機能的な記載から、且つ、コンピュータおよびデータ記憶の技術分野の一般的な基礎知識と共に、当業者によって公知またはその後開発された任意のシステムまたは構造、装置および/またはソフトウェアを使用したハードウェアおよび/またはソフトウェアに容易に実装されることができる。
本発明の或る実施形態にかかる通信システムを図示するブロック図。 本発明の或る実施形態にかかる通信装置を図示するブロック図。 本発明の或る実施形態に従って採用されたデータ構造の論理図。 本発明の或る実施形態に従って利用される記述子の例を示す図。 本発明の或る実施形態に従って採用されたグループ・ベースのバックアップ・データ構造の図。 本発明の或る実施形態にかかるバックアップ・ルーチンの態様を図示するフローチャート。 本発明の或る実施形態にかかる復元ルーチンの態様を図示するフローチャート。

Claims (15)

  1. 電子データ・バックアップ・システムを管理する方法において
    第1の遠隔記憶媒体上に記憶された電子データの第1のインベントリを受信する工程であって、電子データは第1の遠隔記憶媒体からバックアップされる実際のファイル・データを含、第1のインベントリは1つ以上の記述子を含、前記1つ以上の記述子は、前記実際のファイル・データに基づき算出される暗号署名を含み、バックアップされる電子データは該暗号署名によってユニークに識別される、前記工程と、
    第1のインベントリの前記1つ以上の記述子を、バックアップ・データ記憶媒体上に記憶された電子データの第2のインベントリに関連した一連の記述子と比較する工程であって、電子データの第2のインベントリは、第1の遠隔記憶媒体と異なる記憶媒体を含む複数の記憶媒体からの共有される電子データを含み、第1のインベントリの前記1つ以上の記述子は、第1の遠隔記憶媒体と異なる記憶媒体によって前記バックアップ・データ記憶媒体上に記憶されるデータに少なくとも部分的に対応する第2のインベントリの記述子と比較される前記工程と、
    第1のインベントリの前記1つ以上の記述子のうちの第1の記述子が、第2のインベントリに関連した一連の記述子のうちの第2の記述子と実質的に一致することを判断する工程と、
    第1の記述子に関連した電子データが前記バックアップ・データ記憶媒体に既に記憶されていることを第1の遠隔記憶媒体に報知する工程とを含む方法。
  2. 第1のインベントリの前記1つ以上の記述子は、第1の遠隔記憶媒体上にあるファイルおよびデータ構造のうちの1つ以上を実質的にユニークに識別する請求項1記載の方法。
  3. 前記バックアップ・データ記憶媒体へ送信される一連の電子データから第1の記述子に関連した電子データを削除する工程と、第1の遠隔記憶媒体から前記バックアップ・データ記憶媒体に電子データを送信する工程とをさらに含み、該送信される電子データは第1の記述子に関連した電子データを除いた第1のインベントリからの電子データを含んでいる請求項1記載の方法。
  4. 前記バックアップ・データ記憶媒体上に記憶され、第2の記述子に関連した電子データ
    は、第1の遠隔記憶媒体と異なる第2の遠隔記憶媒体のバックアップ動作中に前記バックアップ・データ記憶媒体上に元々記憶されていたデータを含んでおり、第1のユーザは第1の遠隔記憶媒体に関連し、別の第2のユーザは第2の遠隔記憶媒体に関連している請求項1記載の方法。
  5. 第2の記述子に関連した電子データの単一のコピーは、複数の異なるデータ記憶媒体による使用のために前記バックアップ・データ記憶媒体上に維持され、第2の記述子に関連した電子データへのアクセスは、前記バックアップ・データ記憶媒体に第1の記述子を提供するデータ記憶媒体に限られる請求項1記載の方法。
  6. 第1の記述子および第2の記述子は、共通の記述子生成アルゴリズムと、該共通の記述子生成アルゴリズムへの共通の入力とを使用して生成され、該共通の入力は、前記実際のファイル・データおよびメタデータの両方を含んでいる請求項1記載の方法。
  7. 第1の記述子に関連した電子データは、バイト単位で測定される長さを有する電子ファイルまたはデータ構造のうちの1つ以上を含んでいる請求項6記載の方法。
  8. 第1の記述子は2バイト以上の長さを含み、前記記述子生成アルゴリズムは、暗号アルゴリズムおよび非暗号アルゴリズムのうちの1つ以上を含んでいる請求項6記載の方法。
  9. 第3の遠隔記憶媒体から要求を受信して復元動作を行なう工程と、
    第3の遠隔記憶媒体用のバックアップのインベントリを参照する工程であって、第3の遠隔記憶媒体用のバックアップのインベントリは、前記要求を受信して復元動作を行なう前の時点で第3の遠隔記憶媒体上にあった電子データに関連した一連の記述子を含む前記工程と、
    第3の遠隔記憶媒体に関連した前記一連の記述子中の記述子と一致する記述子を有する選択された電子データを前記バックアップ・データ記憶媒体から取り出す工程と、
    第3の遠隔記憶媒体へ前記選択された電子データを提供する工程と、
    第3の遠隔記憶媒体から第2のインベントリを受信する工程であって、第3の遠隔記憶媒体用の第2のインベントリは、第3の遠隔記憶媒体上に現在ある電子データに関連した一連の記述子を含む前記工程と、
    第3の遠隔記憶媒体へ前記選択された電子データを提供する前に、前記選択された電子データから第3の遠隔記憶媒体上に現在ある電子データを削除する工程とをさらに含む請求項1記載の方法。
  10. 前記選択された電子データからの1つ以上の電子ファイルは、第3の遠隔記憶媒体以外の遠隔記憶媒体によって前記バックアップ・データ記憶媒体に元々アップロードされていたものである請求項9記載の方法。
  11. 請求項1記載の方法を実施するためのプロセッサ実行可能命令を含んだコンピュータ可読媒体。
  12. 電子データ・バックアップ・システムであって、
    複数の遠隔記憶媒体用の第1組の電子データを記憶する手段と、そのうち同複数の遠隔記憶媒体のうちの2つ以上は異なるユーザに関連していることと、
    第2組の電子データをバックアップする要求を第1の遠隔記憶媒体から受信する手段と、
    第1組の電子データ少なくとも第1の電子ファイルの記述子と第2組の電子データの全ての記述子とを比較することによって、同少なくとも第1の電子ファイルが第1組の電子データおよび第2組の電子データ中にあることを判断する手段と、第1の電子ファイル
    実際のファイル・データを含むことと、前記記述子は第1の電子ファイルの前記実際のファイル・データに基づき算出される暗号署名を含むことと、前実際のファイル・データは前記暗号署名によってユニークに識別されることと、
    第1の遠隔記憶媒体と異なる第2の遠隔記憶媒体によってバックアップされているので前記少なくとも第1の電子ファイルが第1組の電子データ中に既に存在することを第1の遠隔記憶媒体に報知する手段と、
    前記少なくとも第1の電子ファイルを除いた第2組の電子データに関連した電子ファイルを第1の遠隔記憶媒体から第1組の電子データを記憶する手段へ転送する手段と、
    前記少なくとも第1の電子ファイルを除いた第2組の電子データに関連した電子ファイルを第1組の電子データを記憶する手段に追加する手段とを備えるシステム。
  13. 前記複数の遠隔記憶媒体の一部が第2組の電子データに関連した電子ファイルにアクセスを行うことを可能とする手段をさらに備え、前記複数の遠隔記憶媒体の一部はアクセスを獲得する前に第2組の電子データに関連した電子ファイルに対する記述子を提供する請求項12記載のシステム。
  14. 第2組の電子データに関連した電子ファイルに対する記述子は、前記電子ファイルを実質的にユニークに識別する請求項13記載のシステム。
  15. 前記記述子は、前記電子ファイルからの実際のファイル・データおよびメタデータのうちの少なくとも1つを入力として利用する所定の記述子生成アルゴリズムを使用して生成された英数字の文字列を含んでいる請求項13記載のシステム。
JP2009510109A 2006-05-05 2007-05-04 グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置 Active JP5204099B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US74660706P 2006-05-05 2006-05-05
US60/746,607 2006-05-05
PCT/US2007/068281 WO2007131190A2 (en) 2006-05-05 2007-05-04 Group based complete and incremental computer file backup system, process and apparatus

Publications (3)

Publication Number Publication Date
JP2009536418A JP2009536418A (ja) 2009-10-08
JP2009536418A5 JP2009536418A5 (ja) 2010-06-24
JP5204099B2 true JP5204099B2 (ja) 2013-06-05

Family

ID=38668596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009510109A Active JP5204099B2 (ja) 2006-05-05 2007-05-04 グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置

Country Status (7)

Country Link
US (5) US8051043B2 (ja)
EP (2) EP3336707A1 (ja)
JP (1) JP5204099B2 (ja)
KR (1) KR101381551B1 (ja)
AU (1) AU2007247939B2 (ja)
CA (1) CA2651323C (ja)
WO (1) WO2007131190A2 (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8346733B2 (en) 2006-12-22 2013-01-01 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library
US7603518B2 (en) 2005-12-19 2009-10-13 Commvault Systems, Inc. System and method for improved media identification in a storage device
WO2004090789A2 (en) 2003-04-03 2004-10-21 Commvault Systems, Inc. System and method for extended media retention
WO2004090742A1 (en) 2003-04-03 2004-10-21 Commvault Systems, Inc. System and method for dynamically sharing storage volumes in a computer network
US7765369B1 (en) 2004-11-05 2010-07-27 Commvault Systems, Inc. Method and system for selectively deleting stored data
US8478755B2 (en) * 2006-04-20 2013-07-02 Microsoft Corporation Sorting large data sets
US7441092B2 (en) * 2006-04-20 2008-10-21 Microsoft Corporation Multi-client cluster-based backup and restore
EP3336707A1 (en) 2006-05-05 2018-06-20 Hybir Inc. Group based complete and incremental computer file backup system, process and apparatus
US20080016127A1 (en) * 2006-06-30 2008-01-17 Microsoft Corporation Utilizing software for backing up and recovering data
JP2008026943A (ja) * 2006-07-18 2008-02-07 Ricoh Co Ltd 編集処理装置、編集処理装置の制御方法、プログラムおよび記録媒体
US7539783B2 (en) 2006-09-22 2009-05-26 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library, including removable media
US7831566B2 (en) 2006-12-22 2010-11-09 Commvault Systems, Inc. Systems and methods of hierarchical storage management, such as global management of storage operations
JP4277916B2 (ja) * 2007-04-06 2009-06-10 キヤノン株式会社 文書管理システムおよびその制御方法
KR20090017170A (ko) * 2007-08-14 2009-02-18 삼성전자주식회사 미디어 파일 관리 방법 및 장치
US8706976B2 (en) 2007-08-30 2014-04-22 Commvault Systems, Inc. Parallel access virtual tape library and drives
US8170987B2 (en) 2007-10-31 2012-05-01 At&T Intellectual Property I, L.P. Methods, systems and computer program products for automatically identifying and backing up user device content
US7912986B2 (en) * 2008-02-25 2011-03-22 Simdesk Technologies Secure block read and write protocol for remotely stored files
US9766983B2 (en) 2008-03-05 2017-09-19 Ca, Inc. Proximity and in-memory map based signature searching for duplicate data
JP4481338B2 (ja) * 2008-03-28 2010-06-16 株式会社日立製作所 バックアップシステム、ストレージ装置及びデータのバックアップ方法
US20100070466A1 (en) 2008-09-15 2010-03-18 Anand Prahlad Data transfer techniques within data storage devices, such as network attached storage performing data migration
JP5414223B2 (ja) * 2008-09-16 2014-02-12 株式会社日立ソリューションズ インターネットバックアップにおける転送データ管理システム
US8620845B2 (en) * 2008-09-24 2013-12-31 Timothy John Stoakes Identifying application metadata in a backup stream
US8510800B2 (en) 2008-10-27 2013-08-13 Ganz Temporary user account for a virtual world website
US9720782B2 (en) * 2008-12-08 2017-08-01 Microsoft Technology Licensing, Llc Authenticating a backup image with bifurcated storage
US8055614B1 (en) * 2008-12-23 2011-11-08 Symantec Corporation Method and apparatus for providing single instance restoration of data files
US8788831B2 (en) * 2009-03-20 2014-07-22 Barracuda Networks, Inc. More elegant exastore apparatus and method of operation
US8805953B2 (en) * 2009-04-03 2014-08-12 Microsoft Corporation Differential file and system restores from peers and the cloud
US8261126B2 (en) 2009-04-03 2012-09-04 Microsoft Corporation Bare metal machine recovery from the cloud
US20100257403A1 (en) * 2009-04-03 2010-10-07 Microsoft Corporation Restoration of a system from a set of full and partial delta system snapshots across a distributed system
US8423957B2 (en) 2009-08-13 2013-04-16 International Business Machines Corporation Using the z/OS load module system status index to distinguish product tag files
JP2011048723A (ja) * 2009-08-28 2011-03-10 Fuji Xerox Co Ltd 情報処理プログラム及び情報処理装置
CN101969459B (zh) * 2009-09-30 2013-07-10 突触计算机系统(上海)有限公司 数据块分布控制方法及其装置
US9536109B2 (en) * 2009-10-21 2017-01-03 International Business Machines Corporation Method and system for administering a secure data repository
US8140647B1 (en) * 2009-11-17 2012-03-20 Applied Micro Circuits Corporation System and method for accelerated data uploading
US9158653B2 (en) 2010-03-21 2015-10-13 Hewlett-Packard Development Company, L.P. Determining impact of virtual storage backup jobs
US9009724B2 (en) 2010-09-24 2015-04-14 Hewlett-Packard Development Company, L.P. Load balancing data access in virtualized storage nodes
US9244779B2 (en) 2010-09-30 2016-01-26 Commvault Systems, Inc. Data recovery operations, such as recovery from modified network data management protocol data
WO2012044924A1 (en) * 2010-09-30 2012-04-05 Verisign, Inc. System for configurable reporting of network data and related method
US8516270B2 (en) * 2010-11-18 2013-08-20 Apple Inc. Incremental and bulk storage system
US20120158553A1 (en) * 2010-12-17 2012-06-21 Yodchai Sudhidhanakul Method and System for Inventory Management Over a Peer-To-Peer Network
JP5786701B2 (ja) * 2011-12-16 2015-09-30 富士通株式会社 修復システム、修復方法及びプログラム
US9524487B1 (en) * 2012-03-15 2016-12-20 Google Inc. System and methods for detecting temporal music trends from online services
AU2013202553B2 (en) 2012-03-30 2015-10-01 Commvault Systems, Inc. Information management of mobile device data
EP2680487B1 (en) * 2012-06-29 2019-04-10 Orange Secured cloud data storage, distribution and restoration among multiple devices of a user
US10635128B1 (en) * 2012-10-29 2020-04-28 Veritas Technologies Llc Storing backup data using snapshots
US8977594B2 (en) * 2012-12-21 2015-03-10 Zetta Inc. Systems and methods for state consistent replication
US9152686B2 (en) * 2012-12-21 2015-10-06 Zetta Inc. Asynchronous replication correctness validation
US8977598B2 (en) * 2012-12-21 2015-03-10 Zetta Inc. Systems and methods for on-line backup and disaster recovery with local copy
US9069799B2 (en) 2012-12-27 2015-06-30 Commvault Systems, Inc. Restoration of centralized data storage manager, such as data storage manager in a hierarchical data storage system
US9361310B1 (en) * 2012-12-28 2016-06-07 Emc Corporation Method and system for network user access impersonation for multi-threaded backup applications
US20150012616A1 (en) * 2013-07-08 2015-01-08 Dropbox, Inc. Saving Third Party Content to a Content Management System
US10162508B2 (en) * 2013-09-04 2018-12-25 Samsung Electronics Co., Ltd. Content items stored in electronic devices
US9158633B2 (en) * 2013-12-24 2015-10-13 International Business Machines Corporation File corruption recovery in concurrent data protection
US10452486B2 (en) 2014-01-30 2019-10-22 Hewlett Packard Enterprise Development Lp Selecting a backup process for a file system
WO2015195577A1 (en) * 2014-06-16 2015-12-23 Ponce Karen Communication logging system
US10013430B2 (en) * 2014-08-18 2018-07-03 Vmware, Inc. Remotely stored application files
US9639433B2 (en) * 2014-12-26 2017-05-02 Vmware, Inc. Reducing input/output (I/O) operations for centralized backup and storage
US9928144B2 (en) 2015-03-30 2018-03-27 Commvault Systems, Inc. Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage
US10747622B2 (en) * 2015-03-31 2020-08-18 SkyKick, Inc. Efficient backup, search and restore
US10853323B2 (en) 2015-07-23 2020-12-01 Netapp Inc. Deduplicating extents across systems based upon indications of shared extents provided by clients
CN105162855A (zh) * 2015-08-18 2015-12-16 浪潮(北京)电子信息产业有限公司 增量数据同步方法和装置
US9448893B1 (en) * 2015-08-26 2016-09-20 Zetta, Inc. Asynchronous replication correctness validation
US10101913B2 (en) 2015-09-02 2018-10-16 Commvault Systems, Inc. Migrating data to disk without interrupting running backup operations
US10528431B2 (en) 2016-02-04 2020-01-07 International Business Machines Corporation Providing integrity for data sets backed-up from client systems to objects in a network storage
JP2018018121A (ja) * 2016-07-25 2018-02-01 富士通株式会社 データベース制御プログラム、データベース制御方法及びデータベース制御装置
JP6720788B2 (ja) * 2016-09-07 2020-07-08 富士通株式会社 ログ管理装置及びログ管理プログラム
US10162626B2 (en) 2017-04-10 2018-12-25 Microsoft Technology Licensing, Llc Ordered cache tiering for program build files
US10503605B2 (en) * 2017-09-25 2019-12-10 ArcServe (USA) LLC Method of detecting source change for file level incremental backup
US10719405B2 (en) * 2017-12-11 2020-07-21 Rubrik, Inc. Forever incremental backups for database and file servers
US10742735B2 (en) 2017-12-12 2020-08-11 Commvault Systems, Inc. Enhanced network attached storage (NAS) services interfacing to cloud storage
EP3729290A4 (en) * 2017-12-22 2021-08-25 Scripps Networks Interactive, Inc. CLOUD HYBRID APPLICATION STORAGE MANAGEMENT SYSTEM (CHASM)
CN109672717B (zh) * 2018-09-25 2023-02-03 平安普惠企业管理有限公司 维持系统一致性方法、设备、存储介质及装置
US11327850B2 (en) * 2019-05-14 2022-05-10 Acronis International Gmbh System and method for disaster recovery using application streaming
US10754731B1 (en) * 2019-06-25 2020-08-25 Cohesity, Inc. Compliance audit logging based backup
KR102427418B1 (ko) * 2019-09-27 2022-08-01 주식회사 데이타커맨드 백업 데이터 합성 장치 및 방법
CN113448768A (zh) * 2020-03-25 2021-09-28 华为技术有限公司 Db文件的备份方法、装置和电子设备
CN113760600B (zh) * 2020-08-05 2023-09-22 北京京东振世信息技术有限公司 一种数据库备份方法、数据库还原方法和相关装置
US11983284B2 (en) * 2021-01-19 2024-05-14 Arm Cloud Technology, Inc. Consent management methods
US11886298B2 (en) * 2021-03-31 2024-01-30 Cohesity, Inc. Using a storage log to generate an incremental backup
US11954066B2 (en) 2021-07-21 2024-04-09 Cohesity, Inc. Coalescing storage log entries
US11593223B1 (en) 2021-09-02 2023-02-28 Commvault Systems, Inc. Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants
CN115129677B (zh) * 2022-08-30 2022-11-22 睿云奇智(青岛)科技有限公司 一种算子文档的同步方法及装置

Family Cites Families (242)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3668647A (en) 1970-06-12 1972-06-06 Ibm File access system
US4215402A (en) 1978-10-23 1980-07-29 International Business Machines Corporation Hash index table hash generator apparatus
US4404676A (en) 1981-03-30 1983-09-13 Pioneer Electric Corporation Partitioning method and apparatus using data-dependent boundary-marking code words
US4641274A (en) 1982-12-03 1987-02-03 International Business Machines Corporation Method for communicating changes made to text form a text processor to a remote host
US4887235A (en) 1982-12-17 1989-12-12 Symbolics, Inc. Symbolic language data processing system
US4625076A (en) * 1984-03-19 1986-11-25 Nippon Telegraph & Telephone Public Corporation Signed document transmission system
DE3436435A1 (de) 1984-10-04 1986-06-26 Siemens AG, 1000 Berlin und 8000 München Verfahren zur uebermittlung von daten und anordnung zur durchfuehrung des verfahrens
US4649479A (en) 1985-02-28 1987-03-10 International Business Machines Corp. Device driver and adapter binding technique
JPH0728682Y2 (ja) 1986-03-05 1995-06-28 三洋電機株式会社 マグネトロン
US4901223A (en) 1986-04-30 1990-02-13 International Business Machines Corporation Method and apparatus for application software control of echo response
US4761785B1 (en) 1986-06-12 1996-03-12 Ibm Parity spreading to enhance storage access
US4887204A (en) 1987-02-13 1989-12-12 International Business Machines Corporation System and method for accessing remote files in a distributed networking environment
US4897781A (en) 1987-02-13 1990-01-30 International Business Machines Corporation System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment
US5005122A (en) 1987-09-08 1991-04-02 Digital Equipment Corporation Arrangement with cooperating management server node and network service node
US5109515A (en) 1987-09-28 1992-04-28 At&T Bell Laboratories User and application program transparent resource sharing multiple computer interface architecture with kernel process level transfer of user requested services
US4864616A (en) 1987-10-15 1989-09-05 Micronyx, Inc. Cryptographic labeling of electronically stored data
US4933970A (en) * 1988-01-19 1990-06-12 Yeda Research And Development Company Limited Variants of the fiat-shamir identification and signature scheme
AU601328B2 (en) 1988-05-26 1990-09-06 Digital Equipment Corporation Temporary state preservation for a distributed file service
US5146568A (en) 1988-09-06 1992-09-08 Digital Equipment Corporation Remote bootstrapping a node over communication link by initially requesting remote storage access program which emulates local disk to load other programs
US4982324A (en) 1988-12-19 1991-01-01 International Business Machines Corporation Method of and system for using device drivers to couple the communication and data storage of remote computer systems
US5016009A (en) 1989-01-13 1991-05-14 Stac, Inc. Data compression apparatus and method
US5126739A (en) 1989-01-13 1992-06-30 Stac Electronics Data compression apparatus and method
US5089958A (en) 1989-01-23 1992-02-18 Vortex Systems, Inc. Fault tolerant computer backup system
US5018060A (en) 1989-01-26 1991-05-21 Ibm Corporation Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters
US4929946A (en) 1989-02-09 1990-05-29 Storage Technology Corporation Adaptive data compression apparatus including run length encoding for a tape drive system
JPH0833958B2 (ja) 1989-05-30 1996-03-29 沖電気工業株式会社 顧客情報処理システム
US5239637A (en) 1989-06-30 1993-08-24 Digital Equipment Corporation Digital data management system for maintaining consistency of data in a shadow set
US5454099A (en) 1989-07-25 1995-09-26 International Business Machines Corporation CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure
US5133065A (en) 1989-07-27 1992-07-21 Personal Computer Peripherals Corporation Backup computer program for networks
US5163148A (en) 1989-08-11 1992-11-10 Digital Equipment Corporation File backup system for producing a backup copy of a file which may be updated during backup
US5163131A (en) 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
DE69028176T2 (de) 1989-11-14 1997-01-23 Nec Corp Adaptive Transformationskodierung durch optimale Blocklängenselektion in Abhängigkeit von Unterschieden zwischen aufeinanderfolgenden Blöcken
US5276867A (en) 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data storage system with improved data migration
US5276860A (en) 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data processor with improved backup storage
US5218695A (en) 1990-02-05 1993-06-08 Epoch Systems, Inc. File server system having high-speed write execution
US5307481A (en) 1990-02-28 1994-04-26 Hitachi, Ltd. Highly reliable online system
US5479654A (en) 1990-04-26 1995-12-26 Squibb Data Systems, Inc. Apparatus and method for reconstructing a file from a difference signature and an original file
DE69126066T2 (de) 1990-06-29 1997-09-25 Oracle Corp Verfahren und Gerät zur Optimierung des Logbuchaufhebungsgebrauchs
US5136647A (en) 1990-08-02 1992-08-04 Bell Communications Research, Inc. Method for secure time-stamping of digital documents
US5317728A (en) 1990-09-07 1994-05-31 International Business Machines Corporation Storage management of a first file system using a second file system containing surrogate files and catalog management information
US5239647A (en) 1990-09-07 1993-08-24 International Business Machines Corporation Data storage hierarchy with shared storage level
US5210866A (en) 1990-09-12 1993-05-11 Storage Technology Corporation Incremental disk backup system for a dynamically mapped data storage subsystem
US5162986A (en) 1990-10-19 1992-11-10 Allen-Bradley Company, Inc. Remote downloading and uploading of motion control program information to and from a motion control I/O module in a programmable controller
US5155835A (en) 1990-11-19 1992-10-13 Storage Technology Corporation Multilevel, hierarchical, dynamically mapped data storage subsystem
US5278838A (en) 1991-06-18 1994-01-11 Ibm Corp. Recovery from errors in a redundant array of disk drives
US5239659A (en) 1991-06-19 1993-08-24 Storage Technology Corporation Phantom duplex copy group apparatus for a disk drive array data storge subsystem
US5347653A (en) 1991-06-28 1994-09-13 Digital Equipment Corporation System for reconstructing prior versions of indexes using records indicating changes between successive versions of the indexes
US5305389A (en) 1991-08-30 1994-04-19 Digital Equipment Corporation Predictive cache system
US5325505A (en) 1991-09-04 1994-06-28 Storage Technology Corporation Intelligent storage manager for data storage apparatus having simulation capability
US5140321A (en) 1991-09-04 1992-08-18 Prime Computer, Inc. Data compression/decompression method and apparatus
US5367698A (en) 1991-10-31 1994-11-22 Epoch Systems, Inc. Network file migration system
EP0541281B1 (en) 1991-11-04 1998-04-29 Commvault Systems, Inc. Incremental-computer-file backup using signatures
US5369758A (en) 1991-11-15 1994-11-29 Fujitsu Limited Checking for proper locations of storage devices in a storage array
US5802264A (en) 1991-11-15 1998-09-01 Fujitsu Limited Background data reconstruction in a storage device array system
US5452454A (en) 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
GB9203425D0 (en) 1992-02-18 1992-09-23 Sewell Roger F Devices for implementing public key cryptography and digital signatures
US5367637A (en) 1992-03-26 1994-11-22 International Business Machines Corporation Self-tuning virtual storage management for dedicated real-time computer system
US5448718A (en) 1992-04-20 1995-09-05 International Business Machines Corporation Method and system for time zero backup session security
US5263154A (en) 1992-04-20 1993-11-16 International Business Machines Corporation Method and system for incremental time zero backup copying of data
US5586322A (en) 1992-06-11 1996-12-17 Beck; Robert E. Workgroup organized network manager with workstation comparison system
US5403639A (en) 1992-09-02 1995-04-04 Storage Technology Corporation File server having snapshot application data groups
US5406279A (en) 1992-09-02 1995-04-11 Cirrus Logic, Inc. General purpose, hash-based technique for single-pass lossless data compression
US5497483A (en) 1992-09-23 1996-03-05 International Business Machines Corporation Method and system for track transfer control during concurrent copy operations in a data processing storage subsystem
US5530855A (en) 1992-10-13 1996-06-25 International Business Machines Corporation Replicating a database by the sequential application of hierarchically sorted log records
US5404508A (en) 1992-12-03 1995-04-04 Unisys Corporation Data base backup and recovery system and method
US5487160A (en) 1992-12-04 1996-01-23 At&T Global Information Solutions Company Concurrent image backup for disk storage system
US5404527A (en) 1992-12-31 1995-04-04 Unisys Corporation System and method for remote program load
US5544320A (en) 1993-01-08 1996-08-06 Konrad; Allan M. Remote information service access system based on a client-server-service model
US5659747A (en) 1993-04-22 1997-08-19 Microsoft Corporation Multiple level undo/redo mechanism
US5497423A (en) * 1993-06-18 1996-03-05 Matsushita Electric Industrial Co., Ltd. Method of implementing elliptic curve cryptosystems in digital signatures or verification and privacy communication
CA2166420C (en) 1993-07-01 2006-03-28 James R. Woodhill System and method for distributed storage management on networked computer systems
JP3528206B2 (ja) * 1993-07-13 2004-05-17 富士ゼロックス株式会社 ファイル管理システム
US5452440A (en) 1993-07-16 1995-09-19 Zitel Corporation Method and structure for evaluating and enhancing the performance of cache memory systems
US5521597A (en) 1993-08-02 1996-05-28 Mircosoft Corporation Data compression for network transport
US5515502A (en) 1993-09-30 1996-05-07 Sybase, Inc. Data backup system with methods for stripe affinity backup to multiple archive devices
US5771354A (en) 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
US5835953A (en) 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5574906A (en) 1994-10-24 1996-11-12 International Business Machines Corporation System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing
US5659743A (en) 1994-12-05 1997-08-19 Legent Corporation Method and apparatus for a pattern based spaced management system
EP0807290B1 (en) 1995-01-26 2000-05-03 Hans Verner Thorsen Method and system for accessing data
US5513314A (en) 1995-01-27 1996-04-30 Auspex Systems, Inc. Fault tolerant NFS server system and mirroring protocol
US5990810A (en) 1995-02-17 1999-11-23 Williams; Ross Neil Method for partitioning a block of data into subblocks and for storing and communcating such subblocks
US5604862A (en) 1995-03-14 1997-02-18 Network Integrity, Inc. Continuously-snapshotted protection of computer files
US5594227A (en) 1995-03-28 1997-01-14 Microsoft Corporation System and method for protecting unauthorized access to data contents
AU5386796A (en) 1995-04-11 1996-10-30 Kinetech, Inc. Identifying data in a data processing system
DE19513896A1 (de) * 1995-04-12 1996-10-17 Deutsche Telekom Ag Verfahren zum Signieren einer Nachricht
US5802297A (en) 1995-07-03 1998-09-01 Sun Microsystems, Inc. Client-server computer system and method utilizing a local client disk drive as a data cache
US5742811A (en) 1995-10-10 1998-04-21 International Business Machines Corporation Method and system for mining generalized sequential patterns in a large database
US5765152A (en) 1995-10-13 1998-06-09 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US5933104A (en) 1995-11-22 1999-08-03 Microsoft Corporation Method and system for compression and decompression using variable-sized offset and length fields
US5754844A (en) 1995-12-14 1998-05-19 Sun Microsystems, Inc. Method and system for accessing chunks of data using matching of an access tab and hashing code to generate a suggested storage location
US5781901A (en) 1995-12-21 1998-07-14 Intel Corporation Transmitting electronic mail attachment over a network using a e-mail page
US6219423B1 (en) 1995-12-29 2001-04-17 Intel Corporation System and method for digitally signing a digital agreement between remotely located nodes
US5765173A (en) 1996-01-11 1998-06-09 Connected Corporation High performance backup via selective file saving which can perform incremental backups and exclude files and uses a changed block signature list
JP3627384B2 (ja) 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US6308325B1 (en) 1996-04-09 2001-10-23 International Business Machines Corporation Apparatus and method for downloading data to electronic device
US5831558A (en) 1996-06-17 1998-11-03 Digital Equipment Corporation Method of compressing and decompressing data in a computer system by encoding data using a data dictionary
JP3540511B2 (ja) 1996-06-18 2004-07-07 株式会社東芝 電子署名検証装置
US5850565A (en) 1996-08-26 1998-12-15 Novell, Inc. Data compression method and apparatus
US5914938A (en) 1996-11-19 1999-06-22 Bay Networks, Inc. MAC address table search unit
US5794254A (en) 1996-12-03 1998-08-11 Fairbanks Systems Group Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
JPH10171350A (ja) 1996-12-10 1998-06-26 Hitachi Ltd ハッシュ値生成方法および装置
DE19703929A1 (de) * 1997-02-04 1998-08-06 Deutsche Telekom Ag Verfahren zum Generieren einer digitalen Signatur und Verfahren zur Überprüfung der Signatur
US6044220A (en) 1997-02-25 2000-03-28 Motorola, Inc. Method and apparatus for operating a data processor to execute software written using a foreign instruction set
US6272631B1 (en) 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
AU8457698A (en) * 1997-07-29 1999-03-08 Telebackup Systems, Inc. Method and system for nonredundant backup of identical files stored on remote computers
DE69802294T2 (de) * 1997-08-29 2002-05-16 Hewlett Packard Co Systemen zur datensicherung und -rückgewinnung
US6016553A (en) 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
US6557102B1 (en) 1997-09-05 2003-04-29 Koninklijke Philips Electronics N.V. Digital trust center for medical image authentication
US6272492B1 (en) 1997-11-21 2001-08-07 Ibm Corporation Front-end proxy for transparently increasing web server functionality
JP3730385B2 (ja) 1997-12-05 2006-01-05 株式会社東芝 デ−タ圧縮装置
DE69907631T2 (de) 1998-01-23 2004-02-26 Emc Corp., Hopkinton Netzzugang zu inhaltsadressierbaren daten
US6029168A (en) 1998-01-23 2000-02-22 Tricord Systems, Inc. Decentralized file mapping in a striped network file system in a distributed computing environment
US6148342A (en) 1998-01-27 2000-11-14 Ho; Andrew P. Secure database management system for confidential records using separately encrypted identifier and access request
US6430618B1 (en) 1998-03-13 2002-08-06 Massachusetts Institute Of Technology Method and apparatus for distributing requests among a plurality of resources
US6122754A (en) 1998-05-22 2000-09-19 International Business Machines Corporation Method and system for data recovery using a distributed and scalable data structure
US6374266B1 (en) 1998-07-28 2002-04-16 Ralph Shnelvar Method and apparatus for storing information in a data processing system
GB2341249A (en) 1998-08-17 2000-03-08 Connected Place Limited A method of generating a difference file defining differences between an updated file and a base file
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US6170744B1 (en) 1998-09-24 2001-01-09 Payformance Corporation Self-authenticating negotiable documents
JP4075203B2 (ja) 1999-04-09 2008-04-16 株式会社日立製作所 データバックアップシステム
US6553494B1 (en) 1999-07-21 2003-04-22 Sensar, Inc. Method and apparatus for applying and verifying a biometric-based digital signature to an electronic document
US6205533B1 (en) 1999-08-12 2001-03-20 Norman H. Margolus Mechanism for efficient data access and communication in parallel computations on an emulated spatial lattice
US6415302B1 (en) 1999-08-19 2002-07-02 Sun Microsystems, Inc. Train-algorithm-based garbage collector employing farthest-forward-car indicator
US6976165B1 (en) * 1999-09-07 2005-12-13 Emc Corporation System and method for secure storage, transfer and retrieval of content addressable information
US6535867B1 (en) 1999-09-29 2003-03-18 Christopher J. F. Waters System and method for accessing external memory using hash functions in a resource limited device
US6915302B1 (en) 1999-10-01 2005-07-05 International Business Machines Corporation Method, system, and program for accessing files in a file system
US6377907B1 (en) 1999-11-17 2002-04-23 Mci Worldcom, Inc. System and method for collating UNIX performance metrics
US6549992B1 (en) 1999-12-02 2003-04-15 Emc Corporation Computer data storage backup with tape overflow control of disk caching of backup data stream
US7152220B2 (en) 1999-12-09 2006-12-19 Sensemaking Technologies Corp. Collaboration engine: adding collaboration functionality to computer software
US6526418B1 (en) 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
KR100860821B1 (ko) 2000-02-18 2008-09-30 이엠씨 코포레이션 공통부분 요소분화 시스템에 사용하기 위한 컴퓨팅 시스템, 식별자 설정 방법 및 컴퓨터 판독가능 프로그램을 구비한 기록 매체
US7412462B2 (en) 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
US7509420B2 (en) 2000-02-18 2009-03-24 Emc Corporation System and method for intelligent, globally distributed network storage
US6704730B2 (en) 2000-02-18 2004-03-09 Avamar Technologies, Inc. Hash file system and method for use in a commonality factoring system
ATE312378T1 (de) 2000-03-01 2005-12-15 Computer Ass Think Inc Methode und system für die aktualisierung eines archivs einer datei
US6535894B1 (en) 2000-06-01 2003-03-18 Sun Microsystems, Inc. Apparatus and method for incremental updating of archive files
EP1311988A4 (en) 2000-06-22 2006-06-21 Synchrologic Inc SYSTEM AND METHOD FOR TRANSMITTING FILES BASED ON FILE DIFFERENTIATION
AU2000262258A1 (en) 2000-07-20 2002-02-05 Repliweb Inc. Focal point compression method and apparatus
EP1305756A1 (en) 2000-07-24 2003-05-02 Matsushita Electric Industrial Co., Ltd. A system for transmission/ reception of e-mail with attached files
US6810398B2 (en) 2000-11-06 2004-10-26 Avamar Technologies, Inc. System and method for unorchestrated determination of data sequences using sticky byte factoring to determine breakpoints in digital sequences
US7047420B2 (en) 2001-01-17 2006-05-16 Microsoft Corporation Exclusive encryption
US7043637B2 (en) 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7478243B2 (en) 2001-03-21 2009-01-13 Microsoft Corporation On-disk file format for serverless distributed file system with signed manifest of file modifications
US6981138B2 (en) 2001-03-26 2005-12-27 Microsoft Corporation Encrypted key cache
US7062490B2 (en) 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
KR100398281B1 (ko) 2001-04-17 2003-09-19 시큐아이닷컴 주식회사 패킷 차단방식 방화벽 시스템에서의 고속 정책 판별 방법
US7310644B2 (en) 2001-06-06 2007-12-18 Microsoft Corporation Locating potentially identical objects across multiple computers
US6988124B2 (en) 2001-06-06 2006-01-17 Microsoft Corporation Locating potentially identical objects across multiple computers based on stochastic partitioning of workload
US6388586B1 (en) 2001-07-02 2002-05-14 Hewlett-Packard Company Method for reversing the bits of a computer data structure
JP2003015924A (ja) * 2001-07-05 2003-01-17 Sharp Corp ファイル管理方法
CN1294514C (zh) 2001-08-20 2007-01-10 信息中心科技有限公司 高效的计算机文件备份系统和方法
JP4154893B2 (ja) 2002-01-23 2008-09-24 株式会社日立製作所 ネットワークストレージ仮想化方法
US7020665B2 (en) 2002-03-07 2006-03-28 Microsoft Corporation File availability in distributed file storage systems
US7185031B2 (en) 2002-03-25 2007-02-27 Quantum Corporation Creating a backup volume using a data profile of a host volume
US6865655B1 (en) * 2002-07-30 2005-03-08 Sun Microsystems, Inc. Methods and apparatus for backing up and restoring data portions stored in client computer systems
US7325134B2 (en) * 2002-10-08 2008-01-29 Koolspan, Inc. Localized network authentication and security using tamper-resistant keys
US7120666B2 (en) 2002-10-30 2006-10-10 Riverbed Technology, Inc. Transaction accelerator for client-server communication systems
US7650416B2 (en) 2003-08-12 2010-01-19 Riverbed Technology Content delivery for client-server protocols with user affinities using connection end-point proxies
US7318100B2 (en) 2003-04-14 2008-01-08 Riverbed Technology, Inc. Cooperative proxy auto-discovery and connection interception
US6667700B1 (en) 2002-10-30 2003-12-23 Nbt Technology, Inc. Content-based segmentation scheme for data compression in storage and transmission including hierarchical segment representation
US7421433B2 (en) 2002-10-31 2008-09-02 Hewlett-Packard Development Company, L.P. Semantic-based system including semantic vectors
AU2003275517A1 (en) * 2002-11-01 2004-05-25 Institute Of Metal Research Chinese Academy Of Sciences A nano icrystals copper material with super high strength and conductivity and method of preparing thereof
EP1563628A4 (en) 2002-11-06 2010-03-10 Ibm COMMON USE OF CONFIDENTIAL DATA AND RESOLUTION OF ANONYTE ENTITIES
US7263521B2 (en) 2002-12-10 2007-08-28 Caringo, Inc. Navigation of the content space of a document set
US7895224B2 (en) 2002-12-10 2011-02-22 Caringo, Inc. Navigation of the content space of a document set
US6928526B1 (en) * 2002-12-20 2005-08-09 Datadomain, Inc. Efficient data storage system
US7055008B2 (en) * 2003-01-22 2006-05-30 Falconstor Software, Inc. System and method for backing up data
AU2004214014B2 (en) 2003-02-21 2009-10-22 Datacore Software Corporation Additional hash functions in content-based addressing
US7478096B2 (en) 2003-02-26 2009-01-13 Burnside Acquisition, Llc History preservation in a computer storage system
US7043470B2 (en) 2003-03-05 2006-05-09 Hewlett-Packard Development Company, L.P. Method and apparatus for improving querying
US6959369B1 (en) * 2003-03-06 2005-10-25 International Business Machines Corporation Method, system, and program for data backup
US7039634B2 (en) 2003-03-12 2006-05-02 Hewlett-Packard Development Company, L.P. Semantic querying a peer-to-peer network
JP2004297347A (ja) 2003-03-26 2004-10-21 Seiko Epson Corp 原本性保証システム、情報埋め込み・改竄検出装置及び情報埋め込み・改竄検出方法並びに情報埋め込み・改竄検出プログラム
US7870218B2 (en) 2003-04-09 2011-01-11 Nec Laboratories America, Inc. Peer-to-peer system and method with improved utilization
US7747586B2 (en) 2003-04-23 2010-06-29 International Business Machines Corporation Apparatus and method to map and copy computer files
DK1620778T3 (en) * 2003-05-06 2014-02-17 Aptare Inc SYSTEM FOR REGISTRATION, TRANSMISSION AND Persisting OF BACKUP AND RECOVERY METADATA
WO2004100420A2 (en) 2003-05-08 2004-11-18 Sap Portals Israel Ltd. A pattern driven message oriented compression apparatus and method
US7451168B1 (en) 2003-06-30 2008-11-11 Data Domain, Inc. Incremental garbage collection of data in a secondary storage
US7424498B1 (en) 2003-06-30 2008-09-09 Data Domain, Inc. Probabilistic summary data structure based encoding for garbage collection
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7631120B2 (en) 2004-08-24 2009-12-08 Symantec Operating Corporation Methods and apparatus for optimally selecting a storage buffer for the storage of data
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7577806B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7577807B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7409587B2 (en) 2004-08-24 2008-08-05 Symantec Operating Corporation Recovering from storage transaction failures using checkpoints
US7296008B2 (en) 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7239581B2 (en) 2004-08-24 2007-07-03 Symantec Operating Corporation Systems and methods for synchronizing the internal clocks of a plurality of processor modules
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
JP2005100007A (ja) * 2003-09-24 2005-04-14 Matsushita Electric Ind Co Ltd データファイル保存システムおよびアロケーション方法
KR20050034508A (ko) * 2003-10-09 2005-04-14 (주)네오비즈코리아 네트워크를 기반으로 하는 원격 스토리지를 이용한 파일저장 및 복구 시스템 및 그 방법
US7613775B2 (en) 2003-11-25 2009-11-03 Freescale Semiconductor, Inc. Network message filtering using hashing and pattern matching
US7002493B2 (en) 2004-01-08 2006-02-21 Mathstar, Inc. Boolean logic tree reduction circuit
US7574418B1 (en) 2004-02-13 2009-08-11 Data Domain, Inc. Method and apparatus for storing composite data streams
US7539871B1 (en) 2004-02-23 2009-05-26 Sun Microsystems, Inc. System and method for identifying message propagation
US20060047855A1 (en) 2004-05-13 2006-03-02 Microsoft Corporation Efficient chunking algorithm
US7555531B2 (en) 2004-04-15 2009-06-30 Microsoft Corporation Efficient algorithm and protocol for remote differential compression
US7577101B1 (en) 2004-04-30 2009-08-18 Sun Microsystems, Inc. Method and apparatus for generating extensible protocol independent binary health checks
US7536424B2 (en) * 2004-05-02 2009-05-19 Yoram Barzilai System and methods for efficiently managing incremental data backup revisions
JP3982520B2 (ja) 2004-06-02 2007-09-26 コニカミノルタビジネステクノロジーズ株式会社 アクセス管理システムおよび方法、画像形成装置、およびコンピュータプログラム
US7269689B2 (en) 2004-06-17 2007-09-11 Hewlett-Packard Development Company, L.P. System and method for sharing storage resources between multiple files
US7904488B2 (en) 2004-07-21 2011-03-08 Rockwell Automation Technologies, Inc. Time stamp methods for unified plant model
US7523098B2 (en) 2004-09-15 2009-04-21 International Business Machines Corporation Systems and methods for efficient data searching, storage and reduction
US8725705B2 (en) * 2004-09-15 2014-05-13 International Business Machines Corporation Systems and methods for searching of storage data with reduced bandwidth requirements
US7689633B1 (en) 2004-09-15 2010-03-30 Data Domain, Inc. Network file system-based data storage system
US7613787B2 (en) 2004-09-24 2009-11-03 Microsoft Corporation Efficient algorithm for finding candidate objects for remote differential compression
US7457813B2 (en) 2004-10-06 2008-11-25 Burnside Acquisition, Llc Storage system for randomly named blocks of data
US7079053B2 (en) 2004-11-29 2006-07-18 Honeywell International Inc. Method and system for value-based data compression
US7747635B1 (en) 2004-12-21 2010-06-29 Oracle America, Inc. Automatically generating efficient string matching code
US7849462B2 (en) 2005-01-07 2010-12-07 Microsoft Corporation Image server
US8073926B2 (en) 2005-01-07 2011-12-06 Microsoft Corporation Virtual machine image server
US7814129B2 (en) 2005-03-11 2010-10-12 Ross Neil Williams Method and apparatus for storing data with reduced redundancy using data clusters
US8051252B2 (en) 2005-03-11 2011-11-01 Ross Neil Williams Method and apparatus for detecting the presence of subblocks in a reduced-redundancy storage system
US7983301B2 (en) 2005-06-24 2011-07-19 O2Micro International, Ltd. Method for extended transmission capabilities of short message service
EP1927060B1 (en) 2005-08-09 2019-10-09 Nexsan Technologies Canada Inc. Data archiving method and system
US10380538B2 (en) * 2005-09-27 2019-08-13 Bdna Corporation Discovery of electronic assets using fingerprints
US7584338B1 (en) 2005-09-27 2009-09-01 Data Domain, Inc. Replication of deduplicated storage system
US7366859B2 (en) 2005-10-06 2008-04-29 Acronis Inc. Fast incremental backup method and system
CN101313279A (zh) 2005-10-14 2008-11-26 塞门铁克操作公司 一种在数据存储器中用于时间线压缩的技术
US7761766B2 (en) 2005-11-15 2010-07-20 I365 Inc. Methods and apparatus for modifying a backup data stream including logical partitions of data blocks to be provided to a fixed position delta reduction backup application
US7647362B1 (en) 2005-11-29 2010-01-12 Symantec Corporation Content-based file versioning
US7483927B2 (en) * 2005-12-01 2009-01-27 International Business Machines Corporation Method for merging metadata on files in a backup storage
US7734603B1 (en) 2006-01-26 2010-06-08 Netapp, Inc. Content addressable storage array element
US7627652B1 (en) 2006-01-31 2009-12-01 Amazon Technologies, Inc. Online shared data environment
US7676509B2 (en) 2006-02-01 2010-03-09 I365 Inc. Methods and apparatus for modifying a backup data stream including a set of validation bytes for each data block to be provided to a fixed position delta reduction backup application
US7831793B2 (en) 2006-03-01 2010-11-09 Quantum Corporation Data storage system including unique block pool manager and applications in tiered storage
US7660836B2 (en) 2006-03-09 2010-02-09 International Business Machines Corporation Controlling incremental backups using opaque object attributes
US7457934B2 (en) 2006-03-22 2008-11-25 Hitachi, Ltd. Method and apparatus for reducing the amount of data in a storage system
JP4767057B2 (ja) 2006-03-27 2011-09-07 富士通株式会社 ハッシュ値生成プログラム、ストレージ管理プログラム、判定プログラム及びデータ変更検証装置
AU2007234696B2 (en) 2006-04-07 2011-08-18 Data Storage Group Data compression and storage techniques
US7949824B2 (en) 2006-04-11 2011-05-24 Emc Corporation Efficient data storage using two level delta resemblance
US7844652B2 (en) 2006-04-11 2010-11-30 Emc Corporation Efficient computation of sketches
US7685459B1 (en) 2006-04-13 2010-03-23 Symantec Operating Corporation Parallel backup
US7814070B1 (en) 2006-04-20 2010-10-12 Datascout, Inc. Surrogate hashing
US7840540B2 (en) 2006-04-20 2010-11-23 Datascout, Inc. Surrogate hashing
US7801868B1 (en) 2006-04-20 2010-09-21 Datascout, Inc. Surrogate hashing
EP3336707A1 (en) 2006-05-05 2018-06-20 Hybir Inc. Group based complete and incremental computer file backup system, process and apparatus

Also Published As

Publication number Publication date
EP2021926A4 (en) 2009-07-15
US8051043B2 (en) 2011-11-01
US20150220747A1 (en) 2015-08-06
KR101381551B1 (ko) 2014-04-11
US9037545B2 (en) 2015-05-19
CA2651323A1 (en) 2007-11-15
EP3336707A1 (en) 2018-06-20
US10671761B2 (en) 2020-06-02
US9679146B2 (en) 2017-06-13
US20070266062A1 (en) 2007-11-15
JP2009536418A (ja) 2009-10-08
WO2007131190A3 (en) 2008-08-28
AU2007247939A1 (en) 2007-11-15
AU2007247939B2 (en) 2012-02-09
WO2007131190A2 (en) 2007-11-15
KR20090034311A (ko) 2009-04-07
US20120005479A1 (en) 2012-01-05
EP2021926A2 (en) 2009-02-11
US20200293693A1 (en) 2020-09-17
CA2651323C (en) 2016-02-16
US20170220820A1 (en) 2017-08-03

Similar Documents

Publication Publication Date Title
JP5204099B2 (ja) グループ・ベースの完全および増分コンピュータ・ファイル・バックアップ・システム、処理および装置
US11561931B2 (en) Information source agent systems and methods for distributed data storage and management using content signatures
US10460107B2 (en) Systems and methods for automatic snapshotting of backups based on malicious modification detection
US10445517B1 (en) Protecting data in insecure cloud storage
US20120185505A1 (en) Methods and computer program products for accelerated web browsing
Tian et al. Sed‐Dedup: An efficient secure deduplication system with data modifications
AU2012202658B2 (en) Method and device for managing data and exchanging encrypted communications

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100428

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100428

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120508

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120808

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121108

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130214

R150 Certificate of patent or registration of utility model

Ref document number: 5204099

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160222

Year of fee payment: 3

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

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

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