DE602004010872T2 - Systeme und Verfahren zur Dateisicherung - Google Patents

Systeme und Verfahren zur Dateisicherung Download PDF

Info

Publication number
DE602004010872T2
DE602004010872T2 DE602004010872T DE602004010872T DE602004010872T2 DE 602004010872 T2 DE602004010872 T2 DE 602004010872T2 DE 602004010872 T DE602004010872 T DE 602004010872T DE 602004010872 T DE602004010872 T DE 602004010872T DE 602004010872 T2 DE602004010872 T2 DE 602004010872T2
Authority
DE
Germany
Prior art keywords
storage
data
stored
backup
locations
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
DE602004010872T
Other languages
English (en)
Other versions
DE602004010872T9 (de
DE602004010872D1 (de
Inventor
Christopher Midgley
John Webb
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.)
LIVE VAULT CORP
Live Vault Corp Marlborough
Original Assignee
LIVE VAULT CORP
Live Vault Corp Marlborough
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 LIVE VAULT CORP, Live Vault Corp Marlborough filed Critical LIVE VAULT CORP
Publication of DE602004010872D1 publication Critical patent/DE602004010872D1/de
Application granted granted Critical
Publication of DE602004010872T2 publication Critical patent/DE602004010872T2/de
Publication of DE602004010872T9 publication Critical patent/DE602004010872T9/de
Active legal-status Critical Current

Links

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/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/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/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/1469Backup restoration techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Description

  • Verweis auf verwandte Anmeldungen
  • Diese Anmeldung bezieht sich auf U.S.-Patentanmeldungen, Seriennummern 09/465,408 (jetzt U.S.-Patent Nr. 6,625,623 ), 09/465,411 (jetzt U.S.-Patent Nr. 6,526,418 ), 09/465,435 (jetzt U.S.-Patent 6,779,003 ), 09/465,436 (jetzt U.S.-Patent Nr. 6,847,984 ), 09/465,485 (jetzt U.S.-Patent Nr. 6,460,055 ), 10/152,060 (jetzt U.S.-Patent 6,704,755 ) und 10/320,762 (angemeldet).
  • Hintergrund
  • Manche Sicherungssysteme arbeiten in der Weise, dass ein Netzadministrator eine Tageszeit bestimmt, während der nur wenig oder keine Netzaktivität vorliegt. Während dieser Zeit kann ein Netzadministrator einem Sicherungssystem und den im Computernetz gespeicherten Dateien gestatten, dateiweise auf einem Langzeitspeichermedium, z. B. einem Magnetband-Sicherungssystem, gesichert zu werden. Typischerweise sichert der Netzadministrator einmal wöchentlich oder sogar einmal täglich, um sicherzustellen, dass die Sicherungsdateien aktuell sind. Ein solcher Sicherungsprozess kann zeitaufwändig, arbeitsaufwändig und umständlich sein. Da Computernetzwerke im Allgemeinen 24 Stunden pro Tag und sieben Tage die Woche arbeiten, kann es für einen System-/Netzadministrator schwierig sein, eine Zeitspanne zu bestimmen, während der die Netzressourcen für eine Sicherungsprozedur bereitgestellt werden können. Ferner mindern mehr Benutzer und mehr Änderungen auf regelmäßiger täglicher Basis den Wert eines Sicherungssystems, das einmal wöchentlich oder einmal täglich aktiv ist. Systeme, die Sicherungsdaten nur periodisch erzeugen, haben deshalb einen geringeren Wert.
  • Das Dokument US 6,460,055 lehrt ein System und ein Verfahren zum kontinuierlichen Sichern von Daten, die in einem Computernetz gespeichert sind, wobei ein Synchronisierungsprozess angewendet wird, der ausgewählte Daten von Quellendatendateien, die im Netz gespeichert sind, dupliziert und einen Satz duplizierter Datendateien auf einem Sicherungs-Server erzeugt.
  • Das Dokument US 6,023,710 lehrt ein Sicherungssystem zur Zusammenfassung mehrerer Abschnitte derselben Dateien, die in verschiedenen Sicherungsspeichersitzungen zu verschiedenen Zeiten gespeichert wurden, zu einer einzigen aktualisierten Version der Datei.
  • Das Dokument US 6,189,016 lehrt ein Verfahren zur Protokollierung von Änderungen an Dateien in einem Speicherdatenträger unter Verwendung eines Änderungsjournals, das jede bemerkenswerte Änderung einer Datei protokolliert, wodurch jedes Protokoll eine eindeutige Aktualisierungssequenznummer erhält, um die Reihenfolge, in der die Protokolle erzeugt wurden, eindeutig anzugeben.
  • Bei manchen alternativen Systemen können ein Daten-Server und ein Sicherungs-Server gespiegelte Datendateien und Sicherungsdateien pflegen. In einem derartigen System kann z. B. ein Daten-Server Änderungsanforderungen bei Datendateien ausführen und die Änderungsanforderungen an den Sicherungs-Server senden, und der Sicherungs-Server kann die Änderungsanforderungen bei den entsprechenden Sicherungsdateien ausführen, um die Sicherungsdateien mit den Datendateien gespiegelt zu halten. Bei solchen Systemen kann von einer mangelhaften Leistungsfähigkeit bei ihrer Nutzung der Datenverarbeitungskapazität und Datenspeicherungskapazität gesprochen werden, da im Allgemeinen zwei Kopien sämtlicher Dateien erforderlich sind.
  • Zusammenfassung
  • Zumindest einige der oben genannten Probleme bezüglich der Ansätze im Stand der Technik werden von der Erfindung, die in den beigefügten Hauptansprüchen 1, 14 und 26 definiert ist, gelöst.
  • Es werden Verfahren zur Sicherung von Datendateien beschrieben. Bei einer Ausführungsform können die Verfahren die Detektion geänderter Speicherstellen in einer oder mehreren Datendateien, das Speichern der Inhalte der geänderten Speicherstellen zu einer Speicherungszeit und das Verknüpfen der gespeicherten Inhalte mit der Speicherungszeit, den geänderten Speicherstellen und einem oder mehreren Dateikennungen, die die eine oder die mehreren Datendateien identifizieren, enthalten.
  • Die Speicherungszeit kann auf der aktuellen Zeit, einem Zeitintervall und/oder einem Ereignis basieren.
  • Bei einer Ausführungsform können die Verfahren ferner die Erzeugung eines Basisbildes vor der Detektion der geänderten Speicherstellen enthalten. Das Basisbild kann eine oder mehrere Datendateien enthalten und auf einem Schnappschussbild, einer Bilddatei und/oder einem Datenträgerbild basieren.
  • Die Detektion geänderter Speicherstellen in den Datendateien kann die Anwendung einer oder mehrerer Datenintegritätsprozeduren enthalten, um eine Zusammenfassung eines Bildes der Datendateien zu erzeugen. Die Datenintegritätsprozeduren können eine zyklische Redundanzprüfprozedur (cyclic redundancy check (CRC)) und/oder eine MD5-Meldungsübersichtsprozedur enthalten.
  • Die Detektion geänderter Speicherstellen in den Datendateien kann die Erzeugung eines Basisbildes der Datendateien und die Anwendung einer Datenintegritätsprozedur enthalten, um eine Zusammenfassung des Basisbildes vor der Speicherungszeit zu erzeugen, die Erzeugung eines zweiten Bildes der Datendateien und die Anwendung der Datenintegritätsprozedur, um eine Zusammenfassung des zweiten Bildes danach zu erzeugen, und die Bestimmung, ob die Datendateien geänderte Speicherstellen enthalten, auf Basis der Basiszusammenfassung und der zweiten Zusammenfassung.
  • Die Detektion geänderter Speicherstellen kann die dynamische Detektion der geänderten Speicherstellen enthalten.
  • Das Speichern der Inhalte kann das Auswählen mindestens eines Speichers zum Speichern der Inhalte enthalten. Der Speicher kann von einem zuvor gewählten Speicher, der mit einer früheren Speicherungszeit verknüpft ist, verschieden sein.
  • Bei den beschriebenen Systemen und Verfahren kann das Verknüpfen die Erzeugung eines oder mehrerer Indizes zum Verknüpfen der gespeicherten Inhalte, der jeweiligen Speicherungszeiten, der jeweiligen geänderten Speicherstellen und der jeweiligen Datei kennungen enthalten. Die Indizes können einen ersten Index auf die gelinderten Speicherstellen auf Basis der Dateikennungen und einen zweiten Index auf die gespeicherten Inhalte auf Basis der geänderten Speicherstellen enthalten.
  • Bei einer Ausführungsform kann das Verfahren ferner eine iterative Rückkehr zur Detektion geänderter Speicherstellen enthalten.
  • Bei einer Ausführungsform kann das Verfahren ferner eine Verwendung der gespeicherten Inhalte zum Erzeugen einer Version der einen gewählten Datendatei der Datendateien enthalten.
  • Bei den beschriebenen Systemen und Verfahren kann die Verwendung der gespeicherten Inhalte zum Erzeugen einer Version einer ausgewählten Datendatei die Abfrage der Indizes enthalten, um die gespeicherten Inhalte und mit der ausgewählten Datendatei verknüpften jeweiligen geänderten Speicherstellen zu identifizieren, und das Kombinieren der identifizierten gespeicherten Inhalte mit Daten aus dem mit der ausgewählten Datendatei verknüpften Basisbild. Die Indizes können auf Basis der Dateikennung, die mit der ausgewählten Datendatei verknüpft ist, für jede mit der Version verknüpften Speicherungszeit abgefragt werden.
  • Das Abfragen der Indizes kann die Bestimmung enthalten, dass die geänderten Speicherstellen für zwei oder mehr verschiedene Speicherungszeiten dieselben sind, und die Identifizierung der gespeicherten Inhalte der geänderten Speicherstellen, die mit der letzten der verschiedenen Speicherungszeiten verknüpft sind.
  • Bei einer Ausführungsform können die Verfahren ferner die Vereinigung der Daten enthalten.
  • Die Vereinigung von Daten kann die Vereinigung von zwei oder mehr gespeicherten Inhalten, die mit derselben Dateikennung und zwei oder mehr verschiedenen Speicherungszeiten verknüpft sind, den entsprechenden geänderten Speicherstellen, die mit zwei oder mehr vereinigten Inhalten verknüpft sind, und den Indizes, um die vereinigten Inhalte, die jeweiligen vereinigten geänderten Speicherstellen, die Dateikennung und die letzte der verschiedenen Speicherungszeiten zu verknüpfen, enthalten.
  • Die Vereinigung von Daten kann die Vereinigung von zwei oder mehr gespeicherten Inhalten, die mit derselben Dateikennung und derselben Speicherungszeit verknüpft sind, den entsprechenden geänderten Speicherstellen, die mit zwei oder mehr vereinigten Inhalten verknüpft sind, und den Indizes, um die vereinigten Inhalte, die jeweiligen vereinigten geänderten Speicherstellen, die Dateikennung und dieselbe Speicherungszeit zu verknüpfen, enthalten.
  • Außerdem werden Prozessorprogramme zur Sicherung von Datendateien beschrieben. Die Prozessorprogramme können auf einem prozessorlesbaren Medium gespeichert sein. Bei einer Ausführungsform können die Prozessorprogramme Befehle enthalten, um den Prozessor zu veranlassen, geänderte Speicherstellen in einer oder mehreren Datendateien zu detektieren, die Inhalte der geänderten Speicherstellen zu einer Speicherungszeit zu speichern, und die gespeicherten Inhalte mit der Speicherungszeit, den geänderten Speicherstellen und einer oder mehreren Dateikennungen, die die eine oder die mehreren Datendateien identifizieren, zu verknüpfen.
  • Außerdem werden Systeme zur Sicherung von Datendateien beschrieben. Bei einer Ausführungsform können die Systeme eine oder mehrere Datendateien, einen oder mehrere Server, die mit den Datendateien kommunizieren, wobei der eine oder die mehreren Server so konfiguriert sein können, dass sie Änderungsanforderungen an den Datendateien ausführen, und einen oder mehrere Agenten, die mit dem einen oder den mehreren Servern kommunizieren, wobei der eine oder die mehreren Agenten so konfiguriert sein können, dass sie geänderte Speicherstellen in der einen oder den mehreren Datendateien detektieren, die Inhalte der geänderten Speicherstellen zu einer Speicherungszeit speichern, und die gespeicherten Inhalte mit der Speicherungszeit, den geänderten Speicherstellen und einer oder mehreren Dateikennungen, die die eine oder die mehreren Dateien identifizieren, verknüpfen.
  • Diese und andere Merkmale der beschriebenen Systeme und Verfahren erschließen sich besser aus der folgenden detaillierten Beschreibung und den beiliegenden Zeichnungen.
  • Kurzbeschreibung der Zeichnungen
  • 1A bis 1C sind schematische Darstellungen eines beispielhaften Systems zur Sicherung von Datendateien;
  • 2 ist eine schematische Darstellung beispielhafter Operationen für ein System gemäß den 1A bis 1C;
  • 3 und 4 sind schematische Darstellungen beispielhafter Delta-Dateien und Indizes für ein System gemäß den 1A bis 1C und 2; und
  • 5 ist eine schematische Darstellung einer beispielhaften Anzeige einer graphischen Benutzerschnittstelle, die die beschriebenen Systeme und Verfahren erleichtern kann.
  • Detaillierte Beschreibung
  • Nunmehr werden beispielhafte Ausführungsformen beschrieben, um die hierin beschriebenen Systemen und Verfahren insgesamt zu verdeutlichen. Ein oder mehrere Beispiele der beispielhaften Ausführungsformen sind in den Zeichnungen dargestellt. Der Dutchschnittsfachmann erkennt, dass die hierin beschriebenen Systeme und Verfahren angepasst und modifiziert werden können, um Geräte, Verfahren, Auslegungen und Systeme für andere Anwendungen bereitzustellen, und dass andere Hinzufügungen und Modifikationen der hierin beschriebenen Systeme und Verfahren vorgenommen werden können, ohne vom Gültigkeitsbereich der vorliegenden Offenbarung abzuweichen. So können beispielsweise Aspekte, Komponenten, Merkmale und/oder Module der beispielhaften Ausführungsformen kombiniert, getrennt, ausgetauscht und/oder neu angeordnet werden, um andere Ausführungsformen zu erzeugen. Solche Modifikationen und Variationen werden vom Gültigkeitsbereich der vorliegenden Offenbarung abgedeckt.
  • Die beschriebenen Systeme und Verfahren betreffen allgemein die Sicherung von Datendateien. Bei Ausführungsformen der beschriebenen Systeme und Verfahren können einer oder mehrere Agenten geänderte Speicherstellen in einer oder mehreren Datendateien bezüglich eines Bildes der Datendateien detektieren. Die Agenten können die Inhalte der geänderten Speicherstellen zu einer Speicherungszeit speichern und einen oder mehrere Indizes erzeugen, um die gespeicherten Inhalte mit der Speicherungszeit, den geänderten Speicherstellen und einer oder mehreren Dateikennungen, die die mit den geänderten Speicherstellen verknüpften Datendateien identifizieren, zu verknüpfen. Die Agenten können also iterativ zum Detektieren zurückkehren und/oder geänderte Speicherstellen in den Datendateien bezüglich des Bildes zu den jeweiligen Zeiten weiter detektieren. Auf Basis des Bildes, der gespeicherten Inhalte und der Indizes können die Agenten eine oder mehrere Versionen der einen oder mehreren Datendateien einschließlich gelinderter Speicherstellen zu einer oder mehreren der Speicherungszeiten neu erzeugen.
  • Die 1A bis 1C zeigen schematisch ein beispielhaftes System zur Sicherung von Datendateien. Wie die Ausführungsform von 1A zeigt, kann das System 100 Datenverarbeitungsgeräte für einen ersten und zweiten Client (Clients) 110, 120, ein erstes und zweites Datenverarbeitungsgerät von Daten-Servern (Daten-Server) 130, 140, und ein erstes und zweites digitales Datenverarbeitungsgerät von Sicherungs-Servern (Sicherungs-Server) 150, 160 enthalten. Der erste und zweite Daten-Server 130, 140 und der erste und zweite Sicherungs-Server 150, 160 können mit einem ersten und zweiten Datenspeichergerät 135, 145 bzw. einem ersten und zweiten Sicherungsspeichergerät 155, 165 verknüpft sein. Die Daten-Server 130, 140 können den Clients 110, 120 auf Basis von Anforderungen seitens der Clients 110, 120 den Zugriff (z. B. Lese- und/oder Schreibzugriff) auf Datendateien bereitstellen, die in den Datenspeichergeräten 135, 145 gespeichert sind. Bei manchen Ausführungsformen können die Daten-Server 130, 140 verschiedene Typen von Datendateien in den Datenspeichergeräten 135, 145 pflegen. Bei einer solchen Ausführungsform kann der Daten-Server 130 z. B. E-Mail-Dateien im Datenspeichergerät 135 und der Daten-Server 140 Dokumentdateien im Datenspeichergerät 145 pflegen. Die Clients 110, 120 können die in den Datenspeichergeräten 135, 145 gespeicherten Datendateien öffnen, schließen, modifizieren und/oder löschen. Die Sicherungs-Server 150, 160 können Änderungen der in den Datenspeichergeräten 135, 145 gespeicherten Datendateien nach den Sicherungsspeichergeräten 155, 165 sichern. Bei manchen Ausführungsformen können die Sicherungs-Server 150, 160 und die Sicherungsspeichergeräte 155, 165 so konfiguriert sein, dass sie gesicherte Daten unterschiedlich lang aufbewahren. Bei einer solchen Ausführungsform können z. B. der erste Sicherungs-Server 150 und das erste Sicherungsspeichergerät 155 Daten relativ kurzzeitig speichern, währen der zweite Sicherungs-Server 160 und das zweite Sicherungsspeichergerät 165 Daten relativ lang speichern können. Bei einer solchen Ausführungsform kann das erste Sicherungsspeichergerät 155 eine oder mehrere Magnetplatten und das zweite Sicherungsspeichergerät 165 ein oder mehrere Magnetbänder enthalten. Die Dauer der Datenaufbewahrung kann vom Benutzer gewählt werden (z. B. einem Systemadministrator oder einer anderen Institution).
  • Wie aus 1A zu ersehen ist, können die Clients 110, 120, die Server 130, 140, 150, 160 und die Speichergeräte 135, 145, 155, 165 Daten über ein Datenkommunikationsnetz 105 austauschen. Das Datenkommunikationsnetz 105 kann einen oder mehrere Netzknoten (z. B. die Clients 110, 120, die Daten-Server 130, 140 und die Sicherungs-Server 150, 160) enthalten, die durch verdrahtete und/oder drahtlose Kommunikationsleitungen (z. B. öffentliche Netzträgerleitungen, private Leitungen, Satellitenleitungen etc.), die den Netzknoten die Kommunikation ermöglichen, miteinander verbunden sind. Der Austausch von Daten (z. B. Meldungen) zwischen Netzknoten kann durch Netzgeräte (z. B. Router, Schalter, Multiplexer, Brücken, Gateways etc.) erleichtert werden, die Daten von einem Ursprungsknoten zu einem Server-Knoten ungeachtet von Ungleichheiten in der Netztopologie (z. B. Bus, Stern oder Token-Ring), räumlichen Distanzen (lokales Netz, Großstadtnetz oder Weitverkehrsnetz), Übertragungstechnologie (z. B. Übertragungssteuerungsprotokoll/Internet-Protokoll (transfer control protocol/internet protocol; TCP/IP) oder Systemnetzarchitektur), Datentyp (z. B. Daten, Sprache, Video oder Multimedia), Art der Verbindung (z. B. vermittelt, nicht vermittelt, gewählt, fest zugeordnet oder virtuell) und/oder physikalischer Verbindung (z. B. Lichtleiter, Koaxialkabel, verdrilltes Paar oder drahtlos etc.) zwischen den Ursprungs- und den Server-Knoten manipulieren und/oder leiten. Die Knoten können ein Netzsubsystem (z. B. eine Netzschnittstellenkarte) enthalten, um eine Kommunikationsstrecke zwischen den Knoten einzurichten. Die Kommunikationsstrecke, die die Knoten untereinander verbindet, kann Elemente eines Datenkommunikationsnetzes, eine Punkt-zu-Punkt-Verbindung, einen Bus und/oder einen anderen Typ eines digitalen Datenweges enthalten, der prozessorlesbare Daten übertragen kann.
  • Wie dem Durchschnittsfachmann bekannt ist, können bei manchen Ausführungsformen einer oder mehrere Knoten des Datenkommunikationsnetzes 105 in einem lokalen Netz (local area network; LAN) enthalten sein. Bezug nehmend auf 1A als Beispiel können bei einer solchen Ausführungsform die Clients 110, 120, die Daten-Server 130, 140, der erste Sicherungs-Server 150, die Datenspeichergeräte 135, 145, und das erste Sicherungsspeichergerät 155 ein LAN bilden oder auf andere Weise in einem LAN enthalten sein. Ein solches LAN kann ein öffentlich zugängliches oder ein privates, d. h. ein nicht öffentlich zugängliches LAN enthalten. Bei einer solchen Ausführungsform können der zweite Sicherungs-Server 160 und das zweite Sicherungsspeichergerät 165 entfernt vom LAN angeordnet sein und mit einem oder mehreren Knoten des LAN auf Basis von Schemata, die dem Durchschnittsfachmann bekannt sind, kommunizieren. Alternativ können beispielsweise wie in 1A dargestellt bei manchen Ausführungsformen die Clients 110, 120, die Daten-Server 130, 140 und die Datenspeichergeräte 135, 145 ein LAN bilden oder auf andere Weise in einem LAN enthalten sein und der erste und zweite Sicherungs-Server 150, 160 sowie die verknüpften Sicherungsspeichergeräte 155, 165 entfernt vom LAN angeordnet sein.
  • Die beschriebenen Systeme und Verfahren sind nicht auf netzgestützte Systeme beschränkt und können in unabhängigen Systemen implementiert sein. Bei manchen Ausführungsformen können die hierin beschriebenen Systeme und Verfahren z. B. in einem unabhängigen System implementiert sein, das ein digitales Datenverarbeitungsgerät und ein Datenspeichergerät enthält. Das digitale Datenverarbeitungsgerät kann Merkmale von Daten-Servern und Sicherungs-Servern wie hierin beschrieben enthalten, und das Datenspeichergerät kann die Speicherung von Datendateien und gesicherten Daten enthalten.
  • Die digitalen Datenverarbeitungsgeräte 110, 120, 130, 140, 150, 160 können einen Personal Computer, eine Computer-Workstation (z. B. Sun, Hewlett-Packard), einen Laptop-Computer, einen Großrechner, einen Server-Computer, ein Netzergänzungsspeichergerät (network-attached storage; NAS), ein Handgerät (z. B. einen Personal Digital Assistant, einen Taschen-Personal Computer (PC), ein Zelltelefon etc.), ein Informationsgerät und/oder einen anderen Typ eines generischen oder prozessorgesteuerten Sondergeräts, das in der Lage ist, digitale Daten zu empfangen, zu verarbeiten und/oder zu senden. Wie es sich für den Durchschnittsfachmann versteht, kann sich ein Prozessor auf die Logikschaltung beziehen, die auf Befehle antwortet und diese verarbeitet, die digitale Datenverarbeitungsgeräte ansteuern, und kann ohne Einschränkung eine Zentraleinheit, eine Arithmetiklogikeinheit, eine anwendungsspezifische integrierte Schaltung, eine Aufgabenmaschine und/oder Kombinationen, Anordnungen oder Mehrfache davon enthalten.
  • Wie 1A zeigt, können die Speichergeräte 135, 145, 155, 165 Datendateien speichern, die von den Servern 130, 140, 150 bzw. 160 gepflegt werden. Wie hierin verwendet, kann der Begriff Datendatei so verstanden werden, dass er Dateien enthält, deren Typen und Datenformate dem Durchschnittsfachmann bekannt sind. So kann der Begriff Datendateien Anwendungsdateien, Datendateien, ausführbare Dateien, Objektdateien, Programmdateien, Betriebssystemdateien, Registrierdateien und andere dem Durchschnittsfachmann bekannte Typen von Datendateien enthalten, wobei diese Beispiele zum Zwecke der Verdeutlichung und nicht der Einschränkung genannt werden. Bei manchen Ausführungsformen kann der Begriff Datendateien so verstanden werden, dass er Datenobjekte innerhalb der Datendateien, wie etwa Anhänge (z. B. Anhänge von E-Mail-Dateien), Datensätze (z. B. Datensätze in E-Mail-Dateien) sowie Datenzeilen und Tabellen (z. B. Datenzeilen und Tabellen in einer Datenbankdatei in einer strukturierten Abfragesprache (structured query language; SQL)), wobei diese Beispiele zum Zwecke der Verdeutlichung und nicht der Einschränkung genannt werden. Die Speichergeräte 135, 145, 155, 165 können z. B. flüchtige und/oder nicht flüchtige Speicher und/oder Speicherelemente, wie Speicher mit wahlfreiem Zugriff (random access memory; RAM), ein Festplattenlaufwerk (z. B. ein internes oder externes Festplattenlaufwerk), eine Magnetplatte, ein Magnetbank, eine Kompaktplatte (compact disk; CD), eine digitale Videoplatte (digital video disk; DVD), eine redundante Anordnung unabhängiger Platten (redundant array of independent disks; RAID) und ein ausbaubares Speichergerät enthalten. Bei manchen Ausführungsformen können die Speichergeräte 135, 145, 155, 165 Speichergeräte enthalten, die über eine Netzspeichertopologie, die dem Durchschnittsfachmann bekannt ist, wie u. a. Netzergänzungsspeicher-(NAS) und/oder Speicherbereichvernetzungs-(storage area networking; SAN) Topologien vernetzt sein. Bei manchen Ausführungsformen wie der in 1A dargestellten Ausführungsform können die Speichergeräte 135, 145, 155, 165 physisch von den Servern 130, 140, 150 bzw. 160 getrennt sein. Alternativ und/oder in Kombination können bei manchen Ausführungsformen eines oder mehrere der Speichergeräte 135, 145, 155, 165 in einen oder mehreren der jeweiligen Server 130, 140, 150, 160 physisch integriert sein. So kann z. B. bei einer solchen Ausführungsform das Speichergerät 135 im Server 130 integriert sein. Bei manchen Ausführungsformen kann ein Speichergerät mit zwei oder mehr Servern verknüpft sein.
  • 1B ist eine schematische Darstellung von Merkmalen eines beispielhaften Daten-Servers und eines zugehörigen Datenspeichergeräts. Wie aus 1B zu ersehen ist, kann der Daten-Server 200 einen Planagenten 210, einen Speicherplatzagenten 215, einen Statusagenten 225, einen Regel-Koordinatoragenten 230 und eine oder mehrere Regeln 235, einen Befehlskoordinatoragenten 240 und einen oder mehrere Befehle 245, einen Indexagenten 250, eine Dateisystemschnittstelle 255, einen Bildagenten 260 und einen Detektionsagenten 265 enthalten. Wie hierin verwendet, kann sich der Begriff Agent auf einen oder mehrere auf dem Daten-Server 200 ausgeführte Software-Prozesse und der Begriff Regel auf eine Operation (wie eine Sicherungsoperation, eine Wiederherstellungsoperation und eine Vereinigungsoperation) beziehen, die von den Agenten des Daten-Servers 200 auszuführen sind. Eine Regel kann Daten enthalten, die auf einer oder mehreren Datendateien (z. B. eine Liste der durch die Regel betroffenen Datendateien) basieren und/oder anderweitig damit verknüpft sind, und Zeiten der Ausführung der Regel. Wie ferner hierin beschrieben ist, kann eine Regel von einem Benutzer (z. B. einem Systemadministrator oder einer anderen Institution) erzeugt werden. Obwohl die Merkmale des Daten-Servers 200 (und die Merkmale des Sicherungs-Servers 300 von 1C) so dargestellt sind, dass sie verschiedene Funktionen ausführen, versteht sich für den Durchschnittsfachmann, dass die Merkmale des Daten-Servers 200 (und getrennt die Merkmale des Sicherungs-Servers 300) kombiniert oder anderweitig modifiziert werden können, um verschiedene Merkmale zu bilden, und dass sie als beispielhaft und nicht einschränkend zu interpretieren sind.
  • Wie bei der Ausführungsform von 1B dargestellt ist, kann der Daten-Server 200 mit einem Datenspeichergerät 270 verknüpft werden, das eine oder mehrere Datendateien 275 in einem Format wie eine Verzeichnis- oder Unterverzeichnisstruktur, speichern kann, obwohl auch andere Formate verwendet werden können. Der Planagent 210 kann Meldungen bereitstellen, einschließlich Zeitdaten, die vom Regelkoordinatoragenten 230 und/oder anderen Agenten verwendet werden können, um eine oder mehrere Aktionen zu veranlassen. Wie ferner hierin beschrieben ist, kann der Planagent 210 z. B. dem Regelkoordinatoragenten 230 eine Meldung bereitstellen, die angibt, dass eine in einer Regel 235 enthaltene Zeit zur Ausführung einer Aktion erreicht worden ist. Der Speicherplatzagent 215 kann die Größe des verfügbaren Speicherplatzes im Datenspeichergerät 270 bestimmen. Der Statusagent 225 kann Statusinformationen (z. B. Fehlermeldungen und/oder informative Meldungen) einem oder mehreren Agenten des Daten-Servers 200 bereitstellen. Der Regelkoordinatoragent 230 kann die Regeln 235 auf dem Daten-Server 200 verwalten und eine auszuführende Operation angeben (z. B. eine Sicherungsoperation, eine Wiederherstellungsoperation und eine Vereinigungsoperation). Der Befehlskoordinatoragent 240 kann eine vom Regelkoordinatoragenten 230 angegebene Operation ausführen. Der Befehlskoordinatoragent 240 kann z. B. Befehle 245 (z. B. Sicherungs-, Wiederherstellungs- und Vereinigungsbefehle) zur Ausführung einer vom Regelkoordinatoragenten 230 angegebenen Operation erzeugen. Der Indexagent 250 kann einen oder mehrere Indizes erzeugen, um gesicherte Daten zu lokalisieren. Bei einer Ausführungsform kann der Indexagent 250 z. B. zwei Indizes zum Lokalisieren gesicherter Daten auf Basis der im Datenspeichergerät 270 gespeicherten Datendateien 275 erzeugen. Die Dateisystemschnittstelle 255 kann für die im Datenspeichergerät 270 gespeicherten Datendateien 275 eine Schnittstelle bereitstellen. Der Bildagent 260 kann ein Bild einer oder mehrerer der im Datenspeichergerät 270 gespeicherten Datendateien 275 erzeugen. Der Detektionsagent 265 kann geänderte Speicherstellen in einer oder mehreren der Datendateien 275, die im Datenspeichergerät 270 gespeichert sind, bezüglich eines Bildes der Datendateien detektieren. Wie hierin zuvor erwähnt, sind die dargestellten Ausführungsformen nur als Beispiele bereitgestellt und dementsprechend können die Agenten 210, 225, 230, 240, 250, 260, 265 kombiniert, getrennt und/oder in anderen Ausführungsformen neu angeordnet sein.
  • 1C zeigt schematisch Merkmale eines beispielhaften Sicherungs-Servers und eines zugehörigen Sicherungsspeichergerätes. Wie aus 1C zu ersehen ist, kann der Sicherungs-Server 300 einen oder mehrere Agenten ähnlich wie die in 1B dargestellten enthalten. Diese Agenten sind mit Bezugszeichen gekennzeichnet, die bezüglich der Bezugszeichen der in 1B dargestellten Agenten um 100 differieren. Außerdem kann der Sicherungs-Server 300 einen Delta-Agenten 380 und einen Speichermanagementagenten 385 enthalten. Der Delta-Agent 380 kann Daten verwalten, die im Sicherungsspeichergerät 370 gespeichert sind, wie Daten, die zu einer Sicherung der im Datenspeichergerät 270 gespeicherten Datendateien gehören. Der Speichermanagementagent 385 kann Eingaben und Ausgaben (z. B. asynchrone Eingaben und Ausgaben) an bzw. vom Sicherungsspeichergerät 370 bereitstellen.
  • Für den Durchschnittsfachmann versteht es sich, dass die beschriebenen Systeme und Verfahren nicht auf eine bestimmte Konfiguration aus Clients, Daten-Servern, Sicherungs-Servern und Speichergeräten beschränkt sind, und in Systemen implementiert werden können, die von den in den 1A bis 1C dargestellten verschieden sind. So können die beschriebenen Systeme und Verfahren z. B. in Konfigurationen mit einem oder mehreren Clients, einem oder mehreren Daten-Servern, einem oder mehreren Datenspeichergeräten, einem oder mehreren Sicherungs-Servern und einem oder mehreren Sicherungsspeichergeräten implementiert werden. Außerdem versteht es sich für den Durchschnittsfachmann, dass die Funktionen eines oder mehrerer der Merkmale des Daten-Servers 200 und des Sicherungs-Servers 300 auf zwei oder mehr Merkmale verteilt werden können. Die Funktionen des Bildagenten 260 des Daten-Servers 200 können z. B. zwischen den Agenten verteilt werden, die im Daten-Server 200 und im Sicherungs-Server 300 vorgesehen sind. Außerdem können z. B. die Funktionen des Bildagenten 260 des Daten-Servers 200 auf zwei oder mehr Bildagenten verteilt sein, die mit verschiedenen Gruppierungen der im Datenspeichergerät 270 gespeicherten Datendateien 275 verknüpft sind.
  • 2 ist eine schematische Darstellung eines Abschnitts des beispielhaften Systems 100 in den 1A bis 1C. Wie aus 2 ersichtlich ist, kann der dargestellte Abschnitt des beispielhaften Systems 100 einen Daten-Server 400, ein zugehöriges Datenspeichergerät 470, einen Sicherungs-Server 500 und ein zugehöriges Sicherungsspeichergerät 570 enthalten. Der Daten-Server 400 und der Sicherungs-Server 500 können Merkmale enthalten, die den hierin unter Bezugnahme auf die 1A bis 1C beschriebenen ähnlich sind. Einige dieser Merkmale sind in 2 mit Bezugszeichen gekennzeichnet, die bezüg lich der Bezugszeichen der 1B und 1C und 100 differieren. Wie es sich für den Durchschnittsfachmann versteht, können der Daten-Server 400 und der Sicherungs-Server 500 Daten auf Basis eines Client-/Server-Modells austauschen, bei dem der Daten-Server 400 den Client-Abschnitt des Modells und der Sicherungs-Server 500 den Server-Abschnitt des Modells repräsentieren kann.
  • Beispielhafte Operationen für ein System gemäß den 1A bis 1C werden nunmehr anhand von 2 beschrieben. Die in 2 dargestellten Operationen können von einem oder mehreren Agenten, die im Daten-Server 400 und/oder von einem oder mehreren Agenten, die im Sicherungs-Server 500 vorgesehen sind, veranlasst werden. Für den Durchschnittsfachmann versteht es sich, dass die beispielhaften Operationen nur zur Veranschaulichung und nicht einschränkend zu interpretieren sind.
  • Eine Übersicht einer beispielhaften Sicherungsoperation für ein System gemäß den 1A bis 1C wird nunmehr anhand von 2 gegeben. Zur Verdeutlichung wird die beispielhafte Sicherungsoperation bezüglich der Veranlassung durch Agenten des Daten-Servers 400 beschrieben. Auf Basis eines Sicherungsbefehls 445 von einem Befehlskoordinatoragenten 440 kann der Bildagent 460 ein Bild 478 auf Byte-Ebene der im Datenspeichergerät 470 gespeicherten Datendateien 475 erzeugen. Wie aus 2 ersichtlich ist, kann das Datenspeichergerät 470 eine oder mehr Datendateien 475 speichern, die eine hierarchische Struktur haben können, wie die dargestellte Verzeichnis- und Unterverzeichnisstruktur. Bei manchen Ausführungsformen kann das Bild 478 auf Byte-Ebene im Datenspeichergerät 470 gespeichert werden. Alternativ und/oder in Kombination kann bei manchen Ausführungsformen das Bild 478 auf Byte-Ebene im Sicherungsspeichergerät 570 gespeichert werden. Im Wesentlichen gleichzeitig mit der und/oder nach der Erzeugung des Bildes 478 kann der Detektionsagent 465 auf Byte-Ebene geänderte Speicherstellen in den Datendateien 475 bezüglich des Bildes 478 detektieren. Der Daten-Server 400 (z. B. der Befehlskoordinatoragent 440, der Detektionsagent 465 und/oder ein anderer Agent im Daten-Server 400) kann dem Sicherungs-Server 500 die geänderten Speicherstellen bereitstellen, und zu einer Speicherungszeit wie die in 2 dargestellte Speicherungszeit t0 kann der Delta-Agent 580 die Inhalte der geänderten Speicherstellen in einer Delta-Datei 590 im Sicherungsspeichergerät 570 speichern. Alternativ und/oder in Kombination kann der Sicherungs-Server (z. B. der Befehlskoordinatoragent 540, der Delta-Agent 580 und/oder ein anderer Agent im Sicherungs-Server 500) die geänderten Speicherstellen aus dem Daten-Server 400 abrufen. Im Wesentlichen gleichzeitig mit der und/oder nach der Erzeugung der Delta-Datei 590 kann der Indexagent 450 und/oder 550 die gespeicherten Inhalte in der Delta-Datei 590 mit der Speicherungszeit t0, den geänderten Speicherstellen und einer oder mehreren Dateikennungen, die die Datendateien 475 einschließlich der detektierten geänderten Speicherstellen kennzeichnen, verknüpfen. Wie z. B. in 2 dargestellt ist, kann der Indexagent 450 und/oder 550 einen ersten Index 592 auf die geänderten Speicherstellen auf Basis der Dateikennungen und einen zweiten Index 594 auf die gespeicherten Inhalte auf Basis der geänderten Speicherstellen erzeugen. Wie die Ausführungsform von 2 zeigt, können die ersten bzw. zweiten Indizes 592, 594 im Sicherungsspeichergerät 570 gespeichert werden. Alternativ und/oder in Kombination können die ersten bzw. zweiten Indizes 592, 594 im Datenspeichergerät 470 gespeichert werden. Der Detektionsagent 465 kann iterativ zum Detektieren zurückkchren und/oder geänderte Speicherstellen in den Datendateien 475 bezüglich des Bildes 478 weiter detektieren, und der Delta-Agent 580 kann Delta-Dateien 590', 590'' zu nachfolgenden Speicherungszeiten wie den in 2 dargestellten Zeiten t1, t2 erzeugen. Der Indexagent 450 und/oder 550 kann erste und zweite zu den Delta-Dateien gehörige Indizes erzeugen, die mit 592', 592'' bzw. 594', 594'' gekennzeichnet sind. Wie hierin ferner beschrieben ist, können das Bild 478, die Delta-Dateien 590 und die zugehörigen ersten und zweiten Indizes 592, 594 verwendet werden, um eine Version einer Datendatei mit den geänderten Speicherstellen zu einer oder mehreren der Speicherungszeiten t0, t1 und t2 zu erzeugen.
  • Daten in einer oder mehreren Delta-Dateien 590, erste Indizes 592 und zweite Indizes 594 können auf Basis von Schemata, die dem Durchschnittsfachmann bekannt sind, komprimiert und/oder verschlüsselt werden.
  • Nunmehr werden einige Merkmale der in 2 dargestellten beispielhaften Sicherungsoperation beschrieben. Die Sicherungsoperation kann durch eine Anforderung, eine im Datenspeichergerät 470 gespeicherte Datendatei zu sichern, veranlasst werden. Bei manchen Ausführungsformen kann ein Planagent 410 und/oder 510 eine Meldung bereitstellen, die angibt, dass eine Zeit oder ein Ereignis (z. B. Bedingung erfüllt), die bzw. das in einer Sicherungsregel 435 und/oder 535 enthalten ist, eingetreten ist. Eine Sicherungsregel 435 und/oder 535 kann Daten auf Basis von Datendateien enthalten, für die geänderte Speicherstellen zu detektieren sind (die hierin als Regeldatendateien bezeichnet werden), und Speicherungszeiten, zu denen die Inhalte der geänderten Speicherstellen zu speichern sind. Die Speicherungszeiten können auf Zeiten wie tatsächlichen Zeiten (z. B. Zeiten, die durch eine Uhr eines Servers wie des Daten-Servers 400 und/oder des Sicherungs-Servers 500 gemessen werden) und Zeitintervalle (z. B. periodische Zeitintervalle, die von einer Uhr eines Servers gemessen werden) und/oder Ereignisse (z. B. von einem Systemadministrator oder einer anderen Institution vorgeschriebene Ereignisse) basieren. Zur Verdeutlichung sind die Regeldatendateien in 2 als die Datendateien 475 gekennzeichnet, die im Datenspeichergerät 470 gespeichert sind. Für den Durchschnittsfachmann versteht es sich, dass die Regeldatendateien eine oder mehrere der im Datenspeichergerät 470 gespeicherten Datendateien 475 enthalten können. Für den Durchschnittsfachmann versteht es sich ebenfalls, dass die beschriebenen Systeme und Verfahren so konfiguriert sein können, dass sie gleichzeitig mehrere Regeln in Zusammenhang mit verschiedenen Regeldatendateien ausführen.
  • Auf Basis einer Anforderung zur Sicherung der Regeldatendateien 475 und/oder einer Meldung von einem Planagenten 410, dass eine Zeit oder ein Ereignis in der Sicherungsregel 435 eingetreten ist, kann ein Regelkoordinatoragent 430 bestimmen, ob für die Regeldatendateien bereits ein Bild vorhanden ist, d. h. früher erzeugt worden ist. Wie hierin verwendet, kann der Begriff Bild so verstanden werden, dass er eine frühere Kopie der Regeldatendateien 475 enthält. Der Regelkoordinatoragent 430 kann auf Basis von dem Durchschnittsfachmann bekannten Schemata bestimmen, ob das Bild der Regeldatendateien vorliegt. Auf Basis der Bestimmung, dass kein Bild der Regeldatendateien vorhanden ist, kann der Regelkoordinatoragent 430 den Befehlskoordinatoragenten 440 anweisen, ein Bild der Regeldatendateien 475 zu erzeugen, und der Befehlskoordinatoragent 440 kann den Bildagenten 460 anweisen, ein Bild der Regeldatendateien 475 zu erzeugen. Wie in der Ausführungsform von 2 dargestellt ist, kann z. B. der Bildagent 460 ein Bild 478 der Regeldatendateien 475 erzeugen und das Bild 478 im Datenspeichergerät 470 speichern.
  • Der Bildagent 460 kann einen oder mehrere verschiedene Bildtypen erzeugen. Bei manchen Ausführungsformen kann der Bildagent 460 ein Schnappschussbild 478 der Regeldatendateien 475 erzeugen. Wie hierin verwendet, kann der Begriff Schnappschussbild 478 so verstanden werden, dass er die Inhalte der Regeldatendateien 475 und ihre gegenseitigen Beziehungen z. B. die Verzeichnis- und Unterverzeichnisstruktur von 2 enthält. Alternativ und/oder in Kombination kann der Bildagent 460 bei manchen Ausführungsformen eine oder mehrere Dateibilder (z. B. Bilder einer oder mehrerer der Regeldatendateien 475) und/oder ein oder mehrere Datenträgerbilder in dem Sinne, in dem der Begriff Datenträgerbilder vom Durchschnittsfachmann verstanden wird, erzeugen. Der Bildagent 460 kann das Bild 478 in einem sicheren Transaktionszustand der Regeldatendateien 475 erzeugen. Vor der Erzeugung des Basisbildes 478 kann der Befehlskoordinator agent 440 z. B. den Daten-Server 400 und/oder das Datenspeichergerät 470 anweisen, die Regeldatendateien 475 in einen sicheren Transaktionszustand zu versetzen. Wie es sich für den Durchschnittsfachmann versteht, bezeichnet ein sicherer Transaktionszustand einen Zustand einer Datendatei, in dem Änderungen der Datendatei zumindest vorübergehend verboten sind. Der sichere Transaktionszustand der Regeldatendateien 475 kann nach der Erzeugung des Bildes 478 aufgehoben werden.
  • Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 440 den Indexagenten 450 anweisen, eine oder mehrere Datenintegritätsprozeduren anzuwenden, um eine Zusammenfassung oder Übersicht des Bildes 478 zu erzeugen. Die Datenintegritätsprozeduren können auf einem oder mehreren zyklischen Redundanz-(CRC)Algorithmen, dem MD5-Meldungsübersichtsalgorithmus und anderen Übersichtsalgorithmen beruhen, die denn Durchschnittsfachmann bekannt sind. Der Indexagent 450 kann die Zusammenfassung mit dem Bild 478 verknüpfen und die Zusammenfassung im Datenspeichergerät 470 speichern. Bei manchen Ausführungsformen kann der Indexagent 450 eine Zusammenfassung eines oder mehrerer Abschnitte des Bildes 478 erzeugen. Bei einer solchen Ausführungsform kann der Indexagent 450 z. B. Zusammenfassungen der Verzeichnisse und/oder Unterverzeichnisse, die im Bild 478 enthalten sind, erzeugen. Außerdem kann der Indexagent 450 bei einer solchen Ausführungsform z. B. Zusammenfassungen einer oder mehrerer der im Bild 478 enthaltenen Regeldatendateien 475 erzeugen.
  • In der folgenden Erörterung wird auf Basisbilder und Zusammenfassungen sowie auf zweite Bilder und Zusammenfassungen eingegangen. Wie hierin verwendet können die Begriffe Basis und zweite(r)(s) auf eine relative zeitliche Beziehung verweisen, bei der Basis die Verknüpfung mit einer früheren Zeit und zweite(r)(s) die Verknüpfung mit einer späteren Zeit bedeutet.
  • Auf Basis eines Basisbildes 478 für die Regeldatendateien 475, die erzeugt und/oder anderweitig identifiziert werden, kann der Regelkoordinatoragent 430 den Befehlskoordinatoragenten 440 anweisen, die Regeldatendateien 475 zu sichern, und der Befehlskoordinatoragent 440 kann den Detektionsagenten 465 anweisen, geänderte Speicherstellen in den Regeldatendateien 475 zu detektieren. Bei manchen Ausführungsformen kann der Detektionsagent 465 ein Dateisystemfilter enthalten. Wie es sich für den Durchschnittsfachmann versteht, kann das Dateisystemfilter einen Treiber enthalten, der mit einem Betriebssystem über eine Kernschnittstelle in Dialog steht, und der Anforderungen von einem Betriebssystem an ein Dateisystem abfangen und austauschen kann (z. B. Eingangs- /Ausgangs-Anforderungspakete (input/outout request packets; IRPs)). Alternativ und/oder in Kombination kann der Detektionsagent 465 bei manchen Ausführungsformen einen Datei-Abtastagenten enthalten. Bei manchen Ausführungsformen kann der Detektionsagent 465 ein Dateisystemfilter und einen Datei-Abtastagenten als Teil eines Redundanzschemas enthalten. Der Detektionsagent 465 kann z. B. Änderungen standardmäßig mit dem Dateisystemfilter und bei Ausfall des Dateisystemfilters mit dem Dateiabtastagenten detektieren. Bei manchen Ausführungsformen kann der Detektionsagent 465 geänderte Speicherstellen auf Byte-Ebene und/oder Plattenblockebene detektieren.
  • Wie es sich für den Durchschnittsfachmann versteht, sind die beschriebenen Systeme und Verfahren nicht auf Detektionsagenten 465 beschränkt, die ein Dateisystemfilter und/oder einen Dateiabtastagenten enthalten, sondern können Detektionsagenten 465 enthalten, die so konfiguriert sind, dass sie Änderungen und/oder geänderte Speicherstellen in den Datendateien 475 auf Basis anderer Schemata detektieren, um dieselbe Funktion zu erfüllen.
  • Bei Ausführungsformen, in denen der Detektionsagent ein Dateisystemfilter enthält, kann der Detektionsagent Anforderungen (z. B. Schreibanforderungen) von einem Betriebssystem des Daten-Servers 400 an die im Datenspeichergerät 470 gespeicherten Regeldatendateien 475 abfangen. Bei einer solchen Ausführungsform kann der Detektionsagent 465 Meldungen bereitstellen, die Änderungen der Regeldatendateien 475 beschreiben. Der Detektionsagent 465 kann z. B. Meldungen bereitstellen, die Daten auf Basis geänderter Speicherstellen in den Regeldatendateien 475 enthalten. Die Daten können Dateikennungen enthalten, die Dateien mit geänderten Speicherstellen und die geänderten Speicherstellen auf Byte-Ebene identifizieren. Der Detektionsagent 465 kann die Meldungen dynamisch, d. h. im Wesentlichen gleichzeitig mit den Änderungen der Regeldatendateien 475 bereitstellen. Bei Ausführungsformen, in denen der Detektionsagent 465 ein Dateisystemfilter enthält, kann der Detektionsagent 465 deshalb dem Befehlskoordinatoragenten 440 Dateikennungen bereitstellen, die eine oder mehrere Regedatendateien 475 mit geänderten Speicherstellen und den entsprechenden geänderten Speicherstellen auf Byte-Ebene identifizieren.
  • Bei Ausführungsformen, in denen der Detektionsagent 465 einen Dateiabtastagenten enthält, kann der Detektionsagent 465 die Regeldatendateien 475 auf geänderte Speicherstellen auf Basis von Befehlen vom Befehlskoordinatoragenten 440 abtasten. Bei einer solchen Ausführungsform kann der Bildagent 460 ein zweites Bild der Regeldatendateien 475 erzeugen, der Indexagent 450 kann eine zweite Zusammenfassung des zweiten Bildes erzeugen, und der Detektionsagent 465 kann die zweite Zusammenfassung und die Basiszusammenfassung verwenden, um zu bestimmen, ob die Regeldatendateien 475 geänderte Speicherstellen enthalten. Der Detektionsagent 465 kann z. B. die zweite Zusammenfassung mit der Basiszusammenfassung vergleichen, um zu bestimmen, ob eine oder mehrere Regeldatendateien 475 geänderte Speicherstellen enthalten. Im Allgemeinen können Differenzen zwischen der Basiszusammenfassung und der zweiten Zusammenfassung angeben, dass eine oder mehrere der Regeldatendateien 475 geänderte Speicherstellen enthalten. Wie es sich für den Durchschnittsfachmann versteht, kann der Detektionsagent 465 mehrere zweite Zusammenfassungen mit mehreren entsprechenden Basiszusammenfassungen vergleichen, um Regeldatendateien 475 einschließlich geänderter Speicherstellen zu identifizieren. Der Detektionsagent 475 kann z. B. Zusammenfassungen in einer absteigenden hierarchischen Weise vergleichen, wie Verzeichniszusammenfassungen, Unterverzeichnis-Zusammenfassungen und Datendateienzusammenfassungen, um Regeldatendateien 475 mit geänderten Speicherstellen zu identifizieren. Auf Basis der Identifizierung einer oder mehrerer Regeldatendateien 475 einschl. geänderter Speicherstellen kann der Detektionsagent 465 die zweiten Bilder der Regeldatendateien mit geänderten Speicherstellen mit den entsprechenden Basisbildern vergleichen, um die geänderten Speicherstellen zu identifizieren. Bei Ausführungsformen, bei denen der Detektionsagent 465 einen Abtastagenten enthält, kann der Detektionsagent 465 deshalb dem Befehlskoordinatoragenten 440 Dateikennungen bereitstellen, die eine oder mehrere Regeldatendateien 475 mit geänderten Speicherstellen identifizieren, sowie die entsprechenden geänderten Speicherstellen auf Byteebene.
  • Zu einer in der Sicherungsregel 435 und/oder 535 enthaltenen Speicherungszeit wie die Speicherungszeit t0 2, kann der Daten-Server 400 (z. B. der Detektionsagent 465, der Befehlskoordinatoragent 440 und/oder ein anderer Agent im Daten-Server 400) dem Sicherungs-Server 500 (z. B. dem Befehlskoordinatoragenten 540, dem Delta-Agenten 58 und/oder einem anderen Agenten im Sicherungs-Server 500) die Inhalte der geänderten Speicherstellen bereitstellen, und der Delta-Agent 580 kann die Inhalte in der einer Delta-Datei 590 im Sicherungsspeichergerät 570 speichern. Alternativ und/oder in Kombination kann der Sicherungs-Server 500 die Inhalte der geänderten Speicherstellen vom Daten-Server 400 abrufen. Im Allgemeinen können die vom Detektionsagenten 465 detektierten Inhalte der geänderten Speicherstellen aus den im Datenspeichergerät 470 gespeicherten Regeldatendateien 475 nach der im Sicherungsspeichergerät 570 gespeicherten Delta-Datei 590 kopiert werden. Der Delta-Agent 580 kann die Inhalte in einer Delta-Datei 590 speichern, die mit der Speicherungszeit eindeutig verknüpft werden kann, d. h. in einer Speicherstelle, die von einer mit einer anderen Speicherungszeit verknüpften Speicherstelle verschieden ist. Wie in 2 dargestellt ist, kann der Indexagent 450 und/oder 550 die ersten bzw. zweiten Index 592 bzw. 594 im Wesentlichen gleichzeitig mit und/oder nach der Erzeugung der Delta-Datei 590 erzeugen.
  • Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 440 und/oder 540 Zusammenfassungen der Inhalte der geänderten Speicherstellen in den zweiten Indizes 594 enthalten. Der Befehlskoordinatoragent 440 und/oder 540 kann beispielsweise den Indexagenten 450 und/oder 550 anweisen, Zusammenfassungen der Inhalte der in der Delta-Datei 590 gespeicherten geänderten Speicherstellen zu erzeugen. Der Detektionsagent 465 kann die Zusammenfassungen dazu verwenden, später geänderte Speicherstellen in den Regeldatendateien 475 auf Basis der hierin beschriebenen Schemata zu detektieren.
  • Im Wesentlichen gleichzeitig mit und/oder anschließend an die Speicherungszeit t0 kann der Detektionsagent 465 iterativ zum Detektieren und/oder Fortsetzen der Detektion geänderter Speicherstellen in den Regeldatendateien 475 zurückkehren. Wie aus 2 ersichtlich ist, können Delta-Dateien 590 und zugehörige erste und zweite Indizes 592, 594 auf Basis der hierin beschriebenen Schemata zu den Speicherungszeiten t1 und t2 erzeugt werden, bei denen es sich um Zeiten nach t0 handelt. Wie zuvor erwähnt, kann eine Delta-Datei 590 zu einer Speicherungszeit t1 geänderte Speicherstellen bezüglich des Basisbildes 478 in den Regeldatendateien 475 repräsentieren.
  • 3 ist eine schematische Darstellung von Merkmalen beispielhafter Delta-Dateien und Indizes für eine Sicherungsoperation eines Systems gemäß den 1A bis 1C und 2. Gemäß 3 kann ein erster Index 600 Daten auf Basis von Dateikennungen 610 für Regeldatendateien mit geänderten Speicherstellen 620 in einem zweiten Index 640 dieser geänderten Speicherstellen enthalten. Die Speicherstellen 620 können in Form von Block-Offsets im zweiten Index 640 bereitgestellt werden. Wie aus 3 zu ersehen ist, kann der zweite Index 640 Daten auf Basis der geänderten Speicherstellen 650 sowie Speicherstellen 660 in einer Delta-Datei 670 der Inhalte der geänderten Speicherstellen enthalten. Die Speicherstellen 660 können in Form von Block-Offsets in der Delta-Datei 670 bereitgestellt werden. Die Delta-Datei 670 kann Inhalte 680 der geänderten Speicherstellen 650 enthalten. Zur Veranschaulichung enthält die Delta-Datei 670 eine Beispielspalte 690, die die geänderten Speicherstellen 650 und die mit den Inhalten 680 verknüpften Dateikennungen 610 zeigt.
  • Bei manchen Ausführungsformen können die geänderten Speicherstellen 650 und die Inhalte 680 aufeinander folgend gruppiert werden. Wie im zweiten Index 640 dargestellt können die geänderten Speicherstellen 650 aufeinander folgend auf Basis der mit den geänderten Speicherstellen 650 verknüpften Dateikennung gruppiert werden. Beispielsweise können die zur Datei A 610A gehörigen geänderten Speicherstellen 650A und die zur Datei B 610B gehörigen geänderten Speicherstellen 650E aufeinander folgend gruppiert werden. Wie für die Delta-Datei 670 gezeigt, können die Inhalte 680 auf Basis der geänderten Speicherstellen 650, die mit den Inhalten 680 verknüpft sind, aufeinander folgend gruppiert werden. So können z. B. die Inhalte 680A, die mit den geänderten Speicherstellen 650A verknüpft sind, und die Inhalte 680B, die mit den geänderten Speicherstellen 650B' verknüpft sind, aufeinander folgend gruppiert werden. Obwohl 3 zeigt, dass die geänderten Speicherstellen 650 und die Inhalte 680 aufeinander folgend gruppiert werden können, versteht es sich für den Durchschnittsfachmann, dass die beschriebenen Systeme und Verfahren nicht auf die aufeinander folgende Speicherung der geänderten Speicherstellen 650 und/oder der Inhalte 680 beschränkt sind, und dass nicht aufeinander folgende Speicherungsschemata für die geänderten Speicherstellen und/oder die Inhalte, die sich von den hierin beschriebenen unterscheiden, angewendet werden können.
  • Eine beispielhafte Wiederherstellungsoperation für ein System gemäß den 1A bis 1C wird nunmehr unter Bezugnahme auf 2 beschrieben. Zur Veranschaulichung wird die beispielhafte Wiederherstellungsoperation bezüglich der Wiederherstellung einer Version einer Regeldatendatei 476 durch Agenten im Sicherungs-Server 500 beschrieben. Für den Durchschnittsfachmann ist es klar, dass die beispielhafte Wiederherstellungsoperation in einer beschreibenden und nicht einschränkenden Weise zu verstehen ist, und dass eine Operation ähnlich der hierin beschriebenen zur Wiederherstellung von zwei oder mehr Regeldatendateien angewendet werden kann.
  • Die in 2 dargestellte beispielhafte Wiederherstellungsoperation kann durch eine Anforderung zur Wiederherstellung einer Version der Regeldatendatei 476 ausgelöst werden. Bei manchen Ausführungsformen kann ein Planagent 410 und/oder 510 eine Meldung bereitstellen, die angibt, dass eine Zeit oder ein Ereignis in einer Wiederherstellungsregel 435 und/oder 535 erreicht worden ist. Eine Wiederherstellungsregel 435 und/oder 535 kann Daten auf Basis von Versionen von Datendateien zur Wiederherstellung und Wiederherstellungszeiten, zu denen die Versionen wiederherzustellen sind, enthalten. Die Wiederherstellungszeiten können auf Zeiten wie den tatsächlichen Zeitintervallen und/oder auf Ereignissen basieren.
  • Auf Basis einer Anforderung, eine Version der Datendatei 476 wiederherzustellen, und/oder einer Meldung von einem Planagenten 510 kann ein Regelkoordinatoragent 530 einen Befehlskoordinatoragenten 540 anweisen, die Version 600 zu erzeugen (z. B. Offnen einer neuen Datei für die Version 600), nach der Version 600 des mit der Datendatei 476 verknüpften Basisbildes 478 zu schreiben und einen Delta-Dateibereich und/oder einen Speicherungszeitbereich für die Version 600 zu bestimmen. Wie es sich für den Durchschnittsfachmann versteht, kann die Version 600 der Datendatei mit einer Versionszeit, z. B. einer vergangenen Zeit, verknüpft werden. Auf Basis der Versionszeit kann der Befehlskoordinatoragent 540 den Delta-Dateibereich und/oder den Speicherungszeitbereich für die Version 600 bestimmen. Der Speicherungszeitbereich kann Speicherungszeiten enthalten, die vor der und/oder im Wesentlichen gleichzeitig mit der Versionszeit liegen, und der Delta-Dateibereich kann Delta-Dateien enthalten, die mit Zeiten verknüpft sind, die vor der und/oder im Wesentlichen gleichzeitig mit der Versionszeit liegen. So kann z. B. gemäß 2 für eine Versionszeit t1', bei der t2 < t1' < t1, der Speicherungszeitbereich die Speicherungszeiten t0 und t1 und der Delta-Dateibereich die Delta-Dateien 590 und 590' enthalten.
  • 4 zeigt beispielhafte Delta-Dateien und Indizes für eine Wiederherstellungsoperation für ein System gemäß den 1A bis 1C und 2. Zur Veranschaulichung enthält der Speicherungszeitbereich für die Version 600 der wiederherzustellenden Datendatei 476 die Speicherungszeiten t0, t1 und t2, und der Delta-Dateibereich enthält die Delta-Dateien 790, 790' und 790''; die Dateikennung für die Datendatei 476 ist "Datei A". Der Befehlskoordinatoragent 540 kann die mit dem Delta-Dateibereich für die Version 600 verknüpften ersten Indizes abfragen (d. h. die ersten Indizes 792, 792', 792''), um zu bestimmen, ob einer oder mehrere der ersten Indizes die Dateikennung Datei A enthalten. Auf Basis des ersten Index, der eine Dateikennung Datei A enthält, kann der Befehlskoordinatoragent 540 den entsprechenden zweiten Index und die entsprechende Delta-Datei abfragen, um die geänderten Speicherstellen und ihre Inhalte zu identifizieren. Wie aus 4 ersichtlich ist, enthalten die ersten Indizes 792 und 792'' Dateikennungen für Datei A, während der erste Index 792' keine Dateikennung für Datei A enthält. Die ersten Indizes 792, 792'' geben an, dass Änderungen für Datei A zu den Speicherungszeiten t0 und t2 gespeichert wurden, während der erste Index 792 angibt, dass keine Änderungen für Datei A zur Speicherungszeit t1 gespeichert wurden. Auf Basis der zweiten Indizes 794, 794'' und der den ersten Indizes 792, 792'' entsprechenden Delta-Dateien 790, 790'' kann der Befehlskoordinatoragent 540 die Inhalte der geänderten Speicherstellen für Datei A nach der Version 600 schreiben. Wie in 4 dargestellt ist, können die Inhalte der Delta-Dateien 790, 790'' nach der Version 600 geschrieben werden. Der Befehlskoordinatoragent 540 kann die Inhalte der geänderten Speicherstellen mit den Daten des zuvor in der Version 600 enthaltenen Basisbildes kombinieren (der Befehlskoordinatoragent kann z. B. einen oder mehrere Abschnitte des Basisbildes mit den Inhalten der geänderten Speicherstellen überschreiben). Der Sicherungs-Server 500 (z. B. der Befehlskoordinatoragent 540) kann dem Daten-Server 400 (z. B. dem Befehlskoordinatoragenten 440) die neu erstellte Version 600 bereitstellen.
  • Wie zuvor beschrieben kann bei manchen Ausführungsformen eine Version einer Datendatei auf Basis eines Sicherungs-Servers 500 (z. B. eines oder mehrerer Agenten im Sicherungs-Server 500), der gesicherte Daten, die mit der Version der Datendatei verknüpft sind, nach einer Version 600 schreibt, wiederhergestellt und die neu erstellte Version 600 einem Daten-Server 400 (z. B. einem oder mehreren Agenten im Daten-Server 400) bereitgestellt werden. Alternativ und/oder in Kombination kann bei manchen Ausführungsformen eine Version der Datendatei auf Basis des Sicherungs-Servers 550, der die mit der Version der Datendatei verknüpften gesicherten Daten dem Daten-Server 400 bereitstellt (z. B. gesicherte Daten auf Basis der Delta-Dateien 590, der ersten Indizes 592 und/oder der zweiten Indizes 594, die mit der Version der Datendatei verknüpft sind) wiederhergestellt werden, und der Daten-Server 400 kann das Bild 478 und die gesicherten Daten verwenden, um eine Version 600 der Datendatei neu zu erstellen. Bei solchen Ausführungsformen kann der Sicherungs-Server 500 dem Daten-Server 400 relevante Abschnitte der relevanten Delta-Dateien, erste Indizes und zweite Indizes zur erneuten Erstellung einer Version der Datendatei bereitstellen, und der Daten-Server 400 kann die Version öffnen und die relevanten Abschnitte der gesicherten Daten und des Bildes 478 nach der Version schreiben. Der Daten-Server 400 kann die relevanten Abschnitte der gesicherten Daten und des Bildes 478 kombinieren. Der Daten-Server 400 kann z. B. Abschnitte des Bildes 478 mit entsprechenden Abschnitten jüngerer gesicherter Daten überschreiben.
  • Eine Version einer Datendatei kann nach einer oder mehreren Speicherstellen in einem oder mehreren Servern wiederhergestellt werden. Bei manchen Ausführungsformen kann z. B. eine wiederhergestellte Version einer Datendatei mit derselben Speicherstelle wie die einer Originalversion verknüpft und die Originalversion zu einer anderen Speicherstelle verschoben und/oder anderweitig mit dieser verknüpft werden. Alternativ und/oder in Kombination kann bei manchen Ausführungsformen eine wiederhergestellte Version einer Datendatei mit einer oder mehreren Speicherstellen verknüpft werden, die von denen der Originalversion verschieden sind. Eine wiederhergestellte Version einer Datendatei kann z. B. mit einem anderen Verzeichnis als dem der Originalversion verknüpft werden. Außerdem kann z. B. eine wiederhergestellte Version einer Datendatei nach einem oder mehreren verschiedenen Speichergeräten (z. B. verschiedene Speichergeräte in einem LAN) wiederhergestellt werden. Eine wiederhergestellte Version einer Datendatei kann mit einem Namen auf Basis von dem Durchschnittsfachmann bekannten Schemata verknüpft werden.
  • Bei einer Ausführungsform der offenbarten Verfahren und Systeme kann ein Vereinigungsprozess wie hierin vorgesehen angewendet werden, um ein Bandrotationsschema zu simulieren, bei dem z. B. eine vereinigte Datei mit einem virtuellen "Magnetband" verknüpft werden kann. Die Anzahl virtueller Magnetbänder und somit verknüpfter Magnetbanddateien (z. B. eine mittels Vereinigung abgeleitete Datei) kann auf Basis der Auswahl seitens des Benutzers, der Administratorkonfiguration etc. variieren und z. B. von der Speicherkapazität, der Speicherungszeit bzw. dem Speicherungsintervall und anderen Faktoren abhängen. Bei manchen Ausführungsformen können eine oder mehrere Benutzerschnittstellen vorgesehen sein, um einem Benutzer und/oder Systemadministrator über die virtuellen Magnetbänder und die zugehörige(n) Banddatei(en) das Gefühl der Bandrotation zu vermitteln. Der Zugriff auf eine Datei kann so auf Basis einer zugehörigen Bandkennung bereitgestellt werden.
  • Bei einem Beispiel einer virtuellen Magnetband-Ausführungsform kann ein Benutzer und/oder Systemadministrator eine Zeit zur Erzeugung einer "Band"-Datei bestimmen und damit eine Zeit zur Vereinigung. Bei manchen Ausführungsformen kann diese manuelle Bestimmung einer Zeit planmäßige Vereinigungsprozesse, wie sie hierin vorgesehen sind, außer Kraft setzen und/oder zusätzlich erfolgen. Bei manchen Ausführungsformen kann ein Benutzer und/oder Systemadministrator auf eine Anzahl "Band"-Dateien beschränkt sein, und somit kann die Erzeugung einer neuen Banddatei die älteste und/oder eine andere angegebene Banddatei innerhalb der begrenzten Anzahl Banddateien überschreiben und/oder bewirken, dass kein Zugriff auf diese möglich ist. Es ist zu ersehen, dass die oben genannten Verfahren zur Bereitstellung eines virtuellen Magnetbandschemas über eine oder mehrere Benutzerschnittstellen angewendet werden können, die es dem Benutzer bzw. Systemadministrator erlauben, die hierin vorgesehenen Merkmale zu verwirklichen. Einem Benutzer und/oder Systemadministrator kann z. B. eine Schnittstel le bereitgestellt werden, die virtuelle Magnetbandkennungen, zugehörige Dateikennungen, Dateiinformationen (z. B. Zeit der Erstellung, zur Erstellung gehörige Benutzerkennung, Speicherstelle, Vereinigungsinformationen etc.) angeben kann, um dem Benutzer und/oder Systemadministrator Auswahlmöglichkeiten und/oder Bezeichnungen wie hierin vorgesehen zu ermöglichen.
  • Es sei weiterhin auf 2 verwiesen, wonach bei manchen Ausführungsformen der Befehlskoordinatoragent 540 Delta-Dateien, erste Indizes und/oder zweite Indizes in zeitlicher Reihenfolge verarbeiten kann. Bei einer Ausführungsform mit einer umgekehrten zeitlichen Verarbeitungsreihenfolge kann der Befehlskoordinatoragent 540 bestimmen, ob geänderte Speicherstellen für eine Dateikennung zu zwei oder mehr Speicherungszeiten gleich sind. Der Befehlskoordinatoragent 540 kann z. B. bestimmen, ob mit einer Dateikennung verknüpfte geänderte Speicherstellen in zwei oder mehr zweiten Indizes gleich sind. Auf Basis der gleichen geänderten Speicherstellen kann der Befehlskoordinatoragent 540 die gespeicherten Inhalte der geänderten Speicherstellen, die mit der letzten Speicherungszeit verknüpft sind, d. h. die gespeicherten Inhalte in der mit der letzten Speicherungszeit verknüpften Delta-Datei, nach der Version 600 schreiben. Unter Bezugnahme auf 4 geben z. B. die zweiten Indizes 792 und 792'' an, dass Block 10 der Datei A zur Speicherungszeit t0 und später zur Speicherungszeit t2 geändert wurde. Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 540 den Inhalt von Block 10 aus der Delta-Datei 790'' nach der Version 600 schreiben und den Inhalt von Block 10 aus der Delta-Datei 790 ignorieren. Für den Durchschnittfachmann versteht es sich, dass die beschriebenen Systeme und Verfahren nicht auf eine zeitliche Verarbeitungsreihenfolge der Delta-Dateien, der ersten Indizes und der zweiten Indizes beschränkt sind, und andere Verarbeitungsreihenfolgen und/oder Schemata innerhalb des Gültigkeitsbereichs der vorliegenden Offenbarung angewendet werden können.
  • Wie zuvor hierin beschrieben kann bei manchen Ausführungsformen eine Version einer Datendatei auf Basis der Identifizierung eines mit der Version verknüpften Delta-Datenbereichs sowie der Abfrage von Delta-Dateien und ersten und zweiten Indizes, die mit dem Delta-Datenbereich verknüpft sind, wiederhergestellt werden, um geänderte Speicherstellen und Inhalte der geänderten Speicherstellen für die Version zu identifizieren. Bei Ausführungsformen, in denen der Detektionsagent 465 ein Dateisystemfilter enthält, kann die Version auf Basis des Sicherungs-Servers 500 (z. B. eines oder mehrerer Agenten des Sicherungs-Servers 500) wiederhergestellt werden, der dem Daten-Server 400 (z. B. einer oder mehrere Agenten im Daten-Server 400) die relevanten gesicherten Daten für die Version (z. B. die relevanten Abschnitte der relevanten Delta-Dateien und Indizes für den Delta-Dateibereich sowie die mit der Datendatei verknüpfte Dateikennung) bereitstellt, und der Daten-Server 400 kann die Inhalte der gesicherten Daten mit den Änderungen, die vom Detektionsagenten 465 detektiert wurden, später als zur letzten Speicherungszeit, die mit dem Delta-Datenbereich verknüpft ist, aber früher als und/oder gleichzeitig mit der Versionszeit kombinieren. Unter Bezugnahme auf 2 kann der Detektionsagent 465 z. B. für eine Versionszeit t1', die zwischen zwei Speicherungszeiten liegt, z. B. t2 < t1' < t1, geänderte Speicherstellen bereitstellen, die nach der Speicherungszeit t1 und früher als und/oder gleichzeitig mit der Versionszeit t1' vorliegen.
  • Nunmehr wird eine beispielhafte Vereinigungsoperation für ein System gemäß den 1A bis 1C unter Bezugnahme auf 2 beschrieben. Zur Veranschaulichung wird die Vereinigungsoperation bezüglich der Veranlassung durch Agenten im Sicherungs-Server 500 beschrieben. Für den Durchschnittsfachmann versteht es sich, dass die beispielhafte Vereinigungsoperation als erklärend und nicht einschränkend zu interpretieren ist, und dass eine ähnliche Operation wie die hierin beschriebene verwendet werden kann, um verschiedene Typen gesicherter Daten zu vereinigen, z. B. Delta-Dateien, erste Indizes und/oder zweite Indizes.
  • Die in 2 dargestellte beispielhafte Vereinigungsoperation kann durch eine Anforderung zur Vereinigung eines oder mehrerer Abschnitte der gesicherten Daten ausgelöst werden, die im Sicherungsspeichergerät 570 gespeichert sind. Bei manchen Ausführungsformen kann ein Planagent 410 und/oder 510 eine Meldung bereitstellen, die angibt, dass eine Zeit oder ein Ereignis in einer Vereinigungsregel 435 erreicht worden ist. Eine Vereinigungsregel kann zu vereinigende gesicherte Daten und Zeiten identifizieren, zu denen die gesicherten Daten zu vereinigen sind. Die Vereinigungszeiten können auf Zeiten basieren wie aktuellen Zeiten und Zeitintervallen und/oder Ereignissen. Bei manchen Ausführungsformen können die Ereignisse auf dem verfügbaren Speicherplatz basieren. Eine Vereinigungsoperation kann z. B. ausgelöst werden, wenn der verfügbare Speicherplatz im Sicherungsspeichergerät 570 unter einen Schwellenwert sinkt. Auf Basis einer Anforderung für eine Vereinigung und/oder einer Meldung vom Planagenten 510 kann der Regelkoordinatoragent 530 den Befehlskoordinatoragenten 540 anweisen, einen oder mehrere Abschnitte der gesicherten Daten zu vereinigen, die im Sicherungsspeichergerät 570 gespeichert sind.
  • Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 540 gespeicherte Inhalte innerhalb einer einzigen Delta-Datei vereinigen. Wie zuvor beschrieben kann der Detektionsagent 465 bei manchen Ausführungsformen ein Dateisystemfilter enthalten, mit dem geänderte Speicherstellen zum Zeitpunkt der Änderung, d. h. im Wesentlichen gleichzeitig mit der Änderung, detektiert werden können. Das Dateisystemfilter kann z. B. Änderungen derselben zu verschiedenen Zeiten zwischen den Speicherungszeiten geänderten Speicherstelle der Datendatei detektieren. Eine Delta-Datei kann somit mehrere Fälle geänderter Inhalte entsprechend denselben geänderten Speicherstellen derselben Datendatei enthalten. Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 540 gespeicherte Inhalte in einer einzigen Delta-Datei vereinigen, d. h. mischen, die mit denselben geänderten Speicherstellen einer Datendatei verknüpft sind, so dass die vereinigte Delta-Datei einen Fall einer geänderten Speicherstelle einer Datendatei enthält. Außerdem kann ein Dateisystemfilter z. B. Abschnitte aufeinander folgender zu verschiedenen Zeiten zwischen den Speicherungszeiten geänderter Speicherstellen detektieren. Eine Delta-Datei kann also Inhalte aufeinander folgender geänderter Speicherstellen in einer Datendatei in nicht aufeinander folgenden Speicherstellen speichern. Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 540 gespeicherte Inhalte in einer einzigen Delta-Datei vereinigen, d. h. verketten, die mit aufeinander folgenden geänderten Speicherstellen für eine Datendatei verknüpft sind, so dass die gespeicherten Inhalte in der vereinigten Delta-Datei aufeinander folgend gespeichert sind. Auf Basis der Vereinigung der gespeicherten Inhalte in der Delta-Datei kann der Befehlskoordinatoragent 540 die entsprechenden ersten und zweiten Indizes vereinigen, um die vereinigten Inhalte in der vereinigten Delta-Datei mit den vereinigten geänderten Speicherstellen und den vereinigten Dateikennungen zu verknüpfen.
  • Alternativ und/oder in Kombination kann der Befehlskoordinatoragent 540 bei manchen Ausführungsformen zwei oder mehr Delta-Dateien, die mit verschiedenen Speicherungszeiten verknüpft sind, vereinigen, d. h. mischen, um eine vereinigte Delta-Datei zu erzeugen. Wie in 4 dargestellt ist, können zwei oder mehr Delta-Dateien, die mit verschiedenen Speicherungszeigen verknüpft sind, gespeicherte Inhalte enthalten, die mit denselben Datendateien verknüpft sind. Die mit den Speicherungszeiten t0 bzw. t2 verknüpften Delta-Dateien 790 und 790'' können z. B. beide gespeicherte Inhalte enthalten, die mit der Dateikennung A verknüpft sind. Eine auf Basis von zwei oder mehr Delta-Dateien vereinigte Delta-Datei, die dieselben geänderten Speicherstellen für dieselbe Dateikennung enthält, kann den gespeicherten Inhalt, der mit der letzten Speicherungszeit verknüpft ist, enthalten, d. h. den gespeicherten Inhalt in der Delta-Datei, der mit der letzten Speicherungszeit verknüpft ist. Unter Bezugnahme auf 4 kann z. B. eine vereinigte Delta-Datei auf Basis der Delta-Dateien 790 und 790'' den Inhalt von Block 10 für die Datei A enthalten, die in der Delta-Datei 790'' gespeichert ist (die mit der späteren Speicherungszeit t2 verknüpft ist), und nicht den Inhalt von Block 10 für die Datei A, die in der Delta-Datei 790 gespeichert ist (die mit der früheren Speicherungszeit t0 verknüpft ist). Auf Basis der Vereinigung von zwei oder mehr Delta-Dateien, um eine vereinigte Delta-Datei zu erzeugen, kann der Befehlskoordinatoragent 540 die entsprechenden ersten und zweiten Indizes vereinigen, um die vereinigte Delta-Datei mit den vereinigten geänderten Speicherstellen und den vereinigten Dateikennungen zu verknüpfen.
  • Wie zuvor beschrieben kann der Befehlskoordinatoragent 540 zwei oder mehr Delta-Dateien vereinigen, d. h. mischen, um auf Basis der Öffnung einer vereinigten Delta-Datei, der Vereinigung der Delta-Dateien und des Schreibens und/oder anderweitigen Bereitstellens der vereinigten Daten an die vereinigte Delta-Datei eine vereinigte Delta-Datei zu erzeugen. Bei manchen Ausführungsformen kann der Befehlskoordinatoragent 540 zwei oder mehr Delta-Dateien auf Basis des Zerlegens der Delta-Dateien in zwei oder mehrere Abschnitte und iterativen Vereinigens der Abschnitte vereinigen, d. h. mischen. Bei einer solchen Ausführungsform kann der Befehlskoordinatoragent 540 z. B. die Delta-Dateien in Abschnitte trennen, abteilen und/oder anderweitig unterteilen, einen der Abschnitte vereinigen, den vereinigten Abschnitt nach der vereinigten Datei schreiben und/oder anderweitig bereitstellen, den Abschnitt löschen und iterativ zum Vereinigen der übrigen Abschnitte zurückgehen. Die iterative Vereinigung von Abschnitten der Delta-Dateien kann die Datenspeicherkapazität zur Vereinigung verringern. Bei Ausführungsformen, bei denen Abschnitte der Delta-Dateien iterativ vereinigt werden, können Indizes, die den vereinigten Delta-Dateien entsprechen, auf Basis des Status der vereinigten Abschnitte aktualisiert werden. Die Indizes können z. B. aktualisiert werden, um auf die Speicherstellen der Abschnitte der Delta-Dateien zu verweisen, und auf Basis der Vereinigung der Abschnitte, um auf vereinigte Delta-Dateien zu verweisen.
  • Wie zuvor beschrieben können die Sicherungs-Server 150, 160 des in 1A dargestellten beispielhaften Systems 100 bei manchen Ausführungsformen so konfiguriert werden, dass sie gesicherte Daten mit verschiedenen Fristen der Datenaufbewahrung speichern. Bei solchen Ausführungsformen kann der erste Sicherungs-Server 150 so konfiguriert sein, dass er Daten relativ kurzfristig speichert, und der zweite Sicherungs-Server 160 kann so konfiguriert sein, dass er Daten relativ langfristig speichert. Der erste Sicherungs-Server 150 kann z. B. so konfiguriert sein, dass er Daten einen oder mehrere Tage, Wo chen oder Monate speichert, und der zweite Sicherungs-Server 160 kann so konfiguriert sein, dass er Daten ein oder mehrere Jahre lang speichert. Bei manchen Ausführungsformen kann der erste Sicherungs-Server 150 die vom Daten-Server 130 und/oder 140 gepflegten Datendateien auf Basis einer Sicherungsperiode sichern und die gesicherten Daten dein zweiten Server 160 auf Basis einer Datenaufbewahrungsfrist bereitstellen, die länger ist als die Sicherungsperiode. Alternativ und/oder in Kombination kann der erste Sicherungs-Server 150 bei manchen Ausführungsformen die gesicherten Daten auf Basis einer Vereinigungsperiode vereinigen, die länger ist als die Sicherungsperiode, und dem zweiten Server 160 die vereinigten Daten bereitstellen. Bei einer solchen Ausführungsform kann die Sicherungsperiode ein Tag, die Vereinigungsperiode eine Woche und die Aufbewahrungsfrist ein Monat sein. Bei einer solchen Ausführungsform kann der erste Sicherungs-Server 150 bis zu drei wöchentlich vereinige Delta-Dateien und sieben tägliche Delta-Dateien, die mit einer Sicherungsregel verknüpft sind, pflegen, und der Sicherungs-Server 160 kann bis zu 52 wöchentlich vereinigte Delta-Dateien, die mit derselben Sicherungsregel verknüpft sind, pflegen. Alternativ und/oder in Kombination kann der zweite Server 160 bei manchen Ausführungsformen die vom ersten Sicherungs-Server 150 bereitgestellten gesicherten Daten vereinigen.
  • Wie es sich für den Durchschnittsfachmann versteht, sind die beschriebenen Systeme und Verfahren nicht auf die Verwendung von zwei Sicherungs-Servern 150, 160 beschränkt, die mit verschiedenen Datenaufbewahrungsfristen verknüpft sind. Bei manchen Ausführungsformen können die Sicherungs-Server 150, 160 z. B. so konfiguriert sein, dass sie vom ersten bzw. zweiten Daten-Server 130 bzw. 140 gepflegte Datendateien getrennt sichern.
  • Die Verwendung erster und zweiter Indizes zur Verknüpfung gespeicherter Inhalte mit Speicherungszeiten, geänderten Speicherstellen und Dateikennungen kann die erneute Erstellung von Versionen der Datendateien erleichtern. Wie zuvor anhand von 2 beschrieben kann der Sicherungs-Server 500 (z. B. ein oder mehrere Agenten im Sicherungs-Server 500) Delta-Dateien 590 und Indizes 592, 594 im Sicherungsspeichergerät 570 speichern. Bei manchen Ausführungsformen können Kopien der Indizes 592, 594 auch im Datenspeichergerät 470 gespeichert werden. Bei einer solchen Ausführungsform kann der Daten-Server 400 eine Anforderung, eine Version einer ausgewählten Datendatei neu zu erstellen, vereinfachen, indem die Indizes 592, 594 zur Bestimmung eines Speicherungszeitbereichs für die Version verwendet werden. Auf Basis des Speicherungszeitbereichs und der Dateikennung für die gewählte Datendatei kann der Daten-Server 400 die Indizes 592, 594 abfragen, um die geänderten Speicherstellen für die gewählte Datendatei und die Speicherstellen der entsprechenden gespeicherten Inhalte in den mit den Indizes 592, 594 verknüpften Delta-Dateien zu identifizieren. Auf Basis der Verarbeitung der Indizes 592, 594 kann der Daten-Server 400 eine Anforderung für die relevanten Abschnitte der relevanten Delta-Dateien aus dem Sicherungs-Server 500 erzeugen, und dieser kann dem Daten-Server 400 die relevanten Abschnitte der relevanten Delta-Dateien bereitstellen.
  • Die Verwendung erster und zweiter Indizes zur Verknüpfung gespeicherter Inhalte mit Speicherungszeiten, geänderten Speicherstellen und Dateikennungen kann außerdem die erneute Erstellung von Datendateien auf Basis gesicherter Daten, die von einem Datenspeichergerät für relativ langfristige Datenspeicherung gepflegt werden, erleichtern. Wie zuvor anhand von 1A beschrieben können der erste Sicherungs-Server 150 und das erste Sicherungsspeichergerät 155 so konfiguriert sein, dass sie Daten relativ kurzfristig speichern und der zweite Sicherungs-Server 160 sowie das zweite Sicherungsspeichergerät 165 können so konfiguriert sein, dass sie Daten relativ langfristig speichern. Bei manchen Ausführungsformen kann das erste Sicherungsspeichergerät 155 auf einer Magnetplatte und das zweite Sicherungsspeichergerät 165 auf einem Magnetband basieren. Auf Basis der zuvor beschriebenen Schemata kann ein anfordernder Server (z. B. der Daten-Server 130, 140 und/oder der erste Sicherungs-Server 150) eine Anforderung für relevante Abschnitte relevanter Delta-Dateien aus dem zweiten Sicherungs-Server 160 erzeugen, und dieser kann denn anfordernden Server die relevanten Abschnitte der relevanten Delta-Dateien bereitstellen.
  • Bei manchen Ausführungsformen kann der Sicherungs-Server 150, 160 auf beide Datenspeichergeräte 155, 165 zugreifen, die mit verschiedenen Datenaufbewahrungsfristen verknüpft sind. Der Sicherungs-Server 150 kann z. B. bei manchen Ausführungsformen so konfiguriert sein, dass er auf das Sicherungsspeichergerät 155 (z. B. relativ kurzfristige Datenspeicherung) und auf das Sicherungsspeichergerät 165 (z. B. relativ langfristige Datenspeicherung) zugreift. Alternativ und/oder in Kombination kann der Sicherungs-Server 150 bei manchen Ausführungsformen auf ein einziges Datenspeichergerät zugreifen, das eine Datenspeicherkapazität hat, die zwischen einer relativ kurzfristigen und einer relativ langfristigen Datenspeicherungsfrist aufgeteilt ist.
  • Die beschriebenen Wiederherstellungs- und Vereinigungsoperationen können einem oder mehreren Servern gesicherte Daten bereitstellen. Bei manchen Ausführungsformen kann die Wiederherstellungs- und/oder Vereinigungsoperation z. B. gesicherte Daten an einen oder mehrere Daten-Server (z. B. ein Daten-Server, von dem eine Anforderung zur Wiederherstellung einer Datendatei stammt) und/oder einen oder mehrere Sicherungs-Server (z. B. ein kurzfristiger Sicherungs-Server und/oder ein langfristiger Sicherungs-Server) übertragen, die mit einem oder mehreren Datenkommunikationsnetzen verbunden sind und/oder anderweitig in Datenaustausch stehen.
  • Wie zuvor hierin beschrieben können Daten, die mit einer Version einer Datendatei verknüpft sind, in einem oder mehreren Servern wie einem oder mehreren Daten-Servern 400 (z. B. in einem Bild 478) und/oder in einem oder mehreren Sicherungs-Servern 500 (z. B. in einer oder mehreren Delta-Dateien 590 und ersten und zweiten Indizes 592, 594) gespeichert werden. Bei manchen Ausführungsformen können die beschriebenen Systeme und Verfahren eine Version einer Datendatei auf Basis einer vorgegebenen räumlichen Hierarchie wiederherstellen. Bei einer solchen räumlichen Hierarchie kann eine Anforderung, eine Version einer Datendatei wiederherzustellen, erfüllt werden, indem auf Speichergeräte in einer Reihenfolge lokal nach fern zugegriffen wird. Wie hierin verwendet, kann der Begriff lokal so interpretiert werden, dass er Knoten in einem LAN enthält, und der Begriff fern, dass er Knoten enthält, die nicht im LAN vorgesehen sind. So kann z. B. auf Basis des Empfangs einer Anforderung von einem Client, eine Version einer Datendatei wiederherzustellen, ein Daten-Server zuerst bestimmen, ob ein oder mehrere in lokalen Speichergeräten gespeicherte Bilder ausreichend Daten enthalten, um die Version neu zu erstellen. Auf Basis von lokal gespeicherten Bildern, die zur erneuten Erzeugung der Version nicht ausreichen, kann der Daten-Server die Anforderung an einen oder mehrere andere lokale Server (z. B. lokale Sicherungs-Server, die auf relativ kurzfristig gesicherte Daten zugreifen können) und dann direkt und/oder indirekt an einen oder mehrere ferne Server (z. B. ferne Sicherungs-Server, die auf relativ langfristig gesicherte Daten zugreifen können) leiten.
  • Wie zuvor beschrieben kann ein Benutzer mit den Clients 110, 120, den Daten-Servern 130, 140 und/oder den Sicherungs-Servern 150, 160 in Dialog treten, um eine oder mehrere Regeln (z. B. Sicherungsregeln, Wiederherstellungsregeln und Vereinigungsregeln 235, 335, 435, 535 in den 1B, 1C und 2), eine oder mehrere Datenaufbewahrungsfristen (z. B. Datenaufbewahrungsfristen für den ersten und zweiten Sicherungs-Server 150, 160 von 1) und/oder andere Parameter von Interesse zu bestimmen und/oder anderweitig zu wählen. Der Benutzer kann ein Systemadministrator und/oder eine andere Institution sein.
  • Ein lokaler Benutzer kann z. B. mit den Clients 110, 120 bei Vorliegen einer Befehlszeile unter Verwendung einer grafischen und/oder anderen Benutzerschnittstelle und durch Eingeben von Befehlen über ein Eingabegerät, wie eine Maus, eine Tastatur, ein Sensorbildschirm, eine Rollkugel, eine Kleintastatur etc. in Dialog treten. Die Benutzerschnittstelle kann durch ein Grafik-Untersystem des Client 110, 120 erzeugt werden, das die Schnittstelle zu einer Ein- oder Aus-Bildschirmoberfläche macht (z. B. bei einem Anzeigegerät und/oder in einem Videospeicher). Eingaben seitens eines lokalen Benutzers können über ein Eingabe-/Ausgabe-(I/O) Untersystem empfangen und über einen internen Bus (z. B. ein Systembus) zur Ausführung unter der Steuerung durch ein Betriebssystem des Client 110, 120 an einen Prozessor geleitet werden.
  • Auf ähnliche Weise kann ein Fern-Benutzer über das Datenkommunikationsnetz 105 mit den Clients 110, 120 in Dialog treten. Die Eingaben seitens des Fern-Benutzers können in ihrer Gesamtheit oder teilweise durch ein dem Fern-Benutzer zugeordnetes digitales Datenfernverarbeitungsgerät empfangen und verarbeitet werden. Alternativ und/oder in Kombination können die Eingaben zu einem lokalen Client 110, 120 oder einem anderen digitalen Datenverarbeitungsgerät über ein oder mehrere Netze zurückgesendet und von diesem/diesen mittels z. B. einfacher Client-Technologie verarbeitet werden. Die Benutzerschnittstelle des lokalen Client 110, 120 kann auch in ihrer Gesamtheit oder teilweise am dem Fern-Benutzer zugeordneten digitalen Datenfernverarbeitungsgerät reproduziert werden, indem Grafikinformationen an das ferne Gerät übertragen werden und das Grafik-Untersystem des fernen Geräts angewiesen wird, dem Fern-Benutzer zumindest einen Teil der Schnittstelle bereitzustellen und anzuzeigen.
  • In einer beispielhaften Operation kann ein Grafik-Untersystem des Client 110, 120 eine grafische Benutzerschnittstelle (einschl. z. B. eines oder mehrerer Menüs, Fenster und/oder anderer visueller Objekte) auf einem zum Client 110, 120 gehörigen Anzeigegerät bereitstellen und anzeigen, die die Definition einer oder mehrerer Regeln, einer oder mehrerer Datenaufbewahrungsfristen und/oder anderer Parameter von Interesse unterstützt.
  • Eine beispielhafte Anzeige einer grafischen Benutzerschnittstelle, die eine Definition einer Sicherungsregel vereinfachen kann, wird nunmehr beschrieben. Für den Durchschnittsfachmann versteht es sich, dass die Anzeige als beispielhaft interpretiert werden sollte und dass Anzeigen, die sich von den hierin beschriebenen unterscheiden, innerhalb des Gültigkeitsbereichs der vorliegenden Offenbarung verwendet werden können. So können beispielsweise Aspekte, Komponenten, Merkmale und/oder Module der beispielhaften Anzeige kombiniert, getrennt, ausgetauscht und/oder neu angeordnet werden, um andere Anzeigen zu erzeugen.
  • 5. zeigt ein beispielhaftes Fenster 800 einer Sicherungsregel, das von einen Benutzer (z. B. einem Systemadministrator und/oder einer anderen Institution) verwendet werden kann, um eine Sicherungsregel zu bestimmen. Wie aus 5 ersichtlich ist, kann das Fenster 800 für die Sicherungsregel eine Zone 810 zur Datendateiwahl und eine Zone 850 zur Wahl der Speicherungszeit enthalten.
  • Die Zone 810 zur Datendateiwahl kann ein oder mehrere Merkmale (z. B. Pulldown-Menüs, Operationsschaltflächen, Wahlflächen und/oder auszufüllende Kästchen) enthalten, um zu sichernde Dateien zu wählen. Wie in 5 dargestellt ist, kann die Zone 810 zur Datendateiwahl z. B. Operationsschaltflächen 820 zur Wahl von zu sichernden Dateien enthalten, wie alle Datendateien oder Datendateien eines bestimmten Typs (z. B. Betriebssystemdateien) und eine Anzeige 830 für die Daten auf Basis der von einem Daten-Server wie dem Daten-Server 130 gepflegten Dateien. Die Anzeige 830 kann Daten auf Basis von Verzeichnissen, Unterverzeichnissen und anderen Dateistrukturen präsentieren, die vom Daten-Server 130 im Datenspeichergerät 135 gepflegt werden. Wie in 5 dargestellt präsentiert die Anzeige 830 z. B. eine Datenstruktur 835 mit Datendateien, die in einer Verzeichnis- und Unterverzeichnisstruktur angeordnet sind. Ein Benutzer kann eine oder mehrere zu sichernde Datendateien wählen, indem er z. B. die Dateien mit einem Mausklick, durch Ziehen eines Rahmens um die Dateien etc. anwählt. Die im Rahmen 840 enthaltenen Dateien sind z. B. Datendateien, die ein Benutzer zur Sicherung und Verknüpfung mit einer Sicherungsregel gewählt hat. Nicht ausgewählte Dateien können vom Sichern ausgenommen und/oder mit anderen Sicherungsregeln verknüpft werden.
  • Die Zone 850 zur Wahl der Speicherungszeit kann ein oder mehrere Merkmale (z. B. Pulldown-Menüs, Operationsschaltflächen, Wahlschalter und/oder auszufüllende Kästchen) enthalten, um die Speicherungszeiten für die im Rahmen 840 gewählten Datendateien zu bestimmen. Wie in 5 dargestellt kann die Zone 850 zur Wahl der Speicherungszeit z. B. Wahlflächen 860 und Pulldown-Menüs 865 enthalten, die mit verschiedenen Speicherungszeiten verknüpft sind, wie kontinuierliche Speicherungszeiten (was so interpretiert werden kann, dass es sich um die Sicherung von Datendateien im Wesentlichen gleichzeitig mit Änderungen der Speicherstellen der Datendateien 840 handelt), periodi sche Speicherungszeiten (z. B. täglich und wöchentlich wie in 5 gezeigt) und anwendungsspezifische Speicherungszeiten 870 (z. B. Montag bis Freitag täglich um 6:00 Uhr und Samstag/Sonntag täglich um 8:00 Uhr).
  • Wie es sich für den Durchschnittsfachmann versteht, können Anzeigen ähnlich denen in 5 dargestellten bereitgestellt werden, um es einem Benutzer zu ermöglichen, andere Parameter von Interesse zu bestimmen und/oder anderweitig zu wählen, z. B. eine Wiederherstellungsregel, eine Vereinigungsregel und eine Datenaufbewahrungsfrist. Ein Benutzer kann z. B. für eine Wiederherstellungsregel eine oder mehrere Versionen einer oder mehrerer wiederherzustellender Datendateien, eine oder mehrere Speicherstellen, nach denen die Versionen wiederherzustellen sind, und eine oder mehrere den Versionen entsprechende Zeiten wählen, d. h. vergangene Zeiten. Für eine Vereinigungsregel kann ein Benutzer einen Speicherungszeitbereich von zu vereinigenden Delta-Dateien und/oder einen Speichererungskapazitäts-Schwellenwert zur Veranlassung einer Vereinigung wählen, und für eine Datenaufbewahrungsfrist kann ein Benutzer ein Zeitintervall zur Aufbewahrung gesicherter Daten wählen.
  • Die hierin beschriebenen Systeme und Verfahren sind nicht auf eine Hardware- oder Software-Konfiguration beschränkt; sie können in zahlreichen Rechen- oder Verarbeitungsumgebungen Anwendung finden. Die Systeme und Verfahren können hardware- oder softwaremäßig implementiert werden oder in einer Kombination aus Hardware und Software. Die Systeme und Verfahren können in einem oder mehreren Computerprogrammen implementiert werden, wobei es sich versteht, dass ein Computerprogramm einen oder mehrere von einem Prozessor ausführbare Befehle aufweist. Die Computerprogramme können auf einem oder mehreren programmierbaren Prozessoren ablaufen und in einem oder mehreren Speichermedien gespeichert werden, die vom Prozessor gelesen werden können, wobei diese flüchtige und nicht flüchtige Speicher und/oder Speicherelemente aufweisen.
  • Die Computerprogramme können in höheren prozedur- oder objektorientierten Programmiersprachen zur Kommunikation mit einem Computersystem implementiert sein. Die Computerprogramme können auch in Assembler- oder Maschinensprache implementiert sein. Die Sprache kann übersetzt oder interpretiert werden. Die Computerprogramme können auf einem Speichermedium oder -gerät (z. B. Compact Disk (CD), digitale Video Disk (DVD), Magnetplatte, internes und externes Festplattenlaufwerk, Speicher mit wahlfreiem Zugriff (RAM), redundante Anordnung unabhängiger Platten (RAID) oder ausbaubares Speichergerät) gespeichert sein, das von einem programmierbaren Mehrzweck- oder Spezialrechner zum Konfigurieren und Betreiben des Rechners gelesen werden kann, wenn das Speichermedium oder -gerät vom Computer zur Ausführung der hierin beschriebenen Verfahren gelesen wird.
  • Sofern nicht anderweitig angegeben können Verweise auf ein Netz ein oder mehrere Intranetze und/oder das Internet beinhalten. Hierin enthaltene Verweise auf Mikroprozessorbefehle oder durch Mikroprozessoren ausführbare Befehle können gemäß der obigen Beschreibung so verstanden werden, dass sie programmierbare Hardware enthalten.
  • Verweise auf "einen Mikroprozessor" und "einen Prozessor" oder auf "den Mikroprozessor" und "den Prozessor" sind so zu verstehen, dass sie einen oder mehrere Mikroprozessor enthalten, die unabhängig und/oder in (einer) verteilten Umgebung(en) kommunizieren können, und deshalb so konfiguriert sein können, dass sie verdrahtet oder drahtlos mit anderen Prozessoren kommunizieren, wobei ein solcher einzelner oder solche mehrere Prozessoren so konfiguriert sein können, dass sie in einem oder mehreren prozessorgesteuerten Geräten arbeiten, bei denen es sich um ähnliche oder verschiedene Geräte handeln kann. Die Verwendung dieser Terminologie "Mikroprozessor" oder "Prozessor" kann somit auch so verstanden werden, dass sie eine Zentraleinheit, eine arithmetische Logikeinheit, eine anwendungsspezifische integrierte Schaltung (IC) und/oder eine Aufgabenmaschine umfasst, wobei solche Beispiele nur der Veranschaulichung und nicht der Einschränkung dienen sollen.
  • Sofern nicht anderweitig angegeben können ferner Verweise auf Speicher einen oder mehrere prozessorlesbare Speicherelemente und/oder -komponenten, auf die ein Prozessor zugreifen kann, enthalten, die intern oder extern für das prozessorgesteuerte Gerät vorgesehen sind, und/oder auf die über ein verdrahtetes oder drahtloses Netz mittels vielfältiger Kommunikationsprotokolle zugegriffen werden kann, und die, sofern nicht anderweitig angegeben, so organisiert sein können, dass sie eine Kombination aus externen und internen Speichergeräten enthalten, wobei solche Speicher auf Basis der Anwendung zusammenhängend und/oder unterteilt sein können. Demzufolge können Verweise auf eine Datenbank so verstanden werden, dass sie eine oder mehrere Speicherverknüpfungen enthalten, wobei solche Verweise handelsüblich verfügbare Datenbankprodukte (z. B. SQL, Informix, Oracle) sowie auch systemgebundene Datenbanken und außerdem andere Strukturen umfassen können, um Speicher wie Links, Warteschlangen, Graphen, Bäume mit derartigen Strukturen, die zur Veranschaulichung und nicht zur Einschränkung bereitgestellt werden, zu verknüpfen.
  • Sofern nicht anderweitig angegeben kann die Verwendung des Begriffs "im Wesentlichen" so ausgelegt werden, dass er eine präzise Beziehung, Bedingung, Anordnung, Ausrichtung und/oder ein anderes Merkmal sowie Abweichungen in dem Ausmaß, dass diese die offenbarten Verfahren und Systeme nicht substantiell beeinträchtigen, davon enthält, wie es sich für den Durchschnittsfachmann versteht.
  • Innerhalb der gesamten vorliegenden Offenbarung kann die Verwendung des unbestimmten Artikels "ein, eine" zur Modifizierung eines Substantivs so verstanden werden, dass er aus Gründen der Vereinfachung verwendet wird, oder um ein oder mehrere dieser modifizierten Substantive zu beinhalten, sofern nicht anderweitig angegeben.
  • Elemente, Komponenten, Module und/oder Teile davon, die gemäß Beschreibung und/oder anderweitige Darstellung durch die Figuren mit anderen Einrichtungen kommunizieren, zu verknüpfen sind und/oder darauf basieren, können so verstanden werden, dass sie mit diesen auf direkte und/oder indirekte Weise kommunizieren, verknüpft sind oder darauf basieren, sofern nicht anderweitig angegeben.
  • Obwohl die hierin beschriebenen Systeme und Verfahren unter Bezugnahme auf die dargestellten Ausführungsformen angegeben und erläutert worden sind, wird es für den Durchschnittsfachmann erkennbar sein, dass zahlreiche Äquivalente der hierin beschriebenen Ausführungsformen möglich sind, indem nur routinemäßig experimentiert wird.

Claims (37)

  1. Verfahren zur Pflege von Informationen in einem Sicherungsspeichersystem, aus denen ein Satz Quellendateien, die in einem Quellenspeichersystem gespeichert sind, wiederhergestellt werden kann, wobei das Verfahren für jede Zeit einer Sequenz aus Sicherungsspeicherungszeiten enthält: A) dynamisches Identifizieren von Speicherstellen im Quellenspeichersystem, wo seit der vorigen Sicherungsspeicherungszeit Änderungen vorgenommen worden sind, durch Überwachen des Schreibens nach Dateien im Quellenspeichersystem seit der vorigen Speicherungszeit, dadurch gekennzeichnet, dass B) als Antwort auf diese Identifizierung von Speicherstellen I) Inhalte zu dieser Sicherungsspeicherungszeit gelesen werden, die die so identifizierten Speicherstellen belegen; II) diese Inhalte an das Sicherungsspeichersystem gesendet werden; und III) diese Inhalte im Sicherungsspeichersystem zusammen mit den Verknüpfungen dieser Inhalte mit diesen Speicherstellen gespeichert werden.
  2. Verfahren nach Anspruch 1, bei dem die Verknüpfungen der Inhalte mit den Speicherstellen die Inhalte mit den Dateien im Quellenspeichersystem, nach dem diese Inhalte geschrieben worden sind, verknüpfen.
  3. Verfahren nach Anspruch 2, das ferner im Sicherungsspeichersystem Verknüpfungen zwischen den dort gespeicherten Inhalten und den Speicherungszeiten, zu denen diese Inhalte gespeichert wurden, bereitstellt.
  4. Verfahren nach Anspruch 3, bei dem die Sicherungsspeicherungszeit auf einer oder mehrerer der folgenden Größen basiert: einer aktuellen Zeit, einem Zeitintervall und einem Ereignis.
  5. Verfahren nach Anspruch 1, bei dem das Speichern der Inhalte enthält: Auswahl mindestens eines Speichers zum Speichern der Inhalte.
  6. Verfahren nach Anspruch 5, bei dem die Auswahl mindestens eines Speichers enthält: Auswahl des mindestens einen Speichers, der von einem zuvor gewählten Speicher verschieden sein muss, der mit einer früheren Sicherungsspeicherungszeit verknüpft ist.
  7. Verfahren nach Anspruch 3, bei dem die Bereitstellung der Verknüpfungen enthält: Erzeugen eines oder mehrerer Indizes zum Verknüpfen: der gespeicherten Inhalte, der jeweiligen Speicherungszeiten, der jeweils geänderten Speicherstellen und der entsprechenden einen oder mehreren Dateikennungen.
  8. Verfahren nach Anspruch 7, bei dem das eine oder die mehreren Indizes enthalten: einen ersten Index der geänderten Speicherstellen auf Basis des einen oder der mehreren Dateikennungen; und einen zweiten Index der gespeicherten Inhalte auf Basis der geänderten Speicherstellen.
  9. Verfahren nach Anspruch 1, ferner aufweisend: Verwenden der gespeicherten Inhalte, um eine Version der gewählten einen oder mehreren Datendateien zu erzeugen.
  10. Verfahren nach Anspruch 9, bei dem die Verwendung der gespeicherten Inhalte zum Erzeugen einer Version enthält: Abfragen für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind, eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Speicherungszeiten, der entsprechenden geänderten Speicherstellen und der einen oder mehreren entsprechenden Dateikennungen, um die gespeicherten Inhalte und die entsprechenden geänderten Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Kombinieren der identifizierten Inhalte mit den Daten eines Basisbildes, das mit der gewählten Datendatei verknüpft ist.
  11. Verfahren nach Anspruch 10, bei dem das Abfragen enthält: Bestimmen, dass die geänderten Speicherstellen für zwei oder mehr verschiedene Speicherungszeiten die gleichen sind; und Identifizieren der gespeicherten Inhalte der geänderten Speicherstellen, die mit der letzten der zwei oder mehr verschiedenen Sicherungsspeicherungszeiten verknüpft sind.
  12. Verfahren nach einem der Ansprüche 3, ferner aufweisend: Empfangen einer Anforderung von einem ersten Server, um eine Version einer gewählten Datendatei der einen oder mehreren Datendateien zu erzeugen; und auf Basis der Anforderung: Abfragen für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind, eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Sicherungsspeicherungszeiten, der entsprechenden geänderten Speicherstellen und der einen oder mehreren entsprechenden Dateikennungen, um gespeicherte Inhalte und entsprechende geänderte Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Bereitstellen der identifizierten gespeicherten Inhalte und der entsprechenden geänderten Speicherstellen an den ersten Server.
  13. Verfahren nach Anspruch 12, ferner aufweisend: Kombinieren der identifizierten gespeicherten Inhalte im ersten Server mit den Daten von einem Basisbild, das mit der gewählten Datendatei verknüpft ist.
  14. Speichermedium zur Konfigurierung eines Computersystems, das ein Quellenspeichersystem und ein Sicherungsspeichersystem zur Pflege von Informationen im Sicherungsspeichersystem enthält, aus denen ein Satz Quellendateien, die in einem Quellenspeichersystem gespeichert sind, wiederhergestellt werden kann, wobei das Speichermedium Befehle enthält, die vom Computersystem gelesen werden können, um für jede Zeit einer Sequenz aus Sicherungsspeicherungszeiten das Computersystem zu konfigurieren: A) dynamisches Identifizieren von Speicherstellen im Quellenspeichersystem, wo seit der vorigen Sicherungsspeicherungszeit Änderungen vorgenommen worden sind, durch Überwachen des Schreibens nach Dateien im Quellenspeichersystem seit der vorigen Speicherungszeit, dadurch gekennzeichnet, dass B) als Antwort auf diese Identifizierung von Speicherstellen: I) Inhalte zu dieser Sicherungsspeicherungszeit gelesen werden, die die so identifizierten Speicherstellen belegen; II) diese Inhalte an das Sicherungsspeichersystem gesendet werden; und III) diese Inhalte im Sicherungsspeichersystem zusammen mit den Verknüpfungen dieser Inhalte mit diesen Speicherstellen gespeichert werden.
  15. Speichermedium nach Anspruch 14, bei dem die Verknüpfungen der Inhalte mit den Speicherstellen die Inhalte mit den Dateien im Quellenspeichersystem, nach dem die Dateien geschrieben worden sind, verknüpfen.
  16. Speichermedium nach Anspruch 15, bei dem die Befehle ferner das Computersystem so konfigurieren, dass im Sicherungsspeichersystem Verknüpfungen zwischen den dort gespeicherten Inhalten und den Sicherungsspeicherungszeiten, zu denen diese Inhalte gespeichert wurden, bereitstellt werden.
  17. Speichermedium nach Anspruch 16, bei dem die Sicherungsspeicherungszeit auf einer oder mehrerer der folgenden Größen basiert: einer aktuellen Zeit, einem Zeitintervall und einem Ereignis.
  18. Speichermedium nach Anspruch 14, bei dem die Befehle zum Speichern der Inhalte Befehle zum Auswählen mindestens eines Speichers zum Speichern der Inhalte enthalten.
  19. Speichermedium nach Anspruch 18, bei dem die Befehle zur Auswahl mindestens eines Speichers Befehle enthalten, den mindestens einen Speicher zu wählen, der verschieden von einem früher gewählten Speicher sein muss, der mit einer früheren Sicherungsspeicherungszeit verknüpft ist.
  20. Speichermedium nach Anspruch 16, bei dem die Verknüpfungsbefehle Befehle enthalten, eines oder mehrere Indizes zu erzeugen, um zu verknüpfen: die gespeicherten Inhalte, die jeweiligen Sicherungsspeicherungszeiten, die jeweils geänderten Speicherstellen und die entsprechende eine oder mehrere Dateikennungen.
  21. Speichermedium nach Anspruch 20, bei dem das eine oder die mehreren Indizes enthalten: einen ersten Index der geänderten Speicherstellen auf Basis des einen oder der mehreren Dateikennungen; und einen zweiten Index der gespeicherten Inhalte auf Basis der geänderten Speicherstellen.
  22. Speichermedium nach Anspruch 14, ferner Befehle aufweisend, die gespeicherten Inhalte zum Erzeugen einer Version der gewählten einen oder mehreren Datendateien zu verwenden.
  23. Speichermedium nach Anspruch 22, bei dem die Befehle zur Verwendung der gespeicherten Inhalte zum Erzeugen einer Version Befehle enthalten, um für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind: Abfragen eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Sicherungsspeicherungszeiten, der entsprechenden geänderten Speicherstellen und einer oder mehrerer entsprechender Dateikennungen, um die gespeicherten Inhalte und die entsprechenden geänderten Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Kombinieren der identifizierten Inhalte mit den Daten eines Basisbildes, das mit der gewählten Datendatei verknüpft ist.
  24. Speichermedium nach Anspruch 14, ferner Befehle zum Empfangen einer Anforderung von einem ersten Server, eine Version der gewählten einen oder mehreren Datendateien zu erzeugen, aufweisend; und auf Basis der Anforderung: Abfragen für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind, eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Sicherungsspeicherungszeiten, der entsprechenden geänderten Speicherstellen und der entsprechenden einen oder mehreren entsprechenden Dateikennungen, um gespeicherte Inhalte und entsprechende geänderte Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Bereitstellen der identifizierten gespeicherten Inhalte und der entsprechenden geänderten Speicherstellen an den ersten Server.
  25. Speichermedium nach Anspruch 24, ferner Befehle zum Kombinieren der identifizierten gespeicherten Inhalte im ersten Server mit den Daten von einem Basisbild, das mit der gewählten Datendatei verknüpft ist, aufweisend.
  26. Computersystem, das ein Quellenspeichersystem und ein Sicherungsspeichersystem enthält, um Informationen im Sicherungsspeichersystem zu warten, aus denen ein Satz Quellendateien, die im Quellenspeichersystem gespeichert sind, wiederhergestellt werden kann, das zur Ausführung von Agenten konfiguriert ist, die zusammen für jede Zeit einer Sequenz aus Sicherungsspeicherungszeiten: A) dynamisches Identifizieren von Speicherstellen im Quellenspeichersystem, wo seit der vorigen Sicherungsspeicherungszeit Änderungen vorgenommen worden sind, durch Überwachen des Schreibens nach Dateien im Quellenspeichersystem seit der vorigen Speicherungszeit, dadurch gekennzeichnet, dass B) als Antwort auf diese Identifizierung von Speicherstellen I) Inhalte zu dieser Sicherungsspeicherungszeit gelesen werden, die die so identifizierten Speicherstellen belegen; II) diese Inhalte an das Sicherungsspeichersystem gesendet werden; und III) diese Inhalte im Sicherungsspeichersystem zusammen mit den Verknüpfungen dieser Inhalte mit diesen Speicherstellen gespeichert werden.
  27. System nach Anspruch 26, bei dem die Verknüpfungen der Inhalte mit den Speicherstellen die Inhalte mit den Dateien im Quellenspeichersystem, nach dem die Dateien geschrieben worden sind, verknüpfen.
  28. System nach Anspruch 27, bei dem mindestens ein Agent im Sicherungsspeichersystem Verknüpfungen zwischen den dort gespeicherten Inhalten und den Speicherungszeiten, in denen diese Inhalte gespeichert worden sind, bereitstellt.
  29. System nach Anspruch 28, bei dem die Sicherungsspeicherungszeit auf einer oder mehrerer der folgenden Größen basiert: einer aktuellen Zeit, einem Zeitintervall und einem Ereignis.
  30. System nach Anspruch 26, bei dem mindestens ein Agent mindestens einen Speicher zum Speichern der Inhalte wählt.
  31. System nach Anspruch 30, bei dem mindestens ein Speicher, der von dem mindestens einen Agenten gewählt wird, von einem früher gewählten Speicher verschieden ist, der mit einer früheren Speicherungszeit verknüpft ist.
  32. System nach Anspruch 28, bei dem mindestens ein Agent die Verknüpfungen bereitstellt, indem ein oder mehrere Indizes erzeugt werden, um zu verknüpfen: die gespeicherten Inhalte, die jeweiligen Sicherungsspeicherungszeit, die jeweils geänderten Speicherstellen und die entsprechende eine oder mehrere Dateikennungen.
  33. System nach Anspruch 32, bei dein das eine oder die mehreren Indizes enthalten: einen ersten Index der geänderten Speicherstellen auf Basis des einen oder der mehreren Dateikennungen; und einen zweiten Index der gespeicherten Inhalte auf Basis der geänderten Speicherstellen.
  34. System nach Anspruch 28, das ferner so konfiguriert ist, dass es die gespeicherten Inhalte zum Erzeugen einer Version einer gewählten Datendatei der einen oder mehreren Datendateien verwendet.
  35. System nach Anspruch 34, wobei des System so konfiguriert ist, dass es die gespeicherten Inhalte zum Erzeugen einer Version verwendet, idem für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind: Abfragen eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Sicherungsspeicherungszeiten, der entsprechenden geänderten Speicherstellen und der eine oder mehreren Dateikennungen, um die gespeicherten Inhalten und die entsprechenden geänderten Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Kombinieren der identifizierten gespeicherten Inhalte mit den Daten eines Basisbildes, das mit der gewählten Datendatei verknüpft ist.
  36. System nach Anspruch 28, das ferner so konfiguriert ist, dass es von einem ersten Server eine Anforderung empfängt, eine Version der gewählten einen oder mehreren Datendateien zu erzeugen; und auf Basis der Anforderung: Abfragen für jede der einen oder mehreren Sicherungsspeicherungszeiten, die mit der Version verknüpft sind, eines oder mehrerer Indizes, die die gespeicherten Inhalte verknüpfen, der entsprechenden Sicherungsspeicherungszeiten, der entsprechenden geänderten Speicherstellen und der entsprechenden einen oder mehreren entsprechenden Dateikennungen, um gespeicherte Inhalte und entsprechende geänderte Speicherstellen, die mit der gewählten Datendatei verknüpft sind, zu identifizieren; und Bereitstellen der identifizierten gespeicherten Inhalte und der entsprechenden geänderten Speicherstellen an den ersten Server.
  37. System nach Anspruch 36, das ferner so konfiguriert ist, dass es im ersten Server die identifizierten gespeicherten Inhalte mit Daten von einem Basisbild kombiniert, das mit der gewählten Datendatei verknüpft ist.
DE602004010872T 2003-09-30 2004-09-28 Systeme und Verfahren zur Dateisicherung Active DE602004010872T9 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US675399 1991-03-26
US10/675,399 US7225208B2 (en) 2003-09-30 2003-09-30 Systems and methods for backing up data files

Publications (3)

Publication Number Publication Date
DE602004010872D1 DE602004010872D1 (de) 2008-02-07
DE602004010872T2 true DE602004010872T2 (de) 2008-12-11
DE602004010872T9 DE602004010872T9 (de) 2009-04-02

Family

ID=34313987

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004010872T Active DE602004010872T9 (de) 2003-09-30 2004-09-28 Systeme und Verfahren zur Dateisicherung

Country Status (6)

Country Link
US (2) US7225208B2 (de)
EP (1) EP1522926B1 (de)
AT (1) ATE382163T1 (de)
DE (1) DE602004010872T9 (de)
HK (1) HK1076887A1 (de)
WO (1) WO2005033850A2 (de)

Families Citing this family (220)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100694238B1 (ko) * 2000-09-28 2007-03-14 가부시키가이샤 리코 구조편집방법, 영상구조편집방법, 오브젝트의 내용구조관리방법, 오브젝트의 내용구조표시방법, 컨텐츠관리방법 및 기록매체
US7346623B2 (en) * 2001-09-28 2008-03-18 Commvault Systems, Inc. System and method for generating and managing quick recovery volumes
WO2004034197A2 (en) 2002-10-07 2004-04-22 Commvault Systems, Inc. System and method for managing stored data
US8015161B2 (en) 2003-09-06 2011-09-06 Oracle International Corporation Method and mechanism for determining life intervals for a key in an index
JP2004334574A (ja) * 2003-05-08 2004-11-25 Hitachi Ltd ストレージの運用管理プログラム、運用管理方法及び管理計算機
US7328366B2 (en) * 2003-06-06 2008-02-05 Cascade Basic Research Corp. Method and system for reciprocal data backup
US8417673B2 (en) * 2003-10-07 2013-04-09 International Business Machines Corporation Method, system, and program for retaining versions of files
JP4267420B2 (ja) * 2003-10-20 2009-05-27 株式会社日立製作所 ストレージ装置及びバックアップ取得方法
GB2425198B (en) 2003-11-13 2008-04-09 Commvault Systems Inc System and method for performing a snapshot
WO2005050385A2 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. System and method for performing integrated storage operations
US7818530B2 (en) * 2003-11-26 2010-10-19 Hewlett-Packard Development Company, L.P. Data management systems, articles of manufacture, and data storage methods
US7657533B2 (en) * 2003-11-26 2010-02-02 Hewlett-Packard Development Company, L.P. Data management systems, data management system storage devices, articles of manufacture, and data management methods
JP3909062B2 (ja) * 2004-03-25 2007-04-25 株式会社日立製作所 Nasの制御装置及びバックアップ方法並びにプログラム
US20050228836A1 (en) * 2004-04-08 2005-10-13 Bacastow Steven V Apparatus and method for backing up computer files
US20060047855A1 (en) 2004-05-13 2006-03-02 Microsoft Corporation Efficient chunking algorithm
US7543017B1 (en) * 2004-05-28 2009-06-02 Sun Microsystems, Inc. Cluster file system node failure file recovery by reconstructing file state
US8949395B2 (en) 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US7464862B2 (en) * 2004-06-15 2008-12-16 Quickvault, Inc. Apparatus & method for POS processing
KR100617793B1 (ko) * 2004-06-24 2006-08-28 삼성전자주식회사 통합 차이파일을 이용한 휴대용 단말기의 소프트웨어 버전업그레이드 방법
US7681104B1 (en) * 2004-08-09 2010-03-16 Bakbone Software, Inc. Method for erasure coding data across a plurality of data stores in a network
US7681105B1 (en) * 2004-08-09 2010-03-16 Bakbone Software, Inc. Method for lock-free clustered erasure coding and recovery of data across a plurality of data stores in a network
US8145601B2 (en) 2004-09-09 2012-03-27 Microsoft Corporation Method, system, and apparatus for providing resilient data transfer in a data protection system
US7567974B2 (en) * 2004-09-09 2009-07-28 Microsoft Corporation Method, system, and apparatus for configuring a data protection system
US7865470B2 (en) * 2004-09-09 2011-01-04 Microsoft Corporation Method, system, and apparatus for translating logical information representative of physical data in a data protection system
US7613787B2 (en) * 2004-09-24 2009-11-03 Microsoft Corporation Efficient algorithm for finding candidate objects for remote differential compression
JP4325524B2 (ja) * 2004-09-29 2009-09-02 日本電気株式会社 スイッチ装置とシステム並びにバックアップ及びリストア方法とプログラム
US8959299B2 (en) * 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US9063898B1 (en) * 2004-11-23 2015-06-23 Hewlett-Packard Development Company, L.P. Method of restoring backup data
US8676862B2 (en) 2004-12-31 2014-03-18 Emc Corporation Information management
US8260753B2 (en) * 2004-12-31 2012-09-04 Emc Corporation Backup information management
US7928591B2 (en) * 2005-02-11 2011-04-19 Wintec Industries, Inc. Apparatus and method for predetermined component placement to a target platform
US7818608B2 (en) * 2005-02-18 2010-10-19 Microsoft Corporation System and method for using a file system to automatically backup a file as a generational file
US20060218435A1 (en) * 2005-03-24 2006-09-28 Microsoft Corporation Method and system for a consumer oriented backup
US7440979B2 (en) * 2005-03-30 2008-10-21 Sap Ag Snapshots for instant backup in a database management system
US20070143529A1 (en) * 2005-04-28 2007-06-21 Bacastow Steven V Apparatus and method for PC security and access control
US20060259527A1 (en) * 2005-05-13 2006-11-16 Devarakonda Murthy V Changed files list with time buckets for efficient storage management
US8615482B1 (en) * 2005-06-20 2013-12-24 Symantec Operating Corporation Method and apparatus for improving the utilization of snapshots of server data storage volumes
US7644046B1 (en) 2005-06-23 2010-01-05 Hewlett-Packard Development Company, L.P. Method of estimating storage system cost
US20070094659A1 (en) * 2005-07-18 2007-04-26 Dell Products L.P. System and method for recovering from a failure of a virtual machine
US7542992B1 (en) * 2005-08-01 2009-06-02 Google Inc. Assimilator using image check data
US9026512B2 (en) * 2005-08-18 2015-05-05 Emc Corporation Data object search and retrieval
US7716171B2 (en) * 2005-08-18 2010-05-11 Emc Corporation Snapshot indexing
US20070043705A1 (en) * 2005-08-18 2007-02-22 Emc Corporation Searchable backups
US8065204B2 (en) * 2005-09-29 2011-11-22 Sony Corporation System and method for software integration and factory deployment
WO2007047346A2 (en) 2005-10-14 2007-04-26 Symantec Operating Corporation Technique for timeline compression in a data store
WO2007045968A2 (en) * 2005-10-18 2007-04-26 Pankaj Anand Method and system for storing files
US7418623B2 (en) * 2005-11-16 2008-08-26 International Business Machines Corporation Apparatus and method to reconfigure a storage array
US7647362B1 (en) * 2005-11-29 2010-01-12 Symantec Corporation Content-based file versioning
US7774313B1 (en) 2005-11-29 2010-08-10 Symantec Corporation Policy enforcement in continuous data protection backup systems
US7620710B2 (en) * 2005-12-19 2009-11-17 Commvault Systems, Inc. System and method for performing multi-path storage operations
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
CA2632935C (en) 2005-12-19 2014-02-04 Commvault Systems, Inc. Systems and methods for performing data replication
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US8661216B2 (en) 2005-12-19 2014-02-25 Commvault Systems, Inc. Systems and methods for migrating components in a hierarchical storage network
US7840955B1 (en) 2005-12-30 2010-11-23 United Services Automobile Association (Usaa) Method and system for restoring software
US8726271B1 (en) 2005-12-30 2014-05-13 United Services Automobile Association (Usaa) Method and system for installing software
US8566820B1 (en) 2005-12-30 2013-10-22 United Services Automobile Association (Usaa) Method and system for installing software
US7831968B1 (en) 2005-12-30 2010-11-09 United Services Automobile Association (Usaa) Method and system for restoring software
US9292822B2 (en) * 2006-01-03 2016-03-22 Motio, Inc. Supplemental system for business intelligence systems
JP4927408B2 (ja) * 2006-01-25 2012-05-09 株式会社日立製作所 記憶システム及びそのデータ復元方法
US8229897B2 (en) * 2006-02-03 2012-07-24 International Business Machines Corporation Restoring a file to its proper storage tier in an information lifecycle management environment
US7634517B1 (en) * 2006-02-10 2009-12-15 Google Inc. System and method for dynamically updating a document repository without interrupting concurrent querying
US8548948B2 (en) * 2006-04-11 2013-10-01 Oracle International Corporation Methods and apparatus for a fine grained file data storage system
US8527470B2 (en) * 2006-05-22 2013-09-03 Rajeev Atluri Recovery point data view formation with generation of a recovery view and a coalesce policy
US8732136B2 (en) * 2006-05-22 2014-05-20 Inmage Systems, Inc. Recovery point data view shift through a direction-agnostic roll algorithm
US8838528B2 (en) * 2006-05-22 2014-09-16 Inmage Systems, Inc. Coalescing and capturing data between events prior to and after a temporal window
US8078580B2 (en) * 2006-05-31 2011-12-13 Hewlett-Packard Development Company, L.P. Hybrid data archival method and system thereof
US20080005426A1 (en) * 2006-05-31 2008-01-03 Bacastow Steven V Apparatus and method for securing portable USB storage devices
US8025650B2 (en) * 2006-06-12 2011-09-27 Wound Care Technologies, Inc. Negative pressure wound treatment device, and methods
US8069191B2 (en) 2006-07-13 2011-11-29 International Business Machines Corporation Method, an apparatus and a system for managing a snapshot storage pool
US9037828B2 (en) * 2006-07-13 2015-05-19 International Business Machines Corporation Transferring storage resources between snapshot storage pools and volume storage pools in a data storage system
US8011013B2 (en) 2006-07-19 2011-08-30 Quickvault, Inc. Method for securing and controlling USB ports
US7707183B2 (en) * 2006-07-21 2010-04-27 Netiq Corporation Methods, systems and computer program products for monitoring changes to objects on a computer system using information models and baselines
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US8311988B2 (en) 2006-08-04 2012-11-13 Apple Inc. Consistent back up of electronic information
US8166415B2 (en) 2006-08-04 2012-04-24 Apple Inc. User interface for backup management
US7809688B2 (en) * 2006-08-04 2010-10-05 Apple Inc. Managing backup of content
US9009115B2 (en) * 2006-08-04 2015-04-14 Apple Inc. Restoring electronic information
US7853566B2 (en) 2006-08-04 2010-12-14 Apple Inc. Navigation of electronic backups
US7860839B2 (en) * 2006-08-04 2010-12-28 Apple Inc. Application-based backup-restore of electronic information
US20080034017A1 (en) * 2006-08-04 2008-02-07 Dominic Giampaolo Links to a common item in a data structure
US20080126442A1 (en) * 2006-08-04 2008-05-29 Pavel Cisler Architecture for back up and/or recovery of electronic data
US8370853B2 (en) * 2006-08-04 2013-02-05 Apple Inc. Event notification management
US7809687B2 (en) * 2006-08-04 2010-10-05 Apple Inc. Searching a backup archive
US20080034004A1 (en) * 2006-08-04 2008-02-07 Pavel Cisler System for electronic backup
US7856424B2 (en) * 2006-08-04 2010-12-21 Apple Inc. User interface for backup management
US7853567B2 (en) * 2006-08-04 2010-12-14 Apple Inc. Conflict resolution in recovery of electronic data
US8626557B2 (en) * 2006-09-26 2014-01-07 International Business Machines Corporation System and method of providing snapshot to support approval of workflow changes
US9063940B1 (en) * 2006-09-29 2015-06-23 Emc Corporation Superseding objects in a retention system
CN101523391A (zh) * 2006-10-06 2009-09-02 日本电气株式会社 信息检索系统和信息检索方法及程序
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US7974950B2 (en) * 2007-06-05 2011-07-05 International Business Machines Corporation Applying a policy criteria to files in a backup image
US20080307017A1 (en) 2007-06-08 2008-12-11 Apple Inc. Searching and Restoring of Backups
US8745523B2 (en) * 2007-06-08 2014-06-03 Apple Inc. Deletion in electronic backups
US8099392B2 (en) * 2007-06-08 2012-01-17 Apple Inc. Electronic backup of applications
US8429425B2 (en) * 2007-06-08 2013-04-23 Apple Inc. Electronic backup and restoration of encrypted data
US8010900B2 (en) 2007-06-08 2011-08-30 Apple Inc. User interface for electronic backup
US8307004B2 (en) 2007-06-08 2012-11-06 Apple Inc. Manipulating electronic backups
US8468136B2 (en) 2007-06-08 2013-06-18 Apple Inc. Efficient data backup
ATE519159T1 (de) * 2007-06-08 2011-08-15 Apple Inc Auf anwendungen basierendes backup-restore von elektronischen informationen
US8725965B2 (en) * 2007-06-08 2014-05-13 Apple Inc. System setup for electronic backup
US8341121B1 (en) * 2007-09-28 2012-12-25 Emc Corporation Imminent failure prioritized backup
US11226947B1 (en) 2007-10-10 2022-01-18 United Services Automobile Association (Usaa) Systems and methods for storing time-series data
US9195700B1 (en) * 2007-10-10 2015-11-24 United Services Automobile Association (Usaa) Systems and methods for storing time-series data
JP5106045B2 (ja) * 2007-10-30 2012-12-26 株式会社日立製作所 検索エンジン連携ファイル共有システム
US8001087B1 (en) * 2007-12-27 2011-08-16 Symantec Operating Corporation Method and apparatus for performing selective backup operations based on file history data
US8209334B1 (en) 2007-12-28 2012-06-26 Don Doerner Method to direct data to a specific one of several repositories
US8209443B2 (en) * 2008-01-31 2012-06-26 Hewlett-Packard Development Company, L.P. System and method for identifying lost/stale hardware in a computing system
US8086688B1 (en) 2008-05-16 2011-12-27 Quick Vault, Inc. Method and system for mobile data security
US8311985B2 (en) * 2008-09-16 2012-11-13 Quest Software, Inc. Remote backup and restore system and method
US9152628B1 (en) * 2008-09-23 2015-10-06 Emc Corporation Creating copies of space-reduced files in a file server having a redundant data elimination store
WO2010036889A1 (en) 2008-09-25 2010-04-01 Bakbone Software, Inc. Remote backup and restore
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
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
US8805953B2 (en) * 2009-04-03 2014-08-12 Microsoft Corporation Differential file and system restores from peers and the cloud
US8166038B2 (en) * 2009-06-11 2012-04-24 Kaufman Mark A Intelligent retrieval of digital assets
US8843449B2 (en) * 2009-06-16 2014-09-23 Bmc Software, Inc. Unobtrusive copies of actively used compressed indices
US8918365B2 (en) 2009-06-19 2014-12-23 Blekko, Inc. Dedicating disks to reading or writing
RU2012101682A (ru) * 2009-06-19 2013-07-27 БЛЕККО, Инк. Масштабируемая кластерная база данных
US9678965B1 (en) * 2009-06-29 2017-06-13 Veritas Technologies Llc System and method for enforcing data lifecycle policy across multiple domains
US8204865B2 (en) * 2009-08-26 2012-06-19 Oracle International Corporation Logical conflict detection
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US8719767B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Utilizing snapshots to provide builds to developer computing devices
US8433682B2 (en) 2009-12-31 2013-04-30 Commvault Systems, Inc. Systems and methods for analyzing snapshots
US8370532B1 (en) * 2009-10-27 2013-02-05 Symantec Corporation Techniques for portable device data archiving
US8793288B2 (en) * 2009-12-16 2014-07-29 Sap Ag Online access to database snapshots
CA2783370C (en) * 2009-12-31 2016-03-15 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US8244685B2 (en) * 2010-02-24 2012-08-14 Autonomy, Inc. Data restoration utilizing forward and backward deltas
US9275678B2 (en) * 2010-03-25 2016-03-01 International Business Machines Corporation Primary storage media with associated secondary storage media for efficient data management
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8412899B2 (en) * 2010-04-01 2013-04-02 Autonomy, Inc. Real time backup storage node assignment
US8312237B2 (en) * 2010-04-02 2012-11-13 Autonomy, Inc. Automated relocation of in-use multi-site protected data storage
US8589347B2 (en) 2010-05-28 2013-11-19 Commvault Systems, Inc. Systems and methods for performing data replication
US9497290B2 (en) * 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
US8271451B2 (en) * 2010-08-22 2012-09-18 Morgan Stanley Records archive disposition system
US8903785B2 (en) * 2010-09-13 2014-12-02 International Business Machines Corporation Baselines over indexed, versioned data
US8484160B2 (en) * 2010-09-21 2013-07-09 Symantec Corporation Selective virtual machine image replication systems and methods
US8756198B2 (en) * 2010-09-29 2014-06-17 International Business Machines Corporation Enhancing data store backup times
US8949661B1 (en) 2010-09-30 2015-02-03 Emc Corporation Federation of indices
US8484505B1 (en) 2010-09-30 2013-07-09 Emc Corporation Self recovery
US8713364B1 (en) * 2010-09-30 2014-04-29 Emc Corporation Unified recovery
US8589350B1 (en) 2012-04-02 2013-11-19 Axcient, Inc. Systems, methods, and media for synthesizing views of file system backups
US9705730B1 (en) 2013-05-07 2017-07-11 Axcient, Inc. Cloud storage using Merkle trees
US8954544B2 (en) 2010-09-30 2015-02-10 Axcient, Inc. Cloud-based virtual machines and offices
US8504870B2 (en) 2010-09-30 2013-08-06 Emc Corporation Optimized recovery
US10284437B2 (en) 2010-09-30 2019-05-07 Efolder, Inc. Cloud-based virtual machines and offices
US8549350B1 (en) 2010-09-30 2013-10-01 Emc Corporation Multi-tier recovery
US8924360B1 (en) 2010-09-30 2014-12-30 Axcient, Inc. Systems and methods for restoring a file
US9235474B1 (en) 2011-02-17 2016-01-12 Axcient, Inc. Systems and methods for maintaining a virtual failover volume of a target computing system
US9195549B1 (en) 2010-09-30 2015-11-24 Emc Corporation Unified recovery
US8943356B1 (en) 2010-09-30 2015-01-27 Emc Corporation Post backup catalogs
US9471125B1 (en) * 2010-10-01 2016-10-18 Rockwell Collins, Inc. Energy efficient processing device
US9632875B2 (en) 2010-10-06 2017-04-25 International Business Machines Corporation Automated and self-adjusting data protection driven by business and data activity events
US9087069B1 (en) * 2010-10-25 2015-07-21 Symantec Corporation Systems and methods for duplicating backup images
US9824091B2 (en) 2010-12-03 2017-11-21 Microsoft Technology Licensing, Llc File system backup using change journal
US8620894B2 (en) 2010-12-21 2013-12-31 Microsoft Corporation Searching files
US8984029B2 (en) 2011-01-14 2015-03-17 Apple Inc. File system management
US8943026B2 (en) 2011-01-14 2015-01-27 Apple Inc. Visual representation of a local backup
US8819471B2 (en) 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US9465696B2 (en) 2011-06-03 2016-10-11 Apple Inc. Methods and apparatus for multi-phase multi-source backup
US8868859B2 (en) 2011-06-03 2014-10-21 Apple Inc. Methods and apparatus for multi-source restore
US9411687B2 (en) 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
US9229818B2 (en) 2011-07-20 2016-01-05 Microsoft Technology Licensing, Llc Adaptive retention for backup data
US9026496B1 (en) * 2011-09-30 2015-05-05 Emc Corporation Efficient building of restore list
US20130159257A1 (en) * 2011-12-20 2013-06-20 Netapp, Inc. Systems, Method, and Computer Program Products Providing Sparse Snapshots
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
CN103428245A (zh) * 2012-05-21 2013-12-04 联想(北京)有限公司 数据备份、恢复方法及终端设备、服务器
US9600376B1 (en) * 2012-07-02 2017-03-21 Veritas Technologies Llc Backup and replication configuration using replication topology
US9785647B1 (en) 2012-10-02 2017-10-10 Axcient, Inc. File system virtualization
US9852140B1 (en) 2012-11-07 2017-12-26 Axcient, Inc. Efficient file replication
CN102999400A (zh) * 2012-11-22 2013-03-27 中国电信股份有限公司云计算分公司 一种云存储系统数据备份方法及装置
US9542423B2 (en) 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9678978B2 (en) 2012-12-31 2017-06-13 Carbonite, Inc. Systems and methods for automatic synchronization of recently modified data
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US20140201140A1 (en) 2013-01-11 2014-07-17 Commvault Systems, Inc. Data synchronization management
US9397907B1 (en) 2013-03-07 2016-07-19 Axcient, Inc. Protection status determinations for computing devices
US9292153B1 (en) 2013-03-07 2016-03-22 Axcient, Inc. Systems and methods for providing efficient and focused visualization of data
US9459968B2 (en) * 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
US9110847B2 (en) 2013-06-24 2015-08-18 Sap Se N to M host system copy
US10169164B1 (en) * 2013-12-27 2019-01-01 EMC IP Holding Company LLC Backups using application maps
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US10585762B2 (en) 2014-04-29 2020-03-10 Hewlett Packard Enterprise Development Lp Maintaining files in a retained file system
US10452484B2 (en) * 2014-05-15 2019-10-22 Carbonite, Inc. Systems and methods for time-based folder restore
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
WO2016040942A1 (en) 2014-09-12 2016-03-17 Quickvault, Inc. Method and system for forensic data tracking
US9558078B2 (en) 2014-10-28 2017-01-31 Microsoft Technology Licensing, Llc Point in time database restore from storage snapshots
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10257273B2 (en) 2015-07-31 2019-04-09 Netapp, Inc. Systems, methods and devices for RDMA read/write operations
US9952797B2 (en) 2015-07-31 2018-04-24 Netapp, Inc. Systems, methods and devices for addressing data blocks in mass storage filing systems
US20170091311A1 (en) * 2015-09-30 2017-03-30 International Business Machines Corporation Generation and use of delta index
US10229058B2 (en) * 2015-12-30 2019-03-12 Roku, Inc. Providing rolling updates of distributed systems with a shared cache
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11010409B1 (en) * 2016-03-29 2021-05-18 EMC IP Holding Company LLC Multi-streaming with synthetic replication
US11068352B2 (en) * 2016-09-15 2021-07-20 Oracle International Corporation Automatic disaster recovery mechanism for file-based version control system using lightweight backups
US11379418B2 (en) * 2016-12-29 2022-07-05 Dropbox, Inc. File system warnings for moves of shared content items
US10740022B2 (en) 2018-02-14 2020-08-11 Commvault Systems, Inc. Block-level live browsing and private writable backup copies using an ISCSI server
EP3763170A2 (de) * 2018-03-08 2021-01-13 Lutron Technology Company LLC Sicherung eines laststeuerungssystems
US11379433B2 (en) * 2018-05-25 2022-07-05 Microsoft Technology Licensing, Llc Persistent version storage for relational database management system
US10599361B2 (en) * 2018-06-28 2020-03-24 EMC IP Holding Company LLC System and method for backup topology map
US11032289B2 (en) * 2019-01-15 2021-06-08 Xerox Corporation Cloning management system for touchless device level or group fleet management
US11614999B2 (en) * 2019-04-26 2023-03-28 EMC IP Holding Company LLC Efficient method to index scheduled backup of same target and the corresponding files
US11327744B2 (en) * 2019-05-29 2022-05-10 Red Hat, Inc. Equivalency of revisions on modern version control systems
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
CN110908830A (zh) * 2019-10-18 2020-03-24 上海英方软件股份有限公司 一种通过数据库实现文件系统到对象存储差异比较与备份的方法
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Family Cites Families (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4432057A (en) * 1981-11-27 1984-02-14 International Business Machines Corporation Method for the dynamic replication of data under distributed system control to control utilization of resources in a multiprocessing, distributed data base system
US4558413A (en) 1983-11-21 1985-12-10 Xerox Corporation Software version management system
US5043871A (en) * 1986-03-26 1991-08-27 Hitachi, Ltd. Method and apparatus for database update/recovery
US4751635A (en) * 1986-04-16 1988-06-14 Bell Communications Research, Inc. Distributed management support system for software managers
JPS6437621A (en) 1987-07-20 1989-02-08 Ibm Updating of program
US5276860A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data processor with improved backup storage
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
JP3386823B2 (ja) 1991-03-28 2003-03-17 株式会社日立製作所 ファイルの管理方法及び装置
US5574898A (en) * 1993-01-08 1996-11-12 Atria Software, Inc. Dynamic software version auditor which monitors a process to provide a list of objects that are accessed
US5649200A (en) * 1993-01-08 1997-07-15 Atria Software, Inc. Dynamic rule-based version control system
WO1994018634A1 (en) * 1993-02-01 1994-08-18 Lsc, Inc. Archiving file system for data servers in a distributed network environment
US5737536A (en) 1993-02-19 1998-04-07 Borland International, Inc. System and methods for optimized access in a multi-user environment
US5493728A (en) 1993-02-19 1996-02-20 Borland International, Inc. System and methods for optimized access in a multi-user environment
US5572709A (en) * 1993-06-18 1996-11-05 Lucent Technologies Inc. Using dynamically-linked libraries to add side effects to operations
US5689706A (en) * 1993-06-18 1997-11-18 Lucent Technologies Inc. Distributed systems with replicated files
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
US5920701A (en) * 1995-01-19 1999-07-06 Starburst Communications Corporation Scheduling data transmission
US5745753A (en) * 1995-01-24 1998-04-28 Tandem Computers, Inc. Remote duplicate database facility with database replication support for online DDL operations
US6052695A (en) * 1995-02-28 2000-04-18 Ntt Data Communications Systems Corporation Accurate completion of transaction in cooperative type distributed system and recovery procedure for same
US5675802A (en) * 1995-03-31 1997-10-07 Pure Atria Corporation Version control system for geographically distributed software development
US5751958A (en) 1995-06-30 1998-05-12 Peoplesoft, Inc. Allowing inconsistency in a distributed client-server application
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
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
US5754782A (en) * 1995-12-04 1998-05-19 International Business Machines Corporation System and method for backing up and restoring groupware documents
US5765171A (en) 1995-12-29 1998-06-09 Lucent Technologies Inc. Maintaining consistency of database replicas
US5854754A (en) * 1996-02-12 1998-12-29 International Business Machines Corporation Scheduling computerized backup services
GB9604987D0 (en) * 1996-03-08 1996-05-08 Ibm Data management system and method for replicated data
US5978805A (en) * 1996-05-15 1999-11-02 Microcom Systems, Inc. Method and apparatus for synchronizing files
US5752042A (en) 1996-06-07 1998-05-12 International Business Machines Corporation Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer
US5845273A (en) * 1996-06-27 1998-12-01 Microsoft Corporation Method and apparatus for integrating multiple indexed files
CA2262450A1 (en) * 1996-08-02 1998-02-12 David Lathrop Method and apparatus for allowing distributed control of shared resources
US6044367A (en) * 1996-08-02 2000-03-28 Hewlett-Packard Company Distributed I/O store
US6185601B1 (en) * 1996-08-02 2001-02-06 Hewlett-Packard Company Dynamic load balancing of a network of client and server computers
US5758355A (en) 1996-08-07 1998-05-26 Aurum Software, Inc. Synchronization of server database with client database using distribution tables
US5758359A (en) * 1996-10-24 1998-05-26 Digital Equipment Corporation Method and apparatus for performing retroactive backups in a computer system
US5794563A (en) * 1996-11-12 1998-08-18 Klepac; Daniel T. Stand-mounted game feeder apparatus
US6212529B1 (en) * 1996-11-13 2001-04-03 Puma Technology, Inc. Synchronization of databases using filters
US6199073B1 (en) 1997-04-21 2001-03-06 Ricoh Company, Ltd. Automatic archiving of documents during their transfer between a peripheral device and a processing device
US6038665A (en) * 1996-12-03 2000-03-14 Fairbanks Systems Group System and method for backing up computer files over a wide area computer network
US5920873A (en) 1996-12-06 1999-07-06 International Business Machines Corporation Data management control system for file and database
US6088693A (en) 1996-12-06 2000-07-11 International Business Machines Corporation Data management system for file and database management
US6122663A (en) * 1996-12-10 2000-09-19 Intel Corporation Method and apparatus for tracking program execution time in a computer system
US5963956A (en) * 1997-02-27 1999-10-05 Telcontar System and method of optimizing database queries in two or more dimensions
US5907848A (en) * 1997-03-14 1999-05-25 Lakeview Technology, Inc. Method and system for defining transactions from a database log
US6000020A (en) * 1997-04-01 1999-12-07 Gadzoox Networks, Inc. Hierarchical storage management from a mirrored file system on a storage network segmented by a bridge
US5999947A (en) * 1997-05-27 1999-12-07 Arkona, Llc Distributing database differences corresponding to database change events made to a database table located on a server computer
US6016553A (en) * 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
US5931947A (en) * 1997-09-11 1999-08-03 International Business Machines Corporation Secure array of remotely encrypted storage devices
US6067541A (en) * 1997-09-17 2000-05-23 Microsoft Corporation Monitoring document changes in a file system of documents with the document change information stored in a persistent log
US5909689A (en) 1997-09-18 1999-06-01 Sony Corporation Automatic update of file versions for files shared by several computers which record in respective file directories temporal information for indicating when the files have been created
US6199074B1 (en) * 1997-10-09 2001-03-06 International Business Machines Corporation Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption
US5991772A (en) * 1997-10-31 1999-11-23 Oracle Corporation Method and apparatus for restoring a portion of a database
US5946700A (en) 1997-10-31 1999-08-31 Oracle Corporation Method and apparatus for preserving non-current information that can be overwritten in a computer file
US6023709A (en) * 1997-12-15 2000-02-08 International Business Machines Corporation Automated file error classification and correction in a hierarchical storage management system
US6023710A (en) * 1997-12-23 2000-02-08 Microsoft Corporation System and method for long-term administration of archival storage
US6260069B1 (en) * 1998-02-10 2001-07-10 International Business Machines Corporation Direct data retrieval in a distributed computing system
US6088694A (en) * 1998-03-31 2000-07-11 International Business Machines Corporation Continuous availability and efficient backup for externally referenced objects
US6216051B1 (en) * 1998-05-04 2001-04-10 Nec Electronics, Inc. Manufacturing backup system
US6189016B1 (en) * 1998-06-12 2001-02-13 Microsoft Corporation Journaling ordered changes in a storage volume
US6269381B1 (en) * 1998-06-30 2001-07-31 Emc Corporation Method and apparatus for backing up data before updating the data and for restoring from the backups
US6085241A (en) * 1998-07-22 2000-07-04 Amplify. Net, Inc. Internet user-bandwidth management and control tool
US6233589B1 (en) * 1998-07-31 2001-05-15 Novell, Inc. Method and system for reflecting differences between two files
US6353878B1 (en) 1998-08-13 2002-03-05 Emc Corporation Remote control of backup media in a secondary storage subsystem through access to a primary storage subsystem
US6269431B1 (en) * 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
US6256664B1 (en) * 1998-09-01 2001-07-03 Bigfix, Inc. Method and apparatus for computed relevance messaging
US6532588B1 (en) 1998-10-21 2003-03-11 Xoucin, Inc. User centric program product distribution
US6324544B1 (en) 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
US6397307B2 (en) * 1999-02-23 2002-05-28 Legato Systems, Inc. Method and system for mirroring and archiving mass storage
US6405219B2 (en) * 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6513051B1 (en) 1999-07-16 2003-01-28 Microsoft Corporation Method and system for backing up and restoring files stored in a single instance store
US6847984B1 (en) 1999-12-16 2005-01-25 Livevault Corporation Systems and methods for backing up data files
US6779003B1 (en) 1999-12-16 2004-08-17 Livevault Corporation Systems and methods for backing up data files
US6460055B1 (en) * 1999-12-16 2002-10-01 Livevault Corporation Systems and methods for backing up data files
US6526418B1 (en) 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
US6625623B1 (en) 1999-12-16 2003-09-23 Livevault Corporation Systems and methods for backing up data files
US6560615B1 (en) * 1999-12-17 2003-05-06 Novell, Inc. Method and apparatus for implementing a highly efficient, robust modified files list (MFL) for a storage system volume
AUPQ475799A0 (en) * 1999-12-20 2000-01-20 Youramigo Pty Ltd An internet indexing system and method
GB0002019D0 (en) 2000-01-29 2000-03-22 Ibm Data migration tool
US6892221B2 (en) * 2000-05-19 2005-05-10 Centerbeam Data backup
US6675177B1 (en) * 2000-06-21 2004-01-06 Teradactyl, Llc Method and system for backing up digital data
US6728736B2 (en) 2001-03-14 2004-04-27 Storage Technology Corporation System and method for synchronizing a data copy using an accumulation remote copy trio
US7296125B2 (en) * 2001-11-29 2007-11-13 Emc Corporation Preserving a snapshot of selected data of a mass storage system

Also Published As

Publication number Publication date
US7860832B2 (en) 2010-12-28
US20050071390A1 (en) 2005-03-31
DE602004010872T9 (de) 2009-04-02
US20070294321A1 (en) 2007-12-20
EP1522926A2 (de) 2005-04-13
US7225208B2 (en) 2007-05-29
ATE382163T1 (de) 2008-01-15
WO2005033850A3 (en) 2005-12-01
EP1522926B1 (de) 2007-12-26
EP1522926A3 (de) 2005-04-27
WO2005033850A2 (en) 2005-04-14
DE602004010872D1 (de) 2008-02-07
HK1076887A1 (en) 2006-01-27

Similar Documents

Publication Publication Date Title
DE602004010872T2 (de) Systeme und Verfahren zur Dateisicherung
DE60018803T2 (de) Verfahren und apparat zur verwaltung von information der speicheraktivitäten von datenspeichersystemen
DE60008021T2 (de) Speicherverwaltungssystem mit gemeinsamen trägerverwalter
DE10112941B4 (de) System und Verfahren für das parallele Lesen von primären und sekundären Sicherungen zur Wiederherstellung mehrerer gemeinsam benutzter Datenbankdateien
EP1194865B1 (de) Verfahren zur datenpflege in einem netzwerk teilweise replizierter datenbanksysteme
EP1237098B1 (de) Integriertes Datenbank-Verbund-System
DE69911681T2 (de) Verfahren zum Verfolgen von Konfigurationsänderungen in Netzwerken von Rechnersystemen durch historische Überwachung des Konfigurationsstatus der Vorrichtungen im Netzwerk
DE19982999B4 (de) Computersystem und Verfahren zum Transferieren von Daten
DE60016772T2 (de) Verfahren und system für die publikation und revision von hierarchisch organisierten sätzen von statischen intranet- und internet-seiten
DE602004007793T2 (de) System und verfahren zur verwaltung von backupmedien in einer datenverarbeitungsumgebung
DE10393595B4 (de) Verfahren und Vorrichtung zum Liefern von Speicherressourcen
DE102008015662B4 (de) Beseitigung von Daten
DE69636914T2 (de) Verfahren und Vorrichtung für Netzwerkverwaltung
DE69628718T2 (de) Netzwerk - Topologie-Verwaltungssystem
DE69907631T2 (de) Netzzugang zu inhaltsadressierbaren daten
DE10393771T5 (de) Schnelle Datensicherungsspeicherung und schnelle Datenwiederherstellung (FBSRD)
DE112020000749T5 (de) Indexerstellung für sich entwickelnde umfangreiche Datensätze in Hybriden Transaktions- und Analysenverarbeitungssystemen mit mehreren Mastern
DE112008002947T5 (de) System zum automatischen Abschatten verschlüsselter Daten und von Dateiverzeichnisstrukturen
DE10211606A1 (de) Datenverarbeitungseinrichtung
EP0966169B1 (de) Sicherungsverfahren für Betriebsdaten eines Netzelementes und Steuerungseinrichtung für ein Netzelement
DE10348371A1 (de) Mehrfachorganisationsdatenzugriffsüberwachungs- und -managementsystem
DE112010004931T5 (de) Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten(
CN105117406A (zh) 一种用于包括第一集群和第二集群的系统的方法以及系统
EP1519262A1 (de) Verfahren, Gerätesystem und Computerprogramm zum Speichern und Abrufen von Druckdaten in einem Netzwerk
DE602004013397T2 (de) Verfahren und Apparat zum Verschieben von Daten zwischen Speichersystemen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition